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

对话框与窗口

开发平台:

Visual C++

  1. // XTPCalendarMonthViewEvent.h: interface for the CXTPCalendarMonthViewEvent class.
  2. //
  3. // This file is a part of the XTREME CALENDAR 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. //{{AFX_CODEJOCK_PRIVATE
  21. #if !defined(_XTPCALENDARMONTHVIEWEVENT_H__)
  22. #define _XTPCALENDARMONTHVIEWEVENT_H__
  23. //}}AFX_CODEJOCK_PRIVATE
  24. #if _MSC_VER > 1000
  25. #pragma once
  26. #endif // _MSC_VER > 1000
  27. #include "Common/XTPDrawHelpers.h"
  28. #include "XTPCalendarViewEvent.h"
  29. #include "XTPCalendarPaintManager.h"
  30. #include "XTPCalendarPtrs.h"
  31. #include "XTPCalendarPtrCollectionT.h"
  32. class CXTPCalendarEvent;
  33. class CXTPCalendarControl;
  34. class CXTPCalendarMonthViewDay;
  35. class CXTPCalendarMonthViewGroup;
  36. struct XTP_CALENDAR_HITTESTINFO_MONTH_VIEW;
  37. //===========================================================================
  38. // Summary:
  39. //     This class represents an event view portion of the CalendarMonthViewDay.
  40. // Remarks:
  41. //     It represents a specific view of the event associated data according
  42. //     to various view types and display settings and provides basic
  43. //     functionality on this data using user input through keyboard and mouse.
  44. //
  45. //          CXTPCalendarMonthViewEvent is based on CXTPCalendarViewEventT template
  46. //          class. It inherits basic behavior from its and overlaps and add some
  47. //          to get its own behavior and look.
  48. //
  49. // See Also: CXTPCalendarViewEvent, CXTPCalendarViewEventT
  50. //===========================================================================
  51. class _XTP_EXT_CLASS CXTPCalendarMonthViewEvent : public CXTPCalendarViewEventT<
  52. CXTPCalendarMonthViewGroup,
  53. XTP_CALENDAR_HITTESTINFO_MONTH_VIEW>
  54. {
  55. //{{AFX_CODEJOCK_PRIVATE
  56. friend class CXTPCalendarPaintManager::CMonthViewEventPart;
  57. friend class CXTPCalendarMonthViewDay;
  58. DECLARE_DYNAMIC(CXTPCalendarMonthViewEvent)
  59. //}}AFX_CODEJOCK_PRIVATE
  60. public:
  61. //------------------------------------------------------------------------
  62. // Remarks:
  63. //     Base class type definition.
  64. //------------------------------------------------------------------------
  65. typedef CXTPCalendarViewEventT< CXTPCalendarMonthViewGroup,
  66. XTP_CALENDAR_HITTESTINFO_MONTH_VIEW> TBase;
  67. //-----------------------------------------------------------------------
  68. // Summary:
  69. //     Default object constructor.
  70. // Parameters:
  71. //     pEvent   - Pointer to CXTPCalendarEvent.
  72. //     pViewGroup - Pointer to CXTPCalendarMonthViewGroup object.
  73. // See Also: ~CXTPCalendarWeekViewDay()
  74. //-----------------------------------------------------------------------
  75. CXTPCalendarMonthViewEvent(CXTPCalendarEvent* pEvent, CXTPCalendarMonthViewGroup* pViewGroup);
  76. //-----------------------------------------------------------------------
  77. // Summary:
  78. //     Default class destructor.
  79. //-----------------------------------------------------------------------
  80. virtual ~CXTPCalendarMonthViewEvent();
  81. //-----------------------------------------------------------------------
  82. // Summary:
  83. //     This member function is used to draw the view content using
  84. //     the specified device context.
  85. // Parameters:
  86. //     pDC - Pointer to a valid device context.
  87. // Remarks:
  88. //     Call AdjustLayout() before Draw()
  89. // See Also: AdjustLayout(CRect rcDay)
  90. //-----------------------------------------------------------------------
  91. virtual void Draw(CDC* pDC);
  92. //-----------------------------------------------------------------------
  93. // Summary:
  94. //     This member function is used to fill a
  95. //     XTP_CALENDAR_HITTESTINFO_MONTH_VIEW structure.
  96. // Parameters:
  97. //     point - A CPoint that contains the point to test.
  98. //     pInfo - A pointer to a XTP_CALENDAR_HITTESTINFO_MONTH_VIEW structure.
  99. // Remarks:
  100. //     Call this member function to gather hit test information from
  101. //     the day view.
  102. // See Also: XTP_CALENDAR_HITTESTINFO_MONTH_VIEW
  103. //-----------------------------------------------------------------------
  104. virtual BOOL HitTestEx(CPoint point, XTP_CALENDAR_HITTESTINFO_MONTH_VIEW* pInfo);
  105. //-----------------------------------------------------------------------
  106. // Summary:
  107. //     This member function is used to adjust the view's layout
  108. //     depending on the provided bounding rectangle and then calls
  109. //     AdjustLayout() for all sub-items.
  110. // Parameters:
  111. //     pDC               - Pointer to a valid device context.
  112. //     rcEventMax        - A CRect object that contains the coordinates
  113. //                         for drawing the view.
  114. //     nEventPlaceNumber - An int that contains the sequential place number.
  115. // Remarks:
  116. //     Call Populate(COleDateTime dtDayDate) prior to calling AdjustLayout().
  117. //     AdjustLayout2 is called by calendar control instead of AdjustLayout
  118. //     when theme is set.
  119. //-----------------------------------------------------------------------
  120. virtual void AdjustLayout(CDC* pDC, const CRect& rcEventMax, int nEventPlaceNumber);
  121. virtual void AdjustLayout2(CDC* pDC, const CRect& rcEventMax, int nEventPlaceNumber); //<COMBINE AdjustLayout>
  122. //-----------------------------------------------------------------------
  123. // Summary:
  124. //     This member function is used to obtain the value of the view
  125. //     visible flag.
  126. // Remarks:
  127. //     Call this member function to determine the value of the visible flag.
  128. // Returns:
  129. //     A BOOL. TRUE if the view is visible. FALSE otherwise.
  130. //-----------------------------------------------------------------------
  131. virtual BOOL IsVisible();
  132. //-----------------------------------------------------------------------
  133. // Summary:
  134. //     This member function is used to obtain the value of the
  135. //     "show end time" flag.
  136. // Remarks:
  137. //     Call this member function to determine the value of the
  138. //     "show end time" flag.
  139. // Returns:
  140. //     A BOOL. TRUE if the view shows the end time value. FALSE otherwise.
  141. //-----------------------------------------------------------------------
  142. BOOL IsShowEndTime();
  143. //-----------------------------------------------------------------------
  144. // Summary:
  145. //     This member function is used to obtain the value of the
  146. //     "show time as clock" flag.
  147. // Remarks:
  148. //     Call this member function to determine the value of the
  149. //     "show time as clock" flag.
  150. // Returns:
  151. //     A BOOL. TRUE if the view shows the time as a clock. FALSE otherwise.
  152. //-----------------------------------------------------------------------
  153. BOOL IsTimeAsClock();
  154. //-----------------------------------------------------------------------
  155. // Summary:
  156. //     This member function is used to perform additional adjustments.
  157. // Remarks:
  158. //     Call this member function to perform additional adjustments after
  159. //     all adjustment activities are completed.
  160. //-----------------------------------------------------------------------
  161. virtual void OnPostAdjustLayout();
  162. protected:
  163. //-----------------------------------------------------------------------
  164. // Summary:
  165. //     This member function is used to obtain the editor window font.
  166. // Returns:
  167. //     A pointer to a CFont object that contains the editor window font.
  168. //-----------------------------------------------------------------------
  169. virtual CFont* GetSubjectEditorFont();
  170. private:
  171. };
  172. //===========================================================================
  173. /////////////////////////////////////////////////////////////////////////////
  174. #endif // !defined(_XTPCALENDARMONTHVIEWEVENT_H__)