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

对话框与窗口

开发平台:

Visual C++

  1. // CalendarDemo.h : main header file for the CALENDARDEMO application
  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_CALENDARDEMO_H__AFCC35AE_1F74_407C_9142_1222C34A7B29__INCLUDED_)
  21. #define AFX_CALENDARDEMO_H__AFCC35AE_1F74_407C_9142_1222C34A7B29__INCLUDED_
  22. #if _MSC_VER > 1000
  23. #pragma once
  24. #endif // _MSC_VER > 1000
  25. #ifndef __AFXWIN_H__
  26. #error include 'stdafx.h' before including this file for PCH
  27. #endif
  28. #include "resource.h"       // main symbols
  29. class CCalendarDemoView;
  30. class CXTPCalendarResourcesManager;
  31. /////////////////////////////////////////////////////////////////////////////
  32. // CCalendarDemoApp:
  33. // See CalendarDemo.cpp for the implementation of this class
  34. //
  35. class CCalendarDemoApp : public CWinApp
  36. {
  37. public:
  38. CCalendarDemoApp();
  39. // Overrides
  40. // ClassWizard generated virtual function overrides
  41. //{{AFX_VIRTUAL(CCalendarDemoApp)
  42. public:
  43. virtual BOOL InitInstance();
  44. virtual int ExitInstance();
  45. //}}AFX_VIRTUAL
  46. // Implementation
  47. //{{AFX_MSG(CCalendarDemoApp)
  48. afx_msg void OnAppAbout();
  49. afx_msg void OnFileOpen();
  50. afx_msg void OnMultiSchedulesCfg();
  51. afx_msg void OnMultiSchedulesSample();
  52. afx_msg void OnMultiSchedulesSampleExt();
  53. //}}AFX_MSG
  54. DECLARE_MESSAGE_MAP()
  55. protected:
  56. BOOL m_bOnOpenFile_CreateNewIfNotExist;
  57. BOOL m_bOnOpenFile_AppStarting;
  58. CXTPCalendarResourcesManager* m_pCalRCman;
  59. CString GetModulePath();
  60. CCalendarDemoView* GetCalendarDemoView();
  61. };
  62. /////////////////////////////////////////////////////////////////////////////
  63. // This dialog allows to modify some advances Data Providers related options
  64. // in order to change its performance 
  65. class CCalendarInternalOptions : public CDialog
  66. {
  67. DECLARE_DYNAMIC(CCalendarInternalOptions)
  68. public:
  69. CCalendarInternalOptions(CXTPCalendarData* pCData, CWnd* pParent = NULL);   // standard constructor
  70. virtual ~CCalendarInternalOptions();
  71. // Dialog Data
  72. enum { IDD = IDD_INTERNAL_OPTIONS };
  73. virtual BOOL OnInitDialog ();
  74. protected:
  75. virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV support
  76. DECLARE_MESSAGE_MAP()
  77. CXTPCalendarData* m_ptrCData;
  78. CComboBox m_ctrlDBDPCacheModeCb;
  79. public:
  80. CStatic m_ctrlDBDPCacheModeComment;
  81. afx_msg void OnBnClickedOk();
  82. };
  83. #if _MSC_VER < 1200
  84. inline void DDX_DateTimeCtrl(CDataExchange* pDX, int nIDC, COleDateTime& value)
  85. {
  86. HWND hWndCtrl = pDX->PrepareCtrl(nIDC);
  87. CWnd* pWnd = CWnd::FromHandle(hWndCtrl);
  88. if (pDX->m_bSaveAndValidate)
  89. {
  90. SYSTEMTIME sysTime;
  91. BOOL bRetVal = TRUE;
  92. LRESULT result = pWnd->SendMessage(DTM_GETSYSTEMTIME, 0, (LPARAM) &sysTime);
  93. if (result == GDT_VALID)
  94. {
  95. value = COleDateTime(sysTime);
  96. ASSERT(value.GetStatus() == COleDateTime::valid);
  97. }
  98. else if (result == GDT_NONE)
  99. {
  100. value.SetStatus(COleDateTime::null);
  101. }
  102. else
  103. {
  104. value.SetStatus(COleDateTime::invalid);
  105. }
  106. }
  107. else
  108. {
  109. // make sure the time isn't invalid
  110. ASSERT(value.GetStatus() != COleDateTime::invalid);
  111. SYSTEMTIME sysTime;
  112. WPARAM wParam = GDT_NONE;
  113. if (value.GetStatus() == COleDateTime::valid &&
  114. GETASSYSTEMTIME_DT(value, sysTime))
  115. {
  116. wParam = GDT_VALID;
  117. }
  118. pWnd->SendMessage(DTM_SETSYSTEMTIME, wParam, (LPARAM) &sysTime);
  119. }
  120. }
  121. #endif
  122. /////////////////////////////////////////////////////////////////////////////
  123. //{{AFX_INSERT_LOCATION}}
  124. // Microsoft Visual C++ will insert additional declarations immediately before the previous line.
  125. #endif // !defined(AFX_CALENDARDEMO_H__AFCC35AE_1F74_407C_9142_1222C34A7B29__INCLUDED_)