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 CONSTANT: SPI_GETBEEP 1
612 CONSTANT: SPI_SETBEEP 2
613 CONSTANT: SPI_GETMOUSE 3
614 CONSTANT: SPI_SETMOUSE 4
615 CONSTANT: SPI_GETBORDER 5
616 CONSTANT: SPI_SETBORDER 6
617 CONSTANT: SPI_GETKEYBOARDSPEED 10
618 CONSTANT: SPI_SETKEYBOARDSPEED 11
619 CONSTANT: SPI_LANGDRIVER 12
620 CONSTANT: SPI_ICONHORIZONTALSPACING 13
621 CONSTANT: SPI_GETSCREENSAVETIMEOUT 14
622 CONSTANT: SPI_SETSCREENSAVETIMEOUT 15
623 CONSTANT: SPI_GETSCREENSAVEACTIVE 16
624 CONSTANT: SPI_SETSCREENSAVEACTIVE 17
625 CONSTANT: SPI_GETGRIDGRANULARITY 18
626 CONSTANT: SPI_SETGRIDGRANULARITY 19
627 CONSTANT: SPI_SETDESKWALLPAPER 20
628 CONSTANT: SPI_SETDESKPATTERN 21
629 CONSTANT: SPI_GETKEYBOARDDELAY 22
630 CONSTANT: SPI_SETKEYBOARDDELAY 23
631 CONSTANT: SPI_ICONVERTICALSPACING 24
632 CONSTANT: SPI_GETICONTITLEWRAP 25
633 CONSTANT: SPI_SETICONTITLEWRAP 26
634 CONSTANT: SPI_GETMENUDROPALIGNMENT 27
635 CONSTANT: SPI_SETMENUDROPALIGNMENT 28
636 CONSTANT: SPI_SETDOUBLECLKWIDTH 29
637 CONSTANT: SPI_SETDOUBLECLKHEIGHT 30
638 CONSTANT: SPI_GETICONTITLELOGFONT 31
639 CONSTANT: SPI_SETDOUBLECLICKTIME 32
640 CONSTANT: SPI_SETMOUSEBUTTONSWAP 33
641 CONSTANT: SPI_SETICONTITLELOGFONT 34
642 CONSTANT: SPI_GETFASTTASKSWITCH 35
643 CONSTANT: SPI_SETFASTTASKSWITCH 36
644 CONSTANT: SPI_SETDRAGFULLWINDOWS 37
645 CONSTANT: SPI_GETDRAGFULLWINDOWS 38
647 CONSTANT: SPI_GETFILTERKEYS 50
648 CONSTANT: SPI_SETFILTERKEYS 51
649 CONSTANT: SPI_GETTOGGLEKEYS 52
650 CONSTANT: SPI_SETTOGGLEKEYS 53
651 CONSTANT: SPI_GETMOUSEKEYS 54
652 CONSTANT: SPI_SETMOUSEKEYS 55
653 CONSTANT: SPI_GETSHOWSOUNDS 56
654 CONSTANT: SPI_SETSHOWSOUNDS 57
655 CONSTANT: SPI_GETSTICKYKEYS 58
656 CONSTANT: SPI_SETSTICKYKEYS 59
657 CONSTANT: SPI_GETACCESSTIMEOUT 60
658 CONSTANT: SPI_SETACCESSTIMEOUT 61
660 CONSTANT: SPI_GETSOUNDSENTRY 64
661 CONSTANT: SPI_SETSOUNDSENTRY 65
664 CONSTANT: SPI_GETNONCLIENTMETRICS 41
665 CONSTANT: SPI_SETNONCLIENTMETRICS 42
666 CONSTANT: SPI_GETMINIMIZEDMETRICS 43
667 CONSTANT: SPI_SETMINIMIZEDMETRICS 44
668 CONSTANT: SPI_GETICONMETRICS 45
669 CONSTANT: SPI_SETICONMETRICS 46
670 CONSTANT: SPI_SETWORKAREA 47
671 CONSTANT: SPI_GETWORKAREA 48
672 CONSTANT: SPI_SETPENWINDOWS 49
674 CONSTANT: SPI_GETSERIALKEYS 62
675 CONSTANT: SPI_SETSERIALKEYS 63
676 CONSTANT: SPI_GETHIGHCONTRAST 66
677 CONSTANT: SPI_SETHIGHCONTRAST 67
678 CONSTANT: SPI_GETKEYBOARDPREF 68
679 CONSTANT: SPI_SETKEYBOARDPREF 69
680 CONSTANT: SPI_GETSCREENREADER 70
681 CONSTANT: SPI_SETSCREENREADER 71
682 CONSTANT: SPI_GETANIMATION 72
683 CONSTANT: SPI_SETANIMATION 73
684 CONSTANT: SPI_GETFONTSMOOTHING 74
685 CONSTANT: SPI_SETFONTSMOOTHING 75
686 CONSTANT: SPI_SETDRAGWIDTH 76
687 CONSTANT: SPI_SETDRAGHEIGHT 77
688 CONSTANT: SPI_SETHANDHELD 78
689 CONSTANT: SPI_GETLOWPOWERTIMEOUT 79
690 CONSTANT: SPI_GETPOWEROFFTIMEOUT 80
691 CONSTANT: SPI_SETLOWPOWERTIMEOUT 81
692 CONSTANT: SPI_SETPOWEROFFTIMEOUT 82
693 CONSTANT: SPI_GETLOWPOWERACTIVE 83
694 CONSTANT: SPI_GETPOWEROFFACTIVE 84
695 CONSTANT: SPI_SETLOWPOWERACTIVE 85
696 CONSTANT: SPI_SETPOWEROFFACTIVE 86
697 CONSTANT: SPI_SETCURSORS 87
698 CONSTANT: SPI_SETICONS 88
699 CONSTANT: SPI_GETDEFAULTINPUTLANG 89
700 CONSTANT: SPI_SETDEFAULTINPUTLANG 90
701 CONSTANT: SPI_SETLANGTOGGLE 91
702 CONSTANT: SPI_GETWINDOWSEXTENSION 92
703 CONSTANT: SPI_SETMOUSETRAILS 93
704 CONSTANT: SPI_GETMOUSETRAILS 94
705 CONSTANT: SPI_SETSCREENSAVERRUNNING 97
706 ALIAS: SPI_SCREENSAVERRUNNING SPI_SETSCREENSAVERRUNNING
708 ! WIN32_WINNT >= 0x0400 || WIN32_WINDOWS > 0x0400
709 CONSTANT: SPI_GETMOUSEHOVERWIDTH 98
710 CONSTANT: SPI_SETMOUSEHOVERWIDTH 99
711 CONSTANT: SPI_GETMOUSEHOVERHEIGHT 100
712 CONSTANT: SPI_SETMOUSEHOVERHEIGHT 101
713 CONSTANT: SPI_GETMOUSEHOVERTIME 102
714 CONSTANT: SPI_SETMOUSEHOVERTIME 103
715 CONSTANT: SPI_GETWHEELSCROLLLINES 104
716 CONSTANT: SPI_SETWHEELSCROLLLINES 105
718 CONSTANT: SPI_GETSHOWIMEUI 110
719 CONSTANT: SPI_SETSHOWIMEUI 111
722 CONSTANT: SPI_GETMOUSESPEED 112
723 CONSTANT: SPI_SETMOUSESPEED 113
724 CONSTANT: SPI_GETSCREENSAVERRUNNING 114
726 CONSTANT: SPI_GETACTIVEWINDOWTRACKING HEX: 1000
727 CONSTANT: SPI_SETACTIVEWINDOWTRACKING HEX: 1001
728 CONSTANT: SPI_GETMENUANIMATION HEX: 1002
729 CONSTANT: SPI_SETMENUANIMATION HEX: 1003
730 CONSTANT: SPI_GETCOMBOBOXANIMATION HEX: 1004
731 CONSTANT: SPI_SETCOMBOBOXANIMATION HEX: 1005
732 CONSTANT: SPI_GETLISTBOXSMOOTHSCROLLING HEX: 1006
733 CONSTANT: SPI_SETLISTBOXSMOOTHSCROLLING HEX: 1007
734 CONSTANT: SPI_GETGRADIENTCAPTIONS HEX: 1008
735 CONSTANT: SPI_SETGRADIENTCAPTIONS HEX: 1009
736 CONSTANT: SPI_GETMENUUNDERLINES HEX: 100A
737 CONSTANT: SPI_SETMENUUNDERLINES HEX: 100B
738 CONSTANT: SPI_GETACTIVEWNDTRKZORDER HEX: 100C
739 CONSTANT: SPI_SETACTIVEWNDTRKZORDER HEX: 100D
740 CONSTANT: SPI_GETHOTTRACKING HEX: 100E
741 CONSTANT: SPI_SETHOTTRACKING HEX: 100F
742 CONSTANT: SPI_GETFOREGROUNDLOCKTIMEOUT HEX: 2000
743 CONSTANT: SPI_SETFOREGROUNDLOCKTIMEOUT HEX: 2001
744 CONSTANT: SPI_GETACTIVEWNDTRKTIMEOUT HEX: 2002
745 CONSTANT: SPI_SETACTIVEWNDTRKTIMEOUT HEX: 2003
746 CONSTANT: SPI_GETFOREGROUNDFLASHCOUNT HEX: 2004
747 CONSTANT: SPI_SETFOREGROUNDFLASHCOUNT HEX: 2005
749 ! SystemParamInfo Flags
750 CONSTANT: SPIF_UPDATEINIFILE 1
751 CONSTANT: SPIF_SENDWININICHANGE 2
752 ALIAS: SPIF_SENDCHANGE SPIF_SENDWININICHANGE
755 TYPEDEF: HANDLE HRAWINPUT
756 : GET_RAWINPUT_CODE_WPARAM ( wParam -- n ) HEX: ff bitand ; inline
758 CONSTANT: RIM_INPUT 0
759 CONSTANT: RIM_INPUTSINK 1
761 CONSTANT: RIM_TYPEMOUSE 0
762 CONSTANT: RIM_TYPEKEYBOARD 1
763 CONSTANT: RIM_TYPEHID 2
765 STRUCT: RAWINPUTHEADER
770 TYPEDEF: RAWINPUTHEADER* PRAWINPUTHEADER
771 TYPEDEF: RAWINPUTHEADER* LPRAWINPUTHEADER
772 STRUCT: RAWMOUSE_BUTTONS_USBUTTONS
773 { usButtonFlags USHORT }
774 { usButtonData USHORT } ;
776 UNION-STRUCT: RAWMOUSE_BUTTONS
778 { usButtons RAWMOUSE_BUTTONS_USBUTTONS } ;
781 { uButtons RAWMOUSE_BUTTONS }
782 { ulRawButtons ULONG }
785 { ulExtraInformation ULONG } ;
786 TYPEDEF: RAWMOUSE* PRAWMOUSE
787 TYPEDEF: RAWMOUSE* LPRAWMOUSE
789 CONSTANT: RI_MOUSE_LEFT_BUTTON_DOWN HEX: 0001
790 CONSTANT: RI_MOUSE_LEFT_BUTTON_UP HEX: 0002
791 CONSTANT: RI_MOUSE_RIGHT_BUTTON_DOWN HEX: 0004
792 CONSTANT: RI_MOUSE_RIGHT_BUTTON_UP HEX: 0008
793 CONSTANT: RI_MOUSE_MIDDLE_BUTTON_DOWN HEX: 0010
794 CONSTANT: RI_MOUSE_MIDDLE_BUTTON_UP HEX: 0020
796 : RI_MOUSE_BUTTON_1_DOWN ( -- n ) RI_MOUSE_LEFT_BUTTON_DOWN ; inline
797 : RI_MOUSE_BUTTON_1_UP ( -- n ) RI_MOUSE_LEFT_BUTTON_UP ; inline
798 : RI_MOUSE_BUTTON_2_DOWN ( -- n ) RI_MOUSE_RIGHT_BUTTON_DOWN ; inline
799 : RI_MOUSE_BUTTON_2_UP ( -- n ) RI_MOUSE_RIGHT_BUTTON_UP ; inline
800 : RI_MOUSE_BUTTON_3_DOWN ( -- n ) RI_MOUSE_MIDDLE_BUTTON_DOWN ; inline
801 : RI_MOUSE_BUTTON_3_UP ( -- n ) RI_MOUSE_MIDDLE_BUTTON_UP ; inline
803 CONSTANT: RI_MOUSE_BUTTON_4_DOWN HEX: 0040
804 CONSTANT: RI_MOUSE_BUTTON_4_UP HEX: 0080
805 CONSTANT: RI_MOUSE_BUTTON_5_DOWN HEX: 0100
806 CONSTANT: RI_MOUSE_BUTTON_5_UP HEX: 0200
807 CONSTANT: RI_MOUSE_WHEEL HEX: 0400
809 CONSTANT: MOUSE_MOVE_RELATIVE 0
810 CONSTANT: MOUSE_MOVE_ABSOLUTE 1
811 CONSTANT: MOUSE_VIRTUAL_DESKTOP HEX: 02
812 CONSTANT: MOUSE_ATTRIBUTES_CHANGED HEX: 04
813 CONSTANT: MOUSE_MOVE_NOCOALESCE HEX: 08
821 { ExtraInformation ULONG } ;
822 TYPEDEF: RAWKEYBOARD* PRAWKEYBOARD
823 TYPEDEF: RAWKEYBOARD* LPRAWKEYBOARD
825 CONSTANT: KEYBOARD_OVERRUN_MAKE_CODE HEX: FF
827 CONSTANT: RI_KEY_MAKE 0
828 CONSTANT: RI_KEY_BREAK 1
829 CONSTANT: RI_KEY_E0 2
830 CONSTANT: RI_KEY_E1 4
831 CONSTANT: RI_KEY_TERMSRV_SET_LED 8
832 CONSTANT: RI_KEY_TERMSRV_SHADOW HEX: 10
837 { bRawData BYTE[1] } ;
838 TYPEDEF: RAWHID* PRAWHID
839 TYPEDEF: RAWHID* LPRAWHID
841 UNION-STRUCT: RAWINPUT_UNION
843 { keyboard RAWKEYBOARD }
846 { header RAWINPUTHEADER }
847 { data RAWINPUT_UNION } ;
848 TYPEDEF: RAWINPUT* PRAWINPUT
849 TYPEDEF: RAWINPUT* LPRAWINPUT
851 : RAWINPUT_ALIGN ( x -- y )
852 cpu x86.32 = [ 4 ] [ 8 ] if align ; inline
853 : NEXTRAWINPUTBLOCK ( struct -- next-struct )
854 dup header>> dwSize>> swap <displaced-alien> RAWINPUT_ALIGN RAWINPUT memory>struct ; inline
856 CONSTANT: RID_INPUT HEX: 10000003
857 CONSTANT: RID_HEADER HEX: 10000005
858 CONSTANT: RIDI_PREPARSEDDATA HEX: 20000005
859 CONSTANT: RIDI_DEVICENAME HEX: 20000007
860 CONSTANT: RIDI_DEVICEINFO HEX: 2000000b
862 STRUCT: RID_DEVICE_INFO_MOUSE
864 { dwNumberOfButtons DWORD }
865 { dwSampleRate DWORD }
866 { fHasHorizontalWheel BOOL } ;
867 TYPEDEF: RID_DEVICE_INFO_MOUSE* PRID_DEVICE_INFO_MOUSE
869 STRUCT: RID_DEVICE_INFO_KEYBOARD
872 { dwKeyboardMode DWORD }
873 { dwNumberOfFunctionKeys DWORD }
874 { dwNumberOfIndicators DWORD }
875 { dwNumberOfKeysTotal DWORD } ;
876 TYPEDEF: RID_DEVICE_INFO_KEYBOARD* PRID_DEVICE_INFO_KEYBOARD
878 STRUCT: RID_DEVICE_INFO_HID
880 { dwProductId DWORD }
881 { dwVersionNumber DWORD }
882 { usUsagePage USHORT }
884 TYPEDEF: RID_DEVICE_INFO_HID* PRID_DEVICE_INFO_HID
886 UNION-STRUCT: RID_DEVICE_INFO_UNION
887 { mouse RID_DEVICE_INFO_MOUSE }
888 { keyboard RID_DEVICE_INFO_KEYBOARD }
889 { hid RID_DEVICE_INFO_HID } ;
890 STRUCT: RID_DEVICE_INFO
893 { data RID_DEVICE_INFO_UNION } ;
894 TYPEDEF: RID_DEVICE_INFO* PRID_DEVICE_INFO
895 TYPEDEF: RID_DEVICE_INFO* LPRID_DEVICE_INFO
897 STRUCT: RAWINPUTDEVICE
898 { usUsagePage USHORT }
901 { hwndTarget HWND } ;
902 TYPEDEF: RAWINPUTDEVICE* PRAWINPUTDEVICE
903 TYPEDEF: RAWINPUTDEVICE* LPRAWINPUTDEVICE
904 TYPEDEF: RAWINPUTDEVICE* PCRAWINPUTDEVICE
906 CONSTANT: RIDEV_REMOVE HEX: 00000001
907 CONSTANT: RIDEV_EXCLUDE HEX: 00000010
908 CONSTANT: RIDEV_PAGEONLY HEX: 00000020
909 CONSTANT: RIDEV_NOLEGACY HEX: 00000030
910 CONSTANT: RIDEV_INPUTSINK HEX: 00000100
911 CONSTANT: RIDEV_CAPTUREMOUSE HEX: 00000200
912 CONSTANT: RIDEV_NOHOTKEYS HEX: 00000200
913 CONSTANT: RIDEV_APPKEYS HEX: 00000400
914 CONSTANT: RIDEV_EXINPUTSINK HEX: 00001000
915 CONSTANT: RIDEV_DEVNOTIFY HEX: 00002000
916 CONSTANT: RIDEV_EXMODEMASK HEX: 000000F0
918 : RIDEV_EXMODE ( mode -- x ) RIDEV_EXMODEMASK bitand ; inline
920 CONSTANT: GIDC_ARRIVAL 1
921 CONSTANT: GIDC_REMOVAL 2
923 : GET_DEVICE_CHANGE_WPARAM ( wParam -- x ) HEX: ffff bitand ; inline
925 STRUCT: RAWINPUTDEVICELIST
928 TYPEDEF: RAWINPUTDEVICELIST* PRAWINPUTDEVICELIST
932 FUNCTION: HKL ActivateKeyboardLayout ( HKL hkl, UINT Flags ) ;
933 FUNCTION: BOOL AdjustWindowRect ( LPRECT lpRect, DWORD dwStyle, BOOL bMenu ) ;
934 FUNCTION: BOOL AdjustWindowRectEx ( LPRECT lpRect, DWORD dwStyle, BOOL bMenu, DWORD dwExStyle ) ;
935 ! FUNCTION: AlignRects
936 ! FUNCTION: AllowForegroundActivation
937 ! FUNCTION: AllowSetForegroundWindow
938 ! FUNCTION: AnimateWindow
940 FUNCTION: BOOL AnyPopup ( ) ;
942 ! FUNCTION: AppendMenuA
943 ! FUNCTION: AppendMenuW
944 ! FUNCTION: ArrangeIconicWindows
945 ! FUNCTION: AttachThreadInput
946 ! FUNCTION: BeginDeferWindowPos
948 FUNCTION: HDC BeginPaint ( HWND hwnd, LPPAINTSTRUCT lpPaint ) ;
950 ! FUNCTION: BlockInput
951 ! FUNCTION: BringWindowToTop
952 ! FUNCTION: BroadcastSystemMessage
953 ! FUNCTION: BroadcastSystemMessageA
954 ! FUNCTION: BroadcastSystemMessageExA
955 ! FUNCTION: BroadcastSystemMessageExW
956 ! FUNCTION: BroadcastSystemMessageW
957 ! FUNCTION: BuildReasonArray
958 ! FUNCTION: CalcMenuBar
959 ! FUNCTION: CallMsgFilter
960 ! FUNCTION: CallMsgFilterA
961 ! FUNCTION: CallMsgFilterW
962 ! FUNCTION: CallNextHookEx
963 ! FUNCTION: CallWindowProcA
964 ! FUNCTION: CallWindowProcW
965 ! FUNCTION: CascadeChildWindows
966 ! FUNCTION: CascadeWindows
967 ! FUNCTION: ChangeClipboardChain
968 ! FUNCTION: ChangeDisplaySettingsA
969 ! FUNCTION: ChangeDisplaySettingsExA
970 ! FUNCTION: ChangeDisplaySettingsExW
971 ! FUNCTION: ChangeDisplaySettingsW
972 ! FUNCTION: ChangeMenuA
973 ! FUNCTION: ChangeMenuW
974 ! FUNCTION: CharLowerA
975 ! FUNCTION: CharLowerBuffA
976 ! FUNCTION: CharLowerBuffW
977 ! FUNCTION: CharLowerW
978 ! FUNCTION: CharNextA
979 ! FUNCTION: CharNextExA
980 ! FUNCTION: CharNextW
981 ! FUNCTION: CharPrevA
982 ! FUNCTION: CharPrevExA
983 ! FUNCTION: CharPrevW
984 ! FUNCTION: CharToOemA
985 ! FUNCTION: CharToOemBuffA
986 ! FUNCTION: CharToOemBuffW
987 ! FUNCTION: CharToOemW
988 ! FUNCTION: CharUpperA
989 ! FUNCTION: CharUpperBuffA
990 ! FUNCTION: CharUpperBuffW
991 ! FUNCTION: CharUpperW
992 ! FUNCTION: CheckDlgButton
993 ! FUNCTION: CheckMenuItem
994 ! FUNCTION: CheckMenuRadioItem
995 ! FUNCTION: CheckRadioButton
996 FUNCTION: HWND ChildWindowFromPoint ( HWND hWndParent, POINT point ) ;
997 ! FUNCTION: ChildWindowFromPointEx
998 ! FUNCTION: ClientThreadSetup
999 FUNCTION: BOOL ClientToScreen ( HWND hWnd, POINT* point ) ;
1000 ! FUNCTION: CliImmSetHotKey
1001 FUNCTION: int ClipCursor ( RECT* clipRect ) ;
1002 FUNCTION: BOOL CloseClipboard ( ) ;
1003 ! FUNCTION: CloseDesktop
1004 ! FUNCTION: CloseWindow
1005 ! FUNCTION: CloseWindowStation
1006 ! FUNCTION: CopyAcceleratorTableA
1007 FUNCTION: int CopyAcceleratorTableW ( HACCEL hAccelSrc, LPACCEL lpAccelDst, int cAccelEntries ) ;
1008 ALIAS: CopyAcceleratorTable CopyAcceleratorTableW
1009 ! FUNCTION: CopyIcon
1010 ! FUNCTION: CopyImage
1011 ! FUNCTION: CopyRect
1012 ! FUNCTION: CountClipboardFormats
1013 ! FUNCTION: CreateAcceleratorTableA
1014 FUNCTION: HACCEL CreateAcceleratorTableW ( LPACCEL lpaccl, int cEntries ) ;
1015 ALIAS: CreateAcceleratorTable CreateAcceleratorTableW
1016 ! FUNCTION: CreateCaret
1017 ! FUNCTION: CreateCursor
1018 ! FUNCTION: CreateDesktopA
1019 ! FUNCTION: CreateDesktopW
1020 ! FUNCTION: CreateDialogIndirectParamA
1021 ! FUNCTION: CreateDialogIndirectParamAorW
1022 ! FUNCTION: CreateDialogIndirectParamW
1023 ! FUNCTION: CreateDialogParamA
1024 ! FUNCTION: CreateDialogParamW
1025 ! FUNCTION: CreateIcon
1026 ! FUNCTION: CreateIconFromResource
1027 ! FUNCTION: CreateIconFromResourceEx
1028 ! FUNCTION: CreateIconIndirect
1029 ! FUNCTION: CreateMDIWindowA
1030 ! FUNCTION: CreateMDIWindowW
1031 ! FUNCTION: CreateMenu
1032 ! FUNCTION: CreatePopupMenu
1033 ! FUNCTION: CreateSystemThreads
1035 FUNCTION: HWND CreateWindowExW (
1037 LPCTSTR lpClassName,
1038 LPCTSTR lpWindowName,
1046 HINSTANCE hInstance,
1049 ALIAS: CreateWindowEx CreateWindowExW
1051 : CreateWindow ( a b c d e f g h i j k -- hwnd ) 0 12 -nrot CreateWindowEx ; inline
1053 ! FUNCTION: CreateWindowStationA
1054 ! FUNCTION: CreateWindowStationW
1055 ! FUNCTION: CsrBroadcastSystemMessageExW
1056 ! FUNCTION: CtxInitUser32
1057 ! FUNCTION: DdeAbandonTransaction
1058 ! FUNCTION: DdeAccessData
1059 ! FUNCTION: DdeAddData
1060 ! FUNCTION: DdeClientTransaction
1061 ! FUNCTION: DdeCmpStringHandles
1062 ! FUNCTION: DdeConnect
1063 ! FUNCTION: DdeConnectList
1064 ! FUNCTION: DdeCreateDataHandle
1065 ! FUNCTION: DdeCreateStringHandleA
1066 ! FUNCTION: DdeCreateStringHandleW
1067 ! FUNCTION: DdeDisconnect
1068 ! FUNCTION: DdeDisconnectList
1069 ! FUNCTION: DdeEnableCallback
1070 ! FUNCTION: DdeFreeDataHandle
1071 ! FUNCTION: DdeFreeStringHandle
1072 ! FUNCTION: DdeGetData
1073 ! FUNCTION: DdeGetLastError
1074 ! FUNCTION: DdeGetQualityOfService
1075 ! FUNCTION: DdeImpersonateClient
1076 ! FUNCTION: DdeInitializeA
1077 ! FUNCTION: DdeInitializeW
1078 ! FUNCTION: DdeKeepStringHandle
1079 ! FUNCTION: DdeNameService
1080 ! FUNCTION: DdePostAdvise
1081 ! FUNCTION: DdeQueryConvInfo
1082 ! FUNCTION: DdeQueryNextServer
1083 ! FUNCTION: DdeQueryStringA
1084 ! FUNCTION: DdeQueryStringW
1085 ! FUNCTION: DdeReconnect
1086 ! FUNCTION: DdeSetQualityOfService
1087 ! FUNCTION: DdeSetUserHandle
1088 ! FUNCTION: DdeUnaccessData
1089 ! FUNCTION: DdeUninitialize
1090 ! FUNCTION: DefDlgProcA
1091 ! FUNCTION: DefDlgProcW
1092 ! FUNCTION: DeferWindowPos
1093 ! FUNCTION: DefFrameProcA
1094 ! FUNCTION: DefFrameProcW
1095 ! FUNCTION: DefMDIChildProcA
1096 ! FUNCTION: DefMDIChildProcW
1097 FUNCTION: LRESULT DefRawInputProc ( PRAWINPUT* paRawInput, INT nInput, UINT cbSizeHeader ) ;
1098 FUNCTION: LRESULT DefWindowProcW ( HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam ) ;
1099 ALIAS: DefWindowProc DefWindowProcW
1100 ! FUNCTION: DeleteMenu
1101 ! FUNCTION: DeregisterShellHookWindow
1102 FUNCTION: BOOL DestroyAcceleratorTable ( HACCEL hAccel ) ;
1103 ! FUNCTION: DestroyCaret
1104 ! FUNCTION: DestroyCursor
1105 ! FUNCTION: DestroyIcon
1106 ! FUNCTION: DestroyMenu
1107 ! FUNCTION: DestroyReasons
1108 FUNCTION: BOOL DestroyWindow ( HWND hWnd ) ;
1109 ! FUNCTION: DeviceEventWorker
1110 ! FUNCTION: DialogBoxIndirectParamA
1111 ! FUNCTION: DialogBoxIndirectParamAorW
1112 ! FUNCTION: DialogBoxIndirectParamW
1113 ! FUNCTION: DialogBoxParamA
1114 ! FUNCTION: DialogBoxParamW
1115 ! FUNCTION: DisableProcessWindowsGhosting
1117 FUNCTION: LONG DispatchMessageW ( MSG* lpMsg ) ;
1118 ALIAS: DispatchMessage DispatchMessageW
1120 ! FUNCTION: DisplayExitWindowsWarnings
1121 ! FUNCTION: DlgDirListA
1122 ! FUNCTION: DlgDirListComboBoxA
1123 ! FUNCTION: DlgDirListComboBoxW
1124 ! FUNCTION: DlgDirListW
1125 ! FUNCTION: DlgDirSelectComboBoxExA
1126 ! FUNCTION: DlgDirSelectComboBoxExW
1127 ! FUNCTION: DlgDirSelectExA
1128 ! FUNCTION: DlgDirSelectExW
1129 ! FUNCTION: DragDetect
1130 ! FUNCTION: DragObject
1133 FUNCTION: BOOL DrawAnimatedRects ( HWND hWnd, int idAni, RECT* lprcFrom, RECT* lprcTo ) ;
1134 ! FUNCTION: BOOL DrawCaption ( HWND hWnd, HDC hdc, LPRECT lprc, UINT uFlags ) ;
1136 ! FUNCTION: DrawEdge
1137 ! FUNCTION: DrawFocusRect
1138 ! FUNCTION: DrawFrame
1139 ! FUNCTION: DrawFrameControl
1141 FUNCTION: BOOL DrawIcon ( HDC hDC, int X, int Y, HICON hIcon ) ;
1143 ! FUNCTION: DrawIconEx
1144 ! FUNCTION: DrawMenuBar
1145 ! FUNCTION: DrawMenuBarTemp
1146 ! FUNCTION: DrawStateA
1147 ! FUNCTION: DrawStateW
1148 ! FUNCTION: DrawTextA
1149 ! FUNCTION: DrawTextExA
1150 ! FUNCTION: DrawTextExW
1151 ! FUNCTION: DrawTextW
1152 ! FUNCTION: EditWndProc
1153 FUNCTION: BOOL EmptyClipboard ( ) ;
1154 FUNCTION: BOOL EnableMenuItem ( HMENU hMenu, UINT uIDEnableItem, UINT uEnable ) ;
1155 ! FUNCTION: EnableScrollBar
1156 ! FUNCTION: EnableWindow
1157 ! FUNCTION: EndDeferWindowPos
1158 ! FUNCTION: EndDialog
1161 FUNCTION: BOOL EndPaint ( HWND hWnd, PAINTSTRUCT* lpPaint) ;
1164 ! FUNCTION: EnterReaderModeHelper
1165 ! FUNCTION: EnumChildWindows
1166 FUNCTION: UINT EnumClipboardFormats ( UINT format ) ;
1167 ! FUNCTION: EnumDesktopsA
1168 ! FUNCTION: EnumDesktopsW
1169 ! FUNCTION: EnumDesktopWindows
1170 ! FUNCTION: EnumDisplayDevicesA
1171 ! FUNCTION: EnumDisplayDevicesW
1172 ! FUNCTION: EnumDisplayMonitors
1173 ! FUNCTION: EnumDisplaySettingsA
1174 ! FUNCTION: EnumDisplaySettingsExA
1175 ! FUNCTION: EnumDisplaySettingsExW
1176 ! FUNCTION: EnumDisplaySettingsW
1177 ! FUNCTION: EnumPropsA
1178 ! FUNCTION: EnumPropsExA
1179 ! FUNCTION: EnumPropsExW
1180 ! FUNCTION: EnumPropsW
1181 ! FUNCTION: EnumThreadWindows
1182 ! FUNCTION: EnumWindows
1183 ! FUNCTION: EnumWindowStationsA
1184 ! FUNCTION: EnumWindowStationsW
1185 ! FUNCTION: EqualRect
1186 ! FUNCTION: ExcludeUpdateRgn
1187 ! FUNCTION: ExitWindowsEx
1188 FUNCTION: int FillRect ( HDC hDC, RECT* lprc, HBRUSH hbr ) ;
1189 FUNCTION: HWND FindWindowA ( char* lpClassName, char* lpWindowName ) ;
1190 FUNCTION: HWND FindWindowExA ( HWND hwndParent, HWND childAfter, char* lpClassName, char* lpWindowName ) ;
1191 ! FUNCTION: FindWindowExW
1192 ! FUNCTION: FindWindowW
1193 ! FUNCTION: FlashWindow
1194 ! FUNCTION: FlashWindowEx
1195 ! FUNCTION: FrameRect
1196 ! FUNCTION: FreeDDElParam
1197 ! FUNCTION: GetActiveWindow
1198 ! FUNCTION: GetAltTabInfo
1199 ! FUNCTION: GetAltTabInfoA
1200 ! FUNCTION: GetAltTabInfoW
1201 ! FUNCTION: GetAncestor
1202 ! FUNCTION: GetAppCompatFlags
1203 ! FUNCTION: GetAppCompatFlags2
1204 ! FUNCTION: GetAsyncKeyState
1205 FUNCTION: HWND GetCapture ( ) ;
1206 ! FUNCTION: GetCaretBlinkTime
1207 ! FUNCTION: GetCaretPos
1208 FUNCTION: BOOL GetClassInfoW ( HINSTANCE hInst, LPCWSTR lpszClass, LPWNDCLASS lpwcx ) ;
1209 ALIAS: GetClassInfo GetClassInfoW
1211 FUNCTION: BOOL GetClassInfoExW ( HINSTANCE hInst, LPCWSTR lpszClass, LPWNDCLASSEX lpwcx ) ;
1212 ALIAS: GetClassInfoEx GetClassInfoExW
1214 FUNCTION: ULONG_PTR GetClassLongW ( HWND hWnd, int nIndex ) ;
1215 ALIAS: GetClassLong GetClassLongW
1216 ALIAS: GetClassLongPtr GetClassLongW
1219 ! FUNCTION: GetClassNameA
1220 ! FUNCTION: GetClassNameW
1221 ! FUNCTION: GetClassWord
1222 FUNCTION: BOOL GetClientRect ( HWND hWnd, LPRECT lpRect ) ;
1224 FUNCTION: HANDLE GetClipboardData ( UINT uFormat ) ;
1226 ! FUNCTION: GetClipboardFormatNameA
1227 ! FUNCTION: GetClipboardFormatNameW
1228 FUNCTION: HWND GetClipboardOwner ( ) ;
1229 FUNCTION: DWORD GetClipboardSequenceNumber ( ) ;
1230 ! FUNCTION: GetClipboardViewer
1231 ! FUNCTION: GetClipCursor
1232 ! FUNCTION: GetComboBoxInfo
1233 ! FUNCTION: GetCursor
1234 ! FUNCTION: GetCursorFrameInfo
1235 ! FUNCTION: GetCursorInfo
1236 ! FUNCTION: GetCursorPos
1237 FUNCTION: HDC GetDC ( HWND hWnd ) ;
1238 FUNCTION: HDC GetDCEx ( HWND hWnd, HRGN hrgnClip, DWORD flags ) ;
1239 ! FUNCTION: GetDesktopWindow
1240 ! FUNCTION: GetDialogBaseUnits
1241 ! FUNCTION: GetDlgCtrlID
1242 ! FUNCTION: GetDlgItem
1243 ! FUNCTION: GetDlgItemInt
1244 ! FUNCTION: GetDlgItemTextA
1245 ! FUNCTION: GetDlgItemTextW
1246 FUNCTION: uint GetDoubleClickTime ( ) ;
1247 FUNCTION: HWND GetFocus ( ) ;
1248 ! FUNCTION: GetForegroundWindow
1249 ! FUNCTION: GetGuiResources
1250 ! FUNCTION: GetGUIThreadInfo
1251 ! FUNCTION: GetIconInfo
1252 ! FUNCTION: GetInputDesktop
1253 ! FUNCTION: GetInputState
1254 ! FUNCTION: GetInternalWindowPos
1255 ! FUNCTION: GetKBCodePage
1256 ! FUNCTION: GetKeyboardLayout
1257 ! FUNCTION: GetKeyboardLayoutList
1258 ! FUNCTION: GetKeyboardLayoutNameA
1259 ! FUNCTION: GetKeyboardLayoutNameW
1260 ! FUNCTION: GetKeyboardState
1261 ! FUNCTION: GetKeyboardType
1262 ! FUNCTION: GetKeyNameTextA
1263 ! FUNCTION: GetKeyNameTextW
1264 FUNCTION: SHORT GetKeyState ( int nVirtKey ) ;
1265 ! FUNCTION: GetLastActivePopup
1266 ! FUNCTION: GetLastInputInfo
1267 ! FUNCTION: GetLayeredWindowAttributes
1268 ! FUNCTION: GetListBoxInfo
1270 ! FUNCTION: GetMenuBarInfo
1271 ! FUNCTION: GetMenuCheckMarkDimensions
1272 ! FUNCTION: GetMenuContextHelpId
1273 ! FUNCTION: GetMenuDefaultItem
1274 ! FUNCTION: GetMenuInfo
1275 ! FUNCTION: GetMenuItemCount
1276 ! FUNCTION: GetMenuItemID
1277 ! FUNCTION: GetMenuItemInfoA
1278 ! FUNCTION: GetMenuItemInfoW
1279 ! FUNCTION: GetMenuItemRect
1280 ! FUNCTION: GetMenuState
1281 ! FUNCTION: GetMenuStringA
1282 ! FUNCTION: GetMenuStringW
1284 FUNCTION: BOOL GetMessageW ( LPMSG lpMsg, HWND hWnd, UINT wMsgFilterMin, UINT wMsgFilterMax ) ;
1285 ALIAS: GetMessage GetMessageW
1287 ! FUNCTION: GetMessageExtraInfo
1288 ! FUNCTION: GetMessagePos
1289 ! FUNCTION: GetMessageTime
1290 ! FUNCTION: GetMonitorInfoA
1292 FUNCTION: BOOL GetMonitorInfoW ( HMONITOR hMonitor, LPMONITORINFO lpmi ) ;
1293 ALIAS: GetMonitorInfo GetMonitorInfoW
1295 ! FUNCTION: GetMouseMovePointsEx
1296 ! FUNCTION: GetNextDlgGroupItem
1297 ! FUNCTION: GetNextDlgTabItem
1298 ! FUNCTION: GetOpenClipboardWindow
1299 FUNCTION: HWND GetParent ( HWND hWnd ) ;
1300 FUNCTION: int GetPriorityClipboardFormat ( UINT* paFormatPriorityList, int cFormats ) ;
1301 ! FUNCTION: GetProcessDefaultLayout
1302 ! FUNCTION: GetProcessWindowStation
1303 ! FUNCTION: GetProgmanWindow
1304 ! FUNCTION: GetPropA
1305 ! FUNCTION: GetPropW
1306 ! FUNCTION: GetQueueStatus
1307 FUNCTION: UINT GetRawInputBuffer ( PRAWINPUT pData, PUINT pcbSize, UINT cbSizeHeader ) ;
1308 FUNCTION: UINT GetRawInputData ( HRAWINPUT hRawInput, UINT uiCommand, LPVOID pData, PUINT pcbSize, UINT cbSizeHeader ) ;
1309 FUNCTION: UINT GetRawInputDeviceInfoA ( HANDLE hDevice, UINT uiCommand, LPVOID pData, PUINT pcbSize ) ;
1310 FUNCTION: UINT GetRawInputDeviceInfoW ( HANDLE hDevice, UINT uiCommand, LPVOID pData, PUINT pcbSize ) ;
1311 ALIAS: GetRawInputDeviceInfo GetRawInputDeviceInfoW
1312 FUNCTION: UINT GetRawInputDeviceList ( PRAWINPUTDEVICELIST pRawInputDeviceList, PUINT puiNumDevices, UINT cbSize ) ;
1313 FUNCTION: UINT GetRegisteredRawInputDevices ( PRAWINPUTDEVICE pRawInputDevices, PUINT puiNumDevices, UINT cbSize ) ;
1314 ! FUNCTION: GetReasonTitleFromReasonCode
1315 ! FUNCTION: GetScrollBarInfo
1316 ! FUNCTION: GetScrollInfo
1317 ! FUNCTION: GetScrollPos
1318 ! FUNCTION: GetScrollRange
1319 ! FUNCTION: GetShellWindow
1320 ! FUNCTION: GetSubMenu
1321 FUNCTION: COLORREF GetSysColor ( int nIndex ) ;
1322 FUNCTION: HBRUSH GetSysColorBrush ( int nIndex ) ;
1323 FUNCTION: HMENU GetSystemMenu ( HWND hWnd, BOOL bRevert ) ;
1324 ! FUNCTION: GetSystemMetrics
1325 ! FUNCTION: GetTabbedTextExtentA
1326 ! FUNCTION: GetTabbedTextExtentW
1327 ! FUNCTION: GetTaskmanWindow
1328 ! FUNCTION: GetThreadDesktop
1329 ! FUNCTION: GetTitleBarInfo
1332 FUNCTION: HWND GetTopWindow ( HWND hWnd ) ;
1333 ! FUNCTION: BOOL GetUpdateRect ( HWND hWnd, LPRECT lpRect, BOOL bErase ) ;
1334 FUNCTION: int GetUpdateRgn ( HWND hWnd, HRGN hRgn, BOOL bErase ) ;
1337 ! FUNCTION: GetUserObjectInformationA
1338 ! FUNCTION: GetUserObjectInformationW
1339 ! FUNCTION: GetUserObjectSecurity
1340 FUNCTION: HWND GetWindow ( HWND hWnd, UINT uCmd ) ;
1341 ! FUNCTION: GetWindowContextHelpId
1342 ! FUNCTION: GetWindowDC
1343 ! FUNCTION: GetWindowInfo
1344 ! FUNCTION: GetWindowLongA
1345 ! FUNCTION: GetWindowLongW
1346 FUNCTION: LONG_PTR GetWindowLongW ( HANDLE hWnd, int index ) ;
1347 ALIAS: GetWindowLong GetWindowLongW
1348 ! FUNCTION: GetWindowModuleFileName
1349 ! FUNCTION: GetWindowModuleFileNameA
1350 ! FUNCTION: GetWindowModuleFileNameW
1351 ! FUNCTION: GetWindowPlacement
1352 FUNCTION: BOOL GetWindowRect ( HWND hWnd, LPRECT lpRect ) ;
1353 ! FUNCTION: GetWindowRgn
1354 ! FUNCTION: GetWindowRgnBox
1355 FUNCTION: int GetWindowTextA ( HWND hWnd, char* lpString, int nMaxCount ) ;
1356 ! FUNCTION: GetWindowTextLengthA
1357 ! FUNCTION: GetWindowTextLengthW
1358 ! FUNCTION: GetWindowTextW
1359 FUNCTION: DWORD GetWindowThreadProcessId ( HWND hWnd, void* lpdwProcessId ) ;
1360 ! FUNCTION: GetWindowWord
1361 ! FUNCTION: GetWinStationInfo
1362 ! FUNCTION: GrayStringA
1363 ! FUNCTION: GrayStringW
1364 ! FUNCTION: HideCaret
1365 ! FUNCTION: HiliteMenuItem
1366 ! FUNCTION: ImpersonateDdeClientWindow
1367 ! FUNCTION: IMPGetIMEA
1368 ! FUNCTION: IMPGetIMEW
1369 ! FUNCTION: IMPQueryIMEA
1370 ! FUNCTION: IMPQueryIMEW
1371 ! FUNCTION: IMPSetIMEA
1372 ! FUNCTION: IMPSetIMEW
1373 ! FUNCTION: InflateRect
1374 ! FUNCTION: InitializeLpkHooks
1375 ! FUNCTION: InitializeWin32EntryTable
1376 ! FUNCTION: InSendMessage
1377 ! FUNCTION: InSendMessageEx
1378 ! FUNCTION: InsertMenuA
1379 ! FUNCTION: InsertMenuItemA
1380 ! FUNCTION: InsertMenuItemW
1381 ! FUNCTION: InsertMenuW
1382 ! FUNCTION: InternalGetWindowText
1383 ! FUNCTION: IntersectRect
1384 ! FUNCTION: InvalidateRect
1385 ! FUNCTION: InvalidateRgn
1386 ! FUNCTION: InvertRect
1387 ! FUNCTION: IsCharAlphaA
1388 ! FUNCTION: IsCharAlphaNumericA
1389 ! FUNCTION: IsCharAlphaNumericW
1390 ! FUNCTION: IsCharAlphaW
1391 ! FUNCTION: IsCharLowerA
1392 ! FUNCTION: IsCharLowerW
1393 ! FUNCTION: IsCharUpperA
1394 ! FUNCTION: IsCharUpperW
1395 FUNCTION: BOOL IsChild ( HWND hWndParent, HWND hWnd ) ;
1396 FUNCTION: BOOL IsClipboardFormatAvailable ( UINT format ) ;
1397 ! FUNCTION: IsDialogMessage
1398 ! FUNCTION: IsDialogMessageA
1399 ! FUNCTION: IsDialogMessageW
1400 ! FUNCTION: IsDlgButtonChecked
1401 FUNCTION: BOOL IsGUIThread ( BOOL bConvert ) ;
1402 FUNCTION: BOOL IsHungAppWindow ( HWND hWnd ) ;
1403 FUNCTION: BOOL IsIconic ( HWND hWnd ) ;
1404 FUNCTION: BOOL IsMenu ( HMENU hMenu ) ;
1405 ! FUNCTION: BOOL IsRectEmpty
1406 ! FUNCTION: BOOL IsServerSideWindow
1407 FUNCTION: BOOL IsWindow ( HWND hWnd ) ;
1408 ! FUNCTION: BOOL IsWindowEnabled
1409 ! FUNCTION: BOOL IsWindowInDestroy
1410 FUNCTION: BOOL IsWindowUnicode ( HWND hWnd ) ;
1411 FUNCTION: BOOL IsWindowVisible ( HWND hWnd ) ;
1412 ! FUNCTION: BOOL IsWinEventHookInstalled
1413 FUNCTION: BOOL IsZoomed ( HWND hWnd ) ;
1414 ! FUNCTION: keybd_event
1415 ! FUNCTION: KillSystemTimer
1416 ! FUNCTION: KillTimer
1417 ! FUNCTION: LoadAcceleratorsA
1418 FUNCTION: HACCEL LoadAcceleratorsW ( HINSTANCE hInstance, LPCTSTR lpTableName ) ;
1419 ! FUNCTION: LoadBitmapA
1420 ! FUNCTION: LoadBitmapW
1421 ! FUNCTION: LoadCursorFromFileA
1422 ! FUNCTION: LoadCursorFromFileW
1425 ! FUNCTION: HCURSOR LoadCursorW ( HINSTANCE hInstance, LPCWSTR lpCursorName ) ;
1426 FUNCTION: HCURSOR LoadCursorW ( HINSTANCE hInstance, ushort lpCursorName ) ;
1427 ALIAS: LoadCursor LoadCursorW
1429 ! FUNCTION: HICON LoadIconA ( HINSTANCE hInstance, LPCTSTR lpIconName ) ;
1430 FUNCTION: HICON LoadIconW ( HINSTANCE hInstance, LPCTSTR lpIconName ) ;
1431 ALIAS: LoadIcon LoadIconW
1433 ! FUNCTION: LoadImageA
1434 ! FUNCTION: LoadImageW
1435 ! FUNCTION: LoadKeyboardLayoutA
1436 ! FUNCTION: LoadKeyboardLayoutEx
1437 ! FUNCTION: LoadKeyboardLayoutW
1438 ! FUNCTION: LoadLocalFonts
1439 ! FUNCTION: LoadMenuA
1440 ! FUNCTION: LoadMenuIndirectA
1441 ! FUNCTION: LoadMenuIndirectW
1442 ! FUNCTION: LoadMenuW
1443 ! FUNCTION: LoadRemoteFonts
1444 ! FUNCTION: LoadStringA
1445 ! FUNCTION: LoadStringW
1446 ! FUNCTION: LockSetForegroundWindow
1447 ! FUNCTION: LockWindowStation
1448 ! FUNCTION: LockWindowUpdate
1449 ! FUNCTION: LockWorkStation
1450 ! FUNCTION: LookupIconIdFromDirectory
1451 ! FUNCTION: LookupIconIdFromDirectoryEx
1452 ! FUNCTION: MapDialogRect
1454 FUNCTION: UINT MapVirtualKeyW ( UINT uCode, UINT uMapType ) ;
1455 ALIAS: MapVirtualKey MapVirtualKeyW
1457 FUNCTION: UINT MapVirtualKeyExW ( UINT uCode, UINT uMapType, HKL dwhkl ) ;
1458 ALIAS: MapVirtualKeyEx MapVirtualKeyExW
1460 ! FUNCTION: MapWindowPoints
1461 ! FUNCTION: MB_GetString
1462 ! FUNCTION: MBToWCSEx
1463 ! FUNCTION: MenuItemFromPoint
1464 ! FUNCTION: MenuWindowProcA
1465 ! FUNCTION: MenuWindowProcW
1468 FUNCTION: BOOL MessageBeep ( UINT uType ) ;
1470 FUNCTION: int MessageBoxA (
1476 FUNCTION: int MessageBoxW (
1482 FUNCTION: int MessageBoxExA ( HWND hWnd,
1489 FUNCTION: int MessageBoxExW (
1494 WORD wLanguageId ) ;
1496 ! FUNCTION: int MessageBoxIndirectA ( MSGBOXPARAMSA* params ) ;
1497 ! FUNCTION: int MessageBoxIndirectW ( MSGBOXPARAMSW* params ) ;
1500 ALIAS: MessageBox MessageBoxW
1502 ALIAS: MessageBoxEx MessageBoxExW
1504 ! : MessageBoxIndirect
1505 ! \ MessageBoxIndirectW \ MessageBoxIndirectA unicode-exec ;
1507 ! FUNCTION: MessageBoxTimeoutA ! dllexported, not in header
1508 ! FUNCTION: MessageBoxTimeoutW ! dllexported, not in header
1510 ! FUNCTION: ModifyMenuA
1511 ! FUNCTION: ModifyMenuW
1512 ! FUNCTION: MonitorFromPoint
1513 ! FUNCTION: MonitorFromRect
1514 FUNCTION: HMONITOR MonitorFromWindow ( HWND hWnd, DWORD dwFlags ) ;
1515 ! FUNCTION: mouse_event
1518 FUNCTION: BOOL MoveWindow (
1526 ! FUNCTION: MsgWaitForMultipleObjects
1527 ! FUNCTION: MsgWaitForMultipleObjectsEx
1528 ! FUNCTION: NotifyWinEvent
1529 ! FUNCTION: OemKeyScan
1530 ! FUNCTION: OemToCharA
1531 ! FUNCTION: OemToCharBuffA
1532 ! FUNCTION: OemToCharBuffW
1533 ! FUNCTION: OemToCharW
1534 ! FUNCTION: OffsetRect
1535 FUNCTION: BOOL OpenClipboard ( HWND hWndNewOwner ) ;
1536 ! FUNCTION: OpenDesktopA
1537 ! FUNCTION: OpenDesktopW
1538 ! FUNCTION: OpenIcon
1539 ! FUNCTION: OpenInputDesktop
1540 ! FUNCTION: OpenWindowStationA
1541 ! FUNCTION: OpenWindowStationW
1542 ! FUNCTION: PackDDElParam
1543 ! FUNCTION: PaintDesktop
1544 ! FUNCTION: PaintMenuBar
1545 FUNCTION: BOOL PeekMessageA ( LPMSG lpMsg, HWND hWnd, UINT wMsgFilterMin, UINT wMsgFilterMax, UINT wRemoveMsg ) ;
1546 FUNCTION: BOOL PeekMessageW ( LPMSG lpMsg, HWND hWnd, UINT wMsgFilterMin, UINT wMsgFilterMax, UINT wRemoveMsg ) ;
1547 ALIAS: PeekMessage PeekMessageW
1549 ! FUNCTION: PostMessageA
1550 ! FUNCTION: PostMessageW
1551 FUNCTION: void PostQuitMessage ( int nExitCode ) ;
1552 ! FUNCTION: PostThreadMessageA
1553 ! FUNCTION: PostThreadMessageW
1554 ! FUNCTION: PrintWindow
1555 ! FUNCTION: PrivateExtractIconExA
1556 ! FUNCTION: PrivateExtractIconExW
1557 ! FUNCTION: PrivateExtractIconsA
1558 ! FUNCTION: PrivateExtractIconsW
1559 ! FUNCTION: PrivateSetDbgTag
1560 ! FUNCTION: PrivateSetRipFlags
1561 ! FUNCTION: PtInRect
1562 ! FUNCTION: QuerySendMessage
1563 ! FUNCTION: QueryUserCounters
1564 ! FUNCTION: RealChildWindowFromPoint
1565 ! FUNCTION: RealGetWindowClass
1566 ! FUNCTION: RealGetWindowClassA
1567 ! FUNCTION: RealGetWindowClassW
1568 ! FUNCTION: ReasonCodeNeedsBugID
1569 ! FUNCTION: ReasonCodeNeedsComment
1570 ! FUNCTION: RecordShutdownReason
1571 ! FUNCTION: RedrawWindow
1573 FUNCTION: ATOM RegisterClassA ( WNDCLASS* lpWndClass ) ;
1574 FUNCTION: ATOM RegisterClassW ( WNDCLASS* lpWndClass ) ;
1575 FUNCTION: ATOM RegisterClassExA ( WNDCLASSEX* lpwcx ) ;
1576 FUNCTION: ATOM RegisterClassExW ( WNDCLASSEX* lpwcx ) ;
1578 ALIAS: RegisterClass RegisterClassW
1579 ALIAS: RegisterClassEx RegisterClassExW
1581 ! FUNCTION: RegisterClipboardFormatA
1582 ! FUNCTION: RegisterClipboardFormatW
1583 FUNCTION: HANDLE RegisterDeviceNotificationA ( HANDLE hRecipient, LPVOID NotificationFilter, DWORD Flags ) ;
1584 FUNCTION: HANDLE RegisterDeviceNotificationW ( HANDLE hRecipient, LPVOID NotificationFilter, DWORD Flags ) ;
1585 ALIAS: RegisterDeviceNotification RegisterDeviceNotificationW
1586 ! FUNCTION: RegisterHotKey
1587 ! FUNCTION: RegisterLogonProcess
1588 ! FUNCTION: RegisterMessagePumpHook
1589 FUNCTION: BOOL RegisterRawInputDevices ( PCRAWINPUTDEVICE pRawInputDevices, UINT uiNumDevices, UINT cbSize ) ;
1590 ! FUNCTION: RegisterServicesProcess
1591 ! FUNCTION: RegisterShellHookWindow
1592 ! FUNCTION: RegisterSystemThread
1593 ! FUNCTION: RegisterTasklist
1594 ! FUNCTION: RegisterUserApiHook
1595 ! FUNCTION: RegisterWindowMessageA
1596 ! FUNCTION: RegisterWindowMessageW
1597 FUNCTION: BOOL ReleaseCapture ( ) ;
1598 FUNCTION: int ReleaseDC ( HWND hWnd, HDC hDC ) ;
1599 ! FUNCTION: RemoveMenu
1600 ! FUNCTION: RemovePropA
1601 ! FUNCTION: RemovePropW
1602 ! FUNCTION: ReplyMessage
1603 ! FUNCTION: ResolveDesktopForWOW
1604 ! FUNCTION: ReuseDDElParam
1605 ! FUNCTION: ScreenToClient
1606 ! FUNCTION: ScrollChildren
1607 ! FUNCTION: ScrollDC
1608 ! FUNCTION: ScrollWindow
1609 ! FUNCTION: ScrollWindowEx
1610 ! FUNCTION: SendDlgItemMessageA
1611 ! FUNCTION: SendDlgItemMessageW
1612 ! FUNCTION: SendIMEMessageExA
1613 ! FUNCTION: SendIMEMessageExW
1614 ! FUNCTION: UINT SendInput ( UINT nInputs, LPINPUT pInputs, int cbSize ) ;
1615 FUNCTION: LRESULT SendMessageW ( HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam ) ;
1616 ALIAS: SendMessage SendMessageW
1617 ! FUNCTION: SendMessageCallbackA
1618 ! FUNCTION: SendMessageCallbackW
1619 ! FUNCTION: SendMessageTimeoutA
1620 ! FUNCTION: SendMessageTimeoutW
1621 ! FUNCTION: SendNotifyMessageA
1622 ! FUNCTION: SendNotifyMessageW
1623 ! FUNCTION: SetActiveWindow
1624 FUNCTION: HWND SetCapture ( HWND hWnd ) ;
1625 ! FUNCTION: SetCaretBlinkTime
1626 ! FUNCTION: SetCaretPos
1628 FUNCTION: ULONG_PTR SetClassLongW ( HWND hWnd, int nIndex, LONG_PTR dwNewLong ) ;
1629 ALIAS: SetClassLongPtr SetClassLongW
1630 ALIAS: SetClassLong SetClassLongW
1632 ! FUNCTION: SetClassWord
1633 FUNCTION: HANDLE SetClipboardData ( UINT uFormat, HANDLE hMem ) ;
1634 ! FUNCTION: SetClipboardViewer
1635 ! FUNCTION: SetConsoleReserveKeys
1636 ! FUNCTION: SetCursor
1637 ! FUNCTION: SetCursorContents
1638 ! FUNCTION: SetCursorPos
1639 ! FUNCTION: SetDebugErrorLevel
1640 ! FUNCTION: SetDeskWallpaper
1641 ! FUNCTION: SetDlgItemInt
1642 ! FUNCTION: SetDlgItemTextA
1643 ! FUNCTION: SetDlgItemTextW
1644 ! FUNCTION: SetDoubleClickTime
1645 FUNCTION: HWND SetFocus ( HWND hWnd ) ;
1646 FUNCTION: BOOL SetForegroundWindow ( HWND hWnd ) ;
1647 ! FUNCTION: SetInternalWindowPos
1648 ! FUNCTION: SetKeyboardState
1650 FUNCTION: void SetLastErrorEx ( DWORD dwErrCode, DWORD dwType ) ;
1651 : SetLastError ( errcode -- ) 0 SetLastErrorEx ; inline
1652 ! FUNCTION: SetLayeredWindowAttributes
1653 ! FUNCTION: SetLogonNotifyWindow
1655 ! FUNCTION: SetMenuContextHelpId
1656 ! FUNCTION: SetMenuDefaultItem
1657 ! FUNCTION: SetMenuInfo
1658 ! FUNCTION: SetMenuItemBitmaps
1659 ! FUNCTION: SetMenuItemInfoA
1660 ! FUNCTION: SetMenuItemInfoW
1661 ! FUNCTION: SetMessageExtraInfo
1662 ! FUNCTION: SetMessageQueue
1663 ! FUNCTION: SetParent
1664 ! FUNCTION: SetProcessDefaultLayout
1665 ! FUNCTION: SetProcessWindowStation
1666 ! FUNCTION: SetProgmanWindow
1667 ! FUNCTION: SetPropA
1668 ! FUNCTION: SetPropW
1670 ! FUNCTION: SetRectEmpty
1671 ! FUNCTION: SetScrollInfo
1672 ! FUNCTION: SetScrollPos
1673 ! FUNCTION: SetScrollRange
1674 ! FUNCTION: SetShellWindow
1675 ! FUNCTION: SetShellWindowEx
1676 ! FUNCTION: SetSysColors
1677 ! FUNCTION: SetSysColorsTemp
1678 ! FUNCTION: SetSystemCursor
1679 ! FUNCTION: SetSystemMenu
1680 ! FUNCTION: SetSystemTimer
1681 ! FUNCTION: SetTaskmanWindow
1682 ! FUNCTION: SetThreadDesktop
1683 ! FUNCTION: SetTimer
1684 ! FUNCTION: SetUserObjectInformationA
1685 ! FUNCTION: SetUserObjectInformationW
1686 ! FUNCTION: SetUserObjectSecurity
1687 ! FUNCTION: SetWindowContextHelpId
1688 ! FUNCTION: SetWindowLongA
1689 ! FUNCTION: SetWindowLongW
1690 FUNCTION: LONG_PTR SetWindowLongW ( HANDLE hWnd, int index, LONG_PTR dwNewLong ) ;
1691 ALIAS: SetWindowLong SetWindowLongW
1692 ! FUNCTION: SetWindowPlacement
1693 FUNCTION: BOOL SetWindowPos ( HWND hWnd, HWND hWndInsertAfter, int X, int Y, int cx, int cy, UINT uFlags ) ;
1695 : HWND_BOTTOM ( -- alien ) 1 <alien> ;
1696 : HWND_NOTOPMOST ( -- alien ) -2 <alien> ;
1697 CONSTANT: HWND_TOP f
1698 : HWND_TOPMOST ( -- alien ) -1 <alien> ;
1700 ! FUNCTION: SetWindowRgn
1701 ! FUNCTION: SetWindowsHookA
1702 ! FUNCTION: SetWindowsHookExA
1703 ! FUNCTION: SetWindowsHookExW
1704 ! FUNCTION: SetWindowsHookW
1705 ! FUNCTION: SetWindowStationUser
1706 ! FUNCTION: SetWindowTextA
1707 ! FUNCTION: SetWindowTextW
1708 ! FUNCTION: SetWindowWord
1709 ! FUNCTION: SetWinEventHook
1710 ! FUNCTION: ShowCaret
1711 FUNCTION: int ShowCursor ( BOOL show ) ;
1712 ! FUNCTION: ShowOwnedPopups
1713 ! FUNCTION: ShowScrollBar
1714 ! FUNCTION: ShowStartGlass
1716 FUNCTION: BOOL ShowWindow ( HWND hWnd, int nCmdShow ) ;
1718 ! FUNCTION: ShowWindowAsync
1719 ! FUNCTION: SoftModalMessageBox
1720 ! FUNCTION: SubtractRect
1721 ! FUNCTION: SwapMouseButton
1722 ! FUNCTION: SwitchDesktop
1723 ! FUNCTION: SwitchToThisWindow
1724 ! FUNCTION: SystemParametersInfoA
1726 FUNCTION: BOOL SystemParametersInfoW ( UINT uiAction, UINT uiParam, PVOID pvParam, UINT fWinIni ) ;
1727 ALIAS: SystemParametersInfo SystemParametersInfoW
1729 ! FUNCTION: TabbedTextOutA
1730 ! FUNCTION: TabbedTextOutW
1731 ! FUNCTION: TileChildWindows
1732 ! FUNCTION: TileWindows
1734 ! FUNCTION: ToAsciiEx
1735 ! FUNCTION: ToUnicode
1736 ! FUNCTION: ToUnicodeEx
1737 FUNCTION: BOOL TrackMouseEvent ( LPTRACKMOUSEEVENT lpEventTrack ) ;
1738 ! FUNCTION: TrackPopupMenu
1739 ! FUNCTION: TrackPopupMenuEx
1740 ! FUNCTION: TranslateAccelerator
1741 ! FUNCTION: TranslateAcceleratorA
1742 FUNCTION: int TranslateAcceleratorW ( HWND hWnd, HACCEL hAccTable, LPMSG lpMsg ) ;
1743 ALIAS: TranslateAccelerator TranslateAcceleratorW
1745 ! FUNCTION: TranslateMDISysAccel
1746 FUNCTION: BOOL TranslateMessage ( MSG* lpMsg ) ;
1748 ! FUNCTION: UnhookWindowsHook
1749 ! FUNCTION: UnhookWindowsHookEx
1750 ! FUNCTION: UnhookWinEvent
1751 ! FUNCTION: UnionRect
1752 ! FUNCTION: UnloadKeyboardLayout
1753 ! FUNCTION: UnlockWindowStation
1754 ! FUNCTION: UnpackDDElParam
1755 FUNCTION: BOOL UnregisterClassW ( LPCWSTR lpClassName, HINSTANCE hInstance ) ;
1756 ALIAS: UnregisterClass UnregisterClassW
1757 FUNCTION: BOOL UnregisterDeviceNotification ( HANDLE hDevNotify ) ;
1758 ! FUNCTION: UnregisterHotKey
1759 ! FUNCTION: UnregisterMessagePumpHook
1760 ! FUNCTION: UnregisterUserApiHook
1761 ! FUNCTION: UpdateLayeredWindow
1762 ! FUNCTION: UpdatePerUserSystemParameters
1764 FUNCTION: BOOL UpdateWindow ( HWND hWnd ) ;
1766 ! FUNCTION: User32InitializeImmEntryTable
1767 ! FUNCTION: UserClientDllInitialize
1768 ! FUNCTION: UserHandleGrantAccess
1769 ! FUNCTION: UserLpkPSMTextOut
1770 ! FUNCTION: UserLpkTabbedTextOut
1771 ! FUNCTION: UserRealizePalette
1772 ! FUNCTION: UserRegisterWowHandlers
1773 ! FUNCTION: ValidateRect
1774 ! FUNCTION: ValidateRgn
1775 ! FUNCTION: VkKeyScanA
1776 ! FUNCTION: VkKeyScanExA
1777 ! FUNCTION: VkKeyScanExW
1778 ! FUNCTION: VkKeyScanW
1779 ! FUNCTION: VRipOutput
1780 ! FUNCTION: VTagOutput
1781 ! FUNCTION: WaitForInputIdle
1782 ! FUNCTION: WaitMessage
1783 ! FUNCTION: WCSToMBEx
1784 ! FUNCTION: Win32PoolAllocationStats
1785 ! FUNCTION: WindowFromDC
1786 ! FUNCTION: WindowFromPoint
1787 ! FUNCTION: WinHelpA
1788 ! FUNCTION: WinHelpW
1789 ! FUNCTION: WINNLSEnableIME
1790 ! FUNCTION: WINNLSGetEnableStatus
1791 ! FUNCTION: WINNLSGetIMEHotkey
1792 ! FUNCTION: wsprintfA
1793 ! FUNCTION: wsprintfW
1794 ! FUNCTION: wvsprintfA
1795 ! FUNCTION: wvsprintfW
1798 f swap "DebugMsg" MB_OK MessageBox drop ;