Subversion Repositories Kolibri OS

Rev

Rev 1246 | Blame | Compare with Previous | Last modification | View Log | Download | RSS feed

  1.  
  2. typedef struct tag_object  kobj_t;
  3. typedef struct tag_display display_t;
  4.  
  5. struct tag_object
  6. {
  7.     uint32_t   magic;
  8.     void      *destroy;
  9.     kobj_t    *fd;
  10.     kobj_t    *bk;
  11.     uint32_t   pid;
  12. };
  13.  
  14. typedef struct
  15. {
  16.     kobj_t     header;
  17.  
  18.     uint32_t  *data;
  19.     uint32_t   hot_x;
  20.     uint32_t   hot_y;
  21.  
  22.     struct list_head      list;
  23.     struct radeon_object *robj;
  24. }cursor_t;
  25.  
  26. #define CURSOR_WIDTH 64
  27. #define CURSOR_HEIGHT 64
  28.  
  29. struct tag_display
  30. {
  31.     int  x;
  32.     int  y;
  33.     int  width;
  34.     int  height;
  35.     int  bpp;
  36.     int  vrefresh;
  37.     int  pitch;
  38.     int  lfb;
  39.  
  40.     int  supported_modes;
  41.     struct drm_device    *ddev;
  42.     struct drm_connector *connector;
  43.     struct drm_crtc      *crtc;
  44.  
  45.     struct list_head   cursors;
  46.  
  47.     cursor_t   *cursor;
  48.     int       (*init_cursor)(cursor_t*);
  49.     cursor_t* (__stdcall *select_cursor)(cursor_t*);
  50.     void      (*show_cursor)(int show);
  51.     void      (__stdcall *move_cursor)(cursor_t *cursor, int x, int y);
  52.     void      (__stdcall *restore_cursor)(int x, int y);
  53.     void      (*disable_mouse)(void);
  54. };
  55.  
  56. extern display_t *rdisplay;
  57.  
  58. int   init_cursor(cursor_t *cursor);
  59. void  __stdcall restore_cursor(int x, int y);
  60.