Mercurial > sdl-ios-xcode
annotate src/video/windows/SDL_windowsvideo.h @ 5092:327f181542f1
Include windows.h in a single point in the source, so we can be consistent about the definition of UNICODE and have core utility functions for Windows that all modules can share.
I think this also fixes the bug relating to non-latin characters in filenames, since UNICODE wasn't defined in SDL_rwops.c
author | Sam Lantinga <slouken@libsdl.org> |
---|---|
date | Mon, 24 Jan 2011 21:20:30 -0800 |
parents | c2539ff054c8 |
children | 57851a238c8f |
rev | line source |
---|---|
4759
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
1 /* |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
2 SDL - Simple DirectMedia Layer |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
3 Copyright (C) 1997-2010 Sam Lantinga |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
4 |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
5 This library is free software; you can redistribute it and/or |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
6 modify it under the terms of the GNU Lesser General Public |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
7 License as published by the Free Software Foundation; either |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
8 version 2.1 of the License, or (at your option) any later version. |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
9 |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
10 This library is distributed in the hope that it will be useful, |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
11 but WITHOUT ANY WARRANTY; without even the implied warranty of |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
13 Lesser General Public License for more details. |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
14 |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
15 You should have received a copy of the GNU Lesser General Public |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
16 License along with this library; if not, write to the Free Software |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
17 Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
18 |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
19 Sam Lantinga |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
20 slouken@libsdl.org |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
21 */ |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
22 #include "SDL_config.h" |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
23 |
5062 | 24 #ifndef _SDL_windowsvideo_h |
25 #define _SDL_windowsvideo_h | |
4759
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
26 |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
27 #include "../SDL_sysvideo.h" |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
28 |
5092
327f181542f1
Include windows.h in a single point in the source, so we can be consistent about the definition of UNICODE and have core utility functions for Windows that all modules can share.
Sam Lantinga <slouken@libsdl.org>
parents:
5088
diff
changeset
|
29 #include "../../core/windows/SDL_windows.h" |
4759
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
30 |
5088
c2539ff054c8
Fixed compiling on Windows Mobile SDK 5.0 with Visual Studio 2008
Sam Lantinga <slouken@libsdl.org>
parents:
5083
diff
changeset
|
31 #if defined(_MSC_VER) && !defined(_WIN32_WCE) |
4759
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
32 #include <msctf.h> |
4893
b2e434e0553b
Fixed all MinGW problems (except libraries not added to build yet).
Daniel Wyatt <Daniel.Wyatt@gmail.com>
parents:
4892
diff
changeset
|
33 #else |
b2e434e0553b
Fixed all MinGW problems (except libraries not added to build yet).
Daniel Wyatt <Daniel.Wyatt@gmail.com>
parents:
4892
diff
changeset
|
34 #include "SDL_msctf.h" |
b2e434e0553b
Fixed all MinGW problems (except libraries not added to build yet).
Daniel Wyatt <Daniel.Wyatt@gmail.com>
parents:
4892
diff
changeset
|
35 #endif |
b2e434e0553b
Fixed all MinGW problems (except libraries not added to build yet).
Daniel Wyatt <Daniel.Wyatt@gmail.com>
parents:
4892
diff
changeset
|
36 |
4892
9e1f6d3fb870
Added imm.h include, will be needed on MinGW.
Daniel Wyatt <Daniel.Wyatt@gmail.com>
parents:
4868
diff
changeset
|
37 #include <imm.h> |
4759
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
38 |
4912
37576cdf6751
Add variables needed for win32 candidate list support.
Daniel Wyatt <Daniel.Wyatt@gmail.com>
parents:
4893
diff
changeset
|
39 #define MAX_CANDLIST 10 |
37576cdf6751
Add variables needed for win32 candidate list support.
Daniel Wyatt <Daniel.Wyatt@gmail.com>
parents:
4893
diff
changeset
|
40 #define MAX_CANDLENGTH 256 |
37576cdf6751
Add variables needed for win32 candidate list support.
Daniel Wyatt <Daniel.Wyatt@gmail.com>
parents:
4893
diff
changeset
|
41 |
4759
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
42 #if SDL_VIDEO_RENDER_D3D |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
43 //#include <d3d9.h> |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
44 #define D3D_DEBUG_INFO |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
45 #include "d3d9.h" |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
46 #endif |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
47 |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
48 #if SDL_VIDEO_RENDER_DDRAW |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
49 /* WIN32_LEAN_AND_MEAN was defined, so we have to include this by hand */ |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
50 #include <objbase.h> |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
51 #include "ddraw.h" |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
52 #endif |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
53 |
5062 | 54 #include "SDL_windowsclipboard.h" |
55 #include "SDL_windowsevents.h" | |
56 #include "SDL_windowsgamma.h" | |
57 #include "SDL_windowskeyboard.h" | |
58 #include "SDL_windowsmodes.h" | |
59 #include "SDL_windowsmouse.h" | |
60 #include "SDL_windowsopengl.h" | |
61 #include "SDL_windowswindow.h" | |
4759
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
62 #include "SDL_events.h" |
5092
327f181542f1
Include windows.h in a single point in the source, so we can be consistent about the definition of UNICODE and have core utility functions for Windows that all modules can share.
Sam Lantinga <slouken@libsdl.org>
parents:
5088
diff
changeset
|
63 #include "SDL_loadso.h" |
4759
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
64 |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
65 |
4569 | 66 enum { RENDER_NONE, RENDER_D3D, RENDER_DDRAW, RENDER_GDI, RENDER_GAPI, RENDER_RAW }; |
67 | |
4919
716b2cbf4c9e
First pass at Windows multi-touch gesture support
Sam Lantinga <slouken@libsdl.org>
parents:
4912
diff
changeset
|
68 #if WINVER < 0x0601 |
716b2cbf4c9e
First pass at Windows multi-touch gesture support
Sam Lantinga <slouken@libsdl.org>
parents:
4912
diff
changeset
|
69 /* Touch input definitions */ |
716b2cbf4c9e
First pass at Windows multi-touch gesture support
Sam Lantinga <slouken@libsdl.org>
parents:
4912
diff
changeset
|
70 #define TWF_FINETOUCH 1 |
716b2cbf4c9e
First pass at Windows multi-touch gesture support
Sam Lantinga <slouken@libsdl.org>
parents:
4912
diff
changeset
|
71 #define TWF_WANTPALM 2 |
716b2cbf4c9e
First pass at Windows multi-touch gesture support
Sam Lantinga <slouken@libsdl.org>
parents:
4912
diff
changeset
|
72 |
716b2cbf4c9e
First pass at Windows multi-touch gesture support
Sam Lantinga <slouken@libsdl.org>
parents:
4912
diff
changeset
|
73 #define TOUCHEVENTF_MOVE 0x0001 |
716b2cbf4c9e
First pass at Windows multi-touch gesture support
Sam Lantinga <slouken@libsdl.org>
parents:
4912
diff
changeset
|
74 #define TOUCHEVENTF_DOWN 0x0002 |
716b2cbf4c9e
First pass at Windows multi-touch gesture support
Sam Lantinga <slouken@libsdl.org>
parents:
4912
diff
changeset
|
75 #define TOUCHEVENTF_UP 0x0004 |
716b2cbf4c9e
First pass at Windows multi-touch gesture support
Sam Lantinga <slouken@libsdl.org>
parents:
4912
diff
changeset
|
76 |
716b2cbf4c9e
First pass at Windows multi-touch gesture support
Sam Lantinga <slouken@libsdl.org>
parents:
4912
diff
changeset
|
77 DECLARE_HANDLE(HTOUCHINPUT); |
716b2cbf4c9e
First pass at Windows multi-touch gesture support
Sam Lantinga <slouken@libsdl.org>
parents:
4912
diff
changeset
|
78 |
5038 | 79 typedef struct _TOUCHINPUT { |
80 LONG x; | |
81 LONG y; | |
82 HANDLE hSource; | |
83 DWORD dwID; | |
84 DWORD dwFlags; | |
85 DWORD dwMask; | |
86 DWORD dwTime; | |
87 ULONG_PTR dwExtraInfo; | |
88 DWORD cxContact; | |
89 DWORD cyContact; | |
4919
716b2cbf4c9e
First pass at Windows multi-touch gesture support
Sam Lantinga <slouken@libsdl.org>
parents:
4912
diff
changeset
|
90 } TOUCHINPUT, *PTOUCHINPUT; |
716b2cbf4c9e
First pass at Windows multi-touch gesture support
Sam Lantinga <slouken@libsdl.org>
parents:
4912
diff
changeset
|
91 |
716b2cbf4c9e
First pass at Windows multi-touch gesture support
Sam Lantinga <slouken@libsdl.org>
parents:
4912
diff
changeset
|
92 #endif /* WINVER < 0x0601 */ |
716b2cbf4c9e
First pass at Windows multi-touch gesture support
Sam Lantinga <slouken@libsdl.org>
parents:
4912
diff
changeset
|
93 |
4569 | 94 typedef BOOL (*PFNSHFullScreen)(HWND, DWORD); |
95 typedef void (*PFCoordTransform)(SDL_Window*, POINT*); | |
96 | |
4759
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
97 typedef struct |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
98 { |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
99 void **lpVtbl; |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
100 int refcount; |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
101 void *data; |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
102 } TSFSink; |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
103 |
4892
9e1f6d3fb870
Added imm.h include, will be needed on MinGW.
Daniel Wyatt <Daniel.Wyatt@gmail.com>
parents:
4868
diff
changeset
|
104 /* Definition from Win98DDK version of IMM.H */ |
4759
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
105 typedef struct tagINPUTCONTEXT2 { |
4912
37576cdf6751
Add variables needed for win32 candidate list support.
Daniel Wyatt <Daniel.Wyatt@gmail.com>
parents:
4893
diff
changeset
|
106 HWND hWnd; |
37576cdf6751
Add variables needed for win32 candidate list support.
Daniel Wyatt <Daniel.Wyatt@gmail.com>
parents:
4893
diff
changeset
|
107 BOOL fOpen; |
37576cdf6751
Add variables needed for win32 candidate list support.
Daniel Wyatt <Daniel.Wyatt@gmail.com>
parents:
4893
diff
changeset
|
108 POINT ptStatusWndPos; |
37576cdf6751
Add variables needed for win32 candidate list support.
Daniel Wyatt <Daniel.Wyatt@gmail.com>
parents:
4893
diff
changeset
|
109 POINT ptSoftKbdPos; |
37576cdf6751
Add variables needed for win32 candidate list support.
Daniel Wyatt <Daniel.Wyatt@gmail.com>
parents:
4893
diff
changeset
|
110 DWORD fdwConversion; |
37576cdf6751
Add variables needed for win32 candidate list support.
Daniel Wyatt <Daniel.Wyatt@gmail.com>
parents:
4893
diff
changeset
|
111 DWORD fdwSentence; |
37576cdf6751
Add variables needed for win32 candidate list support.
Daniel Wyatt <Daniel.Wyatt@gmail.com>
parents:
4893
diff
changeset
|
112 union { |
37576cdf6751
Add variables needed for win32 candidate list support.
Daniel Wyatt <Daniel.Wyatt@gmail.com>
parents:
4893
diff
changeset
|
113 LOGFONTA A; |
37576cdf6751
Add variables needed for win32 candidate list support.
Daniel Wyatt <Daniel.Wyatt@gmail.com>
parents:
4893
diff
changeset
|
114 LOGFONTW W; |
4892
9e1f6d3fb870
Added imm.h include, will be needed on MinGW.
Daniel Wyatt <Daniel.Wyatt@gmail.com>
parents:
4868
diff
changeset
|
115 } lfFont; |
4912
37576cdf6751
Add variables needed for win32 candidate list support.
Daniel Wyatt <Daniel.Wyatt@gmail.com>
parents:
4893
diff
changeset
|
116 COMPOSITIONFORM cfCompForm; |
37576cdf6751
Add variables needed for win32 candidate list support.
Daniel Wyatt <Daniel.Wyatt@gmail.com>
parents:
4893
diff
changeset
|
117 CANDIDATEFORM cfCandForm[4]; |
37576cdf6751
Add variables needed for win32 candidate list support.
Daniel Wyatt <Daniel.Wyatt@gmail.com>
parents:
4893
diff
changeset
|
118 HIMCC hCompStr; |
37576cdf6751
Add variables needed for win32 candidate list support.
Daniel Wyatt <Daniel.Wyatt@gmail.com>
parents:
4893
diff
changeset
|
119 HIMCC hCandInfo; |
37576cdf6751
Add variables needed for win32 candidate list support.
Daniel Wyatt <Daniel.Wyatt@gmail.com>
parents:
4893
diff
changeset
|
120 HIMCC hGuideLine; |
37576cdf6751
Add variables needed for win32 candidate list support.
Daniel Wyatt <Daniel.Wyatt@gmail.com>
parents:
4893
diff
changeset
|
121 HIMCC hPrivate; |
37576cdf6751
Add variables needed for win32 candidate list support.
Daniel Wyatt <Daniel.Wyatt@gmail.com>
parents:
4893
diff
changeset
|
122 DWORD dwNumMsgBuf; |
37576cdf6751
Add variables needed for win32 candidate list support.
Daniel Wyatt <Daniel.Wyatt@gmail.com>
parents:
4893
diff
changeset
|
123 HIMCC hMsgBuf; |
37576cdf6751
Add variables needed for win32 candidate list support.
Daniel Wyatt <Daniel.Wyatt@gmail.com>
parents:
4893
diff
changeset
|
124 DWORD fdwInit; |
37576cdf6751
Add variables needed for win32 candidate list support.
Daniel Wyatt <Daniel.Wyatt@gmail.com>
parents:
4893
diff
changeset
|
125 DWORD dwReserve[3]; |
4892
9e1f6d3fb870
Added imm.h include, will be needed on MinGW.
Daniel Wyatt <Daniel.Wyatt@gmail.com>
parents:
4868
diff
changeset
|
126 } INPUTCONTEXT2, *PINPUTCONTEXT2, NEAR *NPINPUTCONTEXT2, FAR *LPINPUTCONTEXT2; |
4759
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
127 |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
128 /* Private display data */ |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
129 |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
130 typedef struct SDL_VideoData |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
131 { |
4569 | 132 int render; |
133 | |
4759
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
134 #if SDL_VIDEO_RENDER_D3D |
5092
327f181542f1
Include windows.h in a single point in the source, so we can be consistent about the definition of UNICODE and have core utility functions for Windows that all modules can share.
Sam Lantinga <slouken@libsdl.org>
parents:
5088
diff
changeset
|
135 void* d3dDLL; |
4759
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
136 IDirect3D9 *d3d; |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
137 #endif |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
138 #if SDL_VIDEO_RENDER_DDRAW |
5092
327f181542f1
Include windows.h in a single point in the source, so we can be consistent about the definition of UNICODE and have core utility functions for Windows that all modules can share.
Sam Lantinga <slouken@libsdl.org>
parents:
5088
diff
changeset
|
139 void* ddrawDLL; |
4759
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
140 IDirectDraw *ddraw; |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
141 #endif |
4569 | 142 #ifdef _WIN32_WCE |
5092
327f181542f1
Include windows.h in a single point in the source, so we can be consistent about the definition of UNICODE and have core utility functions for Windows that all modules can share.
Sam Lantinga <slouken@libsdl.org>
parents:
5088
diff
changeset
|
143 void* hAygShell; |
4569 | 144 PFNSHFullScreen SHFullScreen; |
145 PFCoordTransform CoordTransform; | |
146 #endif | |
4759
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
147 |
5083 | 148 const SDL_ScanCode *key_layout; |
4919
716b2cbf4c9e
First pass at Windows multi-touch gesture support
Sam Lantinga <slouken@libsdl.org>
parents:
4912
diff
changeset
|
149 DWORD clipboard_count; |
716b2cbf4c9e
First pass at Windows multi-touch gesture support
Sam Lantinga <slouken@libsdl.org>
parents:
4912
diff
changeset
|
150 |
716b2cbf4c9e
First pass at Windows multi-touch gesture support
Sam Lantinga <slouken@libsdl.org>
parents:
4912
diff
changeset
|
151 /* Touch input functions */ |
5092
327f181542f1
Include windows.h in a single point in the source, so we can be consistent about the definition of UNICODE and have core utility functions for Windows that all modules can share.
Sam Lantinga <slouken@libsdl.org>
parents:
5088
diff
changeset
|
152 void* userDLL; |
4919
716b2cbf4c9e
First pass at Windows multi-touch gesture support
Sam Lantinga <slouken@libsdl.org>
parents:
4912
diff
changeset
|
153 BOOL (WINAPI *CloseTouchInputHandle)( HTOUCHINPUT ); |
716b2cbf4c9e
First pass at Windows multi-touch gesture support
Sam Lantinga <slouken@libsdl.org>
parents:
4912
diff
changeset
|
154 BOOL (WINAPI *GetTouchInputInfo)( HTOUCHINPUT, UINT, PTOUCHINPUT, int ); |
5038 | 155 BOOL (WINAPI *RegisterTouchWindow)( HWND, ULONG ); |
4759
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
156 |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
157 SDL_bool ime_com_initialized; |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
158 struct ITfThreadMgr *ime_threadmgr; |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
159 SDL_bool ime_initialized; |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
160 SDL_bool ime_enabled; |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
161 SDL_bool ime_available; |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
162 HWND ime_hwnd_main; |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
163 HWND ime_hwnd_current; |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
164 HIMC ime_himc; |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
165 |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
166 WCHAR ime_composition[SDL_TEXTEDITINGEVENT_TEXT_SIZE]; |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
167 WCHAR ime_readingstring[16]; |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
168 int ime_cursor; |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
169 |
4912
37576cdf6751
Add variables needed for win32 candidate list support.
Daniel Wyatt <Daniel.Wyatt@gmail.com>
parents:
4893
diff
changeset
|
170 SDL_bool ime_candlist; |
37576cdf6751
Add variables needed for win32 candidate list support.
Daniel Wyatt <Daniel.Wyatt@gmail.com>
parents:
4893
diff
changeset
|
171 WCHAR ime_candidates[MAX_CANDLIST][MAX_CANDLENGTH]; |
37576cdf6751
Add variables needed for win32 candidate list support.
Daniel Wyatt <Daniel.Wyatt@gmail.com>
parents:
4893
diff
changeset
|
172 DWORD ime_candcount; |
37576cdf6751
Add variables needed for win32 candidate list support.
Daniel Wyatt <Daniel.Wyatt@gmail.com>
parents:
4893
diff
changeset
|
173 DWORD ime_candref; |
37576cdf6751
Add variables needed for win32 candidate list support.
Daniel Wyatt <Daniel.Wyatt@gmail.com>
parents:
4893
diff
changeset
|
174 DWORD ime_candsel; |
37576cdf6751
Add variables needed for win32 candidate list support.
Daniel Wyatt <Daniel.Wyatt@gmail.com>
parents:
4893
diff
changeset
|
175 UINT ime_candpgsize; |
37576cdf6751
Add variables needed for win32 candidate list support.
Daniel Wyatt <Daniel.Wyatt@gmail.com>
parents:
4893
diff
changeset
|
176 int ime_candlistindexbase; |
37576cdf6751
Add variables needed for win32 candidate list support.
Daniel Wyatt <Daniel.Wyatt@gmail.com>
parents:
4893
diff
changeset
|
177 SDL_bool ime_candvertical; |
37576cdf6751
Add variables needed for win32 candidate list support.
Daniel Wyatt <Daniel.Wyatt@gmail.com>
parents:
4893
diff
changeset
|
178 |
37576cdf6751
Add variables needed for win32 candidate list support.
Daniel Wyatt <Daniel.Wyatt@gmail.com>
parents:
4893
diff
changeset
|
179 SDL_Texture *ime_candtex; |
37576cdf6751
Add variables needed for win32 candidate list support.
Daniel Wyatt <Daniel.Wyatt@gmail.com>
parents:
4893
diff
changeset
|
180 SDL_bool ime_dirty; |
37576cdf6751
Add variables needed for win32 candidate list support.
Daniel Wyatt <Daniel.Wyatt@gmail.com>
parents:
4893
diff
changeset
|
181 SDL_Rect ime_rect; |
37576cdf6751
Add variables needed for win32 candidate list support.
Daniel Wyatt <Daniel.Wyatt@gmail.com>
parents:
4893
diff
changeset
|
182 SDL_Rect ime_candlistrect; |
37576cdf6751
Add variables needed for win32 candidate list support.
Daniel Wyatt <Daniel.Wyatt@gmail.com>
parents:
4893
diff
changeset
|
183 int ime_winwidth; |
37576cdf6751
Add variables needed for win32 candidate list support.
Daniel Wyatt <Daniel.Wyatt@gmail.com>
parents:
4893
diff
changeset
|
184 int ime_winheight; |
37576cdf6751
Add variables needed for win32 candidate list support.
Daniel Wyatt <Daniel.Wyatt@gmail.com>
parents:
4893
diff
changeset
|
185 |
4759
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
186 HKL ime_hkl; |
5092
327f181542f1
Include windows.h in a single point in the source, so we can be consistent about the definition of UNICODE and have core utility functions for Windows that all modules can share.
Sam Lantinga <slouken@libsdl.org>
parents:
5088
diff
changeset
|
187 void* ime_himm32; |
4759
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
188 UINT (WINAPI *GetReadingString)(HIMC himc, UINT uReadingBufLen, LPWSTR lpwReadingBuf, PINT pnErrorIndex, BOOL *pfIsVertical, PUINT puMaxReadingLen); |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
189 BOOL (WINAPI *ShowReadingWindow)(HIMC himc, BOOL bShow); |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
190 LPINPUTCONTEXT2 (WINAPI *ImmLockIMC)(HIMC himc); |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
191 BOOL (WINAPI *ImmUnlockIMC)(HIMC himc); |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
192 LPVOID (WINAPI *ImmLockIMCC)(HIMCC himcc); |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
193 BOOL (WINAPI *ImmUnlockIMCC)(HIMCC himcc); |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
194 |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
195 SDL_bool ime_uiless; |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
196 struct ITfThreadMgrEx *ime_threadmgrex; |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
197 DWORD ime_uielemsinkcookie; |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
198 DWORD ime_alpnsinkcookie; |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
199 DWORD ime_openmodesinkcookie; |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
200 DWORD ime_convmodesinkcookie; |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
201 TSFSink *ime_uielemsink; |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
202 TSFSink *ime_ippasink; |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
203 } SDL_VideoData; |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
204 |
5062 | 205 #endif /* _SDL_windowsvideo_h */ |
4759
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
206 |
863ba7d1f029
Large commit with initial reading string support, TSF UILess code, etc.
dewyatt
parents:
4755
diff
changeset
|
207 /* vi: set ts=4 sw=4 expandtab: */ |