// GridCellDateTime.h: interface for the CGridCellDateTime class. // // Provides the implementation for a datetime picker cell type of the // grid control. // // For use with CGridCtrl v2.22+ // ////////////////////////////////////////////////////////////////////// #if !defined(AFX_DATETIMECELL_H__A0B7DA0A_0AFE_4D28_A00E_846C96D7507A__INCLUDED_) #define AFX_DATETIMECELL_H__A0B7DA0A_0AFE_4D28_A00E_846C96D7507A__INCLUDED_ #if _MSC_VER > 1000 #pragma once #endif // _MSC_VER > 1000 #include "GridCell.h" #include "afxdtctl.h" // for CDateTimeCtrl class CGridCellDateTime : public CGridCell { friend class CGridCtrl; DECLARE_DYNCREATE(CGridCellDateTime) CTime m_cTime; DWORD m_dwStyle; public: CGridCellDateTime(); CGridCellDateTime(DWORD dwStyle); virtual ~CGridCellDateTime(); virtual CSize GetCellExtent(CDC* pDC); // editing cells public: void Init(DWORD dwStyle); virtual BOOL Edit(int nRow, int nCol, CRect rect, CPoint point, UINT nID, UINT nChar); virtual CWnd* GetEditWnd() const; virtual void EndEdit(); CTime* GetTime() {return &m_cTime;}; void SetTime(CTime time); }; class CInPlaceDateTime : public CDateTimeCtrl { // Construction public: CInPlaceDateTime(CWnd* pParent, // parent CRect& rect, // dimensions & location DWORD dwStyle, // window/combobox style UINT nID, // control ID int nRow, int nColumn, // row and column COLORREF crFore, COLORREF crBack, // Foreground, background colour CTime* pcTime, UINT nFirstChar); // first character to pass to control // Overrides // ClassWizard generated virtual function overrides //{{AFX_VIRTUAL(CInPlaceList) protected: virtual void PostNcDestroy(); //}}AFX_VIRTUAL // Implementation public: virtual ~CInPlaceDateTime(); void EndEdit(); // Generated message map functions protected: //{{AFX_MSG(CInPlaceList) afx_msg void OnKillFocus(CWnd* pNewWnd); afx_msg void OnKeyDown(UINT nChar, UINT nRepCnt, UINT nFlags); afx_msg void OnKeyUp(UINT nChar, UINT nRepCnt, UINT nFlags); afx_msg UINT OnGetDlgCode(); //}}AFX_MSG //afx_msg void OnSelendOK(); DECLARE_MESSAGE_MAP() private: CTime* m_pcTime; int m_nRow; int m_nCol; UINT m_nLastChar; BOOL m_bExitOnArrows; COLORREF m_crForeClr, m_crBackClr; }; #endif // !defined(AFX_DATETIMECELL_H__A0B7DA0A_0AFE_4D28_A00E_846C96D7507A__INCLUDED_)