home *** CD-ROM | disk | FTP | other *** search
/ Team Palmtops 7 / Palmtops_numero07.iso / WinCE / SDKWindowsCE / HandHeldPCPro30 / sdk.exe / Jupiter SDK / data1.cab / MFC_Samples / maths3 / mathsctl.h < prev    next >
Encoding:
C/C++ Source or Header  |  1999-02-19  |  1.8 KB  |  77 lines

  1. // Maths3Ctl.h : Declaration of the CMaths3Ctrl OLE control class.
  2.  
  3. /////////////////////////////////////////////////////////////////////////////
  4. // CMaths3Ctrl : See MathsCtl.cpp for implementation.
  5.  
  6. class CMaths3Ctrl : public COleControl
  7. {
  8.     DECLARE_DYNCREATE(CMaths3Ctrl)
  9.  
  10. // Constructor
  11. public:
  12.     CMaths3Ctrl();
  13.  
  14.  
  15. // Attributes
  16. protected:
  17.  
  18. // Overrides
  19. public:
  20.     // Drawing function
  21.     virtual void OnDraw(
  22.                 CDC* pdc, const CRect& rcBounds, const CRect& rcInvalid);
  23.  
  24.     // Persistence
  25.     virtual void DoPropExchange(CPropExchange* pPX);
  26.  
  27.     // Reset control state
  28.     virtual void OnResetState();
  29.  
  30. // Implementation
  31. protected:
  32.     ~CMaths3Ctrl();
  33.  
  34.     // Hit Testing Helper
  35.     BOOL InEllipse(const CPoint& pt, int x1, int y1, int x2, int y2);
  36.  
  37.  
  38.     DECLARE_OLECREATE_EX(CMaths3Ctrl)    // Class factory and guid
  39.     DECLARE_OLETYPELIB(CMaths3Ctrl)      // GetTypeInfo
  40.     DECLARE_PROPPAGEIDS(CMaths3Ctrl)     // Property page IDs
  41.     DECLARE_OLECTLTYPE(CMaths3Ctrl)        // Type name and misc status
  42.  
  43. // Message maps
  44.     //{{AFX_MSG(CMaths3Ctrl)
  45.     afx_msg void OnLButtonDown(UINT nFlags, CPoint point);
  46.     //}}AFX_MSG
  47.     DECLARE_MESSAGE_MAP()
  48.  
  49. // Dispatch maps
  50.     //{{AFX_DISPATCH(CMaths3Ctrl)
  51.     BOOL m_bOpposite;
  52.     afx_msg void OnOppositeChanged();
  53.     //}}AFX_DISPATCH
  54.     DECLARE_DISPATCH_MAP()
  55.  
  56.     afx_msg void AboutBox();
  57.  
  58. // Event maps
  59.     //{{AFX_EVENT(CMaths3Ctrl)
  60.     void FireOutside()
  61.         {FireEvent(eventidOutside,EVENT_PARAM(VTS_NONE));}
  62.     void FireInside(OLE_XPOS_PIXELS x, OLE_YPOS_PIXELS y)
  63.         {FireEvent(eventidInside,EVENT_PARAM(VTS_XPOS_PIXELS  VTS_YPOS_PIXELS), x, y);}
  64.     //}}AFX_EVENT
  65.     DECLARE_EVENT_MAP()
  66.  
  67. // Dispatch and event IDs
  68. public:
  69.     enum {
  70.     //{{AFX_DISP_ID(CMaths3Ctrl)
  71.     dispidOpposite = 1L,
  72.     eventidOutside = 1L,
  73.     eventidInside = 2L,
  74.     //}}AFX_DISP_ID
  75.     };
  76. };
  77.