Mercurial > projects > dynamin
comparison dynamin/c/windows.d @ 14:e6e201c3a439
Remove ANSI functions from Windows binding and convert inner tabs to spaces
in 4 files. Big spacing cleanup in Windows binding.
author | Jordan Miner <jminer7@gmail.com> |
---|---|
date | Sat, 18 Jul 2009 02:35:24 -0500 |
parents | a3a2aa21fc52 |
children | 63cbfb167240 |
comparison
equal
deleted
inserted
replaced
13:a3a2aa21fc52 | 14:e6e201c3a439 |
---|---|
13 | 13 |
14 version(build) { pragma(link, gdi32, comdlg32, shell32, ole32, winmm); } | 14 version(build) { pragma(link, gdi32, comdlg32, shell32, ole32, winmm); } |
15 | 15 |
16 extern(Windows): | 16 extern(Windows): |
17 | 17 |
18 version = UNICODE; | 18 alias char* LPSTR; |
19 alias char* LPSTR; | |
20 alias wchar* LPWSTR; | 19 alias wchar* LPWSTR; |
21 alias char* LPCSTR; | 20 alias char* LPCSTR; |
22 alias wchar* LPCWSTR; | 21 alias wchar* LPCWSTR; |
23 version(UNICODE) { | 22 // unicode |
24 alias wchar TCHAR; | 23 alias wchar TCHAR; |
25 alias LPWSTR LPTSTR; | 24 alias LPWSTR LPTSTR; |
26 alias LPCWSTR LPCTSTR; | 25 alias LPCWSTR LPCTSTR; |
27 } else { | 26 |
28 alias char TCHAR; | 27 alias VOID* HANDLE; |
29 alias LPSTR LPTSTR; | 28 alias HANDLE HBITMAP; |
30 alias LPCSTR LPCTSTR; | 29 alias HANDLE HBRUSH; |
31 } | 30 alias HANDLE HICON; |
32 | 31 alias HICON HCURSOR; |
33 alias VOID* HANDLE; | 32 alias HANDLE HDC; |
34 alias HANDLE HBITMAP; | 33 alias HANDLE HGDIOBJ; |
35 alias HANDLE HBRUSH; | 34 alias HANDLE HGLOBAL; |
36 alias HANDLE HICON; | 35 alias int HFILE; |
37 alias HICON HCURSOR; | 36 alias HANDLE HFONT; |
38 alias HANDLE HDC; | 37 alias HANDLE HINSTANCE; |
39 alias HANDLE HGDIOBJ; | 38 alias HANDLE HKEY; |
40 alias HANDLE HGLOBAL; | 39 alias HANDLE HMENU; |
41 alias int HFILE; | |
42 alias HANDLE HFONT; | |
43 alias HANDLE HINSTANCE; | |
44 alias HANDLE HKEY; | |
45 alias HANDLE HMENU; | |
46 alias HINSTANCE HMODULE; | 40 alias HINSTANCE HMODULE; |
47 alias int HRESULT; | 41 alias int HRESULT; |
48 alias HANDLE HRGN; | 42 alias HANDLE HRGN; |
49 alias HANDLE HTHEME; | 43 alias HANDLE HTHEME; |
50 alias HANDLE HWND; | 44 alias HANDLE HWND; |
51 | 45 |
52 version(Win64) { | 46 version(Win64) { |
53 alias int HALF_PTR; | 47 alias int HALF_PTR; |
54 alias uint UHALF_PTR; | 48 alias uint UHALF_PTR; |
55 alias long INT_PTR; | 49 alias long INT_PTR; |
56 alias ulong UINT_PTR; | 50 alias ulong UINT_PTR; |
57 alias long LONG_PTR; | 51 alias long LONG_PTR; |
58 alias ulong ULONG_PTR; | 52 alias ulong ULONG_PTR; |
59 } else { | 53 } else { |
60 alias short HALF_PTR; | 54 alias short HALF_PTR; |
61 alias ushort UHALF_PTR; | 55 alias ushort UHALF_PTR; |
62 alias int INT_PTR; | 56 alias int INT_PTR; |
63 alias uint UINT_PTR; | 57 alias uint UINT_PTR; |
64 alias int LONG_PTR; | 58 alias int LONG_PTR; |
65 alias uint ULONG_PTR; | 59 alias uint ULONG_PTR; |
66 } | 60 } |
67 | 61 |
68 alias INT_PTR function() FARPROC; | 62 alias INT_PTR function() FARPROC; |
69 alias int BOOL; | 63 alias int BOOL; |
70 alias ubyte BYTE; | 64 alias ubyte BYTE; |
71 alias char CHAR; | 65 alias char CHAR; |
72 alias wchar WCHAR; | 66 alias wchar WCHAR; |
73 alias uint DWORD; | 67 alias uint DWORD; |
74 alias ulong DWORDLONG; | 68 alias ulong DWORDLONG; |
75 alias uint DWORD32; | 69 alias uint DWORD32; |
76 alias ulong DWORD64; | 70 alias ulong DWORD64; |
77 alias float FLOAT; | 71 alias float FLOAT; |
78 alias int INT; | 72 alias int INT; |
79 alias int INT32; | 73 alias int INT32; |
80 alias long INT64; | 74 alias long INT64; |
81 alias int LONG; | 75 alias int LONG; |
82 alias int LONG32; | 76 alias int LONG32; |
83 alias long LONG64; | 77 alias long LONG64; |
84 alias UINT_PTR WPARAM; | 78 alias UINT_PTR WPARAM; |
85 alias LONG_PTR LPARAM; | 79 alias LONG_PTR LPARAM; |
86 alias LONG_PTR LRESULT; | 80 alias LONG_PTR LRESULT; |
87 alias char UCHAR; | 81 alias char UCHAR; |
88 alias uint UINT; | 82 alias uint UINT; |
89 alias uint UINT32; | 83 alias uint UINT32; |
90 alias ulong UINT64; | 84 alias ulong UINT64; |
91 alias uint ULONG; | 85 alias uint ULONG; |
92 alias uint ULONG32; | 86 alias uint ULONG32; |
93 alias ulong ULONG64; | 87 alias ulong ULONG64; |
94 alias short SHORT; | 88 alias short SHORT; |
95 alias ushort USHORT; | 89 alias ushort USHORT; |
96 alias void VOID; | 90 alias void VOID; |
97 alias ushort WORD; | 91 alias ushort WORD; |
98 alias WORD ATOM; | 92 alias WORD ATOM; |
99 alias ULONG_PTR SIZE_T; | 93 alias ULONG_PTR SIZE_T; |
100 alias DWORD COLORREF; | 94 alias DWORD COLORREF; |
101 alias LONG NTSTATUS; | 95 alias LONG NTSTATUS; |
102 | 96 |
103 const HRESULT S_OK = 0; | 97 const HRESULT S_OK = 0; |
104 const HRESULT S_FALSE = 1; | 98 const HRESULT S_FALSE = 1; |
105 const HRESULT NOERROR = 0; | 99 const HRESULT NOERROR = 0; |
106 | 100 |
107 const int MAX_PATH = 260; | 101 const int MAX_PATH = 260; |
108 | 102 |
120 LPWSTR MAKEINTRESOURCE(int i) { return cast(LPWSTR)cast(WORD)i; } | 114 LPWSTR MAKEINTRESOURCE(int i) { return cast(LPWSTR)cast(WORD)i; } |
121 BYTE GetRValue(DWORD rgb) { return LOBYTE(rgb); } | 115 BYTE GetRValue(DWORD rgb) { return LOBYTE(rgb); } |
122 BYTE GetGValue(DWORD rgb) { return LOBYTE(cast(WORD)rgb >> 8); } | 116 BYTE GetGValue(DWORD rgb) { return LOBYTE(cast(WORD)rgb >> 8); } |
123 BYTE GetBValue(DWORD rgb) { return LOBYTE(rgb >> 16); } | 117 BYTE GetBValue(DWORD rgb) { return LOBYTE(rgb >> 16); } |
124 | 118 |
125 int MessageBoxA(HWND hWnd, LPCSTR lpText, LPCSTR lpCaption, UINT uType); | |
126 int MessageBoxW(HWND hWnd, LPCWSTR lpText, LPCWSTR lpCaption, UINT uType); | 119 int MessageBoxW(HWND hWnd, LPCWSTR lpText, LPCWSTR lpCaption, UINT uType); |
127 | 120 |
128 DWORD GetLastError(); | 121 DWORD GetLastError(); |
129 | 122 |
130 int MultiByteToWideChar( | 123 int MultiByteToWideChar( |
155 BOOL HeapFree(HANDLE hHeap, DWORD dwFlags, VOID* lpMem); | 148 BOOL HeapFree(HANDLE hHeap, DWORD dwFlags, VOID* lpMem); |
156 | 149 |
157 SIZE_T HeapSize(HANDLE hHeap, DWORD dwFlags, /*const*/ VOID* lpMem); | 150 SIZE_T HeapSize(HANDLE hHeap, DWORD dwFlags, /*const*/ VOID* lpMem); |
158 | 151 |
159 enum { | 152 enum { |
160 HEAP_ZERO_MEMORY = 0x0008, | 153 HEAP_ZERO_MEMORY = 0x0008, |
161 HEAP_REALLOC_IN_PLACE_ONLY = 0x0010 | 154 HEAP_REALLOC_IN_PLACE_ONLY = 0x0010 |
162 } | 155 } |
163 | 156 |
164 HGLOBAL GlobalAlloc(UINT uFlags, SIZE_T dwBytes); | 157 HGLOBAL GlobalAlloc(UINT uFlags, SIZE_T dwBytes); |
165 | 158 |
170 VOID* GlobalLock(HGLOBAL hMem); | 163 VOID* GlobalLock(HGLOBAL hMem); |
171 | 164 |
172 BOOL GlobalUnlock(HGLOBAL hMem); | 165 BOOL GlobalUnlock(HGLOBAL hMem); |
173 | 166 |
174 enum { | 167 enum { |
175 GMEM_FIXED = 0x0000, | 168 GMEM_FIXED = 0x0000, |
176 GMEM_MOVEABLE = 0x0002, | 169 GMEM_MOVEABLE = 0x0002, |
177 GMEM_ZEROINIT = 0x0040, | 170 GMEM_ZEROINIT = 0x0040, |
178 GPTR = 0x0040, | 171 GPTR = 0x0040, |
179 GHND = 0x0042 | 172 GHND = 0x0042 |
180 } | 173 } |
181 //}}} | 174 //}}} |
182 | 175 |
183 //{{{ window functions | 176 //{{{ window functions |
184 enum { | 177 enum { |
185 CS_VREDRAW = 0x0001, | 178 CS_VREDRAW = 0x0001, |
186 CS_HREDRAW = 0x0002, | 179 CS_HREDRAW = 0x0002, |
187 CS_DBLCLKS = 0x0008, | 180 CS_DBLCLKS = 0x0008, |
188 CS_OWNDC = 0x0020, | 181 CS_OWNDC = 0x0020, |
189 CS_CLASSDC = 0x0040, | 182 CS_CLASSDC = 0x0040, |
190 CS_PARENTDC = 0x0080, | 183 CS_PARENTDC = 0x0080, |
191 CS_NOCLOSE = 0x0200, | 184 CS_NOCLOSE = 0x0200, |
192 CS_SAVEBITS = 0x0800, | 185 CS_SAVEBITS = 0x0800, |
193 CS_BYTEALIGNCLIENT = 0x1000, | 186 CS_BYTEALIGNCLIENT = 0x1000, |
194 CS_BYTEALIGNWINDOW = 0x2000, | 187 CS_BYTEALIGNWINDOW = 0x2000, |
195 CS_GLOBALCLASS = 0x4000, | 188 CS_GLOBALCLASS = 0x4000, |
196 //Windows XP required | 189 //Windows XP required |
197 CS_DROPSHADOW = 0x00020000 | 190 CS_DROPSHADOW = 0x00020000 |
198 | 191 |
199 } | 192 } |
200 ATOM RegisterClassExA(/*const*/ WNDCLASSEX* lpwcx); | |
201 ATOM RegisterClassExW(/*const*/ WNDCLASSEX* lpwcx); | 193 ATOM RegisterClassExW(/*const*/ WNDCLASSEX* lpwcx); |
202 | 194 |
203 LRESULT DefWindowProcW(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam); | 195 LRESULT DefWindowProcW(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam); |
204 | 196 |
205 //{{{ window styles | 197 //{{{ window styles |
206 enum { | 198 enum { |
207 WS_OVERLAPPED = 0x00000000, | 199 WS_OVERLAPPED = 0x00000000, |
208 WS_MAXIMIZEBOX = 0x00010000, | 200 WS_MAXIMIZEBOX = 0x00010000, |
209 WS_TABSTOP = 0x00010000, | 201 WS_TABSTOP = 0x00010000, |
210 WS_GROUP = 0x00020000, | 202 WS_GROUP = 0x00020000, |
211 WS_MINIMIZEBOX = 0x00020000, | 203 WS_MINIMIZEBOX = 0x00020000, |
212 WS_THICKFRAME = 0x00040000, | 204 WS_THICKFRAME = 0x00040000, |
213 WS_SYSMENU = 0x00080000, | 205 WS_SYSMENU = 0x00080000, |
214 WS_HSCROLL = 0x00100000, | 206 WS_HSCROLL = 0x00100000, |
215 WS_VSCROLL = 0x00200000, | 207 WS_VSCROLL = 0x00200000, |
216 WS_DLGFRAME = 0x00400000, | 208 WS_DLGFRAME = 0x00400000, |
217 WS_BORDER = 0x00800000, | 209 WS_BORDER = 0x00800000, |
218 WS_CAPTION = 0x00C00000, | 210 WS_CAPTION = 0x00C00000, |
219 WS_MAXIMIZE = 0x01000000, | 211 WS_MAXIMIZE = 0x01000000, |
220 WS_CLIPCHILDREN = 0x02000000, | 212 WS_CLIPCHILDREN = 0x02000000, |
221 WS_CLIPSIBLINGS = 0x04000000, | 213 WS_CLIPSIBLINGS = 0x04000000, |
222 WS_DISABLED = 0x08000000, | 214 WS_DISABLED = 0x08000000, |
223 WS_VISIBLE = 0x10000000, | 215 WS_VISIBLE = 0x10000000, |
224 WS_MINIMIZE = 0x20000000, | 216 WS_MINIMIZE = 0x20000000, |
225 WS_CHILD = 0x40000000, | 217 WS_CHILD = 0x40000000, |
226 WS_POPUP = 0x80000000, | 218 WS_POPUP = 0x80000000, |
227 WS_OVERLAPPEDWINDOW = WS_OVERLAPPED | | 219 WS_OVERLAPPEDWINDOW = WS_OVERLAPPED | |
228 WS_CAPTION | | 220 WS_CAPTION | |
229 WS_SYSMENU | | 221 WS_SYSMENU | |
230 WS_THICKFRAME | | 222 WS_THICKFRAME | |
231 WS_MINIMIZEBOX | | 223 WS_MINIMIZEBOX | |
232 WS_MAXIMIZEBOX, | 224 WS_MAXIMIZEBOX, |
233 WS_POPUPWINDOW = WS_POPUP | | 225 WS_POPUPWINDOW = WS_POPUP | |
234 WS_BORDER | | 226 WS_BORDER | |
235 WS_SYSMENU, | 227 WS_SYSMENU, |
236 WS_CHILDWINDOW = WS_CHILD, | 228 WS_CHILDWINDOW = WS_CHILD, |
237 WS_TILED = WS_OVERLAPPED, | 229 WS_TILED = WS_OVERLAPPED, |
238 WS_ICONIC = WS_MINIMIZE, | 230 WS_ICONIC = WS_MINIMIZE, |
239 WS_SIZEBOX = WS_THICKFRAME, | 231 WS_SIZEBOX = WS_THICKFRAME, |
240 WS_TILEDWINDOW = WS_OVERLAPPEDWINDOW | 232 WS_TILEDWINDOW = WS_OVERLAPPEDWINDOW |
241 } | 233 } |
242 //}}} | 234 //}}} |
243 | 235 |
244 //{{{ extended window styles | 236 //{{{ extended window styles |
245 enum { | 237 enum { |
246 WS_EX_DLGMODALFRAME = 0x00000001, | 238 WS_EX_DLGMODALFRAME = 0x00000001, |
247 WS_EX_TOPMOST = 0x00000008, | 239 WS_EX_TOPMOST = 0x00000008, |
248 WS_EX_TOOLWINDOW = 0x00000080, | 240 WS_EX_TOOLWINDOW = 0x00000080, |
249 WS_EX_WINDOWEDGE = 0x00000100, | 241 WS_EX_WINDOWEDGE = 0x00000100, |
250 WS_EX_CLIENTEDGE = 0x00000200, | 242 WS_EX_CLIENTEDGE = 0x00000200, |
251 WS_EX_CONTROLPARENT = 0x00010000, | 243 WS_EX_CONTROLPARENT = 0x00010000, |
252 WS_EX_STATICEDGE = 0x00020000, | 244 WS_EX_STATICEDGE = 0x00020000, |
253 WS_EX_APPWINDOW = 0x00040000, | 245 WS_EX_APPWINDOW = 0x00040000, |
254 WS_EX_LAYERED = 0x00080000, | 246 WS_EX_LAYERED = 0x00080000, |
255 WS_EX_OVERLAPPEDWINDOW = WS_EX_WINDOWEDGE | WS_EX_CLIENTEDGE, | 247 WS_EX_OVERLAPPEDWINDOW = WS_EX_WINDOWEDGE | WS_EX_CLIENTEDGE, |
256 WS_EX_COMPOSITED = 0x02000000 | 248 WS_EX_COMPOSITED = 0x02000000 |
257 } | 249 } |
258 //}}} | 250 //}}} |
259 | 251 |
260 //{{{ CreateWindowEx() | 252 //{{{ CreateWindowEx() |
261 HWND CreateWindowExA( | |
262 DWORD dwExStyle, | |
263 LPCSTR lpClassName, | |
264 LPCSTR lpWindowName, | |
265 DWORD dwStyle, | |
266 int x, | |
267 int y, | |
268 int nWidth, | |
269 int nHeight, | |
270 HWND hWndParent, | |
271 HMENU hMenu, | |
272 HINSTANCE hInstance, | |
273 VOID* lpParam); | |
274 HWND CreateWindowExW( | 253 HWND CreateWindowExW( |
275 DWORD dwExStyle, | 254 DWORD dwExStyle, |
276 LPCWSTR lpClassName, | 255 LPCWSTR lpClassName, |
277 LPCWSTR lpWindowName, | 256 LPCWSTR lpWindowName, |
278 DWORD dwStyle, | 257 DWORD dwStyle, |
292 | 271 |
293 BOOL ScreenToClient(HWND hWnd, POINT* lpPoint); | 272 BOOL ScreenToClient(HWND hWnd, POINT* lpPoint); |
294 | 273 |
295 //{{{ messages | 274 //{{{ messages |
296 enum { | 275 enum { |
297 WM_NULL = 0x0000, | 276 WM_NULL = 0x0000, |
298 WM_CREATE = 0x0001, | 277 WM_CREATE = 0x0001, |
299 WM_DESTROY = 0x0002, | 278 WM_DESTROY = 0x0002, |
300 WM_MOVE = 0x0003, | 279 WM_MOVE = 0x0003, |
301 WM_SIZE = 0x0005, | 280 WM_SIZE = 0x0005, |
302 WM_ACTIVATE = 0x0006, | 281 WM_ACTIVATE = 0x0006, |
303 WM_SETFOCUS = 0x0007, | 282 WM_SETFOCUS = 0x0007, |
304 WM_KILLFOCUS = 0x0008, | 283 WM_KILLFOCUS = 0x0008, |
305 WM_ENABLE = 0x000A, | 284 WM_ENABLE = 0x000A, |
306 WM_SETREDRAW = 0x000B, | 285 WM_SETREDRAW = 0x000B, |
307 WM_SETTEXT = 0x000C, | 286 WM_SETTEXT = 0x000C, |
308 WM_GETTEXT = 0x000D, | 287 WM_GETTEXT = 0x000D, |
309 WM_GETTEXTLENGTH = 0x000E, | 288 WM_GETTEXTLENGTH = 0x000E, |
310 WM_PAINT = 0x000F, | 289 WM_PAINT = 0x000F, |
311 WM_CLOSE = 0x0010, | 290 WM_CLOSE = 0x0010, |
312 WM_QUERYENDSESSION = 0x0011, | 291 WM_QUERYENDSESSION = 0x0011, |
313 WM_QUERYOPEN = 0x0013, | 292 WM_QUERYOPEN = 0x0013, |
314 WM_ENDSESSION = 0x0016, | 293 WM_ENDSESSION = 0x0016, |
315 WM_QUIT = 0x0012, | 294 WM_QUIT = 0x0012, |
316 WM_ERASEBKGND = 0x0014, | 295 WM_ERASEBKGND = 0x0014, |
317 WM_SYSCOLORCHANGE = 0x0015, | 296 WM_SYSCOLORCHANGE = 0x0015, |
318 WM_SHOWWINDOW = 0x0018, | 297 WM_SHOWWINDOW = 0x0018, |
319 WM_WININICHANGE = 0x001A, | 298 WM_WININICHANGE = 0x001A, |
320 WM_SETTINGCHANGE = WM_WININICHANGE, | 299 WM_SETTINGCHANGE = WM_WININICHANGE, |
321 WM_DEVMODECHANGE = 0x001B, | 300 WM_DEVMODECHANGE = 0x001B, |
322 WM_ACTIVATEAPP = 0x001C, | 301 WM_ACTIVATEAPP = 0x001C, |
323 WM_FONTCHANGE = 0x001D, | 302 WM_FONTCHANGE = 0x001D, |
324 WM_TIMECHANGE = 0x001E, | 303 WM_TIMECHANGE = 0x001E, |
325 WM_CANCELMODE = 0x001F, | 304 WM_CANCELMODE = 0x001F, |
326 WM_SETCURSOR = 0x0020, | 305 WM_SETCURSOR = 0x0020, |
327 WM_MOUSEACTIVATE = 0x0021, | 306 WM_MOUSEACTIVATE = 0x0021, |
328 WM_CHILDACTIVATE = 0x0022, | 307 WM_CHILDACTIVATE = 0x0022, |
329 WM_QUEUESYNC = 0x0023, | 308 WM_QUEUESYNC = 0x0023, |
330 WM_GETMINMAXINFO = 0x0024, | 309 WM_GETMINMAXINFO = 0x0024, |
331 WM_PAINTICON = 0x0026, | 310 WM_PAINTICON = 0x0026, |
332 WM_ICONERASEBKGND = 0x0027, | 311 WM_ICONERASEBKGND = 0x0027, |
333 WM_NEXTDLGCTL = 0x0028, | 312 WM_NEXTDLGCTL = 0x0028, |
334 WM_SPOOLERSTATUS = 0x002A, | 313 WM_SPOOLERSTATUS = 0x002A, |
335 WM_DRAWITEM = 0x002B, | 314 WM_DRAWITEM = 0x002B, |
336 WM_MEASUREITEM = 0x002C, | 315 WM_MEASUREITEM = 0x002C, |
337 WM_DELETEITEM = 0x002D, | 316 WM_DELETEITEM = 0x002D, |
338 WM_VKEYTOITEM = 0x002E, | 317 WM_VKEYTOITEM = 0x002E, |
339 WM_CHARTOITEM = 0x002F, | 318 WM_CHARTOITEM = 0x002F, |
340 WM_SETFONT = 0x0030, | 319 WM_SETFONT = 0x0030, |
341 WM_GETFONT = 0x0031, | 320 WM_GETFONT = 0x0031, |
342 WM_SETHOTKEY = 0x0032, | 321 WM_SETHOTKEY = 0x0032, |
343 WM_GETHOTKEY = 0x0033, | 322 WM_GETHOTKEY = 0x0033, |
344 WM_QUERYDRAGICON = 0x0037, | 323 WM_QUERYDRAGICON = 0x0037, |
345 WM_COMPAREITEM = 0x0039, | 324 WM_COMPAREITEM = 0x0039, |
346 WM_GETOBJECT = 0x003D, | 325 WM_GETOBJECT = 0x003D, |
347 WM_COMPACTING = 0x0041, | 326 WM_COMPACTING = 0x0041, |
348 WM_WINDOWPOSCHANGING = 0x0046, | 327 WM_WINDOWPOSCHANGING = 0x0046, |
349 WM_WINDOWPOSCHANGED = 0x0047, | 328 WM_WINDOWPOSCHANGED = 0x0047, |
350 WM_POWER = 0x0048, | 329 WM_POWER = 0x0048, |
351 WM_COPYDATA = 0x004A, | 330 WM_COPYDATA = 0x004A, |
352 WM_CANCELJOURNAL = 0x004B, | 331 WM_CANCELJOURNAL = 0x004B, |
353 WM_NOTIFY = 0x004E, | 332 WM_NOTIFY = 0x004E, |
354 WM_INPUTLANGCHANGEREQUEST = 0x0050, | 333 WM_INPUTLANGCHANGEREQUEST = 0x0050, |
355 WM_INPUTLANGCHANGE = 0x0051, | 334 WM_INPUTLANGCHANGE = 0x0051, |
356 WM_TCARD = 0x0052, | 335 WM_TCARD = 0x0052, |
357 WM_HELP = 0x0053, | 336 WM_HELP = 0x0053, |
358 WM_USERCHANGED = 0x0054, | 337 WM_USERCHANGED = 0x0054, |
359 WM_NOTIFYFORMAT = 0x0055, | 338 WM_NOTIFYFORMAT = 0x0055, |
360 WM_CONTEXTMENU = 0x007B, | 339 WM_CONTEXTMENU = 0x007B, |
361 WM_STYLECHANGING = 0x007C, | 340 WM_STYLECHANGING = 0x007C, |
362 WM_STYLECHANGED = 0x007D, | 341 WM_STYLECHANGED = 0x007D, |
363 WM_DISPLAYCHANGE = 0x007E, | 342 WM_DISPLAYCHANGE = 0x007E, |
364 WM_GETICON = 0x007F, | 343 WM_GETICON = 0x007F, |
365 WM_SETICON = 0x0080, | 344 WM_SETICON = 0x0080, |
366 WM_NCCREATE = 0x0081, | 345 WM_NCCREATE = 0x0081, |
367 WM_NCDESTROY = 0x0082, | 346 WM_NCDESTROY = 0x0082, |
368 WM_NCCALCSIZE = 0x0083, | 347 WM_NCCALCSIZE = 0x0083, |
369 WM_NCHITTEST = 0x0084, | 348 WM_NCHITTEST = 0x0084, |
370 WM_NCPAINT = 0x0085, | 349 WM_NCPAINT = 0x0085, |
371 WM_NCACTIVATE = 0x0086, | 350 WM_NCACTIVATE = 0x0086, |
372 WM_GETDLGCODE = 0x0087, | 351 WM_GETDLGCODE = 0x0087, |
373 WM_SYNCPAINT = 0x0088, | 352 WM_SYNCPAINT = 0x0088, |
374 WM_NCMOUSEMOVE = 0x00A0, | 353 WM_NCMOUSEMOVE = 0x00A0, |
375 WM_NCLBUTTONDOWN = 0x00A1, | 354 WM_NCLBUTTONDOWN = 0x00A1, |
376 WM_NCLBUTTONUP = 0x00A2, | 355 WM_NCLBUTTONUP = 0x00A2, |
377 WM_NCLBUTTONDBLCLK = 0x00A3, | 356 WM_NCLBUTTONDBLCLK = 0x00A3, |
378 WM_NCRBUTTONDOWN = 0x00A4, | 357 WM_NCRBUTTONDOWN = 0x00A4, |
379 WM_NCRBUTTONUP = 0x00A5, | 358 WM_NCRBUTTONUP = 0x00A5, |
380 WM_NCRBUTTONDBLCLK = 0x00A6, | 359 WM_NCRBUTTONDBLCLK = 0x00A6, |
381 WM_NCMBUTTONDOWN = 0x00A7, | 360 WM_NCMBUTTONDOWN = 0x00A7, |
382 WM_NCMBUTTONUP = 0x00A8, | 361 WM_NCMBUTTONUP = 0x00A8, |
383 WM_NCMBUTTONDBLCLK = 0x00A9, | 362 WM_NCMBUTTONDBLCLK = 0x00A9, |
384 WM_NCXBUTTONDOWN = 0x00AB, | 363 WM_NCXBUTTONDOWN = 0x00AB, |
385 WM_NCXBUTTONUP = 0x00AC, | 364 WM_NCXBUTTONUP = 0x00AC, |
386 WM_NCXBUTTONDBLCLK = 0x00AD, | 365 WM_NCXBUTTONDBLCLK = 0x00AD, |
387 WM_INPUT = 0x00FF, | 366 WM_INPUT = 0x00FF, |
388 WM_KEYDOWN = 0x0100, | 367 WM_KEYDOWN = 0x0100, |
389 WM_KEYUP = 0x0101, | 368 WM_KEYUP = 0x0101, |
390 WM_CHAR = 0x0102, | 369 WM_CHAR = 0x0102, |
391 WM_DEADCHAR = 0x0103, | 370 WM_DEADCHAR = 0x0103, |
392 WM_SYSKEYDOWN = 0x0104, | 371 WM_SYSKEYDOWN = 0x0104, |
393 WM_SYSKEYUP = 0x0105, | 372 WM_SYSKEYUP = 0x0105, |
394 WM_SYSCHAR = 0x0106, | 373 WM_SYSCHAR = 0x0106, |
395 WM_SYSDEADCHAR = 0x0107, | 374 WM_SYSDEADCHAR = 0x0107, |
396 WM_UNICHAR = 0x0109, | 375 WM_UNICHAR = 0x0109, |
397 WM_IME_STARTCOMPOSITION = 0x010D, | 376 WM_IME_STARTCOMPOSITION = 0x010D, |
398 WM_IME_ENDCOMPOSITION = 0x010E, | 377 WM_IME_ENDCOMPOSITION = 0x010E, |
399 WM_IME_COMPOSITION = 0x010F, | 378 WM_IME_COMPOSITION = 0x010F, |
400 WM_IME_KEYLAST = 0x010F, | 379 WM_IME_KEYLAST = 0x010F, |
401 WM_INITDIALOG = 0x0110, | 380 WM_INITDIALOG = 0x0110, |
402 WM_COMMAND = 0x0111, | 381 WM_COMMAND = 0x0111, |
403 WM_SYSCOMMAND = 0x0112, | 382 WM_SYSCOMMAND = 0x0112, |
404 WM_TIMER = 0x0113, | 383 WM_TIMER = 0x0113, |
405 WM_HSCROLL = 0x0114, | 384 WM_HSCROLL = 0x0114, |
406 WM_VSCROLL = 0x0115, | 385 WM_VSCROLL = 0x0115, |
407 WM_INITMENU = 0x0116, | 386 WM_INITMENU = 0x0116, |
408 WM_INITMENUPOPUP = 0x0117, | 387 WM_INITMENUPOPUP = 0x0117, |
409 WM_MENUSELECT = 0x011F, | 388 WM_MENUSELECT = 0x011F, |
410 WM_MENUCHAR = 0x0120, | 389 WM_MENUCHAR = 0x0120, |
411 WM_ENTERIDLE = 0x0121, | 390 WM_ENTERIDLE = 0x0121, |
412 WM_MENURBUTTONUP = 0x0122, | 391 WM_MENURBUTTONUP = 0x0122, |
413 WM_MENUDRAG = 0x0123, | 392 WM_MENUDRAG = 0x0123, |
414 WM_MENUGETOBJECT = 0x0124, | 393 WM_MENUGETOBJECT = 0x0124, |
415 WM_UNINITMENUPOPUP = 0x0125, | 394 WM_UNINITMENUPOPUP = 0x0125, |
416 WM_MENUCOMMAND = 0x0126, | 395 WM_MENUCOMMAND = 0x0126, |
417 WM_CHANGEUISTATE = 0x0127, | 396 WM_CHANGEUISTATE = 0x0127, |
418 WM_UPDATEUISTATE = 0x0128, | 397 WM_UPDATEUISTATE = 0x0128, |
419 WM_QUERYUISTATE = 0x0129, | 398 WM_QUERYUISTATE = 0x0129, |
420 WM_CTLCOLORMSGBOX = 0x0132, | 399 WM_CTLCOLORMSGBOX = 0x0132, |
421 WM_CTLCOLOREDIT = 0x0133, | 400 WM_CTLCOLOREDIT = 0x0133, |
422 WM_CTLCOLORLISTBOX = 0x0134, | 401 WM_CTLCOLORLISTBOX = 0x0134, |
423 WM_CTLCOLORBTN = 0x0135, | 402 WM_CTLCOLORBTN = 0x0135, |
424 WM_CTLCOLORDLG = 0x0136, | 403 WM_CTLCOLORDLG = 0x0136, |
425 WM_CTLCOLORSCROLLBAR = 0x0137, | 404 WM_CTLCOLORSCROLLBAR = 0x0137, |
426 WM_CTLCOLORSTATIC = 0x0138, | 405 WM_CTLCOLORSTATIC = 0x0138, |
427 WM_MOUSEFIRST = 0x0200, | 406 WM_MOUSEFIRST = 0x0200, |
428 WM_MOUSEMOVE = 0x0200, | 407 WM_MOUSEMOVE = 0x0200, |
429 WM_LBUTTONDOWN = 0x0201, | 408 WM_LBUTTONDOWN = 0x0201, |
430 WM_LBUTTONUP = 0x0202, | 409 WM_LBUTTONUP = 0x0202, |
431 WM_LBUTTONDBLCLK = 0x0203, | 410 WM_LBUTTONDBLCLK = 0x0203, |
432 WM_RBUTTONDOWN = 0x0204, | 411 WM_RBUTTONDOWN = 0x0204, |
433 WM_RBUTTONUP = 0x0205, | 412 WM_RBUTTONUP = 0x0205, |
434 WM_RBUTTONDBLCLK = 0x0206, | 413 WM_RBUTTONDBLCLK = 0x0206, |
435 WM_MBUTTONDOWN = 0x0207, | 414 WM_MBUTTONDOWN = 0x0207, |
436 WM_MBUTTONUP = 0x0208, | 415 WM_MBUTTONUP = 0x0208, |
437 WM_MBUTTONDBLCLK = 0x0209, | 416 WM_MBUTTONDBLCLK = 0x0209, |
438 WM_MOUSEWHEEL = 0x020A, | 417 WM_MOUSEWHEEL = 0x020A, |
439 WM_XBUTTONDOWN = 0x020B, | 418 WM_XBUTTONDOWN = 0x020B, |
440 WM_XBUTTONUP = 0x020C, | 419 WM_XBUTTONUP = 0x020C, |
441 WM_XBUTTONDBLCLK = 0x020D, | 420 WM_XBUTTONDBLCLK = 0x020D, |
442 WM_PARENTNOTIFY = 0x0210, | 421 WM_PARENTNOTIFY = 0x0210, |
443 WM_ENTERMENULOOP = 0x0211, | 422 WM_ENTERMENULOOP = 0x0211, |
444 WM_EXITMENULOOP = 0x0212, | 423 WM_EXITMENULOOP = 0x0212, |
445 WM_NEXTMENU = 0x0213, | 424 WM_NEXTMENU = 0x0213, |
446 WM_SIZING = 0x0214, | 425 WM_SIZING = 0x0214, |
447 WM_CAPTURECHANGED = 0x0215, | 426 WM_CAPTURECHANGED = 0x0215, |
448 WM_MOVING = 0x0216, | 427 WM_MOVING = 0x0216, |
449 WM_POWERBROADCAST = 0x0218, | 428 WM_POWERBROADCAST = 0x0218, |
450 WM_DEVICECHANGE = 0x0219, | 429 WM_DEVICECHANGE = 0x0219, |
451 WM_MDICREATE = 0x0220, | 430 WM_MDICREATE = 0x0220, |
452 WM_MDIDESTROY = 0x0221, | 431 WM_MDIDESTROY = 0x0221, |
453 WM_MDIACTIVATE = 0x0222, | 432 WM_MDIACTIVATE = 0x0222, |
454 WM_MDIRESTORE = 0x0223, | 433 WM_MDIRESTORE = 0x0223, |
455 WM_MDINEXT = 0x0224, | 434 WM_MDINEXT = 0x0224, |
456 WM_MDIMAXIMIZE = 0x0225, | 435 WM_MDIMAXIMIZE = 0x0225, |
457 WM_MDITILE = 0x0226, | 436 WM_MDITILE = 0x0226, |
458 WM_MDICASCADE = 0x0227, | 437 WM_MDICASCADE = 0x0227, |
459 WM_MDIICONARRANGE = 0x0228, | 438 WM_MDIICONARRANGE = 0x0228, |
460 WM_MDIGETACTIVE = 0x0229, | 439 WM_MDIGETACTIVE = 0x0229, |
461 WM_MDISETMENU = 0x0230, | 440 WM_MDISETMENU = 0x0230, |
462 WM_ENTERSIZEMOVE = 0x0231, | 441 WM_ENTERSIZEMOVE = 0x0231, |
463 WM_EXITSIZEMOVE = 0x0232, | 442 WM_EXITSIZEMOVE = 0x0232, |
464 WM_DROPFILES = 0x0233, | 443 WM_DROPFILES = 0x0233, |
465 WM_MDIREFRESHMENU = 0x0234, | 444 WM_MDIREFRESHMENU = 0x0234, |
466 WM_IME_SETCONTEXT = 0x0281, | 445 WM_IME_SETCONTEXT = 0x0281, |
467 WM_IME_NOTIFY = 0x0282, | 446 WM_IME_NOTIFY = 0x0282, |
468 WM_IME_CONTROL = 0x0283, | 447 WM_IME_CONTROL = 0x0283, |
469 WM_IME_COMPOSITIONFULL = 0x0284, | 448 WM_IME_COMPOSITIONFULL = 0x0284, |
470 WM_IME_SELECT = 0x0285, | 449 WM_IME_SELECT = 0x0285, |
471 WM_IME_CHAR = 0x0286, | 450 WM_IME_CHAR = 0x0286, |
472 WM_IME_REQUEST = 0x0288, | 451 WM_IME_REQUEST = 0x0288, |
473 WM_IME_KEYDOWN = 0x0290, | 452 WM_IME_KEYDOWN = 0x0290, |
474 WM_IME_KEYUP = 0x0291, | 453 WM_IME_KEYUP = 0x0291, |
475 WM_MOUSEHOVER = 0x02A1, | 454 WM_MOUSEHOVER = 0x02A1, |
476 WM_MOUSELEAVE = 0x02A3, | 455 WM_MOUSELEAVE = 0x02A3, |
477 WM_NCMOUSEHOVER = 0x02A0, | 456 WM_NCMOUSEHOVER = 0x02A0, |
478 WM_NCMOUSELEAVE = 0x02A2, | 457 WM_NCMOUSELEAVE = 0x02A2, |
479 WM_WTSSESSION_CHANGE = 0x02B1, | 458 WM_WTSSESSION_CHANGE = 0x02B1, |
480 WM_TABLET_FIRST = 0x02C0, | 459 WM_TABLET_FIRST = 0x02C0, |
481 WM_TABLET_LAST = 0x02DF, | 460 WM_TABLET_LAST = 0x02DF, |
482 WM_CUT = 0x0300, | 461 WM_CUT = 0x0300, |
483 WM_COPY = 0x0301, | 462 WM_COPY = 0x0301, |
484 WM_PASTE = 0x0302, | 463 WM_PASTE = 0x0302, |
485 WM_CLEAR = 0x0303, | 464 WM_CLEAR = 0x0303, |
486 WM_UNDO = 0x0304, | 465 WM_UNDO = 0x0304, |
487 WM_RENDERFORMAT = 0x0305, | 466 WM_RENDERFORMAT = 0x0305, |
488 WM_RENDERALLFORMATS = 0x0306, | 467 WM_RENDERALLFORMATS = 0x0306, |
489 WM_DESTROYCLIPBOARD = 0x0307, | 468 WM_DESTROYCLIPBOARD = 0x0307, |
490 WM_DRAWCLIPBOARD = 0x0308, | 469 WM_DRAWCLIPBOARD = 0x0308, |
491 WM_PAINTCLIPBOARD = 0x0309, | 470 WM_PAINTCLIPBOARD = 0x0309, |
492 WM_VSCROLLCLIPBOARD = 0x030A, | 471 WM_VSCROLLCLIPBOARD = 0x030A, |
493 WM_SIZECLIPBOARD = 0x030B, | 472 WM_SIZECLIPBOARD = 0x030B, |
494 WM_ASKCBFORMATNAME = 0x030C, | 473 WM_ASKCBFORMATNAME = 0x030C, |
495 WM_CHANGECBCHAIN = 0x030D, | 474 WM_CHANGECBCHAIN = 0x030D, |
496 WM_HSCROLLCLIPBOARD = 0x030E, | 475 WM_HSCROLLCLIPBOARD = 0x030E, |
497 WM_QUERYNEWPALETTE = 0x030F, | 476 WM_QUERYNEWPALETTE = 0x030F, |
498 WM_PALETTEISCHANGING = 0x0310, | 477 WM_PALETTEISCHANGING = 0x0310, |
499 WM_PALETTECHANGED = 0x0311, | 478 WM_PALETTECHANGED = 0x0311, |
500 WM_HOTKEY = 0x0312, | 479 WM_HOTKEY = 0x0312, |
501 WM_PRINT = 0x0317, | 480 WM_PRINT = 0x0317, |
502 WM_PRINTCLIENT = 0x0318, | 481 WM_PRINTCLIENT = 0x0318, |
503 WM_APPCOMMAND = 0x0319, | 482 WM_APPCOMMAND = 0x0319, |
504 WM_THEMECHANGED = 0x031A, | 483 WM_THEMECHANGED = 0x031A, |
505 WM_HANDHELDFIRST = 0x0358, | 484 WM_HANDHELDFIRST = 0x0358, |
506 WM_HANDHELDLAST = 0x035F, | 485 WM_HANDHELDLAST = 0x035F, |
507 WM_AFXFIRST = 0x0360, | 486 WM_AFXFIRST = 0x0360, |
508 WM_AFXLAST = 0x037F, | 487 WM_AFXLAST = 0x037F, |
509 WM_PENWINFIRST = 0x0380, | 488 WM_PENWINFIRST = 0x0380, |
510 WM_PENWINLAST = 0x038F, | 489 WM_PENWINLAST = 0x038F, |
511 WM_APP = 0x8000, | 490 WM_APP = 0x8000, |
512 WM_USER = 0x0400 | 491 WM_USER = 0x0400 |
513 } | 492 } |
514 enum { | 493 enum { |
515 PBT_APMQUERYSUSPEND = 0x0000, | 494 PBT_APMQUERYSUSPEND = 0x0000, |
516 PBT_APMQUERYSTANDBY = 0x0001, | 495 PBT_APMQUERYSTANDBY = 0x0001, |
517 PBT_APMQUERYSUSPENDFAILED = 0x0002, | 496 PBT_APMQUERYSUSPENDFAILED = 0x0002, |
528 PBT_APMRESUMEAUTOMATIC = 0x0012 | 507 PBT_APMRESUMEAUTOMATIC = 0x0012 |
529 } | 508 } |
530 //}}} | 509 //}}} |
531 | 510 |
532 enum { | 511 enum { |
533 MK_LBUTTON = 0x0001, | 512 MK_LBUTTON = 0x0001, |
534 MK_RBUTTON = 0x0002, | 513 MK_RBUTTON = 0x0002, |
535 MK_SHIFT = 0x0004, | 514 MK_SHIFT = 0x0004, |
536 MK_CONTROL = 0x0008, | 515 MK_CONTROL = 0x0008, |
537 MK_MBUTTON = 0x0010, | 516 MK_MBUTTON = 0x0010, |
538 MK_XBUTTON1 = 0x0020, | 517 MK_XBUTTON1 = 0x0020, |
539 MK_XBUTTON2 = 0x0040 | 518 MK_XBUTTON2 = 0x0040 |
540 } | 519 } |
541 | 520 |
542 enum { | 521 enum { |
543 WMSZ_LEFT = 1, | 522 WMSZ_LEFT = 1, |
544 WMSZ_RIGHT = 2, | 523 WMSZ_RIGHT = 2, |
545 WMSZ_TOP = 3, | 524 WMSZ_TOP = 3, |
546 WMSZ_TOPLEFT = 4, | 525 WMSZ_TOPLEFT = 4, |
547 WMSZ_TOPRIGHT = 5, | 526 WMSZ_TOPRIGHT = 5, |
548 WMSZ_BOTTOM = 6, | 527 WMSZ_BOTTOM = 6, |
549 WMSZ_BOTTOMLEFT = 7, | 528 WMSZ_BOTTOMLEFT = 7, |
550 WMSZ_BOTTOMRIGHT = 8 | 529 WMSZ_BOTTOMRIGHT = 8 |
551 } | 530 } |
552 | 531 |
553 enum { | 532 enum { |
554 SIZE_RESTORED = 0, | 533 SIZE_RESTORED = 0, |
557 SIZE_MAXSHOW = 3, | 536 SIZE_MAXSHOW = 3, |
558 SIZE_MAXHIDE = 4 | 537 SIZE_MAXHIDE = 4 |
559 } | 538 } |
560 | 539 |
561 enum { | 540 enum { |
562 SW_HIDE = 0, | 541 SW_HIDE = 0, |
563 SW_SHOWNORMAL = 1, | 542 SW_SHOWNORMAL = 1, |
564 SW_NORMAL = 1, | 543 SW_NORMAL = 1, |
565 SW_SHOWMINIMIZED = 2, | 544 SW_SHOWMINIMIZED = 2, |
566 SW_SHOWMAXIMIZED = 3, | 545 SW_SHOWMAXIMIZED = 3, |
567 SW_MAXIMIZE = 3, | 546 SW_MAXIMIZE = 3, |
568 SW_SHOWNOACTIVATE = 4, | 547 SW_SHOWNOACTIVATE = 4, |
569 SW_SHOW = 5, | 548 SW_SHOW = 5, |
570 SW_MINIMIZE = 6, | 549 SW_MINIMIZE = 6, |
571 SW_SHOWMINNOACTIVE = 7, | 550 SW_SHOWMINNOACTIVE = 7, |
572 SW_SHOWNA = 8, | 551 SW_SHOWNA = 8, |
573 SW_RESTORE = 9, | 552 SW_RESTORE = 9, |
574 SW_SHOWDEFAULT = 10, | 553 SW_SHOWDEFAULT = 10, |
575 SW_FORCEMINIMIZE = 11, | 554 SW_FORCEMINIMIZE = 11, |
576 SW_MAX = 11 | 555 SW_MAX = 11 |
577 } | 556 } |
578 | 557 |
579 enum { | 558 enum { |
580 GWL_STYLE = -16, | 559 GWL_STYLE = -16, |
581 GWL_EXSTYLE = -20 | 560 GWL_EXSTYLE = -20 |
582 } | 561 } |
583 | 562 |
584 DWORD GetClassLongA(HWND hWnd, int nIndex); | |
585 DWORD GetClassLongW(HWND hWnd, int nIndex); | 563 DWORD GetClassLongW(HWND hWnd, int nIndex); |
586 | 564 |
587 DWORD SetClassLongA(HWND hWnd, int nIndex, LONG dwNewLong); | |
588 DWORD SetClassLongW(HWND hWnd, int nIndex, LONG dwNewLong); | 565 DWORD SetClassLongW(HWND hWnd, int nIndex, LONG dwNewLong); |
589 | 566 |
590 ULONG_PTR GetClassLongPtrA(HWND hWnd, int nIndex); | |
591 ULONG_PTR GetClassLongPtrW(HWND hWnd, int nIndex); | 567 ULONG_PTR GetClassLongPtrW(HWND hWnd, int nIndex); |
592 | 568 |
593 ULONG_PTR SetClassLongPtrA(HWND hWnd, int nIndex, LONG_PTR dwNewLong); | |
594 ULONG_PTR SetClassLongPtrW(HWND hWnd, int nIndex, LONG_PTR dwNewLong); | 569 ULONG_PTR SetClassLongPtrW(HWND hWnd, int nIndex, LONG_PTR dwNewLong); |
595 | 570 |
596 LONG GetWindowLongA(HWND hWnd, int nIndex); | |
597 LONG GetWindowLongW(HWND hWnd, int nIndex); | 571 LONG GetWindowLongW(HWND hWnd, int nIndex); |
598 | 572 |
599 LONG SetWindowLongA(HWND hWnd, int nIndex, LONG dwNewLong); | |
600 LONG SetWindowLongW(HWND hWnd, int nIndex, LONG dwNewLong); | 573 LONG SetWindowLongW(HWND hWnd, int nIndex, LONG dwNewLong); |
601 | 574 |
602 LONG_PTR GetWindowLongPtrA(HWND hWnd, int nIndex); | |
603 LONG_PTR GetWindowLongPtrW(HWND hWnd, int nIndex); | 575 LONG_PTR GetWindowLongPtrW(HWND hWnd, int nIndex); |
604 | 576 |
605 LONG_PTR SetWindowLongPtrA(HWND hWnd, int nIndex, LONG_PTR dwNewLong); | |
606 LONG_PTR SetWindowLongPtrW(HWND hWnd, int nIndex, LONG_PTR dwNewLong); | 577 LONG_PTR SetWindowLongPtrW(HWND hWnd, int nIndex, LONG_PTR dwNewLong); |
607 | 578 |
608 BOOL ShowWindow(HWND hWnd, int nCmdShow); | 579 BOOL ShowWindow(HWND hWnd, int nCmdShow); |
609 | 580 |
610 //Windows 98 required | 581 //Windows 98 required |
617 BOOL GetWindowRect(HWND hWnd, RECT* lpRect); | 588 BOOL GetWindowRect(HWND hWnd, RECT* lpRect); |
618 | 589 |
619 BOOL GetClientRect(HWND hWnd, RECT* lpRect); | 590 BOOL GetClientRect(HWND hWnd, RECT* lpRect); |
620 | 591 |
621 enum { | 592 enum { |
622 SWP_NOSIZE = 0x0001, | 593 SWP_NOSIZE = 0x0001, |
623 SWP_NOMOVE = 0x0002, | 594 SWP_NOMOVE = 0x0002, |
624 SWP_NOZORDER = 0x0004, | 595 SWP_NOZORDER = 0x0004, |
625 SWP_NOACTIVATE = 0x0010, | 596 SWP_NOACTIVATE = 0x0010, |
626 SWP_FRAMECHANGED = 0x0020 | 597 SWP_FRAMECHANGED = 0x0020 |
627 } | 598 } |
628 | 599 |
629 BOOL SetWindowPos(HWND hWnd, HWND hWndInsertAfter, int x, int y, int cx, int cy, UINT uFlags); | 600 BOOL SetWindowPos(HWND hWnd, HWND hWndInsertAfter, int x, int y, int cx, int cy, UINT uFlags); |
630 | 601 |
632 | 603 |
633 int SetWindowRgn(HWND hWnd, HRGN hRgn, BOOL bRedraw); | 604 int SetWindowRgn(HWND hWnd, HRGN hRgn, BOOL bRedraw); |
634 | 605 |
635 enum { | 606 enum { |
636 ULW_COLORKEY = 0x00000001, | 607 ULW_COLORKEY = 0x00000001, |
637 ULW_ALPHA = 0x00000002, | 608 ULW_ALPHA = 0x00000002, |
638 ULW_OPAQUE = 0x00000004 | 609 ULW_OPAQUE = 0x00000004 |
639 } | 610 } |
640 | 611 |
641 BOOL UpdateLayeredWindow( | 612 BOOL UpdateLayeredWindow( |
642 HWND hWnd, | 613 HWND hWnd, |
643 HDC hdcDst, | 614 HDC hdcDst, |
657 | 628 |
658 BOOL EnableWindow(HWND hWnd, BOOL bEnable); | 629 BOOL EnableWindow(HWND hWnd, BOOL bEnable); |
659 | 630 |
660 enum { | 631 enum { |
661 GW_HWNDFIRST = 0, | 632 GW_HWNDFIRST = 0, |
662 GW_HWNDLAST = 1, | 633 GW_HWNDLAST = 1, |
663 GW_HWNDNEXT = 2, | 634 GW_HWNDNEXT = 2, |
664 GW_HWNDPREV = 3, | 635 GW_HWNDPREV = 3, |
665 GW_OWNER = 4, | 636 GW_OWNER = 4, |
666 GW_CHILD = 5 | 637 GW_CHILD = 5 |
667 } | 638 } |
668 | 639 |
669 HWND GetWindow(HWND hWnd, UINT uCmd); | 640 HWND GetWindow(HWND hWnd, UINT uCmd); |
670 | 641 |
671 BOOL GetWindowInfo(HWND hwnd, WINDOWINFO* pwi); | 642 BOOL GetWindowInfo(HWND hwnd, WINDOWINFO* pwi); |
672 | 643 |
673 int GetWindowTextLength(HWND hWnd); | 644 int GetWindowTextLength(HWND hWnd); |
674 | 645 |
675 int GetWindowTextA(HWND hWnd, LPSTR lpString, int nMaxCount); | |
676 int GetWindowTextW(HWND hWnd, LPWSTR lpString, int nMaxCount); | 646 int GetWindowTextW(HWND hWnd, LPWSTR lpString, int nMaxCount); |
677 | 647 |
678 BOOL SetWindowTextA(HWND hWnd, LPCSTR lpString); | |
679 BOOL SetWindowTextW(HWND hWnd, LPCWSTR lpString); | 648 BOOL SetWindowTextW(HWND hWnd, LPCWSTR lpString); |
680 | 649 |
681 UINT GetWindowModuleFileNameA(HWND hWnd, LPSTR lpszFileName, UINT cchFileNameMax); | |
682 UINT GetWindowModuleFileNameW(HWND hWnd, LPWSTR lpszFileName, UINT cchFileNameMax); | 650 UINT GetWindowModuleFileNameW(HWND hWnd, LPWSTR lpszFileName, UINT cchFileNameMax); |
683 | 651 |
684 BOOL SetPropA(HWND hWnd, LPCSTR lpString, HANDLE hData); | |
685 BOOL SetPropW(HWND hWnd, LPCWSTR lpString, HANDLE hData); | 652 BOOL SetPropW(HWND hWnd, LPCWSTR lpString, HANDLE hData); |
686 | 653 |
687 HANDLE GetPropA(HWND hWnd, LPCSTR lpString); | |
688 HANDLE GetPropW(HWND hWnd, LPCWSTR lpString); | 654 HANDLE GetPropW(HWND hWnd, LPCWSTR lpString); |
689 | 655 |
690 HANDLE RemovePropA(HWND hWnd, LPCSTR lpString); | |
691 HANDLE RemovePropW(HWND hWnd, LPCWSTR lpString); | 656 HANDLE RemovePropW(HWND hWnd, LPCWSTR lpString); |
692 | 657 |
693 DWORD CommDlgExtendedError(); | 658 DWORD CommDlgExtendedError(); |
694 enum { FNERR_BUFFERTOOSMALL = 0x3003 } | 659 enum { FNERR_BUFFERTOOSMALL = 0x3003 } |
695 | 660 |
696 enum { | 661 enum { |
697 OFN_READONLY = 0x00000001, | 662 OFN_READONLY = 0x00000001, |
698 OFN_OVERWRITEPROMPT = 0x00000002, | 663 OFN_OVERWRITEPROMPT = 0x00000002, |
699 OFN_HIDEREADONLY = 0x00000004, | 664 OFN_HIDEREADONLY = 0x00000004, |
700 OFN_NOCHANGEDIR = 0x00000008, | 665 OFN_NOCHANGEDIR = 0x00000008, |
701 OFN_SHOWHELP = 0x00000010, | 666 OFN_SHOWHELP = 0x00000010, |
702 OFN_ENABLEHOOK = 0x00000020, | 667 OFN_ENABLEHOOK = 0x00000020, |
703 OFN_ENABLETEMPLATE = 0x00000040, | 668 OFN_ENABLETEMPLATE = 0x00000040, |
704 OFN_ENABLETEMPLATEHANDLE = 0x00000080, | 669 OFN_ENABLETEMPLATEHANDLE = 0x00000080, |
705 OFN_NOVALIDATE = 0x00000100, | 670 OFN_NOVALIDATE = 0x00000100, |
706 OFN_ALLOWMULTISELECT = 0x00000200, | 671 OFN_ALLOWMULTISELECT = 0x00000200, |
707 OFN_EXTENSIONDIFFERENT = 0x00000400, | 672 OFN_EXTENSIONDIFFERENT = 0x00000400, |
708 OFN_PATHMUSTEXIST = 0x00000800, | 673 OFN_PATHMUSTEXIST = 0x00000800, |
709 OFN_FILEMUSTEXIST = 0x00001000, | 674 OFN_FILEMUSTEXIST = 0x00001000, |
710 OFN_CREATEPROMPT = 0x00002000, | 675 OFN_CREATEPROMPT = 0x00002000, |
711 OFN_SHAREAWARE = 0x00004000, | 676 OFN_SHAREAWARE = 0x00004000, |
712 OFN_NOREADONLYRETURN = 0x00008000, | 677 OFN_NOREADONLYRETURN = 0x00008000, |
713 OFN_NOTESTFILECREATE = 0x00010000, | 678 OFN_NOTESTFILECREATE = 0x00010000, |
714 OFN_NONETWORKBUTTON = 0x00020000, | 679 OFN_NONETWORKBUTTON = 0x00020000, |
715 OFN_NOLONGNAMES = 0x00040000, | 680 OFN_NOLONGNAMES = 0x00040000, |
716 OFN_EXPLORER = 0x00080000, | 681 OFN_EXPLORER = 0x00080000, |
717 OFN_NODEREFERENCELINKS = 0x00100000, | 682 OFN_NODEREFERENCELINKS = 0x00100000, |
718 OFN_LONGNAMES = 0x00200000, | 683 OFN_LONGNAMES = 0x00200000, |
719 OFN_ENABLEINCLUDENOTIFY = 0x00400000, | 684 OFN_ENABLEINCLUDENOTIFY = 0x00400000, |
720 OFN_ENABLESIZING = 0x00800000, | 685 OFN_ENABLESIZING = 0x00800000, |
721 OFN_DONTADDTORECENT = 0x02000000, | 686 OFN_DONTADDTORECENT = 0x02000000, |
722 OFN_FORCESHOWHIDDEN = 0x10000000 | 687 OFN_FORCESHOWHIDDEN = 0x10000000 |
723 } | 688 } |
724 | 689 |
725 BOOL GetOpenFileNameA(OPENFILENAME* lpofn); | |
726 BOOL GetOpenFileNameW(OPENFILENAME* lpofn); | 690 BOOL GetOpenFileNameW(OPENFILENAME* lpofn); |
727 | 691 |
728 BOOL GetSaveFileNameA(OPENFILENAME* lpofn); | |
729 BOOL GetSaveFileNameW(OPENFILENAME* lpofn); | 692 BOOL GetSaveFileNameW(OPENFILENAME* lpofn); |
730 | 693 |
731 //}}} | 694 //}}} |
732 | 695 |
733 //{{{ painting functions | 696 //{{{ painting functions |
783 } | 746 } |
784 | 747 |
785 BOOL BitBlt(HDC hdc, int x, int y, int cx, int cy, HDC hdcSrc, int x1, int y1, DWORD rop); | 748 BOOL BitBlt(HDC hdc, int x, int y, int cx, int cy, HDC hdcSrc, int x1, int y1, DWORD rop); |
786 | 749 |
787 enum { | 750 enum { |
788 AC_SRC_OVER = 0x00, | 751 AC_SRC_OVER = 0x00, |
789 AC_SRC_ALPHA = 0x01 | 752 AC_SRC_ALPHA = 0x01 |
790 } | 753 } |
791 | 754 |
792 int EnumFontFamiliesExA( | |
793 HDC hdc, LOGFONT* lpLogfont, | |
794 FONTENUMPROCA lpProc, LPARAM lParam, DWORD dwFlags); | |
795 int EnumFontFamiliesExW( | 755 int EnumFontFamiliesExW( |
796 HDC hdc, LOGFONT* lpLogfont, | 756 HDC hdc, LOGFONT* lpLogfont, |
797 FONTENUMPROCW lpProc, LPARAM lParam, DWORD dwFlags); | 757 FONTENUMPROCW lpProc, LPARAM lParam, DWORD dwFlags); |
798 | 758 |
799 alias int function(ENUMLOGFONTEX*, TEXTMETRIC*, DWORD, LPARAM) FONTENUMPROCA; | 759 alias int function(ENUMLOGFONTEX*, TEXTMETRIC*, DWORD, LPARAM) FONTENUMPROCA; |
800 alias int function(ENUMLOGFONTEX*, TEXTMETRIC*, DWORD, LPARAM) FONTENUMPROCW; | 760 alias int function(ENUMLOGFONTEX*, TEXTMETRIC*, DWORD, LPARAM) FONTENUMPROCW; |
801 //}}} | 761 //}}} |
802 | 762 |
803 //{{{ message functions | 763 //{{{ message functions |
804 BOOL GetMessageA(MSG* lpMsg, HWND hWnd, UINT wMsgFilterMin, UINT wMsgFilterMax); | |
805 BOOL GetMessageW(MSG* lpMsg, HWND hWnd, UINT wMsgFilterMin, UINT wMsgFilterMax); | 764 BOOL GetMessageW(MSG* lpMsg, HWND hWnd, UINT wMsgFilterMin, UINT wMsgFilterMax); |
806 | 765 |
807 BOOL TranslateMessage(MSG* lpMsg); | 766 BOOL TranslateMessage(MSG* lpMsg); |
808 | 767 |
809 LRESULT DispatchMessageA(MSG* lpMsg); | |
810 LRESULT DispatchMessageW(MSG* lpMsg); | 768 LRESULT DispatchMessageW(MSG* lpMsg); |
811 | |
812 BOOL PostMessageA(HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam); | |
813 | 769 |
814 BOOL PostMessageW(HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam); | 770 BOOL PostMessageW(HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam); |
815 | 771 |
816 void PostQuitMessage(int nExitCode); | 772 void PostQuitMessage(int nExitCode); |
817 | 773 |
822 BOOL ReplyMessage(LRESULT lResult); | 778 BOOL ReplyMessage(LRESULT lResult); |
823 //}}} | 779 //}}} |
824 | 780 |
825 //{{{ clipboard functions | 781 //{{{ clipboard functions |
826 enum { | 782 enum { |
827 CF_TEXT = 1, | 783 CF_TEXT = 1, |
828 CF_BITMAP = 2, | 784 CF_BITMAP = 2, |
829 CF_METAFILEPICT = 3, | 785 CF_METAFILEPICT = 3, |
830 CF_SYLK = 4, | 786 CF_SYLK = 4, |
831 CF_DIF = 5, | 787 CF_DIF = 5, |
832 CF_TIFF = 6, | 788 CF_TIFF = 6, |
833 CF_OEMTEXT = 7, | 789 CF_OEMTEXT = 7, |
834 CF_DIB = 8, | 790 CF_DIB = 8, |
835 CF_PALETTE = 9, | 791 CF_PALETTE = 9, |
836 CF_PENDATA = 10, | 792 CF_PENDATA = 10, |
837 CF_RIFF = 11, | 793 CF_RIFF = 11, |
838 CF_WAVE = 12, | 794 CF_WAVE = 12, |
839 CF_UNICODETEXT = 13, | 795 CF_UNICODETEXT = 13, |
840 CF_ENHMETAFILE = 14, | 796 CF_ENHMETAFILE = 14, |
841 CF_HDROP = 15, | 797 CF_HDROP = 15, |
842 CF_LOCALE = 16 | 798 CF_LOCALE = 16 |
843 } | 799 } |
844 | 800 |
845 BOOL OpenClipboard(HWND hWndNewOwner); | 801 BOOL OpenClipboard(HWND hWndNewOwner); |
846 | 802 |
847 BOOL CloseClipboard(); | 803 BOOL CloseClipboard(); |
864 HWND SetCapture(HWND hWnd); | 820 HWND SetCapture(HWND hWnd); |
865 | 821 |
866 BOOL ReleaseCapture(); | 822 BOOL ReleaseCapture(); |
867 | 823 |
868 enum { | 824 enum { |
869 TME_HOVER = 0x00000001, | 825 TME_HOVER = 0x00000001, |
870 TME_LEAVE = 0x00000002, | 826 TME_LEAVE = 0x00000002, |
871 TME_NONCLIENT = 0x00000010 | 827 TME_NONCLIENT = 0x00000010 |
872 } | 828 } |
873 BOOL TrackMouseEvent(TRACKMOUSEEVENT* lpEventTrack); | 829 BOOL TrackMouseEvent(TRACKMOUSEEVENT* lpEventTrack); |
874 | 830 |
875 HCURSOR SetCursor(HCURSOR hCursor); | 831 HCURSOR SetCursor(HCURSOR hCursor); |
878 //}}} | 834 //}}} |
879 | 835 |
880 //{{{ keyboard functions | 836 //{{{ keyboard functions |
881 //{{{ keys | 837 //{{{ keys |
882 enum { | 838 enum { |
883 VK_LBUTTON = 0x01, | 839 VK_LBUTTON = 0x01, |
884 VK_RBUTTON = 0x02, | 840 VK_RBUTTON = 0x02, |
885 VK_CANCEL = 0x03, | 841 VK_CANCEL = 0x03, |
886 VK_MBUTTON = 0x04, | 842 VK_MBUTTON = 0x04, |
887 VK_XBUTTON1 = 0x05, | 843 VK_XBUTTON1 = 0x05, |
888 VK_XBUTTON2 = 0x06, | 844 VK_XBUTTON2 = 0x06, |
889 VK_BACK = 0x08, | 845 VK_BACK = 0x08, |
890 VK_TAB = 0x09, | 846 VK_TAB = 0x09, |
891 VK_CLEAR = 0x0C, | 847 VK_CLEAR = 0x0C, |
892 VK_RETURN = 0x0D, | 848 VK_RETURN = 0x0D, |
893 VK_SHIFT = 0x10, | 849 VK_SHIFT = 0x10, |
894 VK_CONTROL = 0x11, | 850 VK_CONTROL = 0x11, |
895 VK_MENU = 0x12, | 851 VK_MENU = 0x12, |
896 VK_PAUSE = 0x13, | 852 VK_PAUSE = 0x13, |
897 VK_CAPITAL = 0x14, | 853 VK_CAPITAL = 0x14, |
898 VK_KANA = 0x15, | 854 VK_KANA = 0x15, |
899 VK_HANGEUL = 0x15, | 855 VK_HANGEUL = 0x15, |
900 VK_HANGUL = 0x15, | 856 VK_HANGUL = 0x15, |
901 VK_JUNJA = 0x17, | 857 VK_JUNJA = 0x17, |
902 VK_FINAL = 0x18, | 858 VK_FINAL = 0x18, |
903 VK_HANJA = 0x19, | 859 VK_HANJA = 0x19, |
904 VK_KANJI = 0x19, | 860 VK_KANJI = 0x19, |
905 VK_ESCAPE = 0x1B, | 861 VK_ESCAPE = 0x1B, |
906 VK_CONVERT = 0x1C, | 862 VK_CONVERT = 0x1C, |
907 VK_NONCONVERT = 0x1D, | 863 VK_NONCONVERT = 0x1D, |
908 VK_ACCEPT = 0x1E, | 864 VK_ACCEPT = 0x1E, |
909 VK_MODECHANGE = 0x1F, | 865 VK_MODECHANGE = 0x1F, |
910 VK_SPACE = 0x20, | 866 VK_SPACE = 0x20, |
911 VK_PRIOR = 0x21, | 867 VK_PRIOR = 0x21, |
912 VK_NEXT = 0x22, | 868 VK_NEXT = 0x22, |
913 VK_END = 0x23, | 869 VK_END = 0x23, |
914 VK_HOME = 0x24, | 870 VK_HOME = 0x24, |
915 VK_LEFT = 0x25, | 871 VK_LEFT = 0x25, |
916 VK_UP = 0x26, | 872 VK_UP = 0x26, |
917 VK_RIGHT = 0x27, | 873 VK_RIGHT = 0x27, |
918 VK_DOWN = 0x28, | 874 VK_DOWN = 0x28, |
919 VK_SELECT = 0x29, | 875 VK_SELECT = 0x29, |
920 VK_PRINT = 0x2A, | 876 VK_PRINT = 0x2A, |
921 VK_EXECUTE = 0x2B, | 877 VK_EXECUTE = 0x2B, |
922 VK_SNAPSHOT = 0x2C, | 878 VK_SNAPSHOT = 0x2C, |
923 VK_INSERT = 0x2D, | 879 VK_INSERT = 0x2D, |
924 VK_DELETE = 0x2E, | 880 VK_DELETE = 0x2E, |
925 VK_HELP = 0x2F, | 881 VK_HELP = 0x2F, |
926 VK_LWIN = 0x5B, | 882 VK_LWIN = 0x5B, |
927 VK_RWIN = 0x5C, | 883 VK_RWIN = 0x5C, |
928 VK_APPS = 0x5D, | 884 VK_APPS = 0x5D, |
929 VK_SLEEP = 0x5F, | 885 VK_SLEEP = 0x5F, |
930 VK_NUMPAD0 = 0x60, | 886 VK_NUMPAD0 = 0x60, |
931 VK_NUMPAD1 = 0x61, | 887 VK_NUMPAD1 = 0x61, |
932 VK_NUMPAD2 = 0x62, | 888 VK_NUMPAD2 = 0x62, |
933 VK_NUMPAD3 = 0x63, | 889 VK_NUMPAD3 = 0x63, |
934 VK_NUMPAD4 = 0x64, | 890 VK_NUMPAD4 = 0x64, |
935 VK_NUMPAD5 = 0x65, | 891 VK_NUMPAD5 = 0x65, |
936 VK_NUMPAD6 = 0x66, | 892 VK_NUMPAD6 = 0x66, |
937 VK_NUMPAD7 = 0x67, | 893 VK_NUMPAD7 = 0x67, |
938 VK_NUMPAD8 = 0x68, | 894 VK_NUMPAD8 = 0x68, |
939 VK_NUMPAD9 = 0x69, | 895 VK_NUMPAD9 = 0x69, |
940 VK_MULTIPLY = 0x6A, | 896 VK_MULTIPLY = 0x6A, |
941 VK_ADD = 0x6B, | 897 VK_ADD = 0x6B, |
942 VK_SEPARATOR = 0x6C, | 898 VK_SEPARATOR = 0x6C, |
943 VK_SUBTRACT = 0x6D, | 899 VK_SUBTRACT = 0x6D, |
944 VK_DECIMAL = 0x6E, | 900 VK_DECIMAL = 0x6E, |
945 VK_DIVIDE = 0x6F, | 901 VK_DIVIDE = 0x6F, |
946 VK_F1 = 0x70, | 902 VK_F1 = 0x70, |
947 VK_F2 = 0x71, | 903 VK_F2 = 0x71, |
948 VK_F3 = 0x72, | 904 VK_F3 = 0x72, |
949 VK_F4 = 0x73, | 905 VK_F4 = 0x73, |
950 VK_F5 = 0x74, | 906 VK_F5 = 0x74, |
951 VK_F6 = 0x75, | 907 VK_F6 = 0x75, |
952 VK_F7 = 0x76, | 908 VK_F7 = 0x76, |
953 VK_F8 = 0x77, | 909 VK_F8 = 0x77, |
954 VK_F9 = 0x78, | 910 VK_F9 = 0x78, |
955 VK_F10 = 0x79, | 911 VK_F10 = 0x79, |
956 VK_F11 = 0x7A, | 912 VK_F11 = 0x7A, |
957 VK_F12 = 0x7B, | 913 VK_F12 = 0x7B, |
958 VK_F13 = 0x7C, | 914 VK_F13 = 0x7C, |
959 VK_F14 = 0x7D, | 915 VK_F14 = 0x7D, |
960 VK_F15 = 0x7E, | 916 VK_F15 = 0x7E, |
961 VK_F16 = 0x7F, | 917 VK_F16 = 0x7F, |
962 VK_F17 = 0x80, | 918 VK_F17 = 0x80, |
963 VK_F18 = 0x81, | 919 VK_F18 = 0x81, |
964 VK_F19 = 0x82, | 920 VK_F19 = 0x82, |
965 VK_F20 = 0x83, | 921 VK_F20 = 0x83, |
966 VK_F21 = 0x84, | 922 VK_F21 = 0x84, |
967 VK_F22 = 0x85, | 923 VK_F22 = 0x85, |
968 VK_F23 = 0x86, | 924 VK_F23 = 0x86, |
969 VK_F24 = 0x87, | 925 VK_F24 = 0x87, |
970 VK_NUMLOCK = 0x90, | 926 VK_NUMLOCK = 0x90, |
971 VK_SCROLL = 0x91, | 927 VK_SCROLL = 0x91, |
972 VK_OEM_NEC_EQUAL = 0x92, | 928 VK_OEM_NEC_EQUAL = 0x92, |
973 VK_OEM_FJ_JISHO = 0x92, | 929 VK_OEM_FJ_JISHO = 0x92, |
974 VK_OEM_FJ_MASSHOU = 0x93, | 930 VK_OEM_FJ_MASSHOU = 0x93, |
975 VK_OEM_FJ_TOUROKU = 0x94, | 931 VK_OEM_FJ_TOUROKU = 0x94, |
976 VK_OEM_FJ_LOYA = 0x95, | 932 VK_OEM_FJ_LOYA = 0x95, |
977 VK_OEM_FJ_ROYA = 0x96, | 933 VK_OEM_FJ_ROYA = 0x96, |
978 VK_LSHIFT = 0xA0, | 934 VK_LSHIFT = 0xA0, |
979 VK_RSHIFT = 0xA1, | 935 VK_RSHIFT = 0xA1, |
980 VK_LCONTROL = 0xA2, | 936 VK_LCONTROL = 0xA2, |
981 VK_RCONTROL = 0xA3, | 937 VK_RCONTROL = 0xA3, |
982 VK_LMENU = 0xA4, | 938 VK_LMENU = 0xA4, |
983 VK_RMENU = 0xA5, | 939 VK_RMENU = 0xA5, |
984 VK_BROWSER_BACK = 0xA6, | 940 VK_BROWSER_BACK = 0xA6, |
985 VK_BROWSER_FORWARD = 0xA7, | 941 VK_BROWSER_FORWARD = 0xA7, |
986 VK_BROWSER_REFRESH = 0xA8, | 942 VK_BROWSER_REFRESH = 0xA8, |
987 VK_BROWSER_STOP = 0xA9, | 943 VK_BROWSER_STOP = 0xA9, |
988 VK_BROWSER_SEARCH = 0xAA, | 944 VK_BROWSER_SEARCH = 0xAA, |
989 VK_BROWSER_FAVORITES = 0xAB, | 945 VK_BROWSER_FAVORITES = 0xAB, |
990 VK_BROWSER_HOME = 0xAC, | 946 VK_BROWSER_HOME = 0xAC, |
991 VK_VOLUME_MUTE = 0xAD, | 947 VK_VOLUME_MUTE = 0xAD, |
992 VK_VOLUME_DOWN = 0xAE, | 948 VK_VOLUME_DOWN = 0xAE, |
993 VK_VOLUME_UP = 0xAF, | 949 VK_VOLUME_UP = 0xAF, |
994 VK_MEDIA_NEXT_TRACK = 0xB0, | 950 VK_MEDIA_NEXT_TRACK = 0xB0, |
995 VK_MEDIA_PREV_TRACK = 0xB1, | 951 VK_MEDIA_PREV_TRACK = 0xB1, |
996 VK_MEDIA_STOP = 0xB2, | 952 VK_MEDIA_STOP = 0xB2, |
997 VK_MEDIA_PLAY_PAUSE = 0xB3, | 953 VK_MEDIA_PLAY_PAUSE = 0xB3, |
998 VK_LAUNCH_MAIL = 0xB4, | 954 VK_LAUNCH_MAIL = 0xB4, |
999 VK_LAUNCH_MEDIA_SELECT = 0xB5, | 955 VK_LAUNCH_MEDIA_SELECT = 0xB5, |
1000 VK_LAUNCH_APP1 = 0xB6, | 956 VK_LAUNCH_APP1 = 0xB6, |
1001 VK_LAUNCH_APP2 = 0xB7, | 957 VK_LAUNCH_APP2 = 0xB7, |
1002 VK_OEM_1 = 0xBA, | 958 VK_OEM_1 = 0xBA, |
1003 VK_OEM_PLUS = 0xBB, | 959 VK_OEM_PLUS = 0xBB, |
1004 VK_OEM_COMMA = 0xBC, | 960 VK_OEM_COMMA = 0xBC, |
1005 VK_OEM_MINUS = 0xBD, | 961 VK_OEM_MINUS = 0xBD, |
1006 VK_OEM_PERIOD = 0xBE, | 962 VK_OEM_PERIOD = 0xBE, |
1007 VK_OEM_2 = 0xBF, | 963 VK_OEM_2 = 0xBF, |
1008 VK_OEM_3 = 0xC0, | 964 VK_OEM_3 = 0xC0, |
1009 VK_OEM_4 = 0xDB, | 965 VK_OEM_4 = 0xDB, |
1010 VK_OEM_5 = 0xDC, | 966 VK_OEM_5 = 0xDC, |
1011 VK_OEM_6 = 0xDD, | 967 VK_OEM_6 = 0xDD, |
1012 VK_OEM_7 = 0xDE, | 968 VK_OEM_7 = 0xDE, |
1013 VK_OEM_8 = 0xDF, | 969 VK_OEM_8 = 0xDF, |
1014 VK_OEM_AX = 0xE1, | 970 VK_OEM_AX = 0xE1, |
1015 VK_OEM_102 = 0xE2, | 971 VK_OEM_102 = 0xE2, |
1016 VK_ICO_HELP = 0xE3, | 972 VK_ICO_HELP = 0xE3, |
1017 VK_ICO_00 = 0xE4, | 973 VK_ICO_00 = 0xE4, |
1018 VK_PROCESSKEY = 0xE5, | 974 VK_PROCESSKEY = 0xE5, |
1019 VK_ICO_CLEAR = 0xE6, | 975 VK_ICO_CLEAR = 0xE6, |
1020 VK_PACKET = 0xE7, | 976 VK_PACKET = 0xE7, |
1021 VK_OEM_RESET = 0xE9, | 977 VK_OEM_RESET = 0xE9, |
1022 VK_OEM_JUMP = 0xEA, | 978 VK_OEM_JUMP = 0xEA, |
1023 VK_OEM_PA1 = 0xEB, | 979 VK_OEM_PA1 = 0xEB, |
1024 VK_OEM_PA2 = 0xEC, | 980 VK_OEM_PA2 = 0xEC, |
1025 VK_OEM_PA3 = 0xED, | 981 VK_OEM_PA3 = 0xED, |
1026 VK_OEM_WSCTRL = 0xEE, | 982 VK_OEM_WSCTRL = 0xEE, |
1027 VK_OEM_CUSEL = 0xEF, | 983 VK_OEM_CUSEL = 0xEF, |
1028 VK_OEM_ATTN = 0xF0, | 984 VK_OEM_ATTN = 0xF0, |
1029 VK_OEM_FINISH = 0xF1, | 985 VK_OEM_FINISH = 0xF1, |
1030 VK_OEM_COPY = 0xF2, | 986 VK_OEM_COPY = 0xF2, |
1031 VK_OEM_AUTO = 0xF3, | 987 VK_OEM_AUTO = 0xF3, |
1032 VK_OEM_ENLW = 0xF4, | 988 VK_OEM_ENLW = 0xF4, |
1033 VK_OEM_BACKTAB = 0xF5, | 989 VK_OEM_BACKTAB = 0xF5, |
1034 VK_ATTN = 0xF6, | 990 VK_ATTN = 0xF6, |
1035 VK_CRSEL = 0xF7, | 991 VK_CRSEL = 0xF7, |
1036 VK_EXSEL = 0xF8, | 992 VK_EXSEL = 0xF8, |
1037 VK_EREOF = 0xF9, | 993 VK_EREOF = 0xF9, |
1038 VK_PLAY = 0xFA, | 994 VK_PLAY = 0xFA, |
1039 VK_ZOOM = 0xFB, | 995 VK_ZOOM = 0xFB, |
1040 VK_NONAME = 0xFC, | 996 VK_NONAME = 0xFC, |
1041 VK_PA1 = 0xFD, | 997 VK_PA1 = 0xFD, |
1042 VK_OEM_CLEAR = 0xFE | 998 VK_OEM_CLEAR = 0xFE |
1043 } | 999 } |
1044 //}}} | 1000 //}}} |
1045 | 1001 |
1046 SHORT GetKeyState(int nVirtKey); | 1002 SHORT GetKeyState(int nVirtKey); |
1047 //}}} | 1003 //}}} |
1048 | 1004 |
1049 //{{{ system functions | 1005 //{{{ system functions |
1050 //const LPTSTR IDC_ARROW = cast(LPTSTR)32512u; | 1006 //const LPTSTR IDC_ARROW = cast(LPTSTR)32512u; |
1051 //const LPTSTR IDC_IBEAM = cast(LPTSTR)32513u; | 1007 //const LPTSTR IDC_IBEAM = cast(LPTSTR)32513u; |
1052 //const LPTSTR IDC_WAIT = cast(LPTSTR)32514u; | 1008 //const LPTSTR IDC_WAIT = cast(LPTSTR)32514u; |
1053 //const LPTSTR IDC_CROSS = cast(LPTSTR)32515u; | 1009 //const LPTSTR IDC_CROSS = cast(LPTSTR)32515u; |
1054 //const LPTSTR IDC_UPARROW = cast(LPTSTR)32516u; | 1010 //const LPTSTR IDC_UPARROW = cast(LPTSTR)32516u; |
1055 //const LPTSTR IDC_SIZE = cast(LPTSTR)32640u; | 1011 //const LPTSTR IDC_SIZE = cast(LPTSTR)32640u; |
1056 //const LPTSTR IDC_ICON = cast(LPTSTR)32641u; | 1012 //const LPTSTR IDC_ICON = cast(LPTSTR)32641u; |
1057 //const LPTSTR IDC_SIZENWSE = cast(LPTSTR)32642u; | 1013 //const LPTSTR IDC_SIZENWSE = cast(LPTSTR)32642u; |
1058 //const LPTSTR IDC_SIZENESW = cast(LPTSTR)32643u; | 1014 //const LPTSTR IDC_SIZENESW = cast(LPTSTR)32643u; |
1059 //const LPTSTR IDC_SIZEWE = cast(LPTSTR)32644u; | 1015 //const LPTSTR IDC_SIZEWE = cast(LPTSTR)32644u; |
1060 //const LPTSTR IDC_SIZENS = cast(LPTSTR)32645u; | 1016 //const LPTSTR IDC_SIZENS = cast(LPTSTR)32645u; |
1061 //const LPTSTR IDC_SIZEALL = cast(LPTSTR)32646u; | 1017 //const LPTSTR IDC_SIZEALL = cast(LPTSTR)32646u; |
1062 //const LPTSTR IDC_NO = cast(LPTSTR)32648u; | 1018 //const LPTSTR IDC_NO = cast(LPTSTR)32648u; |
1063 //const LPTSTR IDC_HAND = cast(LPTSTR)32649u; | 1019 //const LPTSTR IDC_HAND = cast(LPTSTR)32649u; |
1064 //const LPTSTR IDC_APPSTARTING = cast(LPTSTR)32650u; | 1020 //const LPTSTR IDC_APPSTARTING = cast(LPTSTR)32650u; |
1065 //const LPTSTR IDC_HELP = cast(LPTSTR)32651u; | 1021 //const LPTSTR IDC_HELP = cast(LPTSTR)32651u; |
1066 | 1022 |
1067 //const LPTSTR IDI_APPLICATION = cast(LPTSTR)32512; | 1023 //const LPTSTR IDI_APPLICATION = cast(LPTSTR)32512; |
1068 //const LPTSTR IDI_HAND = cast(LPTSTR)32513; | 1024 //const LPTSTR IDI_HAND = cast(LPTSTR)32513; |
1069 //const LPTSTR IDI_QUESTION = cast(LPTSTR)32514; | 1025 //const LPTSTR IDI_QUESTION = cast(LPTSTR)32514; |
1070 //const LPTSTR IDI_EXCLAMATION = cast(LPTSTR)32515; | 1026 //const LPTSTR IDI_EXCLAMATION = cast(LPTSTR)32515; |
1071 //const LPTSTR IDI_ASTERISK = cast(LPTSTR)32516; | 1027 //const LPTSTR IDI_ASTERISK = cast(LPTSTR)32516; |
1072 //const LPTSTR IDI_WINLOGO = cast(LPTSTR)32517; | 1028 //const LPTSTR IDI_WINLOGO = cast(LPTSTR)32517; |
1073 //const LPTSTR IDI_WARNING = IDI_EXCLAMATION; | 1029 //const LPTSTR IDI_WARNING = IDI_EXCLAMATION; |
1074 //const LPTSTR IDI_ERROR = IDI_HAND; | 1030 //const LPTSTR IDI_ERROR = IDI_HAND; |
1075 //const LPTSTR IDI_INFORMATION = IDI_ASTERISK; | 1031 //const LPTSTR IDI_INFORMATION = IDI_ASTERISK; |
1076 | 1032 |
1077 enum { | 1033 enum { |
1078 OIC_SAMPLE = 32512, | 1034 OIC_SAMPLE = 32512, |
1079 OIC_HAND = 32513, | 1035 OIC_HAND = 32513, |
1102 OCR_APPSTARTING = 32650 | 1058 OCR_APPSTARTING = 32650 |
1103 } | 1059 } |
1104 | 1060 |
1105 enum { | 1061 enum { |
1106 IMAGE_BITMAP = 0, | 1062 IMAGE_BITMAP = 0, |
1107 IMAGE_ICON = 1, | 1063 IMAGE_ICON = 1, |
1108 IMAGE_CURSOR = 2 | 1064 IMAGE_CURSOR = 2 |
1109 } | 1065 } |
1110 | 1066 |
1111 enum { | 1067 enum { |
1112 LR_DEFAULTCOLOR = 0x0000, | 1068 LR_DEFAULTCOLOR = 0x0000, |
1113 LR_MONOCHROME = 0x0001, | 1069 LR_MONOCHROME = 0x0001, |
1114 LR_COLOR = 0x0002, | 1070 LR_COLOR = 0x0002, |
1115 LR_COPYRETURNORG = 0x0004, | 1071 LR_COPYRETURNORG = 0x0004, |
1116 LR_COPYDELETEORG = 0x0008, | 1072 LR_COPYDELETEORG = 0x0008, |
1117 LR_LOADFROMFILE = 0x0010, | 1073 LR_LOADFROMFILE = 0x0010, |
1118 LR_LOADTRANSPARENT = 0x0020, | 1074 LR_LOADTRANSPARENT = 0x0020, |
1119 LR_DEFAULTSIZE = 0x0040, | 1075 LR_DEFAULTSIZE = 0x0040, |
1120 LR_VGACOLOR = 0x0080, | 1076 LR_VGACOLOR = 0x0080, |
1121 LR_LOADMAP3DCOLORS = 0x1000, | 1077 LR_LOADMAP3DCOLORS = 0x1000, |
1122 LR_CREATEDIBSECTION = 0x2000, | 1078 LR_CREATEDIBSECTION = 0x2000, |
1123 LR_COPYFROMRESOURCE = 0x4000, | 1079 LR_COPYFROMRESOURCE = 0x4000, |
1124 LR_SHARED = 0x8000 | 1080 LR_SHARED = 0x8000 |
1125 } | 1081 } |
1126 | 1082 |
1127 HANDLE LoadImageA( | |
1128 HINSTANCE hInst, | |
1129 LPCSTR name, | |
1130 UINT type, | |
1131 int cx, | |
1132 int cy, | |
1133 UINT fuLoad); | |
1134 HANDLE LoadImageW( | 1083 HANDLE LoadImageW( |
1135 HINSTANCE hInst, | 1084 HINSTANCE hInst, |
1136 LPCWSTR name, | 1085 LPCWSTR name, |
1137 UINT type, | 1086 UINT type, |
1138 int cx, | 1087 int cx, |
1145 BOOL fIcon, | 1094 BOOL fIcon, |
1146 DWORD dwVer); | 1095 DWORD dwVer); |
1147 | 1096 |
1148 enum { | 1097 enum { |
1149 SPI_GETNONCLIENTMETRICS = 0x0029, | 1098 SPI_GETNONCLIENTMETRICS = 0x0029, |
1150 SPI_GETWORKAREA = 0x0030, | 1099 SPI_GETWORKAREA = 0x0030, |
1151 SPI_GETWHEELSCROLLLINES = 0x0068 | 1100 SPI_GETWHEELSCROLLLINES = 0x0068 |
1152 } | 1101 } |
1153 | 1102 |
1154 BOOL SystemParametersInfoA(UINT uiAction, UINT uiParam, VOID* pvParam, UINT fWinIni); | |
1155 BOOL SystemParametersInfoW(UINT uiAction, UINT uiParam, VOID* pvParam, UINT fWinIni); | 1103 BOOL SystemParametersInfoW(UINT uiAction, UINT uiParam, VOID* pvParam, UINT fWinIni); |
1156 | 1104 |
1157 enum { | 1105 enum { |
1158 COLOR_SCROLLBAR = 0, | 1106 COLOR_SCROLLBAR = 0, |
1159 COLOR_BACKGROUND = 1, | 1107 COLOR_BACKGROUND = 1, |
1293 | 1241 |
1294 int GetSystemMetrics(int nIndex); | 1242 int GetSystemMetrics(int nIndex); |
1295 | 1243 |
1296 VOID GetSystemInfo(SYSTEM_INFO* lpSystemInfo); | 1244 VOID GetSystemInfo(SYSTEM_INFO* lpSystemInfo); |
1297 | 1245 |
1298 BOOL GetVersionExA(OSVERSIONINFO* lpVersionInformation); | |
1299 BOOL GetVersionExW(OSVERSIONINFO* lpVersionInformation); | 1246 BOOL GetVersionExW(OSVERSIONINFO* lpVersionInformation); |
1300 | 1247 |
1301 HMODULE GetModuleHandleA(LPCSTR lpModuleName); | |
1302 HMODULE GetModuleHandleW(LPCWSTR lpModuleName); | 1248 HMODULE GetModuleHandleW(LPCWSTR lpModuleName); |
1303 | 1249 |
1304 HMODULE LoadLibraryA(LPCSTR lpLibFileName); | |
1305 HMODULE LoadLibraryW(LPCWSTR lpLibFileName); | 1250 HMODULE LoadLibraryW(LPCWSTR lpLibFileName); |
1306 | 1251 |
1307 FARPROC GetProcAddress(HMODULE hModule, LPCSTR lpProcName); | 1252 FARPROC GetProcAddress(HMODULE hModule, LPCSTR lpProcName); |
1308 | 1253 |
1309 //Requires Internet Explorer 4.0 (but will work on Windows 95 with IE 4) | 1254 //Requires Internet Explorer 4.0 (but will work on Windows 95 with IE 4) |
1310 BOOL SHGetSpecialFolderPathA(HWND hWndOwner, LPSTR lpszPath, int nFolder, BOOL fCreate); | |
1311 BOOL SHGetSpecialFolderPathW(HWND hWndOwner, LPWSTR lpszPath, int nFolder, BOOL fCreate); | 1255 BOOL SHGetSpecialFolderPathW(HWND hWndOwner, LPWSTR lpszPath, int nFolder, BOOL fCreate); |
1312 | 1256 |
1313 BOOL QueryPerformanceFrequency(ulong* lpFrequency); | 1257 BOOL QueryPerformanceFrequency(ulong* lpFrequency); |
1314 | 1258 |
1315 BOOL QueryPerformanceCounter(ulong* lpPerformanceCount); | 1259 BOOL QueryPerformanceCounter(ulong* lpPerformanceCount); |
1356 | 1300 |
1357 BOOL GetConsoleMode(HANDLE hConsoleHandle, DWORD* lpMode); | 1301 BOOL GetConsoleMode(HANDLE hConsoleHandle, DWORD* lpMode); |
1358 | 1302 |
1359 BOOL SetConsoleMode(HANDLE hConsoleHandle, DWORD dwMode); | 1303 BOOL SetConsoleMode(HANDLE hConsoleHandle, DWORD dwMode); |
1360 | 1304 |
1361 DWORD GetConsoleTitleA(LPSTR lpConsoleTitle, DWORD nSize); | |
1362 DWORD GetConsoleTitleW(LPWSTR lpConsoleTitle, DWORD nSize); | 1305 DWORD GetConsoleTitleW(LPWSTR lpConsoleTitle, DWORD nSize); |
1363 | 1306 |
1364 BOOL SetConsoleTitleA(LPCSTR lpConsoleTitle); | |
1365 BOOL SetConsoleTitleW(LPCWSTR lpConsoleTitle); | 1307 BOOL SetConsoleTitleW(LPCWSTR lpConsoleTitle); |
1366 | 1308 |
1367 BOOL ReadConsoleA( | |
1368 HANDLE hConsoleInput, | |
1369 LPSTR lpBuffer, | |
1370 DWORD nNumberOfCharsToRead, | |
1371 DWORD* lpNumberOfCharsRead, | |
1372 VOID* lpReserved); | |
1373 BOOL ReadConsoleW( | 1309 BOOL ReadConsoleW( |
1374 HANDLE hConsoleInput, | 1310 HANDLE hConsoleInput, |
1375 LPWSTR lpBuffer, | 1311 LPWSTR lpBuffer, |
1376 DWORD nNumberOfCharsToRead, | 1312 DWORD nNumberOfCharsToRead, |
1377 DWORD* lpNumberOfCharsRead, | 1313 DWORD* lpNumberOfCharsRead, |
1378 VOID* lpReserved); | 1314 VOID* lpReserved); |
1379 | 1315 |
1380 BOOL WriteConsoleA( | |
1381 HANDLE hConsoleOutput, | |
1382 LPCSTR lpBuffer, | |
1383 DWORD nNumberOfCharsToWrite, | |
1384 DWORD* lpNumberOfCharsWritten, | |
1385 VOID* lpReserved); | |
1386 BOOL WriteConsoleW( | 1316 BOOL WriteConsoleW( |
1387 HANDLE hConsoleOutput, | 1317 HANDLE hConsoleOutput, |
1388 LPCWSTR lpBuffer, | 1318 LPCWSTR lpBuffer, |
1389 DWORD nNumberOfCharsToWrite, | 1319 DWORD nNumberOfCharsToWrite, |
1390 DWORD* lpNumberOfCharsWritten, | 1320 DWORD* lpNumberOfCharsWritten, |
1391 VOID* lpReserved); | 1321 VOID* lpReserved); |
1392 | 1322 |
1393 enum { | 1323 enum { |
1394 FOREGROUND_BLUE = 0x0001, | 1324 FOREGROUND_BLUE = 0x0001, |
1395 FOREGROUND_GREEN = 0x0002, | 1325 FOREGROUND_GREEN = 0x0002, |
1396 FOREGROUND_RED = 0x0004, | 1326 FOREGROUND_RED = 0x0004, |
1397 FOREGROUND_INTENSITY = 0x0008, | 1327 FOREGROUND_INTENSITY = 0x0008, |
1398 BACKGROUND_BLUE = 0x0010, | 1328 BACKGROUND_BLUE = 0x0010, |
1399 BACKGROUND_GREEN = 0x0020, | 1329 BACKGROUND_GREEN = 0x0020, |
1400 BACKGROUND_RED = 0x0040, | 1330 BACKGROUND_RED = 0x0040, |
1401 BACKGROUND_INTENSITY = 0x0080 | 1331 BACKGROUND_INTENSITY = 0x0080 |
1402 } | 1332 } |
1403 | 1333 |
1404 BOOL SetConsoleTextAttribute(HANDLE hConsoleOutput, WORD wAttributes); | 1334 BOOL SetConsoleTextAttribute(HANDLE hConsoleOutput, WORD wAttributes); |
1405 | 1335 |
1435 VOID* CoTaskMemRealloc(VOID* pv, SIZE_T cb); | 1365 VOID* CoTaskMemRealloc(VOID* pv, SIZE_T cb); |
1436 void CoTaskMemFree(VOID* pv); | 1366 void CoTaskMemFree(VOID* pv); |
1437 | 1367 |
1438 enum { | 1368 enum { |
1439 BIF_RETURNONLYFSDIRS = 0x0001, | 1369 BIF_RETURNONLYFSDIRS = 0x0001, |
1440 BIF_EDITBOX = 0x0010, | 1370 BIF_EDITBOX = 0x0010, |
1441 BIF_NEWDIALOGSTYLE = 0x0040, | 1371 BIF_NEWDIALOGSTYLE = 0x0040, |
1442 BIF_USENEWUI = (BIF_NEWDIALOGSTYLE | BIF_EDITBOX) | 1372 BIF_USENEWUI = (BIF_NEWDIALOGSTYLE | BIF_EDITBOX) |
1443 } | 1373 } |
1444 | 1374 |
1445 ITEMIDLIST* SHBrowseForFolderA(BROWSEINFO* lpbi); | |
1446 ITEMIDLIST* SHBrowseForFolderW(BROWSEINFO* lpbi); | 1375 ITEMIDLIST* SHBrowseForFolderW(BROWSEINFO* lpbi); |
1447 | 1376 |
1448 BOOL SHGetPathFromIDListA(ITEMIDLIST* pidl, LPSTR pszPath); | |
1449 BOOL SHGetPathFromIDListW(ITEMIDLIST* pidl, LPWSTR pszPath); | 1377 BOOL SHGetPathFromIDListW(ITEMIDLIST* pidl, LPWSTR pszPath); |
1450 | 1378 |
1451 HRESULT SHGetFolderPathA(HWND hwnd, int csidl, HANDLE hToken, DWORD dwFlags, LPSTR pszPath); | |
1452 HRESULT SHGetFolderPathW(HWND hwnd, int csidl, HANDLE hToken, DWORD dwFlags, LPWSTR pszPath); | 1379 HRESULT SHGetFolderPathW(HWND hwnd, int csidl, HANDLE hToken, DWORD dwFlags, LPWSTR pszPath); |
1453 | 1380 |
1454 HRESULT SHGetDesktopFolder(IShellFolder** ppshf); | 1381 HRESULT SHGetDesktopFolder(IShellFolder** ppshf); |
1455 | 1382 |
1456 struct GUID { | 1383 struct GUID { |
1593 MMRESULT waveOutGetPlaybackRate(HWAVEOUT hwo, DWORD* pdwRate); | 1520 MMRESULT waveOutGetPlaybackRate(HWAVEOUT hwo, DWORD* pdwRate); |
1594 MMRESULT waveOutSetPlaybackRate(HWAVEOUT hwo, DWORD dwRate); | 1521 MMRESULT waveOutSetPlaybackRate(HWAVEOUT hwo, DWORD dwRate); |
1595 | 1522 |
1596 //}}} | 1523 //}}} |
1597 | 1524 |
1598 version(UNICODE) { | 1525 //{{{ alias ...W -> ... |
1599 alias MessageBoxW MessageBox; | 1526 alias MessageBoxW MessageBox; |
1600 alias RegisterClassExW RegisterClassEx; | 1527 alias RegisterClassExW RegisterClassEx; |
1601 alias CreateWindowExW CreateWindowEx; | 1528 alias CreateWindowExW CreateWindowEx; |
1602 alias DefWindowProcW DefWindowProc; | 1529 alias DefWindowProcW DefWindowProc; |
1603 alias GetWindowLongW GetWindowLong; | 1530 alias GetWindowLongW GetWindowLong; |
1604 alias SetWindowLongW SetWindowLong; | 1531 alias SetWindowLongW SetWindowLong; |
1605 alias GetWindowLongPtrW GetWindowLongPtr; | 1532 alias GetWindowLongPtrW GetWindowLongPtr; |
1606 alias SetWindowLongPtrW SetWindowLongPtr; | 1533 alias SetWindowLongPtrW SetWindowLongPtr; |
1607 alias GetWindowTextW GetWindowText; | 1534 alias GetWindowTextW GetWindowText; |
1608 alias SetWindowTextW SetWindowText; | 1535 alias SetWindowTextW SetWindowText; |
1609 alias GetWindowModuleFileNameW GetWindowModuleFileName; | 1536 alias GetWindowModuleFileNameW GetWindowModuleFileName; |
1610 alias SetPropW SetProp; | 1537 alias SetPropW SetProp; |
1611 alias GetPropW GetProp; | 1538 alias GetPropW GetProp; |
1612 alias RemovePropW RemoveProp; | 1539 alias RemovePropW RemoveProp; |
1613 alias GetOpenFileNameW GetOpenFileName; | 1540 alias GetOpenFileNameW GetOpenFileName; |
1614 alias GetSaveFileNameW GetSaveFileName; | 1541 alias GetSaveFileNameW GetSaveFileName; |
1615 alias GetMessageW GetMessage; | 1542 alias GetMessageW GetMessage; |
1616 alias DispatchMessageW DispatchMessage; | 1543 alias DispatchMessageW DispatchMessage; |
1617 alias PostMessageW PostMessage; | 1544 alias PostMessageW PostMessage; |
1618 alias SendMessageW SendMessage; | 1545 alias SendMessageW SendMessage; |
1619 alias LoadImageW LoadImage; | 1546 alias LoadImageW LoadImage; |
1620 alias GetObjectW GetObject; | 1547 alias GetObjectW GetObject; |
1621 alias EnumFontFamiliesExW EnumFontFamiliesEx; | 1548 alias EnumFontFamiliesExW EnumFontFamiliesEx; |
1622 alias SystemParametersInfoW SystemParametersInfo; | 1549 alias SystemParametersInfoW SystemParametersInfo; |
1623 alias GetVersionExW GetVersionEx; | 1550 alias GetVersionExW GetVersionEx; |
1624 alias GetModuleHandleW GetModuleHandle; | 1551 alias GetModuleHandleW GetModuleHandle; |
1625 alias LoadLibraryW LoadLibrary; | 1552 alias LoadLibraryW LoadLibrary; |
1626 alias SHGetSpecialFolderPathW SHGetSpecialFolderPath; | 1553 alias SHGetSpecialFolderPathW SHGetSpecialFolderPath; |
1627 alias GetConsoleTitleW GetConsoleTitle; | 1554 alias GetConsoleTitleW GetConsoleTitle; |
1628 alias SetConsoleTitleW SetConsoleTitle; | 1555 alias SetConsoleTitleW SetConsoleTitle; |
1629 alias ReadConsoleW ReadConsole; | 1556 alias ReadConsoleW ReadConsole; |
1630 alias WriteConsoleW WriteConsole; | 1557 alias WriteConsoleW WriteConsole; |
1631 alias SHBrowseForFolderW SHBrowseForFolder; | 1558 alias SHBrowseForFolderW SHBrowseForFolder; |
1632 alias SHGetPathFromIDListW SHGetPathFromIDList; | 1559 alias SHGetPathFromIDListW SHGetPathFromIDList; |
1633 alias SHGetFolderPathW SHGetFolderPath; | 1560 alias SHGetFolderPathW SHGetFolderPath; |
1634 | 1561 |
1635 alias LOGFONTW LOGFONT; | 1562 alias LOGFONTW LOGFONT; |
1636 alias NONCLIENTMETRICSW NONCLIENTMETRICS; | 1563 alias NONCLIENTMETRICSW NONCLIENTMETRICS; |
1637 alias ENUMLOGFONTEXW ENUMLOGFONTEX; | 1564 alias ENUMLOGFONTEXW ENUMLOGFONTEX; |
1638 alias TEXTMETRICW TEXTMETRIC; | 1565 alias TEXTMETRICW TEXTMETRIC; |
1639 alias OSVERSIONINFOW OSVERSIONINFO; | 1566 alias OSVERSIONINFOW OSVERSIONINFO; |
1640 } else { | 1567 //}}} |
1641 alias MessageBoxA MessageBox; | |
1642 alias RegisterClassExA RegisterClassEx; | |
1643 alias CreateWindowExA CreateWindowEx; | |
1644 alias DefWindowProcA DefWindowProc; | |
1645 alias GetWindowLongA GetWindowLong; | |
1646 alias SetWindowLongA SetWindowLong; | |
1647 alias GetWindowLongPtrA GetWindowLongPtr; | |
1648 alias SetWindowLongPtrA SetWindowLongPtr; | |
1649 alias GetWindowTextA GetWindowText; | |
1650 alias SetWindowTextA SetWindowText; | |
1651 alias GetWindowModuleFileNameA GetWindowModuleFileName; | |
1652 alias SetPropA SetProp; | |
1653 alias GetPropA GetProp; | |
1654 alias RemovePropA RemoveProp; | |
1655 alias GetOpenFileNameA GetOpenFileName; | |
1656 alias GetSaveFileNameA GetSaveFileName; | |
1657 alias GetMessageA GetMessage; | |
1658 alias DispatchMessageA DispatchMessage; | |
1659 alias PostMessageA PostMessage; | |
1660 alias SendMessageA SendMessage; | |
1661 alias LoadImageA LoadImage; | |
1662 alias EnumFontFamiliesExA EnumFontFamiliesEx; | |
1663 alias SystemParametersInfoA SystemParametersInfo; | |
1664 alias GetVersionExA GetVersionEx; | |
1665 alias GetModuleHandleA GetModuleHandle; | |
1666 alias LoadLibraryA LoadLibrary; | |
1667 alias SHGetSpecialFolderPathA SHGetSpecialFolderPath; | |
1668 alias GetConsoleTitleA GetConsoleTitle; | |
1669 alias SetConsoleTitleA SetConsoleTitle; | |
1670 alias ReadConsoleA ReadConsole; | |
1671 alias WriteConsoleA WriteConsole; | |
1672 alias SHBrowseForFolderA SHBrowseForFolder; | |
1673 alias SHGetPathFromIDListA SHGetPathFromIDList; | |
1674 alias SHGetFolderPathA SHGetFolderPath; | |
1675 } | |
1676 | 1568 |
1677 struct POINT { | 1569 struct POINT { |
1678 LONG x; | 1570 LONG x; |
1679 LONG y; | 1571 LONG y; |
1680 } | 1572 } |
1694 BYTE SourceConstantAlpha; | 1586 BYTE SourceConstantAlpha; |
1695 BYTE AlphaFormat; | 1587 BYTE AlphaFormat; |
1696 } | 1588 } |
1697 const int LF_FACESIZE = 32; | 1589 const int LF_FACESIZE = 32; |
1698 struct LOGFONTW { | 1590 struct LOGFONTW { |
1699 LONG lfHeight; | 1591 LONG lfHeight; |
1700 LONG lfWidth; | 1592 LONG lfWidth; |
1701 LONG lfEscapement; | 1593 LONG lfEscapement; |
1702 LONG lfOrientation; | 1594 LONG lfOrientation; |
1703 LONG lfWeight; | 1595 LONG lfWeight; |
1704 BYTE lfItalic; | 1596 BYTE lfItalic; |
1705 BYTE lfUnderline; | 1597 BYTE lfUnderline; |
1706 BYTE lfStrikeOut; | 1598 BYTE lfStrikeOut; |
1707 BYTE lfCharSet; | 1599 BYTE lfCharSet; |
1708 BYTE lfOutPrecision; | 1600 BYTE lfOutPrecision; |
1709 BYTE lfClipPrecision; | 1601 BYTE lfClipPrecision; |
1710 BYTE lfQuality; | 1602 BYTE lfQuality; |
1711 BYTE lfPitchAndFamily; | 1603 BYTE lfPitchAndFamily; |
1712 WCHAR[LF_FACESIZE] lfFaceName; | 1604 WCHAR[LF_FACESIZE] lfFaceName; |
1713 } | 1605 } |
1714 struct NONCLIENTMETRICSW { | 1606 struct NONCLIENTMETRICSW { |
1715 UINT cbSize; | 1607 UINT cbSize; |
1716 int iBorderWidth; | 1608 int iBorderWidth; |
1728 LOGFONTW lfStatusFont; | 1620 LOGFONTW lfStatusFont; |
1729 LOGFONTW lfMessageFont; | 1621 LOGFONTW lfMessageFont; |
1730 } | 1622 } |
1731 const int LF_FULLFACESIZE = 64; | 1623 const int LF_FULLFACESIZE = 64; |
1732 struct ENUMLOGFONTEXW { | 1624 struct ENUMLOGFONTEXW { |
1733 LOGFONT elfLogFont; | 1625 LOGFONT elfLogFont; |
1734 WCHAR[LF_FULLFACESIZE] elfFullName; | 1626 WCHAR[LF_FULLFACESIZE] elfFullName; |
1735 WCHAR[LF_FACESIZE] elfStyle; | 1627 WCHAR[LF_FACESIZE] elfStyle; |
1736 WCHAR[LF_FACESIZE] elfScript; | 1628 WCHAR[LF_FACESIZE] elfScript; |
1737 } | 1629 } |
1738 struct TEXTMETRICW { | 1630 struct TEXTMETRICW { |
1739 LONG tmHeight; | 1631 LONG tmHeight; |
1740 LONG tmAscent; | 1632 LONG tmAscent; |
1741 LONG tmDescent; | 1633 LONG tmDescent; |
1763 BYTE rgbRed; | 1655 BYTE rgbRed; |
1764 BYTE rgbReserved; | 1656 BYTE rgbReserved; |
1765 } | 1657 } |
1766 struct BITMAPINFO { | 1658 struct BITMAPINFO { |
1767 BITMAPINFOHEADER bmiHeader; | 1659 BITMAPINFOHEADER bmiHeader; |
1768 RGBQUAD[1] bmiColors; | 1660 RGBQUAD[1] bmiColors; |
1769 } | 1661 } |
1770 struct BITMAPINFOHEADER { | 1662 struct BITMAPINFOHEADER { |
1771 DWORD biSize; | 1663 DWORD biSize; |
1772 LONG biWidth; | 1664 LONG biWidth; |
1773 LONG biHeight; | 1665 LONG biHeight; |
1803 LPARAM lParam; | 1695 LPARAM lParam; |
1804 DWORD time; | 1696 DWORD time; |
1805 POINT pt; | 1697 POINT pt; |
1806 } | 1698 } |
1807 struct WNDCLASSEX { | 1699 struct WNDCLASSEX { |
1808 UINT cbSize; | 1700 UINT cbSize; |
1809 UINT style; | 1701 UINT style; |
1810 WNDPROC lpfnWndProc; | 1702 WNDPROC lpfnWndProc; |
1811 int cbClsExtra; | 1703 int cbClsExtra; |
1812 int cbWndExtra; | 1704 int cbWndExtra; |
1813 HINSTANCE hInstance; | 1705 HINSTANCE hInstance; |
1814 HICON hIcon; | 1706 HICON hIcon; |
1815 HCURSOR hCursor; | 1707 HCURSOR hCursor; |
1816 HBRUSH hbrBackground; | 1708 HBRUSH hbrBackground; |
1817 LPCTSTR lpszMenuName; | 1709 LPCTSTR lpszMenuName; |
1818 LPCTSTR lpszClassName; | 1710 LPCTSTR lpszClassName; |
1819 HICON hIconSm; | 1711 HICON hIconSm; |
1820 } | 1712 } |
1821 struct WINDOWINFO { | 1713 struct WINDOWINFO { |
1822 DWORD cbSize; | 1714 DWORD cbSize; |
1823 RECT rcWindow; | 1715 RECT rcWindow; |
1824 RECT rcClient; | 1716 RECT rcClient; |
1829 UINT cyWindowBorders; | 1721 UINT cyWindowBorders; |
1830 ATOM atomWindowType; | 1722 ATOM atomWindowType; |
1831 WORD wCreatorVersion; | 1723 WORD wCreatorVersion; |
1832 } | 1724 } |
1833 struct PAINTSTRUCT { | 1725 struct PAINTSTRUCT { |
1834 HDC hdc; | 1726 HDC hdc; |
1835 BOOL fErase; | 1727 BOOL fErase; |
1836 RECT rcPaint; | 1728 RECT rcPaint; |
1837 BOOL fRestore; | 1729 BOOL fRestore; |
1838 BOOL fIncUpdate; | 1730 BOOL fIncUpdate; |
1839 BYTE[32] rgbReserved; | 1731 BYTE[32] rgbReserved; |
1840 } | 1732 } |
1841 struct TRACKMOUSEEVENT { | 1733 struct TRACKMOUSEEVENT { |
1842 DWORD cbSize; | 1734 DWORD cbSize; |
1843 DWORD dwFlags; | 1735 DWORD dwFlags; |
1844 HWND hWndTrack; | 1736 HWND hWndTrack; |
1845 DWORD dwHoverTime; | 1737 DWORD dwHoverTime; |
1846 } | 1738 } |
1847 struct OPENFILENAME { | 1739 struct OPENFILENAME { |
1848 DWORD lStructSize; | 1740 DWORD lStructSize; |
1849 HWND hWndOwner; | 1741 HWND hWndOwner; |
1850 HINSTANCE hInstance; | 1742 HINSTANCE hInstance; |
1851 LPCTSTR lpstrFilter; | 1743 LPCTSTR lpstrFilter; |
1852 LPTSTR lpstrCustomFilter; | 1744 LPTSTR lpstrCustomFilter; |
1853 DWORD nMaxCustFilter; | 1745 DWORD nMaxCustFilter; |
1854 DWORD nFilterIndex; | 1746 DWORD nFilterIndex; |
1855 LPTSTR lpstrFile; | 1747 LPTSTR lpstrFile; |
1856 DWORD nMaxFile; | 1748 DWORD nMaxFile; |
1857 LPTSTR lpstrFileTitle; | 1749 LPTSTR lpstrFileTitle; |
1858 DWORD nMaxFileTitle; | 1750 DWORD nMaxFileTitle; |
1859 LPCTSTR lpstrInitialDir; | 1751 LPCTSTR lpstrInitialDir; |
1860 LPCTSTR lpstrTitle; | 1752 LPCTSTR lpstrTitle; |
1861 DWORD Flags; | 1753 DWORD Flags; |
1862 WORD nFileOffset; | 1754 WORD nFileOffset; |
1863 WORD nFileExtension; | 1755 WORD nFileExtension; |
1864 LPCTSTR lpstrDefExt; | 1756 LPCTSTR lpstrDefExt; |
1865 LPARAM lCustData; | 1757 LPARAM lCustData; |
1866 LPOFNHOOKPROC lpfnHook; | 1758 LPOFNHOOKPROC lpfnHook; |
1867 LPCTSTR lpTemplateName; | 1759 LPCTSTR lpTemplateName; |
1868 // if(_WIN32_WINNT >= 0x0500) | 1760 // if(_WIN32_WINNT >= 0x0500) |
1869 //void* pvReserved; | 1761 //void* pvReserved; |
1870 //DWORD dwReserved; | 1762 //DWORD dwReserved; |
1871 //DWORD FlagsEx; | 1763 //DWORD FlagsEx; |
1872 } | 1764 } |
1873 struct SHITEMID { | 1765 struct SHITEMID { |
1874 USHORT cb; | 1766 USHORT cb; |
1875 BYTE[1] abID; | 1767 BYTE[1] abID; |
1876 } | 1768 } |
1877 struct ITEMIDLIST { | 1769 struct ITEMIDLIST { |
1878 SHITEMID mkid; | 1770 SHITEMID mkid; |
1879 } | 1771 } |
1880 struct BROWSEINFO { | 1772 struct BROWSEINFO { |
1881 HWND hwndOwner; | 1773 HWND hwndOwner; |
1882 ITEMIDLIST* pidlRoot; | 1774 ITEMIDLIST* pidlRoot; |
1883 LPTSTR pszDisplayName; | 1775 LPTSTR pszDisplayName; |
1884 LPCTSTR lpszTitle; | 1776 LPCTSTR lpszTitle; |
1885 UINT ulFlags; | 1777 UINT ulFlags; |
1886 BFFCALLBACK lpfn; | 1778 BFFCALLBACK lpfn; |
1887 LPARAM lParam; | 1779 LPARAM lParam; |
1888 int iImage; | 1780 int iImage; |
1889 } | 1781 } |
1890 struct OVERLAPPED { | 1782 struct OVERLAPPED { |
1891 ULONG_PTR Internal; | 1783 ULONG_PTR Internal; |
1892 ULONG_PTR InternalHigh; | 1784 ULONG_PTR InternalHigh; |
1893 union { | 1785 union { |