MainFrm.cpp
上传用户:fjqzjn
上传日期:2008-01-21
资源大小:2764k
文件大小:5k
源码类别:

Windows CE

开发平台:

Visual C++

  1. /******************************************************************************
  2. ** Copyright (C) 2004. Intel Corporation. All Rights Reserved. 
  3. **
  4. ** The source code contained or described herein and all documents related to the
  5. ** source code ("Material") are owned by Intel Corporation or its suppliers or 
  6. ** licensors. Title to the Material remains with Intel Corporation or its suppliers
  7. ** and licensors. The Material contains trade secrets and proprietary and 
  8. ** confidential information of Intel or its suppliers and licensors. The Material 
  9. ** is protected by worldwide copyright and trade secret laws and treaty provisions.
  10. ** No part of the Material may be used, copied, reproduced, modified, published, 
  11. ** uploaded, posted, transmitted, distributed, or disclosed in any way without 
  12. ** Intel抯 prior express written permission.
  13. ** 
  14. ** No license under any patent, copyright, trade secret or other intellectual 
  15. ** property right is granted to or conferred upon you by disclosure or delivery 
  16. ** of the Materials, either expressly, by implication, inducement, estoppel or 
  17. ** otherwise. Any license under such intellectual property rights must be express 
  18. ** and approved by Intel in writing.
  19. ******************************************************************************/
  20. // MainFrm.cpp : implementation of the CMainFrame class
  21. //
  22. #include "stdafx.h"
  23. #include "DispDemo1.h"
  24. #include "MainFrm.h"
  25. #include "DemoGDI.h"
  26. #include "DemoCustom.h"
  27. #include "DemoVideo.h"
  28. #include "DispDemo1Doc.h"
  29. #ifdef _DEBUG
  30. #define new DEBUG_NEW
  31. #undef THIS_FILE
  32. static char THIS_FILE[] = __FILE__;
  33. #endif
  34. // Array tbSTDButton contains relevant buttons of bitmap IDB_STD_SMALL_COLOR
  35. static TBBUTTON tbButtons[] = {
  36. {0, 0, TBSTATE_ENABLED, TBSTYLE_SEP,    0, 0, 0,  0},  
  37. {0, ID_FILE_NEW, TBSTATE_ENABLED, TBSTYLE_BUTTON, 0, 0, 0, -1},
  38. {1, ID_FILE_OPEN, TBSTATE_ENABLED, TBSTYLE_BUTTON, 0, 0, 0, -1},
  39. {2, ID_FILE_SAVE, TBSTATE_ENABLED, TBSTYLE_BUTTON, 0, 0, 0, -1},
  40. {0, 0, TBSTATE_ENABLED, TBSTYLE_SEP,    0, 0, 0, -1},
  41. {3, ID_EDIT_CUT, TBSTATE_ENABLED, TBSTYLE_BUTTON, 0, 0, 0, -1},
  42. {4, ID_EDIT_COPY, TBSTATE_ENABLED, TBSTYLE_BUTTON, 0, 0, 0, -1},
  43. {5, ID_EDIT_PASTE, TBSTATE_ENABLED, TBSTYLE_BUTTON, 0, 0, 0, -1},
  44. {0, 0, TBSTATE_ENABLED, TBSTYLE_SEP,    0, 0, 0, -1},
  45. {6, ID_APP_ABOUT, TBSTATE_ENABLED, TBSTYLE_BUTTON, 0, 0, 0, -1},
  46. {0, 0, TBSTATE_ENABLED, TBSTYLE_SEP,    0, 0, 0,  0}
  47. };
  48. const int nNumButtons = sizeof(tbButtons)/sizeof(TBBUTTON);
  49. const int nNumImages = 7;
  50. const DWORD dwAdornmentFlags = 0; // exit button
  51. /////////////////////////////////////////////////////////////////////////////
  52. // CMainFrame
  53. IMPLEMENT_DYNCREATE(CMainFrame, CFrameWnd)
  54. BEGIN_MESSAGE_MAP(CMainFrame, CFrameWnd)
  55. //{{AFX_MSG_MAP(CMainFrame)
  56. ON_WM_CREATE()
  57. ON_COMMAND(ID_DEMO_CUSTOM, OnDemoCustom)
  58. ON_COMMAND(ID_CFG_QVGA, OnCfgQVGA)
  59. ON_COMMAND(ID_CFG_VGA, OnCfgVGA)
  60. ON_COMMAND(ID_CFG_SVGA, OnCfgSVGA)
  61. ON_COMMAND(ID_CFG_SXGA, OnCfgSXGA)
  62. ON_COMMAND(ID_CFG_XGA, OnCfgXGA)
  63. ON_COMMAND(IDM_DEMO_GDI, OnDemoGdi)
  64. ON_COMMAND(IDM_DEMO_VIDEO, OnDemoVideo)
  65. //}}AFX_MSG_MAP
  66. END_MESSAGE_MAP()
  67. /////////////////////////////////////////////////////////////////////////////
  68. // CMainFrame construction/destruction
  69. CMainFrame::CMainFrame()
  70. {
  71. m_wExternalWidth = 1024;
  72. m_wExternalHeight = 768;
  73. }
  74. CMainFrame::~CMainFrame()
  75. {
  76. }
  77. int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)
  78. {
  79. if (CFrameWnd::OnCreate(lpCreateStruct) == -1)
  80. return -1;
  81. // Add the buttons and adornments to the CommandBar.
  82. if (/*!InsertButtons(tbButtons, nNumButtons, IDR_MAINFRAME, nNumImages) ||*/
  83.     !AddAdornments(dwAdornmentFlags))
  84. {
  85. TRACE0("Failed to add toolbar buttonsn");
  86. return -1;
  87. }
  88. return 0;
  89. }
  90. BOOL CMainFrame::PreCreateWindow(CREATESTRUCT& cs)
  91. {
  92. if( !CFrameWnd::PreCreateWindow(cs) )
  93. return FALSE;
  94. // TODO: Modify the Window class or styles here by modifying
  95. //  the CREATESTRUCT cs
  96. return TRUE;
  97. }
  98. /////////////////////////////////////////////////////////////////////////////
  99. // CMainFrame diagnostics
  100. #ifdef _DEBUG
  101. void CMainFrame::AssertValid() const
  102. {
  103. CFrameWnd::AssertValid();
  104. }
  105. void CMainFrame::Dump(CDumpContext& dc) const
  106. {
  107. CFrameWnd::Dump(dc);
  108. }
  109. #endif //_DEBUG
  110. /////////////////////////////////////////////////////////////////////////////
  111. // CMainFrame message handlers
  112. void CMainFrame::OnCfgQVGA() 
  113. {
  114. SetExternalRes(320, 240);
  115. }
  116. void CMainFrame::OnCfgVGA() 
  117. {
  118. SetExternalRes(640, 480);
  119. }
  120. void CMainFrame::OnCfgSVGA() 
  121. {
  122. SetExternalRes(800, 600);
  123. }
  124. void CMainFrame::OnCfgXGA() 
  125. {
  126. SetExternalRes(1024, 768);
  127. }
  128. void CMainFrame::OnCfgSXGA() 
  129. {
  130. SetExternalRes(1280, 1024);
  131. }
  132. void CMainFrame::SetExternalRes(WORD wWidth, WORD wHeight)
  133. {
  134. m_wExternalWidth = wWidth;
  135. m_wExternalHeight = wHeight;
  136. ((CDispDemo1Doc*)GetActiveDocument())->m_cs1.Format(L"%d x %d selected.", wWidth, wHeight) ;
  137. ((CDispDemo1Doc*)GetActiveDocument())->m_cs2 = L"Now select from the Demo menu ";
  138. GetActiveDocument()->UpdateAllViews(NULL);
  139. }
  140. void CMainFrame::OnDemoGdi() 
  141. {
  142. CDemoGDI demo(m_wExternalWidth, m_wExternalHeight);
  143. }
  144. void CMainFrame::OnDemoCustom() 
  145. {
  146. CDemoCustom demo(m_wExternalWidth, m_wExternalHeight);
  147. }
  148. void CMainFrame::OnDemoVideo() 
  149. {
  150. CDemoVideo demo(m_wExternalWidth, m_wExternalHeight);
  151. }