1 ! Copyright (C) 2005, 2006 Doug Coleman.
2 ! See http://factorcode.org/license.txt for BSD license.
3 USING: alien alien.c-types alien.syntax parser namespaces
4 kernel math windows.types generalizations math.bitwise
5 classes.struct literals windows.kernel32 system accessors ;
8 ! HKL for ActivateKeyboardLayout
12 CONSTANT: CW_USEDEFAULT HEX: 80000000
14 CONSTANT: WS_OVERLAPPED HEX: 00000000
15 CONSTANT: WS_POPUP HEX: 80000000
16 CONSTANT: WS_CHILD HEX: 40000000
17 CONSTANT: WS_MINIMIZE HEX: 20000000
18 CONSTANT: WS_VISIBLE HEX: 10000000
19 CONSTANT: WS_DISABLED HEX: 08000000
20 CONSTANT: WS_CLIPSIBLINGS HEX: 04000000
21 CONSTANT: WS_CLIPCHILDREN HEX: 02000000
22 CONSTANT: WS_MAXIMIZE HEX: 01000000
23 CONSTANT: WS_CAPTION HEX: 00C00000
24 CONSTANT: WS_BORDER HEX: 00800000
25 CONSTANT: WS_DLGFRAME HEX: 00400000
26 CONSTANT: WS_VSCROLL HEX: 00200000
27 CONSTANT: WS_HSCROLL HEX: 00100000
28 CONSTANT: WS_SYSMENU HEX: 00080000
29 CONSTANT: WS_THICKFRAME HEX: 00040000
30 CONSTANT: WS_GROUP HEX: 00020000
31 CONSTANT: WS_TABSTOP HEX: 00010000
32 CONSTANT: WS_MINIMIZEBOX HEX: 00020000
33 CONSTANT: WS_MAXIMIZEBOX HEX: 00010000
35 ! Common window styles
36 : WS_OVERLAPPEDWINDOW ( -- n )
46 : WS_POPUPWINDOW ( -- n )
47 { WS_POPUP WS_BORDER WS_SYSMENU } flags ; foldable
49 ALIAS: WS_CHILDWINDOW WS_CHILD
51 ALIAS: WS_TILED WS_OVERLAPPED
52 ALIAS: WS_ICONIC WS_MINIMIZE
53 ALIAS: WS_SIZEBOX WS_THICKFRAME
54 ALIAS: WS_TILEDWINDOW WS_OVERLAPPEDWINDOW
56 ! Extended window styles
58 CONSTANT: WS_EX_DLGMODALFRAME HEX: 00000001
59 CONSTANT: WS_EX_NOPARENTNOTIFY HEX: 00000004
60 CONSTANT: WS_EX_TOPMOST HEX: 00000008
61 CONSTANT: WS_EX_ACCEPTFILES HEX: 00000010
62 CONSTANT: WS_EX_TRANSPARENT HEX: 00000020
63 CONSTANT: WS_EX_MDICHILD HEX: 00000040
64 CONSTANT: WS_EX_TOOLWINDOW HEX: 00000080
65 CONSTANT: WS_EX_WINDOWEDGE HEX: 00000100
66 CONSTANT: WS_EX_CLIENTEDGE HEX: 00000200
67 CONSTANT: WS_EX_CONTEXTHELP HEX: 00000400
69 CONSTANT: WS_EX_RIGHT HEX: 00001000
70 CONSTANT: WS_EX_LEFT HEX: 00000000
71 CONSTANT: WS_EX_RTLREADING HEX: 00002000
72 CONSTANT: WS_EX_LTRREADING HEX: 00000000
73 CONSTANT: WS_EX_LEFTSCROLLBAR HEX: 00004000
74 CONSTANT: WS_EX_RIGHTSCROLLBAR HEX: 00000000
75 CONSTANT: WS_EX_CONTROLPARENT HEX: 00010000
76 CONSTANT: WS_EX_STATICEDGE HEX: 00020000
77 CONSTANT: WS_EX_APPWINDOW HEX: 00040000
79 : WS_EX_OVERLAPPEDWINDOW ( -- n )
80 WS_EX_WINDOWEDGE WS_EX_CLIENTEDGE bitor ; foldable
82 : WS_EX_PALETTEWINDOW ( -- n )
83 { WS_EX_WINDOWEDGE WS_EX_TOOLWINDOW WS_EX_TOPMOST } flags ; foldable
85 CONSTANT: CS_VREDRAW HEX: 0001
86 CONSTANT: CS_HREDRAW HEX: 0002
87 CONSTANT: CS_DBLCLKS HEX: 0008
88 CONSTANT: CS_OWNDC HEX: 0020
89 CONSTANT: CS_CLASSDC HEX: 0040
90 CONSTANT: CS_PARENTDC HEX: 0080
91 CONSTANT: CS_NOCLOSE HEX: 0200
92 CONSTANT: CS_SAVEBITS HEX: 0800
93 CONSTANT: CS_BYTEALIGNCLIENT HEX: 1000
94 CONSTANT: CS_BYTEALIGNWINDOW HEX: 2000
95 CONSTANT: CS_GLOBALCLASS HEX: 4000
97 CONSTANT: COLOR_SCROLLBAR 0
98 CONSTANT: COLOR_BACKGROUND 1
99 CONSTANT: COLOR_ACTIVECAPTION 2
100 CONSTANT: COLOR_INACTIVECAPTION 3
101 CONSTANT: COLOR_MENU 4
102 CONSTANT: COLOR_WINDOW 5
103 CONSTANT: COLOR_WINDOWFRAME 6
104 CONSTANT: COLOR_MENUTEXT 7
105 CONSTANT: COLOR_WINDOWTEXT 8
106 CONSTANT: COLOR_CAPTIONTEXT 9
107 CONSTANT: COLOR_ACTIVEBORDER 10
108 CONSTANT: COLOR_INACTIVEBORDER 11
109 CONSTANT: COLOR_APPWORKSPACE 12
110 CONSTANT: COLOR_HIGHLIGHT 13
111 CONSTANT: COLOR_HIGHLIGHTTEXT 14
112 CONSTANT: COLOR_BTNFACE 15
113 CONSTANT: COLOR_BTNSHADOW 16
114 CONSTANT: COLOR_GRAYTEXT 17
115 CONSTANT: COLOR_BTNTEXT 18
116 CONSTANT: COLOR_INACTIVECAPTIONTEXT 19
117 CONSTANT: COLOR_BTNHIGHLIGHT 20
119 CONSTANT: IDI_APPLICATION 32512
120 CONSTANT: IDI_HAND 32513
121 CONSTANT: IDI_QUESTION 32514
122 CONSTANT: IDI_EXCLAMATION 32515
123 CONSTANT: IDI_ASTERISK 32516
124 CONSTANT: IDI_WINLOGO 32517
126 ! ShowWindow() Commands
128 CONSTANT: SW_SHOWNORMAL 1
129 CONSTANT: SW_NORMAL 1
130 CONSTANT: SW_SHOWMINIMIZED 2
131 CONSTANT: SW_SHOWMAXIMIZED 3
132 CONSTANT: SW_MAXIMIZE 3
133 CONSTANT: SW_SHOWNOACTIVATE 4
135 CONSTANT: SW_MINIMIZE 6
136 CONSTANT: SW_SHOWMINNOACTIVE 7
137 CONSTANT: SW_SHOWNA 8
138 CONSTANT: SW_RESTORE 9
139 CONSTANT: SW_SHOWDEFAULT 10
140 CONSTANT: SW_FORCEMINIMIZE 11
144 CONSTANT: PM_NOREMOVE 0
145 CONSTANT: PM_REMOVE 1
146 CONSTANT: PM_NOYIELD 2
147 ! : PM_QS_INPUT (QS_INPUT << 16) ;
148 ! : PM_QS_POSTMESSAGE ((QS_POSTMESSAGE | QS_HOTKEY | QS_TIMER) << 16) ;
149 ! : PM_QS_PAINT (QS_PAINT << 16) ;
150 ! : PM_QS_SENDMESSAGE (QS_SENDMESSAGE << 16) ;
154 ! Standard Cursor IDs
156 CONSTANT: IDC_ARROW 32512
157 CONSTANT: IDC_IBEAM 32513
158 CONSTANT: IDC_WAIT 32514
159 CONSTANT: IDC_CROSS 32515
160 CONSTANT: IDC_UPARROW 32516
161 CONSTANT: IDC_SIZE 32640 ! OBSOLETE: use IDC_SIZEALL
162 CONSTANT: IDC_ICON 32641 ! OBSOLETE: use IDC_ARROW
163 CONSTANT: IDC_SIZENWSE 32642
164 CONSTANT: IDC_SIZENESW 32643
165 CONSTANT: IDC_SIZEWE 32644
166 CONSTANT: IDC_SIZENS 32645
167 CONSTANT: IDC_SIZEALL 32646
168 CONSTANT: IDC_NO 32648 ! not in win3.1
169 CONSTANT: IDC_HAND 32649
170 CONSTANT: IDC_APPSTARTING 32650 ! not in win3.1
171 CONSTANT: IDC_HELP 32651
173 ! Predefined Clipboard Formats
175 CONSTANT: CF_BITMAP 2
176 CONSTANT: CF_METAFILEPICT 3
180 CONSTANT: CF_OEMTEXT 7
182 CONSTANT: CF_PALETTE 9
183 CONSTANT: CF_PENDATA 10
186 CONSTANT: CF_UNICODETEXT 13
187 CONSTANT: CF_ENHMETAFILE 14
188 CONSTANT: CF_HDROP 15
189 CONSTANT: CF_LOCALE 16
190 CONSTANT: CF_DIBV5 17
193 CONSTANT: CF_OWNERDISPLAY HEX: 0080
194 CONSTANT: CF_DSPTEXT HEX: 0081
195 CONSTANT: CF_DSPBITMAP HEX: 0082
196 CONSTANT: CF_DSPMETAFILEPICT HEX: 0083
197 CONSTANT: CF_DSPENHMETAFILE HEX: 008E
199 ! "Private" formats don't get GlobalFree()'d
200 CONSTANT: CF_PRIVATEFIRST HEX: 200
201 CONSTANT: CF_PRIVATELAST HEX: 2FF
203 ! "GDIOBJ" formats do get DeleteObject()'d
204 CONSTANT: CF_GDIOBJFIRST HEX: 300
205 CONSTANT: CF_GDIOBJLAST HEX: 3FF
207 ! Virtual Keys, Standard Set
208 CONSTANT: VK_LBUTTON HEX: 01
209 CONSTANT: VK_RBUTTON HEX: 02
210 CONSTANT: VK_CANCEL HEX: 03
211 CONSTANT: VK_MBUTTON HEX: 04 ! NOT contiguous with L & RBUTTON
212 CONSTANT: VK_XBUTTON1 HEX: 05 ! NOT contiguous with L & RBUTTON
213 CONSTANT: VK_XBUTTON2 HEX: 06 ! NOT contiguous with L & RBUTTON
215 CONSTANT: VK_BACK HEX: 08
216 CONSTANT: VK_TAB HEX: 09
217 ! 0x0A - 0x0B : reserved
219 CONSTANT: VK_CLEAR HEX: 0C
220 CONSTANT: VK_RETURN HEX: 0D
222 CONSTANT: VK_SHIFT HEX: 10
223 CONSTANT: VK_CONTROL HEX: 11
224 CONSTANT: VK_MENU HEX: 12
225 CONSTANT: VK_PAUSE HEX: 13
226 CONSTANT: VK_CAPITAL HEX: 14
228 CONSTANT: VK_KANA HEX: 15
229 CONSTANT: VK_HANGEUL HEX: 15 ! old name - here for compatibility
230 CONSTANT: VK_HANGUL HEX: 15
231 CONSTANT: VK_JUNJA HEX: 17
232 CONSTANT: VK_FINAL HEX: 18
233 CONSTANT: VK_HANJA HEX: 19
234 CONSTANT: VK_KANJI HEX: 19
236 CONSTANT: VK_ESCAPE HEX: 1B
238 CONSTANT: VK_CONVERT HEX: 1C
239 CONSTANT: VK_NONCONVERT HEX: 1D
240 CONSTANT: VK_ACCEPT HEX: 1E
241 CONSTANT: VK_MODECHANGE HEX: 1F
243 CONSTANT: VK_SPACE HEX: 20
244 CONSTANT: VK_PRIOR HEX: 21
245 CONSTANT: VK_NEXT HEX: 22
246 CONSTANT: VK_END HEX: 23
247 CONSTANT: VK_HOME HEX: 24
248 CONSTANT: VK_LEFT HEX: 25
249 CONSTANT: VK_UP HEX: 26
250 CONSTANT: VK_RIGHT HEX: 27
251 CONSTANT: VK_DOWN HEX: 28
252 CONSTANT: VK_SELECT HEX: 29
253 CONSTANT: VK_PRINT HEX: 2A
254 CONSTANT: VK_EXECUTE HEX: 2B
255 CONSTANT: VK_SNAPSHOT HEX: 2C
256 CONSTANT: VK_INSERT HEX: 2D
257 CONSTANT: VK_DELETE HEX: 2E
258 CONSTANT: VK_HELP HEX: 2F
260 CONSTANT: VK_0 CHAR: 0
261 CONSTANT: VK_1 CHAR: 1
262 CONSTANT: VK_2 CHAR: 2
263 CONSTANT: VK_3 CHAR: 3
264 CONSTANT: VK_4 CHAR: 4
265 CONSTANT: VK_5 CHAR: 5
266 CONSTANT: VK_6 CHAR: 6
267 CONSTANT: VK_7 CHAR: 7
268 CONSTANT: VK_8 CHAR: 8
269 CONSTANT: VK_9 CHAR: 9
271 CONSTANT: VK_A CHAR: A
272 CONSTANT: VK_B CHAR: B
273 CONSTANT: VK_C CHAR: C
274 CONSTANT: VK_D CHAR: D
275 CONSTANT: VK_E CHAR: E
276 CONSTANT: VK_F CHAR: F
277 CONSTANT: VK_G CHAR: G
278 CONSTANT: VK_H CHAR: H
279 CONSTANT: VK_I CHAR: I
280 CONSTANT: VK_J CHAR: J
281 CONSTANT: VK_K CHAR: K
282 CONSTANT: VK_L CHAR: L
283 CONSTANT: VK_M CHAR: M
284 CONSTANT: VK_N CHAR: N
285 CONSTANT: VK_O CHAR: O
286 CONSTANT: VK_P CHAR: P
287 CONSTANT: VK_Q CHAR: Q
288 CONSTANT: VK_R CHAR: R
289 CONSTANT: VK_S CHAR: S
290 CONSTANT: VK_T CHAR: T
291 CONSTANT: VK_U CHAR: U
292 CONSTANT: VK_V CHAR: V
293 CONSTANT: VK_W CHAR: W
294 CONSTANT: VK_X CHAR: X
295 CONSTANT: VK_Y CHAR: Y
296 CONSTANT: VK_Z CHAR: Z
298 CONSTANT: VK_LWIN HEX: 5B
299 CONSTANT: VK_RWIN HEX: 5C
300 CONSTANT: VK_APPS HEX: 5D
304 CONSTANT: VK_SLEEP HEX: 5F
306 CONSTANT: VK_NUMPAD0 HEX: 60
307 CONSTANT: VK_NUMPAD1 HEX: 61
308 CONSTANT: VK_NUMPAD2 HEX: 62
309 CONSTANT: VK_NUMPAD3 HEX: 63
310 CONSTANT: VK_NUMPAD4 HEX: 64
311 CONSTANT: VK_NUMPAD5 HEX: 65
312 CONSTANT: VK_NUMPAD6 HEX: 66
313 CONSTANT: VK_NUMPAD7 HEX: 67
314 CONSTANT: VK_NUMPAD8 HEX: 68
315 CONSTANT: VK_NUMPAD9 HEX: 69
316 CONSTANT: VK_MULTIPLY HEX: 6A
317 CONSTANT: VK_ADD HEX: 6B
318 CONSTANT: VK_SEPARATOR HEX: 6C
319 CONSTANT: VK_SUBTRACT HEX: 6D
320 CONSTANT: VK_DECIMAL HEX: 6E
321 CONSTANT: VK_DIVIDE HEX: 6F
322 CONSTANT: VK_F1 HEX: 70
323 CONSTANT: VK_F2 HEX: 71
324 CONSTANT: VK_F3 HEX: 72
325 CONSTANT: VK_F4 HEX: 73
326 CONSTANT: VK_F5 HEX: 74
327 CONSTANT: VK_F6 HEX: 75
328 CONSTANT: VK_F7 HEX: 76
329 CONSTANT: VK_F8 HEX: 77
330 CONSTANT: VK_F9 HEX: 78
331 CONSTANT: VK_F10 HEX: 79
332 CONSTANT: VK_F11 HEX: 7A
333 CONSTANT: VK_F12 HEX: 7B
334 CONSTANT: VK_F13 HEX: 7C
335 CONSTANT: VK_F14 HEX: 7D
336 CONSTANT: VK_F15 HEX: 7E
337 CONSTANT: VK_F16 HEX: 7F
338 CONSTANT: VK_F17 HEX: 80
339 CONSTANT: VK_F18 HEX: 81
340 CONSTANT: VK_F19 HEX: 82
341 CONSTANT: VK_F20 HEX: 83
342 CONSTANT: VK_F21 HEX: 84
343 CONSTANT: VK_F22 HEX: 85
344 CONSTANT: VK_F23 HEX: 86
345 CONSTANT: VK_F24 HEX: 87
347 ! 0x88 - 0x8F : unassigned
349 CONSTANT: VK_NUMLOCK HEX: 90
350 CONSTANT: VK_SCROLL HEX: 91
352 ! NEC PC-9800 kbd definitions
353 CONSTANT: VK_OEM_NEC_EQUAL HEX: 92 ! '=' key on numpad
355 ! Fujitsu/OASYS kbd definitions
356 CONSTANT: VK_OEM_FJ_JISHO HEX: 92 ! 'Dictionary' key
357 CONSTANT: VK_OEM_FJ_MASSHOU HEX: 93 ! 'Unregister word' key
358 CONSTANT: VK_OEM_FJ_TOUROKU HEX: 94 ! 'Register word' key
359 CONSTANT: VK_OEM_FJ_LOYA HEX: 95 ! 'Left OYAYUBI' key
360 CONSTANT: VK_OEM_FJ_ROYA HEX: 96 ! 'Right OYAYUBI' key
362 ! 0x97 - 0x9F : unassigned
364 ! VK_L* & VK_R* - left and right Alt, Ctrl and Shift virtual keys.
365 ! Used only as parameters to GetAsyncKeyState() and GetKeyState().
366 ! No other API or message will distinguish left and right keys in this way.
367 CONSTANT: VK_LSHIFT HEX: A0
368 CONSTANT: VK_RSHIFT HEX: A1
369 CONSTANT: VK_LCONTROL HEX: A2
370 CONSTANT: VK_RCONTROL HEX: A3
371 CONSTANT: VK_LMENU HEX: A4
372 CONSTANT: VK_RMENU HEX: A5
374 CONSTANT: VK_BROWSER_BACK HEX: A6
375 CONSTANT: VK_BROWSER_FORWARD HEX: A7
376 CONSTANT: VK_BROWSER_REFRESH HEX: A8
377 CONSTANT: VK_BROWSER_STOP HEX: A9
378 CONSTANT: VK_BROWSER_SEARCH HEX: AA
379 CONSTANT: VK_BROWSER_FAVORITES HEX: AB
380 CONSTANT: VK_BROWSER_HOME HEX: AC
382 CONSTANT: VK_VOLUME_MUTE HEX: AD
383 CONSTANT: VK_VOLUME_DOWN HEX: AE
384 CONSTANT: VK_VOLUME_UP HEX: AF
385 CONSTANT: VK_MEDIA_NEXT_TRACK HEX: B0
386 CONSTANT: VK_MEDIA_PREV_TRACK HEX: B1
387 CONSTANT: VK_MEDIA_STOP HEX: B2
388 CONSTANT: VK_MEDIA_PLAY_PAUSE HEX: B3
389 CONSTANT: VK_LAUNCH_MAIL HEX: B4
390 CONSTANT: VK_LAUNCH_MEDIA_SELECT HEX: B5
391 CONSTANT: VK_LAUNCH_APP1 HEX: B6
392 CONSTANT: VK_LAUNCH_APP2 HEX: B7
394 ! 0xB8 - 0xB9 : reserved
396 CONSTANT: VK_OEM_1 HEX: BA ! ';:' for US
397 CONSTANT: VK_OEM_PLUS HEX: BB ! '+' any country
398 CONSTANT: VK_OEM_COMMA HEX: BC ! ',' any country
399 CONSTANT: VK_OEM_MINUS HEX: BD ! '-' any country
400 CONSTANT: VK_OEM_PERIOD HEX: BE ! '.' any country
401 CONSTANT: VK_OEM_2 HEX: BF ! '/?' for US
402 CONSTANT: VK_OEM_3 HEX: C0 ! '`~' for US
404 ! 0xC1 - 0xD7 : reserved
406 ! 0xD8 - 0xDA : unassigned
408 CONSTANT: VK_OEM_4 HEX: DB ! '[{' for US
409 CONSTANT: VK_OEM_5 HEX: DC ! '\|' for US
410 CONSTANT: VK_OEM_6 HEX: DD ! ']}' for US
411 CONSTANT: VK_OEM_7 HEX: DE ! ''"' for US
412 CONSTANT: VK_OEM_8 HEX: DF
416 ! Various extended or enhanced keyboards
417 CONSTANT: VK_OEM_AX HEX: E1 ! 'AX' key on Japanese AX kbd
418 CONSTANT: VK_OEM_102 HEX: E2 ! "<>" or "\|" on RT 102-key kbd.
419 CONSTANT: VK_ICO_HELP HEX: E3 ! Help key on ICO
420 CONSTANT: VK_ICO_00 HEX: E4 ! 00 key on ICO
422 CONSTANT: VK_PROCESSKEY HEX: E5
424 CONSTANT: VK_ICO_CLEAR HEX: E6
426 CONSTANT: VK_PACKET HEX: E7
430 ! Nokia/Ericsson definitions
431 CONSTANT: VK_OEM_RESET HEX: E9
432 CONSTANT: VK_OEM_JUMP HEX: EA
433 CONSTANT: VK_OEM_PA1 HEX: EB
434 CONSTANT: VK_OEM_PA2 HEX: EC
435 CONSTANT: VK_OEM_PA3 HEX: ED
436 CONSTANT: VK_OEM_WSCTRL HEX: EE
437 CONSTANT: VK_OEM_CUSEL HEX: EF
438 CONSTANT: VK_OEM_ATTN HEX: F0
439 CONSTANT: VK_OEM_FINISH HEX: F1
440 CONSTANT: VK_OEM_COPY HEX: F2
441 CONSTANT: VK_OEM_AUTO HEX: F3
442 CONSTANT: VK_OEM_ENLW HEX: F4
443 CONSTANT: VK_OEM_BACKTAB HEX: F5
445 CONSTANT: VK_ATTN HEX: F6
446 CONSTANT: VK_CRSEL HEX: F7
447 CONSTANT: VK_EXSEL HEX: F8
448 CONSTANT: VK_EREOF HEX: F9
449 CONSTANT: VK_PLAY HEX: FA
450 CONSTANT: VK_ZOOM HEX: FB
451 CONSTANT: VK_NONAME HEX: FC
452 CONSTANT: VK_PA1 HEX: FD
453 CONSTANT: VK_OEM_CLEAR HEX: FE
456 ! Key State Masks for Mouse Messages
457 CONSTANT: MK_LBUTTON HEX: 0001
458 CONSTANT: MK_RBUTTON HEX: 0002
459 CONSTANT: MK_SHIFT HEX: 0004
460 CONSTANT: MK_CONTROL HEX: 0008
461 CONSTANT: MK_MBUTTON HEX: 0010
462 CONSTANT: MK_XBUTTON1 HEX: 0020
463 CONSTANT: MK_XBUTTON2 HEX: 0040
465 ! Some fields are not defined for win64
466 ! Window field offsets for GetWindowLong()
467 CONSTANT: GWL_WNDPROC -4
468 CONSTANT: GWL_HINSTANCE -6
469 CONSTANT: GWL_HWNDPARENT -8
470 CONSTANT: GWL_USERDATA -21
473 CONSTANT: GWL_STYLE -16
474 CONSTANT: GWL_EXSTYLE -20
476 CONSTANT: GWLP_WNDPROC -4
477 CONSTANT: GWLP_HINSTANCE -6
478 CONSTANT: GWLP_HWNDPARENT -8
479 CONSTANT: GWLP_USERDATA -21
480 CONSTANT: GWLP_ID -12
482 ! Class field offsets for GetClassLong()
483 CONSTANT: GCL_MENUNAME -8
484 CONSTANT: GCL_HBRBACKGROUND -10
485 CONSTANT: GCL_HCURSOR -12
486 CONSTANT: GCL_HICON -14
487 CONSTANT: GCL_HMODULE -16
488 CONSTANT: GCL_WNDPROC -24
489 CONSTANT: GCL_HICONSM -34
490 CONSTANT: GCL_CBWNDEXTRA -18
491 CONSTANT: GCL_CBCLSEXTRA -20
492 CONSTANT: GCL_STYLE -26
493 CONSTANT: GCW_ATOM -32
495 CONSTANT: GCLP_MENUNAME -8
496 CONSTANT: GCLP_HBRBACKGROUND -10
497 CONSTANT: GCLP_HCURSOR -12
498 CONSTANT: GCLP_HICON -14
499 CONSTANT: GCLP_HMODULE -16
500 CONSTANT: GCLP_WNDPROC -24
501 CONSTANT: GCLP_HICONSM -34
503 CONSTANT: MB_ICONASTERISK HEX: 00000040
504 CONSTANT: MB_ICONEXCLAMATION HEX: 00000030
505 CONSTANT: MB_ICONHAND HEX: 00000010
506 CONSTANT: MB_ICONQUESTION HEX: 00000020
507 CONSTANT: MB_OK HEX: 00000000
510 CONSTANT: FNOINVERT 2
515 CONSTANT: MAPVK_VK_TO_VSC 0
516 CONSTANT: MAPVK_VSC_TO_VK 1
517 CONSTANT: MAPVK_VK_TO_CHAR 2
518 CONSTANT: MAPVK_VSC_TO_VK_EX 3
519 CONSTANT: MAPVK_VK_TO_VSC_EX 3
521 CONSTANT: TME_HOVER 1
522 CONSTANT: TME_LEAVE 2
523 CONSTANT: TME_NONCLIENT 16
524 CONSTANT: TME_QUERY HEX: 40000000
525 CONSTANT: TME_CANCEL HEX: 80000000
526 CONSTANT: HOVER_DEFAULT HEX: ffffffff
527 STRUCT: TRACKMOUSEEVENT
531 { dwHoverTime DWORD } ;
532 TYPEDEF: TRACKMOUSEEVENT* LPTRACKMOUSEEVENT
534 CONSTANT: DBT_DEVICEARRIVAL HEX: 8000
535 CONSTANT: DBT_DEVICEREMOVECOMPLETE HEX: 8004
537 CONSTANT: DBT_DEVTYP_DEVICEINTERFACE 5
539 CONSTANT: DEVICE_NOTIFY_WINDOW_HANDLE 0
540 CONSTANT: DEVICE_NOTIFY_SERVICE_HANDLE 1
542 CONSTANT: DEVICE_NOTIFY_ALL_INTERFACE_CLASSES 4
544 STRUCT: DEV_BROADCAST_HDR
546 { dbch_devicetype DWORD }
547 { dbch_reserved DWORD } ;
549 STRUCT: DEV_BROADCAST_DEVICEW
551 { dbcc_devicetype DWORD }
552 { dbcc_reserved DWORD }
553 { dbcc_classguid GUID }
554 { dbcc_name WCHAR[1] } ;
556 CONSTANT: CCHDEVICENAME 32
558 STRUCT: MONITORINFOEX
563 { szDevice { TCHAR CCHDEVICENAME } } ;
565 TYPEDEF: MONITORINFOEX* LPMONITORINFOEX
566 TYPEDEF: MONITORINFOEX* LPMONITORINFO
568 CONSTANT: MONITOR_DEFAULTTONULL 0
569 CONSTANT: MONITOR_DEFAULTTOPRIMARY 1
570 CONSTANT: MONITOR_DEFAULTTONEAREST 2
571 CONSTANT: MONITORINFOF_PRIMARY 1
572 CONSTANT: SWP_NOSIZE 1
573 CONSTANT: SWP_NOMOVE 2
574 CONSTANT: SWP_NOZORDER 4
575 CONSTANT: SWP_NOREDRAW 8
576 CONSTANT: SWP_NOACTIVATE 16
577 CONSTANT: SWP_FRAMECHANGED 32
578 CONSTANT: SWP_SHOWWINDOW 64
579 CONSTANT: SWP_HIDEWINDOW 128
580 CONSTANT: SWP_NOCOPYBITS 256
581 CONSTANT: SWP_NOOWNERZORDER 512
582 CONSTANT: SWP_NOSENDCHANGING 1024
583 CONSTANT: SWP_DRAWFRAME SWP_FRAMECHANGED
584 CONSTANT: SWP_NOREPOSITION SWP_NOOWNERZORDER
585 CONSTANT: SWP_DEFERERASE 8192
586 CONSTANT: SWP_ASYNCWINDOWPOS 16384
588 CONSTANT: MF_ENABLED HEX: 0000
589 CONSTANT: MF_GRAYED HEX: 0001
590 CONSTANT: MF_DISABLED HEX: 0002
591 CONSTANT: MF_STRING HEX: 0000
592 CONSTANT: MF_BITMAP HEX: 0004
593 CONSTANT: MF_UNCHECKED HEX: 0000
594 CONSTANT: MF_CHECKED HEX: 0008
595 CONSTANT: MF_POPUP HEX: 0010
596 CONSTANT: MF_MENUBARBREAK HEX: 0020
597 CONSTANT: MF_MENUBREAK HEX: 0040
598 CONSTANT: MF_UNHILITE HEX: 0000
599 CONSTANT: MF_HILITE HEX: 0080
600 CONSTANT: MF_OWNERDRAW HEX: 0100
601 CONSTANT: MF_USECHECKBITMAPS HEX: 0200
602 CONSTANT: MF_BYCOMMAND HEX: 0000
603 CONSTANT: MF_BYPOSITION HEX: 0400
604 CONSTANT: MF_SEPARATOR HEX: 0800
605 CONSTANT: MF_DEFAULT HEX: 1000
606 CONSTANT: MF_SYSMENU HEX: 2000
607 CONSTANT: MF_HELP HEX: 4000
608 CONSTANT: MF_RIGHTJUSTIFY HEX: 4000
609 CONSTANT: MF_MOUSESELECT HEX: 8000
611 TYPEDEF: HANDLE HRAWINPUT
612 : GET_RAWINPUT_CODE_WPARAM ( wParam -- n ) HEX: ff bitand ; inline
614 CONSTANT: RIM_INPUT 0
615 CONSTANT: RIM_INPUTSINK 1
617 CONSTANT: RIM_TYPEMOUSE 0
618 CONSTANT: RIM_TYPEKEYBOARD 1
619 CONSTANT: RIM_TYPEHID 2
621 STRUCT: RAWINPUTHEADER
626 TYPEDEF: RAWINPUTHEADER* PRAWINPUTHEADER
627 TYPEDEF: RAWINPUTHEADER* LPRAWINPUTHEADER
628 STRUCT: RAWMOUSE_BUTTONS_USBUTTONS
629 { usButtonFlags USHORT }
630 { usButtonData USHORT } ;
632 UNION-STRUCT: RAWMOUSE_BUTTONS
634 { usButtons RAWMOUSE_BUTTONS_USBUTTONS } ;
637 { uButtons RAWMOUSE_BUTTONS }
638 { ulRawButtons ULONG }
641 { ulExtraInformation ULONG } ;
642 TYPEDEF: RAWMOUSE* PRAWMOUSE
643 TYPEDEF: RAWMOUSE* LPRAWMOUSE
645 CONSTANT: RI_MOUSE_LEFT_BUTTON_DOWN HEX: 0001
646 CONSTANT: RI_MOUSE_LEFT_BUTTON_UP HEX: 0002
647 CONSTANT: RI_MOUSE_RIGHT_BUTTON_DOWN HEX: 0004
648 CONSTANT: RI_MOUSE_RIGHT_BUTTON_UP HEX: 0008
649 CONSTANT: RI_MOUSE_MIDDLE_BUTTON_DOWN HEX: 0010
650 CONSTANT: RI_MOUSE_MIDDLE_BUTTON_UP HEX: 0020
652 : RI_MOUSE_BUTTON_1_DOWN ( -- n ) RI_MOUSE_LEFT_BUTTON_DOWN ; inline
653 : RI_MOUSE_BUTTON_1_UP ( -- n ) RI_MOUSE_LEFT_BUTTON_UP ; inline
654 : RI_MOUSE_BUTTON_2_DOWN ( -- n ) RI_MOUSE_RIGHT_BUTTON_DOWN ; inline
655 : RI_MOUSE_BUTTON_2_UP ( -- n ) RI_MOUSE_RIGHT_BUTTON_UP ; inline
656 : RI_MOUSE_BUTTON_3_DOWN ( -- n ) RI_MOUSE_MIDDLE_BUTTON_DOWN ; inline
657 : RI_MOUSE_BUTTON_3_UP ( -- n ) RI_MOUSE_MIDDLE_BUTTON_UP ; inline
659 CONSTANT: RI_MOUSE_BUTTON_4_DOWN HEX: 0040
660 CONSTANT: RI_MOUSE_BUTTON_4_UP HEX: 0080
661 CONSTANT: RI_MOUSE_BUTTON_5_DOWN HEX: 0100
662 CONSTANT: RI_MOUSE_BUTTON_5_UP HEX: 0200
663 CONSTANT: RI_MOUSE_WHEEL HEX: 0400
665 CONSTANT: MOUSE_MOVE_RELATIVE 0
666 CONSTANT: MOUSE_MOVE_ABSOLUTE 1
667 CONSTANT: MOUSE_VIRTUAL_DESKTOP HEX: 02
668 CONSTANT: MOUSE_ATTRIBUTES_CHANGED HEX: 04
669 CONSTANT: MOUSE_MOVE_NOCOALESCE HEX: 08
677 { ExtraInformation ULONG } ;
678 TYPEDEF: RAWKEYBOARD* PRAWKEYBOARD
679 TYPEDEF: RAWKEYBOARD* LPRAWKEYBOARD
681 CONSTANT: KEYBOARD_OVERRUN_MAKE_CODE HEX: FF
683 CONSTANT: RI_KEY_MAKE 0
684 CONSTANT: RI_KEY_BREAK 1
685 CONSTANT: RI_KEY_E0 2
686 CONSTANT: RI_KEY_E1 4
687 CONSTANT: RI_KEY_TERMSRV_SET_LED 8
688 CONSTANT: RI_KEY_TERMSRV_SHADOW HEX: 10
693 { bRawData BYTE[1] } ;
694 TYPEDEF: RAWHID* PRAWHID
695 TYPEDEF: RAWHID* LPRAWHID
697 UNION-STRUCT: RAWINPUT_UNION
699 { keyboard RAWKEYBOARD }
702 { header RAWINPUTHEADER }
703 { data RAWINPUT_UNION } ;
704 TYPEDEF: RAWINPUT* PRAWINPUT
705 TYPEDEF: RAWINPUT* LPRAWINPUT
707 : RAWINPUT_ALIGN ( x -- y )
708 cpu x86.32 = [ 4 ] [ 8 ] if align ; inline
709 : NEXTRAWINPUTBLOCK ( struct -- next-struct )
710 dup header>> dwSize>> swap <displaced-alien> RAWINPUT_ALIGN RAWINPUT memory>struct ; inline
712 CONSTANT: RID_INPUT HEX: 10000003
713 CONSTANT: RID_HEADER HEX: 10000005
714 CONSTANT: RIDI_PREPARSEDDATA HEX: 20000005
715 CONSTANT: RIDI_DEVICENAME HEX: 20000007
716 CONSTANT: RIDI_DEVICEINFO HEX: 2000000b
718 STRUCT: RID_DEVICE_INFO_MOUSE
720 { dwNumberOfButtons DWORD }
721 { dwSampleRate DWORD }
722 { fHasHorizontalWheel BOOL } ;
723 TYPEDEF: RID_DEVICE_INFO_MOUSE* PRID_DEVICE_INFO_MOUSE
725 STRUCT: RID_DEVICE_INFO_KEYBOARD
728 { dwKeyboardMode DWORD }
729 { dwNumberOfFunctionKeys DWORD }
730 { dwNumberOfIndicators DWORD }
731 { dwNumberOfKeysTotal DWORD } ;
732 TYPEDEF: RID_DEVICE_INFO_KEYBOARD* PRID_DEVICE_INFO_KEYBOARD
734 STRUCT: RID_DEVICE_INFO_HID
736 { dwProductId DWORD }
737 { dwVersionNumber DWORD }
738 { usUsagePage USHORT }
740 TYPEDEF: RID_DEVICE_INFO_HID* PRID_DEVICE_INFO_HID
742 UNION-STRUCT: RID_DEVICE_INFO_UNION
743 { mouse RID_DEVICE_INFO_MOUSE }
744 { keyboard RID_DEVICE_INFO_KEYBOARD }
745 { hid RID_DEVICE_INFO_HID } ;
746 STRUCT: RID_DEVICE_INFO
749 { data RID_DEVICE_INFO_UNION } ;
750 TYPEDEF: RID_DEVICE_INFO* PRID_DEVICE_INFO
751 TYPEDEF: RID_DEVICE_INFO* LPRID_DEVICE_INFO
753 STRUCT: RAWINPUTDEVICE
754 { usUsagePage USHORT }
757 { hwndTarget HWND } ;
758 TYPEDEF: RAWINPUTDEVICE* PRAWINPUTDEVICE
759 TYPEDEF: RAWINPUTDEVICE* LPRAWINPUTDEVICE
760 TYPEDEF: RAWINPUTDEVICE* PCRAWINPUTDEVICE
762 CONSTANT: RIDEV_REMOVE HEX: 00000001
763 CONSTANT: RIDEV_EXCLUDE HEX: 00000010
764 CONSTANT: RIDEV_PAGEONLY HEX: 00000020
765 CONSTANT: RIDEV_NOLEGACY HEX: 00000030
766 CONSTANT: RIDEV_INPUTSINK HEX: 00000100
767 CONSTANT: RIDEV_CAPTUREMOUSE HEX: 00000200
768 CONSTANT: RIDEV_NOHOTKEYS HEX: 00000200
769 CONSTANT: RIDEV_APPKEYS HEX: 00000400
770 CONSTANT: RIDEV_EXINPUTSINK HEX: 00001000
771 CONSTANT: RIDEV_DEVNOTIFY HEX: 00002000
772 CONSTANT: RIDEV_EXMODEMASK HEX: 000000F0
774 : RIDEV_EXMODE ( mode -- x ) RIDEV_EXMODEMASK bitand ; inline
776 CONSTANT: GIDC_ARRIVAL 1
777 CONSTANT: GIDC_REMOVAL 2
779 : GET_DEVICE_CHANGE_WPARAM ( wParam -- x ) HEX: ffff bitand ; inline
781 STRUCT: RAWINPUTDEVICELIST
784 TYPEDEF: RAWINPUTDEVICELIST* PRAWINPUTDEVICELIST
788 FUNCTION: HKL ActivateKeyboardLayout ( HKL hkl, UINT Flags ) ;
789 FUNCTION: BOOL AdjustWindowRect ( LPRECT lpRect, DWORD dwStyle, BOOL bMenu ) ;
790 FUNCTION: BOOL AdjustWindowRectEx ( LPRECT lpRect, DWORD dwStyle, BOOL bMenu, DWORD dwExStyle ) ;
791 ! FUNCTION: AlignRects
792 ! FUNCTION: AllowForegroundActivation
793 ! FUNCTION: AllowSetForegroundWindow
794 ! FUNCTION: AnimateWindow
796 FUNCTION: BOOL AnyPopup ( ) ;
798 ! FUNCTION: AppendMenuA
799 ! FUNCTION: AppendMenuW
800 ! FUNCTION: ArrangeIconicWindows
801 ! FUNCTION: AttachThreadInput
802 ! FUNCTION: BeginDeferWindowPos
804 FUNCTION: HDC BeginPaint ( HWND hwnd, LPPAINTSTRUCT lpPaint ) ;
806 ! FUNCTION: BlockInput
807 ! FUNCTION: BringWindowToTop
808 ! FUNCTION: BroadcastSystemMessage
809 ! FUNCTION: BroadcastSystemMessageA
810 ! FUNCTION: BroadcastSystemMessageExA
811 ! FUNCTION: BroadcastSystemMessageExW
812 ! FUNCTION: BroadcastSystemMessageW
813 ! FUNCTION: BuildReasonArray
814 ! FUNCTION: CalcMenuBar
815 ! FUNCTION: CallMsgFilter
816 ! FUNCTION: CallMsgFilterA
817 ! FUNCTION: CallMsgFilterW
818 ! FUNCTION: CallNextHookEx
819 ! FUNCTION: CallWindowProcA
820 ! FUNCTION: CallWindowProcW
821 ! FUNCTION: CascadeChildWindows
822 ! FUNCTION: CascadeWindows
823 ! FUNCTION: ChangeClipboardChain
824 ! FUNCTION: ChangeDisplaySettingsA
825 ! FUNCTION: ChangeDisplaySettingsExA
826 ! FUNCTION: ChangeDisplaySettingsExW
827 ! FUNCTION: ChangeDisplaySettingsW
828 ! FUNCTION: ChangeMenuA
829 ! FUNCTION: ChangeMenuW
830 ! FUNCTION: CharLowerA
831 ! FUNCTION: CharLowerBuffA
832 ! FUNCTION: CharLowerBuffW
833 ! FUNCTION: CharLowerW
834 ! FUNCTION: CharNextA
835 ! FUNCTION: CharNextExA
836 ! FUNCTION: CharNextW
837 ! FUNCTION: CharPrevA
838 ! FUNCTION: CharPrevExA
839 ! FUNCTION: CharPrevW
840 ! FUNCTION: CharToOemA
841 ! FUNCTION: CharToOemBuffA
842 ! FUNCTION: CharToOemBuffW
843 ! FUNCTION: CharToOemW
844 ! FUNCTION: CharUpperA
845 ! FUNCTION: CharUpperBuffA
846 ! FUNCTION: CharUpperBuffW
847 ! FUNCTION: CharUpperW
848 ! FUNCTION: CheckDlgButton
849 ! FUNCTION: CheckMenuItem
850 ! FUNCTION: CheckMenuRadioItem
851 ! FUNCTION: CheckRadioButton
852 FUNCTION: HWND ChildWindowFromPoint ( HWND hWndParent, POINT point ) ;
853 ! FUNCTION: ChildWindowFromPointEx
854 ! FUNCTION: ClientThreadSetup
855 FUNCTION: BOOL ClientToScreen ( HWND hWnd, POINT* point ) ;
856 ! FUNCTION: CliImmSetHotKey
857 FUNCTION: int ClipCursor ( RECT* clipRect ) ;
858 FUNCTION: BOOL CloseClipboard ( ) ;
859 ! FUNCTION: CloseDesktop
860 ! FUNCTION: CloseWindow
861 ! FUNCTION: CloseWindowStation
862 ! FUNCTION: CopyAcceleratorTableA
863 FUNCTION: int CopyAcceleratorTableW ( HACCEL hAccelSrc, LPACCEL lpAccelDst, int cAccelEntries ) ;
864 ALIAS: CopyAcceleratorTable CopyAcceleratorTableW
866 ! FUNCTION: CopyImage
868 ! FUNCTION: CountClipboardFormats
869 ! FUNCTION: CreateAcceleratorTableA
870 FUNCTION: HACCEL CreateAcceleratorTableW ( LPACCEL lpaccl, int cEntries ) ;
871 ALIAS: CreateAcceleratorTable CreateAcceleratorTableW
872 ! FUNCTION: CreateCaret
873 ! FUNCTION: CreateCursor
874 ! FUNCTION: CreateDesktopA
875 ! FUNCTION: CreateDesktopW
876 ! FUNCTION: CreateDialogIndirectParamA
877 ! FUNCTION: CreateDialogIndirectParamAorW
878 ! FUNCTION: CreateDialogIndirectParamW
879 ! FUNCTION: CreateDialogParamA
880 ! FUNCTION: CreateDialogParamW
881 ! FUNCTION: CreateIcon
882 ! FUNCTION: CreateIconFromResource
883 ! FUNCTION: CreateIconFromResourceEx
884 ! FUNCTION: CreateIconIndirect
885 ! FUNCTION: CreateMDIWindowA
886 ! FUNCTION: CreateMDIWindowW
887 ! FUNCTION: CreateMenu
888 ! FUNCTION: CreatePopupMenu
889 ! FUNCTION: CreateSystemThreads
891 FUNCTION: HWND CreateWindowExW (
894 LPCTSTR lpWindowName,
905 ALIAS: CreateWindowEx CreateWindowExW
907 : CreateWindow ( a b c d e f g h i j k -- hwnd ) 0 12 -nrot CreateWindowEx ; inline
909 ! FUNCTION: CreateWindowStationA
910 ! FUNCTION: CreateWindowStationW
911 ! FUNCTION: CsrBroadcastSystemMessageExW
912 ! FUNCTION: CtxInitUser32
913 ! FUNCTION: DdeAbandonTransaction
914 ! FUNCTION: DdeAccessData
915 ! FUNCTION: DdeAddData
916 ! FUNCTION: DdeClientTransaction
917 ! FUNCTION: DdeCmpStringHandles
918 ! FUNCTION: DdeConnect
919 ! FUNCTION: DdeConnectList
920 ! FUNCTION: DdeCreateDataHandle
921 ! FUNCTION: DdeCreateStringHandleA
922 ! FUNCTION: DdeCreateStringHandleW
923 ! FUNCTION: DdeDisconnect
924 ! FUNCTION: DdeDisconnectList
925 ! FUNCTION: DdeEnableCallback
926 ! FUNCTION: DdeFreeDataHandle
927 ! FUNCTION: DdeFreeStringHandle
928 ! FUNCTION: DdeGetData
929 ! FUNCTION: DdeGetLastError
930 ! FUNCTION: DdeGetQualityOfService
931 ! FUNCTION: DdeImpersonateClient
932 ! FUNCTION: DdeInitializeA
933 ! FUNCTION: DdeInitializeW
934 ! FUNCTION: DdeKeepStringHandle
935 ! FUNCTION: DdeNameService
936 ! FUNCTION: DdePostAdvise
937 ! FUNCTION: DdeQueryConvInfo
938 ! FUNCTION: DdeQueryNextServer
939 ! FUNCTION: DdeQueryStringA
940 ! FUNCTION: DdeQueryStringW
941 ! FUNCTION: DdeReconnect
942 ! FUNCTION: DdeSetQualityOfService
943 ! FUNCTION: DdeSetUserHandle
944 ! FUNCTION: DdeUnaccessData
945 ! FUNCTION: DdeUninitialize
946 ! FUNCTION: DefDlgProcA
947 ! FUNCTION: DefDlgProcW
948 ! FUNCTION: DeferWindowPos
949 ! FUNCTION: DefFrameProcA
950 ! FUNCTION: DefFrameProcW
951 ! FUNCTION: DefMDIChildProcA
952 ! FUNCTION: DefMDIChildProcW
953 FUNCTION: LRESULT DefRawInputProc ( PRAWINPUT* paRawInput, INT nInput, UINT cbSizeHeader ) ;
954 FUNCTION: LRESULT DefWindowProcW ( HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam ) ;
955 ALIAS: DefWindowProc DefWindowProcW
956 ! FUNCTION: DeleteMenu
957 ! FUNCTION: DeregisterShellHookWindow
958 FUNCTION: BOOL DestroyAcceleratorTable ( HACCEL hAccel ) ;
959 ! FUNCTION: DestroyCaret
960 ! FUNCTION: DestroyCursor
961 ! FUNCTION: DestroyIcon
962 ! FUNCTION: DestroyMenu
963 ! FUNCTION: DestroyReasons
964 FUNCTION: BOOL DestroyWindow ( HWND hWnd ) ;
965 ! FUNCTION: DeviceEventWorker
966 ! FUNCTION: DialogBoxIndirectParamA
967 ! FUNCTION: DialogBoxIndirectParamAorW
968 ! FUNCTION: DialogBoxIndirectParamW
969 ! FUNCTION: DialogBoxParamA
970 ! FUNCTION: DialogBoxParamW
971 ! FUNCTION: DisableProcessWindowsGhosting
973 FUNCTION: LONG DispatchMessageW ( MSG* lpMsg ) ;
974 ALIAS: DispatchMessage DispatchMessageW
976 ! FUNCTION: DisplayExitWindowsWarnings
977 ! FUNCTION: DlgDirListA
978 ! FUNCTION: DlgDirListComboBoxA
979 ! FUNCTION: DlgDirListComboBoxW
980 ! FUNCTION: DlgDirListW
981 ! FUNCTION: DlgDirSelectComboBoxExA
982 ! FUNCTION: DlgDirSelectComboBoxExW
983 ! FUNCTION: DlgDirSelectExA
984 ! FUNCTION: DlgDirSelectExW
985 ! FUNCTION: DragDetect
986 ! FUNCTION: DragObject
989 FUNCTION: BOOL DrawAnimatedRects ( HWND hWnd, int idAni, RECT* lprcFrom, RECT* lprcTo ) ;
990 ! FUNCTION: BOOL DrawCaption ( HWND hWnd, HDC hdc, LPRECT lprc, UINT uFlags ) ;
993 ! FUNCTION: DrawFocusRect
994 ! FUNCTION: DrawFrame
995 ! FUNCTION: DrawFrameControl
997 FUNCTION: BOOL DrawIcon ( HDC hDC, int X, int Y, HICON hIcon ) ;
999 ! FUNCTION: DrawIconEx
1000 ! FUNCTION: DrawMenuBar
1001 ! FUNCTION: DrawMenuBarTemp
1002 ! FUNCTION: DrawStateA
1003 ! FUNCTION: DrawStateW
1004 ! FUNCTION: DrawTextA
1005 ! FUNCTION: DrawTextExA
1006 ! FUNCTION: DrawTextExW
1007 ! FUNCTION: DrawTextW
1008 ! FUNCTION: EditWndProc
1009 FUNCTION: BOOL EmptyClipboard ( ) ;
1010 FUNCTION: BOOL EnableMenuItem ( HMENU hMenu, UINT uIDEnableItem, UINT uEnable ) ;
1011 ! FUNCTION: EnableScrollBar
1012 ! FUNCTION: EnableWindow
1013 ! FUNCTION: EndDeferWindowPos
1014 ! FUNCTION: EndDialog
1017 FUNCTION: BOOL EndPaint ( HWND hWnd, PAINTSTRUCT* lpPaint) ;
1020 ! FUNCTION: EnterReaderModeHelper
1021 ! FUNCTION: EnumChildWindows
1022 FUNCTION: UINT EnumClipboardFormats ( UINT format ) ;
1023 ! FUNCTION: EnumDesktopsA
1024 ! FUNCTION: EnumDesktopsW
1025 ! FUNCTION: EnumDesktopWindows
1026 ! FUNCTION: EnumDisplayDevicesA
1027 ! FUNCTION: EnumDisplayDevicesW
1028 ! FUNCTION: EnumDisplayMonitors
1029 ! FUNCTION: EnumDisplaySettingsA
1030 ! FUNCTION: EnumDisplaySettingsExA
1031 ! FUNCTION: EnumDisplaySettingsExW
1032 ! FUNCTION: EnumDisplaySettingsW
1033 ! FUNCTION: EnumPropsA
1034 ! FUNCTION: EnumPropsExA
1035 ! FUNCTION: EnumPropsExW
1036 ! FUNCTION: EnumPropsW
1037 ! FUNCTION: EnumThreadWindows
1038 ! FUNCTION: EnumWindows
1039 ! FUNCTION: EnumWindowStationsA
1040 ! FUNCTION: EnumWindowStationsW
1041 ! FUNCTION: EqualRect
1042 ! FUNCTION: ExcludeUpdateRgn
1043 ! FUNCTION: ExitWindowsEx
1044 FUNCTION: int FillRect ( HDC hDC, RECT* lprc, HBRUSH hbr ) ;
1045 FUNCTION: HWND FindWindowA ( char* lpClassName, char* lpWindowName ) ;
1046 FUNCTION: HWND FindWindowExA ( HWND hwndParent, HWND childAfter, char* lpClassName, char* lpWindowName ) ;
1047 ! FUNCTION: FindWindowExW
1048 ! FUNCTION: FindWindowW
1049 ! FUNCTION: FlashWindow
1050 ! FUNCTION: FlashWindowEx
1051 ! FUNCTION: FrameRect
1052 ! FUNCTION: FreeDDElParam
1053 ! FUNCTION: GetActiveWindow
1054 ! FUNCTION: GetAltTabInfo
1055 ! FUNCTION: GetAltTabInfoA
1056 ! FUNCTION: GetAltTabInfoW
1057 ! FUNCTION: GetAncestor
1058 ! FUNCTION: GetAppCompatFlags
1059 ! FUNCTION: GetAppCompatFlags2
1060 ! FUNCTION: GetAsyncKeyState
1061 FUNCTION: HWND GetCapture ( ) ;
1062 ! FUNCTION: GetCaretBlinkTime
1063 ! FUNCTION: GetCaretPos
1064 FUNCTION: BOOL GetClassInfoW ( HINSTANCE hInst, LPCWSTR lpszClass, LPWNDCLASS lpwcx ) ;
1065 ALIAS: GetClassInfo GetClassInfoW
1067 FUNCTION: BOOL GetClassInfoExW ( HINSTANCE hInst, LPCWSTR lpszClass, LPWNDCLASSEX lpwcx ) ;
1068 ALIAS: GetClassInfoEx GetClassInfoExW
1070 FUNCTION: ULONG_PTR GetClassLongW ( HWND hWnd, int nIndex ) ;
1071 ALIAS: GetClassLong GetClassLongW
1072 ALIAS: GetClassLongPtr GetClassLongW
1075 ! FUNCTION: GetClassNameA
1076 ! FUNCTION: GetClassNameW
1077 ! FUNCTION: GetClassWord
1078 FUNCTION: BOOL GetClientRect ( HWND hWnd, LPRECT lpRect ) ;
1080 FUNCTION: HANDLE GetClipboardData ( UINT uFormat ) ;
1082 ! FUNCTION: GetClipboardFormatNameA
1083 ! FUNCTION: GetClipboardFormatNameW
1084 FUNCTION: HWND GetClipboardOwner ( ) ;
1085 FUNCTION: DWORD GetClipboardSequenceNumber ( ) ;
1086 ! FUNCTION: GetClipboardViewer
1087 ! FUNCTION: GetClipCursor
1088 ! FUNCTION: GetComboBoxInfo
1089 ! FUNCTION: GetCursor
1090 ! FUNCTION: GetCursorFrameInfo
1091 ! FUNCTION: GetCursorInfo
1092 ! FUNCTION: GetCursorPos
1093 FUNCTION: HDC GetDC ( HWND hWnd ) ;
1094 FUNCTION: HDC GetDCEx ( HWND hWnd, HRGN hrgnClip, DWORD flags ) ;
1095 ! FUNCTION: GetDesktopWindow
1096 ! FUNCTION: GetDialogBaseUnits
1097 ! FUNCTION: GetDlgCtrlID
1098 ! FUNCTION: GetDlgItem
1099 ! FUNCTION: GetDlgItemInt
1100 ! FUNCTION: GetDlgItemTextA
1101 ! FUNCTION: GetDlgItemTextW
1102 FUNCTION: uint GetDoubleClickTime ( ) ;
1103 FUNCTION: HWND GetFocus ( ) ;
1104 ! FUNCTION: GetForegroundWindow
1105 ! FUNCTION: GetGuiResources
1106 ! FUNCTION: GetGUIThreadInfo
1107 ! FUNCTION: GetIconInfo
1108 ! FUNCTION: GetInputDesktop
1109 ! FUNCTION: GetInputState
1110 ! FUNCTION: GetInternalWindowPos
1111 ! FUNCTION: GetKBCodePage
1112 ! FUNCTION: GetKeyboardLayout
1113 ! FUNCTION: GetKeyboardLayoutList
1114 ! FUNCTION: GetKeyboardLayoutNameA
1115 ! FUNCTION: GetKeyboardLayoutNameW
1116 ! FUNCTION: GetKeyboardState
1117 ! FUNCTION: GetKeyboardType
1118 ! FUNCTION: GetKeyNameTextA
1119 ! FUNCTION: GetKeyNameTextW
1120 FUNCTION: SHORT GetKeyState ( int nVirtKey ) ;
1121 ! FUNCTION: GetLastActivePopup
1122 ! FUNCTION: GetLastInputInfo
1123 ! FUNCTION: GetLayeredWindowAttributes
1124 ! FUNCTION: GetListBoxInfo
1126 ! FUNCTION: GetMenuBarInfo
1127 ! FUNCTION: GetMenuCheckMarkDimensions
1128 ! FUNCTION: GetMenuContextHelpId
1129 ! FUNCTION: GetMenuDefaultItem
1130 ! FUNCTION: GetMenuInfo
1131 ! FUNCTION: GetMenuItemCount
1132 ! FUNCTION: GetMenuItemID
1133 ! FUNCTION: GetMenuItemInfoA
1134 ! FUNCTION: GetMenuItemInfoW
1135 ! FUNCTION: GetMenuItemRect
1136 ! FUNCTION: GetMenuState
1137 ! FUNCTION: GetMenuStringA
1138 ! FUNCTION: GetMenuStringW
1140 FUNCTION: BOOL GetMessageW ( LPMSG lpMsg, HWND hWnd, UINT wMsgFilterMin, UINT wMsgFilterMax ) ;
1141 ALIAS: GetMessage GetMessageW
1143 ! FUNCTION: GetMessageExtraInfo
1144 ! FUNCTION: GetMessagePos
1145 ! FUNCTION: GetMessageTime
1146 ! FUNCTION: GetMonitorInfoA
1148 FUNCTION: BOOL GetMonitorInfoW ( HMONITOR hMonitor, LPMONITORINFO lpmi ) ;
1149 ALIAS: GetMonitorInfo GetMonitorInfoW
1151 ! FUNCTION: GetMouseMovePointsEx
1152 ! FUNCTION: GetNextDlgGroupItem
1153 ! FUNCTION: GetNextDlgTabItem
1154 ! FUNCTION: GetOpenClipboardWindow
1155 FUNCTION: HWND GetParent ( HWND hWnd ) ;
1156 FUNCTION: int GetPriorityClipboardFormat ( UINT* paFormatPriorityList, int cFormats ) ;
1157 ! FUNCTION: GetProcessDefaultLayout
1158 ! FUNCTION: GetProcessWindowStation
1159 ! FUNCTION: GetProgmanWindow
1160 ! FUNCTION: GetPropA
1161 ! FUNCTION: GetPropW
1162 ! FUNCTION: GetQueueStatus
1163 FUNCTION: UINT GetRawInputBuffer ( PRAWINPUT pData, PUINT pcbSize, UINT cbSizeHeader ) ;
1164 FUNCTION: UINT GetRawInputData ( HRAWINPUT hRawInput, UINT uiCommand, LPVOID pData, PUINT pcbSize, UINT cbSizeHeader ) ;
1165 FUNCTION: UINT GetRawInputDeviceInfoA ( HANDLE hDevice, UINT uiCommand, LPVOID pData, PUINT pcbSize ) ;
1166 FUNCTION: UINT GetRawInputDeviceInfoW ( HANDLE hDevice, UINT uiCommand, LPVOID pData, PUINT pcbSize ) ;
1167 ALIAS: GetRawInputDeviceInfo GetRawInputDeviceInfoW
1168 FUNCTION: UINT GetRawInputDeviceList ( PRAWINPUTDEVICELIST pRawInputDeviceList, PUINT puiNumDevices, UINT cbSize ) ;
1169 FUNCTION: UINT GetRegisteredRawInputDevices ( PRAWINPUTDEVICE pRawInputDevices, PUINT puiNumDevices, UINT cbSize ) ;
1170 ! FUNCTION: GetReasonTitleFromReasonCode
1171 ! FUNCTION: GetScrollBarInfo
1172 ! FUNCTION: GetScrollInfo
1173 ! FUNCTION: GetScrollPos
1174 ! FUNCTION: GetScrollRange
1175 ! FUNCTION: GetShellWindow
1176 ! FUNCTION: GetSubMenu
1177 FUNCTION: COLORREF GetSysColor ( int nIndex ) ;
1178 FUNCTION: HBRUSH GetSysColorBrush ( int nIndex ) ;
1179 FUNCTION: HMENU GetSystemMenu ( HWND hWnd, BOOL bRevert ) ;
1180 ! FUNCTION: GetSystemMetrics
1181 ! FUNCTION: GetTabbedTextExtentA
1182 ! FUNCTION: GetTabbedTextExtentW
1183 ! FUNCTION: GetTaskmanWindow
1184 ! FUNCTION: GetThreadDesktop
1185 ! FUNCTION: GetTitleBarInfo
1188 FUNCTION: HWND GetTopWindow ( HWND hWnd ) ;
1189 ! FUNCTION: BOOL GetUpdateRect ( HWND hWnd, LPRECT lpRect, BOOL bErase ) ;
1190 FUNCTION: int GetUpdateRgn ( HWND hWnd, HRGN hRgn, BOOL bErase ) ;
1193 ! FUNCTION: GetUserObjectInformationA
1194 ! FUNCTION: GetUserObjectInformationW
1195 ! FUNCTION: GetUserObjectSecurity
1196 FUNCTION: HWND GetWindow ( HWND hWnd, UINT uCmd ) ;
1197 ! FUNCTION: GetWindowContextHelpId
1198 ! FUNCTION: GetWindowDC
1199 ! FUNCTION: GetWindowInfo
1200 ! FUNCTION: GetWindowLongA
1201 ! FUNCTION: GetWindowLongW
1202 FUNCTION: LONG_PTR GetWindowLongW ( HANDLE hWnd, int index ) ;
1203 ALIAS: GetWindowLong GetWindowLongW
1204 ! FUNCTION: GetWindowModuleFileName
1205 ! FUNCTION: GetWindowModuleFileNameA
1206 ! FUNCTION: GetWindowModuleFileNameW
1207 ! FUNCTION: GetWindowPlacement
1208 FUNCTION: BOOL GetWindowRect ( HWND hWnd, LPRECT lpRect ) ;
1209 ! FUNCTION: GetWindowRgn
1210 ! FUNCTION: GetWindowRgnBox
1211 FUNCTION: int GetWindowTextA ( HWND hWnd, char* lpString, int nMaxCount ) ;
1212 ! FUNCTION: GetWindowTextLengthA
1213 ! FUNCTION: GetWindowTextLengthW
1214 ! FUNCTION: GetWindowTextW
1215 FUNCTION: DWORD GetWindowThreadProcessId ( HWND hWnd, void* lpdwProcessId ) ;
1216 ! FUNCTION: GetWindowWord
1217 ! FUNCTION: GetWinStationInfo
1218 ! FUNCTION: GrayStringA
1219 ! FUNCTION: GrayStringW
1220 ! FUNCTION: HideCaret
1221 ! FUNCTION: HiliteMenuItem
1222 ! FUNCTION: ImpersonateDdeClientWindow
1223 ! FUNCTION: IMPGetIMEA
1224 ! FUNCTION: IMPGetIMEW
1225 ! FUNCTION: IMPQueryIMEA
1226 ! FUNCTION: IMPQueryIMEW
1227 ! FUNCTION: IMPSetIMEA
1228 ! FUNCTION: IMPSetIMEW
1229 ! FUNCTION: InflateRect
1230 ! FUNCTION: InitializeLpkHooks
1231 ! FUNCTION: InitializeWin32EntryTable
1232 ! FUNCTION: InSendMessage
1233 ! FUNCTION: InSendMessageEx
1234 ! FUNCTION: InsertMenuA
1235 ! FUNCTION: InsertMenuItemA
1236 ! FUNCTION: InsertMenuItemW
1237 ! FUNCTION: InsertMenuW
1238 ! FUNCTION: InternalGetWindowText
1239 ! FUNCTION: IntersectRect
1240 ! FUNCTION: InvalidateRect
1241 ! FUNCTION: InvalidateRgn
1242 ! FUNCTION: InvertRect
1243 ! FUNCTION: IsCharAlphaA
1244 ! FUNCTION: IsCharAlphaNumericA
1245 ! FUNCTION: IsCharAlphaNumericW
1246 ! FUNCTION: IsCharAlphaW
1247 ! FUNCTION: IsCharLowerA
1248 ! FUNCTION: IsCharLowerW
1249 ! FUNCTION: IsCharUpperA
1250 ! FUNCTION: IsCharUpperW
1251 FUNCTION: BOOL IsChild ( HWND hWndParent, HWND hWnd ) ;
1252 FUNCTION: BOOL IsClipboardFormatAvailable ( UINT format ) ;
1253 ! FUNCTION: IsDialogMessage
1254 ! FUNCTION: IsDialogMessageA
1255 ! FUNCTION: IsDialogMessageW
1256 ! FUNCTION: IsDlgButtonChecked
1257 FUNCTION: BOOL IsGUIThread ( BOOL bConvert ) ;
1258 FUNCTION: BOOL IsHungAppWindow ( HWND hWnd ) ;
1259 FUNCTION: BOOL IsIconic ( HWND hWnd ) ;
1260 FUNCTION: BOOL IsMenu ( HMENU hMenu ) ;
1261 ! FUNCTION: BOOL IsRectEmpty
1262 ! FUNCTION: BOOL IsServerSideWindow
1263 FUNCTION: BOOL IsWindow ( HWND hWnd ) ;
1264 ! FUNCTION: BOOL IsWindowEnabled
1265 ! FUNCTION: BOOL IsWindowInDestroy
1266 FUNCTION: BOOL IsWindowUnicode ( HWND hWnd ) ;
1267 FUNCTION: BOOL IsWindowVisible ( HWND hWnd ) ;
1268 ! FUNCTION: BOOL IsWinEventHookInstalled
1269 FUNCTION: BOOL IsZoomed ( HWND hWnd ) ;
1270 ! FUNCTION: keybd_event
1271 ! FUNCTION: KillSystemTimer
1272 ! FUNCTION: KillTimer
1273 ! FUNCTION: LoadAcceleratorsA
1274 FUNCTION: HACCEL LoadAcceleratorsW ( HINSTANCE hInstance, LPCTSTR lpTableName ) ;
1275 ! FUNCTION: LoadBitmapA
1276 ! FUNCTION: LoadBitmapW
1277 ! FUNCTION: LoadCursorFromFileA
1278 ! FUNCTION: LoadCursorFromFileW
1281 ! FUNCTION: HCURSOR LoadCursorW ( HINSTANCE hInstance, LPCWSTR lpCursorName ) ;
1282 FUNCTION: HCURSOR LoadCursorW ( HINSTANCE hInstance, ushort lpCursorName ) ;
1283 ALIAS: LoadCursor LoadCursorW
1285 ! FUNCTION: HICON LoadIconA ( HINSTANCE hInstance, LPCTSTR lpIconName ) ;
1286 FUNCTION: HICON LoadIconW ( HINSTANCE hInstance, LPCTSTR lpIconName ) ;
1287 ALIAS: LoadIcon LoadIconW
1289 ! FUNCTION: LoadImageA
1290 ! FUNCTION: LoadImageW
1291 ! FUNCTION: LoadKeyboardLayoutA
1292 ! FUNCTION: LoadKeyboardLayoutEx
1293 ! FUNCTION: LoadKeyboardLayoutW
1294 ! FUNCTION: LoadLocalFonts
1295 ! FUNCTION: LoadMenuA
1296 ! FUNCTION: LoadMenuIndirectA
1297 ! FUNCTION: LoadMenuIndirectW
1298 ! FUNCTION: LoadMenuW
1299 ! FUNCTION: LoadRemoteFonts
1300 ! FUNCTION: LoadStringA
1301 ! FUNCTION: LoadStringW
1302 ! FUNCTION: LockSetForegroundWindow
1303 ! FUNCTION: LockWindowStation
1304 ! FUNCTION: LockWindowUpdate
1305 ! FUNCTION: LockWorkStation
1306 ! FUNCTION: LookupIconIdFromDirectory
1307 ! FUNCTION: LookupIconIdFromDirectoryEx
1308 ! FUNCTION: MapDialogRect
1310 FUNCTION: UINT MapVirtualKeyW ( UINT uCode, UINT uMapType ) ;
1311 ALIAS: MapVirtualKey MapVirtualKeyW
1313 FUNCTION: UINT MapVirtualKeyExW ( UINT uCode, UINT uMapType, HKL dwhkl ) ;
1314 ALIAS: MapVirtualKeyEx MapVirtualKeyExW
1316 ! FUNCTION: MapWindowPoints
1317 ! FUNCTION: MB_GetString
1318 ! FUNCTION: MBToWCSEx
1319 ! FUNCTION: MenuItemFromPoint
1320 ! FUNCTION: MenuWindowProcA
1321 ! FUNCTION: MenuWindowProcW
1324 FUNCTION: BOOL MessageBeep ( UINT uType ) ;
1326 FUNCTION: int MessageBoxA (
1332 FUNCTION: int MessageBoxW (
1338 FUNCTION: int MessageBoxExA ( HWND hWnd,
1345 FUNCTION: int MessageBoxExW (
1350 WORD wLanguageId ) ;
1352 ! FUNCTION: int MessageBoxIndirectA ( MSGBOXPARAMSA* params ) ;
1353 ! FUNCTION: int MessageBoxIndirectW ( MSGBOXPARAMSW* params ) ;
1356 ALIAS: MessageBox MessageBoxW
1358 ALIAS: MessageBoxEx MessageBoxExW
1360 ! : MessageBoxIndirect
1361 ! \ MessageBoxIndirectW \ MessageBoxIndirectA unicode-exec ;
1363 ! FUNCTION: MessageBoxTimeoutA ! dllexported, not in header
1364 ! FUNCTION: MessageBoxTimeoutW ! dllexported, not in header
1366 ! FUNCTION: ModifyMenuA
1367 ! FUNCTION: ModifyMenuW
1368 ! FUNCTION: MonitorFromPoint
1369 ! FUNCTION: MonitorFromRect
1370 FUNCTION: HMONITOR MonitorFromWindow ( HWND hWnd, DWORD dwFlags ) ;
1371 ! FUNCTION: mouse_event
1374 FUNCTION: BOOL MoveWindow (
1382 ! FUNCTION: MsgWaitForMultipleObjects
1383 ! FUNCTION: MsgWaitForMultipleObjectsEx
1384 ! FUNCTION: NotifyWinEvent
1385 ! FUNCTION: OemKeyScan
1386 ! FUNCTION: OemToCharA
1387 ! FUNCTION: OemToCharBuffA
1388 ! FUNCTION: OemToCharBuffW
1389 ! FUNCTION: OemToCharW
1390 ! FUNCTION: OffsetRect
1391 FUNCTION: BOOL OpenClipboard ( HWND hWndNewOwner ) ;
1392 ! FUNCTION: OpenDesktopA
1393 ! FUNCTION: OpenDesktopW
1394 ! FUNCTION: OpenIcon
1395 ! FUNCTION: OpenInputDesktop
1396 ! FUNCTION: OpenWindowStationA
1397 ! FUNCTION: OpenWindowStationW
1398 ! FUNCTION: PackDDElParam
1399 ! FUNCTION: PaintDesktop
1400 ! FUNCTION: PaintMenuBar
1401 FUNCTION: BOOL PeekMessageA ( LPMSG lpMsg, HWND hWnd, UINT wMsgFilterMin, UINT wMsgFilterMax, UINT wRemoveMsg ) ;
1402 FUNCTION: BOOL PeekMessageW ( LPMSG lpMsg, HWND hWnd, UINT wMsgFilterMin, UINT wMsgFilterMax, UINT wRemoveMsg ) ;
1403 ALIAS: PeekMessage PeekMessageW
1405 ! FUNCTION: PostMessageA
1406 ! FUNCTION: PostMessageW
1407 FUNCTION: void PostQuitMessage ( int nExitCode ) ;
1408 ! FUNCTION: PostThreadMessageA
1409 ! FUNCTION: PostThreadMessageW
1410 ! FUNCTION: PrintWindow
1411 ! FUNCTION: PrivateExtractIconExA
1412 ! FUNCTION: PrivateExtractIconExW
1413 ! FUNCTION: PrivateExtractIconsA
1414 ! FUNCTION: PrivateExtractIconsW
1415 ! FUNCTION: PrivateSetDbgTag
1416 ! FUNCTION: PrivateSetRipFlags
1417 ! FUNCTION: PtInRect
1418 ! FUNCTION: QuerySendMessage
1419 ! FUNCTION: QueryUserCounters
1420 ! FUNCTION: RealChildWindowFromPoint
1421 ! FUNCTION: RealGetWindowClass
1422 ! FUNCTION: RealGetWindowClassA
1423 ! FUNCTION: RealGetWindowClassW
1424 ! FUNCTION: ReasonCodeNeedsBugID
1425 ! FUNCTION: ReasonCodeNeedsComment
1426 ! FUNCTION: RecordShutdownReason
1427 ! FUNCTION: RedrawWindow
1429 FUNCTION: ATOM RegisterClassA ( WNDCLASS* lpWndClass ) ;
1430 FUNCTION: ATOM RegisterClassW ( WNDCLASS* lpWndClass ) ;
1431 FUNCTION: ATOM RegisterClassExA ( WNDCLASSEX* lpwcx ) ;
1432 FUNCTION: ATOM RegisterClassExW ( WNDCLASSEX* lpwcx ) ;
1434 ALIAS: RegisterClass RegisterClassW
1435 ALIAS: RegisterClassEx RegisterClassExW
1437 ! FUNCTION: RegisterClipboardFormatA
1438 ! FUNCTION: RegisterClipboardFormatW
1439 FUNCTION: HANDLE RegisterDeviceNotificationA ( HANDLE hRecipient, LPVOID NotificationFilter, DWORD Flags ) ;
1440 FUNCTION: HANDLE RegisterDeviceNotificationW ( HANDLE hRecipient, LPVOID NotificationFilter, DWORD Flags ) ;
1441 ALIAS: RegisterDeviceNotification RegisterDeviceNotificationW
1442 ! FUNCTION: RegisterHotKey
1443 ! FUNCTION: RegisterLogonProcess
1444 ! FUNCTION: RegisterMessagePumpHook
1445 FUNCTION: BOOL RegisterRawInputDevices ( PCRAWINPUTDEVICE pRawInputDevices, UINT uiNumDevices, UINT cbSize ) ;
1446 ! FUNCTION: RegisterServicesProcess
1447 ! FUNCTION: RegisterShellHookWindow
1448 ! FUNCTION: RegisterSystemThread
1449 ! FUNCTION: RegisterTasklist
1450 ! FUNCTION: RegisterUserApiHook
1451 ! FUNCTION: RegisterWindowMessageA
1452 ! FUNCTION: RegisterWindowMessageW
1453 FUNCTION: BOOL ReleaseCapture ( ) ;
1454 FUNCTION: int ReleaseDC ( HWND hWnd, HDC hDC ) ;
1455 ! FUNCTION: RemoveMenu
1456 ! FUNCTION: RemovePropA
1457 ! FUNCTION: RemovePropW
1458 ! FUNCTION: ReplyMessage
1459 ! FUNCTION: ResolveDesktopForWOW
1460 ! FUNCTION: ReuseDDElParam
1461 ! FUNCTION: ScreenToClient
1462 ! FUNCTION: ScrollChildren
1463 ! FUNCTION: ScrollDC
1464 ! FUNCTION: ScrollWindow
1465 ! FUNCTION: ScrollWindowEx
1466 ! FUNCTION: SendDlgItemMessageA
1467 ! FUNCTION: SendDlgItemMessageW
1468 ! FUNCTION: SendIMEMessageExA
1469 ! FUNCTION: SendIMEMessageExW
1470 ! FUNCTION: UINT SendInput ( UINT nInputs, LPINPUT pInputs, int cbSize ) ;
1471 FUNCTION: LRESULT SendMessageW ( HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam ) ;
1472 ALIAS: SendMessage SendMessageW
1473 ! FUNCTION: SendMessageCallbackA
1474 ! FUNCTION: SendMessageCallbackW
1475 ! FUNCTION: SendMessageTimeoutA
1476 ! FUNCTION: SendMessageTimeoutW
1477 ! FUNCTION: SendNotifyMessageA
1478 ! FUNCTION: SendNotifyMessageW
1479 ! FUNCTION: SetActiveWindow
1480 FUNCTION: HWND SetCapture ( HWND hWnd ) ;
1481 ! FUNCTION: SetCaretBlinkTime
1482 ! FUNCTION: SetCaretPos
1484 FUNCTION: ULONG_PTR SetClassLongW ( HWND hWnd, int nIndex, LONG_PTR dwNewLong ) ;
1485 ALIAS: SetClassLongPtr SetClassLongW
1486 ALIAS: SetClassLong SetClassLongW
1488 ! FUNCTION: SetClassWord
1489 FUNCTION: HANDLE SetClipboardData ( UINT uFormat, HANDLE hMem ) ;
1490 ! FUNCTION: SetClipboardViewer
1491 ! FUNCTION: SetConsoleReserveKeys
1492 ! FUNCTION: SetCursor
1493 ! FUNCTION: SetCursorContents
1494 ! FUNCTION: SetCursorPos
1495 ! FUNCTION: SetDebugErrorLevel
1496 ! FUNCTION: SetDeskWallpaper
1497 ! FUNCTION: SetDlgItemInt
1498 ! FUNCTION: SetDlgItemTextA
1499 ! FUNCTION: SetDlgItemTextW
1500 ! FUNCTION: SetDoubleClickTime
1501 FUNCTION: HWND SetFocus ( HWND hWnd ) ;
1502 FUNCTION: BOOL SetForegroundWindow ( HWND hWnd ) ;
1503 ! FUNCTION: SetInternalWindowPos
1504 ! FUNCTION: SetKeyboardState
1506 FUNCTION: void SetLastErrorEx ( DWORD dwErrCode, DWORD dwType ) ;
1507 : SetLastError ( errcode -- ) 0 SetLastErrorEx ; inline
1508 ! FUNCTION: SetLayeredWindowAttributes
1509 ! FUNCTION: SetLogonNotifyWindow
1511 ! FUNCTION: SetMenuContextHelpId
1512 ! FUNCTION: SetMenuDefaultItem
1513 ! FUNCTION: SetMenuInfo
1514 ! FUNCTION: SetMenuItemBitmaps
1515 ! FUNCTION: SetMenuItemInfoA
1516 ! FUNCTION: SetMenuItemInfoW
1517 ! FUNCTION: SetMessageExtraInfo
1518 ! FUNCTION: SetMessageQueue
1519 ! FUNCTION: SetParent
1520 ! FUNCTION: SetProcessDefaultLayout
1521 ! FUNCTION: SetProcessWindowStation
1522 ! FUNCTION: SetProgmanWindow
1523 ! FUNCTION: SetPropA
1524 ! FUNCTION: SetPropW
1526 ! FUNCTION: SetRectEmpty
1527 ! FUNCTION: SetScrollInfo
1528 ! FUNCTION: SetScrollPos
1529 ! FUNCTION: SetScrollRange
1530 ! FUNCTION: SetShellWindow
1531 ! FUNCTION: SetShellWindowEx
1532 ! FUNCTION: SetSysColors
1533 ! FUNCTION: SetSysColorsTemp
1534 ! FUNCTION: SetSystemCursor
1535 ! FUNCTION: SetSystemMenu
1536 ! FUNCTION: SetSystemTimer
1537 ! FUNCTION: SetTaskmanWindow
1538 ! FUNCTION: SetThreadDesktop
1539 ! FUNCTION: SetTimer
1540 ! FUNCTION: SetUserObjectInformationA
1541 ! FUNCTION: SetUserObjectInformationW
1542 ! FUNCTION: SetUserObjectSecurity
1543 ! FUNCTION: SetWindowContextHelpId
1544 ! FUNCTION: SetWindowLongA
1545 ! FUNCTION: SetWindowLongW
1546 FUNCTION: LONG_PTR SetWindowLongW ( HANDLE hWnd, int index, LONG_PTR dwNewLong ) ;
1547 ALIAS: SetWindowLong SetWindowLongW
1548 ! FUNCTION: SetWindowPlacement
1549 FUNCTION: BOOL SetWindowPos ( HWND hWnd, HWND hWndInsertAfter, int X, int Y, int cx, int cy, UINT uFlags ) ;
1551 : HWND_BOTTOM ( -- alien ) 1 <alien> ;
1552 : HWND_NOTOPMOST ( -- alien ) -2 <alien> ;
1553 CONSTANT: HWND_TOP f
1554 : HWND_TOPMOST ( -- alien ) -1 <alien> ;
1556 ! FUNCTION: SetWindowRgn
1557 ! FUNCTION: SetWindowsHookA
1558 ! FUNCTION: SetWindowsHookExA
1559 ! FUNCTION: SetWindowsHookExW
1560 ! FUNCTION: SetWindowsHookW
1561 ! FUNCTION: SetWindowStationUser
1562 ! FUNCTION: SetWindowTextA
1563 ! FUNCTION: SetWindowTextW
1564 ! FUNCTION: SetWindowWord
1565 ! FUNCTION: SetWinEventHook
1566 ! FUNCTION: ShowCaret
1567 FUNCTION: int ShowCursor ( BOOL show ) ;
1568 ! FUNCTION: ShowOwnedPopups
1569 ! FUNCTION: ShowScrollBar
1570 ! FUNCTION: ShowStartGlass
1572 FUNCTION: BOOL ShowWindow ( HWND hWnd, int nCmdShow ) ;
1574 ! FUNCTION: ShowWindowAsync
1575 ! FUNCTION: SoftModalMessageBox
1576 ! FUNCTION: SubtractRect
1577 ! FUNCTION: SwapMouseButton
1578 ! FUNCTION: SwitchDesktop
1579 ! FUNCTION: SwitchToThisWindow
1580 ! FUNCTION: SystemParametersInfoA
1581 ! FUNCTION: SystemParametersInfoW
1582 ! FUNCTION: TabbedTextOutA
1583 ! FUNCTION: TabbedTextOutW
1584 ! FUNCTION: TileChildWindows
1585 ! FUNCTION: TileWindows
1587 ! FUNCTION: ToAsciiEx
1588 ! FUNCTION: ToUnicode
1589 ! FUNCTION: ToUnicodeEx
1590 FUNCTION: BOOL TrackMouseEvent ( LPTRACKMOUSEEVENT lpEventTrack ) ;
1591 ! FUNCTION: TrackPopupMenu
1592 ! FUNCTION: TrackPopupMenuEx
1593 ! FUNCTION: TranslateAccelerator
1594 ! FUNCTION: TranslateAcceleratorA
1595 FUNCTION: int TranslateAcceleratorW ( HWND hWnd, HACCEL hAccTable, LPMSG lpMsg ) ;
1596 ALIAS: TranslateAccelerator TranslateAcceleratorW
1598 ! FUNCTION: TranslateMDISysAccel
1599 FUNCTION: BOOL TranslateMessage ( MSG* lpMsg ) ;
1601 ! FUNCTION: UnhookWindowsHook
1602 ! FUNCTION: UnhookWindowsHookEx
1603 ! FUNCTION: UnhookWinEvent
1604 ! FUNCTION: UnionRect
1605 ! FUNCTION: UnloadKeyboardLayout
1606 ! FUNCTION: UnlockWindowStation
1607 ! FUNCTION: UnpackDDElParam
1608 FUNCTION: BOOL UnregisterClassW ( LPCWSTR lpClassName, HINSTANCE hInstance ) ;
1609 ALIAS: UnregisterClass UnregisterClassW
1610 FUNCTION: BOOL UnregisterDeviceNotification ( HANDLE hDevNotify ) ;
1611 ! FUNCTION: UnregisterHotKey
1612 ! FUNCTION: UnregisterMessagePumpHook
1613 ! FUNCTION: UnregisterUserApiHook
1614 ! FUNCTION: UpdateLayeredWindow
1615 ! FUNCTION: UpdatePerUserSystemParameters
1617 FUNCTION: BOOL UpdateWindow ( HWND hWnd ) ;
1619 ! FUNCTION: User32InitializeImmEntryTable
1620 ! FUNCTION: UserClientDllInitialize
1621 ! FUNCTION: UserHandleGrantAccess
1622 ! FUNCTION: UserLpkPSMTextOut
1623 ! FUNCTION: UserLpkTabbedTextOut
1624 ! FUNCTION: UserRealizePalette
1625 ! FUNCTION: UserRegisterWowHandlers
1626 ! FUNCTION: ValidateRect
1627 ! FUNCTION: ValidateRgn
1628 ! FUNCTION: VkKeyScanA
1629 ! FUNCTION: VkKeyScanExA
1630 ! FUNCTION: VkKeyScanExW
1631 ! FUNCTION: VkKeyScanW
1632 ! FUNCTION: VRipOutput
1633 ! FUNCTION: VTagOutput
1634 ! FUNCTION: WaitForInputIdle
1635 ! FUNCTION: WaitMessage
1636 ! FUNCTION: WCSToMBEx
1637 ! FUNCTION: Win32PoolAllocationStats
1638 ! FUNCTION: WindowFromDC
1639 ! FUNCTION: WindowFromPoint
1640 ! FUNCTION: WinHelpA
1641 ! FUNCTION: WinHelpW
1642 ! FUNCTION: WINNLSEnableIME
1643 ! FUNCTION: WINNLSGetEnableStatus
1644 ! FUNCTION: WINNLSGetIMEHotkey
1645 ! FUNCTION: wsprintfA
1646 ! FUNCTION: wsprintfW
1647 ! FUNCTION: wvsprintfA
1648 ! FUNCTION: wvsprintfW
1651 f swap "DebugMsg" MB_OK MessageBox drop ;