sdl2 :: SDLSysWMInfo :: defaultinit
# Information on the window manager
#
# Created using `SDLWindow::vm_info`
extern class SDLSysWMInfo `{ SDL_SysWMinfo * `}
# Is this an unknown window manager?
fun is_unknown: Bool `{ return self->subsystem == SDL_SYSWM_UNKNOWN; `}
# Is this a Windows system?
fun is_windows: Bool `{ return self->subsystem == SDL_SYSWM_WINDOWS; `}
# Is this the X11 window manager?
fun is_x11: Bool `{ return self->subsystem == SDL_SYSWM_X11; `}
# Is this a direct DirectFB?
fun is_direcfb: Bool `{ return self->subsystem == SDL_SYSWM_DIRECTFB; `}
# Is this system an OS X?
fun is_cocoa: Bool `{ return self->subsystem == SDL_SYSWM_COCOA; `}
# Is this system an iOS?
fun is_uikit: Bool `{ return self->subsystem == SDL_SYSWM_UIKIT; `}
# It this window manager Wayland?
fun is_wayland: Bool `{
#if SDL_VERSION_ATLEAST(2, 0, 2)
return self->subsystem == SDL_SYSWM_WAYLAND;
#else
return 0;
#endif
`}
# It this window manager Mir?
fun is_mir: Bool `{
#if SDL_VERSION_ATLEAST(2, 0, 3)
return self->subsystem == SDL_SYSWM_MIR;
#else
return 0;
#endif
`}
# Is this system a Windows RT?
fun is_winrt: Bool `{
#if SDL_VERSION_ATLEAST(2, 0, 3)
return self->subsystem == SDL_SYSWM_WINRT;
#else
return 0;
#endif
`}
# Is this system an Android?
fun is_android: Bool `{
#if SDL_VERSION_ATLEAST(2, 0, 4)
return self->subsystem == SDL_SYSWM_ANDROID;
#else
return 0;
#endif
`}
# Handle to the window
fun window_handle: Pointer `{
#ifdef _WIN32
return (void*)self->info.win.window;
#else
return (void*)self->info.x11.window;
#endif
`}
# Handle to the display or device context
fun display_handle: Pointer `{
#ifdef _WIN32
return (void*)self->info.win.hdc;
#else
return (void*)self->info.x11.display;
#endif
`}
end
lib/sdl2/syswm.nit:44,1--119,3