LRESULT CMainFrame::OnToolsStop(WORD /*wNotifyCode*/, WORD /*wID*/, HWND /*hWndCtl*/, BOOL& /*bHandled*/) { UIEnable ( ID_TOOLS_START, true ); UIEnable ( ID_TOOLS_STOP, false ); return 0; }
LRESULT CMiniPieFrame::OnCreate(UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM /*lParam*/, BOOL& /*bHandled*/) { CAppInfo info; // Full screen mode delayed restoration bool bFull = false; info.Restore(bFull, L"Full"); if (bFull) PostMessage(WM_COMMAND, ID_VIEW_FULLSCREEN); CreateSimpleCEMenuBar(); #ifdef WIN32_PLATFORM_WFSP // SmartPhone AtlActivateBackKey(m_hWndCECommandBar); #endif UIAddToolBar(m_hWndCECommandBar); SetCommandButton(ID_APP_EXIT); // StatusBar state restoration bool bVisible = true; info.Restore(bVisible, L"Status"); DWORD dwStyle = WS_CHILD | WS_CLIPCHILDREN | WS_CLIPSIBLINGS | CCS_TOP; if (bVisible) dwStyle |= WS_VISIBLE; // StatusBar creation CreateSimpleStatusBar(ATL_IDS_IDLEMESSAGE, dwStyle); UIAddStatusBar(m_hWndStatusBar); UISetCheck(ID_VIEW_STATUS_BAR, bVisible); // Browser view creation m_hWndClient = m_browser.Create(m_hWnd, NULL, _T("Microsoft.PIEDocView"), WS_CHILD | WS_VISIBLE | WS_BORDER, 0, ID_BROWSER); ATLVERIFY(SUCCEEDED(m_browser.QueryControl(&m_spIWebBrowser2))); ATLVERIFY(SUCCEEDED(AtlAdviseSinkMap(this, true))); // Navigation menu initialization UIEnable(IDM_BACK, FALSE); UIEnable(IDM_FORWARD, FALSE); UIEnable(IDM_STOP, FALSE); UIEnable(IDM_REFRESH, FALSE); #ifdef WIN32_PLATFORM_PSPC // PPC Address bar state restoration VARIANT_BOOL vb = ATL_VARIANT_TRUE; info.Restore(vb, L"Address"); m_spIWebBrowser2->put_AddressBar(vb); UISetCheck(ID_VIEW_ADDRESSBAR, vb == ATL_VARIANT_TRUE); #endif // register object for message filtering and idle updates CMessageLoop* pLoop = _Module.GetMessageLoop(); ATLASSERT(pLoop != NULL); pLoop->AddMessageFilter(this); pLoop->AddIdleHandler(this); return 0; }
void __stdcall CMiniPieFrame::OnBeforeNavigate2(IDispatch* /*pDisp*/, VARIANT * /*pvtURL*/, VARIANT * /*pvtFlags*/, VARIANT * /*pvtTargetFrameName*/, VARIANT * /*pvtPostData*/, VARIANT * /*pvtHeaders*/, VARIANT_BOOL * /*pvbCancel*/) { UISetText(ID_TITLE, L"Loading ..."); SetCommandButton(IDM_STOP); UIEnable(IDM_STOP, TRUE); UIEnable(IDM_REFRESH, FALSE); }
LRESULT CMainFrame::OnEditCutOrCopy(WORD /*wNotifyCode*/, WORD /*wID*/, HWND /*hWndCtl*/, BOOL& /*bHandled*/) { // Just to test enabled/disabled image state - toggle Paste button static BOOL bEnabled = FALSE; bEnabled = !bEnabled; UIEnable(ID_EDIT_PASTE, bEnabled); return 0; }
LRESULT CMainFrame::OnCreate(UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM /*lParam*/, BOOL& /*bHandled*/) { // Check if Common Controls 6.0 are used. If yes, use 32-bit (alpha) images // for the toolbar and command bar. If not, use the old, 4-bit images. UINT uResID = IDR_MAINFRAME_OLD; DWORD dwMajor = 0; DWORD dwMinor = 0; HRESULT hRet = AtlGetCommCtrlVersion(&dwMajor, &dwMinor); if(SUCCEEDED(hRet) && dwMajor >= 6) uResID = IDR_MAINFRAME; // Set values to be displayed in the view window m_view.m_dwCommCtrlMajor = dwMajor; m_view.m_dwCommCtrlMinor = dwMinor; m_view.m_bAlpha = (uResID == IDR_MAINFRAME); // create command bar window HWND hWndCmdBar = m_CmdBar.Create(m_hWnd, rcDefault, NULL, ATL_SIMPLE_CMDBAR_PANE_STYLE); // attach menu m_CmdBar.AttachMenu(GetMenu()); // load command bar images m_CmdBar.LoadImages(uResID); // remove old menu SetMenu(NULL); HWND hWndToolBar = CreateSimpleToolBarCtrl(m_hWnd, uResID, FALSE, ATL_SIMPLE_TOOLBAR_PANE_STYLE); CreateSimpleReBar(ATL_SIMPLE_REBAR_NOBORDER_STYLE); AddSimpleReBarBand(hWndCmdBar); AddSimpleReBarBand(hWndToolBar, NULL, TRUE); CreateSimpleStatusBar(); _createVerticalSplitter(); _createCanvas(); _createHoricalSplitter(); _createTreeView(); _createAnimationBox(); UpdateLayout(); UIAddToolBar(hWndToolBar); UISetCheck(ID_VIEW_TOOLBAR, 1); UISetCheck(ID_VIEW_RENDER_BAR, 1); UISetCheck(ID_VIEW_STATUS_BAR, 1); // register object for message filtering and idle updates CMessageLoop* pLoop = _Module.GetMessageLoop(); ATLASSERT(pLoop != NULL); pLoop->AddMessageFilter(this); pLoop->AddIdleHandler(this); UIEnable(ID_EDIT_PASTE, FALSE); _canvas = NULL; // return 0; }
LRESULT MainFrame::OnScriptRun(WORD /*wNotifyCode*/, WORD /*wID*/, HWND /*hWndCtl*/, BOOL& /*bHandled*/) { if (m_view.GetModify()) { if (!DoFileSave()) return 0; } CString cszFilename = m_view.GetFilePath(); if (cszFilename.IsEmpty()) return 0; { CString cszText; cszText.Format(_T("Start executing file %s...\n\n"), cszFilename.GetString()); m_ecOutputWindow.OutputText(cszText); } m_processor.Stop(); try { m_processor.LoadScript(cszFilename); m_processor.Run(); } catch (const Lua::Exception& ex) { CString cszText; cszText.Format(_T("%s(%u): %s"), ex.LuaSourceFile().GetString(), ex.LuaLineNumber(), ex.LuaErrorMessage().GetString()); OnOutputDebugString(cszText); UIEnable(ID_SCRIPT_RUN, true); UIEnable(ID_SCRIPT_STOP, false); } return 0; }
LRESULT onCreate(UINT, WPARAM, LPARAM, BOOL&) { CreateSimpleToolBar(); //CreateSimpleStatusBar(IDR_MAINFRAME); m_hWndStatusBar = m_wndStatusBar.Create ( *this ); // Create the status bar panes. int anPanes[] = { ID_DEFAULT_PANE, IDS_NAME, IDS_RELIGION }; m_wndStatusBar.SetPanes ( anPanes, 3, false ); // Set the initial text for the clock status pane. m_wndStatusBar.SetPaneText(ID_DEFAULT_PANE, TEXT("Zen0")); m_wndStatusBar.SetPaneText(IDS_NAME, TEXT("Zen1")); m_wndStatusBar.SetPaneText(IDS_RELIGION, TEXT("Zen2")); // // Set the initial state of the Clock menu items: UIEnable( ID_FILE_NEW, false ); UIEnable( ID_FILE_OPEN, true ); UISetCheck(ID_VIEW_TOOLBAR, true); return 0; }
BOOL CMainFrame::OnIdle() { BOOL b; long lStartChar; m_spScriptEditor->GetSelectionStart(&lStartChar); long lEndChar; m_spScriptEditor->GetSelectionEnd(&lEndChar); b = lStartChar != lEndChar; UIEnable(ID_EDIT_CUT, b); UIEnable(ID_EDIT_COPY, b); UIEnable(ID_EDIT_CLEAR, b); long lLength; m_spScriptEditor->GetTextLength(&lLength); b = lLength > 0; BOOL bNotEmpty = b; UIEnable(ID_EDIT_SELECT_ALL, b); UIEnable(ID_EDIT_FIND, b); UIEnable(ID_EDIT_REPLACE, b); m_spScriptEditor->CanPaste(&b); UIEnable(ID_EDIT_PASTE, b); m_spScriptEditor->CanRedo(&b); UIEnable(ID_EDIT_REDO, b); m_spScriptEditor->CanUndo(&b); UIEnable(ID_EDIT_UNDO, b); m_spScriptEditor->HasSearched(&b); UIEnable(ID_EDIT_REPEAT, bNotEmpty && b); UIUpdateToolBar(); // OnPositionChanged(); return FALSE; }
LRESULT CMainFrame::OnCreate(UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM /*lParam*/, BOOL& /*bHandled*/) { CreateSimpleToolBar(); CreateSimpleStatusBar(); m_hWndClient = m_view.Create(m_hWnd); UIAddToolBar(m_hWndToolBar); UISetCheck(ID_VIEW_TOOLBAR, 1); UISetCheck(ID_VIEW_STATUS_BAR, 1); UISetCheck(ID_TOOLS_REPEAT, 1); UISetCheck(ID_SPEED_100, 1); lastSpeedId=ID_SPEED_100; // register object for message filtering and idle updates CMessageLoop* pLoop = _Module.GetMessageLoop(); ATLASSERT(pLoop != NULL); pLoop->AddMessageFilter(this); pLoop->AddIdleHandler(this); // Init MRU list CMenuHandle mainMenu = GetMenu(); CMenuHandle fileMenu = mainMenu.GetSubMenu(0); CMenuHandle mruMenu = fileMenu.GetSubMenu(9); m_mru.SetMenuHandle ( mruMenu ); m_mru.UpdateMenu(); m_mru.ReadFromRegistry(APP_SETTINGS_KEY); m_mru.SetMaxEntries(4); UIEnable ( ID_TOOLS_START, true ); UIEnable ( ID_TOOLS_STOP, false ); return 0; }
LRESULT CMainFrame::OnSelChanged(LPNMHDR /*lpNLHDR*/) { CTreeItem itemSelected; itemSelected = m_view.GetSelectedItem(); UIEnable(IDM_AGGR_UNBIND, FALSE); UIEnable(IDM_AGGR_SYNCHRONIZE, FALSE); UIEnable(IDM_AGGR_ADDMIRROR, FALSE); if ( !itemSelected.IsNull() ) { CDiskObjectPtr obj = m_mapObject[itemSelected.GetData()]; ATLASSERT( obj.get() != NULL ); CCommandSet cmdSet = CObjectUIHandler::GetUIHandler(obj)->GetCommandSet(obj); CCommandSet::iterator itr; for ( itr = cmdSet.begin(); itr != cmdSet.end(); itr++ ) { UIEnable( itr->GetID(), !itr->IsDisabled() ); } } return 0; }
void CMainFrame::RefreshAction() { int iItemSelected; // UIEnable(IDM_AGGR_BIND, FALSE); UIEnable(IDM_AGGR_UNBIND, FALSE); UIEnable(IDM_AGGR_SYNCHRONIZE, FALSE); UIEnable(IDM_AGGR_ADDMIRROR, FALSE); if (-1 != (iItemSelected = m_viewTreeList.GetSelectedItemData())) { CDiskObjectPtr obj = m_mapObject[iItemSelected]; ATLASSERT( obj.get() != NULL ); CCommandSet cmdSet = CObjectUIHandler::GetUIHandler(obj)->GetCommandSet(obj); CCommandSet::iterator itr; for ( itr = cmdSet.begin(); itr != cmdSet.end(); itr++ ) { UIEnable( itr->GetID(), !itr->IsDisabled() ); } } }
LRESULT MainFrame::OnCreate(UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM /*lParam*/, BOOL& /*bHandled*/) { SetupCmdBar(); SetupRibbonBar(); SetupToolbar(); SetupMRUList(); SetupStatusBar(); SetupView(); // register object for message filtering and idle updates CMessageLoop* pLoop = _Module.GetMessageLoop(); ATLASSERT(pLoop != NULL); pLoop->AddMessageFilter(this); pLoop->AddIdleHandler(this); { bool bRibbonUI = RunTimeHelper::IsRibbonUIAvailable(); ShowRibbonUI(bRibbonUI); UISetCheck(ID_VIEW_RIBBON, bRibbonUI); } if (m_cszFilenameOpenAtStart.IsEmpty()) DoFileNew(); else { CString cszTitle = Path(m_cszFilenameOpenAtStart).FilenameAndExt(); if (DoFileOpen(m_cszFilenameOpenAtStart, cszTitle)) { m_mru.AddToList(m_cszFilenameOpenAtStart); m_mru.WriteToRegistry(c_pszSettingsRegkey); } } UIEnable(ID_SCRIPT_RUN, true); UIEnable(ID_SCRIPT_STOP, false); return 0; }
void MainFrame::UIUpdateAll() { UIEnable(ID_EDIT_PASTE, m_view.CanPaste()); UIEnable(ID_EDIT_UNDO, m_view.CanUndo()); UIEnable(ID_EDIT_REDO, m_view.CanRedo()); bool bSel = m_view.IsTextSelected(); UIEnable(ID_EDIT_CUT, bSel); UIEnable(ID_EDIT_COPY, bSel); UIEnable(ID_EDIT_CLEAR, bSel); bool bModified = m_view.GetModify(); UIEnable(ID_FILE_SAVE, bModified); UIEnable(ID_FILE_SAVE_AS, bModified); if (bModified != m_bScriptingFileModified) { m_bScriptingFileModified = bModified; UpdateTitle(); } }
LRESULT CLoginDlg::OnTimer( UINT /*uMsg*/, WPARAM wParam, LPARAM /*lParam*/, BOOL& /*bHandled*/ ) { if(wParam == 1) { GetFramework()->Update(); UISetDefault(ID_LOGIN, GetFramework()->IsConnected()); UISetDefault(IDC_BUTTON4, !GetFramework()->IsConnected()); UIEnable(ID_LOGIN, GetFramework()->IsConnected()); UIEnable(IDC_REGISTER, GetFramework()->IsConnected()); UIEnable(IDC_LOBBYS, GetFramework()->IsConnected()); UIEnable(IDC_FILESERVER, GetFramework()->IsConnected()); UIEnable(IDC_APPID , !GetFramework()->IsConnected()); UIEnable(IDC_SUBID , !GetFramework()->IsConnected()); UIEnable(IDC_COMBO1 , !GetFramework()->IsConnected()); UIUpdateChildWindows(); } return 0; }
LRESULT MainFrame::OnMessageExecutionStateChanged(UINT /*uMsg*/, WPARAM wParam, LPARAM /*lParam*/, BOOL& /*bHandled*/) { LuaScheduler::T_enExecutionState enExecutionState = static_cast<LuaScheduler::T_enExecutionState>(wParam); LPCTSTR pszText = nullptr; switch (enExecutionState) { case LuaScheduler::stateIdle: UIEnable(ID_SCRIPT_RUN, true); UIEnable(ID_SCRIPT_STOP, false); pszText = _T("Idle."); break; case LuaScheduler::stateRunning: pszText = _T("Running..."); UIEnable(ID_SCRIPT_RUN, false); UIEnable(ID_SCRIPT_STOP, true); break; case LuaScheduler::stateYield: pszText = _T("Waiting..."); break; case LuaScheduler::stateDebug: break; case LuaScheduler::stateError: pszText = _T("Error."); UIEnable(ID_SCRIPT_RUN, false); UIEnable(ID_SCRIPT_STOP, true); break; default: ATLASSERT(false); // unknown state break; } if (pszText != nullptr) m_statusBar.SetPaneText(IDR_PANE_SCRIPT_STATUS, pszText); return 0; }
BOOL CMainFrame::OnIdle() { UIEnable(ID_FILE_SAVE,m_view.QueryStatusWB(OLECMDID_SAVE) & OLECMDF_ENABLED); UIEnable(ID_FILE_SAVE_AS,m_view.QueryStatusWB(OLECMDID_SAVEAS) & OLECMDF_ENABLED); UIEnable(ID_FILE_PRINT,m_view.QueryStatusWB(OLECMDID_PRINT) & OLECMDF_ENABLED); UIEnable(ID_FILE_PRINT_PREVIEW,m_view.QueryStatusWB(OLECMDID_PRINTPREVIEW) & OLECMDF_ENABLED); UIEnable(ID_FILE_PRINT_SETUP,m_view.QueryStatusWB(OLECMDID_PAGESETUP) & OLECMDF_ENABLED); if (GetFocus()==m_URL) { DWORD dwSelection=m_URL.GetSel(); BOOL bEnable=HIWORD(dwSelection)!=LOWORD(dwSelection); UIEnable(ID_EDIT_CUT,bEnable); UIEnable(ID_EDIT_COPY,bEnable); if (m_URL.OpenClipboard()) { UIEnable(ID_EDIT_PASTE,IsClipboardFormatAvailable(CF_TEXT)); CloseClipboard(); } else UIEnable(ID_EDIT_PASTE,FALSE); UIEnable(ID_EDIT_UNDO,m_URL.CanUndo()); } else { UIEnable(ID_EDIT_CUT,m_view.QueryStatusWB(OLECMDID_CUT) & OLECMDF_ENABLED); UIEnable(ID_EDIT_COPY,m_view.QueryStatusWB(OLECMDID_COPY) & OLECMDF_ENABLED); UIEnable(ID_EDIT_PASTE,m_view.QueryStatusWB(OLECMDID_PASTE) & OLECMDF_ENABLED); UIEnable(ID_EDIT_UNDO,m_view.QueryStatusWB(OLECMDID_UNDO) & OLECMDF_ENABLED); } UIEnable(ID_VIEW_GOTO_BACK,m_view.CanBack()); UIEnable(ID_VIEW_GOTO_FORWARD,m_view.CanForward()); m_StatusBar.SetPaneIcon(IDR_LOCK,m_view.IsSecured() ? m_hSecured : NULL); UIUpdateToolBar(); UIUpdateStatusBar(); return FALSE; }
VOID OnCmdEnableAll(HWND hWnd) { UIEnable(IDC_CMD1, TRUE); UIEnable(IDC_CMD2, TRUE); }
void __stdcall CMiniPieFrame::OnNavigateComplete2(IDispatch* /*pDisp*/, VARIANT * /*pvtURL*/) { UIEnable(IDM_REFRESH, TRUE); }
VOID OnCmd1(HWND hWnd) { UIEnable(IDC_CMD2, FALSE); }
void CMainFrame::Reset() { UIEnable ( ID_TOOLS_START, false ); UIEnable ( ID_TOOLS_STOP, true ); }
LRESULT CMainFrame::OnCreate( LPCREATESTRUCT /*lpCreateStruct*/ ) { if ( FAILED( TtlCreateControl() ) ) { LPTSTR lpBuffer = _T("Unknown Error"); DWORD bFreeIt = ::FormatMessage( FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM , NULL, TtlGetLastError(), 0, (LPTSTR) &lpBuffer, 0, NULL ); CString sz; sz.Format( _T("An error occured trying to get the TTLive interface.\n" "The error was:\n" "%s") , lpBuffer ); MessageBox( sz, _T("Error"), MB_OK | MB_ICONERROR ); if ( bFreeIt ) ::LocalFree( lpBuffer ); return -1; // fail OnCreate } TtlPnPRegister(); // wizard generated UI: HWND hWndCmdBar = m_CmdBar.Create( m_hWnd, rcDefault, NULL, ATL_SIMPLE_CMDBAR_PANE_STYLE ); m_CmdBar.AttachMenu( GetMenu() ); m_CmdBar.LoadImages( IDR_MAINFRAME ); SetMenu( NULL ); HWND hWndToolBar = CreateSimpleToolBarCtrl( m_hWnd, IDR_MAINFRAME, FALSE, ATL_SIMPLE_TOOLBAR_PANE_STYLE ); CreateSimpleReBar( ATL_SIMPLE_REBAR_NOBORDER_STYLE ); AddSimpleReBarBand( hWndCmdBar ); AddSimpleReBarBand( hWndToolBar, NULL, TRUE ); CreateSimpleStatusBar(); UIAddToolBar( hWndToolBar ); UISetCheck( ID_VIEW_TOOLBAR, 1 ); UISetCheck( ID_VIEW_STATUS_BAR, 1 ); CMessageLoop* pLoop = _Module.GetMessageLoop(); ATLASSERT( pLoop != NULL ); pLoop->AddMessageFilter( this ); pLoop->AddIdleHandler( this ); // create remainder of UI: m_hWndClient = m_wndVSplitter.Create( *this, rcDefault, NULL , WS_CHILD | WS_VISIBLE | WS_CLIPCHILDREN | WS_CLIPSIBLINGS ); m_wndGraphs.Create( m_wndVSplitter, rcDefault, NULL , WS_CHILD | WS_VISIBLE | WS_CLIPCHILDREN | WS_CLIPSIBLINGS , WS_EX_CLIENTEDGE ); m_wndConfig.Create( m_wndVSplitter, _T("Explorer") , WS_CHILD | WS_VISIBLE | WS_CLIPCHILDREN | WS_CLIPSIBLINGS ); m_wndVSplitter.SetSplitterPanes( m_wndConfig, m_wndGraphs ); m_wndVSplitter.m_nProportionalPos = m_wndVSplitter.m_nPropMax / 3; UISetBlockAccelerators( true ); UISetCheck( ID_OPTIONS_KEEPEXISTING , m_bKeepExisting ); UISetCheck( ID_OPTIONS_AUTODETECT , m_bAutoDetect ); UISetCheck( ID_OPTIONS_FORCEPROTOCOL , m_bForceProtocol ); UISetCheck( ID_OPTIONS_FILLGAPS , m_bFillGaps ); UISetCheck( ID_OPTIONS_AUTOSETUP , m_bAutoSetup ); UISetCheck( ID_OPTIONS_FORCEALL , m_bForceAll ); UISetCheck( ID_OPTIONS_DISACTIVATE , m_bDisactivate ); UISetCheck( ID_OPTIONS_SETSENSORTYPE , m_bSetSensorType ); UISetCheck( ID_OPTIONS_SHORTREADS , m_bShortReads ); UISetCheck( ID_OPTIONS_SYNCHRONIZE , m_bSynchronize ); UISetCheck( ID_OPTIONS_SYNCH_INTERNAL, m_bSynchInternal ); UISetCheck( ID_OPTIONS_SYNCH_PERIODIC, m_bSynchPeriodic ); UISetCheck( ID_DAC_RECORD , m_bRecord ); UISetCheck( m_idUnitType, true ); UISetCheck( m_idFilter, true ); #ifdef USE_TTLLIVE_2 // all options available #else UIEnable( ID_OPTIONS_FILLGAPS , false ); UIEnable( ID_OPTIONS_SHORTREADS , false ); UIEnable( ID_OPTIONS_SYNCHRONIZE , false ); UIEnable( ID_OPTIONS_SYNCH_INTERNAL, false ); UIEnable( ID_OPTIONS_SYNCH_PERIODIC, false ); #endif UIUpdate(); SetMsgHandled( false ); return 0; }
void __stdcall CMiniPieFrame::OnDocumentComplete(IDispatch* /*pDisp*/, VARIANT * /*pvtURL*/) { SetCommandButton(IDM_REFRESH); UIEnable(IDM_STOP, FALSE); }
VOID OnCmd2(HWND hWnd) { UIEnable(IDC_CMD1, FALSE); }
void __stdcall CMiniPieFrame::OnCommandStateChange(long lCommand, BOOL bEnable) { UIEnable(IDM_FORWARD - CSC_NAVIGATEFORWARD + lCommand, bEnable); }
void CMainFrame::UIEnableForDevice(CNBDevice* pDevice, UINT nMenuID) { UIEnable(nMenuID, pDevice ? pDevice->GetCommandAbility(nMenuID) : FALSE); }
LRESULT CMainFrame::OnCreate(UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM /*lParam*/, BOOL& /*bHandled*/) { // Check if Common Controls 6.0 are used. If yes, use 32-bit (alpha) images // for the toolbar and command bar. If not, use the old, 4-bit images. UINT uResID = IDR_MAINFRAME_OLD; DWORD dwMajor = 0; DWORD dwMinor = 0; HRESULT hRet = AtlGetCommCtrlVersion(&dwMajor, &dwMinor); if(SUCCEEDED(hRet) && dwMajor >= 6) uResID = IDR_MAINFRAME; // Set values to be displayed in the view window m_view.m_dwCommCtrlMajor = dwMajor; m_view.m_dwCommCtrlMinor = dwMinor; m_view.m_bAlpha = (uResID == IDR_MAINFRAME); // create command bar window HWND hWndCmdBar = m_CmdBar.Create(m_hWnd, rcDefault, NULL, ATL_SIMPLE_CMDBAR_PANE_STYLE); // attach menu m_CmdBar.AttachMenu(GetMenu()); // load command bar images m_CmdBar.LoadImages(uResID); // remove old menu SetMenu(NULL); HWND hWndToolBar = CreateSimpleToolBarCtrl(m_hWnd, uResID, FALSE, ATL_SIMPLE_TOOLBAR_PANE_STYLE); CreateSimpleReBar(ATL_SIMPLE_REBAR_NOBORDER_STYLE); AddSimpleReBarBand(hWndCmdBar); AddSimpleReBarBand(hWndToolBar, NULL, TRUE); CreateSimpleStatusBar(); // //m_hWndClient = m_view.Create(m_hWnd, rcDefault, NULL, WS_CHILD | WS_VISIBLE | WS_CLIPSIBLINGS | WS_CLIPCHILDREN, WS_EX_CLIENTEDGE); { m_hWndClient = m_wndSplitter.Create(m_hWnd, rcDefault, NULL, WS_CHILD | WS_VISIBLE | WS_CLIPSIBLINGS | WS_CLIPCHILDREN); HWND hWndFolderTree = m_wndFolderTree.Create(m_wndSplitter, _T("Folders"), WS_CHILD | WS_VISIBLE | WS_CLIPSIBLINGS | WS_CLIPCHILDREN); RECT rc = { 50, 0, 300, 100 }; m_wndCombo.Create(hWndFolderTree, rc, NULL, WS_CHILD | WS_VISIBLE | WS_CLIPSIBLINGS | WS_CLIPCHILDREN | CBS_DROPDOWN | CBS_AUTOHSCROLL); m_wndTreeView.Create(m_wndFolderTree, rcDefault, NULL, WS_CHILD | WS_VISIBLE | WS_CLIPSIBLINGS | WS_CLIPCHILDREN | TVS_HASLINES | TVS_LINESATROOT | TVS_HASBUTTONS | TVS_SHOWSELALWAYS, WS_EX_CLIENTEDGE); m_wndFolderTree.SetClient(m_wndTreeView); m_wndListView.Create(m_wndSplitter, rcDefault, NULL, WS_CHILD | WS_VISIBLE | WS_CLIPSIBLINGS | WS_CLIPCHILDREN | LVS_REPORT | LVS_AUTOARRANGE | LVS_SHOWSELALWAYS | LVS_SHAREIMAGELISTS, WS_EX_CLIENTEDGE); m_wndListView.SetExtendedListViewStyle(LVS_EX_TRACKSELECT | LVS_EX_ONECLICKACTIVATE | LVS_EX_UNDERLINEHOT); InitViews(); UpdateLayout(); m_wndSplitter.SetSplitterPanes(m_wndFolderTree, m_wndListView); RECT rect; GetClientRect(&rect); m_wndSplitter.SetSplitterPos((rect.right - rect.left) / 4); } UIAddToolBar(hWndToolBar); UISetCheck(ID_VIEW_TOOLBAR, 1); UISetCheck(ID_VIEW_STATUS_BAR, 1); // register object for message filtering and idle updates CMessageLoop* pLoop = _Module.GetMessageLoop(); ATLASSERT(pLoop != NULL); pLoop->AddMessageFilter(this); pLoop->AddIdleHandler(this); UIEnable(ID_EDIT_PASTE, FALSE); // _canvas = NULL; //_canvas = new Canvas(m_hWndClient); //_canvas = new Canvas(m_hWndClient); // return 0; }