SDL  2.0
SDL_syswm.h File Reference
#include "SDL_stdinc.h"
#include "SDL_error.h"
#include "SDL_video.h"
#include "SDL_version.h"
#include <X11/Xlib.h>
#include <X11/Xatom.h>
#include "begin_code.h"
#include "close_code.h"
+ Include dependency graph for SDL_syswm.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  SDL_SysWMmsg
 
struct  SDL_SysWMinfo
 

Enumerations

enum  SDL_SYSWM_TYPE {
  SDL_SYSWM_UNKNOWN ,
  SDL_SYSWM_WINDOWS ,
  SDL_SYSWM_X11 ,
  SDL_SYSWM_DIRECTFB ,
  SDL_SYSWM_COCOA ,
  SDL_SYSWM_UIKIT ,
  SDL_SYSWM_WAYLAND ,
  SDL_SYSWM_MIR ,
  SDL_SYSWM_WINRT ,
  SDL_SYSWM_ANDROID ,
  SDL_SYSWM_VIVANTE ,
  SDL_SYSWM_OS2 ,
  SDL_SYSWM_HAIKU
}
 

Functions

SDL_bool SDL_GetWindowWMInfo (SDL_Window *window, SDL_SysWMinfo *info)
 This function allows access to driver-dependent window information. More...
 

Detailed Description

Include file for SDL custom system window manager hooks.

Definition in file SDL_syswm.h.

Enumeration Type Documentation

◆ SDL_SYSWM_TYPE

These are the various supported windowing subsystems

Enumerator
SDL_SYSWM_UNKNOWN 
SDL_SYSWM_WINDOWS 
SDL_SYSWM_X11 
SDL_SYSWM_DIRECTFB 
SDL_SYSWM_COCOA 
SDL_SYSWM_UIKIT 
SDL_SYSWM_WAYLAND 
SDL_SYSWM_MIR 
SDL_SYSWM_WINRT 
SDL_SYSWM_ANDROID 
SDL_SYSWM_VIVANTE 
SDL_SYSWM_OS2 
SDL_SYSWM_HAIKU 

Definition at line 127 of file SDL_syswm.h.

128 {
136  SDL_SYSWM_MIR, /* no longer available, left for API/ABI compatibility. Remove in 2.1! */
SDL_SYSWM_TYPE
Definition: SDL_syswm.h:128
@ SDL_SYSWM_X11
Definition: SDL_syswm.h:131
@ SDL_SYSWM_DIRECTFB
Definition: SDL_syswm.h:132
@ SDL_SYSWM_UNKNOWN
Definition: SDL_syswm.h:129
@ SDL_SYSWM_OS2
Definition: SDL_syswm.h:140
@ SDL_SYSWM_HAIKU
Definition: SDL_syswm.h:141
@ SDL_SYSWM_WINDOWS
Definition: SDL_syswm.h:130
@ SDL_SYSWM_UIKIT
Definition: SDL_syswm.h:134
@ SDL_SYSWM_COCOA
Definition: SDL_syswm.h:133
@ SDL_SYSWM_WAYLAND
Definition: SDL_syswm.h:135
@ SDL_SYSWM_VIVANTE
Definition: SDL_syswm.h:139
@ SDL_SYSWM_ANDROID
Definition: SDL_syswm.h:138
@ SDL_SYSWM_MIR
Definition: SDL_syswm.h:136
@ SDL_SYSWM_WINRT
Definition: SDL_syswm.h:137

Function Documentation

◆ SDL_GetWindowWMInfo()

SDL_bool SDL_GetWindowWMInfo ( SDL_Window window,
SDL_SysWMinfo info 
)

This function allows access to driver-dependent window information.

Parameters
windowThe window about which information is being requested
infoThis structure must be initialized with the SDL version, and is then filled in with information about the given window.
Returns
SDL_TRUE if the function is implemented and the version member of the info struct is valid, SDL_FALSE otherwise.

You typically use this function like this:

if ( SDL_GetWindowWMInfo(window, &info) ) { ... }
#define SDL_GetWindowWMInfo
#define SDL_VERSION(x)
Macro to determine SDL version program was compiled against.
Definition: SDL_version.h:79
EGLSurface EGLNativeWindowType * window
Definition: eglext.h:1025
SDL_version version
Definition: SDL_syswm.h:218

Definition at line 3857 of file SDL_video.c.

3858 {
3860 
3861  if (!info) {
3862  SDL_InvalidParamError("info");
3863  return SDL_FALSE;
3864  }
3865  info->subsystem = SDL_SYSWM_UNKNOWN;
3866 
3867  if (!_this->GetWindowWMInfo) {
3868  SDL_Unsupported();
3869  return SDL_FALSE;
3870  }
3871  return (_this->GetWindowWMInfo(_this, window, info));
3872 }
#define SDL_Unsupported()
Definition: SDL_error.h:89
#define SDL_InvalidParamError(param)
Definition: SDL_error.h:90
@ SDL_FALSE
Definition: SDL_stdinc.h:169
static SDL_VideoDevice * _this
Definition: SDL_video.c:126
#define CHECK_WINDOW_MAGIC(window, retval)
Definition: SDL_video.c:128
SDL_SYSWM_TYPE subsystem
Definition: SDL_syswm.h:219
SDL_bool(* GetWindowWMInfo)(_THIS, SDL_Window *window, struct SDL_SysWMinfo *info)
Definition: SDL_sysvideo.h:249

References _this, CHECK_WINDOW_MAGIC, SDL_VideoDevice::GetWindowWMInfo, SDL_FALSE, SDL_InvalidParamError, SDL_SYSWM_UNKNOWN, SDL_Unsupported, and SDL_SysWMinfo::subsystem.

Referenced by SDL_MessageboxValidForDriver().