1555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot/* 2555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot Simple DirectMedia Layer 3555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot Copyright (C) 1997-2014 Sam Lantinga <slouken@libsdl.org> 4555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot 5555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot This software is provided 'as-is', without any express or implied 6555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot warranty. In no event will the authors be held liable for any damages 7555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot arising from the use of this software. 8555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot 9555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot Permission is granted to anyone to use this software for any purpose, 10555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot including commercial applications, and to alter it and redistribute it 11555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot freely, subject to the following restrictions: 12555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot 13555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot 1. The origin of this software must not be misrepresented; you must not 14555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot claim that you wrote the original software. If you use this software 15555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot in a product, an acknowledgment in the product documentation would be 16555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot appreciated but is not required. 17555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot 2. Altered source versions must be plainly marked as such, and must not be 18555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot misrepresented as being the original software. 19555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot 3. This notice may not be removed or altered from any source distribution. 20555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot*/ 21555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot 22555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot/** 23555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot * \file SDL_syswm.h 24555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot * 25555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot * Include file for SDL custom system window manager hooks. 26555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot */ 27555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot 28555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot#ifndef _SDL_syswm_h 29555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot#define _SDL_syswm_h 30555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot 31555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot#include "SDL_stdinc.h" 32555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot#include "SDL_error.h" 33555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot#include "SDL_video.h" 34555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot#include "SDL_version.h" 35555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot 36555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot#include "begin_code.h" 37555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot/* Set up for C function definitions, even when using C++ */ 38555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot#ifdef __cplusplus 39555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robotextern "C" { 40555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot#endif 41555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot 42555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot/** 43555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot * \file SDL_syswm.h 44555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot * 45555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot * Your application has access to a special type of event ::SDL_SYSWMEVENT, 46555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot * which contains window-manager specific information and arrives whenever 47555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot * an unhandled window event occurs. This event is ignored by default, but 48555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot * you can enable it with SDL_EventState(). 49555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot */ 50555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot#ifdef SDL_PROTOTYPES_ONLY 51555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robotstruct SDL_SysWMinfo; 52555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot#else 53555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot 54555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot#if defined(SDL_VIDEO_DRIVER_WINDOWS) 55555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot#define WIN32_LEAN_AND_MEAN 56555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot#include <windows.h> 57555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot#endif 58555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot 59555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot#if defined(SDL_VIDEO_DRIVER_WINRT) 60555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot#include <Inspectable.h> 61555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot#endif 62555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot 63555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot/* This is the structure for custom window manager events */ 64555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot#if defined(SDL_VIDEO_DRIVER_X11) 65555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot#if defined(__APPLE__) && defined(__MACH__) 66555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot/* conflicts with Quickdraw.h */ 67555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot#define Cursor X11Cursor 68555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot#endif 69555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot 70555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot#include <X11/Xlib.h> 71555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot#include <X11/Xatom.h> 72555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot 73555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot#if defined(__APPLE__) && defined(__MACH__) 74555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot/* matches the re-define above */ 75555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot#undef Cursor 76555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot#endif 77555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot 78555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot#endif /* defined(SDL_VIDEO_DRIVER_X11) */ 79555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot 80555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot#if defined(SDL_VIDEO_DRIVER_DIRECTFB) 81555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot#include <directfb.h> 82555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot#endif 83555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot 84555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot#if defined(SDL_VIDEO_DRIVER_COCOA) 85555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot#ifdef __OBJC__ 86555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot#include <Cocoa/Cocoa.h> 87555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot#else 88555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robottypedef struct _NSWindow NSWindow; 89555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot#endif 90555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot#endif 91555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot 92555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot#if defined(SDL_VIDEO_DRIVER_UIKIT) 93555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot#ifdef __OBJC__ 94555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot#include <UIKit/UIKit.h> 95555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot#else 96555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robottypedef struct _UIWindow UIWindow; 97555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robottypedef struct _UIViewController UIViewController; 98555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot#endif 99555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot#endif 100555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot 101555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot#if defined(SDL_VIDEO_DRIVER_MIR) 102555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot#include <mir_toolkit/mir_client_library.h> 103555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot#endif 104555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot 105555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot 106555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot/** 107555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot * These are the various supported windowing subsystems 108555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot */ 109555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robottypedef enum 110555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot{ 111555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot SDL_SYSWM_UNKNOWN, 112555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot SDL_SYSWM_WINDOWS, 113555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot SDL_SYSWM_X11, 114555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot SDL_SYSWM_DIRECTFB, 115555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot SDL_SYSWM_COCOA, 116555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot SDL_SYSWM_UIKIT, 117555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot SDL_SYSWM_WAYLAND, 118555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot SDL_SYSWM_MIR, 119555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot SDL_SYSWM_WINRT, 120555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot} SDL_SYSWM_TYPE; 121555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot 122555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot/** 123555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot * The custom event structure. 124555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot */ 125555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robotstruct SDL_SysWMmsg 126555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot{ 127555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot SDL_version version; 128555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot SDL_SYSWM_TYPE subsystem; 129555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot union 130555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot { 131555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot#if defined(SDL_VIDEO_DRIVER_WINDOWS) 132555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot struct { 133555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot HWND hwnd; /**< The window for the message */ 134555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot UINT msg; /**< The type of message */ 135555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot WPARAM wParam; /**< WORD message parameter */ 136555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot LPARAM lParam; /**< LONG message parameter */ 137555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot } win; 138555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot#endif 139555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot#if defined(SDL_VIDEO_DRIVER_X11) 140555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot struct { 141555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot XEvent event; 142555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot } x11; 143555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot#endif 144555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot#if defined(SDL_VIDEO_DRIVER_DIRECTFB) 145555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot struct { 146555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot DFBEvent event; 147555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot } dfb; 148555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot#endif 149555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot#if defined(SDL_VIDEO_DRIVER_COCOA) 150555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot struct 151555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot { 152555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot /* No Cocoa window events yet */ 153555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot } cocoa; 154555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot#endif 155555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot#if defined(SDL_VIDEO_DRIVER_UIKIT) 156555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot struct 157555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot { 158555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot /* No UIKit window events yet */ 159555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot } uikit; 160555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot#endif 161555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot /* Can't have an empty union */ 162555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot int dummy; 163555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot } msg; 164555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot}; 165555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot 166555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot/** 167555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot * The custom window manager information structure. 168555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot * 169555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot * When this structure is returned, it holds information about which 170555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot * low level system it is using, and will be one of SDL_SYSWM_TYPE. 171555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot */ 172555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robotstruct SDL_SysWMinfo 173555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot{ 174555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot SDL_version version; 175555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot SDL_SYSWM_TYPE subsystem; 176555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot union 177555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot { 178555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot#if defined(SDL_VIDEO_DRIVER_WINDOWS) 179555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot struct 180555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot { 181555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot HWND window; /**< The window handle */ 182555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot } win; 183555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot#endif 184555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot#if defined(SDL_VIDEO_DRIVER_WINRT) 185555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot struct 186555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot { 187555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot IInspectable * window; /**< The WinRT CoreWindow */ 188555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot } winrt; 189555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot#endif 190555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot#if defined(SDL_VIDEO_DRIVER_X11) 191555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot struct 192555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot { 193555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot Display *display; /**< The X11 display */ 194555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot Window window; /**< The X11 window */ 195555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot } x11; 196555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot#endif 197555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot#if defined(SDL_VIDEO_DRIVER_DIRECTFB) 198555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot struct 199555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot { 200555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot IDirectFB *dfb; /**< The directfb main interface */ 201555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot IDirectFBWindow *window; /**< The directfb window handle */ 202555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot IDirectFBSurface *surface; /**< The directfb client surface */ 203555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot } dfb; 204555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot#endif 205555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot#if defined(SDL_VIDEO_DRIVER_COCOA) 206555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot struct 207555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot { 208555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot NSWindow *window; /* The Cocoa window */ 209555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot } cocoa; 210555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot#endif 211555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot#if defined(SDL_VIDEO_DRIVER_UIKIT) 212555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot struct 213555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot { 214555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot UIWindow *window; /* The UIKit window */ 215555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot } uikit; 216555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot#endif 217555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot#if defined(SDL_VIDEO_DRIVER_WAYLAND) 218555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot struct 219555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot { 220555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot struct wl_display *display; /**< Wayland display */ 221555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot struct wl_surface *surface; /**< Wayland surface */ 222555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot struct wl_shell_surface *shell_surface; /**< Wayland shell_surface (window manager handle) */ 223555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot } wl; 224555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot#endif 225555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot#if defined(SDL_VIDEO_DRIVER_MIR) 226555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot struct 227555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot { 228555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot MirConnection *connection; /**< Mir display server connection */ 229555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot MirSurface *surface; /**< Mir surface */ 230555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot } mir; 231555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot#endif 232555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot 233555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot /* Can't have an empty union */ 234555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot int dummy; 235555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot } info; 236555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot}; 237555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot 238555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot#endif /* SDL_PROTOTYPES_ONLY */ 239555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot 240555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robottypedef struct SDL_SysWMinfo SDL_SysWMinfo; 241555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot 242555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot/* Function prototypes */ 243555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot/** 244555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot * \brief This function allows access to driver-dependent window information. 245555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot * 246555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot * \param window The window about which information is being requested 247555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot * \param info This structure must be initialized with the SDL version, and is 248555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot * then filled in with information about the given window. 249555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot * 250555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot * \return SDL_TRUE if the function is implemented and the version member of 251555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot * the \c info struct is valid, SDL_FALSE otherwise. 252555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot * 253555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot * You typically use this function like this: 254555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot * \code 255555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot * SDL_SysWMinfo info; 256555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot * SDL_VERSION(&info.version); 257555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot * if ( SDL_GetWindowWMInfo(window, &info) ) { ... } 258555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot * \endcode 259555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot */ 260555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robotextern DECLSPEC SDL_bool SDLCALL SDL_GetWindowWMInfo(SDL_Window * window, 261555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot SDL_SysWMinfo * info); 262555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot 263555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot 264555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot/* Ends C function definitions when using C++ */ 265555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot#ifdef __cplusplus 266555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot} 267555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot#endif 268555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot#include "close_code.h" 269555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot 270555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot#endif /* _SDL_syswm_h */ 271555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot 272555d6a58708babe6bb79b5824ef24eb1f37f708android-build-team Robot/* vi: set ts=4 sw=4 expandtab: */ 273