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

对话框与窗口

开发平台:

Visual C++

  1. // ToolBoxDemoView.cpp : implementation of the CToolBoxDemoView 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 "ToolBoxDemo.h"
  22. #include "ToolBoxDemoDoc.h"
  23. #include "ToolBoxDemoView.h"
  24. #include "MainFrm.h"
  25. #ifdef _DEBUG
  26. #define new DEBUG_NEW
  27. #undef THIS_FILE
  28. static char THIS_FILE[] = __FILE__;
  29. #endif
  30. /////////////////////////////////////////////////////////////////////////////
  31. // CToolBoxDemoView
  32. IMPLEMENT_DYNCREATE(CToolBoxDemoView, CView)
  33. BEGIN_MESSAGE_MAP(CToolBoxDemoView, CView)
  34. //{{AFX_MSG_MAP(CToolBoxDemoView)
  35. ON_WM_PAINT()
  36. ON_WM_ERASEBKGND()
  37. //}}AFX_MSG_MAP
  38. // Standard printing commands
  39. ON_COMMAND(ID_FILE_PRINT, CView::OnFilePrint)
  40. ON_COMMAND(ID_FILE_PRINT_DIRECT, CView::OnFilePrint)
  41. ON_COMMAND(ID_FILE_PRINT_PREVIEW, CView::OnFilePrintPreview)
  42. END_MESSAGE_MAP()
  43. /////////////////////////////////////////////////////////////////////////////
  44. // CToolBoxDemoView construction/destruction
  45. CToolBoxDemoView::CToolBoxDemoView()
  46. {
  47. // TODO: add construction code here
  48. }
  49. CToolBoxDemoView::~CToolBoxDemoView()
  50. {
  51. }
  52. BOOL CToolBoxDemoView::PreCreateWindow(CREATESTRUCT& cs)
  53. {
  54. if (!CView::PreCreateWindow(cs))
  55. return FALSE;
  56. // TODO: Modify the Window class or styles here by modifying
  57. //  the CREATESTRUCT cs
  58. return TRUE;
  59. }
  60. /////////////////////////////////////////////////////////////////////////////
  61. // CToolBoxDemoView drawing
  62. void CToolBoxDemoView::OnDraw(CDC* pDC)
  63. {
  64. // Get a pointer to the frame window
  65. CMainFrame* pMainFrame = (CMainFrame*)AfxGetMainWnd();
  66. ASSERT_VALID(pMainFrame);
  67. // Get the index for selected toolbox folder.
  68. int iFolder = pMainFrame->m_wndToolBox.GetSelFolder();
  69. // Get a pointer to the selected toolbox folder.
  70. CXTOutBarFolder* pFolder = pMainFrame->m_wndToolBox.GetBarFolder(iFolder);
  71. ASSERT(pFolder != NULL);
  72. // Get the index for the currently selected item.
  73. int iCurSel = pFolder->GetSelIndex();
  74. // Construct our display text.
  75. CString strSelected;
  76. strSelected.Format(_T("Selected Index: %d, Text: %s"),
  77. iCurSel, pMainFrame->m_wndToolBox.GetItemText(iCurSel) );
  78. // Draw the text.
  79. CFont* pFontOld = pDC->SelectObject(&XTAuxData().fontBold);
  80. pDC->TextOut( 5, 5, strSelected );
  81. pDC->SelectObject(pFontOld);
  82. }
  83. /////////////////////////////////////////////////////////////////////////////
  84. // CToolBoxDemoView printing
  85. BOOL CToolBoxDemoView::OnPreparePrinting(CPrintInfo* pInfo)
  86. {
  87. // default preparation
  88. return DoPreparePrinting(pInfo);
  89. }
  90. void CToolBoxDemoView::OnBeginPrinting(CDC* /*pDC*/, CPrintInfo* /*pInfo*/)
  91. {
  92. // TODO: add extra initialization before printing
  93. }
  94. void CToolBoxDemoView::OnEndPrinting(CDC* /*pDC*/, CPrintInfo* /*pInfo*/)
  95. {
  96. // TODO: add cleanup after printing
  97. }
  98. /////////////////////////////////////////////////////////////////////////////
  99. // CToolBoxDemoView diagnostics
  100. #ifdef _DEBUG
  101. void CToolBoxDemoView::AssertValid() const
  102. {
  103. CView::AssertValid();
  104. }
  105. void CToolBoxDemoView::Dump(CDumpContext& dc) const
  106. {
  107. CView::Dump(dc);
  108. }
  109. CToolBoxDemoDoc* CToolBoxDemoView::GetDocument() // non-debug version is inline
  110. {
  111. ASSERT(m_pDocument->IsKindOf(RUNTIME_CLASS(CToolBoxDemoDoc)));
  112. return (CToolBoxDemoDoc*)m_pDocument;
  113. }
  114. #endif //_DEBUG
  115. /////////////////////////////////////////////////////////////////////////////
  116. // CToolBoxDemoView message handlers
  117. void CToolBoxDemoView::OnPaint()
  118. {
  119. CPaintDC dc(this);
  120. // Get the client rect.
  121. CRect rectClient;
  122. GetClientRect(&rectClient);
  123. // Paint to a memory device context to reduce screen flicker.
  124. CXTMemDC memDC(&dc, rectClient, GetXtremeColor(COLOR_WINDOW));
  125. OnPrepareDC(&memDC);
  126. OnDraw(&memDC);
  127. }
  128. BOOL CToolBoxDemoView::OnEraseBkgnd(CDC* pDC)
  129. {
  130. UNREFERENCED_PARAMETER(pDC);
  131. return FALSE;
  132. }