00001 #ifndef __CWindowDragTab__ 00002 #define __CWindowDragTab__ 00003 00004 #include "CControl.hpp" 00005 using Exponent::GUI::Controls::CControl; 00006 00007 // =========================================================================== 00008 00009 namespace Exponent 00010 { 00011 namespace GUI 00012 { 00013 namespace Controls 00014 { 00037 class CWindowDragTab : public CControl 00038 { 00040 EXPONENT_CLASS_DECLARATION; 00043 // =========================================================================== 00044 00045 public: 00046 00054 CWindowDragTab(IControlRoot *root, const long uniqueId, const CRect &area, IActionListener *listener = NULL); 00055 00059 virtual ~CWindowDragTab(); 00060 00061 // =========================================================================== 00062 00067 virtual void handleLeftButtonDown(CMouseEvent &event); 00068 00073 virtual void handleLeftButtonUp(CMouseEvent &event); 00074 00079 virtual void handleMouseMovement(CMouseEvent &event); 00080 00085 virtual void drawControl(CGraphics &graphics); 00086 00087 // =========================================================================== 00088 00089 protected: 00090 00091 // =========================================================================== 00092 00093 bool m_mouseIsDown; 00094 CPoint m_dragOffset; 00095 }; 00096 } 00097 } 00098 } 00099 #endif // End of CWindowDragTab.hpp