📄 mainfrm.h
字号:
// MainFrm.h : interface of the CMainFrame class
//
/////////////////////////////////////////////////////////////////////////////
#if !defined(AFX_MAINFRM_H__D9A694D9_A977_4803_B5E4_6B2CFC31E2ED__INCLUDED_)
#define AFX_MAINFRM_H__D9A694D9_A977_4803_B5E4_6B2CFC31E2ED__INCLUDED_
#include "TrayIcon.h"
#include "CoolTabCtrl.h"
#include "TabViewCtrl.h"
#include "RichEditCtrlEx.h"
#include "scbarg.h"
#include "CoolTabCtrl.h"
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
//系统工具栏配置文件名
#define GLOBAL_TOOLS_INFO_FILE_NAME "SysToolsInfo.ini"
//热键ID和任务栏管理时消息ID
#define GLOBAL_SYSHOTKEY_ID WM_USER + 120
#define GLOBAL_TRAYICON_ID WM_USER + 121
//系统类和文件视图ID
#define GLOBAL_SYSLEFTVIEW_ID WM_USER + 122
#define GLOBAL_SYSTABCTRL_ID WM_USER + 123
//!!!客户区对象ID依次递增(预留20个对象ID空间)
//如再定义全局对象,其可用ID起始号为:
//GLOBAL_SYSCLIENTTABCTRL_ID + 20
#define GLOBAL_SYSCLIENTTABCTRL_ID WM_USER + 124
//工具配置菜单在主菜单中的索引号
#define ID_TOOLS_MENU_INDEX 2
//工具配置菜单预留20个ID号空间
#define ID_TOOLS_MENU_BASEMENUID WM_USER + 150
#define ID_TOOLS_MENU_ENDMENUID WM_USER + 170
//
class CMainFrame : public CFrameWnd
{
DECLARE_DYNCREATE(CMainFrame)
public:
CMainFrame();
//得到系统主目录
CString GetAppPath();
// Attributes
protected:
//标志当前工程类型:VC/Delphi
BOOL m_bIsVCProjFlag;
//任务栏管理
CTrayIcon m_sysTrayIcon;
CMenu hTrayMenu;
//临时文件名变量[类名和文件名之间的桥梁]
char* lpClassFilename; //框架全局变量
//得到某个菜单状态
UINT GetMainMenuState(int nMenuID, UINT uSubID, UINT uFlag);
void SetMainMenuState(int nMenuID, UINT uSubID, UINT uFlag, BOOL bEnable);
public:
//状态栏
CStatusBar m_wndStatusBar;
//保存工程文件列表
CStringList m_lstProjFile;
//多页管理(感谢CCoolTabCtrl作者)
//CDialogBar m_wndDlgBar;
CCoolTabCtrl m_wndTabCtrl;
CCoolBar m_wndLeftBar;
CImageList ilTFImageList; //图标列表(类和文件类表树)
CImageList ilCTImageList; //客户区TABCTRL
/*****************客户区对象定义**************/
CTabViewCtrl m_wndContentTab;
CRichEditCtrlEx m_wndRichEdit; //文件浏览编辑器
// Operations
public:
//得到TOOLBAR和STATUSBAR的尺寸
CSize GetToolBarSize();
CSize GetStatusBarSize();
//更新系统树型目录(CPP|HEAD文件名列表)
void UpdateSysTrees();
//更新文件树
void UpdateFileTreeView(CTreeCtrl* lpTree);
//根据文件树来更新类目录树
void UpdateClassTreeView(CTreeCtrl* lpClassTree, CTreeCtrl* lpFileTree);
//关闭文件|类目录树
void CloseSysTree();
//清空系统多页内容
void CloasContentTabCtrl();
//移去所有Tools菜单下的Item
void RemoveAllToolsMenuItem();
//根据配置文件来更新系统主菜单[工具配置]
BOOL UpdateToolsMenu();
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CMainFrame)
public:
virtual BOOL PreCreateWindow(CREATESTRUCT& cs);
virtual BOOL PreTranslateMessage(MSG* pMsg);
virtual void RecalcLayout(BOOL bNotify = TRUE);
//}}AFX_VIRTUAL
// Implementation
public:
virtual ~CMainFrame();
#ifdef _DEBUG
virtual void AssertValid() const;
virtual void Dump(CDumpContext& dc) const;
#endif
protected: // control bar embedded members
CToolBar m_wndToolBar;
void UpdateVCFileTreeView(CTreeCtrl* lpTree);
void UpdateDelphiFileTreeView(CTreeCtrl* lpTree);
// Generated message map functions
protected:
//{{AFX_MSG(CMainFrame)
afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);
afx_msg void OnDestroy();
afx_msg void OnVcfileOpen();
afx_msg void OnVcfileClose();
afx_msg void OnViewSystree();
afx_msg void OnUpdateViewSystree(CCmdUI* pCmdUI);
afx_msg void OnViewSysinfo();
afx_msg void OnSysCommand(UINT nID, LPARAM lParam);
afx_msg void OnToolsCustom();
//}}AFX_MSG
LRESULT OnTrayNotification(WPARAM wparam, LPARAM lparam);
void OnUpdateStatusbarInfo(WPARAM wparam, LPARAM lparam);
void OnExecToolApp(UINT nID);
DECLARE_MESSAGE_MAP()
};
/////////////////////////////////////////////////////////////////////////////
//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.
#endif // !defined(AFX_MAINFRM_H__D9A694D9_A977_4803_B5E4_6B2CFC31E2ED__INCLUDED_)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -