SDL  2.0
SDL_sysvideo.h
Go to the documentation of this file.
1 /*
2  Simple DirectMedia Layer
3  Copyright (C) 1997-2016 Sam Lantinga <slouken@libsdl.org>
4 
5  This software is provided 'as-is', without any express or implied
6  warranty. In no event will the authors be held liable for any damages
7  arising from the use of this software.
8 
9  Permission is granted to anyone to use this software for any purpose,
10  including commercial applications, and to alter it and redistribute it
11  freely, subject to the following restrictions:
12 
13  1. The origin of this software must not be misrepresented; you must not
14  claim that you wrote the original software. If you use this software
15  in a product, an acknowledgment in the product documentation would be
16  appreciated but is not required.
17  2. Altered source versions must be plainly marked as such, and must not be
18  misrepresented as being the original software.
19  3. This notice may not be removed or altered from any source distribution.
20 */
21 #include "../SDL_internal.h"
22 
23 #ifndef _SDL_sysvideo_h
24 #define _SDL_sysvideo_h
25 
26 #include "SDL_messagebox.h"
27 #include "SDL_shape.h"
28 #include "SDL_thread.h"
29 
30 /* The SDL video driver */
31 
32 typedef struct SDL_WindowShaper SDL_WindowShaper;
33 typedef struct SDL_ShapeDriver SDL_ShapeDriver;
34 typedef struct SDL_VideoDisplay SDL_VideoDisplay;
35 typedef struct SDL_VideoDevice SDL_VideoDevice;
36 
37 /* Define the SDL window-shaper structure */
39 {
40  /* The window associated with the shaper */
42 
43  /* The user's specified coordinates for the window, for once we give it a shape. */
45 
46  /* The parameters for shape calculation. */
48 
49  /* Has this window been assigned a shape? */
51 
52  void *driverdata;
53 };
54 
55 /* Define the SDL shape driver structure */
57 {
58  SDL_WindowShaper *(*CreateShaper)(SDL_Window * window);
59  int (*SetWindowShape)(SDL_WindowShaper *shaper,SDL_Surface *shape,SDL_WindowShapeMode *shape_mode);
61 };
62 
63 typedef struct SDL_WindowUserData
64 {
65  char *name;
66  void *data;
69 
70 /* Define the SDL window structure, corresponding to toplevel windows */
71 struct SDL_Window
72 {
73  const void *magic;
75  char *title;
77  int x, y;
78  int w, h;
79  int min_w, min_h;
80  int max_w, max_h;
83 
84  /* Stored position and size for windowed mode */
86 
88 
89  float brightness;
91  Uint16 *saved_gamma; /* (just offset into gamma) */
92 
95 
98 
100 
103 
105 
106  void *driverdata;
107 
110 };
111 #define FULLSCREEN_VISIBLE(W) \
112  (((W)->flags & SDL_WINDOW_FULLSCREEN) && \
113  ((W)->flags & SDL_WINDOW_SHOWN) && \
114  !((W)->flags & SDL_WINDOW_MINIMIZED))
115 
116 /*
117  * Define the SDL display structure This corresponds to physical monitors
118  * attached to the system.
119  */
121 {
122  char *name;
128 
130 
132 
133  void *driverdata;
134 };
135 
136 /* Forward declaration */
137 struct SDL_SysWMinfo;
138 
139 /* Define the SDL video driver structure */
140 #define _THIS SDL_VideoDevice *_this
141 
143 {
144  /* * * */
145  /* The name of this video driver */
146  const char *name;
147 
148  /* * * */
149  /* Initialization/Query functions */
150 
151  /*
152  * Initialize the native video subsystem, filling in the list of
153  * displays for this driver, returning 0 or -1 if there's an error.
154  */
155  int (*VideoInit) (_THIS);
156 
157  /*
158  * Reverse the effects VideoInit() -- called if VideoInit() fails or
159  * if the application is shutting down the video subsystem.
160  */
162 
163  /* * * */
164  /*
165  * Display functions
166  */
167 
168  /*
169  * Get the bounds of a display
170  */
172 
173  /*
174  * Get the dots/pixels-per-inch of a display
175  */
176  int (*GetDisplayDPI) (_THIS, SDL_VideoDisplay * display, float * ddpi, float * hdpi, float * vdpi);
177 
178  /*
179  * Get a list of the available display modes for a display.
180  */
182 
183  /*
184  * Setting the display mode is independent of creating windows, so
185  * when the display mode is changed, all existing windows should have
186  * their data updated accordingly, including the display surfaces
187  * associated with them.
188  */
190 
191  /* * * */
192  /*
193  * Window functions
194  */
196  int (*CreateWindowFrom) (_THIS, SDL_Window * window, const void *data);
211  int (*SetWindowGammaRamp) (_THIS, SDL_Window * window, const Uint16 * ramp);
215  int (*CreateWindowFramebuffer) (_THIS, SDL_Window * window, Uint32 * format, void ** pixels, int *pitch);
216  int (*UpdateWindowFramebuffer) (_THIS, SDL_Window * window, const SDL_Rect * rects, int numrects);
219 
220  /* * * */
221  /*
222  * Shaped-window functions
223  */
225 
226  /* Get some platform dependent window information */
228  struct SDL_SysWMinfo * info);
229 
230  /* * * */
231  /*
232  * OpenGL support
233  */
234  int (*GL_LoadLibrary) (_THIS, const char *path);
235  void *(*GL_GetProcAddress) (_THIS, const char *proc);
240  int (*GL_SetSwapInterval) (_THIS, int interval);
244 
245  /* * * */
246  /*
247  * Event manager functions
248  */
250 
251  /* Suspend the screensaver */
253 
254  /* Text input */
258 
259  /* Screen keyboard */
264 
265  /* Clipboard */
266  int (*SetClipboardText) (_THIS, const char *text);
267  char * (*GetClipboardText) (_THIS);
269 
270  /* MessageBox */
271  int (*ShowMessageBox) (_THIS, const SDL_MessageBoxData *messageboxdata, int *buttonid);
272 
273  /* Hit-testing */
275 
276  /* * * */
277  /* Data common to all drivers */
286 
287  /* * * */
288  /* Data used by the GL drivers */
289  struct
290  {
291  int red_size;
303  int stereo;
309  int flags;
316  char driver_path[256];
317  void *dll_handle;
318  } gl_config;
319 
320  /* * * */
321  /* Cache current GL context; don't call the OS when it hasn't changed. */
322  /* We have the global pointers here so Cocoa continues to work the way
323  it always has, and the thread-local storage for the general case.
324  */
329 
330  /* * * */
331  /* Data private to this driver */
332  void *driverdata;
334 
335 #if SDL_VIDEO_OPENGL_EGL
336  struct SDL_EGL_VideoData *egl_data;
337 #endif
338 
339 #if SDL_VIDEO_OPENGL_ES || SDL_VIDEO_OPENGL_ES2
340  struct SDL_PrivateGLESData *gles_data;
341 #endif
342 
343  /* * * */
344  /* The function used to dispose of this structure */
346 };
347 
348 typedef struct VideoBootStrap
349 {
350  const char *name;
351  const char *desc;
352  int (*available) (void);
353  SDL_VideoDevice *(*create) (int devindex);
355 
356 #if SDL_VIDEO_DRIVER_COCOA
357 extern VideoBootStrap COCOA_bootstrap;
358 #endif
359 #if SDL_VIDEO_DRIVER_X11
360 extern VideoBootStrap X11_bootstrap;
361 #endif
362 #if SDL_VIDEO_DRIVER_MIR
363 extern VideoBootStrap MIR_bootstrap;
364 #endif
365 #if SDL_VIDEO_DRIVER_DIRECTFB
366 extern VideoBootStrap DirectFB_bootstrap;
367 #endif
368 #if SDL_VIDEO_DRIVER_WINDOWS
369 extern VideoBootStrap WINDOWS_bootstrap;
370 #endif
371 #if SDL_VIDEO_DRIVER_WINRT
372 extern VideoBootStrap WINRT_bootstrap;
373 #endif
374 #if SDL_VIDEO_DRIVER_HAIKU
375 extern VideoBootStrap HAIKU_bootstrap;
376 #endif
377 #if SDL_VIDEO_DRIVER_PANDORA
378 extern VideoBootStrap PND_bootstrap;
379 #endif
380 #if SDL_VIDEO_DRIVER_UIKIT
381 extern VideoBootStrap UIKIT_bootstrap;
382 #endif
383 #if SDL_VIDEO_DRIVER_ANDROID
384 extern VideoBootStrap Android_bootstrap;
385 #endif
386 #if SDL_VIDEO_DRIVER_PSP
387 extern VideoBootStrap PSP_bootstrap;
388 #endif
389 #if SDL_VIDEO_DRIVER_RPI
390 extern VideoBootStrap RPI_bootstrap;
391 #endif
392 #if SDL_VIDEO_DRIVER_DUMMY
393 extern VideoBootStrap DUMMY_bootstrap;
394 #endif
395 #if SDL_VIDEO_DRIVER_WAYLAND
396 extern VideoBootStrap Wayland_bootstrap;
397 #endif
398 #if SDL_VIDEO_DRIVER_NACL
399 extern VideoBootStrap NACL_bootstrap;
400 #endif
401 #if SDL_VIDEO_DRIVER_VIVANTE
402 extern VideoBootStrap VIVANTE_bootstrap;
403 #endif
404 #if SDL_VIDEO_DRIVER_EMSCRIPTEN
405 extern VideoBootStrap Emscripten_bootstrap;
406 #endif
407 
408 extern SDL_VideoDevice *SDL_GetVideoDevice(void);
409 extern int SDL_AddBasicVideoDisplay(const SDL_DisplayMode * desktop_mode);
410 extern int SDL_AddVideoDisplay(const SDL_VideoDisplay * display);
413 extern void *SDL_GetDisplayDriverData( int displayIndex );
414 
416 
417 extern void SDL_OnWindowShown(SDL_Window * window);
418 extern void SDL_OnWindowHidden(SDL_Window * window);
419 extern void SDL_OnWindowResized(SDL_Window * window);
421 extern void SDL_OnWindowRestored(SDL_Window * window);
422 extern void SDL_OnWindowEnter(SDL_Window * window);
423 extern void SDL_OnWindowLeave(SDL_Window * window);
426 extern void SDL_UpdateWindowGrab(SDL_Window * window);
427 extern SDL_Window * SDL_GetFocusWindow(void);
428 
429 extern SDL_bool SDL_ShouldAllowTopmost(void);
430 
431 extern float SDL_ComputeDiagonalDPI(int hpix, int vpix, float hinches, float vinches);
432 
433 #endif /* _SDL_sysvideo_h */
434 
435 /* vi: set ts=4 sw=4 expandtab: */
SDL_Window * next
Definition: SDL_sysvideo.h:109
const char * name
Definition: SDL_sysvideo.h:146
void SDL_UpdateWindowGrab(SDL_Window *window)
Definition: SDL_video.c:2227
int(* GetDisplayDPI)(_THIS, SDL_VideoDisplay *display, float *ddpi, float *hdpi, float *vdpi)
Definition: SDL_sysvideo.h:176
GLint GLint GLsizei GLsizei GLsizei GLint GLenum format
Definition: SDL_opengl.h:1565
void(* RestoreWindow)(_THIS, SDL_Window *window)
Definition: SDL_sysvideo.h:208
SDL_DisplayMode fullscreen_mode
Definition: SDL_sysvideo.h:87
uint32_t Uint32
An unsigned 32-bit integer type.
Definition: SDL_stdinc.h:155
int(* SetWindowHitTest)(SDL_Window *window, SDL_bool enabled)
Definition: SDL_sysvideo.h:274
void * hit_test_data
Definition: SDL_sysvideo.h:102
#define _THIS
Definition: SDL_sysvideo.h:140
const char * desc
Definition: SDL_sysvideo.h:351
SDL_bool(* IsScreenKeyboardShown)(_THIS, SDL_Window *window)
Definition: SDL_sysvideo.h:263
const void * magic
Definition: SDL_sysvideo.h:73
int(* CreateWindowFrom)(_THIS, SDL_Window *window, const void *data)
Definition: SDL_sysvideo.h:196
SDL_Rect rect
Definition: testrelative.c:27
SDL_Window * window
SDL_TLSID current_glwin_tls
Definition: SDL_sysvideo.h:327
void(* free)(_THIS)
Definition: SDL_sysvideo.h:345
SDL_bool hasshape
Definition: SDL_sysvideo.h:50
int SDL_AddBasicVideoDisplay(const SDL_DisplayMode *desktop_mode)
Definition: SDL_video.c:579
A collection of pixels used in software blitting.
Definition: SDL_surface.h:69
void SDL_OnWindowResized(SDL_Window *window)
Definition: SDL_video.c:2301
int(* GL_SetSwapInterval)(_THIS, int interval)
Definition: SDL_sysvideo.h:240
GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * data
Definition: SDL_opengl.h:1967
void(* ShowWindow)(_THIS, SDL_Window *window)
Definition: SDL_sysvideo.h:203
The structure that defines a display mode.
Definition: SDL_video.h:53
SDL_HitTestResult(* SDL_HitTest)(SDL_Window *win, const SDL_Point *area, void *data)
Callback used for hit-testing.
Definition: SDL_video.h:871
void(* StartTextInput)(_THIS)
Definition: SDL_sysvideo.h:255
void(* SetWindowSize)(_THIS, SDL_Window *window)
Definition: SDL_sysvideo.h:200
SDL_bool is_destroying
Definition: SDL_sysvideo.h:97
GLint GLint GLsizei GLsizei GLsizei GLint GLenum GLenum const GLvoid * pixels
Definition: SDL_opengl.h:1565
void(* GL_SwapWindow)(_THIS, SDL_Window *window)
Definition: SDL_sysvideo.h:242
Uint16 * saved_gamma
Definition: SDL_sysvideo.h:91
void SDL_OnWindowEnter(SDL_Window *window)
Definition: SDL_video.c:2330
SDL_Rect windowed
Definition: SDL_sysvideo.h:85
int SDL_AddVideoDisplay(const SDL_VideoDisplay *display)
Definition: SDL_video.c:593
int(* GL_LoadLibrary)(_THIS, const char *path)
Definition: SDL_sysvideo.h:234
unsigned int SDL_TLSID
Definition: SDL_thread.h:52
struct SDL_GLDriverData * gl_data
Definition: SDL_sysvideo.h:333
int(* SetDisplayMode)(_THIS, SDL_VideoDisplay *display, SDL_DisplayMode *mode)
Definition: SDL_sysvideo.h:189
void * SDL_GetDisplayDriverData(int displayIndex)
Definition: SDL_video.c:647
void(* SetWindowBordered)(_THIS, SDL_Window *window, SDL_bool bordered)
Definition: SDL_sysvideo.h:209
void(* GL_GetDrawableSize)(_THIS, SDL_Window *window, int *w, int *h)
Definition: SDL_sysvideo.h:239
void SDL_OnWindowHidden(SDL_Window *window)
Definition: SDL_video.c:2295
SDL_bool
Definition: SDL_stdinc.h:126
void(* HideWindow)(_THIS, SDL_Window *window)
Definition: SDL_sysvideo.h:204
void(* RaiseWindow)(_THIS, SDL_Window *window)
Definition: SDL_sysvideo.h:205
struct SDL_WindowUserData * next
Definition: SDL_sysvideo.h:67
int(* SetWindowShape)(SDL_WindowShaper *shaper, SDL_Surface *shape, SDL_WindowShapeMode *shape_mode)
Definition: SDL_sysvideo.h:59
void SDL_OnWindowMinimized(SDL_Window *window)
Definition: SDL_video.c:2308
void(* SetTextInputRect)(_THIS, SDL_Rect *rect)
Definition: SDL_sysvideo.h:257
SDL_VideoDevice * device
Definition: SDL_sysvideo.h:131
SDL_WindowShapeMode mode
Definition: SDL_sysvideo.h:47
void * SDL_GLContext
An opaque handle to an OpenGL context.
Definition: SDL_video.h:164
SDL_bool(* GetWindowWMInfo)(_THIS, SDL_Window *window, struct SDL_SysWMinfo *info)
Definition: SDL_sysvideo.h:227
SDL_GLContext current_glctx
Definition: SDL_sysvideo.h:326
SDL_GLContext(* GL_CreateContext)(_THIS, SDL_Window *window)
Definition: SDL_sysvideo.h:237
int SDL_RecreateWindow(SDL_Window *window, Uint32 flags)
Definition: SDL_video.c:1469
SDL_WindowShaper * shaper
Definition: SDL_sysvideo.h:99
int(* GL_MakeCurrent)(_THIS, SDL_Window *window, SDL_GLContext context)
Definition: SDL_sysvideo.h:238
uint8_t Uint8
An unsigned 8-bit integer type.
Definition: SDL_stdinc.h:139
SDL_Window * window
Definition: SDL_sysvideo.h:41
SDL_Window * SDL_GetFocusWindow(void)
Definition: SDL_video.c:2403
char driver_path[256]
Definition: SDL_sysvideo.h:316
SDL_DisplayMode * display_modes
Definition: SDL_sysvideo.h:125
void(* SetWindowMinimumSize)(_THIS, SDL_Window *window)
Definition: SDL_sysvideo.h:201
SDL_DisplayMode current_mode
Definition: SDL_sysvideo.h:127
GLenum mode
SDL_VideoDisplay * displays
Definition: SDL_sysvideo.h:280
int(* GetDisplayBounds)(_THIS, SDL_VideoDisplay *display, SDL_Rect *rect)
Definition: SDL_sysvideo.h:171
void(* DestroyWindow)(_THIS, SDL_Window *window)
Definition: SDL_sysvideo.h:214
void SDL_OnWindowLeave(SDL_Window *window)
Definition: SDL_video.c:2338
void(* StopTextInput)(_THIS)
Definition: SDL_sysvideo.h:256
void(* SetWindowIcon)(_THIS, SDL_Window *window, SDL_Surface *icon)
Definition: SDL_sysvideo.h:198
char * title
Definition: SDL_sysvideo.h:75
SDL_Window * windows
Definition: SDL_sysvideo.h:281
int framebuffer_srgb_capable
Definition: SDL_sysvideo.h:313
MessageBox structure containing title, text, window, etc.
SDL_bool(* HasScreenKeyboardSupport)(_THIS)
Definition: SDL_sysvideo.h:260
float brightness
Definition: SDL_sysvideo.h:89
GLenum GLenum GLsizei const GLuint GLboolean enabled
SDL_Window * fullscreen_window
Definition: SDL_sysvideo.h:129
void(* DestroyWindowFramebuffer)(_THIS, SDL_Window *window)
Definition: SDL_sysvideo.h:217
void(* GL_UnloadLibrary)(_THIS)
Definition: SDL_sysvideo.h:236
int share_with_current_context
Definition: SDL_sysvideo.h:311
void(* GetDisplayModes)(_THIS, SDL_VideoDisplay *display)
Definition: SDL_sysvideo.h:181
int(* ShowMessageBox)(_THIS, const SDL_MessageBoxData *messageboxdata, int *buttonid)
Definition: SDL_sysvideo.h:271
SDL_bool SDL_ShouldAllowTopmost(void)
Definition: SDL_video.c:3619
void(* SetWindowMaximumSize)(_THIS, SDL_Window *window)
Definition: SDL_sysvideo.h:202
SDL_DisplayMode desktop_mode
Definition: SDL_sysvideo.h:126
SDL_HitTest hit_test
Definition: SDL_sysvideo.h:101
void(* VideoQuit)(_THIS)
Definition: SDL_sysvideo.h:161
Uint32 last_fullscreen_flags
Definition: SDL_sysvideo.h:82
static char text[MAX_TEXT_LENGTH]
Definition: testime.c:34
SDL_PRINTF_FORMAT_STRING const char int SDL_PRINTF_FORMAT_STRING const char int SDL_PRINTF_FORMAT_STRING const char int SDL_PRINTF_FORMAT_STRING const char const char SDL_SCANF_FORMAT_STRING const char return SDL_ThreadFunction const char void return Uint32 return Uint32 void
int(* ResizeWindowShape)(SDL_Window *window)
Definition: SDL_sysvideo.h:60
SDL_Surface * icon
Definition: SDL_sysvideo.h:76
SDL_VideoDisplay * SDL_GetDisplayForWindow(SDL_Window *window)
Definition: SDL_video.c:1039
void(* SetWindowPosition)(_THIS, SDL_Window *window)
Definition: SDL_sysvideo.h:199
SDL_Window * prev
Definition: SDL_sysvideo.h:108
void(* ShowScreenKeyboard)(_THIS, SDL_Window *window)
Definition: SDL_sysvideo.h:261
SDL_TLSID current_glctx_tls
Definition: SDL_sysvideo.h:328
int(* CreateWindow)(_THIS, SDL_Window *window)
Definition: SDL_sysvideo.h:195
The type used to identify a window.
Definition: SDL_sysvideo.h:71
int(* GetWindowGammaRamp)(_THIS, SDL_Window *window, Uint16 *ramp)
Definition: SDL_sysvideo.h:212
SDL_Rect rects[MAX_RECTS]
void(* MinimizeWindow)(_THIS, SDL_Window *window)
Definition: SDL_sysvideo.h:207
Uint32 id
Definition: SDL_sysvideo.h:74
void SDL_OnWindowFocusLost(SDL_Window *window)
Definition: SDL_video.c:2387
const char * name
Definition: SDL_sysvideo.h:350
struct SDL_VideoDevice::@28 gl_config
uint16_t Uint16
An unsigned 16-bit integer type.
Definition: SDL_stdinc.h:147
SDL_bool(* HasClipboardText)(_THIS)
Definition: SDL_sysvideo.h:268
SDL_bool SDL_AddDisplayMode(SDL_VideoDisplay *display, const SDL_DisplayMode *mode)
Definition: SDL_video.c:709
SDL_Window * grabbed_window
Definition: SDL_sysvideo.h:282
SDL_VideoDevice * SDL_GetVideoDevice(void)
Definition: SDL_video.c:573
SDL_ShapeDriver shape_driver
Definition: SDL_sysvideo.h:224
int(* VideoInit)(_THIS)
Definition: SDL_sysvideo.h:155
SDL_bool suspend_screensaver
Definition: SDL_sysvideo.h:278
union SDL_SysWMinfo::@18 info
GLbitfield flags
void(* SetWindowFullscreen)(_THIS, SDL_Window *window, SDL_VideoDisplay *display, SDL_bool fullscreen)
Definition: SDL_sysvideo.h:210
void SDL_OnWindowRestored(SDL_Window *window)
Definition: SDL_video.c:2314
void SDL_OnWindowShown(SDL_Window *window)
Definition: SDL_video.c:2289
A struct that tags the SDL_WindowShapeParams union with an enum describing the type of its contents...
Definition: SDL_shape.h:100
GLsizei const GLchar *const * path
int(* available)(void)
Definition: SDL_sysvideo.h:352
GLubyte GLubyte GLubyte GLubyte w
int(* UpdateWindowFramebuffer)(_THIS, SDL_Window *window, const SDL_Rect *rects, int numrects)
Definition: SDL_sysvideo.h:216
Uint16 * gamma
Definition: SDL_sysvideo.h:90
void * driverdata
Definition: SDL_sysvideo.h:106
void(* GL_DeleteContext)(_THIS, SDL_GLContext context)
Definition: SDL_sysvideo.h:243
void(* SetWindowTitle)(_THIS, SDL_Window *window)
Definition: SDL_sysvideo.h:197
int(* GL_GetSwapInterval)(_THIS)
Definition: SDL_sysvideo.h:241
void(* MaximizeWindow)(_THIS, SDL_Window *window)
Definition: SDL_sysvideo.h:206
int(* SetClipboardText)(_THIS, const char *text)
Definition: SDL_sysvideo.h:266
SDL_bool surface_valid
Definition: SDL_sysvideo.h:94
Uint32 flags
Definition: SDL_sysvideo.h:81
int(* SetWindowGammaRamp)(_THIS, SDL_Window *window, const Uint16 *ramp)
Definition: SDL_sysvideo.h:211
Uint32 next_object_id
Definition: SDL_sysvideo.h:284
SDL_Surface * surface
Definition: SDL_sysvideo.h:93
void(* OnWindowEnter)(_THIS, SDL_Window *window)
Definition: SDL_sysvideo.h:218
void(* SuspendScreenSaver)(_THIS)
Definition: SDL_sysvideo.h:252
SDL_Window * current_glwin
Definition: SDL_sysvideo.h:325
void(* SetWindowGrab)(_THIS, SDL_Window *window, SDL_bool grabbed)
Definition: SDL_sysvideo.h:213
int(* CreateWindowFramebuffer)(_THIS, SDL_Window *window, Uint32 *format, void **pixels, int *pitch)
Definition: SDL_sysvideo.h:215
float SDL_ComputeDiagonalDPI(int hpix, int vpix, float hinches, float vinches)
Definition: SDL_video.c:3649
GLfloat GLfloat GLfloat GLfloat h
SDL_WindowUserData * data
Definition: SDL_sysvideo.h:104
A rectangle, with the origin at the upper left.
Definition: SDL_rect.h:64
char * clipboard_text
Definition: SDL_sysvideo.h:285
SDL_bool is_hiding
Definition: SDL_sysvideo.h:96
void(* PumpEvents)(_THIS)
Definition: SDL_sysvideo.h:249
void(* HideScreenKeyboard)(_THIS, SDL_Window *window)
Definition: SDL_sysvideo.h:262
void SDL_OnWindowFocusGained(SDL_Window *window)
Definition: SDL_video.c:2343