Skip to content
This repository has been archived by the owner on Feb 11, 2021. It is now read-only.

Latest commit

 

History

History
184 lines (151 loc) · 4.65 KB

SDL_windowsvideo.h

File metadata and controls

184 lines (151 loc) · 4.65 KB
 
Aug 3, 2010
Aug 3, 2010
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
/*
SDL - Simple DirectMedia Layer
Copyright (C) 1997-2010 Sam Lantinga
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
Sam Lantinga
slouken@libsdl.org
*/
#include "SDL_config.h"
Jan 21, 2011
Jan 21, 2011
24
25
#ifndef _SDL_windowsvideo_h
#define _SDL_windowsvideo_h
Aug 3, 2010
Aug 3, 2010
26
27
28
#include "../SDL_sysvideo.h"
Jan 25, 2011
Jan 25, 2011
29
#include "../../core/windows/SDL_windows.h"
Aug 3, 2010
Aug 3, 2010
30
Jan 24, 2011
Jan 24, 2011
31
#if defined(_MSC_VER) && !defined(_WIN32_WCE)
Aug 3, 2010
Aug 3, 2010
32
#include <msctf.h>
Sep 19, 2010
Sep 19, 2010
33
34
35
36
#else
#include "SDL_msctf.h"
#endif
Sep 19, 2010
Sep 19, 2010
37
#include <imm.h>
Aug 3, 2010
Aug 3, 2010
38
Nov 23, 2010
Nov 23, 2010
39
40
41
#define MAX_CANDLIST 10
#define MAX_CANDLENGTH 256
Jan 21, 2011
Jan 21, 2011
42
43
44
45
46
47
48
49
#include "SDL_windowsclipboard.h"
#include "SDL_windowsevents.h"
#include "SDL_windowsgamma.h"
#include "SDL_windowskeyboard.h"
#include "SDL_windowsmodes.h"
#include "SDL_windowsmouse.h"
#include "SDL_windowsopengl.h"
#include "SDL_windowswindow.h"
Aug 3, 2010
Aug 3, 2010
50
#include "SDL_events.h"
Jan 25, 2011
Jan 25, 2011
51
#include "SDL_loadso.h"
Aug 3, 2010
Aug 3, 2010
52
53
Dec 1, 2010
Dec 1, 2010
54
55
56
57
58
59
60
61
62
63
64
#if WINVER < 0x0601
/* Touch input definitions */
#define TWF_FINETOUCH 1
#define TWF_WANTPALM 2
#define TOUCHEVENTF_MOVE 0x0001
#define TOUCHEVENTF_DOWN 0x0002
#define TOUCHEVENTF_UP 0x0004
DECLARE_HANDLE(HTOUCHINPUT);
Jan 19, 2011
Jan 19, 2011
65
66
67
68
69
70
71
72
73
74
75
typedef struct _TOUCHINPUT {
LONG x;
LONG y;
HANDLE hSource;
DWORD dwID;
DWORD dwFlags;
DWORD dwMask;
DWORD dwTime;
ULONG_PTR dwExtraInfo;
DWORD cxContact;
DWORD cyContact;
Dec 1, 2010
Dec 1, 2010
76
77
78
79
} TOUCHINPUT, *PTOUCHINPUT;
#endif /* WINVER < 0x0601 */
Jul 28, 2010
Jul 28, 2010
80
81
82
typedef BOOL (*PFNSHFullScreen)(HWND, DWORD);
typedef void (*PFCoordTransform)(SDL_Window*, POINT*);
Aug 3, 2010
Aug 3, 2010
83
84
85
86
87
88
89
typedef struct
{
void **lpVtbl;
int refcount;
void *data;
} TSFSink;
Sep 19, 2010
Sep 19, 2010
90
/* Definition from Win98DDK version of IMM.H */
Aug 3, 2010
Aug 3, 2010
91
typedef struct tagINPUTCONTEXT2 {
Nov 23, 2010
Nov 23, 2010
92
93
94
95
96
97
98
99
100
HWND hWnd;
BOOL fOpen;
POINT ptStatusWndPos;
POINT ptSoftKbdPos;
DWORD fdwConversion;
DWORD fdwSentence;
union {
LOGFONTA A;
LOGFONTW W;
Sep 19, 2010
Sep 19, 2010
101
} lfFont;
Nov 23, 2010
Nov 23, 2010
102
103
104
105
106
107
108
109
110
111
COMPOSITIONFORM cfCompForm;
CANDIDATEFORM cfCandForm[4];
HIMCC hCompStr;
HIMCC hCandInfo;
HIMCC hGuideLine;
HIMCC hPrivate;
DWORD dwNumMsgBuf;
HIMCC hMsgBuf;
DWORD fdwInit;
DWORD dwReserve[3];
Sep 19, 2010
Sep 19, 2010
112
} INPUTCONTEXT2, *PINPUTCONTEXT2, NEAR *NPINPUTCONTEXT2, FAR *LPINPUTCONTEXT2;
Aug 3, 2010
Aug 3, 2010
113
114
115
116
117
/* Private display data */
typedef struct SDL_VideoData
{
Jul 28, 2010
Jul 28, 2010
118
119
120
int render;
#ifdef _WIN32_WCE
Jan 25, 2011
Jan 25, 2011
121
void* hAygShell;
Jul 28, 2010
Jul 28, 2010
122
123
124
PFNSHFullScreen SHFullScreen;
PFCoordTransform CoordTransform;
#endif
Aug 3, 2010
Aug 3, 2010
125
Jan 24, 2011
Jan 24, 2011
126
const SDL_ScanCode *key_layout;
Dec 1, 2010
Dec 1, 2010
127
128
129
DWORD clipboard_count;
/* Touch input functions */
Jan 25, 2011
Jan 25, 2011
130
void* userDLL;
Dec 1, 2010
Dec 1, 2010
131
132
BOOL (WINAPI *CloseTouchInputHandle)( HTOUCHINPUT );
BOOL (WINAPI *GetTouchInputInfo)( HTOUCHINPUT, UINT, PTOUCHINPUT, int );
Jan 19, 2011
Jan 19, 2011
133
BOOL (WINAPI *RegisterTouchWindow)( HWND, ULONG );
Aug 3, 2010
Aug 3, 2010
134
135
136
137
138
139
140
141
142
143
144
145
146
147
SDL_bool ime_com_initialized;
struct ITfThreadMgr *ime_threadmgr;
SDL_bool ime_initialized;
SDL_bool ime_enabled;
SDL_bool ime_available;
HWND ime_hwnd_main;
HWND ime_hwnd_current;
HIMC ime_himc;
WCHAR ime_composition[SDL_TEXTEDITINGEVENT_TEXT_SIZE];
WCHAR ime_readingstring[16];
int ime_cursor;
Nov 23, 2010
Nov 23, 2010
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
SDL_bool ime_candlist;
WCHAR ime_candidates[MAX_CANDLIST][MAX_CANDLENGTH];
DWORD ime_candcount;
DWORD ime_candref;
DWORD ime_candsel;
UINT ime_candpgsize;
int ime_candlistindexbase;
SDL_bool ime_candvertical;
SDL_bool ime_dirty;
SDL_Rect ime_rect;
SDL_Rect ime_candlistrect;
int ime_winwidth;
int ime_winheight;
Aug 3, 2010
Aug 3, 2010
163
HKL ime_hkl;
Jan 25, 2011
Jan 25, 2011
164
void* ime_himm32;
Aug 3, 2010
Aug 3, 2010
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
UINT (WINAPI *GetReadingString)(HIMC himc, UINT uReadingBufLen, LPWSTR lpwReadingBuf, PINT pnErrorIndex, BOOL *pfIsVertical, PUINT puMaxReadingLen);
BOOL (WINAPI *ShowReadingWindow)(HIMC himc, BOOL bShow);
LPINPUTCONTEXT2 (WINAPI *ImmLockIMC)(HIMC himc);
BOOL (WINAPI *ImmUnlockIMC)(HIMC himc);
LPVOID (WINAPI *ImmLockIMCC)(HIMCC himcc);
BOOL (WINAPI *ImmUnlockIMCC)(HIMCC himcc);
SDL_bool ime_uiless;
struct ITfThreadMgrEx *ime_threadmgrex;
DWORD ime_uielemsinkcookie;
DWORD ime_alpnsinkcookie;
DWORD ime_openmodesinkcookie;
DWORD ime_convmodesinkcookie;
TSFSink *ime_uielemsink;
TSFSink *ime_ippasink;
} SDL_VideoData;
Jan 21, 2011
Jan 21, 2011
182
#endif /* _SDL_windowsvideo_h */
Aug 3, 2010
Aug 3, 2010
183
184
/* vi: set ts=4 sw=4 expandtab: */