home *** CD-ROM | disk | FTP | other *** search
- // circ2ctl.h : Declaration of the CCirc2Ctrl OLE control class.
- //
- // This is a part of the Microsoft Foundation Classes C++ library.
- // Copyright (C) 1992-1998 Microsoft Corporation
- // All rights reserved.
- //
- // This source code is only intended as a supplement to the
- // Microsoft Foundation Classes Reference and related
- // electronic documentation provided with the library.
- // See these sources for detailed information regarding the
- // Microsoft Foundation Classes product.
-
- /////////////////////////////////////////////////////////////////////////////
- // CCirc2Ctrl : See circ2ctl.cpp for implementation.
-
- class CCirc2Ctrl : public COleControl
- {
- DECLARE_DYNCREATE(CCirc2Ctrl)
-
- // Constructor
- public:
- CCirc2Ctrl();
-
- // 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 OnMapPropertyToPage(DISPID dispid, LPCLSID lpclsid,
- BOOL* pbPageOptional);
-
- // Implementation
- protected:
- ~CCirc2Ctrl();
- void GetDrawRect(CRect* rc);
- short m_circleOffset;
- BOOL InBounds(short nOffset);
- BOOL InCircle(CPoint& point);
- void FlashColor(CDC* pdc);
-
- DECLARE_OLECREATE_EX(CCirc2Ctrl) // Class factory and guid
- DECLARE_OLETYPELIB(CCirc2Ctrl) // GetTypeInfo
- DECLARE_PROPPAGEIDS(CCirc2Ctrl) // Property page IDs
- DECLARE_OLECTLTYPE(CCirc2Ctrl) // Type name and misc status
-
- // Message maps
- //{{AFX_MSG(CCirc2Ctrl)
- afx_msg void OnLButtonDown(UINT nFlags, CPoint point);
- afx_msg void OnLButtonDblClk(UINT nFlags, CPoint point);
- afx_msg void OnLButtonUp(UINT nFlags, CPoint point);
- afx_msg void OnSize(UINT nType, int cx, int cy);
- //}}AFX_MSG
- DECLARE_MESSAGE_MAP()
-
- // Dispatch maps
- //{{AFX_DISPATCH(CCirc2Ctrl)
- OLE_COLOR m_flashColor;
- BOOL m_circleShape;
- afx_msg void OnCircleShapeChanged();
- afx_msg short GetCircleOffset();
- afx_msg void SetCircleOffset(short nNewValue);
- //}}AFX_DISPATCH
- DECLARE_DISPATCH_MAP()
-
- afx_msg void AboutBox();
-
- // Event maps
- //{{AFX_EVENT(CCirc2Ctrl)
- void FireClickIn(OLE_XPOS_PIXELS x, OLE_YPOS_PIXELS y)
- {FireEvent(eventidClickIn,EVENT_PARAM(VTS_XPOS_PIXELS VTS_YPOS_PIXELS), x, y);}
- void FireClickOut()
- {FireEvent(eventidClickOut,EVENT_PARAM(VTS_NONE));}
- //}}AFX_EVENT
- DECLARE_EVENT_MAP()
-
- // Dispatch and event IDs
- public:
- enum {
- //{{AFX_DISP_ID(CCirc2Ctrl)
- dispidCircleShape = 2L,
- dispidCircleOffset = 3L,
- dispidFlashColor = 1L,
- eventidClickIn = 1L,
- eventidClickOut = 2L,
- //}}AFX_DISP_ID
- };
- };
-