cursor-capture.h 562 B

12345678910111213141516171819202122232425262728
  1. #pragma once
  2. #include <stdint.h>
  3. struct cached_cursor {
  4. gs_texture_t *texture;
  5. uint32_t cx;
  6. uint32_t cy;
  7. };
  8. struct cursor_data {
  9. gs_texture_t *texture;
  10. HCURSOR current_cursor;
  11. POINT cursor_pos;
  12. long x_hotspot;
  13. long y_hotspot;
  14. bool visible;
  15. uint32_t last_cx;
  16. uint32_t last_cy;
  17. DARRAY(struct cached_cursor) cached_textures;
  18. };
  19. extern void cursor_capture(struct cursor_data *data);
  20. extern void cursor_draw(struct cursor_data *data, long x_offset, long y_offset,
  21. long width, long height);
  22. extern void cursor_data_free(struct cursor_data *data);