Mercurial > sdl-ios-xcode
annotate include/SDL_syswm.h @ 5172:ededa1ccf91c
Switched the SDL 1.2 compatibility to use the window surface, so it's fast even when there's no hardware acceleration available.
This means that the YUV overlay now uses software, but that's okay since fast YUV code should be using the textures now anyway.
author | Sam Lantinga <slouken@libsdl.org> |
---|---|
date | Thu, 03 Feb 2011 21:13:55 -0800 |
parents | 7e4c7790700e |
children | 164f20ba08eb |
rev | line source |
---|---|
0 | 1 /* |
2 SDL - Simple DirectMedia Layer | |
3697 | 3 Copyright (C) 1997-2010 Sam Lantinga |
0 | 4 |
5 This library is free software; you can redistribute it and/or | |
1312
c9b51268668f
Updated copyright information and removed rcs id lines (problematic in branch merges)
Sam Lantinga <slouken@libsdl.org>
parents:
1133
diff
changeset
|
6 modify it under the terms of the GNU Lesser General Public |
0 | 7 License as published by the Free Software Foundation; either |
1312
c9b51268668f
Updated copyright information and removed rcs id lines (problematic in branch merges)
Sam Lantinga <slouken@libsdl.org>
parents:
1133
diff
changeset
|
8 version 2.1 of the License, or (at your option) any later version. |
0 | 9 |
10 This library is distributed in the hope that it will be useful, | |
11 but WITHOUT ANY WARRANTY; without even the implied warranty of | |
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |
1312
c9b51268668f
Updated copyright information and removed rcs id lines (problematic in branch merges)
Sam Lantinga <slouken@libsdl.org>
parents:
1133
diff
changeset
|
13 Lesser General Public License for more details. |
0 | 14 |
1312
c9b51268668f
Updated copyright information and removed rcs id lines (problematic in branch merges)
Sam Lantinga <slouken@libsdl.org>
parents:
1133
diff
changeset
|
15 You should have received a copy of the GNU Lesser General Public |
c9b51268668f
Updated copyright information and removed rcs id lines (problematic in branch merges)
Sam Lantinga <slouken@libsdl.org>
parents:
1133
diff
changeset
|
16 License along with this library; if not, write to the Free Software |
c9b51268668f
Updated copyright information and removed rcs id lines (problematic in branch merges)
Sam Lantinga <slouken@libsdl.org>
parents:
1133
diff
changeset
|
17 Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA |
0 | 18 |
19 Sam Lantinga | |
251
b8688cfdc232
Updated the headers with the correct e-mail address
Sam Lantinga <slouken@libsdl.org>
parents:
94
diff
changeset
|
20 slouken@libsdl.org |
0 | 21 */ |
22 | |
1895
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
1760
diff
changeset
|
23 /** |
3407
d3baf5ac4e37
Partial fix for bug #859
Sam Lantinga <slouken@libsdl.org>
parents:
3274
diff
changeset
|
24 * \file SDL_syswm.h |
d3baf5ac4e37
Partial fix for bug #859
Sam Lantinga <slouken@libsdl.org>
parents:
3274
diff
changeset
|
25 * |
d3baf5ac4e37
Partial fix for bug #859
Sam Lantinga <slouken@libsdl.org>
parents:
3274
diff
changeset
|
26 * Include file for SDL custom system window manager hooks. |
1895
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
1760
diff
changeset
|
27 */ |
0 | 28 |
29 #ifndef _SDL_syswm_h | |
30 #define _SDL_syswm_h | |
31 | |
1356
67114343400d
*** empty log message ***
Sam Lantinga <slouken@libsdl.org>
parents:
1330
diff
changeset
|
32 #include "SDL_stdinc.h" |
1358
c71e05b4dc2e
More header massaging... works great on Windows. ;-)
Sam Lantinga <slouken@libsdl.org>
parents:
1356
diff
changeset
|
33 #include "SDL_error.h" |
1895
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
1760
diff
changeset
|
34 #include "SDL_video.h" |
0 | 35 #include "SDL_version.h" |
36 | |
37 #include "begin_code.h" | |
38 /* Set up for C function definitions, even when using C++ */ | |
39 #ifdef __cplusplus | |
1895
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
1760
diff
changeset
|
40 /* *INDENT-OFF* */ |
0 | 41 extern "C" { |
1895
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
1760
diff
changeset
|
42 /* *INDENT-ON* */ |
0 | 43 #endif |
44 | |
3407
d3baf5ac4e37
Partial fix for bug #859
Sam Lantinga <slouken@libsdl.org>
parents:
3274
diff
changeset
|
45 /** |
d3baf5ac4e37
Partial fix for bug #859
Sam Lantinga <slouken@libsdl.org>
parents:
3274
diff
changeset
|
46 * \file SDL_syswm.h |
d3baf5ac4e37
Partial fix for bug #859
Sam Lantinga <slouken@libsdl.org>
parents:
3274
diff
changeset
|
47 * |
d3baf5ac4e37
Partial fix for bug #859
Sam Lantinga <slouken@libsdl.org>
parents:
3274
diff
changeset
|
48 * Your application has access to a special type of event ::SDL_SYSWMEVENT, |
d3baf5ac4e37
Partial fix for bug #859
Sam Lantinga <slouken@libsdl.org>
parents:
3274
diff
changeset
|
49 * which contains window-manager specific information and arrives whenever |
d3baf5ac4e37
Partial fix for bug #859
Sam Lantinga <slouken@libsdl.org>
parents:
3274
diff
changeset
|
50 * an unhandled window event occurs. This event is ignored by default, but |
d3baf5ac4e37
Partial fix for bug #859
Sam Lantinga <slouken@libsdl.org>
parents:
3274
diff
changeset
|
51 * you can enable it with SDL_EventState(). |
d3baf5ac4e37
Partial fix for bug #859
Sam Lantinga <slouken@libsdl.org>
parents:
3274
diff
changeset
|
52 */ |
0 | 53 #ifdef SDL_PROTOTYPES_ONLY |
54 struct SDL_SysWMinfo; | |
55 #else | |
56 | |
5062 | 57 #if defined(SDL_VIDEO_DRIVER_WINDOWS) |
4900
69d9db65f248
Merged the Windows custom window system hooks into the union used by X11.
Sam Lantinga <slouken@libsdl.org>
parents:
4899
diff
changeset
|
58 #define WIN32_LEAN_AND_MEAN |
69d9db65f248
Merged the Windows custom window system hooks into the union used by X11.
Sam Lantinga <slouken@libsdl.org>
parents:
4899
diff
changeset
|
59 #include <windows.h> |
69d9db65f248
Merged the Windows custom window system hooks into the union used by X11.
Sam Lantinga <slouken@libsdl.org>
parents:
4899
diff
changeset
|
60 #endif |
69d9db65f248
Merged the Windows custom window system hooks into the union used by X11.
Sam Lantinga <slouken@libsdl.org>
parents:
4899
diff
changeset
|
61 |
1361
19418e4422cb
New configure-based build system. Still work in progress, but much improved
Sam Lantinga <slouken@libsdl.org>
parents:
1358
diff
changeset
|
62 /* This is the structure for custom window manager events */ |
1626 | 63 #if defined(SDL_VIDEO_DRIVER_X11) |
1133
609c060fd2a2
The MacOSX Carbon/Cocoa/X11 all in one library patch. Relevant emails:
Ryan C. Gordon <icculus@icculus.org>
parents:
1035
diff
changeset
|
64 #if defined(__APPLE__) && defined(__MACH__) |
1487
dc6b59e925a2
Cleaning up warnings on MacOS X
Sam Lantinga <slouken@libsdl.org>
parents:
1433
diff
changeset
|
65 /* conflicts with Quickdraw.h */ |
1133
609c060fd2a2
The MacOSX Carbon/Cocoa/X11 all in one library patch. Relevant emails:
Ryan C. Gordon <icculus@icculus.org>
parents:
1035
diff
changeset
|
66 #define Cursor X11Cursor |
609c060fd2a2
The MacOSX Carbon/Cocoa/X11 all in one library patch. Relevant emails:
Ryan C. Gordon <icculus@icculus.org>
parents:
1035
diff
changeset
|
67 #endif |
609c060fd2a2
The MacOSX Carbon/Cocoa/X11 all in one library patch. Relevant emails:
Ryan C. Gordon <icculus@icculus.org>
parents:
1035
diff
changeset
|
68 |
0 | 69 #include <X11/Xlib.h> |
70 #include <X11/Xatom.h> | |
71 | |
1133
609c060fd2a2
The MacOSX Carbon/Cocoa/X11 all in one library patch. Relevant emails:
Ryan C. Gordon <icculus@icculus.org>
parents:
1035
diff
changeset
|
72 #if defined(__APPLE__) && defined(__MACH__) |
1487
dc6b59e925a2
Cleaning up warnings on MacOS X
Sam Lantinga <slouken@libsdl.org>
parents:
1433
diff
changeset
|
73 /* matches the re-define above */ |
1133
609c060fd2a2
The MacOSX Carbon/Cocoa/X11 all in one library patch. Relevant emails:
Ryan C. Gordon <icculus@icculus.org>
parents:
1035
diff
changeset
|
74 #undef Cursor |
609c060fd2a2
The MacOSX Carbon/Cocoa/X11 all in one library patch. Relevant emails:
Ryan C. Gordon <icculus@icculus.org>
parents:
1035
diff
changeset
|
75 #endif |
609c060fd2a2
The MacOSX Carbon/Cocoa/X11 all in one library patch. Relevant emails:
Ryan C. Gordon <icculus@icculus.org>
parents:
1035
diff
changeset
|
76 |
4899
5d529386db73
attached is a patch to support DirectFB in include/SDL_syswm.h. It
Sam Lantinga <slouken@libsdl.org>
parents:
4895
diff
changeset
|
77 #endif /* defined(SDL_VIDEO_DRIVER_X11) */ |
5d529386db73
attached is a patch to support DirectFB in include/SDL_syswm.h. It
Sam Lantinga <slouken@libsdl.org>
parents:
4895
diff
changeset
|
78 |
5d529386db73
attached is a patch to support DirectFB in include/SDL_syswm.h. It
Sam Lantinga <slouken@libsdl.org>
parents:
4895
diff
changeset
|
79 #if defined(SDL_VIDEO_DRIVER_DIRECTFB) |
5d529386db73
attached is a patch to support DirectFB in include/SDL_syswm.h. It
Sam Lantinga <slouken@libsdl.org>
parents:
4895
diff
changeset
|
80 #include <directfb/directfb.h> |
5d529386db73
attached is a patch to support DirectFB in include/SDL_syswm.h. It
Sam Lantinga <slouken@libsdl.org>
parents:
4895
diff
changeset
|
81 #endif |
4900
69d9db65f248
Merged the Windows custom window system hooks into the union used by X11.
Sam Lantinga <slouken@libsdl.org>
parents:
4899
diff
changeset
|
82 |
69d9db65f248
Merged the Windows custom window system hooks into the union used by X11.
Sam Lantinga <slouken@libsdl.org>
parents:
4899
diff
changeset
|
83 #if defined(SDL_VIDEO_DRIVER_COCOA) |
69d9db65f248
Merged the Windows custom window system hooks into the union used by X11.
Sam Lantinga <slouken@libsdl.org>
parents:
4899
diff
changeset
|
84 #ifdef __OBJC__ |
69d9db65f248
Merged the Windows custom window system hooks into the union used by X11.
Sam Lantinga <slouken@libsdl.org>
parents:
4899
diff
changeset
|
85 #include <Cocoa/Cocoa.h> |
69d9db65f248
Merged the Windows custom window system hooks into the union used by X11.
Sam Lantinga <slouken@libsdl.org>
parents:
4899
diff
changeset
|
86 #else |
69d9db65f248
Merged the Windows custom window system hooks into the union used by X11.
Sam Lantinga <slouken@libsdl.org>
parents:
4899
diff
changeset
|
87 typedef struct _NSWindow NSWindow; |
69d9db65f248
Merged the Windows custom window system hooks into the union used by X11.
Sam Lantinga <slouken@libsdl.org>
parents:
4899
diff
changeset
|
88 #endif |
69d9db65f248
Merged the Windows custom window system hooks into the union used by X11.
Sam Lantinga <slouken@libsdl.org>
parents:
4899
diff
changeset
|
89 #endif |
69d9db65f248
Merged the Windows custom window system hooks into the union used by X11.
Sam Lantinga <slouken@libsdl.org>
parents:
4899
diff
changeset
|
90 |
5056
8b7988f42fcb
Added the ability to get the UIKit window through the SDL API.
Sam Lantinga <slouken@libsdl.org>
parents:
4903
diff
changeset
|
91 #if defined(SDL_VIDEO_DRIVER_UIKIT) |
8b7988f42fcb
Added the ability to get the UIKit window through the SDL API.
Sam Lantinga <slouken@libsdl.org>
parents:
4903
diff
changeset
|
92 #ifdef __OBJC__ |
8b7988f42fcb
Added the ability to get the UIKit window through the SDL API.
Sam Lantinga <slouken@libsdl.org>
parents:
4903
diff
changeset
|
93 #include <UIKit/UIKit.h> |
8b7988f42fcb
Added the ability to get the UIKit window through the SDL API.
Sam Lantinga <slouken@libsdl.org>
parents:
4903
diff
changeset
|
94 #else |
8b7988f42fcb
Added the ability to get the UIKit window through the SDL API.
Sam Lantinga <slouken@libsdl.org>
parents:
4903
diff
changeset
|
95 typedef struct _UIWindow UIWindow; |
8b7988f42fcb
Added the ability to get the UIKit window through the SDL API.
Sam Lantinga <slouken@libsdl.org>
parents:
4903
diff
changeset
|
96 #endif |
8b7988f42fcb
Added the ability to get the UIKit window through the SDL API.
Sam Lantinga <slouken@libsdl.org>
parents:
4903
diff
changeset
|
97 #endif |
8b7988f42fcb
Added the ability to get the UIKit window through the SDL API.
Sam Lantinga <slouken@libsdl.org>
parents:
4903
diff
changeset
|
98 |
3407
d3baf5ac4e37
Partial fix for bug #859
Sam Lantinga <slouken@libsdl.org>
parents:
3274
diff
changeset
|
99 /** |
4900
69d9db65f248
Merged the Windows custom window system hooks into the union used by X11.
Sam Lantinga <slouken@libsdl.org>
parents:
4899
diff
changeset
|
100 * These are the various supported windowing subsystems |
3407
d3baf5ac4e37
Partial fix for bug #859
Sam Lantinga <slouken@libsdl.org>
parents:
3274
diff
changeset
|
101 */ |
1895
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
1760
diff
changeset
|
102 typedef enum |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
1760
diff
changeset
|
103 { |
4900
69d9db65f248
Merged the Windows custom window system hooks into the union used by X11.
Sam Lantinga <slouken@libsdl.org>
parents:
4899
diff
changeset
|
104 SDL_SYSWM_UNKNOWN, |
69d9db65f248
Merged the Windows custom window system hooks into the union used by X11.
Sam Lantinga <slouken@libsdl.org>
parents:
4899
diff
changeset
|
105 SDL_SYSWM_WINDOWS, |
4899
5d529386db73
attached is a patch to support DirectFB in include/SDL_syswm.h. It
Sam Lantinga <slouken@libsdl.org>
parents:
4895
diff
changeset
|
106 SDL_SYSWM_X11, |
5d529386db73
attached is a patch to support DirectFB in include/SDL_syswm.h. It
Sam Lantinga <slouken@libsdl.org>
parents:
4895
diff
changeset
|
107 SDL_SYSWM_DIRECTFB, |
4900
69d9db65f248
Merged the Windows custom window system hooks into the union used by X11.
Sam Lantinga <slouken@libsdl.org>
parents:
4899
diff
changeset
|
108 SDL_SYSWM_COCOA, |
5056
8b7988f42fcb
Added the ability to get the UIKit window through the SDL API.
Sam Lantinga <slouken@libsdl.org>
parents:
4903
diff
changeset
|
109 SDL_SYSWM_UIKIT, |
0 | 110 } SDL_SYSWM_TYPE; |
111 | |
3407
d3baf5ac4e37
Partial fix for bug #859
Sam Lantinga <slouken@libsdl.org>
parents:
3274
diff
changeset
|
112 /** |
4900
69d9db65f248
Merged the Windows custom window system hooks into the union used by X11.
Sam Lantinga <slouken@libsdl.org>
parents:
4899
diff
changeset
|
113 * The custom event structure. |
3407
d3baf5ac4e37
Partial fix for bug #859
Sam Lantinga <slouken@libsdl.org>
parents:
3274
diff
changeset
|
114 */ |
1895
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
1760
diff
changeset
|
115 struct SDL_SysWMmsg |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
1760
diff
changeset
|
116 { |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
1760
diff
changeset
|
117 SDL_version version; |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
1760
diff
changeset
|
118 SDL_SYSWM_TYPE subsystem; |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
1760
diff
changeset
|
119 union |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
1760
diff
changeset
|
120 { |
5062 | 121 #if defined(SDL_VIDEO_DRIVER_WINDOWS) |
4900
69d9db65f248
Merged the Windows custom window system hooks into the union used by X11.
Sam Lantinga <slouken@libsdl.org>
parents:
4899
diff
changeset
|
122 struct { |
69d9db65f248
Merged the Windows custom window system hooks into the union used by X11.
Sam Lantinga <slouken@libsdl.org>
parents:
4899
diff
changeset
|
123 HWND hwnd; /**< The window for the message */ |
69d9db65f248
Merged the Windows custom window system hooks into the union used by X11.
Sam Lantinga <slouken@libsdl.org>
parents:
4899
diff
changeset
|
124 UINT msg; /**< The type of message */ |
69d9db65f248
Merged the Windows custom window system hooks into the union used by X11.
Sam Lantinga <slouken@libsdl.org>
parents:
4899
diff
changeset
|
125 WPARAM wParam; /**< WORD message parameter */ |
69d9db65f248
Merged the Windows custom window system hooks into the union used by X11.
Sam Lantinga <slouken@libsdl.org>
parents:
4899
diff
changeset
|
126 LPARAM lParam; /**< LONG message parameter */ |
69d9db65f248
Merged the Windows custom window system hooks into the union used by X11.
Sam Lantinga <slouken@libsdl.org>
parents:
4899
diff
changeset
|
127 } win; |
5065
7e4c7790700e
Fixed compile error on Mac OS X
Sam Lantinga <slouken@libsdl.org>
parents:
5063
diff
changeset
|
128 #endif |
7e4c7790700e
Fixed compile error on Mac OS X
Sam Lantinga <slouken@libsdl.org>
parents:
5063
diff
changeset
|
129 #if defined(SDL_VIDEO_DRIVER_X11) |
4900
69d9db65f248
Merged the Windows custom window system hooks into the union used by X11.
Sam Lantinga <slouken@libsdl.org>
parents:
4899
diff
changeset
|
130 struct { |
69d9db65f248
Merged the Windows custom window system hooks into the union used by X11.
Sam Lantinga <slouken@libsdl.org>
parents:
4899
diff
changeset
|
131 XEvent event; |
69d9db65f248
Merged the Windows custom window system hooks into the union used by X11.
Sam Lantinga <slouken@libsdl.org>
parents:
4899
diff
changeset
|
132 } x11; |
5065
7e4c7790700e
Fixed compile error on Mac OS X
Sam Lantinga <slouken@libsdl.org>
parents:
5063
diff
changeset
|
133 #endif |
7e4c7790700e
Fixed compile error on Mac OS X
Sam Lantinga <slouken@libsdl.org>
parents:
5063
diff
changeset
|
134 #if defined(SDL_VIDEO_DRIVER_DIRECTFB) |
4900
69d9db65f248
Merged the Windows custom window system hooks into the union used by X11.
Sam Lantinga <slouken@libsdl.org>
parents:
4899
diff
changeset
|
135 struct { |
69d9db65f248
Merged the Windows custom window system hooks into the union used by X11.
Sam Lantinga <slouken@libsdl.org>
parents:
4899
diff
changeset
|
136 DFBEvent event; |
69d9db65f248
Merged the Windows custom window system hooks into the union used by X11.
Sam Lantinga <slouken@libsdl.org>
parents:
4899
diff
changeset
|
137 } dfb; |
5065
7e4c7790700e
Fixed compile error on Mac OS X
Sam Lantinga <slouken@libsdl.org>
parents:
5063
diff
changeset
|
138 #endif |
7e4c7790700e
Fixed compile error on Mac OS X
Sam Lantinga <slouken@libsdl.org>
parents:
5063
diff
changeset
|
139 #if defined(SDL_VIDEO_DRIVER_COCOA) |
4900
69d9db65f248
Merged the Windows custom window system hooks into the union used by X11.
Sam Lantinga <slouken@libsdl.org>
parents:
4899
diff
changeset
|
140 struct |
69d9db65f248
Merged the Windows custom window system hooks into the union used by X11.
Sam Lantinga <slouken@libsdl.org>
parents:
4899
diff
changeset
|
141 { |
69d9db65f248
Merged the Windows custom window system hooks into the union used by X11.
Sam Lantinga <slouken@libsdl.org>
parents:
4899
diff
changeset
|
142 /* No Cocoa window events yet */ |
69d9db65f248
Merged the Windows custom window system hooks into the union used by X11.
Sam Lantinga <slouken@libsdl.org>
parents:
4899
diff
changeset
|
143 } cocoa; |
5065
7e4c7790700e
Fixed compile error on Mac OS X
Sam Lantinga <slouken@libsdl.org>
parents:
5063
diff
changeset
|
144 #endif |
7e4c7790700e
Fixed compile error on Mac OS X
Sam Lantinga <slouken@libsdl.org>
parents:
5063
diff
changeset
|
145 #if defined(SDL_VIDEO_DRIVER_UIKIT) |
5056
8b7988f42fcb
Added the ability to get the UIKit window through the SDL API.
Sam Lantinga <slouken@libsdl.org>
parents:
4903
diff
changeset
|
146 struct |
8b7988f42fcb
Added the ability to get the UIKit window through the SDL API.
Sam Lantinga <slouken@libsdl.org>
parents:
4903
diff
changeset
|
147 { |
8b7988f42fcb
Added the ability to get the UIKit window through the SDL API.
Sam Lantinga <slouken@libsdl.org>
parents:
4903
diff
changeset
|
148 /* No UIKit window events yet */ |
8b7988f42fcb
Added the ability to get the UIKit window through the SDL API.
Sam Lantinga <slouken@libsdl.org>
parents:
4903
diff
changeset
|
149 } uikit; |
5065
7e4c7790700e
Fixed compile error on Mac OS X
Sam Lantinga <slouken@libsdl.org>
parents:
5063
diff
changeset
|
150 #endif |
5063
5680976fb37a
You can't have an empty union in the structure...
Sam Lantinga <slouken@libsdl.org>
parents:
5062
diff
changeset
|
151 /* Can't have an empty union */ |
5680976fb37a
You can't have an empty union in the structure...
Sam Lantinga <slouken@libsdl.org>
parents:
5062
diff
changeset
|
152 int dummy; |
5056
8b7988f42fcb
Added the ability to get the UIKit window through the SDL API.
Sam Lantinga <slouken@libsdl.org>
parents:
4903
diff
changeset
|
153 } msg; |
0 | 154 }; |
155 | |
3407
d3baf5ac4e37
Partial fix for bug #859
Sam Lantinga <slouken@libsdl.org>
parents:
3274
diff
changeset
|
156 /** |
4900
69d9db65f248
Merged the Windows custom window system hooks into the union used by X11.
Sam Lantinga <slouken@libsdl.org>
parents:
4899
diff
changeset
|
157 * The custom window manager information structure. |
3407
d3baf5ac4e37
Partial fix for bug #859
Sam Lantinga <slouken@libsdl.org>
parents:
3274
diff
changeset
|
158 * |
d3baf5ac4e37
Partial fix for bug #859
Sam Lantinga <slouken@libsdl.org>
parents:
3274
diff
changeset
|
159 * When this structure is returned, it holds information about which |
d3baf5ac4e37
Partial fix for bug #859
Sam Lantinga <slouken@libsdl.org>
parents:
3274
diff
changeset
|
160 * low level system it is using, and will be one of SDL_SYSWM_TYPE. |
0 | 161 */ |
1895
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
1760
diff
changeset
|
162 struct SDL_SysWMinfo |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
1760
diff
changeset
|
163 { |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
1760
diff
changeset
|
164 SDL_version version; |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
1760
diff
changeset
|
165 SDL_SYSWM_TYPE subsystem; |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
1760
diff
changeset
|
166 union |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
1760
diff
changeset
|
167 { |
5062 | 168 #if defined(SDL_VIDEO_DRIVER_WINDOWS) |
4900
69d9db65f248
Merged the Windows custom window system hooks into the union used by X11.
Sam Lantinga <slouken@libsdl.org>
parents:
4899
diff
changeset
|
169 struct |
69d9db65f248
Merged the Windows custom window system hooks into the union used by X11.
Sam Lantinga <slouken@libsdl.org>
parents:
4899
diff
changeset
|
170 { |
4903
f50c7996d925
Documentation clarification
Sam Lantinga <slouken@libsdl.org>
parents:
4902
diff
changeset
|
171 HWND window; /**< The window handle */ |
4900
69d9db65f248
Merged the Windows custom window system hooks into the union used by X11.
Sam Lantinga <slouken@libsdl.org>
parents:
4899
diff
changeset
|
172 } win; |
5065
7e4c7790700e
Fixed compile error on Mac OS X
Sam Lantinga <slouken@libsdl.org>
parents:
5063
diff
changeset
|
173 #endif |
7e4c7790700e
Fixed compile error on Mac OS X
Sam Lantinga <slouken@libsdl.org>
parents:
5063
diff
changeset
|
174 #if defined(SDL_VIDEO_DRIVER_X11) |
1895
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
1760
diff
changeset
|
175 struct |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
1760
diff
changeset
|
176 { |
4900
69d9db65f248
Merged the Windows custom window system hooks into the union used by X11.
Sam Lantinga <slouken@libsdl.org>
parents:
4899
diff
changeset
|
177 Display *display; /**< The X11 display */ |
4903
f50c7996d925
Documentation clarification
Sam Lantinga <slouken@libsdl.org>
parents:
4902
diff
changeset
|
178 Window window; /**< The X11 window */ |
1895
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
1760
diff
changeset
|
179 } x11; |
5065
7e4c7790700e
Fixed compile error on Mac OS X
Sam Lantinga <slouken@libsdl.org>
parents:
5063
diff
changeset
|
180 #endif |
7e4c7790700e
Fixed compile error on Mac OS X
Sam Lantinga <slouken@libsdl.org>
parents:
5063
diff
changeset
|
181 #if defined(SDL_VIDEO_DRIVER_DIRECTFB) |
4899
5d529386db73
attached is a patch to support DirectFB in include/SDL_syswm.h. It
Sam Lantinga <slouken@libsdl.org>
parents:
4895
diff
changeset
|
182 struct |
5d529386db73
attached is a patch to support DirectFB in include/SDL_syswm.h. It
Sam Lantinga <slouken@libsdl.org>
parents:
4895
diff
changeset
|
183 { |
4903
f50c7996d925
Documentation clarification
Sam Lantinga <slouken@libsdl.org>
parents:
4902
diff
changeset
|
184 IDirectFB *dfb; /**< The directfb main interface */ |
f50c7996d925
Documentation clarification
Sam Lantinga <slouken@libsdl.org>
parents:
4902
diff
changeset
|
185 IDirectFBWindow *window; /**< The directfb window handle */ |
f50c7996d925
Documentation clarification
Sam Lantinga <slouken@libsdl.org>
parents:
4902
diff
changeset
|
186 IDirectFBSurface *surface; /**< The directfb client surface */ |
4900
69d9db65f248
Merged the Windows custom window system hooks into the union used by X11.
Sam Lantinga <slouken@libsdl.org>
parents:
4899
diff
changeset
|
187 } dfb; |
5065
7e4c7790700e
Fixed compile error on Mac OS X
Sam Lantinga <slouken@libsdl.org>
parents:
5063
diff
changeset
|
188 #endif |
7e4c7790700e
Fixed compile error on Mac OS X
Sam Lantinga <slouken@libsdl.org>
parents:
5063
diff
changeset
|
189 #if defined(SDL_VIDEO_DRIVER_COCOA) |
4900
69d9db65f248
Merged the Windows custom window system hooks into the union used by X11.
Sam Lantinga <slouken@libsdl.org>
parents:
4899
diff
changeset
|
190 struct |
69d9db65f248
Merged the Windows custom window system hooks into the union used by X11.
Sam Lantinga <slouken@libsdl.org>
parents:
4899
diff
changeset
|
191 { |
4903
f50c7996d925
Documentation clarification
Sam Lantinga <slouken@libsdl.org>
parents:
4902
diff
changeset
|
192 NSWindow *window; /* The Cocoa window */ |
4900
69d9db65f248
Merged the Windows custom window system hooks into the union used by X11.
Sam Lantinga <slouken@libsdl.org>
parents:
4899
diff
changeset
|
193 } cocoa; |
5065
7e4c7790700e
Fixed compile error on Mac OS X
Sam Lantinga <slouken@libsdl.org>
parents:
5063
diff
changeset
|
194 #endif |
7e4c7790700e
Fixed compile error on Mac OS X
Sam Lantinga <slouken@libsdl.org>
parents:
5063
diff
changeset
|
195 #if defined(SDL_VIDEO_DRIVER_UIKIT) |
5056
8b7988f42fcb
Added the ability to get the UIKit window through the SDL API.
Sam Lantinga <slouken@libsdl.org>
parents:
4903
diff
changeset
|
196 struct |
8b7988f42fcb
Added the ability to get the UIKit window through the SDL API.
Sam Lantinga <slouken@libsdl.org>
parents:
4903
diff
changeset
|
197 { |
8b7988f42fcb
Added the ability to get the UIKit window through the SDL API.
Sam Lantinga <slouken@libsdl.org>
parents:
4903
diff
changeset
|
198 UIWindow *window; /* The UIKit window */ |
8b7988f42fcb
Added the ability to get the UIKit window through the SDL API.
Sam Lantinga <slouken@libsdl.org>
parents:
4903
diff
changeset
|
199 } uikit; |
5065
7e4c7790700e
Fixed compile error on Mac OS X
Sam Lantinga <slouken@libsdl.org>
parents:
5063
diff
changeset
|
200 #endif |
5063
5680976fb37a
You can't have an empty union in the structure...
Sam Lantinga <slouken@libsdl.org>
parents:
5062
diff
changeset
|
201 /* Can't have an empty union */ |
5680976fb37a
You can't have an empty union in the structure...
Sam Lantinga <slouken@libsdl.org>
parents:
5062
diff
changeset
|
202 int dummy; |
5056
8b7988f42fcb
Added the ability to get the UIKit window through the SDL API.
Sam Lantinga <slouken@libsdl.org>
parents:
4903
diff
changeset
|
203 } info; |
1895
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
1760
diff
changeset
|
204 }; |
0 | 205 |
206 #endif /* SDL_PROTOTYPES_ONLY */ | |
207 | |
1895
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
1760
diff
changeset
|
208 typedef struct SDL_SysWMinfo SDL_SysWMinfo; |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
1760
diff
changeset
|
209 |
0 | 210 /* Function prototypes */ |
1895
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
1760
diff
changeset
|
211 /** |
3407
d3baf5ac4e37
Partial fix for bug #859
Sam Lantinga <slouken@libsdl.org>
parents:
3274
diff
changeset
|
212 * \brief This function allows access to driver-dependent window information. |
d3baf5ac4e37
Partial fix for bug #859
Sam Lantinga <slouken@libsdl.org>
parents:
3274
diff
changeset
|
213 * |
4530
4069c65b01f2
Fixed typo in the documentation
Sam Lantinga <slouken@libsdl.org>
parents:
4510
diff
changeset
|
214 * \param window The window about which information is being requested |
3407
d3baf5ac4e37
Partial fix for bug #859
Sam Lantinga <slouken@libsdl.org>
parents:
3274
diff
changeset
|
215 * \param info This structure must be initialized with the SDL version, and is |
d3baf5ac4e37
Partial fix for bug #859
Sam Lantinga <slouken@libsdl.org>
parents:
3274
diff
changeset
|
216 * then filled in with information about the given window. |
d3baf5ac4e37
Partial fix for bug #859
Sam Lantinga <slouken@libsdl.org>
parents:
3274
diff
changeset
|
217 * |
d3baf5ac4e37
Partial fix for bug #859
Sam Lantinga <slouken@libsdl.org>
parents:
3274
diff
changeset
|
218 * \return SDL_TRUE if the function is implemented and the version member of |
d3baf5ac4e37
Partial fix for bug #859
Sam Lantinga <slouken@libsdl.org>
parents:
3274
diff
changeset
|
219 * the \c info struct is valid, SDL_FALSE otherwise. |
d3baf5ac4e37
Partial fix for bug #859
Sam Lantinga <slouken@libsdl.org>
parents:
3274
diff
changeset
|
220 * |
d3baf5ac4e37
Partial fix for bug #859
Sam Lantinga <slouken@libsdl.org>
parents:
3274
diff
changeset
|
221 * You typically use this function like this: |
d3baf5ac4e37
Partial fix for bug #859
Sam Lantinga <slouken@libsdl.org>
parents:
3274
diff
changeset
|
222 * \code |
4895
fd27410a5db0
Fixed documentation typo
Sam Lantinga <slouken@libsdl.org>
parents:
4530
diff
changeset
|
223 * SDL_SysWMinfo info; |
3407
d3baf5ac4e37
Partial fix for bug #859
Sam Lantinga <slouken@libsdl.org>
parents:
3274
diff
changeset
|
224 * SDL_VERSION(&info.version); |
d3baf5ac4e37
Partial fix for bug #859
Sam Lantinga <slouken@libsdl.org>
parents:
3274
diff
changeset
|
225 * if ( SDL_GetWindowWMInfo(&info) ) { ... } |
d3baf5ac4e37
Partial fix for bug #859
Sam Lantinga <slouken@libsdl.org>
parents:
3274
diff
changeset
|
226 * \endcode |
0 | 227 */ |
3685
64ce267332c6
Switched from SDL_WindowID and SDL_TextureID to SDL_Window* and SDL_Texture* for code simplicity and improved performance.
Sam Lantinga <slouken@libsdl.org>
parents:
3407
diff
changeset
|
228 extern DECLSPEC SDL_bool SDLCALL SDL_GetWindowWMInfo(SDL_Window * window, |
1895
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
1760
diff
changeset
|
229 SDL_SysWMinfo * info); |
0 | 230 |
231 | |
232 /* Ends C function definitions when using C++ */ | |
233 #ifdef __cplusplus | |
1895
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
1760
diff
changeset
|
234 /* *INDENT-OFF* */ |
0 | 235 } |
1895
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
1760
diff
changeset
|
236 /* *INDENT-ON* */ |
0 | 237 #endif |
238 #include "close_code.h" | |
239 | |
240 #endif /* _SDL_syswm_h */ | |
1895
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
1760
diff
changeset
|
241 |
c121d94672cb
SDL 1.2 is moving to a branch, and SDL 1.3 is becoming the head.
Sam Lantinga <slouken@libsdl.org>
parents:
1760
diff
changeset
|
242 /* vi: set ts=4 sw=4 expandtab: */ |