void CMainFrame::OnAppLook(UINT id) { CDockingManager::SetDockingMode (DT_SMART); m_nAppLook = id; CTabbedPane::m_StyleTabWnd = CMFCTabCtrl::STYLE_3D; switch (m_nAppLook) { case ID_VIEW_APPLOOK_2007: case ID_VIEW_APPLOOK_2007_1: case ID_VIEW_APPLOOK_2007_2: case ID_VIEW_APPLOOK_2007_3: // enable Office 2007 look: switch (m_nAppLook) { case ID_VIEW_APPLOOK_2007: CMFCVisualManagerOffice2007::SetStyle (CMFCVisualManagerOffice2007::Office2007_LunaBlue); break; case ID_VIEW_APPLOOK_2007_1: CMFCVisualManagerOffice2007::SetStyle (CMFCVisualManagerOffice2007::Office2007_ObsidianBlack); break; case ID_VIEW_APPLOOK_2007_2: CMFCVisualManagerOffice2007::SetStyle (CMFCVisualManagerOffice2007::Office2007_Silver); break; case ID_VIEW_APPLOOK_2007_3: CMFCVisualManagerOffice2007::SetStyle (CMFCVisualManagerOffice2007::Office2007_Aqua); break; } CMFCVisualManager::SetDefaultManager (RUNTIME_CLASS (CMFCVisualManagerOffice2007)); CDockingManager::SetDockingMode (DT_SMART); break; default: ASSERT (FALSE); } CDockingManager* pDockManager = GetDockingManager (); if (pDockManager != NULL) { ASSERT_VALID (pDockManager); pDockManager->AdjustPaneFrames (); } CTabbedPane::ResetTabs (); RecalcLayout (); RedrawWindow (NULL, NULL, RDW_ALLCHILDREN | RDW_INVALIDATE | RDW_UPDATENOW | RDW_ERASE); theApp.WriteInt (_T("ApplicationLook"), m_nAppLook); }
BOOL CTTMultiPaneFrameWnd::CreateEx(DWORD dwStyleEx, LPCTSTR lpszWindowName, DWORD dwStyle, const RECT& rect, CWnd* pParentWnd, CCreateContext* pContext) { dwStyle |= WS_POPUP; if (pParentWnd != NULL && pParentWnd->GetExStyle() & WS_EX_LAYOUTRTL) { dwStyleEx |= WS_EX_LAYOUTRTL; } m_hParentWnd = pParentWnd != NULL ? pParentWnd->m_hWnd : NULL; if (!CWnd::CreateEx(dwStyleEx, GetGlobalData()->RegisterWindowClass(_T("Afx:MiniFrame")), lpszWindowName, dwStyle, rect, pParentWnd, 0, pContext)) { return FALSE; } if (pParentWnd != NULL) { if (DYNAMIC_DOWNCAST(CFrameWnd, pParentWnd) == NULL) { TRACE0("Minframe parent must be derived from CFrameWnd. Creation failed.\n"); return FALSE; } // register with dock manager CDockingManager* pDockManager = m_pDockManager != NULL ? m_pDockManager : afxGlobalUtils.GetDockingManager(pParentWnd); ASSERT_VALID(pDockManager); if (pDockManager == NULL) { TRACE0("Minframe parent must be connected to dock manager. Creation failed.\n"); return FALSE; } pDockManager->AddMiniFrame(this); } m_dragFrameImpl.Init(this); return TRUE; }
void CMainFrame::OnAppLook(UINT id) { TRACE("CMainFrame::OnAppLook"); m_nAppLook = id; switch (m_nAppLook) { case ID_VIEW_APPLOOK_2000: // enable Office 2000 look: CMFCVisualManager::SetDefaultManager (RUNTIME_CLASS (CMFCVisualManager)); break; case ID_VIEW_APPLOOK_XP: // enable Office XP look: CMFCVisualManager::SetDefaultManager (RUNTIME_CLASS (CMFCVisualManagerOfficeXP)); break; case ID_VIEW_APPLOOK_WIN_XP: // enable Windows XP look (in other OS Office XP look will be used): CMFCVisualManager::SetDefaultManager (RUNTIME_CLASS (CMFCVisualManagerWindows)); CMFCVisualManagerWindows::m_b3DTabsXPTheme = TRUE; break; case ID_VIEW_APPLOOK_2003: // enable Office 2003 look: CMFCVisualManager::SetDefaultManager (RUNTIME_CLASS (CMFCVisualManagerOffice2003)); break; case ID_VIEW_APPLOOK_VS2005: // enable VS 2005 look: CMFCVisualManager::SetDefaultManager (RUNTIME_CLASS (CMFCVisualManagerVS2005)); break; case ID_VIEW_APPLOOK_2007_1: // enable Office 2007 look: CMFCVisualManagerOffice2007::SetStyle (CMFCVisualManagerOffice2007::Office2007_LunaBlue); CMFCVisualManager::SetDefaultManager (RUNTIME_CLASS (CMFCVisualManagerOffice2007)); CDockingManager::SetDockingMode (DT_SMART); SetupOffice2007Button (); break; case ID_VIEW_APPLOOK_2007_2: // enable Office 2007 look: CMFCVisualManagerOffice2007::SetStyle (CMFCVisualManagerOffice2007::Office2007_ObsidianBlack); CMFCVisualManager::SetDefaultManager (RUNTIME_CLASS (CMFCVisualManagerOffice2007)); CDockingManager::SetDockingMode (DT_SMART); SetupOffice2007Button (); break; case ID_VIEW_APPLOOK_2007_3: // enable Office 2007 look: CMFCVisualManagerOffice2007::SetStyle (CMFCVisualManagerOffice2007::Office2007_Silver); CMFCVisualManager::SetDefaultManager (RUNTIME_CLASS (CMFCVisualManagerOffice2007)); CDockingManager::SetDockingMode (DT_SMART); SetupOffice2007Button (); break; case ID_VIEW_APPLOOK_2007_4: // enable Office 2007 look: CMFCVisualManagerOffice2007::SetStyle (CMFCVisualManagerOffice2007::Office2007_Aqua); CMFCVisualManager::SetDefaultManager (RUNTIME_CLASS (CMFCVisualManagerOffice2007)); CDockingManager::SetDockingMode (DT_SMART); SetupOffice2007Button (); break; default: ASSERT (FALSE); } CDockingManager* pDockManager = GetDockingManager (); if (pDockManager != NULL) { ASSERT_VALID (pDockManager); pDockManager->AdjustPaneFrames (); } CDockingManager::SetDockingMode (DT_SMART); if (!IsMDITabbedGroup()) { HWND hwndT = ::GetWindow(m_hWndMDIClient, GW_CHILD); while (hwndT != NULL) { CMDIChildWndEx* pFrame = DYNAMIC_DOWNCAST(CMDIChildWndEx, CWnd::FromHandle(hwndT)); if (pFrame != NULL) { ASSERT_VALID(pFrame); if (!pFrame->IsZoomed() && !pFrame->IsIconic()) { CRect rectFrame; // Force a resize to happen on all the "restored" MDI child windows pFrame->GetWindowRect(rectFrame); pFrame->SetWindowPos(NULL, -1, -1, rectFrame.Width() + 1, rectFrame.Height(), SWP_NOACTIVATE | SWP_NOZORDER | SWP_NOMOVE); pFrame->SetWindowPos(NULL, -1, -1, rectFrame.Width(), rectFrame.Height(), SWP_NOACTIVATE | SWP_NOZORDER | SWP_NOMOVE); } } hwndT = ::GetWindow(hwndT, GW_HWNDNEXT); } } RecalcLayout (); RedrawWindow (NULL, NULL, RDW_ALLCHILDREN | RDW_INVALIDATE | RDW_UPDATENOW | RDW_ERASE); theApp.WriteInt (_T("ApplicationLook"), m_nAppLook); }
void CMainFrame::OnAppLook(UINT id) { CDockingManager::SetDockingMode (DT_SMART); m_nAppLook = id; switch (m_nAppLook) { case ID_VIEW_APPLOOK_2000: // enable Office 2000 look: CMFCVisualManager::SetDefaultManager (RUNTIME_CLASS (CMFCVisualManager)); break; case ID_VIEW_APPLOOK_XP: // enable Office XP look: CMFCVisualManager::SetDefaultManager (RUNTIME_CLASS (CMFCVisualManagerOfficeXP)); break; case ID_VIEW_APPLOOK_WIN_XP: // enable Windows XP look (in other OS Office XP look will be used): CMFCVisualManagerWindows::m_b3DTabsXPTheme = TRUE; CMFCVisualManager::SetDefaultManager (RUNTIME_CLASS (CMFCVisualManagerWindows)); break; case ID_VIEW_APPLOOK_2003: // enable Office 2003 look: CMFCVisualManager::SetDefaultManager (RUNTIME_CLASS (CMFCVisualManagerOffice2003)); CDockingManager::SetDockingMode (DT_SMART); break; case ID_VIEW_APPLOOK_VS2005: // enable VS.NET 2005 look: CMFCVisualManager::SetDefaultManager (RUNTIME_CLASS (CMFCVisualManagerVS2005)); CMFCVisualManager::GetInstance (); CDockingManager::SetDockingMode (DT_SMART); break; case ID_VIEW_APPLOOK_2007_1: // enable Office 2007 look: CMFCVisualManagerOffice2007::SetStyle (CMFCVisualManagerOffice2007::Office2007_LunaBlue); CMFCVisualManager::SetDefaultManager (RUNTIME_CLASS (CMFCVisualManagerOffice2007)); CDockingManager::SetDockingMode (DT_SMART); break; case ID_VIEW_APPLOOK_2007_2: // enable Office 2007 look: CMFCVisualManagerOffice2007::SetStyle (CMFCVisualManagerOffice2007::Office2007_ObsidianBlack); CMFCVisualManager::SetDefaultManager (RUNTIME_CLASS (CMFCVisualManagerOffice2007)); CDockingManager::SetDockingMode (DT_SMART); break; case ID_VIEW_APPLOOK_2007_3: // enable Office 2007 look: CMFCVisualManagerOffice2007::SetStyle (CMFCVisualManagerOffice2007::Office2007_Aqua); CMFCVisualManager::SetDefaultManager (RUNTIME_CLASS (CMFCVisualManagerOffice2007)); CDockingManager::SetDockingMode (DT_SMART); break; case ID_VIEW_APPLOOK_2007_4: // enable Office 2007 look: CMFCVisualManagerOffice2007::SetStyle (CMFCVisualManagerOffice2007::Office2007_Silver); CMFCVisualManager::SetDefaultManager (RUNTIME_CLASS (CMFCVisualManagerOffice2007)); CDockingManager::SetDockingMode (DT_SMART); break; default: ASSERT (FALSE); } CDockingManager* pDockManager = GetDockingManager (); if (pDockManager != NULL) { ASSERT_VALID (pDockManager); pDockManager->AdjustPaneFrames (); } RecalcLayout (); RedrawWindow (NULL, NULL, RDW_ALLCHILDREN | RDW_INVALIDATE | RDW_UPDATENOW | RDW_ERASE); theApp.WriteInt (_T("ApplicationLook"), m_nAppLook); }