]> git.proxmox.com Git - mirror_qemu.git/blob - include/ui/sdl2.h
ui/sdl2: Support shared surface for more pixman formats
[mirror_qemu.git] / include / ui / sdl2.h
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
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);
19 void sdl2_poll_events(struct sdl2_console *scon);
20
21 void sdl2_reset_keys(struct sdl2_console *scon);
22 void sdl2_process_key(struct sdl2_console *scon,
23 SDL_KeyboardEvent *ev);
24
25 void sdl2_2d_update(DisplayChangeListener *dcl,
26 int x, int y, int w, int h);
27 void sdl2_2d_switch(DisplayChangeListener *dcl,
28 DisplaySurface *new_surface);
29 void sdl2_2d_refresh(DisplayChangeListener *dcl);
30 void sdl2_2d_redraw(struct sdl2_console *scon);
31 bool sdl2_2d_check_format(DisplayChangeListener *dcl,
32 pixman_format_code_t format);
33
34 #endif /* SDL2_H */