MOUSE.H 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109
  1. /*
  2. THE COMPUTER CODE CONTAINED HEREIN IS THE SOLE PROPERTY OF PARALLAX
  3. SOFTWARE CORPORATION ("PARALLAX"). PARALLAX, IN DISTRIBUTING THE CODE TO
  4. END-USERS, AND SUBJECT TO ALL OF THE TERMS AND CONDITIONS HEREIN, GRANTS A
  5. ROYALTY-FREE, PERPETUAL LICENSE TO SUCH END-USERS FOR USE BY SUCH END-USERS
  6. IN USING, DISPLAYING, AND CREATING DERIVATIVE WORKS THEREOF, SO LONG AS
  7. SUCH USE, DISPLAY OR CREATION IS FOR NON-COMMERCIAL, ROYALTY OR REVENUE
  8. FREE PURPOSES. IN NO EVENT SHALL THE END-USER USE THE COMPUTER CODE
  9. CONTAINED HEREIN FOR REVENUE-BEARING PURPOSES. THE END-USER UNDERSTANDS
  10. AND AGREES TO THE TERMS HEREIN AND ACCEPTS THE SAME BY USE OF THIS FILE.
  11. COPYRIGHT 1993-1998 PARALLAX SOFTWARE CORPORATION. ALL RIGHTS RESERVED.
  12. */
  13. /*
  14. * $Source: f:/miner/source/bios/rcs/mouse.h $
  15. * $Revision: 1.10 $
  16. * $Author: john $
  17. * $Date: 1995/02/02 10:22:29 $
  18. *
  19. * Header for mouse functions
  20. *
  21. * $Log: mouse.h $
  22. * Revision 1.10 1995/02/02 10:22:29 john
  23. * Added cyberman init parameter.
  24. *
  25. * Revision 1.9 1994/11/18 23:18:09 john
  26. * Changed some shorts to ints.
  27. *
  28. * Revision 1.8 1994/09/13 12:33:49 john
  29. * Added functions to get down count and state.
  30. *
  31. * Revision 1.7 1994/08/29 20:52:20 john
  32. * Added better cyberman support; also, joystick calibration
  33. * value return funcctiionn,
  34. *
  35. * Revision 1.6 1994/08/24 17:54:35 john
  36. * *** empty log message ***
  37. *
  38. * Revision 1.5 1994/08/24 17:51:43 john
  39. * Added transparent cyberman support
  40. *
  41. * Revision 1.4 1993/07/27 09:32:22 john
  42. * *** empty log message ***
  43. *
  44. * Revision 1.3 1993/07/26 10:46:44 john
  45. * added definition for mouse_set_pos
  46. *
  47. * Revision 1.2 1993/07/22 13:07:59 john
  48. * added header for mousesetlimts
  49. *
  50. * Revision 1.1 1993/07/10 13:10:40 matt
  51. * Initial revision
  52. *
  53. *
  54. */
  55. #ifndef MOUSE_H
  56. #define MOUSE_H
  57. #include "types.h"
  58. #include "fix.h"
  59. #define MB_LEFT 0
  60. #define MB_RIGHT 1
  61. #define MB_MIDDLE 2
  62. #define MB_Z_UP 3
  63. #define MB_Z_DOWN 4
  64. #define MB_PITCH_BACKWARD 5
  65. #define MB_PITCH_FORWARD 6
  66. #define MB_BANK_LEFT 7
  67. #define MB_BANK_RIGHT 8
  68. #define MB_HEAD_LEFT 9
  69. #define MB_HEAD_RIGHT 10
  70. #define MOUSE_LBTN 1
  71. #define MOUSE_RBTN 2
  72. #define MOUSE_MBTN 4
  73. //========================================================================
  74. // Check for mouse driver, reset driver if installed. returns number of
  75. // buttons if driver is present.
  76. extern int mouse_init(int enable_cyberman);
  77. extern int mouse_set_limits( int x1, int y1, int x2, int y2 );
  78. extern void mouse_flush(); // clears all mice events...
  79. //========================================================================
  80. // Shutdowns mouse system.
  81. extern void mouse_close();
  82. //========================================================================
  83. extern void mouse_get_pos( int *x, int *y);
  84. extern void mouse_get_delta( int *dx, int *dy );
  85. extern int mouse_get_btns();
  86. extern void mouse_set_pos( int x, int y);
  87. extern void mouse_get_cyberman_pos( int *x, int *y );
  88. // Returns how long this button has been down since last call.
  89. extern fix mouse_button_down_time(int button);
  90. // Returns how many times this button has went down since last call.
  91. extern int mouse_button_down_count(int button);
  92. // Returns 1 if this button is currently down
  93. extern int mouse_button_state(int button);
  94. #endif
  95.