Source code of Windows XP (NT5)
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
/*++
Copyright (c) 1996 Microsoft Corporation
Module Name:
// HoursCtl.h : Declaration of the CHoursCtrl OLE control class.
File History:
JonY May-96 created
--*/
/////////////////////////////////////////////////////////////////////////////
// CHoursCtrl : See HoursCtl.cpp for implementation.
class CHoursCtrl : public COleControl { DECLARE_DYNCREATE(CHoursCtrl)
// Constructor
public: CHoursCtrl();
// Overrides
// Drawing function
virtual void OnDraw( CDC* pdc, const CRect& rcBounds, const CRect& rcInvalid);
// Persistence
virtual void DoPropExchange(CPropExchange* pPX);
// Reset control state
virtual void OnResetState();
virtual BOOL PreTranslateMessage(LPMSG lpmsg);
private: CFont* m_pFont;
struct { USHORT x; USHORT y; USHORT cx; USHORT cy; BOOL bVal; // TRUE = access allowed (default)
BOOL bSelected; USHORT row; USHORT col; } m_sCell[202]; // 169 cells + 7 days + 24 hours + 1 big
CString csDay[7];
CPoint pointDrag; USHORT GetCellID(CPoint point); void InvalidateCell(USHORT sCellID);
public: short m_sCurrentCol; short m_sCurrentRow; short m_sCurrentLoc(); void Click(CPoint point);
void ToggleDay(UINT nID); void ToggleCol(UINT nID); void OnBigButton(); BOOL bToggle;
// Implementation
protected: ~CHoursCtrl();
DECLARE_OLECREATE_EX(CHoursCtrl) // Class factory and guid
DECLARE_OLETYPELIB(CHoursCtrl) // GetTypeInfo
DECLARE_PROPPAGEIDS(CHoursCtrl) // Property page IDs
DECLARE_OLECTLTYPE(CHoursCtrl) // Type name and misc status
// Message maps
//{{AFX_MSG(CHoursCtrl)
afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct); afx_msg BOOL OnSetCursor(CWnd* pWnd, UINT nHitTest, UINT message); afx_msg void OnLButtonDown(UINT nFlags, CPoint point); afx_msg void OnLButtonUp(UINT nFlags, CPoint point); afx_msg void OnMouseMove(UINT nFlags, CPoint point); //}}AFX_MSG
DECLARE_MESSAGE_MAP()
// Dispatch maps
//{{AFX_DISPATCH(CHoursCtrl)
OLE_COLOR m_crPermitColor; afx_msg void OnCrPermitColorChanged(); OLE_COLOR m_crDenyColor; afx_msg void OnCrDenyColorChanged(); afx_msg VARIANT GetDateData(); afx_msg void SetDateData(const VARIANT FAR& newValue); //}}AFX_DISPATCH
DECLARE_DISPATCH_MAP()
// Event maps
//{{AFX_EVENT(CHoursCtrl)
//}}AFX_EVENT
DECLARE_EVENT_MAP()
// Dispatch and event IDs
public: enum { //{{AFX_DISP_ID(CHoursCtrl)
dispidCrPermitColor = 1L, dispidCrDenyColor = 2L, dispidDateData = 3L, //}}AFX_DISP_ID
}; };
|