BOOL CBCGPKeyMapDlg::OnInitDialog() { CBCGPDialog::OnInitDialog(); if (AfxGetMainWnd () != NULL && (AfxGetMainWnd ()->GetExStyle () & WS_EX_LAYOUTRTL)) { ModifyStyleEx (0, WS_EX_LAYOUTRTL); } { CBCGPLocalResource locaRes; //----------------- // Set dialog icon: //----------------- SetIcon ((HICON) ::LoadImage ( AfxGetResourceHandle (), MAKEINTRESOURCE (IDI_BCGBARRES_HELP), IMAGE_ICON, ::GetSystemMetrics (SM_CXSMICON), ::GetSystemMetrics (SM_CYSMICON), LR_SHARED), FALSE); //--------------- // Setup buttons: //--------------- m_ButtonPrint.m_nFlatStyle = CBCGPButton::BUTTONSTYLE_FLAT; m_ButtonCopy.m_nFlatStyle = CBCGPButton::BUTTONSTYLE_FLAT; CString strTT; if (m_bEnablePrint) { m_ButtonPrint.SetImage (globalData.Is32BitIcons () ? IDB_BCGBARRES_PRINT32 : IDB_BCGBARRES_PRINT, NULL); m_ButtonPrint.GetWindowText (strTT); m_ButtonPrint.SetWindowText (_T("")); m_ButtonPrint.SetTooltip (strTT); m_ButtonPrint.SizeToContent (); m_ButtonPrint.m_bDrawFocus = FALSE; } else { m_ButtonPrint.ShowWindow (SW_HIDE); } m_ButtonCopy.SetImage (globalData.Is32BitIcons () ? IDB_BCGBARRES_COPY32 : IDB_BCGBARRES_COPY, NULL); m_ButtonCopy.GetWindowText (strTT); m_ButtonCopy.SetWindowText (_T("")); m_ButtonCopy.SetTooltip (strTT); m_ButtonCopy.SizeToContent (); m_ButtonCopy.m_bDrawFocus = FALSE; //------------- // Add columns: //------------- OnSetColumns (); SetColumnsWidth (); } //------------------------------------------------------------- // Find all application document templates and fill accelerator // tables combobox by document template data: //------------------------------------------------------------- CDocManager* pDocManager = AfxGetApp ()->m_pDocManager; if (pDocManager != NULL) { //--------------------------------------- // Walk all templates in the application: //--------------------------------------- for (POSITION pos = pDocManager->GetFirstDocTemplatePosition (); pos != NULL;) { CBCGPMultiDocTemplate* pTemplate = (CBCGPMultiDocTemplate*) pDocManager->GetNextDocTemplate (pos); ASSERT_VALID (pTemplate); ASSERT_KINDOF (CDocTemplate, pTemplate); //----------------------------------------------------- // We are interessing CBCGPMultiDocTemplate objects with // the shared menu only.... //----------------------------------------------------- if (!pTemplate->IsKindOf (RUNTIME_CLASS (CMultiDocTemplate)) || pTemplate->m_hAccelTable == NULL) { continue; } CString strName; pTemplate->GetDocString (strName, CDocTemplate::fileNewName); int iIndex = m_wndViewTypeList.AddString (strName); m_wndViewTypeList.SetItemData (iIndex, (DWORD_PTR) pTemplate); } } //-------------------------- // Add a default application: //-------------------------- CFrameWnd* pWndMain = DYNAMIC_DOWNCAST (CFrameWnd, m_pWndParentFrame); if (pWndMain != NULL && pWndMain->m_hAccelTable != NULL) { CBCGPLocalResource locaRes; CString strName; strName.LoadString (IDS_BCGBARRES_DEFAULT_VIEW); int iIndex = m_wndViewTypeList.AddString (strName); m_wndViewTypeList.SetItemData (iIndex, (DWORD_PTR) NULL); m_wndViewTypeList.SetCurSel (iIndex); OnSelchangeViewType(); } m_KeymapList.SetExtendedStyle (LVS_EX_FULLROWSELECT | LVS_EX_GRIDLINES); OnSelchangeViewType (); //--------------------------------- // Initialize commands by category: //--------------------------------- if (m_pWndRibbonBar == NULL) { m_pDlgCust = new CBCGPToolbarCustomize(m_pWndParentFrame, TRUE); m_pDlgCust->EnableUserDefinedToolbars(); m_pDlgCust->FillCategoriesComboBox (m_wndCategoryList); } #ifndef BCGP_EXCLUDE_RIBBON else { CBCGPRibbonCategory* pMainCategory = m_pWndRibbonBar->GetMainCategory (); if (pMainCategory != NULL) { ASSERT_VALID (pMainCategory); m_wndCategoryList.AddString (pMainCategory->GetName ()); } for (int i = 0; i < m_pWndRibbonBar->GetCategoryCount (); i++) { m_wndCategoryList.AddString(m_pWndRibbonBar->GetCategory (i)->GetName ()); } } #endif m_wndCategoryList.SetCurSel (0); OnSelchangeCategory (); //---------------------------------- // Restore window position and size: //---------------------------------- if (GetWorkspace () != NULL) { CBCGPRegistrySP regSP; CBCGPRegistry& reg = regSP.Create (FALSE, TRUE); CRect rectPosition; if (reg.Open (GetWorkspace ()->GetRegSectionPath (strWindowPlacementRegSection)) && reg.Read (strRectKey, rectPosition)) { MoveWindow (rectPosition); } } return TRUE; // return TRUE unless you set the focus to a control // EXCEPTION: OCX Property Pages should return FALSE }
//********************************************************************** BOOL CBCGPRibbonCustomizeRibbonPage::OnInitDialog() { { CBCGPLocalResource localRes; CBCGPPropertyPage::OnInitDialog(); } ASSERT_VALID (m_pRibbonBar); if (!m_pRibbonBar->IsCustomizationEnabled()) { TRACE0("The Ribbon customization is not enabled\n"); ASSERT(FALSE); } m_wndRibbonTabsCombo.GetLBText(1, m_strMainTabs); m_CustomizationData.CopyFrom(m_pRibbonBar->m_CustomizationData); CreateRibbonTree(m_wndRibbonSrcTreePlaceholder, m_wndRibbonTreeSrc); CreateRibbonTree(m_wndRibbonTreePlaceholder, m_wndRibbonTreeDest); CBCGPStaticLayout* pLayout = (CBCGPStaticLayout*)GetLayout (); if (pLayout != NULL) { pLayout->AddAnchor (IDC_BCGBARRES_CATEGORY, CBCGPStaticLayout::e_MoveTypeNone, CBCGPStaticLayout::e_SizeTypeHorz, CSize(0, 0), CSize(50, 100)); pLayout->AddAnchor (m_wndRibbonTreeSrc.GetSafeHwnd(), CBCGPStaticLayout::e_MoveTypeNone, CBCGPStaticLayout::e_SizeTypeBoth, CSize(0, 0), CSize(50, 100)); pLayout->AddAnchor (IDC_BCGBARRES_KEYBOARD, CBCGPStaticLayout::e_MoveTypeVert, CBCGPStaticLayout::e_SizeTypeNone); pLayout->AddAnchor (IDC_BCGBARRES_ACCEL_LABEL, CBCGPStaticLayout::e_MoveTypeVert, CBCGPStaticLayout::e_SizeTypeNone); pLayout->AddAnchor (IDS_BCGBARRES_ADD, CBCGPStaticLayout::e_MoveTypeHorz, CBCGPStaticLayout::e_SizeTypeNone, CSize(50, 100)); pLayout->AddAnchor (IDC_BCGBARRES_REMOVE, CBCGPStaticLayout::e_MoveTypeHorz, CBCGPStaticLayout::e_SizeTypeNone, CSize(50, 100)); pLayout->AddAnchor (IDD_BCGBAR_RES_LABEL1, CBCGPStaticLayout::e_MoveTypeHorz, CBCGPStaticLayout::e_SizeTypeNone, CSize(50, 100)); pLayout->AddAnchor (IDC_BCGBARRES_RIBBON_TABS, CBCGPStaticLayout::e_MoveTypeHorz, CBCGPStaticLayout::e_SizeTypeHorz, CSize(50, 100), CSize(50, 100)); pLayout->AddAnchor (m_wndRibbonTreeDest.GetSafeHwnd(), CBCGPStaticLayout::e_MoveTypeHorz, CBCGPStaticLayout::e_SizeTypeBoth, CSize(50, 0), CSize(50, 100)); pLayout->AddAnchor (IDC_BCGBARRES_MOVEUP, CBCGPStaticLayout::e_MoveTypeHorz, CBCGPStaticLayout::e_SizeTypeNone); pLayout->AddAnchor (IDC_BCGBARRES_MOVEDOWN, CBCGPStaticLayout::e_MoveTypeHorz, CBCGPStaticLayout::e_SizeTypeNone); pLayout->AddAnchor (IDC_BCGBARRES_NEW_TAB, CBCGPStaticLayout::e_MoveTypeBoth, CBCGPStaticLayout::e_SizeTypeNone, CSize(50, 100)); pLayout->AddAnchor (IDC_BCGBARRES_NEW_GROUP, CBCGPStaticLayout::e_MoveTypeBoth, CBCGPStaticLayout::e_SizeTypeNone, CSize(50, 100)); pLayout->AddAnchor (IDC_BCGBARRES_RENAME, CBCGPStaticLayout::e_MoveTypeBoth, CBCGPStaticLayout::e_SizeTypeNone, CSize(50, 100)); pLayout->AddAnchor (IDD_BCGBAR_RES_LABEL2, CBCGPStaticLayout::e_MoveTypeBoth, CBCGPStaticLayout::e_SizeTypeNone, CSize(50, 100)); pLayout->AddAnchor (IDC_BCGBARRES_RESET, CBCGPStaticLayout::e_MoveTypeBoth, CBCGPStaticLayout::e_SizeTypeNone, CSize(50, 100)); } //----------------------------------- // Setup Customize Keyboard controls: //----------------------------------- if (!m_bIsCustomizeKeyboard || g_pKeyboardManager == NULL) { if (GetDlgItem (IDC_BCGBARRES_ACCEL_LABEL) != NULL) { GetDlgItem (IDC_BCGBARRES_ACCEL_LABEL)->ShowWindow (SW_HIDE); } m_wndKbdCustomize.EnableWindow (FALSE); m_wndKbdCustomize.ShowWindow (SW_HIDE); } m_wndUp.SetStdImage (CBCGPMenuImages::IdArowUpLarge, CBCGPMenuImages::ImageBlack2, CBCGPMenuImages::IdArowUpLarge, CBCGPMenuImages::ImageLtGray); m_wndUp.SetWindowText(_T("Up")); m_wndUp.SetDrawText(FALSE, FALSE); m_wndDown.SetStdImage (CBCGPMenuImages::IdArowDownLarge, CBCGPMenuImages::ImageBlack2, CBCGPMenuImages::IdArowDownLarge, CBCGPMenuImages::ImageLtGray); m_wndDown.SetWindowText(_T("Down")); m_wndDown.SetDrawText(FALSE, FALSE); //----------------------- // Add custom categories: //----------------------- int nIndex = 0; for (POSITION pos = m_lstCustomCategories.GetHeadPosition (); pos != NULL;) { CBCGPRibbonCustomGroup* pCustCategory = m_lstCustomCategories.GetNext (pos); ASSERT_VALID (pCustCategory); m_wndCategoryCombo.InsertString(nIndex, pCustCategory->m_strName); m_wndCategoryCombo.SetItemData (nIndex++, (DWORD_PTR) pCustCategory); } //------------------- // Add main category: //------------------- CBCGPRibbonCategory* pMainCategory = m_pRibbonBar->GetMainCategory (); if (pMainCategory != NULL) { ASSERT_VALID (pMainCategory); m_wndCategoryCombo.InsertString(nIndex, pMainCategory->GetName ()); m_wndCategoryCombo.SetItemData (nIndex++, (DWORD_PTR) pMainCategory); } if (m_wndCategoryCombo.GetCount () > 0) { m_nCategory = 0; UpdateData (FALSE); OnSelendokCategoryCombo (); } //---------------------------------------------------------------------------- // If ribbon doesn't have context categories, remove them from the comboboxes: //---------------------------------------------------------------------------- if (m_pRibbonBar->GetContextCategoriesCount() == 0) { m_bNoContextCategories = TRUE; m_wndCategoryCombo.DeleteString(m_wndCategoryCombo.GetCount() - 3); m_wndCategoryCombo.DeleteString(m_wndCategoryCombo.GetCount() - 1); m_wndRibbonTabsCombo.DeleteString(0); m_wndRibbonTabsCombo.DeleteString(m_wndRibbonTabsCombo.GetCount() - 1); } OnSelendokRibbonTabsDest(); return TRUE; // return TRUE unless you set the focus to a control // EXCEPTION: OCX Property Pages should return FALSE }
//********************************************************************** BOOL CBCGPRibbonCustomizeQATPage::OnInitDialog() { CBCGPPropertyPage::OnInitDialog(); ASSERT_VALID (m_pRibbonBar); CBCGPStaticLayout* pLayout = (CBCGPStaticLayout*)GetLayout (); if (pLayout != NULL) { pLayout->AddAnchor (IDC_BCGBARRES_CATEGORY, CBCGPStaticLayout::e_MoveTypeNone, CBCGPStaticLayout::e_SizeTypeHorz, CSize(0, 0), CSize(50, 100)); pLayout->AddAnchor (IDC_BCGBARRES_COMMANDS_LIST, CBCGPStaticLayout::e_MoveTypeNone, CBCGPStaticLayout::e_SizeTypeBoth, CSize(0, 0), CSize(50, 100)); pLayout->AddAnchor (IDC_BCGBARRES_QAT_ON_BOTTOM, CBCGPStaticLayout::e_MoveTypeVert, CBCGPStaticLayout::e_SizeTypeNone); pLayout->AddAnchor (IDC_BCGBARRES_KEYBOARD, CBCGPStaticLayout::e_MoveTypeVert, CBCGPStaticLayout::e_SizeTypeNone); pLayout->AddAnchor (IDC_BCGBARRES_ACCEL_LABEL, CBCGPStaticLayout::e_MoveTypeVert, CBCGPStaticLayout::e_SizeTypeNone); pLayout->AddAnchor (IDS_BCGBARRES_ADD, CBCGPStaticLayout::e_MoveTypeHorz, CBCGPStaticLayout::e_SizeTypeNone, CSize(50, 100)); pLayout->AddAnchor (IDC_BCGBARRES_REMOVE, CBCGPStaticLayout::e_MoveTypeHorz, CBCGPStaticLayout::e_SizeTypeNone, CSize(50, 100)); pLayout->AddAnchor (IDC_BCGBARRES_QAT_COMMANDS_LIST, CBCGPStaticLayout::e_MoveTypeHorz, CBCGPStaticLayout::e_SizeTypeBoth, CSize(50, 0), CSize(50, 100)); pLayout->AddAnchor (IDC_BCGBARRES_MOVEUP, CBCGPStaticLayout::e_MoveTypeHorz, CBCGPStaticLayout::e_SizeTypeNone); pLayout->AddAnchor (IDC_BCGBARRES_MOVEDOWN, CBCGPStaticLayout::e_MoveTypeHorz, CBCGPStaticLayout::e_SizeTypeNone); pLayout->AddAnchor (IDC_BCGBARRES_RESET, CBCGPStaticLayout::e_MoveTypeBoth, CBCGPStaticLayout::e_SizeTypeNone, CSize(50, 100)); } //----------------------------------- // Setup Customize Keyboard controls: //----------------------------------- if (!m_bIsCustomizeKeyboard || g_pKeyboardManager == NULL) { if (GetDlgItem (IDC_BCGBARRES_ACCEL_LABEL) != NULL) { GetDlgItem (IDC_BCGBARRES_ACCEL_LABEL)->ShowWindow (SW_HIDE); } m_wndKbdCustomize.EnableWindow (FALSE); m_wndKbdCustomize.ShowWindow (SW_HIDE); } const CString strSeparator = _T("----------"); m_wndUp.SetStdImage (CBCGPMenuImages::IdArowUpLarge, CBCGPMenuImages::ImageBlack2, CBCGPMenuImages::IdArowUpLarge, CBCGPMenuImages::ImageLtGray); m_wndUp.SetWindowText(_T("Up")); m_wndUp.SetDrawText(FALSE, FALSE); m_wndDown.SetStdImage (CBCGPMenuImages::IdArowDownLarge, CBCGPMenuImages::ImageBlack2, CBCGPMenuImages::IdArowDownLarge, CBCGPMenuImages::ImageLtGray); m_wndDown.SetWindowText(_T("Down")); m_wndDown.SetDrawText(FALSE, FALSE); //----------------------- // Add custom categories: //----------------------- for (POSITION pos = m_lstCustomCategories.GetHeadPosition (); pos != NULL;) { CBCGPRibbonCustomGroup* pCustCategory = m_lstCustomCategories.GetNext (pos); ASSERT_VALID (pCustCategory); int nIndex = m_wndCategoryCombo.AddString (pCustCategory->m_strName); m_wndCategoryCombo.SetItemData (nIndex, (DWORD_PTR) pCustCategory); } if (m_wndCategoryCombo.GetCount () > 0) { m_wndCategoryCombo.AddString (strSeparator); } //------------------- // Add main category: //------------------- CBCGPRibbonCategory* pMainCategory = m_pRibbonBar->GetMainCategory (); if (pMainCategory != NULL) { ASSERT_VALID (pMainCategory); int nIndex = m_wndCategoryCombo.AddString (pMainCategory->GetName ()); m_wndCategoryCombo.SetItemData (nIndex, (DWORD_PTR) pMainCategory); m_wndCategoryCombo.AddString (strSeparator); } int i = 0; BOOL bHasContextCategories = FALSE; //---------------------------- // Add non-context categories: //---------------------------- for (i = 0; i < m_pRibbonBar->GetCategoryCount (); i++) { CBCGPRibbonCategory* pCategory = m_pRibbonBar->GetCategory (i); ASSERT_VALID (pCategory); CString strCategoryName; if (!m_pRibbonBar->m_CustomizationData.GetTabName(pCategory, strCategoryName)) { strCategoryName = pCategory->GetName (); } if (pCategory->GetContextID () == 0) { int nIndex = m_wndCategoryCombo.AddString (strCategoryName); m_wndCategoryCombo.SetItemData (nIndex, (DWORD_PTR) pCategory); } else { bHasContextCategories = TRUE; } } if (bHasContextCategories) { //------------------------ // Add context categories: //------------------------ m_wndCategoryCombo.AddString (strSeparator); for (i = 0; i < m_pRibbonBar->GetCategoryCount (); i++) { CBCGPRibbonCategory* pCategory = m_pRibbonBar->GetCategory (i); ASSERT_VALID (pCategory); CString strCategoryName; if (!m_pRibbonBar->m_CustomizationData.GetTabName(pCategory, strCategoryName)) { strCategoryName = pCategory->GetName (); } const UINT uiContextID = pCategory->GetContextID (); if (uiContextID != 0) { CString strName; CString strContext; if (m_pRibbonBar->GetContextName (uiContextID, strContext)) { strName = strContext + _T(" | ") + strCategoryName; } else { strName = strCategoryName; } int nIndex = m_wndCategoryCombo.AddString (strName); m_wndCategoryCombo.SetItemData (nIndex, (DWORD_PTR) pCategory); } } } if (m_wndCategoryCombo.GetCount () > 0) { m_nCategory = 0; UpdateData (FALSE); OnSelendokCategoryCombo (); } CList<UINT,UINT> lstQACommands; m_pRibbonBar->GetQuickAccessCommands (lstQACommands); m_wndQATList.FillFromIDs (lstQACommands, FALSE); OnSelchangeQATCommands (); return TRUE; // return TRUE unless you set the focus to a control // EXCEPTION: OCX Property Pages should return FALSE }