MainFrm.h
上传用户:sesekoo
上传日期:2020-07-18
资源大小:21543k
文件大小:3k
源码类别:

界面编程

开发平台:

Visual C++

  1. // MainFrm.h : interface of the CMainFrame class
  2. //
  3. /////////////////////////////////////////////////////////////////////////////
  4. #if !defined(AFX_MAINFRM_H__B6A8C1DC_B08A_4F30_9030_B374176D2549__INCLUDED_)
  5. #define AFX_MAINFRM_H__B6A8C1DC_B08A_4F30_9030_B374176D2549__INCLUDED_
  6. #if _MSC_VER > 1000
  7. #pragma once
  8. #endif // _MSC_VER > 1000
  9. /////////////////////////////////////////////////////////////////////////////
  10. // CFunnyToolButton
  11. class CFunnyToolButton : public CExtBarButton
  12. {
  13. CString m_strFunnyText;
  14. CSize m_sizeFunnyTextCalc, m_sizeFunnyTextWell;
  15. CExtCmdIcon m_iconCold;
  16. double m_lfHotPercent;
  17. public:
  18. DECLARE_DYNAMIC( CFunnyToolButton );
  19. CFunnyToolButton(
  20. CExtToolControlBar * pBar,
  21. UINT nCmdID,
  22. LPCTSTR strFunnyText,
  23. double lfHotPercent
  24. );
  25. virtual CSize CalculateLayout(
  26. CDC & dc,
  27. CSize sizePreCalc,
  28. BOOL bHorz
  29. );
  30. virtual void PaintCompound(
  31. CDC & dc,
  32. bool bPaintParentChain,
  33. bool bPaintChildren,
  34. bool bPaintOneNearestChildrenLevelOnly
  35. );
  36. void UpdateHotPercent(
  37. double lfHotPercent,
  38. bool bForceEmptyIconCache
  39. )
  40. {
  41. ASSERT_VALID( this );
  42. if( m_lfHotPercent == lfHotPercent )
  43. {
  44. if( bForceEmptyIconCache )
  45. m_iconCold.Empty();
  46. return;
  47. }
  48. m_lfHotPercent = lfHotPercent;
  49. m_iconCold.Empty();
  50. }
  51. }; // class CFunnyToolButton
  52. /////////////////////////////////////////////////////////////////////////////
  53. // CMainFrame
  54. class CMainFrame : public CExtNCW < CFrameWnd >
  55. {
  56. public:
  57. CMainFrame();
  58. protected: 
  59. DECLARE_DYNAMIC(CMainFrame)
  60. // Attributes
  61. public:
  62. private:
  63. // window placement persistence
  64. WINDOWPLACEMENT m_dataFrameWP;
  65. // Operations
  66. public:
  67. // Overrides
  68. // ClassWizard generated virtual function overrides
  69. //{{AFX_VIRTUAL(CMainFrame)
  70. public:
  71. virtual BOOL PreCreateWindow(CREATESTRUCT& cs);
  72. virtual BOOL OnCmdMsg(UINT nID, int nCode, void* pExtra, AFX_CMDHANDLERINFO* pHandlerInfo);
  73. virtual void ActivateFrame(int nCmdShow = -1);
  74. virtual BOOL DestroyWindow();
  75. virtual BOOL PreTranslateMessage(MSG* pMsg);
  76. //}}AFX_VIRTUAL
  77. // Implementation
  78. public:
  79. virtual ~CMainFrame();
  80. #ifdef _DEBUG
  81. virtual void AssertValid() const;
  82. virtual void Dump(CDumpContext& dc) const;
  83. #endif
  84. public:  // control bar embedded members
  85. CExtStatusControlBar  m_wndStatusBar;
  86. CExtMenuControlBar    m_wndMenuBar;
  87. CExtToolControlBar    m_wndToolBarStd;
  88. CExtToolControlBar    m_wndToolBar256;
  89. CExtToolControlBar    m_wndToolBarTrue;
  90. CExtToolControlBar    m_wndToolBarTruePlusText;
  91. CExtToolControlBar    m_wndToolBarTrueHot;
  92. CExtToolControlBar    m_wndToolBarVista;
  93. CExtThemeSwitcherToolControlBar m_wndToolBarUiLook;
  94. // Generated message map functions
  95. protected:
  96. //{{AFX_MSG(CMainFrame)
  97. afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);
  98. afx_msg void OnSetFocus(CWnd *pOldWnd);
  99. //}}AFX_MSG
  100. afx_msg void OnAnyCommand();
  101. afx_msg void OnUpdateAnyCommand(CCmdUI* pCmdUI);
  102. DECLARE_MESSAGE_MAP()
  103. };
  104. /////////////////////////////////////////////////////////////////////////////
  105. //{{AFX_INSERT_LOCATION}}
  106. // Microsoft Visual C++ will insert additional declarations immediately before the previous line.
  107. #endif // !defined(AFX_MAINFRM_H__B6A8C1DC_B08A_4F30_9030_B374176D2549__INCLUDED_)