MainFrm.cpp
上传用户:szled88
上传日期:2015-04-09
资源大小:43957k
文件大小:4k
源码类别:

对话框与窗口

开发平台:

Visual C++

  1. // MainFrm.cpp : implementation of the CMainFrame class
  2. //
  3. // This file is a part of the XTREME TOOLKIT PRO MFC class library.
  4. // (c)1998-2008 Codejock Software, All Rights Reserved.
  5. //
  6. // THIS SOURCE FILE IS THE PROPERTY OF CODEJOCK SOFTWARE AND IS NOT TO BE
  7. // RE-DISTRIBUTED BY ANY MEANS WHATSOEVER WITHOUT THE EXPRESSED WRITTEN
  8. // CONSENT OF CODEJOCK SOFTWARE.
  9. //
  10. // THIS SOURCE CODE CAN ONLY BE USED UNDER THE TERMS AND CONDITIONS OUTLINED
  11. // IN THE XTREME TOOLKIT PRO LICENSE AGREEMENT. CODEJOCK SOFTWARE GRANTS TO
  12. // YOU (ONE SOFTWARE DEVELOPER) THE LIMITED RIGHT TO USE THIS SOFTWARE ON A
  13. // SINGLE COMPUTER.
  14. //
  15. // CONTACT INFORMATION:
  16. // support@codejock.com
  17. // http://www.codejock.com
  18. //
  19. /////////////////////////////////////////////////////////////////////////////
  20. #include "stdafx.h"
  21. #include "GUI_Gnome.h"
  22. #include "MainFrm.h"
  23. #include "GnomeTheme.h"
  24. #ifdef _DEBUG
  25. #define new DEBUG_NEW
  26. #undef THIS_FILE
  27. static char THIS_FILE[] = __FILE__;
  28. #endif
  29. /////////////////////////////////////////////////////////////////////////////
  30. // CMainFrame
  31. IMPLEMENT_DYNCREATE(CMainFrame, CGnomeFrame)
  32. BEGIN_MESSAGE_MAP(CMainFrame, CGnomeFrame)
  33. //{{AFX_MSG_MAP(CMainFrame)
  34. // NOTE - the ClassWizard will add and remove mapping macros here.
  35. //    DO NOT EDIT what you see in these blocks of generated code !
  36. ON_WM_CREATE()
  37. //}}AFX_MSG_MAP
  38. END_MESSAGE_MAP()
  39. static UINT indicators[] =
  40. {
  41. ID_SEPARATOR,           // status line indicator
  42. ID_INDICATOR_CAPS,
  43. ID_INDICATOR_NUM,
  44. ID_INDICATOR_SCRL,
  45. };
  46. /////////////////////////////////////////////////////////////////////////////
  47. // CMainFrame construction/destruction
  48. CMainFrame::CMainFrame()
  49. {
  50. // TODO: add member initialization code here
  51. }
  52. CMainFrame::~CMainFrame()
  53. {
  54. }
  55. int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)
  56. {
  57. if (CGnomeFrame::OnCreate(lpCreateStruct) == -1)
  58. return -1;
  59. if (!m_wndStatusBar.Create(this) ||
  60. !m_wndStatusBar.SetIndicators(indicators,
  61.   sizeof(indicators)/sizeof(UINT)))
  62. {
  63. TRACE0("Failed to create status barn");
  64. return -1;      // fail to create
  65. }
  66. if (!InitCommandBars())
  67. return -1;
  68. CXTPCommandBars* pCommandBars = GetCommandBars();
  69. pCommandBars->SetMenu(_T("Menu Bar"), IDR_MAINFRAME);
  70. XTPImageManager()->SetMaskColor(RGB(230, 230, 230));
  71. CXTPToolBar* pStandardBar = (CXTPToolBar*)pCommandBars->Add(_T("Standard"), xtpBarTop);
  72. if (!pStandardBar ||
  73. !pStandardBar->LoadToolBar(IDR_MAINFRAME))
  74. {
  75. TRACE0("Failed to create toolbarn");
  76. return -1;
  77. }
  78. ((CXTPControlButton*)pStandardBar->GetControl(1))->SetStyle(xtpButtonIconAndCaption);
  79. ((CXTPControlButton*)pStandardBar->GetControl(2))->SetStyle(xtpButtonIconAndCaption);
  80. ((CXTPControlButton*)pStandardBar->GetControl(4))->SetStyle(xtpButtonIconAndCaption);
  81. pStandardBar->EnableDocking(xtpFlagAlignAny|xtpFlagFloating|xtpFlagStretched|xtpFlagHideWrap);
  82. CXTPPaintManager::SetCustomTheme(new CGnomeTheme());
  83. XTP_COMMANDBARS_ICONSINFO* pIconsInfo = XTPPaintManager()->GetIconsInfo();
  84. pIconsInfo->bUseDisabledIcons = TRUE;
  85. XTPImageManager()->SetIcons(IDR_TOOLBAR_LARGE);
  86. pCommandBars->GetCommandBarsOptions()->bLargeIcons = TRUE;
  87. pCommandBars->GetCommandBarsOptions()->szLargeIcons = CSize(24, 24);
  88. pCommandBars->GetCommandBarsOptions()->bShowExpandButtonAlways = FALSE;
  89. return 0;
  90. }
  91. BOOL CMainFrame::PreCreateWindow(CREATESTRUCT& cs)
  92. {
  93. if( !CGnomeFrame::PreCreateWindow(cs) )
  94. return FALSE;
  95. cs.lpszClass = _T("XTPMainFrame");
  96. CXTPDrawHelpers::RegisterWndClass(AfxGetInstanceHandle(), cs.lpszClass, 
  97. CS_DBLCLKS, AfxGetApp()->LoadIcon(IDR_MAINFRAME));
  98. return TRUE;
  99. }
  100. /////////////////////////////////////////////////////////////////////////////
  101. // CMainFrame diagnostics
  102. #ifdef _DEBUG
  103. void CMainFrame::AssertValid() const
  104. {
  105. CGnomeFrame::AssertValid();
  106. }
  107. void CMainFrame::Dump(CDumpContext& dc) const
  108. {
  109. CGnomeFrame::Dump(dc);
  110. }
  111. #endif //_DEBUG
  112. /////////////////////////////////////////////////////////////////////////////
  113. // CMainFrame message handlers