Main Page | Class List | File List | Class Members

CMouseSimple.h

00001 
00044 /*-----------------------------------------------------------------------------------------------*/
00045 #ifndef _CMOUSESIMPLE_H_
00046 #define _CMOUSESIMPLE_H_
00047 
00048 
00049 /*-----------------------------------------------------------------------------------------------*/
00057 /*-----------------------------------------------------------------------------------------------*/
00058 class CMouseSimple
00059 {
00060 public:
00061         
00065         enum{
00066                 MOUSE_LEFT,
00067                 MOUSE_MIDDLE,
00068                 MOUSE_RIGHT,
00069                 MINIMUM_DRAG_TIME = 250
00070         };
00071         
00072         CMouseSimple();
00073         ~CMouseSimple();
00074         
00075         int GetNumButtons(void) const { return m_NumButtons; }  
00076         bool GetButton(int button);                                                             
00077         bool SetButton(int button, bool state);                                 
00078 
00079         inline int GetMouseXi(void) const { return m_X; }               
00080         inline int GetMouseYi(void) const { return m_Y; }               
00081         inline float GetMouseXf(void) const { return m_fX; }    
00082         inline float GetMouseYf(void) const { return m_fY; }    
00083         void SetMouseXY(int x, int y);                                                  
00084 
00085         int GetDragTime(int button);                                                    
00086         bool ButtonClick(int button);                                                   
00087         void UnClickButton(int button);                                                 
00088         void SetLimitRegion(int x1, int y1, int x2, int y2);    
00089         bool LimitMouseToRegion(void);                                                  
00090         void SetScreenSize(int w, int h);                                               
00091 
00092 private:
00093         float m_fX;                                     
00094         float m_fY;                                     
00095         int m_X;                                        
00096         int m_Y;                                        
00097         int m_NumButtons;                       
00098         bool *m_Buttons;                        
00099         time_t *m_DragTime;                     
00100         int m_iDisplayWidth;            
00101         int m_iDisplayHeight;           
00102         int m_iDisplayWidthHalf;        
00103         int m_iDisplayHeightHalf;       
00104         int m_Limit[4];                         
00105 };
00106 
00107 
00108 /*-----------------------------------------------------------------------------------------------*/
00113 /*-----------------------------------------------------------------------------------------------*/
00114 extern CMouseSimple *g_pMouseSimple;
00115 
00116 
00117 #endif
00118 //END

Generated on Tue Dec 14 23:44:39 2004 for CMouseSimple by  doxygen 1.3.9.1