Go to the documentation of this file.
21 #include "../SDL_internal.h"
23 #ifndef SDL_sysvideo_h_
24 #define SDL_sysvideo_h_
117 #define FULLSCREEN_VISIBLE(W) \
118 (((W)->flags & SDL_WINDOW_FULLSCREEN) && \
119 ((W)->flags & SDL_WINDOW_SHOWN) && \
120 !((W)->flags & SDL_WINDOW_MINIMIZED))
147 #define _THIS SDL_VideoDevice *_this
257 void *(*GL_GetProcAddress) (
_THIS,
const char *proc);
392 #if SDL_VIDEO_OPENGL_EGL
393 struct SDL_EGL_VideoData *egl_data;
396 #if SDL_VIDEO_OPENGL_ES || SDL_VIDEO_OPENGL_ES2
int(* CreateSDLWindow)(_THIS, SDL_Window *window)
void SDL_OnWindowMinimized(SDL_Window *window)
GLint GLint GLsizei GLsizei GLsizei GLint GLenum format
void(* SetWindowPosition)(_THIS, SDL_Window *window)
void(* Metal_DestroyView)(_THIS, SDL_MetalView view)
SDL_DisplayMode * display_modes
VideoBootStrap WINRT_bootstrap
void(* SuspendScreenSaver)(_THIS)
PFN_vkGetInstanceProcAddr vkGetInstanceProcAddr
int(* Vulkan_LoadLibrary)(_THIS, const char *path)
PFN_vkVoidFunction(VKAPI_PTR * PFN_vkGetInstanceProcAddr)(VkInstance instance, const char *pName)
A collection of pixels used in software blitting.
int SDL_RecreateWindow(SDL_Window *window, Uint32 flags)
SDL_TLSID current_glwin_tls
int(* SetWindowModalFor)(_THIS, SDL_Window *modal_window, SDL_Window *parent_window)
void(* OnWindowEnter)(_THIS, SDL_Window *window)
SDL_DisplayMode fullscreen_mode
VideoBootStrap X11_bootstrap
void(* SetTextInputRect)(_THIS, SDL_Rect *rect)
SDL_Window * grabbed_window
GLuint GLuint GLsizei count
void SDL_ToggleDragAndDropSupport(void)
struct SDL_VideoDevice::@256 vulkan_config
SDL_VideoDisplay * SDL_GetDisplayForWindow(SDL_Window *window)
void SDL_OnWindowHidden(SDL_Window *window)
SDL_TLSID current_glctx_tls
void(* SetWindowTitle)(_THIS, SDL_Window *window)
int(* UpdateWindowFramebuffer)(_THIS, SDL_Window *window, const SDL_Rect *rects, int numrects)
SDL_WindowUserData * data
struct SDL_GLDriverData * gl_data
GLdouble GLdouble GLdouble GLdouble top
VideoBootStrap Emscripten_bootstrap
void(* Vulkan_UnloadLibrary)(_THIS)
void(* Vulkan_GetDrawableSize)(_THIS, SDL_Window *window, int *w, int *h)
int(* SetClipboardText)(_THIS, const char *text)
VideoBootStrap COCOA_bootstrap
SDL_bool(* GetWindowWMInfo)(_THIS, SDL_Window *window, struct SDL_SysWMinfo *info)
int(* GetWindowBordersSize)(_THIS, SDL_Window *window, int *top, int *left, int *bottom, int *right)
void(* ResetTouch)(_THIS)
SDL_HitTestResult(* SDL_HitTest)(SDL_Window *win, const SDL_Point *area, void *data)
Callback used for hit-testing.
GLsizei const GLchar *const * path
SDL_DisplayMode desktop_mode
GLfloat GLfloat GLfloat GLfloat h
VideoBootStrap Android_bootstrap
void * SDL_GetDisplayDriverData(int displayIndex)
void(* HideWindow)(_THIS, SDL_Window *window)
GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * data
The type used to identify a window.
void(* SetWindowIcon)(_THIS, SDL_Window *window, SDL_Surface *icon)
The structure that defines a display mode.
void(* SetWindowGrab)(_THIS, SDL_Window *window, SDL_bool grabbed)
SDL_bool SDL_AddDisplayMode(SDL_VideoDisplay *display, const SDL_DisplayMode *mode)
SDL_bool(* Vulkan_CreateSurface)(_THIS, SDL_Window *window, VkInstance instance, VkSurfaceKHR *surface)
void(* ShowScreenKeyboard)(_THIS, SDL_Window *window)
A struct that tags the SDL_WindowShapeParams union with an enum describing the type of its contents.
VideoBootStrap RPI_bootstrap
SDL_Window * SDL_GetFocusWindow(void)
int(* GetDisplayUsableBounds)(_THIS, SDL_VideoDisplay *display, SDL_Rect *rect)
VideoBootStrap QNX_bootstrap
struct SDL_VideoDevice::@255 gl_config
int(* SetWindowShape)(SDL_WindowShaper *shaper, SDL_Surface *shape, SDL_WindowShapeMode *shape_mode)
VideoBootStrap DUMMY_bootstrap
static screen_context_t context
int(* SetWindowGammaRamp)(_THIS, SDL_Window *window, const Uint16 *ramp)
void SDL_OnWindowRestored(SDL_Window *window)
EGLSurface EGLNativeWindowType * window
void(* SetWindowFullscreen)(_THIS, SDL_Window *window, SDL_VideoDisplay *display, SDL_bool fullscreen)
SDL_MetalView(* Metal_CreateView)(_THIS, SDL_Window *window)
VideoBootStrap KMSDRM_bootstrap
SDL_bool(* HasScreenKeyboardSupport)(_THIS)
VkResult(VKAPI_PTR * PFN_vkEnumerateInstanceExtensionProperties)(const char *pLayerName, uint32_t *pPropertyCount, VkExtensionProperties *pProperties)
void SDL_GL_DeduceMaxSupportedESProfile(int *major, int *minor)
int(* ShowMessageBox)(_THIS, const SDL_MessageBoxData *messageboxdata, int *buttonid)
int(* ResizeWindowShape)(SDL_Window *window)
MessageBox structure containing title, text, window, etc.
void(* GL_GetDrawableSize)(_THIS, SDL_Window *window, int *w, int *h)
SDL_VideoDisplay * displays
void(* GetDisplayModes)(_THIS, SDL_VideoDisplay *display)
VideoBootStrap WINDOWS_bootstrap
int SDL_GetIndexOfDisplay(SDL_VideoDisplay *display)
int share_with_current_context
SDL_VideoDisplay * SDL_GetDisplay(int displayIndex)
void(* StartTextInput)(_THIS)
void(* RaiseWindow)(_THIS, SDL_Window *window)
VideoBootStrap OFFSCREEN_bootstrap
static char text[MAX_TEXT_LENGTH]
void(* StopTextInput)(_THIS)
void SDL_UpdateWindowGrab(SDL_Window *window)
void(* SetWindowMinimumSize)(_THIS, SDL_Window *window)
void(* MinimizeWindow)(_THIS, SDL_Window *window)
int SDL_AddVideoDisplay(const SDL_VideoDisplay *display)
VideoBootStrap PSP_bootstrap
int(* SetWindowHitTest)(SDL_Window *window, SDL_bool enabled)
SDL_ShapeDriver shape_driver
void(* SetWindowMaximumSize)(_THIS, SDL_Window *window)
VideoBootStrap Wayland_bootstrap
VideoBootStrap VIVANTE_bootstrap
GLint GLint GLsizei GLsizei GLsizei GLint GLenum GLenum const GLvoid * pixels
VideoBootStrap NACL_bootstrap
VideoBootStrap DirectFB_bootstrap
SDL_bool SDL_ShouldAllowTopmost(void)
PFN_vkEnumerateInstanceExtensionProperties vkEnumerateInstanceExtensionProperties
SDL_bool(* IsScreenKeyboardShown)(_THIS, SDL_Window *window)
void(* DestroyWindow)(_THIS, SDL_Window *window)
VideoBootStrap HAIKU_bootstrap
void(* SetWindowBordered)(_THIS, SDL_Window *window, SDL_bool bordered)
void SDL_OnWindowShown(SDL_Window *window)
SDL_bool SDL_IsVideoContextExternal(void)
int SDL_AddBasicVideoDisplay(const SDL_DisplayMode *desktop_mode)
int(* GL_SetSwapInterval)(_THIS, int interval)
void(* SetWindowResizable)(_THIS, SDL_Window *window, SDL_bool resizable)
void(* AcceptDragAndDrop)(SDL_Window *window, SDL_bool accept)
void * SDL_GLContext
An opaque handle to an OpenGL context.
void(* DestroyWindowFramebuffer)(_THIS, SDL_Window *window)
int(* CreateSDLWindowFrom)(_THIS, SDL_Window *window, const void *data)
void SDL_OnWindowFocusGained(SDL_Window *window)
int(* SetWindowInputFocus)(_THIS, SDL_Window *window)
int(* GL_MakeCurrent)(_THIS, SDL_Window *window, SDL_GLContext context)
int(* GL_LoadLibrary)(_THIS, const char *path)
Uint32 last_fullscreen_flags
A rectangle, with the origin at the upper left (integer).
int(* SetDisplayMode)(_THIS, SDL_VideoDisplay *display, SDL_DisplayMode *mode)
void(* GL_UnloadLibrary)(_THIS)
SDL_GLContext(* GL_CreateContext)(_THIS, SDL_Window *window)
int(* GetDisplayBounds)(_THIS, SDL_VideoDisplay *display, SDL_Rect *rect)
SDL_WindowShaper * shaper
int(* GetDisplayDPI)(_THIS, SDL_VideoDisplay *display, float *ddpi, float *hdpi, float *vdpi)
struct SDL_WindowUserData * next
SDL_bool SDL_HasWindows(void)
int framebuffer_srgb_capable
int(* GL_GetSwapInterval)(_THIS)
VideoBootStrap UIKIT_bootstrap
SDL_Window * current_glwin
union SDL_SysWMinfo::@10 info
GLenum GLenum GLsizei const GLuint GLboolean enabled
SDL_bool(* Vulkan_GetInstanceExtensions)(_THIS, SDL_Window *window, unsigned *count, const char **names)
void SDL_OnWindowFocusLost(SDL_Window *window)
void SDL_OnWindowLeave(SDL_Window *window)
int(* GL_SwapWindow)(_THIS, SDL_Window *window)
void(* MaximizeWindow)(_THIS, SDL_Window *window)
void(* HideScreenKeyboard)(_THIS, SDL_Window *window)
float SDL_ComputeDiagonalDPI(int hpix, int vpix, float hinches, float vinches)
void(* SetWindowSize)(_THIS, SDL_Window *window)
SDL_bool(* HasClipboardText)(_THIS)
void(* GL_DefaultProfileConfig)(_THIS, int *mask, int *major, int *minor)
int(* SetWindowOpacity)(_THIS, SDL_Window *window, float opacity)
SDL_VideoDevice * SDL_GetVideoDevice(void)
int(* GetWindowGammaRamp)(_THIS, SDL_Window *window, Uint16 *ramp)
void(* ShowWindow)(_THIS, SDL_Window *window)
int(* CreateWindowFramebuffer)(_THIS, SDL_Window *window, Uint32 *format, void **pixels, int *pitch)
SDL_DisplayMode current_mode
VideoBootStrap PND_bootstrap
const SDL_PRINTF_FORMAT_STRING char int const SDL_PRINTF_FORMAT_STRING char int const SDL_PRINTF_FORMAT_STRING char int const SDL_PRINTF_FORMAT_STRING char const char const SDL_SCANF_FORMAT_STRING char return SDL_ThreadFunction const char void return Uint32 return Uint32 void
void(* PumpEvents)(_THIS)
SDL_GLContext current_glctx
void(* RestoreWindow)(_THIS, SDL_Window *window)
EGLSurface EGLint * rects
void(* GL_DeleteContext)(_THIS, SDL_GLContext context)
SDL_DisplayOrientation orientation
SDL_bool suspend_screensaver
SDL_Window * fullscreen_window
void SDL_OnWindowResized(SDL_Window *window)
void SDL_OnWindowEnter(SDL_Window *window)
GLubyte GLubyte GLubyte GLubyte w