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 "begin_code.h"
#include <X11/Xlib.h>
#include <X11/Xatom.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
}
 

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.

Your application has access to a special type of event SDL_SYSWMEVENT, which contains window-manager specific information and arrives whenever an unhandled window event occurs. This event is ignored by default, but you can enable it with SDL_EventState().

Definition in file SDL_syswm.h.

Enumeration Type Documentation

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 

Definition at line 112 of file SDL_syswm.h.

Function Documentation

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:

1 SDL_SysWMinfo info;
2 SDL_VERSION(&info.version);
3 if ( SDL_GetWindowWMInfo(window, &info) ) { ... }

Definition at line 3379 of file SDL_video.c.

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

Referenced by SDL_MessageboxValidForDriver().

3380 {
3381  CHECK_WINDOW_MAGIC(window, SDL_FALSE);
3382 
3383  if (!info) {
3384  SDL_InvalidParamError("info");
3385  return SDL_FALSE;
3386  }
3387  info->subsystem = SDL_SYSWM_UNKNOWN;
3388 
3389  if (!_this->GetWindowWMInfo) {
3390  SDL_Unsupported();
3391  return SDL_FALSE;
3392  }
3393  return (_this->GetWindowWMInfo(_this, window, info));
3394 }
SDL_SYSWM_TYPE subsystem
Definition: SDL_syswm.h:184
#define SDL_InvalidParamError(param)
Definition: SDL_error.h:54
static SDL_VideoDevice * _this
Definition: SDL_video.c:114
SDL_bool(* GetWindowWMInfo)(_THIS, SDL_Window *window, struct SDL_SysWMinfo *info)
Definition: SDL_sysvideo.h:227
#define CHECK_WINDOW_MAGIC(window, retval)
Definition: SDL_video.c:116
#define SDL_Unsupported()
Definition: SDL_error.h:53