zenilib: zenilib/jni/external/sdl/src/video/windows/SDL_windowsvideo.h Source File

zenilib 0.5.3.0

- Main Page
- Modules
- Namespaces
- Classes
- Files

- File List
- File Members

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
SDL_windowsvideo.h
Go to the documentation of this file.
1 /*
2 Simple DirectMedia Layer
3 Copyright (C) 1997-2013 Sam Lantinga <slouken@libsdl.org>
4
5 This software is provided 'as-is', without any express or implied
6 warranty. In no event will the authors be held liable for any damages
7 arising from the use of this software.
8
9 Permission is granted to anyone to use this software for any purpose,
10 including commercial applications, and to alter it and redistribute it
11 freely, subject to the following restrictions:
12
13 1. The origin of this software must not be misrepresented; you must not
14 claim that you wrote the original software. If you use this software
15 in a product, an acknowledgment in the product documentation would be
16 appreciated but is not required.
17 2. Altered source versions must be plainly marked as such, and must not be
18 misrepresented as being the original software.
19 3. This notice may not be removed or altered from any source distribution.
20 */
21 #include "SDL_config.h"
22
23 #ifndef _SDL_windowsvideo_h
24 #define _SDL_windowsvideo_h
25
26 #include "../SDL_sysvideo.h"
27
28 #include "../../core/windows/SDL_windows.h"
29
30 #if defined(_MSC_VER)
31 #include <msctf.h>
32 #else
33 #include "SDL_msctf.h"
34 #endif
35
36 #include <imm.h>
37
38 #define MAX_CANDLIST 10
39 #define MAX_CANDLENGTH 256
40
41 #include "SDL_windowsclipboard.h"
42 #include "SDL_windowsevents.h"
43 #include "SDL_windowskeyboard.h"
44 #include "SDL_windowsmodes.h"
45 #include "SDL_windowsmouse.h"
46 #include "SDL_windowsopengl.h"
47 #include "SDL_windowswindow.h"
48 #include "SDL_events.h"
49 #include "SDL_loadso.h"
50
51
52 #if WINVER < 0x0601
53 /* Touch input definitions */
54 #define TWF_FINETOUCH 1
55 #define TWF_WANTPALM 2
56
57 #define TOUCHEVENTF_MOVE 0x0001
58 #define TOUCHEVENTF_DOWN 0x0002
59 #define TOUCHEVENTF_UP 0x0004
60
61 DECLARE_HANDLE(HTOUCHINPUT);
62
63 typedef struct _TOUCHINPUT {
64 LONG x;
65 LONG y;
66 HANDLE hSource;
67 DWORD dwID;
68 DWORD dwFlags;
69 DWORD dwMask;
70 DWORD dwTime;
71 ULONG_PTR dwExtraInfo;
72 DWORD cxContact;
73 DWORD cyContact;
74 } TOUCHINPUT, *PTOUCHINPUT;
75
76 #endif /* WINVER < 0x0601 */
77
78 typedef BOOL (*PFNSHFullScreen)(HWND, DWORD);
79 typedef void (*PFCoordTransform)(SDL_Window*, POINT*);
80
81 typedef struct
82 {
83 void **lpVtbl;
84 int refcount;
85 void *data;
86 } TSFSink;
87
88 /* Definition from Win98DDK version of IMM.H */
89 typedef struct tagINPUTCONTEXT2 {
90 HWND hWnd;
91 BOOL fOpen;
92 POINT ptStatusWndPos;
93 POINT ptSoftKbdPos;
94 DWORD fdwConversion;
95 DWORD fdwSentence;
96 union {
97 LOGFONTA A;
98 LOGFONTW W;
99 } lfFont;
100 COMPOSITIONFORM cfCompForm;
101 CANDIDATEFORM cfCandForm[4];
102 HIMCC hCompStr;
103 HIMCC hCandInfo;
104 HIMCC hGuideLine;
105 HIMCC hPrivate;
106 DWORD dwNumMsgBuf;
107 HIMCC hMsgBuf;
108 DWORD fdwInit;
109 DWORD dwReserve[3];
110 } INPUTCONTEXT2, *PINPUTCONTEXT2, NEAR *NPINPUTCONTEXT2, FAR *LPINPUTCONTEXT2;
111
112 /* Private display data */
113
114 typedef struct SDL_VideoData
115 {
116 int render;
117
118 DWORD clipboard_count;
119
120 /* Touch input functions */
121 void* userDLL;
122 BOOL (WINAPI *CloseTouchInputHandle)( HTOUCHINPUT );
123 BOOL (WINAPI *GetTouchInputInfo)( HTOUCHINPUT, UINT, PTOUCHINPUT, int );
124 BOOL (WINAPI *RegisterTouchWindow)( HWND, ULONG );
125
126 SDL_bool ime_com_initialized;
127 struct ITfThreadMgr *ime_threadmgr;
128 SDL_bool ime_initialized;
129 SDL_bool ime_enabled;
130 SDL_bool ime_available;
131 HWND ime_hwnd_main;
132 HWND ime_hwnd_current;
133 HIMC ime_himc;
134
135 WCHAR ime_composition[SDL_TEXTEDITINGEVENT_TEXT_SIZE];
136 WCHAR ime_readingstring[16];
137 int ime_cursor;
138
139 SDL_bool ime_candlist;
140 WCHAR ime_candidates[MAX_CANDLIST][MAX_CANDLENGTH];
141 DWORD ime_candcount;
142 DWORD ime_candref;
143 DWORD ime_candsel;
144 UINT ime_candpgsize;
145 int ime_candlistindexbase;
146 SDL_bool ime_candvertical;
147
148 SDL_bool ime_dirty;
149 SDL_Rect ime_rect;
150 SDL_Rect ime_candlistrect;
151 int ime_winwidth;
152 int ime_winheight;
153
154 HKL ime_hkl;
155 void* ime_himm32;
156 UINT (WINAPI *GetReadingString)(HIMC himc, UINT uReadingBufLen, LPWSTR lpwReadingBuf, PINT pnErrorIndex, BOOL *pfIsVertical, PUINT puMaxReadingLen);
157 BOOL (WINAPI *ShowReadingWindow)(HIMC himc, BOOL bShow);
158 LPINPUTCONTEXT2 (WINAPI *ImmLockIMC)(HIMC himc);
159 BOOL (WINAPI *ImmUnlockIMC)(HIMC himc);
160 LPVOID (WINAPI *ImmLockIMCC)(HIMCC himcc);
161 BOOL (WINAPI *ImmUnlockIMCC)(HIMCC himcc);
162
163 SDL_bool ime_uiless;
164 struct ITfThreadMgrEx *ime_threadmgrex;
165 DWORD ime_uielemsinkcookie;
166 DWORD ime_alpnsinkcookie;
167 DWORD ime_openmodesinkcookie;
168 DWORD ime_convmodesinkcookie;
169 TSFSink *ime_uielemsink;
170 TSFSink *ime_ippasink;
171 } SDL_VideoData;
172
173
174 typedef struct IDirect3D9 IDirect3D9;
175 extern SDL_bool D3D_LoadDLL( void **pD3DDLL, IDirect3D9 **pDirect3D9Interface );
176
177 #endif /* _SDL_windowsvideo_h */
178
179 /* vi: set ts=4 sw=4 expandtab: */
TSFSink::data
void * data
Definition: SDL_windowsvideo.h:85
IDirect3D9
struct IDirect3D9 IDirect3D9
Definition: SDL_windowsvideo.h:174
LPINPUTCONTEXT2
struct tagINPUTCONTEXT2 * LPINPUTCONTEXT2
MAX_CANDLIST
#define MAX_CANDLIST
Definition: SDL_windowsvideo.h:38
SDL_VideoData::LPINPUTCONTEXT2
LPINPUTCONTEXT2(WINAPI *ImmLockIMC)(HIMC himc)
SDL_VideoData::uReadingBufLen
UINT uReadingBufLen
Definition: SDL_windowsvideo.h:156
tagINPUTCONTEXT2::cfCandForm
CANDIDATEFORM cfCandForm[4]
Definition: SDL_windowsvideo.h:101
SDL_VideoData::clipboard_count
DWORD clipboard_count
Definition: SDL_windowsvideo.h:118
SDL_windowsmodes.h
void
GLvoid **typedef void(GLAPIENTRY *PFNGLGETVERTEXATTRIBDVPROC)(GLuint
Definition: glew.h:1824
tagINPUTCONTEXT2::fdwInit
DWORD fdwInit
Definition: SDL_windowsvideo.h:108
SDL_VideoData::ime_uielemsink
TSFSink * ime_uielemsink
Definition: SDL_windowsvideo.h:169
SDL_windowsmouse.h
ITfThreadMgrEx
Definition: SDL_msctf.h:76
SDL_bool
SDL_bool
Definition: SDL_stdinc.h:116
SDL_VideoData::puMaxReadingLen
UINT LPWSTR PINT BOOL PUINT puMaxReadingLen
Definition: SDL_windowsvideo.h:156
tagINPUTCONTEXT2::fdwSentence
DWORD fdwSentence
Definition: SDL_windowsvideo.h:95
TSFSink
Definition: SDL_windowsvideo.h:81
SDL_windowskeyboard.h
x
EGLSurface EGLint x
Definition: eglext.h:293
SDL_VideoData::ime_candcount
DWORD ime_candcount
Definition: SDL_windowsvideo.h:141
SDL_events.h
TSFSink::lpVtbl
void ** lpVtbl
Definition: SDL_windowsvideo.h:83
SDL_VideoData::ime_winheight
int ime_winheight
Definition: SDL_windowsvideo.h:152
SDL_VideoData::ime_hwnd_main
HWND ime_hwnd_main
Definition: SDL_windowsvideo.h:131
tagINPUTCONTEXT2
Definition: SDL_windowsvideo.h:89
tagINPUTCONTEXT2::fdwConversion
DWORD fdwConversion
Definition: SDL_windowsvideo.h:94
INPUTCONTEXT2
struct tagINPUTCONTEXT2 INPUTCONTEXT2
tagINPUTCONTEXT2::dwNumMsgBuf
DWORD dwNumMsgBuf
Definition: SDL_windowsvideo.h:106
SDL_VideoData::ime_openmodesinkcookie
DWORD ime_openmodesinkcookie
Definition: SDL_windowsvideo.h:167
SDL_VideoData::ime_alpnsinkcookie
DWORD ime_alpnsinkcookie
Definition: SDL_windowsvideo.h:166
SDL_config.h
MAX_CANDLENGTH
#define MAX_CANDLENGTH
Definition: SDL_windowsvideo.h:39
TSFSink::refcount
int refcount
Definition: SDL_windowsvideo.h:84
SDL_VideoData::userDLL
void * userDLL
Definition: SDL_windowsvideo.h:121
SDL_VideoData::LPVOID
LPVOID(WINAPI *ImmLockIMCC)(HIMCC himcc)
tagINPUTCONTEXT2::cfCompForm
COMPOSITIONFORM cfCompForm
Definition: SDL_windowsvideo.h:100
SDL_msctf.h
tagINPUTCONTEXT2::ptSoftKbdPos
POINT ptSoftKbdPos
Definition: SDL_windowsvideo.h:93
SDL_VideoData::ime_candlist
SDL_bool ime_candlist
Definition: SDL_windowsvideo.h:139
SDL_VideoData::ime_uielemsinkcookie
DWORD ime_uielemsinkcookie
Definition: SDL_windowsvideo.h:165
SDL_VideoData::ime_rect
SDL_Rect ime_rect
Definition: SDL_windowsvideo.h:149
tagINPUTCONTEXT2::W
LOGFONTW W
Definition: SDL_windowsvideo.h:98
SDL_VideoData::ime_candsel
DWORD ime_candsel
Definition: SDL_windowsvideo.h:143
HANDLE
typedef HANDLE(WINAPI *PFNWGLCREATEBUFFERREGIONARBPROC)(HDC hDC
SDL_windowsclipboard.h
NPINPUTCONTEXT2
struct tagINPUTCONTEXT2 * NPINPUTCONTEXT2
tagINPUTCONTEXT2::lfFont
union tagINPUTCONTEXT2::@88 lfFont
tagINPUTCONTEXT2::hCompStr
HIMCC hCompStr
Definition: SDL_windowsvideo.h:102
tagINPUTCONTEXT2::hGuideLine
HIMCC hGuideLine
Definition: SDL_windowsvideo.h:104
SDL_VideoData::ime_initialized
SDL_bool ime_initialized
Definition: SDL_windowsvideo.h:128
PFNSHFullScreen
BOOL(* PFNSHFullScreen)(HWND, DWORD)
Definition: SDL_windowsvideo.h:78
SDL_VideoData::PTOUCHINPUT
PTOUCHINPUT
Definition: SDL_windowsvideo.h:123
SDL_VideoData::ime_winwidth
int ime_winwidth
Definition: SDL_windowsvideo.h:151
dwFlags
DWORD dwFlags
Definition: SDL_dxjoystick_c.h:93
SDL_VideoData::render
int render
Definition: SDL_windowsvideo.h:116
SDL_VideoData::ime_candpgsize
UINT ime_candpgsize
Definition: SDL_windowsvideo.h:144
FAR
#define FAR
Definition: zconf.h:215
SDL_VideoData::ime_candref
DWORD ime_candref
Definition: SDL_windowsvideo.h:142
SDL_VideoData::ime_ippasink
TSFSink * ime_ippasink
Definition: SDL_windowsvideo.h:170
SDL_VideoData::ime_enabled
SDL_bool ime_enabled
Definition: SDL_windowsvideo.h:129
SDL_VideoData::ime_hkl
HKL ime_hkl
Definition: SDL_windowsvideo.h:154
SDL_VideoData::BOOL
BOOL(WINAPI *CloseTouchInputHandle)(HTOUCHINPUT)
SDL_VideoData::ime_convmodesinkcookie
DWORD ime_convmodesinkcookie
Definition: SDL_windowsvideo.h:168
SDL_VideoData::ime_available
SDL_bool ime_available
Definition: SDL_windowsvideo.h:130
tagINPUTCONTEXT2::ptStatusWndPos
POINT ptStatusWndPos
Definition: SDL_windowsvideo.h:92
SDL_VideoData::ime_com_initialized
SDL_bool ime_com_initialized
Definition: SDL_windowsvideo.h:126
D3D_LoadDLL
SDL_bool D3D_LoadDLL(void **pD3DDLL, IDirect3D9 **pDirect3D9Interface)
PINPUTCONTEXT2
struct tagINPUTCONTEXT2 * PINPUTCONTEXT2
SDL_VideoData::UINT
UINT
Definition: SDL_windowsvideo.h:123
SDL_VideoData::ime_readingstring
WCHAR ime_readingstring[16]
Definition: SDL_windowsvideo.h:136
SDL_VideoData::lpwReadingBuf
UINT LPWSTR lpwReadingBuf
Definition: SDL_windowsvideo.h:156
SDL_VideoData::ime_dirty
SDL_bool ime_dirty
Definition: SDL_windowsvideo.h:148
y
EGLSurface EGLint EGLint y
Definition: eglext.h:293
SDL_VideoData::pfIsVertical
UINT LPWSTR PINT BOOL * pfIsVertical
Definition: SDL_windowsvideo.h:156
tagINPUTCONTEXT2::A
LOGFONTA A
Definition: SDL_windowsvideo.h:97
tagINPUTCONTEXT2::hPrivate
HIMCC hPrivate
Definition: SDL_windowsvideo.h:105
SDL_loadso.h
SDL_VideoData::ime_uiless
SDL_bool ime_uiless
Definition: SDL_windowsvideo.h:163
SDL_windowsevents.h
SDL_Window
Definition: SDL_sysvideo.h:71
DWORD
typedef DWORD(WINAPI *XInputGetState_t)(DWORD dwUserIndex
SDL_VideoData::ime_candvertical
SDL_bool ime_candvertical
Definition: SDL_windowsvideo.h:146
SDL_VideoData
struct SDL_VideoData SDL_VideoData
SDL_VideoData::ime_himm32
void * ime_himm32
Definition: SDL_windowsvideo.h:155
tagINPUTCONTEXT2::dwReserve
DWORD dwReserve[3]
Definition: SDL_windowsvideo.h:109
SDL_VideoData::ULONG
ULONG
Definition: SDL_windowsvideo.h:124
SDL_windowsopengl.h
tagINPUTCONTEXT2::fOpen
BOOL fOpen
Definition: SDL_windowsvideo.h:91
SDL_VideoData
Definition: SDL_androidvideo.h:35
SDL_VideoData::ime_composition
WCHAR ime_composition[SDL_TEXTEDITINGEVENT_TEXT_SIZE]
Definition: SDL_windowsvideo.h:135
SDL_VideoData::int
int
Definition: SDL_windowsvideo.h:123
SDL_VideoData::ime_candlistindexbase
int ime_candlistindexbase
Definition: SDL_windowsvideo.h:145
SDL_VideoData::bShow
BOOL bShow
Definition: SDL_windowsvideo.h:157
DECLARE_HANDLE
DECLARE_HANDLE(HPBUFFERARB)
SDL_VideoData::ime_candlistrect
SDL_Rect ime_candlistrect
Definition: SDL_windowsvideo.h:150
SDL_VideoData::ime_hwnd_current
HWND ime_hwnd_current
Definition: SDL_windowsvideo.h:132
PFCoordTransform
void(* PFCoordTransform)(SDL_Window *, POINT *)
Definition: SDL_windowsvideo.h:79
SDL_VideoData::ime_cursor
int ime_cursor
Definition: SDL_windowsvideo.h:137
SDL_windowswindow.h
SDL_VideoData::ime_himc
HIMC ime_himc
Definition: SDL_windowsvideo.h:133
tagINPUTCONTEXT2::hCandInfo
HIMCC hCandInfo
Definition: SDL_windowsvideo.h:103
tagINPUTCONTEXT2::hMsgBuf
HIMCC hMsgBuf
Definition: SDL_windowsvideo.h:107
tagINPUTCONTEXT2::hWnd
HWND hWnd
Definition: SDL_windowsvideo.h:90
SDL_VideoData::ime_candidates
WCHAR ime_candidates[MAX_CANDLIST][MAX_CANDLENGTH]
Definition: SDL_windowsvideo.h:140
SDL_Rect
A rectangle, with the origin at the upper left.
Definition: SDL_rect.h:63
ITfThreadMgr
Definition: SDL_msctf.h:51
SDL_TEXTEDITINGEVENT_TEXT_SIZE
#define SDL_TEXTEDITINGEVENT_TEXT_SIZE
Definition: SDL_events.h:188
SDL_VideoData::ime_threadmgrex
struct ITfThreadMgrEx * ime_threadmgrex
Definition: SDL_windowsvideo.h:164
SDL_VideoData::pnErrorIndex
UINT LPWSTR PINT pnErrorIndex
Definition: SDL_windowsvideo.h:156
SDL_VideoData::ime_threadmgr
struct ITfThreadMgr * ime_threadmgr
Definition: SDL_windowsvideo.h:127
BOOL
typedef BOOL(WINAPI *PFNWGLSETSTEREOEMITTERSTATE3DLPROC)(HDC hDC