Gerd Hoffmann | 5d0fe65 | 2014-11-11 10:21:24 +0100 | [diff] [blame] | 1 | #ifndef SDL2_H |
| 2 | #define SDL2_H |
| 3 | |
| 4 | struct sdl2_console { |
| 5 | DisplayChangeListener dcl; |
| 6 | DisplaySurface *surface; |
| 7 | SDL_Texture *texture; |
| 8 | SDL_Window *real_window; |
| 9 | SDL_Renderer *real_renderer; |
| 10 | int idx; |
| 11 | int last_vm_running; /* per console for caption reasons */ |
| 12 | int x, y; |
| 13 | int hidden; |
| 14 | }; |
| 15 | |
Gerd Hoffmann | 2c3056f | 2014-11-11 13:22:49 +0100 | [diff] [blame] | 16 | void sdl2_window_create(struct sdl2_console *scon); |
| 17 | void sdl2_window_destroy(struct sdl2_console *scon); |
| 18 | void sdl2_window_resize(struct sdl2_console *scon); |
Gerd Hoffmann | 63ed490 | 2014-11-12 08:01:27 +0100 | [diff] [blame] | 19 | void sdl2_poll_events(struct sdl2_console *scon); |
Gerd Hoffmann | 2c3056f | 2014-11-11 13:22:49 +0100 | [diff] [blame] | 20 | |
Gerd Hoffmann | 8fc1a3f | 2014-11-11 10:58:19 +0100 | [diff] [blame] | 21 | void sdl2_reset_keys(struct sdl2_console *scon); |
| 22 | void sdl2_process_key(struct sdl2_console *scon, |
| 23 | SDL_KeyboardEvent *ev); |
| 24 | |
Gerd Hoffmann | f1ddebd | 2014-11-11 11:09:26 +0100 | [diff] [blame] | 25 | void sdl2_2d_update(DisplayChangeListener *dcl, |
| 26 | int x, int y, int w, int h); |
Gerd Hoffmann | 2c3056f | 2014-11-11 13:22:49 +0100 | [diff] [blame] | 27 | void sdl2_2d_switch(DisplayChangeListener *dcl, |
| 28 | DisplaySurface *new_surface); |
Gerd Hoffmann | 62959ff | 2014-11-12 08:03:34 +0100 | [diff] [blame] | 29 | void sdl2_2d_refresh(DisplayChangeListener *dcl); |
Gerd Hoffmann | 0d01b7c | 2014-11-11 13:31:08 +0100 | [diff] [blame] | 30 | void sdl2_2d_redraw(struct sdl2_console *scon); |
Gerd Hoffmann | 877417d | 2015-01-09 09:27:09 +0100 | [diff] [blame] | 31 | bool sdl2_2d_check_format(DisplayChangeListener *dcl, |
| 32 | pixman_format_code_t format); |
Gerd Hoffmann | f1ddebd | 2014-11-11 11:09:26 +0100 | [diff] [blame] | 33 | |
Gerd Hoffmann | 5d0fe65 | 2014-11-11 10:21:24 +0100 | [diff] [blame] | 34 | #endif /* SDL2_H */ |