home *** CD-ROM | disk | FTP | other *** search
/ Shareware Supreme Volume 6 #1 / swsii.zip / swsii / 215 / DDJ9302.ZIP / DFPP01.ZIP / CURSOR.H < prev    next >
C/C++ Source or Header  |  1992-11-23  |  919b  |  45 lines

  1. // ------------- cursor.h
  2.  
  3. #ifndef CURSOR_H
  4. #define CURSOR_H
  5.  
  6. // ------- video BIOS (0x10) functions
  7. const int SETCURSORTYPE = 1;
  8. const int SETCURSOR     = 2;
  9. const int READCURSOR    = 3;
  10. const int HIDECURSOR    = 0x20;
  11.  
  12. const int MAXSAVES = 50;  // depth of cursor save/restore stack
  13.  
  14. class Cursor {
  15.     // --- cursor save/restore stack
  16.     int cursorpos[MAXSAVES];
  17.     int cursorshape[MAXSAVES];
  18.     int cs;             // count of cursor saves in effect
  19.     union REGS regs;
  20.     void Cursor::GetCursor();
  21. public:
  22.     Cursor();
  23.     ~Cursor();
  24.     void SetPosition(int x, int y);
  25.     void GetPosition(int &x, int &y);
  26.     void SetType(unsigned t);
  27.     void normalcursor() { SetType(0x0607); }
  28.     void Hide();
  29.     void Show();
  30.     void Save();
  31.     void Restore();
  32.     void SwapStack();
  33. };
  34.  
  35. inline void swap(int& a, int& b)
  36. {
  37.     int x = a;
  38.     a = b;
  39.     b = x;
  40. }
  41.  
  42. #endif
  43.  
  44.  
  45.