MOUSE.H
上传用户:wtrl82617
上传日期:2007-01-07
资源大小:187k
文件大小:2k
源码类别:

界面编程

开发平台:

DOS

  1. #ifndef __MOUSE_H
  2. #define __MOUSE_H
  3. #include "yyxsys.h"
  4. #define  M_RESET  0
  5. #define    M_SHOW_CURS 1
  6. #define    M_HIDE_CURS 2
  7. #define    M_GET_STATUS 3
  8. #define  M_SET_CURS 4
  9. #define  M_GET_PRESS 5
  10. #define M_GET_REL 6
  11. #define M_SET_X_BOUNDS 7
  12. #define M_SET_Y_BOUNDS 8
  13. #define M_SET_G_CURS 9
  14. #define  M_SET_T_CURS 10
  15. #define  M_GET_MOVE_COUNTER 11
  16. #define  M_SET_EVENT_HNDL 12
  17. #define  LEFT_BUTTON 0
  18. #define  RIGHT_BUTTON 1
  19. #define MOUSE_UP 0
  20. #define MOUSE_DOWN 1
  21. typedef class mouse_class Tmouse;
  22. class mouse_class{
  23. public:
  24. int left_button_status;
  25. int right_button_status;
  26. private:
  27. int m1,m2,m3,m4;
  28. BOOL prev_cursor_state;
  29. public:
  30. mouse_class();
  31. ~mouse_class();
  32. void mouse(int *m1,int *m2,int *m3,int *m4);
  33. BOOL reset();
  34. void on(int restoreflag); //0 ;regardless of state; //1 conditional
  35. void off(int tempflag);   //0 ;regardless of state; //1 conditional
  36. void get_posn();
  37. void get_posn_xy(int &x,int &y);
  38. void set_posn(int x=0,int y=0);
  39. int  get_press_count(int mouse_button);
  40. int  get_release_count(int mouse_button);
  41. protected:
  42. static int  mouse_event_handler(...);
  43. };
  44. #ifdef __YYXMAIN
  45. Tmouse *sysmouse=NULL;
  46. int  mouse_x;
  47. int  mouse_y;
  48. int  old_mouse_x;
  49. int  old_mouse_y;
  50. int  win_mouse_x;
  51. int     win_mouse_y;
  52. #else
  53. extern Tmouse *sysmouse;
  54. extern int  mouse_x;
  55. extern int  mouse_y;
  56. extern int  old_mouse_x;
  57. extern int  old_mouse_y;
  58. extern int  win_mouse_x; //used for group_window
  59. extern int  win_mouse_y;
  60. #endif
  61. #endif