FloorObject.h
上传用户:zhout2004
上传日期:2007-01-02
资源大小:218k
文件大小:2k
源码类别:

ActiveX/DCOM/ATL

开发平台:

Visual C++

  1. /************************************
  2.   REVISION LOG ENTRY
  3.   Revision By: Mihai Filimon
  4.   Revised on 9/12/98 2:17:04 PM
  5.   Comments: FloorObject.h: interface for the CFloorObject class.
  6.  ************************************/
  7. #if !defined(AFX_FLOOROBJECT_H__FF4DABE4_4A17_11D2_868E_0040055C08D9__INCLUDED_)
  8. #define AFX_FLOOROBJECT_H__FF4DABE4_4A17_11D2_868E_0040055C08D9__INCLUDED_
  9. #if _MSC_VER >= 1000
  10. #pragma once
  11. #endif // _MSC_VER >= 1000
  12. class CFloorWnd;
  13. #define defaultHeight 20
  14. #define defaultBkGnd RGB(192,192,192)
  15. // Abstract class
  16. class CFloorObject : public CObject
  17. {
  18. DECLARE_DYNAMIC(CFloorObject)
  19. public:
  20. virtual const LPARAM GetUserData();
  21. virtual LPARAM SetUserData(LPARAM lParam);
  22. virtual BOOL PtInObject(CPoint point);
  23. virtual COLORREF SetBkGnd(COLORREF rgbBkGnd = defaultBkGnd);
  24. friend class CFloorWnd;
  25. friend class CXFloorWndCtrl;
  26. virtual const int GetHeight();
  27. virtual int SetHeight(int nHeight = defaultHeight);
  28. virtual const BOOL IsPullDown();
  29. virtual const BOOL IsPullUp();
  30. BOOL m_bPullUp;
  31. virtual const CString& GetName();
  32. virtual void SetName(LPCTSTR lpszObjectName);
  33. // Overidable functions
  34. virtual void OnDeactivateObject() = 0; // Called when object is about to be deactivated
  35. virtual void OnActivateObject() = 0; // Called after object was activated
  36. virtual void OnDraw(CDC* pDC, BOOL bEraseBkGnd = FALSE) = 0; // Called when object must redraw
  37. virtual void SetRectClient(CRect rect) = 0; // Set the client rect of window
  38. virtual void OnFocus() = 0; // Called when mouse is over the object
  39. // Constructors and Destructors
  40. CFloorObject(CXFloorWndCtrl* pWnd, LPCTSTR lpszObjectName);
  41. virtual ~CFloorObject();
  42. protected:
  43. LPARAM m_lParam;
  44. UINT m_nFormatDrawText;
  45. CBrush m_brBkGnd;
  46. int m_nHeight;
  47. CRect m_rect;
  48. virtual void Invalidate(BOOL bEraseBkGnd = FALSE);
  49. CString m_sName;
  50. CXFloorWndCtrl* m_pParentWnd;
  51. };
  52. #endif // !defined(AFX_FLOOROBJECT_H__FF4DABE4_4A17_11D2_868E_0040055C08D9__INCLUDED_)