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

对话框与窗口

开发平台:

Visual C++

  1. // CalendarDemoView.h : interface of the CCalendarDemoView 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. #if !defined(AFX_CALENDARDEMOVIEW_H__59A561F0_994C_4D99_B1D2_E665584B4348__INCLUDED_)
  21. #define AFX_CALENDARDEMOVIEW_H__59A561F0_994C_4D99_B1D2_E665584B4348__INCLUDED_
  22. #if _MSC_VER > 1000
  23. #pragma once
  24. #endif // _MSC_VER > 1000
  25. #include "Resource.h"
  26. /////////////////////////////////////////////////////////////////////////////
  27. /////////////////////////////////////////////////////////////////////////////
  28. class CCalendarDemoDoc;
  29. enum EnumCalendarToolTipMode
  30. {
  31. ctmStandard = 0,
  32. ctmCustom = 1,
  33. ctmDisabled = 2,
  34. };
  35. /////////////////////////////////////////////////////////////////////////////
  36. // This customized Calendar class shows how to redefine a behavior of some 
  37. // standard methods, in this case it shows how to customize events' tooltips.
  38. //
  39. class CXTPCalendarControl_Custom : public CXTPCalendarControl
  40. {
  41. public:
  42. int m_nToolTipMode;
  43. CXTPCalendarControl_Custom();
  44. virtual INT_PTR OnToolHitTest(CPoint point, TOOLINFO* pTI) const;
  45. };
  46. //////////////////////////////////////////////////////////////////////////
  47. // Default View class for our Demo application.
  48. class CCalendarDemoView : public CXTPCalendarControlView 
  49. {
  50. protected: // create from serialization only
  51. CCalendarDemoView();
  52. DECLARE_DYNCREATE(CCalendarDemoView)
  53. // Attributes
  54. public:
  55. CCalendarDemoDoc* GetDocument();
  56. CXTPCalendarControl_Custom m_wndCalendarEx;
  57. CXTPCalendarController m_CalendarController;
  58. CXTPScrollBar m_wndScrollBar;
  59. // Operations
  60. public:
  61. // Overrides
  62. // ClassWizard generated virtual function overrides
  63. //{{AFX_VIRTUAL(CCalendarDemoView)
  64. public:
  65. virtual void OnDraw(CDC* pDC);  // overridden to draw this view
  66. virtual BOOL PreCreateWindow(CREATESTRUCT& cs);
  67. virtual void OnInitialUpdate();
  68. protected:
  69. //}}AFX_VIRTUAL
  70. // Implementation
  71. public:
  72. virtual ~CCalendarDemoView();
  73. #ifdef _DEBUG
  74. virtual void AssertValid() const;
  75. virtual void Dump(CDumpContext& dc) const;
  76. #endif
  77. protected:
  78. // Generated message map functions
  79. protected:
  80. //{{AFX_MSG(CCalendarDemoView)
  81. afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);
  82. afx_msg void OnCalendarViewDay();
  83. afx_msg void OnCalendarViewWorkWeek();
  84. afx_msg void OnCalendarViewWeek();
  85. afx_msg void OnCalendarViewMonth();
  86. afx_msg void OnUpdateCalendarViewDay(CCmdUI* pCmdUI);
  87. afx_msg void OnUpdateCalendarViewWorkWeek(CCmdUI* pCmdUI);
  88. afx_msg void OnUpdateCalendarViewWeek(CCmdUI* pCmdUI);
  89. afx_msg void OnUpdateCalendarViewMonth(CCmdUI* pCmdUI);
  90. afx_msg void OnCalendarTimescale60();
  91. afx_msg void OnCalendarTimescale30();
  92. afx_msg void OnCalendarTimescale15();
  93. afx_msg void OnCalendarTimescale10();
  94. afx_msg void OnCalendarTimescale6();
  95. afx_msg void OnCalendarTimescale5();
  96. afx_msg void OnUpdateCalendarTimescale60(CCmdUI* pCmdUI);
  97. afx_msg void OnUpdateCalendarTimescale30(CCmdUI* pCmdUI);
  98. afx_msg void OnUpdateCalendarTimescale15(CCmdUI* pCmdUI);
  99. afx_msg void OnUpdateCalendarTimescale10(CCmdUI* pCmdUI);
  100. afx_msg void OnUpdateCalendarTimescale6(CCmdUI* pCmdUI);
  101. afx_msg void OnUpdateCalendarTimescale5(CCmdUI* pCmdUI);
  102. afx_msg void OnUpdateCalendarTimescale(CCmdUI* pCmdUI, int nScale);
  103. afx_msg void OnCalendarTimezone();
  104. afx_msg void OnAdvancedOptions();
  105. afx_msg void OnAddNewEvent();
  106. // afx_msg void OnCalendarLangRussian();
  107. // afx_msg void OnCalendarLangDefault();
  108. afx_msg void OnFileSave();
  109. afx_msg void OnFileSaveAs();
  110. afx_msg void OnUpdateFileSave(CCmdUI* pCmdUI);
  111. afx_msg void OnUpdateFileSaveAs(CCmdUI* pCmdUI);
  112. afx_msg void OnViewReminders();
  113. afx_msg void OnUpdateViewReminders(CCmdUI* pCmdUI);
  114. //}}AFX_MSG
  115. DECLARE_MESSAGE_MAP()
  116. DECLARE_XTP_SINK(CCalendarDemoView, m_Sink);
  117. void OnEvent_Calendar(XTP_NOTIFY_CODE Event, WPARAM wParam, LPARAM lParam);
  118. void OnEvent_IsEditActionDisabled(XTP_NOTIFY_CODE Event, WPARAM wParam, LPARAM lParam);
  119. void OnEvent_BeforeEditAction(XTP_NOTIFY_CODE Event, WPARAM wParam, LPARAM lParam);
  120. void OnEvent_PrePopulate(XTP_NOTIFY_CODE Event, WPARAM wParam, LPARAM lParam);
  121. //void OnEvent_SelChanged(XTP_NOTIFY_CODE Event, WPARAM wParam, LPARAM lParam);
  122. void OnEvent_CalendarData(XTP_NOTIFY_CODE Event, WPARAM wParam, LPARAM lParam);
  123. void OnReminders(XTP_NOTIFY_CODE Event, WPARAM wParam , LPARAM lParam);
  124. void OnBeforeDrawThemeObject(XTP_NOTIFY_CODE Event, WPARAM wParam , LPARAM lParam);
  125. void OnEvent_GetItemText(XTP_NOTIFY_CODE Event, WPARAM wParam , LPARAM lParam);
  126. void CreateRemindersWindow();
  127. COleDateTime m_dtDayViewStart;
  128. COleDateTimeSpan m_dsDayViewDays;
  129. public:
  130. void AddNewEvent(CPoint* pPtHitContext = NULL);
  131. afx_msg void OnBnClickedScrollDayPrev();
  132. afx_msg void OnBnClickedIdcScrollDayNext();
  133. void OnUpdateTimeScale();
  134. void SetView(XTPCalendarViewType viewtype);
  135. void SetCalendarTimeScale(int nScale);
  136. void SetCalendarToolTipMode(int nToolTipMode);
  137. virtual void OnOfficeThemeChanged(int nTheme);
  138. int m_nScale;
  139. };
  140. #ifndef _DEBUG  // debug version in CalendarDemoView.cpp
  141. inline CCalendarDemoDoc* CCalendarDemoView::GetDocument()
  142.    { return (CCalendarDemoDoc*)m_pDocument; }
  143. #endif
  144. /////////////////////////////////////////////////////////////////////////////
  145. //{{AFX_INSERT_LOCATION}}
  146. // Microsoft Visual C++ will insert additional declarations immediately before the previous line.
  147. #endif // !defined(AFX_CALENDARDEMOVIEW_H__59A561F0_994C_4D99_B1D2_E665584B4348__INCLUDED_)