Merge branch 'master' of git://factorcode.org/git/factor
[factor/jcg.git] / basis / windows / user32 / user32.factor
blobe2e2c7e1502c65e5556950aed6d188d437bcf83f
1 ! Copyright (C) 2005, 2006 Doug Coleman.
2 ! See http://factorcode.org/license.txt for BSD license.
3 USING: alien alien.syntax parser namespaces kernel math
4 windows.types generalizations math.bitwise ;
5 IN: windows.user32
7 ! HKL for ActivateKeyboardLayout
8 CONSTANT: HKL_PREV 0
9 CONSTANT: HKL_NEXT 1
11 CONSTANT: CW_USEDEFAULT HEX: 80000000
13 CONSTANT: WS_OVERLAPPED       HEX: 00000000
14 CONSTANT: WS_POPUP            HEX: 80000000
15 CONSTANT: WS_CHILD            HEX: 40000000
16 CONSTANT: WS_MINIMIZE         HEX: 20000000
17 CONSTANT: WS_VISIBLE          HEX: 10000000
18 CONSTANT: WS_DISABLED         HEX: 08000000
19 CONSTANT: WS_CLIPSIBLINGS     HEX: 04000000
20 CONSTANT: WS_CLIPCHILDREN     HEX: 02000000
21 CONSTANT: WS_MAXIMIZE         HEX: 01000000
22 CONSTANT: WS_CAPTION          HEX: 00C00000
23 CONSTANT: WS_BORDER           HEX: 00800000
24 CONSTANT: WS_DLGFRAME         HEX: 00400000
25 CONSTANT: WS_VSCROLL          HEX: 00200000
26 CONSTANT: WS_HSCROLL          HEX: 00100000
27 CONSTANT: WS_SYSMENU          HEX: 00080000
28 CONSTANT: WS_THICKFRAME       HEX: 00040000
29 CONSTANT: WS_GROUP            HEX: 00020000
30 CONSTANT: WS_TABSTOP          HEX: 00010000
31 CONSTANT: WS_MINIMIZEBOX      HEX: 00020000
32 CONSTANT: WS_MAXIMIZEBOX      HEX: 00010000
34 ! Common window styles
35 : WS_OVERLAPPEDWINDOW ( -- n )
36     {
37         WS_OVERLAPPED
38         WS_CAPTION
39         WS_SYSMENU
40         WS_THICKFRAME
41         WS_MINIMIZEBOX
42         WS_MAXIMIZEBOX
43     } flags ; foldable
45 : WS_POPUPWINDOW ( -- n )
46     { WS_POPUP WS_BORDER WS_SYSMENU } flags ; foldable
48 ALIAS: WS_CHILDWINDOW      WS_CHILD
50 ALIAS: WS_TILED            WS_OVERLAPPED
51 ALIAS: WS_ICONIC           WS_MINIMIZE
52 ALIAS: WS_SIZEBOX          WS_THICKFRAME
53 ALIAS: WS_TILEDWINDOW WS_OVERLAPPEDWINDOW
55 ! Extended window styles
57 CONSTANT: WS_EX_DLGMODALFRAME     HEX: 00000001
58 CONSTANT: WS_EX_NOPARENTNOTIFY    HEX: 00000004
59 CONSTANT: WS_EX_TOPMOST           HEX: 00000008
60 CONSTANT: WS_EX_ACCEPTFILES       HEX: 00000010
61 CONSTANT: WS_EX_TRANSPARENT       HEX: 00000020
62 CONSTANT: WS_EX_MDICHILD          HEX: 00000040
63 CONSTANT: WS_EX_TOOLWINDOW        HEX: 00000080
64 CONSTANT: WS_EX_WINDOWEDGE        HEX: 00000100
65 CONSTANT: WS_EX_CLIENTEDGE        HEX: 00000200
66 CONSTANT: WS_EX_CONTEXTHELP       HEX: 00000400
68 CONSTANT: WS_EX_RIGHT             HEX: 00001000
69 CONSTANT: WS_EX_LEFT              HEX: 00000000
70 CONSTANT: WS_EX_RTLREADING        HEX: 00002000
71 CONSTANT: WS_EX_LTRREADING        HEX: 00000000
72 CONSTANT: WS_EX_LEFTSCROLLBAR     HEX: 00004000
73 CONSTANT: WS_EX_RIGHTSCROLLBAR    HEX: 00000000
74 CONSTANT: WS_EX_CONTROLPARENT     HEX: 00010000
75 CONSTANT: WS_EX_STATICEDGE        HEX: 00020000
76 CONSTANT: WS_EX_APPWINDOW         HEX: 00040000
77 : WS_EX_OVERLAPPEDWINDOW ( -- n )
78     WS_EX_WINDOWEDGE WS_EX_CLIENTEDGE bitor ; foldable
79 : WS_EX_PALETTEWINDOW ( -- n )
80     { WS_EX_WINDOWEDGE WS_EX_TOOLWINDOW WS_EX_TOPMOST } flags ; foldable
82 CONSTANT: CS_VREDRAW          HEX: 0001
83 CONSTANT: CS_HREDRAW          HEX: 0002
84 CONSTANT: CS_DBLCLKS          HEX: 0008
85 CONSTANT: CS_OWNDC            HEX: 0020
86 CONSTANT: CS_CLASSDC          HEX: 0040
87 CONSTANT: CS_PARENTDC         HEX: 0080
88 CONSTANT: CS_NOCLOSE          HEX: 0200
89 CONSTANT: CS_SAVEBITS         HEX: 0800
90 CONSTANT: CS_BYTEALIGNCLIENT  HEX: 1000
91 CONSTANT: CS_BYTEALIGNWINDOW  HEX: 2000
92 CONSTANT: CS_GLOBALCLASS      HEX: 4000
94 CONSTANT: COLOR_SCROLLBAR         0
95 CONSTANT: COLOR_BACKGROUND        1
96 CONSTANT: COLOR_ACTIVECAPTION     2
97 CONSTANT: COLOR_INACTIVECAPTION   3
98 CONSTANT: COLOR_MENU              4
99 CONSTANT: COLOR_WINDOW            5
100 CONSTANT: COLOR_WINDOWFRAME       6
101 CONSTANT: COLOR_MENUTEXT          7
102 CONSTANT: COLOR_WINDOWTEXT        8
103 CONSTANT: COLOR_CAPTIONTEXT       9
104 CONSTANT: COLOR_ACTIVEBORDER      10
105 CONSTANT: COLOR_INACTIVEBORDER    11
106 CONSTANT: COLOR_APPWORKSPACE      12
107 CONSTANT: COLOR_HIGHLIGHT         13
108 CONSTANT: COLOR_HIGHLIGHTTEXT     14
109 CONSTANT: COLOR_BTNFACE           15
110 CONSTANT: COLOR_BTNSHADOW         16
111 CONSTANT: COLOR_GRAYTEXT          17
112 CONSTANT: COLOR_BTNTEXT           18
113 CONSTANT: COLOR_INACTIVECAPTIONTEXT 19
114 CONSTANT: COLOR_BTNHIGHLIGHT      20
116 CONSTANT: IDI_APPLICATION     32512
117 CONSTANT: IDI_HAND            32513
118 CONSTANT: IDI_QUESTION        32514
119 CONSTANT: IDI_EXCLAMATION     32515
120 CONSTANT: IDI_ASTERISK        32516
121 CONSTANT: IDI_WINLOGO         32517
123 ! ShowWindow() Commands
124 CONSTANT: SW_HIDE             0
125 CONSTANT: SW_SHOWNORMAL       1
126 CONSTANT: SW_NORMAL           1
127 CONSTANT: SW_SHOWMINIMIZED    2
128 CONSTANT: SW_SHOWMAXIMIZED    3
129 CONSTANT: SW_MAXIMIZE         3
130 CONSTANT: SW_SHOWNOACTIVATE   4
131 CONSTANT: SW_SHOW             5
132 CONSTANT: SW_MINIMIZE         6
133 CONSTANT: SW_SHOWMINNOACTIVE  7
134 CONSTANT: SW_SHOWNA           8
135 CONSTANT: SW_RESTORE          9
136 CONSTANT: SW_SHOWDEFAULT      10
137 CONSTANT: SW_FORCEMINIMIZE    11
138 CONSTANT: SW_MAX              11
140 ! PeekMessage
141 CONSTANT: PM_NOREMOVE   0
142 CONSTANT: PM_REMOVE     1
143 CONSTANT: PM_NOYIELD    2
144 ! : PM_QS_INPUT         (QS_INPUT << 16) ;
145 ! : PM_QS_POSTMESSAGE   ((QS_POSTMESSAGE | QS_HOTKEY | QS_TIMER) << 16) ;
146 ! : PM_QS_PAINT         (QS_PAINT << 16) ;
147 ! : PM_QS_SENDMESSAGE   (QS_SENDMESSAGE << 16) ;
151 ! Standard Cursor IDs
153 : IDC_ARROW           32512 ; inline
154 : IDC_IBEAM           32513 ; inline
155 : IDC_WAIT            32514 ; inline
156 : IDC_CROSS           32515 ; inline
157 : IDC_UPARROW         32516 ; inline
158 : IDC_SIZE            32640 ; inline ! OBSOLETE: use IDC_SIZEALL
159 : IDC_ICON            32641 ; inline ! OBSOLETE: use IDC_ARROW
160 : IDC_SIZENWSE        32642 ; inline
161 : IDC_SIZENESW        32643 ; inline
162 : IDC_SIZEWE          32644 ; inline
163 : IDC_SIZENS          32645 ; inline
164 : IDC_SIZEALL         32646 ; inline
165 : IDC_NO              32648 ; inline ! not in win3.1
166 : IDC_HAND            32649 ; inline
167 : IDC_APPSTARTING     32650 ; inline ! not in win3.1
168 : IDC_HELP            32651 ; inline
170 ! Predefined Clipboard Formats
171 : CF_TEXT             1 ; inline
172 : CF_BITMAP           2 ; inline
173 : CF_METAFILEPICT     3 ; inline
174 : CF_SYLK             4 ; inline
175 : CF_DIF              5 ; inline
176 : CF_TIFF             6 ; inline
177 : CF_OEMTEXT          7 ; inline
178 : CF_DIB              8 ; inline
179 : CF_PALETTE          9 ; inline
180 : CF_PENDATA          10 ; inline
181 : CF_RIFF             11 ; inline
182 : CF_WAVE             12 ; inline
183 : CF_UNICODETEXT      13 ; inline
184 : CF_ENHMETAFILE      14 ; inline
185 : CF_HDROP            15 ; inline
186 : CF_LOCALE           16 ; inline
187 : CF_DIBV5            17 ; inline
188 : CF_MAX              18 ; inline
190 : CF_OWNERDISPLAY HEX: 0080 ; inline
191 : CF_DSPTEXT HEX: 0081 ; inline
192 : CF_DSPBITMAP HEX: 0082 ; inline
193 : CF_DSPMETAFILEPICT HEX: 0083 ; inline
194 : CF_DSPENHMETAFILE HEX: 008E ; inline
196 ! "Private" formats don't get GlobalFree()'d
197 : CF_PRIVATEFIRST HEX: 200 ; inline
198 : CF_PRIVATELAST HEX: 2FF ; inline
200 ! "GDIOBJ" formats do get DeleteObject()'d
201 : CF_GDIOBJFIRST HEX: 300 ; inline
202 : CF_GDIOBJLAST HEX: 3FF ; inline
204 ! Virtual Keys, Standard Set
205 : VK_LBUTTON        HEX: 01 ; inline
206 : VK_RBUTTON        HEX: 02 ; inline
207 : VK_CANCEL         HEX: 03 ; inline
208 : VK_MBUTTON        HEX: 04 ; inline  ! NOT contiguous with L & RBUTTON
209 : VK_XBUTTON1       HEX: 05 ; inline  ! NOT contiguous with L & RBUTTON
210 : VK_XBUTTON2       HEX: 06 ; inline  ! NOT contiguous with L & RBUTTON
211 ! 0x07 : unassigned
212 : VK_BACK           HEX: 08 ; inline
213 : VK_TAB            HEX: 09 ; inline
214 ! 0x0A - 0x0B : reserved
216 : VK_CLEAR          HEX: 0C ; inline
217 : VK_RETURN         HEX: 0D ; inline
219 : VK_SHIFT          HEX: 10 ; inline
220 : VK_CONTROL        HEX: 11 ; inline
221 : VK_MENU           HEX: 12 ; inline
222 : VK_PAUSE          HEX: 13 ; inline
223 : VK_CAPITAL        HEX: 14 ; inline
225 : VK_KANA           HEX: 15 ; inline
226 : VK_HANGEUL        HEX: 15 ; inline ! old name - here for compatibility
227 : VK_HANGUL         HEX: 15 ; inline
228 : VK_JUNJA          HEX: 17 ; inline
229 : VK_FINAL          HEX: 18 ; inline
230 : VK_HANJA          HEX: 19 ; inline
231 : VK_KANJI          HEX: 19 ; inline
233 : VK_ESCAPE         HEX: 1B ; inline
235 : VK_CONVERT        HEX: 1C ; inline
236 : VK_NONCONVERT     HEX: 1D ; inline
237 : VK_ACCEPT         HEX: 1E ; inline
238 : VK_MODECHANGE     HEX: 1F ; inline
240 : VK_SPACE          HEX: 20 ; inline
241 : VK_PRIOR          HEX: 21 ; inline
242 : VK_NEXT           HEX: 22 ; inline
243 : VK_END            HEX: 23 ; inline
244 : VK_HOME           HEX: 24 ; inline
245 : VK_LEFT           HEX: 25 ; inline
246 : VK_UP             HEX: 26 ; inline
247 : VK_RIGHT          HEX: 27 ; inline
248 : VK_DOWN           HEX: 28 ; inline
249 : VK_SELECT         HEX: 29 ; inline
250 : VK_PRINT          HEX: 2A ; inline
251 : VK_EXECUTE        HEX: 2B ; inline
252 : VK_SNAPSHOT       HEX: 2C ; inline
253 : VK_INSERT         HEX: 2D ; inline
254 : VK_DELETE         HEX: 2E ; inline
255 : VK_HELP           HEX: 2F ; inline
257 : VK_0 CHAR: 0 ; inline
258 : VK_1 CHAR: 1 ; inline
259 : VK_2 CHAR: 2 ; inline
260 : VK_3 CHAR: 3 ; inline
261 : VK_4 CHAR: 4 ; inline
262 : VK_5 CHAR: 5 ; inline
263 : VK_6 CHAR: 6 ; inline
264 : VK_7 CHAR: 7 ; inline
265 : VK_8 CHAR: 8 ; inline
266 : VK_9 CHAR: 9 ; inline
268 : VK_A CHAR: A ; inline
269 : VK_B CHAR: B ; inline
270 : VK_C CHAR: C ; inline
271 : VK_D CHAR: D ; inline
272 : VK_E CHAR: E ; inline
273 : VK_F CHAR: F ; inline
274 : VK_G CHAR: G ; inline
275 : VK_H CHAR: H ; inline
276 : VK_I CHAR: I ; inline
277 : VK_J CHAR: J ; inline
278 : VK_K CHAR: K ; inline
279 : VK_L CHAR: L ; inline
280 : VK_M CHAR: M ; inline
281 : VK_N CHAR: N ; inline
282 : VK_O CHAR: O ; inline
283 : VK_P CHAR: P ; inline
284 : VK_Q CHAR: Q ; inline
285 : VK_R CHAR: R ; inline
286 : VK_S CHAR: S ; inline
287 : VK_T CHAR: T ; inline
288 : VK_U CHAR: U ; inline
289 : VK_V CHAR: V ; inline
290 : VK_W CHAR: W ; inline
291 : VK_X CHAR: X ; inline
292 : VK_Y CHAR: Y ; inline
293 : VK_Z CHAR: Z ; inline
295 : VK_LWIN           HEX: 5B ; inline
296 : VK_RWIN           HEX: 5C ; inline
297 : VK_APPS           HEX: 5D ; inline
299 ! 0x5E : reserved
301 : VK_SLEEP          HEX: 5F ; inline
303 : VK_NUMPAD0        HEX: 60 ; inline
304 : VK_NUMPAD1        HEX: 61 ; inline
305 : VK_NUMPAD2        HEX: 62 ; inline
306 : VK_NUMPAD3        HEX: 63 ; inline
307 : VK_NUMPAD4        HEX: 64 ; inline
308 : VK_NUMPAD5        HEX: 65 ; inline
309 : VK_NUMPAD6        HEX: 66 ; inline
310 : VK_NUMPAD7        HEX: 67 ; inline
311 : VK_NUMPAD8        HEX: 68 ; inline
312 : VK_NUMPAD9        HEX: 69 ; inline
313 : VK_MULTIPLY       HEX: 6A ; inline
314 : VK_ADD            HEX: 6B ; inline
315 : VK_SEPARATOR      HEX: 6C ; inline
316 : VK_SUBTRACT       HEX: 6D ; inline
317 : VK_DECIMAL        HEX: 6E ; inline
318 : VK_DIVIDE         HEX: 6F ; inline
319 : VK_F1             HEX: 70 ; inline
320 : VK_F2             HEX: 71 ; inline
321 : VK_F3             HEX: 72 ; inline
322 : VK_F4             HEX: 73 ; inline
323 : VK_F5             HEX: 74 ; inline
324 : VK_F6             HEX: 75 ; inline
325 : VK_F7             HEX: 76 ; inline
326 : VK_F8             HEX: 77 ; inline
327 : VK_F9             HEX: 78 ; inline
328 : VK_F10            HEX: 79 ; inline
329 : VK_F11            HEX: 7A ; inline
330 : VK_F12            HEX: 7B ; inline
331 : VK_F13            HEX: 7C ; inline
332 : VK_F14            HEX: 7D ; inline
333 : VK_F15            HEX: 7E ; inline
334 : VK_F16            HEX: 7F ; inline
335 : VK_F17            HEX: 80 ; inline
336 : VK_F18            HEX: 81 ; inline
337 : VK_F19            HEX: 82 ; inline
338 : VK_F20            HEX: 83 ; inline
339 : VK_F21            HEX: 84 ; inline
340 : VK_F22            HEX: 85 ; inline
341 : VK_F23            HEX: 86 ; inline
342 : VK_F24            HEX: 87 ; inline
344 ! 0x88 - 0x8F : unassigned
346 : VK_NUMLOCK        HEX: 90 ; inline
347 : VK_SCROLL         HEX: 91 ; inline
349 ! NEC PC-9800 kbd definitions
350 : VK_OEM_NEC_EQUAL  HEX: 92 ; inline  ! '=' key on numpad
352 ! Fujitsu/OASYS kbd definitions
353 : VK_OEM_FJ_JISHO   HEX: 92 ; inline  ! 'Dictionary' key
354 : VK_OEM_FJ_MASSHOU HEX: 93 ; inline  ! 'Unregister word' key
355 : VK_OEM_FJ_TOUROKU HEX: 94 ; inline  ! 'Register word' key
356 : VK_OEM_FJ_LOYA    HEX: 95 ; inline  ! 'Left OYAYUBI' key
357 : VK_OEM_FJ_ROYA    HEX: 96 ; inline  ! 'Right OYAYUBI' key
359 ! 0x97 - 0x9F : unassigned
361 ! VK_L* & VK_R* - left and right Alt, Ctrl and Shift virtual keys.
362 ! Used only as parameters to GetAsyncKeyState() and GetKeyState().
363 ! No other API or message will distinguish left and right keys in this way.
364 : VK_LSHIFT         HEX: A0 ; inline
365 : VK_RSHIFT         HEX: A1 ; inline
366 : VK_LCONTROL       HEX: A2 ; inline
367 : VK_RCONTROL       HEX: A3 ; inline
368 : VK_LMENU          HEX: A4 ; inline
369 : VK_RMENU          HEX: A5 ; inline
371 : VK_BROWSER_BACK        HEX: A6 ; inline
372 : VK_BROWSER_FORWARD     HEX: A7 ; inline
373 : VK_BROWSER_REFRESH     HEX: A8 ; inline
374 : VK_BROWSER_STOP        HEX: A9 ; inline
375 : VK_BROWSER_SEARCH      HEX: AA ; inline
376 : VK_BROWSER_FAVORITES   HEX: AB ; inline
377 : VK_BROWSER_HOME        HEX: AC ; inline
379 : VK_VOLUME_MUTE         HEX: AD ; inline
380 : VK_VOLUME_DOWN         HEX: AE ; inline
381 : VK_VOLUME_UP           HEX: AF ; inline
382 : VK_MEDIA_NEXT_TRACK    HEX: B0 ; inline
383 : VK_MEDIA_PREV_TRACK    HEX: B1 ; inline
384 : VK_MEDIA_STOP          HEX: B2 ; inline
385 : VK_MEDIA_PLAY_PAUSE    HEX: B3 ; inline
386 : VK_LAUNCH_MAIL         HEX: B4 ; inline
387 : VK_LAUNCH_MEDIA_SELECT HEX: B5 ; inline
388 : VK_LAUNCH_APP1         HEX: B6 ; inline
389 : VK_LAUNCH_APP2         HEX: B7 ; inline
391 ! 0xB8 - 0xB9 : reserved
393 : VK_OEM_1          HEX: BA ; inline  ! ';:' for US
394 : VK_OEM_PLUS       HEX: BB ; inline  ! '+' any country
395 : VK_OEM_COMMA      HEX: BC ; inline  ! ',' any country
396 : VK_OEM_MINUS      HEX: BD ; inline  ! '-' any country
397 : VK_OEM_PERIOD     HEX: BE ; inline  ! '.' any country
398 : VK_OEM_2          HEX: BF ; inline  ! '/?' for US
399 : VK_OEM_3          HEX: C0 ; inline  ! '`~' for US
401 ! 0xC1 - 0xD7 : reserved
403 ! 0xD8 - 0xDA : unassigned
405 : VK_OEM_4          HEX: DB ; inline !  '[{' for US
406 : VK_OEM_5          HEX: DC ; inline !  '\|' for US
407 : VK_OEM_6          HEX: DD ; inline !  ']}' for US
408 : VK_OEM_7          HEX: DE ; inline !  ''"' for US
409 : VK_OEM_8          HEX: DF ; inline
411 ! 0xE0 : reserved
413 ! Various extended or enhanced keyboards
414 : VK_OEM_AX         HEX: E1 ; inline !  'AX' key on Japanese AX kbd
415 : VK_OEM_102        HEX: E2 ; inline !  "<>" or "\|" on RT 102-key kbd.
416 : VK_ICO_HELP       HEX: E3 ; inline !  Help key on ICO
417 : VK_ICO_00         HEX: E4 ; inline !  00 key on ICO
419 : VK_PROCESSKEY     HEX: E5 ; inline
421 : VK_ICO_CLEAR      HEX: E6 ; inline
423 : VK_PACKET         HEX: E7 ; inline
425 ! 0xE8 : unassigned
427 ! Nokia/Ericsson definitions
428 : VK_OEM_RESET      HEX: E9 ; inline
429 : VK_OEM_JUMP       HEX: EA ; inline
430 : VK_OEM_PA1        HEX: EB ; inline
431 : VK_OEM_PA2        HEX: EC ; inline
432 : VK_OEM_PA3        HEX: ED ; inline
433 : VK_OEM_WSCTRL     HEX: EE ; inline
434 : VK_OEM_CUSEL      HEX: EF ; inline
435 : VK_OEM_ATTN       HEX: F0 ; inline
436 : VK_OEM_FINISH     HEX: F1 ; inline
437 : VK_OEM_COPY       HEX: F2 ; inline
438 : VK_OEM_AUTO       HEX: F3 ; inline
439 : VK_OEM_ENLW       HEX: F4 ; inline
440 : VK_OEM_BACKTAB    HEX: F5 ; inline
442 : VK_ATTN           HEX: F6 ; inline
443 : VK_CRSEL          HEX: F7 ; inline
444 : VK_EXSEL          HEX: F8 ; inline
445 : VK_EREOF          HEX: F9 ; inline
446 : VK_PLAY           HEX: FA ; inline
447 : VK_ZOOM           HEX: FB ; inline
448 : VK_NONAME         HEX: FC ; inline
449 : VK_PA1            HEX: FD ; inline
450 : VK_OEM_CLEAR      HEX: FE ; inline
451 ! 0xFF : reserved
453 ! Key State Masks for Mouse Messages
454 : MK_LBUTTON          HEX: 0001 ; inline
455 : MK_RBUTTON          HEX: 0002 ; inline
456 : MK_SHIFT            HEX: 0004 ; inline
457 : MK_CONTROL          HEX: 0008 ; inline
458 : MK_MBUTTON          HEX: 0010 ; inline
459 : MK_XBUTTON1         HEX: 0020 ; inline
460 : MK_XBUTTON2         HEX: 0040 ; inline
462 ! Some fields are not defined for win64
463 ! Window field offsets for GetWindowLong()
464 : GWL_WNDPROC         -4 ; inline
465 : GWL_HINSTANCE       -6 ; inline
466 : GWL_HWNDPARENT      -8 ; inline
467 : GWL_USERDATA        -21 ; inline
468 : GWL_ID              -12 ; inline
470 : GWL_STYLE           -16 ; inline
471 : GWL_EXSTYLE         -20 ; inline
473 : GWLP_WNDPROC        -4 ; inline
474 : GWLP_HINSTANCE      -6 ; inline
475 : GWLP_HWNDPARENT     -8 ; inline
476 : GWLP_USERDATA       -21 ; inline
477 : GWLP_ID             -12 ; inline
479 ! Class field offsets for GetClassLong()
480 : GCL_MENUNAME        -8 ; inline
481 : GCL_HBRBACKGROUND   -10 ; inline
482 : GCL_HCURSOR         -12 ; inline
483 : GCL_HICON           -14 ; inline
484 : GCL_HMODULE         -16 ; inline
485 : GCL_WNDPROC         -24 ; inline
486 : GCL_HICONSM         -34 ; inline
487 : GCL_CBWNDEXTRA      -18 ; inline
488 : GCL_CBCLSEXTRA      -20 ; inline
489 : GCL_STYLE           -26 ; inline
490 : GCW_ATOM            -32 ; inline
492 : GCLP_MENUNAME       -8 ; inline
493 : GCLP_HBRBACKGROUND  -10 ; inline
494 : GCLP_HCURSOR        -12 ; inline
495 : GCLP_HICON          -14 ; inline
496 : GCLP_HMODULE        -16 ; inline
497 : GCLP_WNDPROC        -24 ; inline
498 : GCLP_HICONSM        -34 ; inline
500 : MB_ICONASTERISK    HEX: 00000040 ; inline
501 : MB_ICONEXCLAMATION HEX: 00000030 ; inline
502 : MB_ICONHAND        HEX: 00000010 ; inline
503 : MB_ICONQUESTION    HEX: 00000020 ; inline
504 : MB_OK              HEX: 00000000 ; inline
506 ALIAS: FVIRTKEY TRUE
507 : FNOINVERT 2 ; inline
508 : FSHIFT 4 ; inline
509 : FCONTROL 8 ; inline
510 : FALT 16 ; inline
512 : MAPVK_VK_TO_VSC 0 ; inline
513 : MAPVK_VSC_TO_VK 1 ; inline
514 : MAPVK_VK_TO_CHAR 2 ; inline
515 : MAPVK_VSC_TO_VK_EX 3 ; inline
516 : MAPVK_VK_TO_VSC_EX 3 ; inline
518 : TME_HOVER 1 ; inline
519 : TME_LEAVE 2 ; inline
520 : TME_NONCLIENT 16 ; inline
521 : TME_QUERY HEX: 40000000 ; inline
522 : TME_CANCEL HEX: 80000000 ; inline
523 : HOVER_DEFAULT HEX: ffffffff ; inline
524 C-STRUCT: TRACKMOUSEEVENT
525     { "DWORD" "cbSize" }
526     { "DWORD" "dwFlags" }
527     { "HWND" "hwndTrack" }
528     { "DWORD" "dwHoverTime" } ;
529 TYPEDEF: TRACKMOUSEEVENT* LPTRACKMOUSEEVENT
531 : DBT_DEVICEARRIVAL HEX: 8000 ; inline
532 : DBT_DEVICEREMOVECOMPLETE HEX: 8004 ; inline
534 : DBT_DEVTYP_DEVICEINTERFACE 5 ; inline
536 : DEVICE_NOTIFY_WINDOW_HANDLE 0 ; inline
537 : DEVICE_NOTIFY_SERVICE_HANDLE 1 ; inline
539 : DEVICE_NOTIFY_ALL_INTERFACE_CLASSES 4 ; inline
541 C-STRUCT: DEV_BROADCAST_HDR
542     { "DWORD" "dbch_size" }
543     { "DWORD" "dbch_devicetype" }
544     { "DWORD" "dbch_reserved" } ;
545 C-STRUCT: DEV_BROADCAST_DEVICEW
546     { "DWORD" "dbcc_size" }
547     { "DWORD" "dbcc_devicetype" }
548     { "DWORD" "dbcc_reserved" }
549     { "GUID"  "dbcc_classguid" }
550     { "WCHAR[1]" "dbcc_name" } ;
552 LIBRARY: user32
554 FUNCTION: HKL ActivateKeyboardLayout ( HKL hkl, UINT Flags ) ;
555 FUNCTION: BOOL AdjustWindowRect ( LPRECT lpRect, DWORD dwStyle, BOOL bMenu ) ;
556 FUNCTION: BOOL AdjustWindowRectEx ( LPRECT lpRect, DWORD dwStyle, BOOL bMenu, DWORD dwExStyle ) ;
557 ! FUNCTION: AlignRects
558 ! FUNCTION: AllowForegroundActivation
559 ! FUNCTION: AllowSetForegroundWindow
560 ! FUNCTION: AnimateWindow
562 FUNCTION: BOOL AnyPopup ( ) ;
564 ! FUNCTION: AppendMenuA
565 ! FUNCTION: AppendMenuW
566 ! FUNCTION: ArrangeIconicWindows
567 ! FUNCTION: AttachThreadInput
568 ! FUNCTION: BeginDeferWindowPos
570 FUNCTION: HDC BeginPaint ( HWND hwnd, LPPAINTSTRUCT lpPaint ) ;
572 ! FUNCTION: BlockInput
573 ! FUNCTION: BringWindowToTop
574 ! FUNCTION: BroadcastSystemMessage
575 ! FUNCTION: BroadcastSystemMessageA
576 ! FUNCTION: BroadcastSystemMessageExA
577 ! FUNCTION: BroadcastSystemMessageExW
578 ! FUNCTION: BroadcastSystemMessageW
579 ! FUNCTION: BuildReasonArray
580 ! FUNCTION: CalcMenuBar
581 ! FUNCTION: CallMsgFilter
582 ! FUNCTION: CallMsgFilterA
583 ! FUNCTION: CallMsgFilterW
584 ! FUNCTION: CallNextHookEx
585 ! FUNCTION: CallWindowProcA
586 ! FUNCTION: CallWindowProcW
587 ! FUNCTION: CascadeChildWindows
588 ! FUNCTION: CascadeWindows
589 ! FUNCTION: ChangeClipboardChain
590 ! FUNCTION: ChangeDisplaySettingsA
591 ! FUNCTION: ChangeDisplaySettingsExA
592 ! FUNCTION: ChangeDisplaySettingsExW
593 ! FUNCTION: ChangeDisplaySettingsW
594 ! FUNCTION: ChangeMenuA
595 ! FUNCTION: ChangeMenuW
596 ! FUNCTION: CharLowerA
597 ! FUNCTION: CharLowerBuffA
598 ! FUNCTION: CharLowerBuffW
599 ! FUNCTION: CharLowerW
600 ! FUNCTION: CharNextA
601 ! FUNCTION: CharNextExA
602 ! FUNCTION: CharNextW
603 ! FUNCTION: CharPrevA
604 ! FUNCTION: CharPrevExA
605 ! FUNCTION: CharPrevW
606 ! FUNCTION: CharToOemA
607 ! FUNCTION: CharToOemBuffA
608 ! FUNCTION: CharToOemBuffW
609 ! FUNCTION: CharToOemW
610 ! FUNCTION: CharUpperA
611 ! FUNCTION: CharUpperBuffA
612 ! FUNCTION: CharUpperBuffW
613 ! FUNCTION: CharUpperW
614 ! FUNCTION: CheckDlgButton
615 ! FUNCTION: CheckMenuItem
616 ! FUNCTION: CheckMenuRadioItem
617 ! FUNCTION: CheckRadioButton
618 FUNCTION: HWND ChildWindowFromPoint ( HWND hWndParent, POINT point ) ;
619 ! FUNCTION: ChildWindowFromPointEx
620 ! FUNCTION: ClientThreadSetup
621 ! FUNCTION: ClientToScreen
622 ! FUNCTION: CliImmSetHotKey
623 ! FUNCTION: ClipCursor
624 FUNCTION: BOOL CloseClipboard ( ) ;
625 ! FUNCTION: CloseDesktop
626 ! FUNCTION: CloseWindow
627 ! FUNCTION: CloseWindowStation
628 ! FUNCTION: CopyAcceleratorTableA
629 FUNCTION: int CopyAcceleratorTableW ( HACCEL hAccelSrc, LPACCEL lpAccelDst, int cAccelEntries ) ;
630 ALIAS: CopyAcceleratorTable CopyAcceleratorTableW
631 ! FUNCTION: CopyIcon
632 ! FUNCTION: CopyImage
633 ! FUNCTION: CopyRect
634 ! FUNCTION: CountClipboardFormats
635 ! FUNCTION: CreateAcceleratorTableA
636 FUNCTION: HACCEL CreateAcceleratorTableW ( LPACCEL lpaccl, int cEntries ) ;
637 ALIAS: CreateAcceleratorTable CreateAcceleratorTableW
638 ! FUNCTION: CreateCaret
639 ! FUNCTION: CreateCursor
640 ! FUNCTION: CreateDesktopA
641 ! FUNCTION: CreateDesktopW
642 ! FUNCTION: CreateDialogIndirectParamA
643 ! FUNCTION: CreateDialogIndirectParamAorW
644 ! FUNCTION: CreateDialogIndirectParamW
645 ! FUNCTION: CreateDialogParamA
646 ! FUNCTION: CreateDialogParamW
647 ! FUNCTION: CreateIcon
648 ! FUNCTION: CreateIconFromResource
649 ! FUNCTION: CreateIconFromResourceEx
650 ! FUNCTION: CreateIconIndirect
651 ! FUNCTION: CreateMDIWindowA
652 ! FUNCTION: CreateMDIWindowW
653 ! FUNCTION: CreateMenu
654 ! FUNCTION: CreatePopupMenu
655 ! FUNCTION: CreateSystemThreads
657 FUNCTION: HWND CreateWindowExW (
658                 DWORD dwExStyle,
659                 LPCTSTR lpClassName,
660                 LPCTSTR lpWindowName,
661                 DWORD dwStyle,
662                 uint X,
663                 uint Y,
664                 uint nWidth,
665                 uint nHeight,
666                 HWND hWndParent,
667                 HMENU hMenu,
668                 HINSTANCE hInstance,
669                 LPVOID lpParam ) ;
671 ALIAS: CreateWindowEx CreateWindowExW
673 : CreateWindow ( a b c d e f g h i j k -- hwnd ) 0 12 -nrot CreateWindowEx ; inline
676 ! FUNCTION: CreateWindowStationA
677 ! FUNCTION: CreateWindowStationW
678 ! FUNCTION: CsrBroadcastSystemMessageExW
679 ! FUNCTION: CtxInitUser32
680 ! FUNCTION: DdeAbandonTransaction
681 ! FUNCTION: DdeAccessData
682 ! FUNCTION: DdeAddData
683 ! FUNCTION: DdeClientTransaction
684 ! FUNCTION: DdeCmpStringHandles
685 ! FUNCTION: DdeConnect
686 ! FUNCTION: DdeConnectList
687 ! FUNCTION: DdeCreateDataHandle
688 ! FUNCTION: DdeCreateStringHandleA
689 ! FUNCTION: DdeCreateStringHandleW
690 ! FUNCTION: DdeDisconnect
691 ! FUNCTION: DdeDisconnectList
692 ! FUNCTION: DdeEnableCallback
693 ! FUNCTION: DdeFreeDataHandle
694 ! FUNCTION: DdeFreeStringHandle
695 ! FUNCTION: DdeGetData
696 ! FUNCTION: DdeGetLastError
697 ! FUNCTION: DdeGetQualityOfService
698 ! FUNCTION: DdeImpersonateClient
699 ! FUNCTION: DdeInitializeA
700 ! FUNCTION: DdeInitializeW
701 ! FUNCTION: DdeKeepStringHandle
702 ! FUNCTION: DdeNameService
703 ! FUNCTION: DdePostAdvise
704 ! FUNCTION: DdeQueryConvInfo
705 ! FUNCTION: DdeQueryNextServer
706 ! FUNCTION: DdeQueryStringA
707 ! FUNCTION: DdeQueryStringW
708 ! FUNCTION: DdeReconnect
709 ! FUNCTION: DdeSetQualityOfService
710 ! FUNCTION: DdeSetUserHandle
711 ! FUNCTION: DdeUnaccessData
712 ! FUNCTION: DdeUninitialize
713 ! FUNCTION: DefDlgProcA
714 ! FUNCTION: DefDlgProcW
715 ! FUNCTION: DeferWindowPos
716 ! FUNCTION: DefFrameProcA
717 ! FUNCTION: DefFrameProcW
718 ! FUNCTION: DefMDIChildProcA
719 ! FUNCTION: DefMDIChildProcW
720 ! FUNCTION: DefRawInputProc
721 FUNCTION: LRESULT DefWindowProcW ( HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam ) ;
722 ALIAS: DefWindowProc DefWindowProcW
723 ! FUNCTION: DeleteMenu
724 ! FUNCTION: DeregisterShellHookWindow
725 FUNCTION: BOOL DestroyAcceleratorTable ( HACCEL hAccel ) ;
726 ! FUNCTION: DestroyCaret
727 ! FUNCTION: DestroyCursor
728 ! FUNCTION: DestroyIcon
729 ! FUNCTION: DestroyMenu
730 ! FUNCTION: DestroyReasons
731 FUNCTION: BOOL DestroyWindow ( HWND hWnd ) ;
732 ! FUNCTION: DeviceEventWorker
733 ! FUNCTION: DialogBoxIndirectParamA
734 ! FUNCTION: DialogBoxIndirectParamAorW
735 ! FUNCTION: DialogBoxIndirectParamW
736 ! FUNCTION: DialogBoxParamA
737 ! FUNCTION: DialogBoxParamW
738 ! FUNCTION: DisableProcessWindowsGhosting
740 FUNCTION: LONG DispatchMessageW ( MSG* lpMsg ) ;
741 ALIAS: DispatchMessage DispatchMessageW
743 ! FUNCTION: DisplayExitWindowsWarnings
744 ! FUNCTION: DlgDirListA
745 ! FUNCTION: DlgDirListComboBoxA
746 ! FUNCTION: DlgDirListComboBoxW
747 ! FUNCTION: DlgDirListW
748 ! FUNCTION: DlgDirSelectComboBoxExA
749 ! FUNCTION: DlgDirSelectComboBoxExW
750 ! FUNCTION: DlgDirSelectExA
751 ! FUNCTION: DlgDirSelectExW
752 ! FUNCTION: DragDetect
753 ! FUNCTION: DragObject
756 FUNCTION: BOOL DrawAnimatedRects ( HWND hWnd, int idAni, RECT* lprcFrom, RECT* lprcTo ) ;
757 ! FUNCTION: BOOL DrawCaption ( HWND hWnd, HDC hdc, LPRECT lprc, UINT uFlags ) ;
759 ! FUNCTION: DrawEdge
760 ! FUNCTION: DrawFocusRect
761 ! FUNCTION: DrawFrame
762 ! FUNCTION: DrawFrameControl
764 FUNCTION: BOOL DrawIcon ( HDC hDC, int X, int Y, HICON hIcon ) ;
766 ! FUNCTION: DrawIconEx
767 ! FUNCTION: DrawMenuBar
768 ! FUNCTION: DrawMenuBarTemp
769 ! FUNCTION: DrawStateA
770 ! FUNCTION: DrawStateW
771 ! FUNCTION: DrawTextA
772 ! FUNCTION: DrawTextExA
773 ! FUNCTION: DrawTextExW
774 ! FUNCTION: DrawTextW
775 ! FUNCTION: EditWndProc
776 FUNCTION: BOOL EmptyClipboard ( ) ;
777 ! FUNCTION: EnableMenuItem
778 ! FUNCTION: EnableScrollBar
779 ! FUNCTION: EnableWindow
780 ! FUNCTION: EndDeferWindowPos
781 ! FUNCTION: EndDialog
782 ! FUNCTION: EndMenu
784 FUNCTION: BOOL EndPaint ( HWND hWnd, PAINTSTRUCT* lpPaint) ;
786 ! FUNCTION: EndTask
787 ! FUNCTION: EnterReaderModeHelper
788 ! FUNCTION: EnumChildWindows
789 FUNCTION: UINT EnumClipboardFormats ( UINT format ) ;
790 ! FUNCTION: EnumDesktopsA
791 ! FUNCTION: EnumDesktopsW
792 ! FUNCTION: EnumDesktopWindows
793 ! FUNCTION: EnumDisplayDevicesA
794 ! FUNCTION: EnumDisplayDevicesW
795 ! FUNCTION: EnumDisplayMonitors
796 ! FUNCTION: EnumDisplaySettingsA
797 ! FUNCTION: EnumDisplaySettingsExA
798 ! FUNCTION: EnumDisplaySettingsExW
799 ! FUNCTION: EnumDisplaySettingsW
800 ! FUNCTION: EnumPropsA
801 ! FUNCTION: EnumPropsExA
802 ! FUNCTION: EnumPropsExW
803 ! FUNCTION: EnumPropsW
804 ! FUNCTION: EnumThreadWindows
805 ! FUNCTION: EnumWindows
806 ! FUNCTION: EnumWindowStationsA
807 ! FUNCTION: EnumWindowStationsW
808 ! FUNCTION: EqualRect
809 ! FUNCTION: ExcludeUpdateRgn
810 ! FUNCTION: ExitWindowsEx
811 ! FUNCTION: FillRect
812 FUNCTION: HWND FindWindowA ( char* lpClassName, char* lpWindowName ) ;
813 FUNCTION: HWND FindWindowExA ( HWND hwndParent, HWND childAfter, char* lpClassName, char* lpWindowName ) ;
814 ! FUNCTION: FindWindowExW
815 ! FUNCTION: FindWindowW
816 ! FUNCTION: FlashWindow
817 ! FUNCTION: FlashWindowEx
818 ! FUNCTION: FrameRect
819 ! FUNCTION: FreeDDElParam
820 ! FUNCTION: GetActiveWindow
821 ! FUNCTION: GetAltTabInfo
822 ! FUNCTION: GetAltTabInfoA
823 ! FUNCTION: GetAltTabInfoW
824 ! FUNCTION: GetAncestor
825 ! FUNCTION: GetAppCompatFlags
826 ! FUNCTION: GetAppCompatFlags2
827 ! FUNCTION: GetAsyncKeyState
828 FUNCTION: HWND GetCapture ( ) ;
829 ! FUNCTION: GetCaretBlinkTime
830 ! FUNCTION: GetCaretPos
831 FUNCTION: BOOL GetClassInfoW ( HINSTANCE hInst, LPCWSTR lpszClass, LPWNDCLASS lpwcx ) ;
832 ALIAS: GetClassInfo GetClassInfoW
834 FUNCTION: BOOL GetClassInfoExW ( HINSTANCE hInst, LPCWSTR lpszClass, LPWNDCLASSEX lpwcx ) ;
835 ALIAS: GetClassInfoEx GetClassInfoExW
837 FUNCTION: ULONG_PTR GetClassLongW ( HWND hWnd, int nIndex ) ;
838 ALIAS: GetClassLong GetClassLongW
839 ALIAS: GetClassLongPtr GetClassLongW
842 ! FUNCTION: GetClassNameA
843 ! FUNCTION: GetClassNameW
844 ! FUNCTION: GetClassWord
845 FUNCTION: BOOL GetClientRect ( HWND hWnd, LPRECT lpRect ) ;
847 FUNCTION: HANDLE GetClipboardData ( UINT uFormat ) ;
849 ! FUNCTION: GetClipboardFormatNameA
850 ! FUNCTION: GetClipboardFormatNameW
851 FUNCTION: HWND GetClipboardOwner ( ) ;
852 FUNCTION: DWORD GetClipboardSequenceNumber ( ) ;
853 ! FUNCTION: GetClipboardViewer
854 ! FUNCTION: GetClipCursor
855 ! FUNCTION: GetComboBoxInfo
856 ! FUNCTION: GetCursor
857 ! FUNCTION: GetCursorFrameInfo
858 ! FUNCTION: GetCursorInfo
859 ! FUNCTION: GetCursorPos
860 FUNCTION: HDC GetDC ( HWND hWnd ) ;
861 FUNCTION: HDC GetDCEx ( HWND hWnd, HRGN hrgnClip, DWORD flags ) ;
862 ! FUNCTION: GetDesktopWindow
863 ! FUNCTION: GetDialogBaseUnits
864 ! FUNCTION: GetDlgCtrlID
865 ! FUNCTION: GetDlgItem
866 ! FUNCTION: GetDlgItemInt
867 ! FUNCTION: GetDlgItemTextA
868 ! FUNCTION: GetDlgItemTextW
869 FUNCTION: uint GetDoubleClickTime ( ) ;
870 FUNCTION: HWND GetFocus ( ) ;
871 ! FUNCTION: GetForegroundWindow
872 ! FUNCTION: GetGuiResources
873 ! FUNCTION: GetGUIThreadInfo
874 ! FUNCTION: GetIconInfo
875 ! FUNCTION: GetInputDesktop
876 ! FUNCTION: GetInputState
877 ! FUNCTION: GetInternalWindowPos
878 ! FUNCTION: GetKBCodePage
879 ! FUNCTION: GetKeyboardLayout
880 ! FUNCTION: GetKeyboardLayoutList
881 ! FUNCTION: GetKeyboardLayoutNameA
882 ! FUNCTION: GetKeyboardLayoutNameW
883 ! FUNCTION: GetKeyboardState
884 ! FUNCTION: GetKeyboardType
885 ! FUNCTION: GetKeyNameTextA
886 ! FUNCTION: GetKeyNameTextW
887 FUNCTION: SHORT GetKeyState ( int nVirtKey ) ;
888 ! FUNCTION: GetLastActivePopup
889 ! FUNCTION: GetLastInputInfo
890 ! FUNCTION: GetLayeredWindowAttributes
891 ! FUNCTION: GetListBoxInfo
892 ! FUNCTION: GetMenu
893 ! FUNCTION: GetMenuBarInfo
894 ! FUNCTION: GetMenuCheckMarkDimensions
895 ! FUNCTION: GetMenuContextHelpId
896 ! FUNCTION: GetMenuDefaultItem
897 ! FUNCTION: GetMenuInfo
898 ! FUNCTION: GetMenuItemCount
899 ! FUNCTION: GetMenuItemID
900 ! FUNCTION: GetMenuItemInfoA
901 ! FUNCTION: GetMenuItemInfoW
902 ! FUNCTION: GetMenuItemRect
903 ! FUNCTION: GetMenuState
904 ! FUNCTION: GetMenuStringA
905 ! FUNCTION: GetMenuStringW
907 FUNCTION: BOOL GetMessageW ( LPMSG lpMsg, HWND hWnd, UINT wMsgFilterMin, UINT wMsgFilterMax ) ;
908 ALIAS: GetMessage GetMessageW
910 ! FUNCTION: GetMessageExtraInfo
911 ! FUNCTION: GetMessagePos
912 ! FUNCTION: GetMessageTime
913 ! FUNCTION: GetMonitorInfoA
914 ! FUNCTION: GetMonitorInfoW
915 ! FUNCTION: GetMouseMovePointsEx
916 ! FUNCTION: GetNextDlgGroupItem
917 ! FUNCTION: GetNextDlgTabItem
918 ! FUNCTION: GetOpenClipboardWindow
919 FUNCTION: HWND GetParent ( HWND hWnd ) ;
920 FUNCTION: int GetPriorityClipboardFormat ( UINT* paFormatPriorityList, int cFormats ) ;
921 ! FUNCTION: GetProcessDefaultLayout
922 ! FUNCTION: GetProcessWindowStation
923 ! FUNCTION: GetProgmanWindow
924 ! FUNCTION: GetPropA
925 ! FUNCTION: GetPropW
926 ! FUNCTION: GetQueueStatus
927 ! FUNCTION: GetRawInputBuffer
928 ! FUNCTION: GetRawInputData
929 ! FUNCTION: GetRawInputDeviceInfoA
930 ! FUNCTION: GetRawInputDeviceInfoW
931 ! FUNCTION: GetRawInputDeviceList
932 ! FUNCTION: GetReasonTitleFromReasonCode
933 ! FUNCTION: GetRegisteredRawInputDevices
934 ! FUNCTION: GetScrollBarInfo
935 ! FUNCTION: GetScrollInfo
936 ! FUNCTION: GetScrollPos
937 ! FUNCTION: GetScrollRange
938 ! FUNCTION: GetShellWindow
939 ! FUNCTION: GetSubMenu
940 ! FUNCTION: GetSysColor
941 FUNCTION: HBRUSH GetSysColorBrush ( int nIndex ) ;
942 ! FUNCTION: GetSystemMenu
943 ! FUNCTION: GetSystemMetrics
944 ! FUNCTION: GetTabbedTextExtentA
945 ! FUNCTION: GetTabbedTextExtentW
946 ! FUNCTION: GetTaskmanWindow
947 ! FUNCTION: GetThreadDesktop
948 ! FUNCTION: GetTitleBarInfo
951 FUNCTION: HWND GetTopWindow ( HWND hWnd ) ;
952 ! FUNCTION: BOOL GetUpdateRect ( HWND hWnd, LPRECT lpRect, BOOL bErase ) ;
953 FUNCTION: int GetUpdateRgn ( HWND hWnd, HRGN hRgn, BOOL bErase ) ;
956 ! FUNCTION: GetUserObjectInformationA
957 ! FUNCTION: GetUserObjectInformationW
958 ! FUNCTION: GetUserObjectSecurity
959 FUNCTION: HWND GetWindow ( HWND hWnd, UINT uCmd ) ;
960 ! FUNCTION: GetWindowContextHelpId
961 ! FUNCTION: GetWindowDC
962 ! FUNCTION: GetWindowInfo
963 ! FUNCTION: GetWindowLongA
964 ! FUNCTION: GetWindowLongW
965 ! FUNCTION: GetWindowModuleFileName
966 ! FUNCTION: GetWindowModuleFileNameA
967 ! FUNCTION: GetWindowModuleFileNameW
968 ! FUNCTION: GetWindowPlacement
969 FUNCTION: BOOL GetWindowRect ( HWND hWnd, LPRECT lpRect ) ;
970 ! FUNCTION: GetWindowRgn
971 ! FUNCTION: GetWindowRgnBox
972 FUNCTION: int GetWindowTextA ( HWND hWnd, char* lpString, int nMaxCount ) ;
973 ! FUNCTION: GetWindowTextLengthA
974 ! FUNCTION: GetWindowTextLengthW
975 ! FUNCTION: GetWindowTextW
976 FUNCTION: DWORD GetWindowThreadProcessId ( HWND hWnd, void* lpdwProcessId ) ;
977 ! FUNCTION: GetWindowWord
978 ! FUNCTION: GetWinStationInfo
979 ! FUNCTION: GrayStringA
980 ! FUNCTION: GrayStringW
981 ! FUNCTION: HideCaret
982 ! FUNCTION: HiliteMenuItem
983 ! FUNCTION: ImpersonateDdeClientWindow
984 ! FUNCTION: IMPGetIMEA
985 ! FUNCTION: IMPGetIMEW
986 ! FUNCTION: IMPQueryIMEA
987 ! FUNCTION: IMPQueryIMEW
988 ! FUNCTION: IMPSetIMEA
989 ! FUNCTION: IMPSetIMEW
990 ! FUNCTION: InflateRect
991 ! FUNCTION: InitializeLpkHooks
992 ! FUNCTION: InitializeWin32EntryTable
993 ! FUNCTION: InSendMessage
994 ! FUNCTION: InSendMessageEx
995 ! FUNCTION: InsertMenuA
996 ! FUNCTION: InsertMenuItemA
997 ! FUNCTION: InsertMenuItemW
998 ! FUNCTION: InsertMenuW
999 ! FUNCTION: InternalGetWindowText
1000 ! FUNCTION: IntersectRect
1001 ! FUNCTION: InvalidateRect
1002 ! FUNCTION: InvalidateRgn
1003 ! FUNCTION: InvertRect
1004 ! FUNCTION: IsCharAlphaA
1005 ! FUNCTION: IsCharAlphaNumericA
1006 ! FUNCTION: IsCharAlphaNumericW
1007 ! FUNCTION: IsCharAlphaW
1008 ! FUNCTION: IsCharLowerA
1009 ! FUNCTION: IsCharLowerW
1010 ! FUNCTION: IsCharUpperA
1011 ! FUNCTION: IsCharUpperW
1012 FUNCTION: BOOL IsChild ( HWND hWndParent, HWND hWnd ) ;
1013 FUNCTION: BOOL IsClipboardFormatAvailable ( UINT format ) ;
1014 ! FUNCTION: IsDialogMessage
1015 ! FUNCTION: IsDialogMessageA
1016 ! FUNCTION: IsDialogMessageW
1017 ! FUNCTION: IsDlgButtonChecked
1018 FUNCTION: BOOL IsGUIThread ( BOOL bConvert ) ;
1019 FUNCTION: BOOL IsHungAppWindow ( HWND hWnd ) ;
1020 FUNCTION: BOOL IsIconic ( HWND hWnd ) ;
1021 FUNCTION: BOOL IsMenu ( HMENU hMenu ) ;
1022 ! FUNCTION: BOOL IsRectEmpty
1023 ! FUNCTION: BOOL IsServerSideWindow
1024 FUNCTION: BOOL IsWindow ( HWND hWnd ) ;
1025 ! FUNCTION: BOOL IsWindowEnabled
1026 ! FUNCTION: BOOL IsWindowInDestroy
1027 FUNCTION: BOOL IsWindowUnicode ( HWND hWnd ) ;
1028 FUNCTION: BOOL IsWindowVisible ( HWND hWnd ) ;
1029 ! FUNCTION: BOOL IsWinEventHookInstalled
1030 FUNCTION: BOOL IsZoomed ( HWND hWnd ) ;
1031 ! FUNCTION: keybd_event
1032 ! FUNCTION: KillSystemTimer
1033 ! FUNCTION: KillTimer
1034 ! FUNCTION: LoadAcceleratorsA
1035 FUNCTION: HACCEL LoadAcceleratorsW ( HINSTANCE hInstance, LPCTSTR lpTableName ) ;
1036 ! FUNCTION: LoadBitmapA
1037 ! FUNCTION: LoadBitmapW
1038 ! FUNCTION: LoadCursorFromFileA
1039 ! FUNCTION: LoadCursorFromFileW
1042 ! FUNCTION: HCURSOR LoadCursorW ( HINSTANCE hInstance, LPCWSTR lpCursorName ) ;
1043 FUNCTION: HCURSOR LoadCursorW ( HINSTANCE hInstance, ushort lpCursorName ) ;
1044 ALIAS: LoadCursor LoadCursorW
1046 ! FUNCTION: HICON LoadIconA ( HINSTANCE hInstance, LPCTSTR lpIconName ) ;
1047 FUNCTION: HICON LoadIconW ( HINSTANCE hInstance, LPCTSTR lpIconName ) ;
1048 ALIAS: LoadIcon LoadIconW
1050 ! FUNCTION: LoadImageA
1051 ! FUNCTION: LoadImageW
1052 ! FUNCTION: LoadKeyboardLayoutA
1053 ! FUNCTION: LoadKeyboardLayoutEx
1054 ! FUNCTION: LoadKeyboardLayoutW
1055 ! FUNCTION: LoadLocalFonts
1056 ! FUNCTION: LoadMenuA
1057 ! FUNCTION: LoadMenuIndirectA
1058 ! FUNCTION: LoadMenuIndirectW
1059 ! FUNCTION: LoadMenuW
1060 ! FUNCTION: LoadRemoteFonts
1061 ! FUNCTION: LoadStringA
1062 ! FUNCTION: LoadStringW
1063 ! FUNCTION: LockSetForegroundWindow
1064 ! FUNCTION: LockWindowStation
1065 ! FUNCTION: LockWindowUpdate
1066 ! FUNCTION: LockWorkStation
1067 ! FUNCTION: LookupIconIdFromDirectory
1068 ! FUNCTION: LookupIconIdFromDirectoryEx
1069 ! FUNCTION: MapDialogRect
1071 FUNCTION: UINT MapVirtualKeyW ( UINT uCode, UINT uMapType ) ;
1072 ALIAS: MapVirtualKey MapVirtualKeyW
1074 FUNCTION: UINT MapVirtualKeyExW ( UINT uCode, UINT uMapType, HKL dwhkl ) ;
1075 ALIAS: MapVirtualKeyEx MapVirtualKeyExW
1077 ! FUNCTION: MapWindowPoints
1078 ! FUNCTION: MB_GetString
1079 ! FUNCTION: MBToWCSEx
1080 ! FUNCTION: MenuItemFromPoint
1081 ! FUNCTION: MenuWindowProcA
1082 ! FUNCTION: MenuWindowProcW
1084 ! -1 is Simple beep
1085 FUNCTION: BOOL MessageBeep ( UINT uType ) ;
1087 FUNCTION: int MessageBoxA ( 
1088                 HWND hWnd,
1089                 LPCSTR lpText,
1090                 LPCSTR lpCaption,
1091                 UINT uType ) ;
1093 FUNCTION: int MessageBoxW (
1094                 HWND hWnd,
1095                 LPCWSTR lpText,
1096                 LPCWSTR lpCaption,
1097                 UINT uType) ;
1099 FUNCTION: int MessageBoxExA ( HWND hWnd,
1100                 LPCSTR lpText,
1101                 LPCSTR lpCaption,
1102                 UINT uType,
1103                 WORD wLanguageId
1104                 ) ;
1106 FUNCTION: int MessageBoxExW (
1107                 HWND hWnd,
1108                 LPCWSTR lpText,
1109                 LPCWSTR lpCaption,
1110                 UINT uType,
1111                 WORD wLanguageId ) ;
1113 ! FUNCTION: int MessageBoxIndirectA ( MSGBOXPARAMSA* params ) ;
1114 ! FUNCTION: int MessageBoxIndirectW ( MSGBOXPARAMSW* params ) ;
1117 ALIAS: MessageBox MessageBoxW
1119 ALIAS: MessageBoxEx MessageBoxExW
1121 ! : MessageBoxIndirect
1122     ! \ MessageBoxIndirectW \ MessageBoxIndirectA unicode-exec ;
1124 ! FUNCTION: MessageBoxTimeoutA ! dllexported, not in header
1125 ! FUNCTION: MessageBoxTimeoutW ! dllexported, not in header
1127 ! FUNCTION: ModifyMenuA
1128 ! FUNCTION: ModifyMenuW
1129 ! FUNCTION: MonitorFromPoint
1130 ! FUNCTION: MonitorFromRect
1131 ! FUNCTION: MonitorFromWindow
1132 ! FUNCTION: mouse_event
1135 FUNCTION: BOOL MoveWindow (
1136     HWND hWnd,
1137     int X,
1138     int Y,
1139     int nWidth,
1140     int nHeight,
1141     BOOL bRepaint ) ;
1143 ! FUNCTION: MsgWaitForMultipleObjects
1144 ! FUNCTION: MsgWaitForMultipleObjectsEx
1145 ! FUNCTION: NotifyWinEvent
1146 ! FUNCTION: OemKeyScan
1147 ! FUNCTION: OemToCharA
1148 ! FUNCTION: OemToCharBuffA
1149 ! FUNCTION: OemToCharBuffW
1150 ! FUNCTION: OemToCharW
1151 ! FUNCTION: OffsetRect
1152 FUNCTION: BOOL OpenClipboard ( HWND hWndNewOwner ) ;
1153 ! FUNCTION: OpenDesktopA
1154 ! FUNCTION: OpenDesktopW
1155 ! FUNCTION: OpenIcon
1156 ! FUNCTION: OpenInputDesktop
1157 ! FUNCTION: OpenWindowStationA
1158 ! FUNCTION: OpenWindowStationW
1159 ! FUNCTION: PackDDElParam
1160 ! FUNCTION: PaintDesktop
1161 ! FUNCTION: PaintMenuBar
1162 FUNCTION: BOOL PeekMessageA ( LPMSG lpMsg, HWND hWnd, UINT wMsgFilterMin, UINT wMsgFilterMax, UINT wRemoveMsg ) ;
1163 FUNCTION: BOOL PeekMessageW ( LPMSG lpMsg, HWND hWnd, UINT wMsgFilterMin, UINT wMsgFilterMax, UINT wRemoveMsg ) ;
1164 ALIAS: PeekMessage PeekMessageW
1166 ! FUNCTION: PostMessageA
1167 ! FUNCTION: PostMessageW
1168 FUNCTION: void PostQuitMessage ( int nExitCode ) ;
1169 ! FUNCTION: PostThreadMessageA
1170 ! FUNCTION: PostThreadMessageW
1171 ! FUNCTION: PrintWindow
1172 ! FUNCTION: PrivateExtractIconExA
1173 ! FUNCTION: PrivateExtractIconExW
1174 ! FUNCTION: PrivateExtractIconsA
1175 ! FUNCTION: PrivateExtractIconsW
1176 ! FUNCTION: PrivateSetDbgTag
1177 ! FUNCTION: PrivateSetRipFlags
1178 ! FUNCTION: PtInRect
1179 ! FUNCTION: QuerySendMessage
1180 ! FUNCTION: QueryUserCounters
1181 ! FUNCTION: RealChildWindowFromPoint
1182 ! FUNCTION: RealGetWindowClass
1183 ! FUNCTION: RealGetWindowClassA
1184 ! FUNCTION: RealGetWindowClassW
1185 ! FUNCTION: ReasonCodeNeedsBugID
1186 ! FUNCTION: ReasonCodeNeedsComment
1187 ! FUNCTION: RecordShutdownReason
1188 ! FUNCTION: RedrawWindow
1190 FUNCTION: ATOM RegisterClassA ( WNDCLASS* lpWndClass ) ;
1191 FUNCTION: ATOM RegisterClassW ( WNDCLASS* lpWndClass ) ;
1192 FUNCTION: ATOM RegisterClassExA ( WNDCLASSEX* lpwcx ) ;
1193 FUNCTION: ATOM RegisterClassExW ( WNDCLASSEX* lpwcx ) ;
1195 ALIAS: RegisterClass RegisterClassW
1196 ALIAS: RegisterClassEx RegisterClassExW
1198 ! FUNCTION: RegisterClipboardFormatA
1199 ! FUNCTION: RegisterClipboardFormatW
1200 FUNCTION: HANDLE RegisterDeviceNotificationA ( HANDLE hRecipient, LPVOID NotificationFilter, DWORD Flags ) ;
1201 FUNCTION: HANDLE RegisterDeviceNotificationW ( HANDLE hRecipient, LPVOID NotificationFilter, DWORD Flags ) ;
1202 ALIAS: RegisterDeviceNotification RegisterDeviceNotificationW
1203 ! FUNCTION: RegisterHotKey
1204 ! FUNCTION: RegisterLogonProcess
1205 ! FUNCTION: RegisterMessagePumpHook
1206 ! FUNCTION: RegisterRawInputDevices
1207 ! FUNCTION: RegisterServicesProcess
1208 ! FUNCTION: RegisterShellHookWindow
1209 ! FUNCTION: RegisterSystemThread
1210 ! FUNCTION: RegisterTasklist
1211 ! FUNCTION: RegisterUserApiHook
1212 ! FUNCTION: RegisterWindowMessageA
1213 ! FUNCTION: RegisterWindowMessageW
1214 FUNCTION: BOOL ReleaseCapture ( ) ;
1215 FUNCTION: int ReleaseDC ( HWND hWnd, HDC hDC ) ;
1216 ! FUNCTION: RemoveMenu
1217 ! FUNCTION: RemovePropA
1218 ! FUNCTION: RemovePropW
1219 ! FUNCTION: ReplyMessage
1220 ! FUNCTION: ResolveDesktopForWOW
1221 ! FUNCTION: ReuseDDElParam
1222 ! FUNCTION: ScreenToClient
1223 ! FUNCTION: ScrollChildren
1224 ! FUNCTION: ScrollDC
1225 ! FUNCTION: ScrollWindow
1226 ! FUNCTION: ScrollWindowEx
1227 ! FUNCTION: SendDlgItemMessageA
1228 ! FUNCTION: SendDlgItemMessageW
1229 ! FUNCTION: SendIMEMessageExA
1230 ! FUNCTION: SendIMEMessageExW
1231 ! FUNCTION: UINT SendInput ( UINT nInputs, LPINPUT pInputs, int cbSize ) ;
1232 FUNCTION: LRESULT SendMessageW ( HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam ) ;
1233 ALIAS: SendMessage SendMessageW
1234 ! FUNCTION: SendMessageCallbackA
1235 ! FUNCTION: SendMessageCallbackW
1236 ! FUNCTION: SendMessageTimeoutA
1237 ! FUNCTION: SendMessageTimeoutW
1238 ! FUNCTION: SendNotifyMessageA
1239 ! FUNCTION: SendNotifyMessageW
1240 ! FUNCTION: SetActiveWindow
1241 FUNCTION: HWND SetCapture ( HWND hWnd ) ;
1242 ! FUNCTION: SetCaretBlinkTime
1243 ! FUNCTION: SetCaretPos
1245 FUNCTION: ULONG_PTR SetClassLongW ( HWND hWnd, int nIndex, LONG_PTR dwNewLong ) ;
1246 ALIAS: SetClassLongPtr SetClassLongW
1247 ALIAS: SetClassLong SetClassLongW
1249 ! FUNCTION: SetClassWord
1250 FUNCTION: HANDLE SetClipboardData ( UINT uFormat, HANDLE hMem ) ;
1251 ! FUNCTION: SetClipboardViewer
1252 ! FUNCTION: SetConsoleReserveKeys
1253 ! FUNCTION: SetCursor
1254 ! FUNCTION: SetCursorContents
1255 ! FUNCTION: SetCursorPos
1256 ! FUNCTION: SetDebugErrorLevel
1257 ! FUNCTION: SetDeskWallpaper
1258 ! FUNCTION: SetDlgItemInt
1259 ! FUNCTION: SetDlgItemTextA
1260 ! FUNCTION: SetDlgItemTextW
1261 ! FUNCTION: SetDoubleClickTime
1262 FUNCTION: HWND SetFocus ( HWND hWnd ) ;
1263 FUNCTION: BOOL SetForegroundWindow ( HWND hWnd ) ;
1264 ! FUNCTION: SetInternalWindowPos
1265 ! FUNCTION: SetKeyboardState
1266 ! type is ignored
1267 FUNCTION: void SetLastErrorEx ( DWORD dwErrCode, DWORD dwType ) ; 
1268 : SetLastError ( errcode -- ) 0 SetLastErrorEx ; inline
1269 ! FUNCTION: SetLayeredWindowAttributes
1270 ! FUNCTION: SetLogonNotifyWindow
1271 ! FUNCTION: SetMenu
1272 ! FUNCTION: SetMenuContextHelpId
1273 ! FUNCTION: SetMenuDefaultItem
1274 ! FUNCTION: SetMenuInfo
1275 ! FUNCTION: SetMenuItemBitmaps
1276 ! FUNCTION: SetMenuItemInfoA
1277 ! FUNCTION: SetMenuItemInfoW
1278 ! FUNCTION: SetMessageExtraInfo
1279 ! FUNCTION: SetMessageQueue
1280 ! FUNCTION: SetParent
1281 ! FUNCTION: SetProcessDefaultLayout
1282 ! FUNCTION: SetProcessWindowStation
1283 ! FUNCTION: SetProgmanWindow
1284 ! FUNCTION: SetPropA
1285 ! FUNCTION: SetPropW
1286 ! FUNCTION: SetRect
1287 ! FUNCTION: SetRectEmpty
1288 ! FUNCTION: SetScrollInfo
1289 ! FUNCTION: SetScrollPos
1290 ! FUNCTION: SetScrollRange
1291 ! FUNCTION: SetShellWindow
1292 ! FUNCTION: SetShellWindowEx
1293 ! FUNCTION: SetSysColors
1294 ! FUNCTION: SetSysColorsTemp
1295 ! FUNCTION: SetSystemCursor
1296 ! FUNCTION: SetSystemMenu
1297 ! FUNCTION: SetSystemTimer
1298 ! FUNCTION: SetTaskmanWindow
1299 ! FUNCTION: SetThreadDesktop
1300 ! FUNCTION: SetTimer
1301 ! FUNCTION: SetUserObjectInformationA
1302 ! FUNCTION: SetUserObjectInformationW
1303 ! FUNCTION: SetUserObjectSecurity
1304 ! FUNCTION: SetWindowContextHelpId
1305 ! FUNCTION: SetWindowLongA
1306 ! FUNCTION: SetWindowLongW
1307 ! FUNCTION: SetWindowPlacement
1308 FUNCTION: BOOL SetWindowPos ( HWND hWnd, HWND hWndInsertAfter, int X, int Y, int cx, int cy, UINT uFlags ) ;
1310 : HWND_BOTTOM ( -- alien ) 1 <alien> ;
1311 : HWND_NOTOPMOST ( -- alien ) -2 <alien> ;
1312 : HWND_TOP ( -- alien ) 0 <alien> ;
1313 : HWND_TOPMOST ( -- alien ) -1 <alien> ;
1315 ! FUNCTION: SetWindowRgn
1316 ! FUNCTION: SetWindowsHookA
1317 ! FUNCTION: SetWindowsHookExA
1318 ! FUNCTION: SetWindowsHookExW
1319 ! FUNCTION: SetWindowsHookW
1320 ! FUNCTION: SetWindowStationUser
1321 ! FUNCTION: SetWindowTextA
1322 ! FUNCTION: SetWindowTextW
1323 ! FUNCTION: SetWindowWord
1324 ! FUNCTION: SetWinEventHook
1325 ! FUNCTION: ShowCaret
1326 ! FUNCTION: ShowCursor
1327 ! FUNCTION: ShowOwnedPopups
1328 ! FUNCTION: ShowScrollBar
1329 ! FUNCTION: ShowStartGlass
1331 FUNCTION: BOOL ShowWindow ( HWND hWnd, int nCmdShow ) ;
1333 ! FUNCTION: ShowWindowAsync
1334 ! FUNCTION: SoftModalMessageBox
1335 ! FUNCTION: SubtractRect
1336 ! FUNCTION: SwapMouseButton
1337 ! FUNCTION: SwitchDesktop
1338 ! FUNCTION: SwitchToThisWindow
1339 ! FUNCTION: SystemParametersInfoA
1340 ! FUNCTION: SystemParametersInfoW
1341 ! FUNCTION: TabbedTextOutA
1342 ! FUNCTION: TabbedTextOutW
1343 ! FUNCTION: TileChildWindows
1344 ! FUNCTION: TileWindows
1345 ! FUNCTION: ToAscii
1346 ! FUNCTION: ToAsciiEx
1347 ! FUNCTION: ToUnicode
1348 ! FUNCTION: ToUnicodeEx
1349 FUNCTION: BOOL TrackMouseEvent ( LPTRACKMOUSEEVENT lpEventTrack ) ;
1350 ! FUNCTION: TrackPopupMenu
1351 ! FUNCTION: TrackPopupMenuEx
1352 ! FUNCTION: TranslateAccelerator
1353 ! FUNCTION: TranslateAcceleratorA
1354 FUNCTION: int TranslateAcceleratorW ( HWND hWnd, HACCEL hAccTable, LPMSG lpMsg ) ;
1355 ALIAS: TranslateAccelerator TranslateAcceleratorW
1357 ! FUNCTION: TranslateMDISysAccel
1358 FUNCTION: BOOL TranslateMessage ( MSG* lpMsg ) ;
1360 ! FUNCTION: UnhookWindowsHook
1361 ! FUNCTION: UnhookWindowsHookEx
1362 ! FUNCTION: UnhookWinEvent
1363 ! FUNCTION: UnionRect
1364 ! FUNCTION: UnloadKeyboardLayout
1365 ! FUNCTION: UnlockWindowStation
1366 ! FUNCTION: UnpackDDElParam
1367 FUNCTION: BOOL UnregisterClassW ( LPCWSTR lpClassName, HINSTANCE hInstance ) ;
1368 ALIAS: UnregisterClass UnregisterClassW
1369 FUNCTION: BOOL UnregisterDeviceNotification ( HANDLE hDevNotify ) ;
1370 ! FUNCTION: UnregisterHotKey
1371 ! FUNCTION: UnregisterMessagePumpHook
1372 ! FUNCTION: UnregisterUserApiHook
1373 ! FUNCTION: UpdateLayeredWindow
1374 ! FUNCTION: UpdatePerUserSystemParameters
1376 FUNCTION: BOOL UpdateWindow ( HWND hWnd ) ;
1378 ! FUNCTION: User32InitializeImmEntryTable
1379 ! FUNCTION: UserClientDllInitialize
1380 ! FUNCTION: UserHandleGrantAccess
1381 ! FUNCTION: UserLpkPSMTextOut
1382 ! FUNCTION: UserLpkTabbedTextOut
1383 ! FUNCTION: UserRealizePalette
1384 ! FUNCTION: UserRegisterWowHandlers
1385 ! FUNCTION: ValidateRect
1386 ! FUNCTION: ValidateRgn
1387 ! FUNCTION: VkKeyScanA
1388 ! FUNCTION: VkKeyScanExA
1389 ! FUNCTION: VkKeyScanExW
1390 ! FUNCTION: VkKeyScanW
1391 ! FUNCTION: VRipOutput
1392 ! FUNCTION: VTagOutput
1393 ! FUNCTION: WaitForInputIdle
1394 ! FUNCTION: WaitMessage
1395 ! FUNCTION: WCSToMBEx
1396 ! FUNCTION: Win32PoolAllocationStats
1397 ! FUNCTION: WindowFromDC
1398 ! FUNCTION: WindowFromPoint
1399 ! FUNCTION: WinHelpA
1400 ! FUNCTION: WinHelpW
1401 ! FUNCTION: WINNLSEnableIME
1402 ! FUNCTION: WINNLSGetEnableStatus
1403 ! FUNCTION: WINNLSGetIMEHotkey
1404 ! FUNCTION: wsprintfA
1405 ! FUNCTION: wsprintfW
1406 ! FUNCTION: wvsprintfA
1407 ! FUNCTION: wvsprintfW
1409 : msgbox ( str -- )
1410     f swap "DebugMsg" MB_OK MessageBox drop ;