61#define SDL_PROP_GLOBAL_VIDEO_WAYLAND_WL_DISPLAY_POINTER "SDL.video.wayland.wl_display"
117#define SDL_WINDOW_FULLSCREEN 0x00000001U
118#define SDL_WINDOW_OPENGL 0x00000002U
119#define SDL_WINDOW_OCCLUDED 0x00000004U
120#define SDL_WINDOW_HIDDEN 0x00000008U
121#define SDL_WINDOW_BORDERLESS 0x00000010U
122#define SDL_WINDOW_RESIZABLE 0x00000020U
123#define SDL_WINDOW_MINIMIZED 0x00000040U
124#define SDL_WINDOW_MAXIMIZED 0x00000080U
125#define SDL_WINDOW_MOUSE_GRABBED 0x00000100U
126#define SDL_WINDOW_INPUT_FOCUS 0x00000200U
127#define SDL_WINDOW_MOUSE_FOCUS 0x00000400U
128#define SDL_WINDOW_EXTERNAL 0x00000800U
129#define SDL_WINDOW_HIGH_PIXEL_DENSITY 0x00002000U
130#define SDL_WINDOW_MOUSE_CAPTURE 0x00004000U
131#define SDL_WINDOW_ALWAYS_ON_TOP 0x00008000U
132#define SDL_WINDOW_UTILITY 0x00020000U
133#define SDL_WINDOW_TOOLTIP 0x00040000U
134#define SDL_WINDOW_POPUP_MENU 0x00080000U
135#define SDL_WINDOW_KEYBOARD_GRABBED 0x00100000U
136#define SDL_WINDOW_VULKAN 0x10000000U
137#define SDL_WINDOW_METAL 0x20000000U
138#define SDL_WINDOW_TRANSPARENT 0x40000000U
139#define SDL_WINDOW_NOT_FOCUSABLE 0x80000000U
144#define SDL_WINDOWPOS_UNDEFINED_MASK 0x1FFF0000u
145#define SDL_WINDOWPOS_UNDEFINED_DISPLAY(X) (SDL_WINDOWPOS_UNDEFINED_MASK|(X))
146#define SDL_WINDOWPOS_UNDEFINED SDL_WINDOWPOS_UNDEFINED_DISPLAY(0)
147#define SDL_WINDOWPOS_ISUNDEFINED(X) \
148 (((X)&0xFFFF0000) == SDL_WINDOWPOS_UNDEFINED_MASK)
153#define SDL_WINDOWPOS_CENTERED_MASK 0x2FFF0000u
154#define SDL_WINDOWPOS_CENTERED_DISPLAY(X) (SDL_WINDOWPOS_CENTERED_MASK|(X))
155#define SDL_WINDOWPOS_CENTERED SDL_WINDOWPOS_CENTERED_DISPLAY(0)
156#define SDL_WINDOWPOS_ISCENTERED(X) \
157 (((X)&0xFFFF0000) == SDL_WINDOWPOS_CENTERED_MASK)
355#define SDL_PROP_DISPLAY_HDR_ENABLED_BOOLEAN "SDL.display.HDR_enabled"
356#define SDL_PROP_DISPLAY_SDR_WHITE_POINT_FLOAT "SDL.display.SDR_white_point"
357#define SDL_PROP_DISPLAY_HDR_HEADROOM_FLOAT "SDL.display.HDR_headroom"
932#define SDL_PROP_WINDOW_CREATE_ALWAYS_ON_TOP_BOOLEAN "always_on_top"
933#define SDL_PROP_WINDOW_CREATE_BORDERLESS_BOOLEAN "borderless"
934#define SDL_PROP_WINDOW_CREATE_FOCUSABLE_BOOLEAN "focusable"
935#define SDL_PROP_WINDOW_CREATE_EXTERNAL_GRAPHICS_CONTEXT_BOOLEAN "external_graphics_context"
936#define SDL_PROP_WINDOW_CREATE_FULLSCREEN_BOOLEAN "fullscreen"
937#define SDL_PROP_WINDOW_CREATE_HEIGHT_NUMBER "height"
938#define SDL_PROP_WINDOW_CREATE_HIDDEN_BOOLEAN "hidden"
939#define SDL_PROP_WINDOW_CREATE_HIGH_PIXEL_DENSITY_BOOLEAN "high_pixel_density"
940#define SDL_PROP_WINDOW_CREATE_MAXIMIZED_BOOLEAN "maximized"
941#define SDL_PROP_WINDOW_CREATE_MENU_BOOLEAN "menu"
942#define SDL_PROP_WINDOW_CREATE_METAL_BOOLEAN "metal"
943#define SDL_PROP_WINDOW_CREATE_MINIMIZED_BOOLEAN "minimized"
944#define SDL_PROP_WINDOW_CREATE_MOUSE_GRABBED_BOOLEAN "mouse_grabbed"
945#define SDL_PROP_WINDOW_CREATE_OPENGL_BOOLEAN "opengl"
946#define SDL_PROP_WINDOW_CREATE_PARENT_POINTER "parent"
947#define SDL_PROP_WINDOW_CREATE_RESIZABLE_BOOLEAN "resizable"
948#define SDL_PROP_WINDOW_CREATE_TITLE_STRING "title"
949#define SDL_PROP_WINDOW_CREATE_TRANSPARENT_BOOLEAN "transparent"
950#define SDL_PROP_WINDOW_CREATE_TOOLTIP_BOOLEAN "tooltip"
951#define SDL_PROP_WINDOW_CREATE_UTILITY_BOOLEAN "utility"
952#define SDL_PROP_WINDOW_CREATE_VULKAN_BOOLEAN "vulkan"
953#define SDL_PROP_WINDOW_CREATE_WIDTH_NUMBER "width"
954#define SDL_PROP_WINDOW_CREATE_X_NUMBER "x"
955#define SDL_PROP_WINDOW_CREATE_Y_NUMBER "y"
956#define SDL_PROP_WINDOW_CREATE_COCOA_WINDOW_POINTER "cocoa.window"
957#define SDL_PROP_WINDOW_CREATE_COCOA_VIEW_POINTER "cocoa.view"
958#define SDL_PROP_WINDOW_CREATE_WAYLAND_SCALE_TO_DISPLAY_BOOLEAN "wayland.scale_to_display"
959#define SDL_PROP_WINDOW_CREATE_WAYLAND_SURFACE_ROLE_CUSTOM_BOOLEAN "wayland.surface_role_custom"
960#define SDL_PROP_WINDOW_CREATE_WAYLAND_CREATE_EGL_WINDOW_BOOLEAN "wayland.create_egl_window"
961#define SDL_PROP_WINDOW_CREATE_WAYLAND_WL_SURFACE_POINTER "wayland.wl_surface"
962#define SDL_PROP_WINDOW_CREATE_WIN32_HWND_POINTER "win32.hwnd"
963#define SDL_PROP_WINDOW_CREATE_WIN32_PIXEL_FORMAT_HWND_POINTER "win32.pixel_format_hwnd"
964#define SDL_PROP_WINDOW_CREATE_X11_WINDOW_NUMBER "x11.window"
1113#define SDL_PROP_WINDOW_SHAPE_POINTER "SDL.window.shape"
1114#define SDL_PROP_WINDOW_ANDROID_WINDOW_POINTER "SDL.window.android.window"
1115#define SDL_PROP_WINDOW_ANDROID_SURFACE_POINTER "SDL.window.android.surface"
1116#define SDL_PROP_WINDOW_UIKIT_WINDOW_POINTER "SDL.window.uikit.window"
1117#define SDL_PROP_WINDOW_UIKIT_METAL_VIEW_TAG_NUMBER "SDL.window.uikit.metal_view_tag"
1118#define SDL_PROP_WINDOW_KMSDRM_DEVICE_INDEX_NUMBER "SDL.window.kmsdrm.dev_index"
1119#define SDL_PROP_WINDOW_KMSDRM_DRM_FD_NUMBER "SDL.window.kmsdrm.drm_fd"
1120#define SDL_PROP_WINDOW_KMSDRM_GBM_DEVICE_POINTER "SDL.window.kmsdrm.gbm_dev"
1121#define SDL_PROP_WINDOW_COCOA_WINDOW_POINTER "SDL.window.cocoa.window"
1122#define SDL_PROP_WINDOW_COCOA_METAL_VIEW_TAG_NUMBER "SDL.window.cocoa.metal_view_tag"
1123#define SDL_PROP_WINDOW_VIVANTE_DISPLAY_POINTER "SDL.window.vivante.display"
1124#define SDL_PROP_WINDOW_VIVANTE_WINDOW_POINTER "SDL.window.vivante.window"
1125#define SDL_PROP_WINDOW_VIVANTE_SURFACE_POINTER "SDL.window.vivante.surface"
1126#define SDL_PROP_WINDOW_WINRT_WINDOW_POINTER "SDL.window.winrt.window"
1127#define SDL_PROP_WINDOW_WIN32_HWND_POINTER "SDL.window.win32.hwnd"
1128#define SDL_PROP_WINDOW_WIN32_HDC_POINTER "SDL.window.win32.hdc"
1129#define SDL_PROP_WINDOW_WIN32_INSTANCE_POINTER "SDL.window.win32.instance"
1130#define SDL_PROP_WINDOW_WAYLAND_DISPLAY_POINTER "SDL.window.wayland.display"
1131#define SDL_PROP_WINDOW_WAYLAND_SURFACE_POINTER "SDL.window.wayland.surface"
1132#define SDL_PROP_WINDOW_WAYLAND_EGL_WINDOW_POINTER "SDL.window.wayland.egl_window"
1133#define SDL_PROP_WINDOW_WAYLAND_XDG_SURFACE_POINTER "SDL.window.wayland.xdg_surface"
1134#define SDL_PROP_WINDOW_WAYLAND_XDG_TOPLEVEL_POINTER "SDL.window.wayland.xdg_toplevel"
1135#define SDL_PROP_WINDOW_WAYLAND_XDG_TOPLEVEL_EXPORT_HANDLE_STRING "SDL.window.wayland.xdg_toplevel_export_handle"
1136#define SDL_PROP_WINDOW_WAYLAND_XDG_POPUP_POINTER "SDL.window.wayland.xdg_popup"
1137#define SDL_PROP_WINDOW_WAYLAND_XDG_POSITIONER_POINTER "SDL.window.wayland.xdg_positioner"
1138#define SDL_PROP_WINDOW_X11_DISPLAY_POINTER "SDL.window.x11.display"
1139#define SDL_PROP_WINDOW_X11_SCREEN_NUMBER "SDL.window.x11.screen"
1140#define SDL_PROP_WINDOW_X11_WINDOW_NUMBER "SDL.window.x11.window"
void(* SDL_FunctionPointer)(void)
@ SDL_SYSTEM_THEME_UNKNOWN
int SDL_SetWindowKeyboardGrab(SDL_Window *window, SDL_bool grabbed)
@ SDL_HITTEST_RESIZE_LEFT
@ SDL_HITTEST_RESIZE_TOPRIGHT
@ SDL_HITTEST_RESIZE_BOTTOM
@ SDL_HITTEST_RESIZE_BOTTOMRIGHT
@ SDL_HITTEST_RESIZE_BOTTOMLEFT
@ SDL_HITTEST_RESIZE_RIGHT
@ SDL_HITTEST_RESIZE_TOPLEFT
SDL_DisplayID SDL_GetDisplayForPoint(const SDL_Point *point)
const SDL_DisplayMode ** SDL_GetFullscreenDisplayModes(SDL_DisplayID displayID, int *count)
int SDL_SetWindowModalFor(SDL_Window *modal_window, SDL_Window *parent_window)
int SDL_UpdateWindowSurface(SDL_Window *window)
SDL_EGLAttrib *(* SDL_EGLAttribArrayCallback)(void)
int SDL_RaiseWindow(SDL_Window *window)
SDL_bool SDL_ScreenSaverEnabled(void)
SDL_Surface * SDL_GetWindowSurface(SDL_Window *window)
const SDL_DisplayMode * SDL_GetClosestFullscreenDisplayMode(SDL_DisplayID displayID, int w, int h, float refresh_rate, SDL_bool include_high_density_modes)
const char * SDL_GetDisplayName(SDL_DisplayID displayID)
SDL_bool SDL_GL_ExtensionSupported(const char *extension)
int SDL_GetDisplayUsableBounds(SDL_DisplayID displayID, SDL_Rect *rect)
void SDL_EGL_SetEGLAttributeCallbacks(SDL_EGLAttribArrayCallback platformAttribCallback, SDL_EGLIntArrayCallback surfaceAttribCallback, SDL_EGLIntArrayCallback contextAttribCallback)
int SDL_ShowWindow(SDL_Window *window)
int SDL_GL_SetSwapInterval(int interval)
SDL_WindowFlags SDL_GetWindowFlags(SDL_Window *window)
SDL_bool SDL_WindowHasSurface(SDL_Window *window)
int SDL_GL_GetSwapInterval(int *interval)
const char * SDL_GetWindowTitle(SDL_Window *window)
int SDL_SetWindowShape(SDL_Window *window, SDL_Surface *shape)
SDL_HitTestResult(* SDL_HitTest)(SDL_Window *win, const SDL_Point *area, void *data)
@ SDL_GL_FRAMEBUFFER_SRGB_CAPABLE
@ SDL_GL_CONTEXT_RELEASE_BEHAVIOR
@ SDL_GL_CONTEXT_MAJOR_VERSION
@ SDL_GL_CONTEXT_RESET_NOTIFICATION
@ SDL_GL_ACCUM_ALPHA_SIZE
@ SDL_GL_MULTISAMPLESAMPLES
@ SDL_GL_CONTEXT_MINOR_VERSION
@ SDL_GL_MULTISAMPLEBUFFERS
@ SDL_GL_ACCUM_GREEN_SIZE
@ SDL_GL_SHARE_WITH_CURRENT_CONTEXT
@ SDL_GL_RETAINED_BACKING
@ SDL_GL_ACCELERATED_VISUAL
@ SDL_GL_CONTEXT_PROFILE_MASK
@ SDL_GL_CONTEXT_NO_ERROR
Uint32 SDL_GetWindowPixelFormat(SDL_Window *window)
void SDL_GL_ResetAttributes(void)
@ SDL_FLASH_UNTIL_FOCUSED
SDL_EGLint *(* SDL_EGLIntArrayCallback)(void)
void * SDL_GetWindowICCProfile(SDL_Window *window, size_t *size)
int SDL_FlashWindow(SDL_Window *window, SDL_FlashOperation operation)
int SDL_SetWindowResizable(SDL_Window *window, SDL_bool resizable)
int SDL_GetWindowSizeInPixels(SDL_Window *window, int *w, int *h)
SDL_PropertiesID SDL_GetWindowProperties(SDL_Window *window)
SDL_DisplayID SDL_GetDisplayForRect(const SDL_Rect *rect)
int SDL_SetWindowMouseGrab(SDL_Window *window, SDL_bool grabbed)
int SDL_GetWindowBordersSize(SDL_Window *window, int *top, int *left, int *bottom, int *right)
const SDL_Rect * SDL_GetWindowMouseRect(SDL_Window *window)
float SDL_GetWindowDisplayScale(SDL_Window *window)
int SDL_DisableScreenSaver(void)
SDL_bool SDL_GetWindowKeyboardGrab(SDL_Window *window)
int SDL_RestoreWindow(SDL_Window *window)
int SDL_UpdateWindowSurfaceRects(SDL_Window *window, const SDL_Rect *rects, int numrects)
SDL_DisplayID * SDL_GetDisplays(int *count)
SDL_Window * SDL_GetWindowFromID(SDL_WindowID id)
SDL_EGLDisplay SDL_EGL_GetCurrentEGLDisplay(void)
int SDL_SetWindowTitle(SDL_Window *window, const char *title)
int SDL_SetWindowBordered(SDL_Window *window, SDL_bool bordered)
struct SDL_Window SDL_Window
SDL_WindowID SDL_GetWindowID(SDL_Window *window)
SDL_DisplayID SDL_GetPrimaryDisplay(void)
int SDL_GetDisplayBounds(SDL_DisplayID displayID, SDL_Rect *rect)
SDL_GLContext SDL_GL_CreateContext(SDL_Window *window)
const char * SDL_GetCurrentVideoDriver(void)
float SDL_GetWindowPixelDensity(SDL_Window *window)
int SDL_SetWindowAlwaysOnTop(SDL_Window *window, SDL_bool on_top)
int SDL_SetWindowIcon(SDL_Window *window, SDL_Surface *icon)
int SDL_GetWindowMaximumSize(SDL_Window *window, int *w, int *h)
const SDL_DisplayMode * SDL_GetDesktopDisplayMode(SDL_DisplayID displayID)
int SDL_GetWindowPosition(SDL_Window *window, int *x, int *y)
int SDL_MinimizeWindow(SDL_Window *window)
SDL_DisplayID SDL_GetDisplayForWindow(SDL_Window *window)
SDL_bool SDL_GetWindowGrab(SDL_Window *window)
SDL_FunctionPointer SDL_EGL_GetProcAddress(const char *proc)
SDL_FunctionPointer SDL_GL_GetProcAddress(const char *proc)
int SDL_SetWindowSize(SDL_Window *window, int w, int h)
SDL_Window * SDL_CreateWindow(const char *title, int w, int h, SDL_WindowFlags flags)
int SDL_SetWindowInputFocus(SDL_Window *window)
SDL_EGLConfig SDL_EGL_GetCurrentEGLConfig(void)
SDL_GLContext SDL_GL_GetCurrentContext(void)
SDL_Window * SDL_GetGrabbedWindow(void)
void SDL_GL_UnloadLibrary(void)
int SDL_HideWindow(SDL_Window *window)
int SDL_GL_SetAttribute(SDL_GLattr attr, int value)
int SDL_SetWindowMouseRect(SDL_Window *window, const SDL_Rect *rect)
int SDL_SetWindowOpacity(SDL_Window *window, float opacity)
@ SDL_GL_CONTEXT_RELEASE_BEHAVIOR_NONE
@ SDL_GL_CONTEXT_RELEASE_BEHAVIOR_FLUSH
int SDL_GetNumVideoDrivers(void)
float SDL_GetDisplayContentScale(SDL_DisplayID displayID)
SDL_Window * SDL_GL_GetCurrentWindow(void)
SDL_Window * SDL_CreateWindowWithProperties(SDL_PropertiesID props)
int SDL_ShowWindowSystemMenu(SDL_Window *window, int x, int y)
int SDL_MaximizeWindow(SDL_Window *window)
SDL_EGLSurface SDL_EGL_GetWindowEGLSurface(SDL_Window *window)
int SDL_GL_MakeCurrent(SDL_Window *window, SDL_GLContext context)
int SDL_GetWindowMinimumSize(SDL_Window *window, int *w, int *h)
int SDL_SetWindowFullscreenMode(SDL_Window *window, const SDL_DisplayMode *mode)
SDL_DisplayOrientation SDL_GetNaturalDisplayOrientation(SDL_DisplayID displayID)
const char * SDL_GetVideoDriver(int index)
SDL_bool SDL_GetWindowMouseGrab(SDL_Window *window)
int SDL_SetWindowMaximumSize(SDL_Window *window, int max_w, int max_h)
@ SDL_GL_CONTEXT_FORWARD_COMPATIBLE_FLAG
@ SDL_GL_CONTEXT_RESET_ISOLATION_FLAG
@ SDL_GL_CONTEXT_ROBUST_ACCESS_FLAG
@ SDL_GL_CONTEXT_DEBUG_FLAG
SDL_DisplayOrientation SDL_GetCurrentDisplayOrientation(SDL_DisplayID displayID)
int SDL_SetWindowHitTest(SDL_Window *window, SDL_HitTest callback, void *callback_data)
void SDL_DestroyWindow(SDL_Window *window)
int SDL_SetWindowFocusable(SDL_Window *window, SDL_bool focusable)
int SDL_SetWindowMinimumSize(SDL_Window *window, int min_w, int min_h)
int SDL_DestroyWindowSurface(SDL_Window *window)
int SDL_EnableScreenSaver(void)
const SDL_DisplayMode * SDL_GetWindowFullscreenMode(SDL_Window *window)
const SDL_DisplayMode * SDL_GetCurrentDisplayMode(SDL_DisplayID displayID)
SDL_Window * SDL_CreatePopupWindow(SDL_Window *parent, int offset_x, int offset_y, int w, int h, SDL_WindowFlags flags)
int SDL_GL_SwapWindow(SDL_Window *window)
int SDL_GL_GetAttribute(SDL_GLattr attr, int *value)
SDL_SystemTheme SDL_GetSystemTheme(void)
int SDL_SetWindowPosition(SDL_Window *window, int x, int y)
int SDL_GL_DeleteContext(SDL_GLContext context)
@ SDL_GL_CONTEXT_PROFILE_COMPATIBILITY
@ SDL_GL_CONTEXT_PROFILE_ES
@ SDL_GL_CONTEXT_PROFILE_CORE
int SDL_SyncWindow(SDL_Window *window)
int SDL_GL_LoadLibrary(const char *path)
int SDL_SetWindowFullscreen(SDL_Window *window, SDL_bool fullscreen)
int SDL_GetWindowSize(SDL_Window *window, int *w, int *h)
int SDL_SetWindowGrab(SDL_Window *window, SDL_bool grabbed)
SDL_Window * SDL_GetWindowParent(SDL_Window *window)
@ SDL_ORIENTATION_LANDSCAPE
@ SDL_ORIENTATION_PORTRAIT
@ SDL_ORIENTATION_PORTRAIT_FLIPPED
@ SDL_ORIENTATION_LANDSCAPE_FLIPPED
@ SDL_ORIENTATION_UNKNOWN
SDL_GLContextResetNotification
@ SDL_GL_CONTEXT_RESET_NO_NOTIFICATION
@ SDL_GL_CONTEXT_RESET_LOSE_CONTEXT
int SDL_GetWindowOpacity(SDL_Window *window, float *out_opacity)
SDL_PropertiesID SDL_GetDisplayProperties(SDL_DisplayID displayID)
SDL_PixelFormatEnum format