Sfoglia il codice sorgente

1、完成ribbon注释;2、完成 快速访问工具栏按钮的禁用/启用 宏定义

Jeff 6 anni fa
parent
commit
4f73bb1bde
2 ha cambiato i file con 38 aggiunte e 5 eliminazioni
  1. 34 3
      IDE/IDE/MainFrm.cpp
  2. 4 2
      IDE/IDE/stdafx.h

+ 34 - 3
IDE/IDE/MainFrm.cpp

@@ -67,8 +67,10 @@ int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)
 	mdiTabParams.m_bDocumentMenu = TRUE; // 在选项卡区域的右边缘启用文档菜单
 	EnableMDITabbedGroups(TRUE, mdiTabParams);
 
+#if __RIBBON__
 	m_wndRibbonBar.Create(this);
 	InitializeRibbon();
+#endif
 
 	if (!m_wndStatusBar.Create(this))
 	{
@@ -167,49 +169,65 @@ void CMainFrame::InitializeRibbon()
 	m_MainButton.SetText(_T("\nf"));
 	m_MainButton.SetToolTipText(strTemp);
 
+	//////////////////////////////////////////////////////////////////////////
+	// ribbon主按钮及按钮展开后的页面;
 	m_wndRibbonBar.SetApplicationButton(&m_MainButton, CSize (45, 45));
 	CMFCRibbonMainPanel* pMainPanel = m_wndRibbonBar.AddMainCategory(strTemp, IDB_FILESMALL, IDB_FILELARGE);
 
+	// 新建(&N)按钮
 	bNameValid = strTemp.LoadString(IDS_RIBBON_NEW);
 	ASSERT(bNameValid);
 	pMainPanel->Add(new CMFCRibbonButton(ID_FILE_NEW, strTemp, 0, 0));
+	// 打开(&O)按钮;
 	bNameValid = strTemp.LoadString(IDS_RIBBON_OPEN);
 	ASSERT(bNameValid);
 	pMainPanel->Add(new CMFCRibbonButton(ID_FILE_OPEN, strTemp, 1, 1));
+	// 保存(&S)按钮
 	bNameValid = strTemp.LoadString(IDS_RIBBON_SAVE);
 	ASSERT(bNameValid);
 	pMainPanel->Add(new CMFCRibbonButton(ID_FILE_SAVE, strTemp, 2, 2));
+	// 另存为(&A)按钮;
 	bNameValid = strTemp.LoadString(IDS_RIBBON_SAVEAS);
 	ASSERT(bNameValid);
 	pMainPanel->Add(new CMFCRibbonButton(ID_FILE_SAVE_AS, strTemp, 3, 3));
 
+	// 打印按钮
 	bNameValid = strTemp.LoadString(IDS_RIBBON_PRINT);
 	ASSERT(bNameValid);
 	CMFCRibbonButton* pBtnPrint = new CMFCRibbonButton(ID_FILE_PRINT, strTemp, 6, 6);
 	pBtnPrint->SetKeys(_T("p"), _T("w"));
+	// 为打印按钮添加Lable控件
 	bNameValid = strTemp.LoadString(IDS_RIBBON_PRINT_LABEL);
 	ASSERT(bNameValid);
 	pBtnPrint->AddSubItem(new CMFCRibbonLabel(strTemp));
+	// 添加"快速打印(&O)"按钮;
 	bNameValid = strTemp.LoadString(IDS_RIBBON_PRINT_QUICK);
 	ASSERT(bNameValid);
 	pBtnPrint->AddSubItem(new CMFCRibbonButton(ID_FILE_PRINT_DIRECT, strTemp, 7, 7, TRUE));
+	// 添加"打印预览(&V)"按钮
 	bNameValid = strTemp.LoadString(IDS_RIBBON_PRINT_PREVIEW);
 	ASSERT(bNameValid);
 	pBtnPrint->AddSubItem(new CMFCRibbonButton(ID_FILE_PRINT_PREVIEW, strTemp, 8, 8, TRUE));
+	// 添加"打印设置(&U)"按钮
 	bNameValid = strTemp.LoadString(IDS_RIBBON_PRINT_SETUP);
 	ASSERT(bNameValid);
 	pBtnPrint->AddSubItem(new CMFCRibbonButton(ID_FILE_PRINT_SETUP, strTemp, 11, 11, TRUE));
 	pMainPanel->Add(pBtnPrint);
+
+	// 分隔符;
 	pMainPanel->Add(new CMFCRibbonSeparator(TRUE));
 
+	// 关闭(&C)按钮;
 	bNameValid = strTemp.LoadString(IDS_RIBBON_CLOSE);
 	ASSERT(bNameValid);
 	pMainPanel->Add(new CMFCRibbonButton(ID_FILE_CLOSE, strTemp, 9, 9));
 
+	// 最近使用的文档按钮;
 	bNameValid = strTemp.LoadString(IDS_RIBBON_RECENT_DOCS);
 	ASSERT(bNameValid);
 	pMainPanel->AddRecentFilesList(strTemp);
 
+	// 退出按钮
 	bNameValid = strTemp.LoadString(IDS_RIBBON_EXIT);
 	ASSERT(bNameValid);
 	pMainPanel->AddToBottom(new CMFCRibbonMainPanelButton(ID_APP_EXIT, strTemp, 15));
@@ -223,31 +241,38 @@ void CMainFrame::InitializeRibbon()
 	bNameValid = strTemp.LoadString(IDS_RIBBON_CLIPBOARD);
 	ASSERT(bNameValid);
 	CMFCRibbonPanel* pPanelClipboard = pCategoryHome->AddPanel(strTemp, m_PanelImages.ExtractIcon(27));
-
+	// 添加"粘贴\nV"按钮;
 	bNameValid = strTemp.LoadString(IDS_RIBBON_PASTE);
 	ASSERT(bNameValid);
 	CMFCRibbonButton* pBtnPaste = new CMFCRibbonButton(ID_EDIT_PASTE, strTemp, 0, 0);
 	pPanelClipboard->Add(pBtnPaste);
-
+	// 添加"剪切\nX"按钮;
 	bNameValid = strTemp.LoadString(IDS_RIBBON_CUT);
 	ASSERT(bNameValid);
 	pPanelClipboard->Add(new CMFCRibbonButton(ID_EDIT_CUT, strTemp, 1));
+	// 添加"复制\nC"按钮;
 	bNameValid = strTemp.LoadString(IDS_RIBBON_COPY);
 	ASSERT(bNameValid);
 	pPanelClipboard->Add(new CMFCRibbonButton(ID_EDIT_COPY, strTemp, 2));
+	// 添加"全选\nA"按钮;
 	bNameValid = strTemp.LoadString(IDS_RIBBON_SELECTALL);
 	ASSERT(bNameValid);
 	pPanelClipboard->Add(new CMFCRibbonButton(ID_EDIT_SELECT_ALL, strTemp, -1));
 
+	//////////////////////////////////////////////////////////////////////////
+	// ribbon主页上的面板;
 	// 创建和添加“视图”面板:
 	bNameValid = strTemp.LoadString(IDS_RIBBON_VIEW);
 	ASSERT(bNameValid);
 	CMFCRibbonPanel* pPanelView = pCategoryHome->AddPanel(strTemp, m_PanelImages.ExtractIcon (7));
 
+	// 添加 "状态栏" 复选框;
 	bNameValid = strTemp.LoadString(IDS_RIBBON_STATUSBAR);
 	ASSERT(bNameValid);
 	CMFCRibbonButton* pBtnStatusBar = new CMFCRibbonCheckBox(ID_VIEW_STATUS_BAR, strTemp);
 	pPanelView->Add(pBtnStatusBar);
+
+	// 添加 "标题栏"复选框;
 	bNameValid = strTemp.LoadString(IDS_RIBBON_CAPTIONBAR);
 	ASSERT(bNameValid);
 	CMFCRibbonButton* pBtnCaptionBar = new CMFCRibbonCheckBox(ID_VIEW_CAPTION_BAR, strTemp);
@@ -257,13 +282,16 @@ void CMainFrame::InitializeRibbon()
 	bNameValid = strTemp.LoadString(IDS_RIBBON_WINDOW);
 	ASSERT(bNameValid);
 	CMFCRibbonPanel* pPanelWindow = pCategoryHome->AddPanel(strTemp, m_PanelImages.ExtractIcon (7));
-
+	// 添加 "窗口" 按钮;
 	bNameValid = strTemp.LoadString(IDS_RIBBON_WINDOWS);
 	ASSERT(bNameValid);
 	CMFCRibbonButton* pBtnWindows = new CMFCRibbonButton(ID_WINDOW_MANAGER, strTemp, -1, 1);
+	// 为 "窗口" 按钮添加菜单;(菜单如何自动添加???)
 	pBtnWindows->SetMenu(IDR_WINDOWS_MENU, TRUE);
 	pPanelWindow->Add(pBtnWindows);
 
+	//////////////////////////////////////////////////////////////////////////
+	// 添加 "样式" 按钮;
 	// 将元素添加到选项卡右侧:
 	bNameValid = strTemp.LoadString(IDS_RIBBON_STYLE);
 	ASSERT(bNameValid);
@@ -279,6 +307,7 @@ void CMainFrame::InitializeRibbon()
 	pVisualStyleButton->SetDescription(strTemp);
 	m_wndRibbonBar.AddToTabs(pVisualStyleButton);
 
+#if __QUICKACCESS_COMMAND__
 	// 添加快速访问工具栏命令:
 	CList<UINT, UINT> lstQATCmds;
 
@@ -288,7 +317,9 @@ void CMainFrame::InitializeRibbon()
 	lstQATCmds.AddTail(ID_FILE_PRINT_DIRECT);
 
 	m_wndRibbonBar.SetQuickAccessCommands(lstQATCmds);
+#endif
 
+	// 关闭对话框;
 	m_wndRibbonBar.AddToTabs(new CMFCRibbonButton(ID_APP_ABOUT, _T("\na"), m_PanelImages.ExtractIcon (0)));
 }
 

+ 4 - 2
IDE/IDE/stdafx.h

@@ -50,8 +50,10 @@
 
 // 导航栏-禁用/启用;
 #define __OUTLOOKBAR__  0
-
-
+// ribbon功能区,禁用后部分主题失效;
+#define __RIBBON__ 1
+// 快速访问工具栏
+#define __QUICKACCESS_COMMAND__ 0