+++ /dev/null
-! Copyright (C) 2005, 2006 Doug Coleman.
-! See http://factor.sf.net/license.txt for BSD license.
-USING: alien kernel errors ;
-IN: win32-api
-
-LIBRARY: gdi32
-
-! Stock Logical Objects
-: WHITE_BRUSH 0 ; inline
-: LTGRAY_BRUSH 1 ; inline
-: GRAY_BRUSH 2 ; inline
-: DKGRAY_BRUSH 3 ; inline
-: BLACK_BRUSH 4 ; inline
-: NULL_BRUSH 5 ; inline
-: HOLLOW_BRUSH NULL_BRUSH ; inline
-: WHITE_PEN 6 ; inline
-: BLACK_PEN 7 ; inline
-: NULL_PEN 8 ; inline
-: OEM_FIXED_FONT 10 ; inline
-: ANSI_FIXED_FONT 11 ; inline
-: ANSI_VAR_FONT 12 ; inline
-: SYSTEM_FONT 13 ; inline
-: DEVICE_DEFAULT_FONT 14 ; inline
-: DEFAULT_PALETTE 15 ; inline
-: SYSTEM_FIXED_FONT 16 ; inline
-: DEFAULT_GUI_FONT 17 ; inline
-: DC_BRUSH 18 ; inline
-: DC_PEN 19 ; inline
-
-FUNCTION: HGDIOBJ GetStockObject ( int fnObject ) ;
-FUNCTION: int ChoosePixelFormat ( HDC hDC, PFD* ppfd ) ;
-FUNCTION: BOOL SetPixelFormat ( HDC hDC, int iPixelFormat, PFD* ppfd ) ;
-
-FUNCTION: BOOL SwapBuffers ( HDC hDC ) ;
-
-
+++ /dev/null
-! Copyright (C) 2005, 2006 Doug Coleman.
-! See http://factor.sf.net/license.txt for BSD license.
-USING: alien kernel errors ;
-IN: win32-api
-
-LIBRARY: kernel32
-
-! FUNCTION: MAKEINTRESOURCEA
-! FUNCTION: MAKEINTRESOURCEW
-
-! : MAKEINTRESOURCE \ MAKEINTRESOURCEW \ MAKEINTRESOURCEA unicode-exec ;
-! #define IS_INTRESOURCE(_r) (((ULONG_PTR)(_r) >> 16) == 0)
-! #define MAKEINTRESOURCEA(i) (LPSTR)((ULONG_PTR)((WORD)(i)))
-! #define MAKEINTRESOURCEW(i) (LPWSTR)((ULONG_PTR)((WORD)(i)))
-
-
-! FUNCTION: DWORD FormatMessage(
- ! DWORD dwFlags,
- ! LPCVOID lpSource,
- ! DWORD dwMessageId,
- ! DWORD dwLanguageId,
- ! LPTSTR lpBuffer,
- ! DWORD nSize,
- ! va_list* Arguments
-! ) ;
-
-
-! FUNCTION: HMODULE GetModuleHandleA ( LPCTSTR lpModulename ) ;
-! FUNCTION: HMODULE GetModuleHandleW ( LPCWSTR lpModulename ) ;
-
-FUNCTION: HMODULE GetModuleHandleA ( void* lpModulename ) ;
-FUNCTION: HMODULE GetModuleHandleW ( void* lpModulename ) ;
-
-: GetModuleHandle \ GetModuleHandleW \ GetModuleHandleA unicode-exec ;
-
-
-! FUNCTION: HMODULE GetModuleHandleEx (
-! DWORD dwFlags,
-! LPCTSTR lpModulename,
-! HMODULE* phModule ) ;
-
-
-
-FUNCTION: DWORD GetLastError ( ) ;
-
-: (win32-error) ( id -- string )
- "char*" f "error_message" [ "int" ] alien-invoke ;
-
-: win32-error ( -- )
- GetLastError dup 0 = [ (win32-error) throw ] unless drop ;
-
-: GHND HEX: 40 ; inline
-: GMEM_FIXED 0 ; inline
-: GMEM_MOVEABLE 2 ; inline
-: GMEM_ZEROINIT HEX: 40 ; inline
-: GPTR HEX: 40 ; inline
-
-FUNCTION: HGLOBAL GlobalAlloc ( UINT uFlags, SIZE_T dwBytes ) ;
-FUNCTION: LPVOID GlobalLock ( HGLOBAL hMem ) ;
-! FUNCTION: char* GlobalLock ( HGLOBAL hMem ) ;
-FUNCTION: BOOL GlobalUnlock ( HGLOBAL hMem ) ;
-
-FUNCTION: DWORD SleepEx ( DWORD dwMilliSeconds, BOOL bAlertable ) ;
-
-
IN: scratchpad
-USING: alien compiler kernel namespaces parser sequences words ;
+USING: alien kernel namespaces parser sequences words ;
{
- { "gdi32" "gdi32.dll" "stdcall" }
- { "user32" "user32.dll" "stdcall" }
- { "kernel32" "kernel32.dll" "stdcall" }
- { "winsock" "ws2_32.dll" "stdcall" }
- { "mswsock" "mswsock.dll" "stdcall" }
- { "libc" "msvcrt.dll" "cdecl" }
-} [ first3 add-library ] each
-
-{
- "windows-messages"
- "types"
- "gdi32"
- "kernel32"
- "user32"
- "opengl32"
- "utils"
"ui"
"clipboard"
+ } [ "/library/ui/windows/" swap ".factor" append3 run-resource ] each
-} [ "/library/ui/windows/" swap ".factor" append3 run-resource ] each
-
IN: kernel
: default-shell "tty" ;
+++ /dev/null
-! Copyright (C) 2005, 2006 Doug Coleman.
-! See http://factor.sf.net/license.txt for BSD license.
-USING: alien parser namespaces kernel syntax words math io prettyprint ;
-IN: win32-api
-
-! PIXELFORMATDESCRIPTOR flags
-: PFD_DOUBLEBUFFER HEX: 00000001 ; inline
-: PFD_STEREO HEX: 00000002 ; inline
-: PFD_DRAW_TO_WINDOW HEX: 00000004 ; inline
-: PFD_DRAW_TO_BITMAP HEX: 00000008 ; inline
-: PFD_SUPPORT_GDI HEX: 00000010 ; inline
-: PFD_SUPPORT_OPENGL HEX: 00000020 ; inline
-: PFD_GENERIC_FORMAT HEX: 00000040 ; inline
-: PFD_NEED_PALETTE HEX: 00000080 ; inline
-: PFD_NEED_SYSTEM_PALETTE HEX: 00000100 ; inline
-: PFD_SWAP_EXCHANGE HEX: 00000200 ; inline
-: PFD_SWAP_COPY HEX: 00000400 ; inline
-: PFD_SWAP_LAYER_BUFFERS HEX: 00000800 ; inline
-: PFD_GENERIC_ACCELERATED HEX: 00001000 ; inline
-: PFD_SUPPORT_DIRECTDRAW HEX: 00002000 ; inline
-
-! PIXELFORMATDESCRIPTOR flags for use in ChoosePixelFormat only
-: PFD_DEPTH_DONTCARE HEX: 20000000 ; inline
-: PFD_DOUBLEBUFFER_DONTCARE HEX: 40000000 ; inline
-: PFD_STEREO_DONTCARE HEX: 80000000 ; inline
-
-! pixel types
-: PFD_TYPE_RGBA 0 ; inline
-: PFD_TYPE_COLORINDEX 1 ; inline
-
-! layer types
-: PFD_MAIN_PLANE 0 ; inline
-: PFD_OVERLAY_PLANE 1 ; inline
-: PFD_UNDERLAY_PLANE -1 ; inline
-
-: LPD_TYPE_RGBA 0 ; inline
-: LPD_TYPE_COLORINDEX 1 ; inline
-
-! wglSwapLayerBuffers flags
-: WGL_SWAP_MAIN_PLANE HEX: 00000001 ; inline
-: WGL_SWAP_OVERLAY1 HEX: 00000002 ; inline
-: WGL_SWAP_OVERLAY2 HEX: 00000004 ; inline
-: WGL_SWAP_OVERLAY3 HEX: 00000008 ; inline
-: WGL_SWAP_OVERLAY4 HEX: 00000010 ; inline
-: WGL_SWAP_OVERLAY5 HEX: 00000020 ; inline
-: WGL_SWAP_OVERLAY6 HEX: 00000040 ; inline
-: WGL_SWAP_OVERLAY7 HEX: 00000080 ; inline
-: WGL_SWAP_OVERLAY8 HEX: 00000100 ; inline
-: WGL_SWAP_OVERLAY9 HEX: 00000200 ; inline
-: WGL_SWAP_OVERLAY10 HEX: 00000400 ; inline
-: WGL_SWAP_OVERLAY11 HEX: 00000800 ; inline
-: WGL_SWAP_OVERLAY12 HEX: 00001000 ; inline
-: WGL_SWAP_OVERLAY13 HEX: 00002000 ; inline
-: WGL_SWAP_OVERLAY14 HEX: 00004000 ; inline
-: WGL_SWAP_OVERLAY15 HEX: 00008000 ; inline
-: WGL_SWAP_UNDERLAY1 HEX: 00010000 ; inline
-: WGL_SWAP_UNDERLAY2 HEX: 00020000 ; inline
-: WGL_SWAP_UNDERLAY3 HEX: 00040000 ; inline
-: WGL_SWAP_UNDERLAY4 HEX: 00080000 ; inline
-: WGL_SWAP_UNDERLAY5 HEX: 00100000 ; inline
-: WGL_SWAP_UNDERLAY6 HEX: 00200000 ; inline
-: WGL_SWAP_UNDERLAY7 HEX: 00400000 ; inline
-: WGL_SWAP_UNDERLAY8 HEX: 00800000 ; inline
-: WGL_SWAP_UNDERLAY9 HEX: 01000000 ; inline
-: WGL_SWAP_UNDERLAY10 HEX: 02000000 ; inline
-: WGL_SWAP_UNDERLAY11 HEX: 04000000 ; inline
-: WGL_SWAP_UNDERLAY12 HEX: 08000000 ; inline
-: WGL_SWAP_UNDERLAY13 HEX: 10000000 ; inline
-: WGL_SWAP_UNDERLAY14 HEX: 20000000 ; inline
-: WGL_SWAP_UNDERLAY15 HEX: 40000000 ; inline
-
-
-
-: pfd-dwFlags
- PFD_DRAW_TO_WINDOW PFD_SUPPORT_OPENGL bitor PFD_DOUBLEBUFFER bitor ;
-
-! TODO: compare to http://www.nullterminator.net/opengl32.html
-: make-pfd ( bits -- pfd )
- "PIXELFORMATDESCRIPTOR" <c-object>
- "PIXELFORMATDESCRIPTOR" c-size over set-PIXELFORMATDESCRIPTOR-nSize
- 1 over set-PIXELFORMATDESCRIPTOR-nVersion
- pfd-dwFlags over set-PIXELFORMATDESCRIPTOR-dwFlags
- PFD_TYPE_RGBA over set-PIXELFORMATDESCRIPTOR-iPixelType
- [ set-PIXELFORMATDESCRIPTOR-cColorBits ] keep
- 16 over set-PIXELFORMATDESCRIPTOR-cDepthBits
- PFD_MAIN_PLANE over set-PIXELFORMATDESCRIPTOR-dwLayerMask ;
-
-
-LIBRARY: gl
-
-
-! FUNCTION: int ReleaseDC ( HWND hWnd, HDC hDC ) ;
-! FUNCTION: HDC ResetDC ( HDC hdc, DEVMODE* lpInitData ) ;
-! FUNCTION: BOOL RestoreDC ( HDC hdc, int nSavedDC ) ;
-! FUNCTION: int SaveDC( HDC hDC ) ;
-! FUNCTION: HGDIOBJ SelectObject ( HDC hDC, HGDIOBJ hgdiobj ) ;
-
-FUNCTION: HGLRC wglCreateContext ( HDC hDC ) ;
-FUNCTION: BOOL wglDeleteContext ( HGLRC hRC ) ;
-FUNCTION: BOOL wglMakeCurrent ( HDC hDC, HGLRC hglrc ) ;
-
-
+++ /dev/null
-! Copyright (C) 2005, 2006 Doug Coleman.
-! See http://factor.sf.net/license.txt for BSD license.
-USING: alien namespaces kernel words ;
-IN: win32-api
-
-! http://msdn.microsoft.com/library/default.asp?url=/library/en-us/winprog/winprog/windows_data_types.asp
-
-SYMBOL: unicode f unicode set
-: unicode-exec ( unicode-func ascii-func -- func )
- unicode get [
- drop execute
- ] [
- nip execute
- ] if ; inline
-
-: unicode? unicode get ; inline
-
-: win64? f ;
-
-! win64
-! char uchar short ushort int uint long ulong longlong ulonglong
-! 1 1 2 2 * * ?
-! win32
-! char uchar short ushort int uint long ulong longlong ulonglong
-! 1 1 2 2 * * 4 4 8 8
-
-
-TYPEDEF: char CHAR
-TYPEDEF: uchar UCHAR
-TYPEDEF: uchar BYTE
-
-TYPEDEF: short wchar_t
-TYPEDEF: wchar_t WCHAR
-
-TYPEDEF: short SHORT
-TYPEDEF: ushort USHORT
-
-TYPEDEF: ushort WORD
-TYPEDEF: ulong DWORD
-
-TYPEDEF: int INT
-TYPEDEF: uint UINT
-
-TYPEDEF: int BOOL
-
-TYPEDEF: int* PINT
-TYPEDEF: int* LPINT
-TYPEDEF: int HFILE
-
-TYPEDEF: long LONG
-TYPEDEF: long* LPLONG
-TYPEDEF: long LONG_PTR
-TYPEDEF: long* PLONG_PTR
-
-TYPEDEF: uint ULONG
-TYPEDEF: ulong ULONG_PTR
-TYPEDEF: ulong* PULONG_PTR
-
-TYPEDEF: void VOID
-TYPEDEF: void* PVOID
-TYPEDEF: void* LPVOID
-TYPEDEF: void* LPCVOID
-
-TYPEDEF: float FLOAT
-! The following is commented out for two reasons.
-! 1) all of the code in both branches will be run because TYPEDEF: is a
-! parsing word
-! 2) we are waiting on gcc to be ported to win64/msys
-! 3) the TYPEDEF:s are probably wrong.
-
-! win64? [
- ! ! TODO: check these!
- ! TYPEDEF: INT32 HALF_PTR
- ! TYPEDEF: UINT32 UHALF_PTR
- ! TYPEDEF: long INT_PTR
- ! TYPEDEF: ulong UINT_PTR
-
- ! TYPEDEF: longlong LONG_PTR ! 64bit
- ! TYPEDEF: ulonglong ULONG_PTR ! 64bit
-
- ! TYPEDEF: int INT32
- ! TYPEDEF: uint UINT32
- ! TYPEDEF: uint DWORD32
- ! TYPEDEF: uint ULONG32
- ! TYPEDEF: ulong ULONG64
- ! TYPEDEF: int* POINTER_32
- ! TYPEDEF: long* POINTER_64
- ! TYPEDEF: longlong INT64
- ! TYPEDEF: ulonglong UINT64
- ! TYPEDEF: longlong LONGLONG ! 64bit
- ! TYPEDEF: ulonglong ULONGLONG
- ! TYPEDEF: longlong LONG64
- ! TYPEDEF: ulonglong DWORD64
- ! ] [
-! Correct for win32
- TYPEDEF: short HALF_PTR
- TYPEDEF: ushort UHALF_PTR
- TYPEDEF: int INT_PTR
- TYPEDEF: uint UINT_PTR
-
- TYPEDEF: int LONG_PTR
- TYPEDEF: ulong ULONG_PTR
-
- TYPEDEF: int INT32
- TYPEDEF: uint UINT32
- TYPEDEF: uint DWORD32
- TYPEDEF: ulong ULONG32
- TYPEDEF: ulonglong ULONG64
- TYPEDEF: long* POINTER_32
- TYPEDEF: longlong* POINTER_64
- TYPEDEF: longlong INT64
- TYPEDEF: ulonglong UINT64
- TYPEDEF: longlong LONGLONG
- TYPEDEF: ulonglong ULONGLONG
- TYPEDEF: longlong LONG64
- TYPEDEF: ulonglong DWORD64
-! ] if
-
-! unicode? [
- ! TYPEDEF: WCHAR TBYTE
- ! TYPEDEF: WCHAR TCHAR
- ! ] [
- TYPEDEF: uchar TBYTE
- TYPEDEF: char TCHAR
-! ] if
-
-! Below down is based on the above definitions
-! There should be no 32/64bit issues
-
-TYPEDEF: WORD ATOM
-TYPEDEF: BYTE BOOLEAN
-! TYPEDEF: __stdcall CALLBACK
-TYPEDEF: DWORD COLORREF
-TYPEDEF: ULONGLONG DWORDLONG
-TYPEDEF: ULONG_PTR DWORD_PTR
-TYPEDEF: PVOID HANDLE
-TYPEDEF: HANDLE HACCEL
-TYPEDEF: HANDLE HBITMAP
-TYPEDEF: HANDLE HBRUSH
-TYPEDEF: HANDLE HCOLORSPACE
-TYPEDEF: HANDLE HCONV
-TYPEDEF: HANDLE HCONVLIST
-TYPEDEF: HANDLE HICON
-TYPEDEF: HICON HCURSOR
-TYPEDEF: HANDLE HDC
-TYPEDEF: HANDLE HDDEDATA
-TYPEDEF: HANDLE HDESK
-TYPEDEF: HANDLE HDROP
-TYPEDEF: HANDLE HDWP
-TYPEDEF: HANDLE HENMETAFILE
-TYPEDEF: HANDLE HFONT
-TYPEDEF: HANDLE HGDIOBJ
-TYPEDEF: HANDLE HGLOBAL
-TYPEDEF: HANDLE HHOOK
-TYPEDEF: HANDLE HINSTANCE
-TYPEDEF: HANDLE HKEY
-TYPEDEF: HANDLE HKL
-TYPEDEF: HANDLE HLOCAL
-TYPEDEF: HANDLE HMENU
-TYPEDEF: HANDLE HMETAFILE
-TYPEDEF: HINSTANCE HMODULE
-TYPEDEF: HANDLE HMONITOR
-TYPEDEF: HANDLE HPALETTE
-TYPEDEF: HANDLE HPEN
-TYPEDEF: LONG HRESULT
-TYPEDEF: HANDLE HRGN
-TYPEDEF: HANDLE HRSRC
-TYPEDEF: HANDLE HSZ
-TYPEDEF: HANDLE WINSTA ! MS docs say typedef HANDLE WINSTA ;
-TYPEDEF: HANDLE HWINSTA ! typo??
-TYPEDEF: HANDLE HWND
-TYPEDEF: WORD LANGID
-TYPEDEF: DWORD LCID
-TYPEDEF: DWORD LCTYPE
-TYPEDEF: DWORD LGRPID
-TYPEDEF: LONG_PTR LPARAM
-TYPEDEF: BOOL* LPBOOL
-TYPEDEF: BYTE* LPBYTE
-TYPEDEF: DWORD* LPCOLORREF
-! TYPEDEF: CHAR* LPCSTR
-TYPEDEF: VOID* LPCSTR
-TYPEDEF: WCHAR* LPCWSTR
-TYPEDEF: WCHAR* LPWSTR
-unicode? [
- TYPEDEF: LPCWSTR LPCTSTR
- TYPEDEF: LPWSTR LPTSTR
- TYPEDEF: LPCWSTR PCTSTR
- TYPEDEF: LPWSTR PTSTR
- ] [
- TYPEDEF: LPCSTR LPCTSTR
- TYPEDEF: LPSTR LPTSTR
- TYPEDEF: LPCSTR PCTSTR
- TYPEDEF: LPSTR PTSTR
-] if
-TYPEDEF: DWORD* LPDWORD
-TYPEDEF: HANDLE* LPHANDLE
-TYPEDEF: CHAR* LPSTR
-TYPEDEF: WORD* LPWORD
-TYPEDEF: WCHAR* LPWSTR
-TYPEDEF: LONG_PTR LRESULT
-TYPEDEF: BOOL* PBOOL
-TYPEDEF: BOOLEAN* PBOOLEAN
-TYPEDEF: BYTE* PBYTE
-TYPEDEF: CHAR* PCHAR
-TYPEDEF: CHAR* PCSTR
-TYPEDEF: WCHAR* PCWSTR
-TYPEDEF: DWORD* PDWORD
-TYPEDEF: DWORDLONG* PDWORDLONG
-TYPEDEF: DWORD_PTR* PDWORD_PTR
-TYPEDEF: DWORD32* PDWORD32
-TYPEDEF: DWORD64* PDWORD64
-TYPEDEF: FLOAT* PFLOAT
-TYPEDEF: HALF_PTR* PHALF_PTR
-TYPEDEF: HANDLE* PHANDLE
-TYPEDEF: HKEY* PHKEY
-TYPEDEF: INT_PTR* PINT_PTR
-TYPEDEF: INT32* PINT32
-TYPEDEF: INT64* PINT64
-TYPEDEF: PDWORD PLCID
-TYPEDEF: LONG* PLONG
-TYPEDEF: LONGLONG* PLONGLONG
-TYPEDEF: LONG_PTR* PLONG_PTR
-TYPEDEF: LONG32* PLONG32
-TYPEDEF: LONG64* PLONG64
-TYPEDEF: SHORT* PSHORT
-TYPEDEF: SIZE_T* PSIZE_T
-TYPEDEF: SSIZE_T* PSSIZE_T
-TYPEDEF: CHAR* PSTR
-TYPEDEF: TBYTE* PTBYTE
-TYPEDEF: TCHAR* PTCHAR
-TYPEDEF: UCHAR* PUCHAR
-TYPEDEF: UHALF_PTR* PUHALF_PTR
-TYPEDEF: UINT* PUINT
-TYPEDEF: UINT_PTR* PUINT_PTR
-TYPEDEF: UINT32* PUINT32
-TYPEDEF: UINT64* PUINT64
-TYPEDEF: ULONG* PULONG
-TYPEDEF: ULONGLONG* PULONGLONG
-TYPEDEF: ULONG_PTR* PULONG_PTR
-TYPEDEF: ULONG32* PULONG32
-TYPEDEF: ULONG64* PULONG64
-TYPEDEF: USHORT* PUSHORT
-TYPEDEF: WCHAR* PWCHAR
-TYPEDEF: WORD* PWORD
-TYPEDEF: WCHAR* PWSTR
-TYPEDEF: HANDLE SC_HANDLE
-TYPEDEF: LPVOID SC_LOCK
-TYPEDEF: HANDLE SERVICE_STATUS_HANDLE
-TYPEDEF: ULONG_PTR SIZE_T
-TYPEDEF: LONG_PTR SSIZE_T
-TYPEDEF: LONGLONG USN
-! TYPEDEF: __stdcall WINAPI
-TYPEDEF: UINT_PTR WPARAM
-
-
-
-
-TYPEDEF: RECT* LPRECT
-TYPEDEF: void* PWNDCLASS
-TYPEDEF: void* PWNDCLASSEX
-
-TYPEDEF: void* WNDPROC
-
-! typedef LRESULT (CALLBACK* WNDPROC)(HWND, UINT, WPARAM, LPARAM);
-
-BEGIN-STRUCT: WNDCLASS
- FIELD: UINT style
- FIELD: WNDPROC lpfnWndProc
- FIELD: int cbClsExtra
- FIELD: int cbWndExtra
- FIELD: HINSTANCE hInstance
- FIELD: HICON hIcon
- FIELD: HCURSOR hCursor
- FIELD: HBRUSH hbrBackground
- FIELD: LPCTSTR lpszMenuName
- FIELD: LPCTSTR lpszClassName
-END-STRUCT
-
-BEGIN-STRUCT: WNDCLASSEX
- FIELD: UINT cbSize
- FIELD: UINT style
- FIELD: WNDPROC lpfnWndProc
- FIELD: int cbClsExtra
- FIELD: int cbWndExtra
- FIELD: HINSTANCE hInstance
- FIELD: HICON hIcon
- FIELD: HCURSOR hCursor
- FIELD: HBRUSH hbrBackground
- FIELD: LPCTSTR lpszMenuName
- FIELD: LPCTSTR lpszClassName
- FIELD: HICON hIconSm
-END-STRUCT
-
-BEGIN-STRUCT: RECT
- FIELD: LONG left
- FIELD: LONG top
- FIELD: LONG right
- FIELD: LONG bottom
-END-STRUCT
-
-BEGIN-STRUCT: PAINTSTRUCT
- FIELD: HDC hdc
- FIELD: BOOL fErase
- FIELD: RECT rcPaint
- FIELD: BOOL fRestore
- FIELD: BOOL fIncUpdate
- FIELD: BYTE rgbReserved[32]
-END-STRUCT
-
-TYPEDEF: PAINTSTRUCT* LPPAINTSTRUCT
-
-BEGIN-STRUCT: POINT
- FIELD: LONG x
- FIELD: LONG y
-END-STRUCT
-
-BEGIN-STRUCT: MSG
- FIELD: HWND hWnd
- FIELD: UINT message
- FIELD: WPARAM wParam
- FIELD: LPARAM lParam
- FIELD: DWORD time
- FIELD: POINT pt
-END-STRUCT
-TYPEDEF: MSG* LPMSG
-
-BEGIN-STRUCT: PIXELFORMATDESCRIPTOR
- FIELD: WORD nSize
- FIELD: WORD nVersion
- FIELD: DWORD dwFlags
- FIELD: BYTE iPixelType
- FIELD: BYTE cColorBits
- FIELD: BYTE cRedBits
- FIELD: BYTE cRedShift
- FIELD: BYTE cGreenBits
- FIELD: BYTE cGreenShift
- FIELD: BYTE cBlueBits
- FIELD: BYTE cBlueShift
- FIELD: BYTE cAlphaBits
- FIELD: BYTE cAlphaShift
- FIELD: BYTE cAccumBits
- FIELD: BYTE cAccumRedBits
- FIELD: BYTE cAccumGreenBits
- FIELD: BYTE cAccumBlueBits
- FIELD: BYTE cAccumAlphaBits
- FIELD: BYTE cDepthBits
- FIELD: BYTE cStencilBits
- FIELD: BYTE cAuxBuffers
- FIELD: BYTE iLayerType
- FIELD: BYTE bReserved
- FIELD: DWORD dwLayerMask
- FIELD: DWORD dwVisibleMask
- FIELD: DWORD dwDamageMask
-END-STRUCT
-
-BEGIN-STRUCT: RECT
- FIELD: LONG left
- FIELD: LONG top
- FIELD: LONG right
- FIELD: LONG bottom
-END-STRUCT
-
-TYPEDEF: RECT* PRECT
-TYPEDEF: RECT* LPRECT
-TYPEDEF: PIXELFORMATDESCRIPTOR PFD
-TYPEDEF: PFD* LPPFD
-TYPEDEF: HANDLE HGLRC
-TYPEDEF: HANDLE HRGN
+++ /dev/null
-! Copyright (C) 2005, 2006 Doug Coleman.
-! See http://factor.sf.net/license.txt for BSD license.
-USING: alien parser namespaces kernel syntax words math io prettyprint ;
-IN: win32-api
-
-
-TYPEDEF: void* MSGBOXPARAMSA
-TYPEDEF: void* MSGBOXPARAMSW
-
-
-! HKL for ActivateKeyboardLayout
-: HKL_PREV 0 ;
-: HKL_NEXT 1 ;
-
-: CW_USEDEFAULT HEX: 80000000 ;
-
-: WS_OVERLAPPED HEX: 00000000 ;
-: WS_POPUP HEX: 80000000 ;
-: WS_CHILD HEX: 40000000 ;
-: WS_MINIMIZE HEX: 20000000 ;
-: WS_VISIBLE HEX: 10000000 ;
-: WS_DISABLED HEX: 08000000 ;
-: WS_CLIPSIBLINGS HEX: 04000000 ;
-: WS_CLIPCHILDREN HEX: 02000000 ;
-: WS_MAXIMIZE HEX: 01000000 ;
-: WS_CAPTION HEX: 00C00000 ; ! /* WS_BORDER | WS_DLGFRAME */
-: WS_BORDER HEX: 00800000 ;
-: WS_DLGFRAME HEX: 00400000 ;
-: WS_VSCROLL HEX: 00200000 ;
-: WS_HSCROLL HEX: 00100000 ;
-: WS_SYSMENU HEX: 00080000 ;
-: WS_THICKFRAME HEX: 00040000 ;
-: WS_GROUP HEX: 00020000 ;
-: WS_TABSTOP HEX: 00010000 ;
-: WS_MINIMIZEBOX HEX: 00020000 ;
-: WS_MAXIMIZEBOX HEX: 00010000 ;
-
-! Common window styles
-: WS_OVERLAPPEDWINDOW WS_OVERLAPPED WS_CAPTION WS_SYSMENU WS_THICKFRAME WS_MINIMIZEBOX WS_MAXIMIZEBOX bitor bitor bitor bitor bitor ;
-
-: WS_POPUPWINDOW WS_POPUP WS_BORDER WS_SYSMENU bitor bitor ;
-
-: WS_CHILDWINDOW WS_CHILD ;
-
-: WS_TILED WS_OVERLAPPED ;
-: WS_ICONIC WS_MINIMIZE ;
-: WS_SIZEBOX WS_THICKFRAME ;
-: WS_TILEDWINDOW WS_OVERLAPPEDWINDOW ;
-
-
-
-! Extended window styles
-
-: WS_EX_DLGMODALFRAME HEX: 00000001 ; inline
-: WS_EX_NOPARENTNOTIFY HEX: 00000004 ; inline
-: WS_EX_TOPMOST HEX: 00000008 ; inline
-: WS_EX_ACCEPTFILES HEX: 00000010 ; inline
-: WS_EX_TRANSPARENT HEX: 00000020 ; inline
-: WS_EX_MDICHILD HEX: 00000040 ; inline
-: WS_EX_TOOLWINDOW HEX: 00000080 ; inline
-: WS_EX_WINDOWEDGE HEX: 00000100 ; inline
-: WS_EX_CLIENTEDGE HEX: 00000200 ; inline
-: WS_EX_CONTEXTHELP HEX: 00000400 ; inline
-
-: WS_EX_RIGHT HEX: 00001000 ; inline
-: WS_EX_LEFT HEX: 00000000 ; inline
-: WS_EX_RTLREADING HEX: 00002000 ; inline
-: WS_EX_LTRREADING HEX: 00000000 ; inline
-: WS_EX_LEFTSCROLLBAR HEX: 00004000 ; inline
-: WS_EX_RIGHTSCROLLBAR HEX: 00000000 ; inline
-: WS_EX_CONTROLPARENT HEX: 00010000 ; inline
-: WS_EX_STATICEDGE HEX: 00020000 ; inline
-: WS_EX_APPWINDOW HEX: 00040000 ; inline
-: WS_EX_OVERLAPPEDWINDOW WS_EX_WINDOWEDGE WS_EX_CLIENTEDGE bitor ; inline
-: WS_EX_PALETTEWINDOW
- WS_EX_WINDOWEDGE WS_EX_TOOLWINDOW bitor WS_EX_TOPMOST bitor ; inline
-
-
-: CS_VREDRAW HEX: 0001 ;
-: CS_HREDRAW HEX: 0002 ;
-: CS_DBLCLKS HEX: 0008 ;
-: CS_OWNDC HEX: 0020 ;
-: CS_CLASSDC HEX: 0040 ;
-: CS_PARENTDC HEX: 0080 ;
-: CS_NOCLOSE HEX: 0200 ;
-: CS_SAVEBITS HEX: 0800 ;
-: CS_BYTEALIGNCLIENT HEX: 1000 ;
-: CS_BYTEALIGNWINDOW HEX: 2000 ;
-: CS_GLOBALCLASS HEX: 4000 ;
-
-: COLOR_SCROLLBAR 0 ;
-: COLOR_BACKGROUND 1 ;
-: COLOR_ACTIVECAPTION 2 ;
-: COLOR_INACTIVECAPTION 3 ;
-: COLOR_MENU 4 ;
-: COLOR_WINDOW 5 ;
-: COLOR_WINDOWFRAME 6 ;
-: COLOR_MENUTEXT 7 ;
-: COLOR_WINDOWTEXT 8 ;
-: COLOR_CAPTIONTEXT 9 ;
-: COLOR_ACTIVEBORDER 10 ;
-: COLOR_INACTIVEBORDER 11 ;
-: COLOR_APPWORKSPACE 12 ;
-: COLOR_HIGHLIGHT 13 ;
-: COLOR_HIGHLIGHTTEXT 14 ;
-: COLOR_BTNFACE 15 ;
-: COLOR_BTNSHADOW 16 ;
-: COLOR_GRAYTEXT 17 ;
-: COLOR_BTNTEXT 18 ;
-: COLOR_INACTIVECAPTIONTEXT 19 ;
-: COLOR_BTNHIGHLIGHT 20 ;
-
-: IDI_APPLICATION 32512 ;
-: IDI_HAND 32513 ;
-: IDI_QUESTION 32514 ;
-: IDI_EXCLAMATION 32515 ;
-: IDI_ASTERISK 32516 ;
-: IDI_WINLOGO 32517 ;
-
-! ShowWindow() Commands
-: SW_HIDE 0 ;
-: SW_SHOWNORMAL 1 ;
-: SW_NORMAL 1 ;
-: SW_SHOWMINIMIZED 2 ;
-: SW_SHOWMAXIMIZED 3 ;
-: SW_MAXIMIZE 3 ;
-: SW_SHOWNOACTIVATE 4 ;
-: SW_SHOW 5 ;
-: SW_MINIMIZE 6 ;
-: SW_SHOWMINNOACTIVE 7 ;
-: SW_SHOWNA 8 ;
-: SW_RESTORE 9 ;
-: SW_SHOWDEFAULT 10 ;
-: SW_FORCEMINIMIZE 11 ;
-: SW_MAX 11 ;
-
-! PeekMessage
-: PM_NOREMOVE 0 ;
-: PM_REMOVE 1 ;
-: PM_NOYIELD 2 ;
-! : PM_QS_INPUT (QS_INPUT << 16) ;
-! : PM_QS_POSTMESSAGE ((QS_POSTMESSAGE | QS_HOTKEY | QS_TIMER) << 16) ;
-! : PM_QS_PAINT (QS_PAINT << 16) ;
-! : PM_QS_SENDMESSAGE (QS_SENDMESSAGE << 16) ;
-
-
-!
-! Standard Cursor IDs
-!
-: IDC_ARROW 32512 ;
-: IDC_IBEAM 32513 ;
-: IDC_WAIT 32514 ;
-: IDC_CROSS 32515 ;
-: IDC_UPARROW 32516 ;
-: IDC_SIZE 32640 ; ! OBSOLETE: use IDC_SIZEALL
-: IDC_ICON 32641 ; ! OBSOLETE: use IDC_ARROW
-: IDC_SIZENWSE 32642 ;
-: IDC_SIZENESW 32643 ;
-: IDC_SIZEWE 32644 ;
-: IDC_SIZENS 32645 ;
-: IDC_SIZEALL 32646 ;
-: IDC_NO 32648 ; ! not in win3.1
-: IDC_HAND 32649 ;
-: IDC_APPSTARTING 32650 ; ! not in win3.1
-: IDC_HELP 32651 ;
-
-
-
-
-
-! Predefined Clipboard Formats
-: CF_TEXT 1 ; inline
-: CF_BITMAP 2 ; inline
-: CF_METAFILEPICT 3 ; inline
-: CF_SYLK 4 ; inline
-: CF_DIF 5 ; inline
-: CF_TIFF 6 ; inline
-: CF_OEMTEXT 7 ; inline
-: CF_DIB 8 ; inline
-: CF_PALETTE 9 ; inline
-: CF_PENDATA 10 ; inline
-: CF_RIFF 11 ; inline
-: CF_WAVE 12 ; inline
-: CF_UNICODETEXT 13 ; inline
-: CF_ENHMETAFILE 14 ; inline
-: CF_HDROP 15 ; inline
-: CF_LOCALE 16 ; inline
-: CF_DIBV5 17 ; inline
-: CF_MAX 18 ; inline
-
-: CF_OWNERDISPLAY HEX: 0080 ; inline
-: CF_DSPTEXT HEX: 0081 ; inline
-: CF_DSPBITMAP HEX: 0082 ; inline
-: CF_DSPMETAFILEPICT HEX: 0083 ; inline
-: CF_DSPENHMETAFILE HEX: 008E ; inline
-
-! "Private" formats don't get GlobalFree()'d
-: CF_PRIVATEFIRST HEX: 200 ; inline
-: CF_PRIVATELAST HEX: 2FF ; inline
-
-
-
-
-
-! "GDIOBJ" formats do get DeleteObject()'d
-: CF_GDIOBJFIRST HEX: 300 ; inline
-: CF_GDIOBJLAST HEX: 3FF ; inline
-
-
-: WM_NULL 0 ; inline
-: WM_CREATE 1 ; inline
-: WM_DESTROY 2 ; inline
-: WM_MOVE 3 ; inline
-: WM_SIZE 5 ; inline
-: WM_ACTIVATE 6 ; inline
-
-
-! Virtual Keys, Standard Set
-: VK_LBUTTON HEX: 01 ; inline
-: VK_RBUTTON HEX: 02 ; inline
-: VK_CANCEL HEX: 03 ; inline
-: VK_MBUTTON HEX: 04 ; inline ! NOT contiguous with L & RBUTTON
-: VK_XBUTTON1 HEX: 05 ; inline ! NOT contiguous with L & RBUTTON
-: VK_XBUTTON2 HEX: 06 ; inline ! NOT contiguous with L & RBUTTON
-! 0x07 : unassigned
-: VK_BACK HEX: 08 ; inline
-: VK_TAB HEX: 09 ; inline
-! 0x0A - 0x0B : reserved
-
-: VK_CLEAR HEX: 0C ; inline
-: VK_RETURN HEX: 0D ; inline
-
-: VK_SHIFT HEX: 10 ; inline
-: VK_CONTROL HEX: 11 ; inline
-: VK_MENU HEX: 12 ; inline
-: VK_PAUSE HEX: 13 ; inline
-: VK_CAPITAL HEX: 14 ; inline
-
-: VK_KANA HEX: 15 ; inline
-: VK_HANGEUL HEX: 15 ; inline ! old name - here for compatibility
-: VK_HANGUL HEX: 15 ; inline
-: VK_JUNJA HEX: 17 ; inline
-: VK_FINAL HEX: 18 ; inline
-: VK_HANJA HEX: 19 ; inline
-: VK_KANJI HEX: 19 ; inline
-
-: VK_ESCAPE HEX: 1B ; inline
-
-: VK_CONVERT HEX: 1C ; inline
-: VK_NONCONVERT HEX: 1D ; inline
-: VK_ACCEPT HEX: 1E ; inline
-: VK_MODECHANGE HEX: 1F ; inline
-
-: VK_SPACE HEX: 20 ; inline
-: VK_PRIOR HEX: 21 ; inline
-: VK_NEXT HEX: 22 ; inline
-: VK_END HEX: 23 ; inline
-: VK_HOME HEX: 24 ; inline
-: VK_LEFT HEX: 25 ; inline
-: VK_UP HEX: 26 ; inline
-: VK_RIGHT HEX: 27 ; inline
-: VK_DOWN HEX: 28 ; inline
-: VK_SELECT HEX: 29 ; inline
-: VK_PRINT HEX: 2A ; inline
-: VK_EXECUTE HEX: 2B ; inline
-: VK_SNAPSHOT HEX: 2C ; inline
-: VK_INSERT HEX: 2D ; inline
-: VK_DELETE HEX: 2E ; inline
-: VK_HELP HEX: 2F ; inline
-
-! VK_0 - VK_9 are the same as ASCII '0' - '9' (0x30 - 0x39)
-! 0x40 : unassigned
-! VK_A - VK_Z are the same as ASCII 'A' - 'Z' (0x41 - 0x5A)
-
-: VK_LWIN HEX: 5B ; inline
-: VK_RWIN HEX: 5C ; inline
-: VK_APPS HEX: 5D ; inline
-
-! 0x5E : reserved
-
-: VK_SLEEP HEX: 5F ; inline
-
-: VK_NUMPAD0 HEX: 60 ; inline
-: VK_NUMPAD1 HEX: 61 ; inline
-: VK_NUMPAD2 HEX: 62 ; inline
-: VK_NUMPAD3 HEX: 63 ; inline
-: VK_NUMPAD4 HEX: 64 ; inline
-: VK_NUMPAD5 HEX: 65 ; inline
-: VK_NUMPAD6 HEX: 66 ; inline
-: VK_NUMPAD7 HEX: 67 ; inline
-: VK_NUMPAD8 HEX: 68 ; inline
-: VK_NUMPAD9 HEX: 69 ; inline
-: VK_MULTIPLY HEX: 6A ; inline
-: VK_ADD HEX: 6B ; inline
-: VK_SEPARATOR HEX: 6C ; inline
-: VK_SUBTRACT HEX: 6D ; inline
-: VK_DECIMAL HEX: 6E ; inline
-: VK_DIVIDE HEX: 6F ; inline
-: VK_F1 HEX: 70 ; inline
-: VK_F2 HEX: 71 ; inline
-: VK_F3 HEX: 72 ; inline
-: VK_F4 HEX: 73 ; inline
-: VK_F5 HEX: 74 ; inline
-: VK_F6 HEX: 75 ; inline
-: VK_F7 HEX: 76 ; inline
-: VK_F8 HEX: 77 ; inline
-: VK_F9 HEX: 78 ; inline
-: VK_F10 HEX: 79 ; inline
-: VK_F11 HEX: 7A ; inline
-: VK_F12 HEX: 7B ; inline
-: VK_F13 HEX: 7C ; inline
-: VK_F14 HEX: 7D ; inline
-: VK_F15 HEX: 7E ; inline
-: VK_F16 HEX: 7F ; inline
-: VK_F17 HEX: 80 ; inline
-: VK_F18 HEX: 81 ; inline
-: VK_F19 HEX: 82 ; inline
-: VK_F20 HEX: 83 ; inline
-: VK_F21 HEX: 84 ; inline
-: VK_F22 HEX: 85 ; inline
-: VK_F23 HEX: 86 ; inline
-: VK_F24 HEX: 87 ; inline
-
-! 0x88 - 0x8F : unassigned
-
-: VK_NUMLOCK HEX: 90 ; inline
-: VK_SCROLL HEX: 91 ; inline
-
-! NEC PC-9800 kbd definitions
-: VK_OEM_NEC_EQUAL HEX: 92 ; inline ! '=' key on numpad
-
-! Fujitsu/OASYS kbd definitions
-: VK_OEM_FJ_JISHO HEX: 92 ; inline ! 'Dictionary' key
-: VK_OEM_FJ_MASSHOU HEX: 93 ; inline ! 'Unregister word' key
-: VK_OEM_FJ_TOUROKU HEX: 94 ; inline ! 'Register word' key
-: VK_OEM_FJ_LOYA HEX: 95 ; inline ! 'Left OYAYUBI' key
-: VK_OEM_FJ_ROYA HEX: 96 ; inline ! 'Right OYAYUBI' key
-
-! 0x97 - 0x9F : unassigned
-
-! VK_L* & VK_R* - left and right Alt, Ctrl and Shift virtual keys.
-! Used only as parameters to GetAsyncKeyState() and GetKeyState().
-! No other API or message will distinguish left and right keys in this way.
-: VK_LSHIFT HEX: A0 ; inline
-: VK_RSHIFT HEX: A1 ; inline
-: VK_LCONTROL HEX: A2 ; inline
-: VK_RCONTROL HEX: A3 ; inline
-: VK_LMENU HEX: A4 ; inline
-: VK_RMENU HEX: A5 ; inline
-
-: VK_BROWSER_BACK HEX: A6 ; inline
-: VK_BROWSER_FORWARD HEX: A7 ; inline
-: VK_BROWSER_REFRESH HEX: A8 ; inline
-: VK_BROWSER_STOP HEX: A9 ; inline
-: VK_BROWSER_SEARCH HEX: AA ; inline
-: VK_BROWSER_FAVORITES HEX: AB ; inline
-: VK_BROWSER_HOME HEX: AC ; inline
-
-: VK_VOLUME_MUTE HEX: AD ; inline
-: VK_VOLUME_DOWN HEX: AE ; inline
-: VK_VOLUME_UP HEX: AF ; inline
-: VK_MEDIA_NEXT_TRACK HEX: B0 ; inline
-: VK_MEDIA_PREV_TRACK HEX: B1 ; inline
-: VK_MEDIA_STOP HEX: B2 ; inline
-: VK_MEDIA_PLAY_PAUSE HEX: B3 ; inline
-: VK_LAUNCH_MAIL HEX: B4 ; inline
-: VK_LAUNCH_MEDIA_SELECT HEX: B5 ; inline
-: VK_LAUNCH_APP1 HEX: B6 ; inline
-: VK_LAUNCH_APP2 HEX: B7 ; inline
-
-! 0xB8 - 0xB9 : reserved
-
-: VK_OEM_1 HEX: BA ; inline ! ';:' for US
-: VK_OEM_PLUS HEX: BB ; inline ! '+' any country
-: VK_OEM_COMMA HEX: BC ; inline ! ',' any country
-: VK_OEM_MINUS HEX: BD ; inline ! '-' any country
-: VK_OEM_PERIOD HEX: BE ; inline ! '.' any country
-: VK_OEM_2 HEX: BF ; inline ! '/?' for US
-: VK_OEM_3 HEX: C0 ; inline ! '`~' for US
-
-! 0xC1 - 0xD7 : reserved
-
-! 0xD8 - 0xDA : unassigned
-
-: VK_OEM_4 HEX: DB ; inline ! '[{' for US
-: VK_OEM_5 HEX: DC ; inline ! '\|' for US
-: VK_OEM_6 HEX: DD ; inline ! ']}' for US
-: VK_OEM_7 HEX: DE ; inline ! ''"' for US
-: VK_OEM_8 HEX: DF ; inline
-
-! 0xE0 : reserved
-
-! Various extended or enhanced keyboards
-: VK_OEM_AX HEX: E1 ; inline ! 'AX' key on Japanese AX kbd
-: VK_OEM_102 HEX: E2 ; inline ! "<>" or "\|" on RT 102-key kbd.
-: VK_ICO_HELP HEX: E3 ; inline ! Help key on ICO
-: VK_ICO_00 HEX: E4 ; inline ! 00 key on ICO
-
-: VK_PROCESSKEY HEX: E5 ; inline
-
-: VK_ICO_CLEAR HEX: E6 ; inline
-
-: VK_PACKET HEX: E7 ; inline
-
-! 0xE8 : unassigned
-
-! Nokia/Ericsson definitions
-: VK_OEM_RESET HEX: E9 ; inline
-: VK_OEM_JUMP HEX: EA ; inline
-: VK_OEM_PA1 HEX: EB ; inline
-: VK_OEM_PA2 HEX: EC ; inline
-: VK_OEM_PA3 HEX: ED ; inline
-: VK_OEM_WSCTRL HEX: EE ; inline
-: VK_OEM_CUSEL HEX: EF ; inline
-: VK_OEM_ATTN HEX: F0 ; inline
-: VK_OEM_FINISH HEX: F1 ; inline
-: VK_OEM_COPY HEX: F2 ; inline
-: VK_OEM_AUTO HEX: F3 ; inline
-: VK_OEM_ENLW HEX: F4 ; inline
-: VK_OEM_BACKTAB HEX: F5 ; inline
-
-: VK_ATTN HEX: F6 ; inline
-: VK_CRSEL HEX: F7 ; inline
-: VK_EXSEL HEX: F8 ; inline
-: VK_EREOF HEX: F9 ; inline
-: VK_PLAY HEX: FA ; inline
-: VK_ZOOM HEX: FB ; inline
-: VK_NONAME HEX: FC ; inline
-: VK_PA1 HEX: FD ; inline
-: VK_OEM_CLEAR HEX: FE ; inline
-! 0xFF : reserved
-
-! Key State Masks for Mouse Messages
-: MK_LBUTTON HEX: 0001 ; inline
-: MK_RBUTTON HEX: 0002 ; inline
-: MK_SHIFT HEX: 0004 ; inline
-: MK_CONTROL HEX: 0008 ; inline
-: MK_MBUTTON HEX: 0010 ; inline
-: MK_XBUTTON1 HEX: 0020 ; inline
-: MK_XBUTTON2 HEX: 0040 ; inline
-
-
-! Some fields are not defined for win64
-! Window field offsets for GetWindowLong()
-! TODO: win32 only!!
-windows? [
- : GWL_WNDPROC -4 ;
- : GWL_HINSTANCE -6 ;
- : GWL_HWNDPARENT -8 ;
- : GWL_USERDATA -21 ;
- : GWL_ID -12 ;
-] when
-
-: GWL_STYLE -16 ;
-: GWL_EXSTYLE -20 ;
-
-: GWLP_WNDPROC -4 ;
-: GWLP_HINSTANCE -6 ;
-: GWLP_HWNDPARENT -8 ;
-: GWLP_USERDATA -21 ;
-: GWLP_ID -12 ;
-
-! Class field offsets for GetClassLong()
-! TODO: win32 only!
-windows? [
- : GCL_MENUNAME -8 ;
- : GCL_HBRBACKGROUND -10 ;
- : GCL_HCURSOR -12 ;
- : GCL_HICON -14 ;
- : GCL_HMODULE -16 ;
- : GCL_WNDPROC -24 ;
- : GCL_HICONSM -34 ;
-] when
-: GCL_CBWNDEXTRA -18 ;
-: GCL_CBCLSEXTRA -20 ;
-: GCL_STYLE -26 ;
-: GCW_ATOM -32 ;
-
-: GCLP_MENUNAME -8 ;
-: GCLP_HBRBACKGROUND -10 ;
-: GCLP_HCURSOR -12 ;
-: GCLP_HICON -14 ;
-: GCLP_HMODULE -16 ;
-: GCLP_WNDPROC -24 ;
-: GCLP_HICONSM -34 ;
-
-
-
-LIBRARY: user32
-FUNCTION: HKL ActivateKeyboardLayout ( HKL hkl, UINT Flags ) ;
-
-FUNCTION: BOOL AdjustWindowRect ( LPRECT lpRect, DWORD dwStyle, BOOL bMenu ) ;
-FUNCTION: BOOL AdjustWindowRectEx ( LPRECT lpRect, DWORD dwStyle, BOOL bMenu, DWORD dwExStyle ) ;
-! FUNCTION: AlignRects
-! FUNCTION: AllowForegroundActivation
-! FUNCTION: AllowSetForegroundWindow
-! FUNCTION: AnimateWindow
-
-
-
-FUNCTION: BOOL AnyPopup ( ) ;
-
-! FUNCTION: AppendMenuA
-! FUNCTION: AppendMenuW
-! FUNCTION: ArrangeIconicWindows
-! FUNCTION: AttachThreadInput
-! FUNCTION: BeginDeferWindowPos
-
-
-FUNCTION: HDC BeginPaint ( HWND hwnd, LPPAINTSTRUCT lpPaint ) ;
-
-! FUNCTION: BlockInput
-! FUNCTION: BringWindowToTop
-! FUNCTION: BroadcastSystemMessage
-! FUNCTION: BroadcastSystemMessageA
-! FUNCTION: BroadcastSystemMessageExA
-! FUNCTION: BroadcastSystemMessageExW
-! FUNCTION: BroadcastSystemMessageW
-! FUNCTION: BuildReasonArray
-! FUNCTION: CalcMenuBar
-! FUNCTION: CallMsgFilter
-! FUNCTION: CallMsgFilterA
-! FUNCTION: CallMsgFilterW
-! FUNCTION: CallNextHookEx
-! FUNCTION: CallWindowProcA
-! FUNCTION: CallWindowProcW
-! FUNCTION: CascadeChildWindows
-! FUNCTION: CascadeWindows
-! FUNCTION: ChangeClipboardChain
-! FUNCTION: ChangeDisplaySettingsA
-! FUNCTION: ChangeDisplaySettingsExA
-! FUNCTION: ChangeDisplaySettingsExW
-! FUNCTION: ChangeDisplaySettingsW
-! FUNCTION: ChangeMenuA
-! FUNCTION: ChangeMenuW
-! FUNCTION: CharLowerA
-! FUNCTION: CharLowerBuffA
-! FUNCTION: CharLowerBuffW
-! FUNCTION: CharLowerW
-! FUNCTION: CharNextA
-! FUNCTION: CharNextExA
-! FUNCTION: CharNextW
-! FUNCTION: CharPrevA
-! FUNCTION: CharPrevExA
-! FUNCTION: CharPrevW
-! FUNCTION: CharToOemA
-! FUNCTION: CharToOemBuffA
-! FUNCTION: CharToOemBuffW
-! FUNCTION: CharToOemW
-! FUNCTION: CharUpperA
-! FUNCTION: CharUpperBuffA
-! FUNCTION: CharUpperBuffW
-! FUNCTION: CharUpperW
-! FUNCTION: CheckDlgButton
-! FUNCTION: CheckMenuItem
-! FUNCTION: CheckMenuRadioItem
-! FUNCTION: CheckRadioButton
-! FUNCTION: ChildWindowFromPoint
-! FUNCTION: ChildWindowFromPointEx
-! FUNCTION: ClientThreadSetup
-! FUNCTION: ClientToScreen
-! FUNCTION: CliImmSetHotKey
-! FUNCTION: ClipCursor
-FUNCTION: BOOL CloseClipboard ( ) ;
-! FUNCTION: CloseDesktop
-! FUNCTION: CloseWindow
-! FUNCTION: CloseWindowStation
-! FUNCTION: CopyAcceleratorTableA
-! FUNCTION: CopyAcceleratorTableW
-! FUNCTION: CopyIcon
-! FUNCTION: CopyImage
-! FUNCTION: CopyRect
-! FUNCTION: CountClipboardFormats
-! FUNCTION: CreateAcceleratorTableA
-! FUNCTION: CreateAcceleratorTableW
-! FUNCTION: CreateCaret
-! FUNCTION: CreateCursor
-! FUNCTION: CreateDesktopA
-! FUNCTION: CreateDesktopW
-! FUNCTION: CreateDialogIndirectParamA
-! FUNCTION: CreateDialogIndirectParamAorW
-! FUNCTION: CreateDialogIndirectParamW
-! FUNCTION: CreateDialogParamA
-! FUNCTION: CreateDialogParamW
-! FUNCTION: CreateIcon
-! FUNCTION: CreateIconFromResource
-! FUNCTION: CreateIconFromResourceEx
-! FUNCTION: CreateIconIndirect
-! FUNCTION: CreateMDIWindowA
-! FUNCTION: CreateMDIWindowW
-! FUNCTION: CreateMenu
-! FUNCTION: CreatePopupMenu
-! FUNCTION: CreateSystemThreads
-
-FUNCTION: HWND CreateWindowExA (
- DWORD dwExStyle,
- LPCSTR lpClassName,
- LPCSTR lpWindowName,
- DWORD dwStyle,
- uint X,
- uint Y,
- uint nWidth,
- uint nHeight,
- HWND hWndParent,
- HMENU hMenu,
- HINSTANCE hInstance,
- LPVOID lpParam ) ;
-
-FUNCTION: HWND CreateWindowExW (
- DWORD dwExStyle,
- LPCWSTR lpClassName,
- LPCWSTR lpWindowName,
- DWORD dwStyle,
- uint X,
- uint Y,
- uint nWidth,
- uint nHeight,
- HWND hWndParent,
- HMENU hMenu,
- HINSTANCE hInstance,
- LPVOID lpParam ) ;
-
-: CreateWindowEx \ CreateWindowExW \ CreateWindowExA unicode-exec ;
-
-! 11 >r <r
-: CreateWindow >r >r >r >r >r >r >r >r >r >r >r 0 r> r> r> r> r> r> r> r> r> r> r> CreateWindowEx ;
-
-
-! FUNCTION: CreateWindowStationA
-! FUNCTION: CreateWindowStationW
-! FUNCTION: CsrBroadcastSystemMessageExW
-! FUNCTION: CtxInitUser32
-! FUNCTION: DdeAbandonTransaction
-! FUNCTION: DdeAccessData
-! FUNCTION: DdeAddData
-! FUNCTION: DdeClientTransaction
-! FUNCTION: DdeCmpStringHandles
-! FUNCTION: DdeConnect
-! FUNCTION: DdeConnectList
-! FUNCTION: DdeCreateDataHandle
-! FUNCTION: DdeCreateStringHandleA
-! FUNCTION: DdeCreateStringHandleW
-! FUNCTION: DdeDisconnect
-! FUNCTION: DdeDisconnectList
-! FUNCTION: DdeEnableCallback
-! FUNCTION: DdeFreeDataHandle
-! FUNCTION: DdeFreeStringHandle
-! FUNCTION: DdeGetData
-! FUNCTION: DdeGetLastError
-! FUNCTION: DdeGetQualityOfService
-! FUNCTION: DdeImpersonateClient
-! FUNCTION: DdeInitializeA
-! FUNCTION: DdeInitializeW
-! FUNCTION: DdeKeepStringHandle
-! FUNCTION: DdeNameService
-! FUNCTION: DdePostAdvise
-! FUNCTION: DdeQueryConvInfo
-! FUNCTION: DdeQueryNextServer
-! FUNCTION: DdeQueryStringA
-! FUNCTION: DdeQueryStringW
-! FUNCTION: DdeReconnect
-! FUNCTION: DdeSetQualityOfService
-! FUNCTION: DdeSetUserHandle
-! FUNCTION: DdeUnaccessData
-! FUNCTION: DdeUninitialize
-! FUNCTION: DefDlgProcA
-! FUNCTION: DefDlgProcW
-! FUNCTION: DeferWindowPos
-! FUNCTION: DefFrameProcA
-! FUNCTION: DefFrameProcW
-! FUNCTION: DefMDIChildProcA
-! FUNCTION: DefMDIChildProcW
-! FUNCTION: DefRawInputProc
-FUNCTION: LRESULT DefWindowProcA ( HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam ) ;
-FUNCTION: LRESULT DefWindowProcW ( HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam ) ;
-: DefWindowProc \ DefWindowProcW \ DefWindowProcA unicode-exec ;
-! FUNCTION: DeleteMenu
-! FUNCTION: DeregisterShellHookWindow
-! FUNCTION: DestroyAcceleratorTable
-! FUNCTION: DestroyCaret
-! FUNCTION: DestroyCursor
-! FUNCTION: DestroyIcon
-! FUNCTION: DestroyMenu
-! FUNCTION: DestroyReasons
-FUNCTION: BOOL DestroyWindow ( HWND hWnd ) ;
-! FUNCTION: DeviceEventWorker
-! FUNCTION: DialogBoxIndirectParamA
-! FUNCTION: DialogBoxIndirectParamAorW
-! FUNCTION: DialogBoxIndirectParamW
-! FUNCTION: DialogBoxParamA
-! FUNCTION: DialogBoxParamW
-! FUNCTION: DisableProcessWindowsGhosting
-
-FUNCTION: LONG DispatchMessageA ( MSG* lpMsg ) ;
-FUNCTION: LONG DispatchMessageW ( MSG* lpMsg ) ;
-: DispatchMessage \ DispatchMessageW \ DispatchMessageA unicode-exec ;
-
-! FUNCTION: DisplayExitWindowsWarnings
-! FUNCTION: DlgDirListA
-! FUNCTION: DlgDirListComboBoxA
-! FUNCTION: DlgDirListComboBoxW
-! FUNCTION: DlgDirListW
-! FUNCTION: DlgDirSelectComboBoxExA
-! FUNCTION: DlgDirSelectComboBoxExW
-! FUNCTION: DlgDirSelectExA
-! FUNCTION: DlgDirSelectExW
-! FUNCTION: DragDetect
-! FUNCTION: DragObject
-
-
-FUNCTION: BOOL DrawAnimatedRects ( HWND hWnd, int idAni, RECT* lprcFrom, RECT* lprcTo ) ;
-! FUNCTION: BOOL DrawCaption ( HWND hWnd, HDC hdc, LPRECT lprc, UINT uFlags ) ;
-
-! FUNCTION: DrawEdge
-! FUNCTION: DrawFocusRect
-! FUNCTION: DrawFrame
-! FUNCTION: DrawFrameControl
-! FUNCTION: DrawIcon
-! FUNCTION: DrawIconEx
-! FUNCTION: DrawMenuBar
-! FUNCTION: DrawMenuBarTemp
-! FUNCTION: DrawStateA
-! FUNCTION: DrawStateW
-! FUNCTION: DrawTextA
-! FUNCTION: DrawTextExA
-! FUNCTION: DrawTextExW
-! FUNCTION: DrawTextW
-! FUNCTION: EditWndProc
-FUNCTION: BOOL EmptyClipboard ( ) ;
-! FUNCTION: EnableMenuItem
-! FUNCTION: EnableScrollBar
-! FUNCTION: EnableWindow
-! FUNCTION: EndDeferWindowPos
-! FUNCTION: EndDialog
-! FUNCTION: EndMenu
-
-FUNCTION: BOOL EndPaint ( HWND hWnd, PAINTSTRUCT* lpPaint) ;
-
-! FUNCTION: EndTask
-! FUNCTION: EnterReaderModeHelper
-! FUNCTION: EnumChildWindows
-FUNCTION: UINT EnumClipboardFormats ( UINT format ) ;
-! FUNCTION: EnumDesktopsA
-! FUNCTION: EnumDesktopsW
-! FUNCTION: EnumDesktopWindows
-! FUNCTION: EnumDisplayDevicesA
-! FUNCTION: EnumDisplayDevicesW
-! FUNCTION: EnumDisplayMonitors
-! FUNCTION: EnumDisplaySettingsA
-! FUNCTION: EnumDisplaySettingsExA
-! FUNCTION: EnumDisplaySettingsExW
-! FUNCTION: EnumDisplaySettingsW
-! FUNCTION: EnumPropsA
-! FUNCTION: EnumPropsExA
-! FUNCTION: EnumPropsExW
-! FUNCTION: EnumPropsW
-! FUNCTION: EnumThreadWindows
-! FUNCTION: EnumWindows
-! FUNCTION: EnumWindowStationsA
-! FUNCTION: EnumWindowStationsW
-! FUNCTION: EqualRect
-! FUNCTION: ExcludeUpdateRgn
-! FUNCTION: ExitWindowsEx
-! FUNCTION: FillRect
-! FUNCTION: FindWindowA
-! FUNCTION: FindWindowExA
-! FUNCTION: FindWindowExW
-! FUNCTION: FindWindowW
-! FUNCTION: FlashWindow
-! FUNCTION: FlashWindowEx
-! FUNCTION: FrameRect
-! FUNCTION: FreeDDElParam
-! FUNCTION: GetActiveWindow
-! FUNCTION: GetAltTabInfo
-! FUNCTION: GetAltTabInfoA
-! FUNCTION: GetAltTabInfoW
-! FUNCTION: GetAncestor
-! FUNCTION: GetAppCompatFlags
-! FUNCTION: GetAppCompatFlags2
-! FUNCTION: GetAsyncKeyState
-FUNCTION: HWND GetCapture ( ) ;
-! FUNCTION: GetCaretBlinkTime
-! FUNCTION: GetCaretPos
-FUNCTION: BOOL GetClassInfoA ( HINSTANCE hInst, LPCTSTR lpszClass, LPWNDCLASS lpwcx ) ;
-FUNCTION: BOOL GetClassInfoW ( HINSTANCE hInst, LPCWSTR lpszClass, LPWNDCLASS lpwcx ) ;
-: GetClassInfo \ GetClassInfoW \ GetClassInfoA unicode-exec ;
-
-FUNCTION: BOOL GetClassInfoExA ( HINSTANCE hInst, LPCTSTR lpszClass, LPWNDCLASSEX lpwcx ) ;
-FUNCTION: BOOL GetClassInfoExW ( HINSTANCE hInst, LPCWSTR lpszClass, LPWNDCLASSEX lpwcx ) ;
-: GetClassInfoEx \ GetClassInfoExW \ GetClassInfoExA unicode-exec ;
-
-FUNCTION: ULONG_PTR GetClassLongA ( HWND hWnd, int nIndex ) ;
-FUNCTION: ULONG_PTR GetClassLongW ( HWND hWnd, int nIndex ) ;
-: GetClassLong \ GetClassLongW \ GetClassLongA unicode-exec ;
-: GetClassLongPtr \ GetClassLongW \ GetClassLongA unicode-exec ;
-
-
-! FUNCTION: GetClassNameA
-! FUNCTION: GetClassNameW
-! FUNCTION: GetClassWord
-! FUNCTION: BOOL GetClientRect ( HWND hWnd, LPRECT lpRect ) ;
-
-FUNCTION: HANDLE GetClipboardData ( UINT uFormat ) ;
-
-! FUNCTION: GetClipboardFormatNameA
-! FUNCTION: GetClipboardFormatNameW
-FUNCTION: HWND GetClipboardOwner ( ) ;
-FUNCTION: DWORD GetClipboardSequenceNumber ( ) ;
-! FUNCTION: GetClipboardViewer
-! FUNCTION: GetClipCursor
-! FUNCTION: GetComboBoxInfo
-! FUNCTION: GetCursor
-! FUNCTION: GetCursorFrameInfo
-! FUNCTION: GetCursorInfo
-! FUNCTION: GetCursorPos
-FUNCTION: HDC GetDC ( HWND hWnd ) ;
-FUNCTION: HDC GetDCEx ( HWND hWnd, HRGN hrgnClip, DWORD flags ) ;
-! FUNCTION: GetDesktopWindow
-! FUNCTION: GetDialogBaseUnits
-! FUNCTION: GetDlgCtrlID
-! FUNCTION: GetDlgItem
-! FUNCTION: GetDlgItemInt
-! FUNCTION: GetDlgItemTextA
-! FUNCTION: GetDlgItemTextW
-! FUNCTION: GetDoubleClickTime
-FUNCTION: HWND GetFocus ( ) ;
-! FUNCTION: GetForegroundWindow
-! FUNCTION: GetGuiResources
-! FUNCTION: GetGUIThreadInfo
-! FUNCTION: GetIconInfo
-! FUNCTION: GetInputDesktop
-! FUNCTION: GetInputState
-! FUNCTION: GetInternalWindowPos
-! FUNCTION: GetKBCodePage
-! FUNCTION: GetKeyboardLayout
-! FUNCTION: GetKeyboardLayoutList
-! FUNCTION: GetKeyboardLayoutNameA
-! FUNCTION: GetKeyboardLayoutNameW
-! FUNCTION: GetKeyboardState
-! FUNCTION: GetKeyboardType
-! FUNCTION: GetKeyNameTextA
-! FUNCTION: GetKeyNameTextW
-FUNCTION: SHORT GetKeyState ( int nVirtKey ) ;
-! FUNCTION: GetLastActivePopup
-! FUNCTION: GetLastInputInfo
-! FUNCTION: GetLayeredWindowAttributes
-! FUNCTION: GetListBoxInfo
-! FUNCTION: GetMenu
-! FUNCTION: GetMenuBarInfo
-! FUNCTION: GetMenuCheckMarkDimensions
-! FUNCTION: GetMenuContextHelpId
-! FUNCTION: GetMenuDefaultItem
-! FUNCTION: GetMenuInfo
-! FUNCTION: GetMenuItemCount
-! FUNCTION: GetMenuItemID
-! FUNCTION: GetMenuItemInfoA
-! FUNCTION: GetMenuItemInfoW
-! FUNCTION: GetMenuItemRect
-! FUNCTION: GetMenuState
-! FUNCTION: GetMenuStringA
-! FUNCTION: GetMenuStringW
-
-FUNCTION: BOOL GetMessageA ( LPMSG lpMsg, HWND hWnd, UINT wMsgFilterMin, UINT wMsgFilterMax ) ;
-FUNCTION: BOOL GetMessageW ( LPMSG lpMsg, HWND hWnd, UINT wMsgFilterMin, UINT wMsgFilterMax ) ;
-: GetMessage \ GetMessageW \ GetMessageA unicode-exec ;
-
-! FUNCTION: GetMessageExtraInfo
-! FUNCTION: GetMessagePos
-! FUNCTION: GetMessageTime
-! FUNCTION: GetMonitorInfoA
-! FUNCTION: GetMonitorInfoW
-! FUNCTION: GetMouseMovePointsEx
-! FUNCTION: GetNextDlgGroupItem
-! FUNCTION: GetNextDlgTabItem
-! FUNCTION: GetOpenClipboardWindow
-FUNCTION: HWND GetParent ( HWND hWnd ) ;
-FUNCTION: int GetPriorityClipboardFormat ( UINT* paFormatPriorityList, int cFormats ) ;
-! FUNCTION: GetProcessDefaultLayout
-! FUNCTION: GetProcessWindowStation
-! FUNCTION: GetProgmanWindow
-! FUNCTION: GetPropA
-! FUNCTION: GetPropW
-! FUNCTION: GetQueueStatus
-! FUNCTION: GetRawInputBuffer
-! FUNCTION: GetRawInputData
-! FUNCTION: GetRawInputDeviceInfoA
-! FUNCTION: GetRawInputDeviceInfoW
-! FUNCTION: GetRawInputDeviceList
-! FUNCTION: GetReasonTitleFromReasonCode
-! FUNCTION: GetRegisteredRawInputDevices
-! FUNCTION: GetScrollBarInfo
-! FUNCTION: GetScrollInfo
-! FUNCTION: GetScrollPos
-! FUNCTION: GetScrollRange
-! FUNCTION: GetShellWindow
-! FUNCTION: GetSubMenu
-! FUNCTION: GetSysColor
-FUNCTION: HBRUSH GetSysColorBrush ( int nIndex ) ;
-! FUNCTION: GetSystemMenu
-! FUNCTION: GetSystemMetrics
-! FUNCTION: GetTabbedTextExtentA
-! FUNCTION: GetTabbedTextExtentW
-! FUNCTION: GetTaskmanWindow
-! FUNCTION: GetThreadDesktop
-! FUNCTION: GetTitleBarInfo
-
-
-FUNCTION: HWND GetTopWindow ( HWND hWnd ) ;
-! FUNCTION: BOOL GetUpdateRect ( HWND hWnd, LPRECT lpRect, BOOL bErase ) ;
-FUNCTION: int GetUpdateRgn ( HWND hWnd, HRGN hRgn, BOOL bErase ) ;
-
-
-! FUNCTION: GetUserObjectInformationA
-! FUNCTION: GetUserObjectInformationW
-! FUNCTION: GetUserObjectSecurity
-FUNCTION: HWND GetWindow ( HWND hWnd, UINT uCmd ) ;
-! FUNCTION: GetWindowContextHelpId
-! FUNCTION: GetWindowDC
-! FUNCTION: GetWindowInfo
-! FUNCTION: GetWindowLongA
-! FUNCTION: GetWindowLongW
-! FUNCTION: GetWindowModuleFileName
-! FUNCTION: GetWindowModuleFileNameA
-! FUNCTION: GetWindowModuleFileNameW
-! FUNCTION: GetWindowPlacement
-! FUNCTION: BOOL GetWindowRect ( HWND hWnd, LPRECT lpRect ) ;
-! FUNCTION: GetWindowRgn
-! FUNCTION: GetWindowRgnBox
-! FUNCTION: GetWindowTextA
-! FUNCTION: GetWindowTextLengthA
-! FUNCTION: GetWindowTextLengthW
-! FUNCTION: GetWindowTextW
-! FUNCTION: GetWindowThreadProcessId
-! FUNCTION: GetWindowWord
-! FUNCTION: GetWinStationInfo
-! FUNCTION: GrayStringA
-! FUNCTION: GrayStringW
-! FUNCTION: HideCaret
-! FUNCTION: HiliteMenuItem
-! FUNCTION: ImpersonateDdeClientWindow
-! FUNCTION: IMPGetIMEA
-! FUNCTION: IMPGetIMEW
-! FUNCTION: IMPQueryIMEA
-! FUNCTION: IMPQueryIMEW
-! FUNCTION: IMPSetIMEA
-! FUNCTION: IMPSetIMEW
-! FUNCTION: InflateRect
-! FUNCTION: InitializeLpkHooks
-! FUNCTION: InitializeWin32EntryTable
-! FUNCTION: InSendMessage
-! FUNCTION: InSendMessageEx
-! FUNCTION: InsertMenuA
-! FUNCTION: InsertMenuItemA
-! FUNCTION: InsertMenuItemW
-! FUNCTION: InsertMenuW
-! FUNCTION: InternalGetWindowText
-! FUNCTION: IntersectRect
-! FUNCTION: InvalidateRect
-! FUNCTION: InvalidateRgn
-! FUNCTION: InvertRect
-! FUNCTION: IsCharAlphaA
-! FUNCTION: IsCharAlphaNumericA
-! FUNCTION: IsCharAlphaNumericW
-! FUNCTION: IsCharAlphaW
-! FUNCTION: IsCharLowerA
-! FUNCTION: IsCharLowerW
-! FUNCTION: IsCharUpperA
-! FUNCTION: IsCharUpperW
-FUNCTION: BOOL IsChild ( HWND hWndParent, HWND hWnd ) ;
-FUNCTION: BOOL IsClipboardFormatAvailable ( UINT format ) ;
-! FUNCTION: IsDialogMessage
-! FUNCTION: IsDialogMessageA
-! FUNCTION: IsDialogMessageW
-! FUNCTION: IsDlgButtonChecked
-FUNCTION: BOOL IsGUIThread ( BOOL bConvert ) ;
-FUNCTION: BOOL IsHungAppWindow ( HWND hWnd ) ;
-FUNCTION: BOOL IsIconic ( HWND hWnd ) ;
-FUNCTION: BOOL IsMenu ( HMENU hMenu ) ;
-! FUNCTION: BOOL IsRectEmpty
-! FUNCTION: BOOL IsServerSideWindow
-FUNCTION: BOOL IsWindow ( HWND hWnd ) ;
-! FUNCTION: BOOL IsWindowEnabled
-! FUNCTION: BOOL IsWindowInDestroy
-FUNCTION: BOOL IsWindowUnicode ( HWND hWnd ) ;
-FUNCTION: BOOL IsWindowVisible ( HWND hWnd ) ;
-! FUNCTION: BOOL IsWinEventHookInstalled
-FUNCTION: BOOL IsZoomed ( HWND hWnd ) ;
-! FUNCTION: keybd_event
-! FUNCTION: KillSystemTimer
-! FUNCTION: KillTimer
-! FUNCTION: LoadAcceleratorsA
-! FUNCTION: LoadAcceleratorsW
-! FUNCTION: LoadBitmapA
-! FUNCTION: LoadBitmapW
-! FUNCTION: LoadCursorFromFileA
-! FUNCTION: LoadCursorFromFileW
-
-
-! FUNCTION: HCURSOR LoadCursorA ( HINSTANCE hInstance, LPCTSTR lpCursorName ) ;
-! FUNCTION: HCURSOR LoadCursorW ( HINSTANCE hInstance, LPCWSTR lpCursorName ) ;
-FUNCTION: HCURSOR LoadCursorA ( HINSTANCE hInstance, ushort lpCursorName ) ;
-FUNCTION: HCURSOR LoadCursorW ( HINSTANCE hInstance, ushort lpCursorName ) ;
-: LoadCursor \ LoadCursorW \ LoadCursorA unicode-exec ;
-
-! FUNCTION: HICON LoadIconA ( HINSTANCE hInstance, LPCTSTR lpIconName ) ;
-! FUNCTION: HICON LoadIconW ( HINSTANCE hInstance, LPCWSTR lpIconName ) ;
-FUNCTION: HICON LoadIconA ( HINSTANCE hInstance, ushort lpIconName ) ;
-FUNCTION: HICON LoadIconW ( HINSTANCE hInstance, ushort lpIconName ) ;
-: LoadIcon \ LoadIconW \ LoadIconA unicode-exec ;
-
-! FUNCTION: LoadImageA
-! FUNCTION: LoadImageW
-! FUNCTION: LoadKeyboardLayoutA
-! FUNCTION: LoadKeyboardLayoutEx
-! FUNCTION: LoadKeyboardLayoutW
-! FUNCTION: LoadLocalFonts
-! FUNCTION: LoadMenuA
-! FUNCTION: LoadMenuIndirectA
-! FUNCTION: LoadMenuIndirectW
-! FUNCTION: LoadMenuW
-! FUNCTION: LoadRemoteFonts
-! FUNCTION: LoadStringA
-! FUNCTION: LoadStringW
-! FUNCTION: LockSetForegroundWindow
-! FUNCTION: LockWindowStation
-! FUNCTION: LockWindowUpdate
-! FUNCTION: LockWorkStation
-! FUNCTION: LookupIconIdFromDirectory
-! FUNCTION: LookupIconIdFromDirectoryEx
-! FUNCTION: MapDialogRect
-! FUNCTION: MapVirtualKeyA
-! FUNCTION: MapVirtualKeyExA
-! FUNCTION: MapVirtualKeyExW
-! FUNCTION: MapVirtualKeyW
-! FUNCTION: MapWindowPoints
-! FUNCTION: MB_GetString
-! FUNCTION: MBToWCSEx
-! FUNCTION: MenuItemFromPoint
-! FUNCTION: MenuWindowProcA
-! FUNCTION: MenuWindowProcW
-
-
-: MB_ICONASTERISK HEX: 00000040 ;
-: MB_ICONEXCLAMATION HEX: 00000030 ;
-: MB_ICONHAND HEX: 00000010 ;
-: MB_ICONQUESTION HEX: 00000020 ;
-: MB_OK HEX: 00000000 ;
-! -1 is Simple beep
-FUNCTION: BOOL MessageBeep ( UINT uType ) ;
-
-FUNCTION: int MessageBoxA (
- HWND hWnd,
- LPCSTR lpText,
- LPCSTR lpCaption,
- UINT uType ) ;
-
-FUNCTION: int MessageBoxW (
- HWND hWnd,
- LPCWSTR lpText,
- LPCWSTR lpCaption,
- UINT uType) ;
-
-FUNCTION: int MessageBoxExA ( HWND hWnd,
- LPCSTR lpText,
- LPCSTR lpCaption,
- UINT uType,
- WORD wLanguageId
- ) ;
-
-FUNCTION: int MessageBoxExW (
- HWND hWnd,
- LPCWSTR lpText,
- LPCWSTR lpCaption,
- UINT uType,
- WORD wLanguageId ) ;
-
-FUNCTION: int MessageBoxIndirectA (
- MSGBOXPARAMSA* params ) ;
-
-FUNCTION: int MessageBoxIndirectW (
- MSGBOXPARAMSW* params ) ;
-
-
-: MessageBox ( -- )
- \ MessageBoxW \ MessageBoxA unicode-exec ;
-
-: MessageBoxEx ( -- )
- \ MessageBoxExW \ MessageBoxExA unicode-exec ;
-
-: MessageBoxIndirect ( -- )
- \ MessageBoxIndirectW \ MessageBoxIndirectA unicode-exec ;
-
-! FUNCTION: MessageBoxTimeoutA ! dllexported, not in header
-! FUNCTION: MessageBoxTimeoutW ! dllexported, not in header
-
-! FUNCTION: ModifyMenuA
-! FUNCTION: ModifyMenuW
-! FUNCTION: MonitorFromPoint
-! FUNCTION: MonitorFromRect
-! FUNCTION: MonitorFromWindow
-! FUNCTION: mouse_event
-
-
-
-FUNCTION: BOOL MoveWindow (
- HWND hWnd,
- int X,
- int Y,
- int nWidth,
- int nHeight,
- BOOL bRepaint ) ;
-
-
-! FUNCTION: MsgWaitForMultipleObjects
-! FUNCTION: MsgWaitForMultipleObjectsEx
-! FUNCTION: NotifyWinEvent
-! FUNCTION: OemKeyScan
-! FUNCTION: OemToCharA
-! FUNCTION: OemToCharBuffA
-! FUNCTION: OemToCharBuffW
-! FUNCTION: OemToCharW
-! FUNCTION: OffsetRect
-FUNCTION: BOOL OpenClipboard ( HWND hWndNewOwner ) ;
-! FUNCTION: OpenDesktopA
-! FUNCTION: OpenDesktopW
-! FUNCTION: OpenIcon
-! FUNCTION: OpenInputDesktop
-! FUNCTION: OpenWindowStationA
-! FUNCTION: OpenWindowStationW
-! FUNCTION: PackDDElParam
-! FUNCTION: PaintDesktop
-! FUNCTION: PaintMenuBar
-FUNCTION: BOOL PeekMessageA ( LPMSG lpMsg, HWND hWnd, UINT wMsgFilterMin, UINT wMsgFilterMax, UINT wRemoveMsg ) ;
-FUNCTION: BOOL PeekMessageW ( LPMSG lpMsg, HWND hWnd, UINT wMsgFilterMin, UINT wMsgFilterMax, UINT wRemoveMsg ) ;
-: PeekMessage \ PeekMessageW \ PeekMessageA unicode-exec ;
-
-! FUNCTION: PostMessageA
-! FUNCTION: PostMessageW
-FUNCTION: void PostQuitMessage ( int nExitCode ) ;
-! FUNCTION: PostThreadMessageA
-! FUNCTION: PostThreadMessageW
-! FUNCTION: PrintWindow
-! FUNCTION: PrivateExtractIconExA
-! FUNCTION: PrivateExtractIconExW
-! FUNCTION: PrivateExtractIconsA
-! FUNCTION: PrivateExtractIconsW
-! FUNCTION: PrivateSetDbgTag
-! FUNCTION: PrivateSetRipFlags
-! FUNCTION: PtInRect
-! FUNCTION: QuerySendMessage
-! FUNCTION: QueryUserCounters
-! FUNCTION: RealChildWindowFromPoint
-! FUNCTION: RealGetWindowClass
-! FUNCTION: RealGetWindowClassA
-! FUNCTION: RealGetWindowClassW
-! FUNCTION: ReasonCodeNeedsBugID
-! FUNCTION: ReasonCodeNeedsComment
-! FUNCTION: RecordShutdownReason
-! FUNCTION: RedrawWindow
-
-FUNCTION: ATOM RegisterClassA ( WNDCLASS* lpWndClass) ;
-FUNCTION: ATOM RegisterClassW ( WNDCLASS* lpWndClass ) ;
-FUNCTION: ATOM RegisterClassExA ( WNDCLASSEX* lpwcx ) ;
-FUNCTION: ATOM RegisterClassExW ( WNDCLASSEX* lpwcx ) ;
-
-: RegisterClass \ RegisterClassW \ RegisterClassA unicode-exec ;
-: RegisterClassEx \ RegisterClassExW \ RegisterClassExA unicode-exec ;
-
-! FUNCTION: RegisterClipboardFormatA
-! FUNCTION: RegisterClipboardFormatW
-! FUNCTION: RegisterDeviceNotificationA
-! FUNCTION: RegisterDeviceNotificationW
-! FUNCTION: RegisterHotKey
-! FUNCTION: RegisterLogonProcess
-! FUNCTION: RegisterMessagePumpHook
-! FUNCTION: RegisterRawInputDevices
-! FUNCTION: RegisterServicesProcess
-! FUNCTION: RegisterShellHookWindow
-! FUNCTION: RegisterSystemThread
-! FUNCTION: RegisterTasklist
-! FUNCTION: RegisterUserApiHook
-! FUNCTION: RegisterWindowMessageA
-! FUNCTION: RegisterWindowMessageW
-FUNCTION: BOOL ReleaseCapture ( ) ;
-FUNCTION: int ReleaseDC ( HWND hWnd, HDC hDC ) ;
-! FUNCTION: RemoveMenu
-! FUNCTION: RemovePropA
-! FUNCTION: RemovePropW
-! FUNCTION: ReplyMessage
-! FUNCTION: ResolveDesktopForWOW
-! FUNCTION: ReuseDDElParam
-! FUNCTION: ScreenToClient
-! FUNCTION: ScrollChildren
-! FUNCTION: ScrollDC
-! FUNCTION: ScrollWindow
-! FUNCTION: ScrollWindowEx
-! FUNCTION: SendDlgItemMessageA
-! FUNCTION: SendDlgItemMessageW
-! FUNCTION: SendIMEMessageExA
-! FUNCTION: SendIMEMessageExW
-! FUNCTION: UINT SendInput ( UINT nInputs, LPINPUT pInputs, int cbSize ) ;
-FUNCTION: LRESULT SendMessageA ( HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam ) ;
-FUNCTION: LRESULT SendMessageW ( HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam ) ;
-: SendMessage \ SendMessageW \ SendMessageA unicode-exec ;
-! FUNCTION: SendMessageCallbackA
-! FUNCTION: SendMessageCallbackW
-! FUNCTION: SendMessageTimeoutA
-! FUNCTION: SendMessageTimeoutW
-! FUNCTION: SendNotifyMessageA
-! FUNCTION: SendNotifyMessageW
-! FUNCTION: SetActiveWindow
-FUNCTION: HWND SetCapture ( HWND hWnd ) ;
-! FUNCTION: SetCaretBlinkTime
-! FUNCTION: SetCaretPos
-
-FUNCTION: ULONG_PTR SetClassLongW ( HWND hWnd, int nIndex, LONG_PTR dwNewLong ) ;
-FUNCTION: ULONG_PTR SetClassLongA ( HWND hWnd, int nIndex, LONG_PTR dwNewLong ) ;
-: SetClassLongPtr \ SetClassLongW \ SetClassLongA unicode-exec ;
-: SetClassLong \ SetClassLongW \ SetClassLongA unicode-exec ;
-
-! FUNCTION: SetClassWord
-FUNCTION: HANDLE SetClipboardData ( UINT uFormat, HANDLE hMem ) ;
-! FUNCTION: SetClipboardViewer
-! FUNCTION: SetConsoleReserveKeys
-! FUNCTION: SetCursor
-! FUNCTION: SetCursorContents
-! FUNCTION: SetCursorPos
-! FUNCTION: SetDebugErrorLevel
-! FUNCTION: SetDeskWallpaper
-! FUNCTION: SetDlgItemInt
-! FUNCTION: SetDlgItemTextA
-! FUNCTION: SetDlgItemTextW
-! FUNCTION: SetDoubleClickTime
-FUNCTION: HWND SetFocus ( HWND hWnd ) ;
-FUNCTION: BOOL SetForegroundWindow ( HWND hWnd ) ;
-! FUNCTION: SetInternalWindowPos
-! FUNCTION: SetKeyboardState
-! type is ignored
-FUNCTION: void SetLastErrorEx ( DWORD dwErrCode, DWORD dwType ) ;
-: SetLastError 0 SetLastErrorEx ;
-! FUNCTION: SetLayeredWindowAttributes
-! FUNCTION: SetLogonNotifyWindow
-! FUNCTION: SetMenu
-! FUNCTION: SetMenuContextHelpId
-! FUNCTION: SetMenuDefaultItem
-! FUNCTION: SetMenuInfo
-! FUNCTION: SetMenuItemBitmaps
-! FUNCTION: SetMenuItemInfoA
-! FUNCTION: SetMenuItemInfoW
-! FUNCTION: SetMessageExtraInfo
-! FUNCTION: SetMessageQueue
-! FUNCTION: SetParent
-! FUNCTION: SetProcessDefaultLayout
-! FUNCTION: SetProcessWindowStation
-! FUNCTION: SetProgmanWindow
-! FUNCTION: SetPropA
-! FUNCTION: SetPropW
-! FUNCTION: SetRect
-! FUNCTION: SetRectEmpty
-! FUNCTION: SetScrollInfo
-! FUNCTION: SetScrollPos
-! FUNCTION: SetScrollRange
-! FUNCTION: SetShellWindow
-! FUNCTION: SetShellWindowEx
-! FUNCTION: SetSysColors
-! FUNCTION: SetSysColorsTemp
-! FUNCTION: SetSystemCursor
-! FUNCTION: SetSystemMenu
-! FUNCTION: SetSystemTimer
-! FUNCTION: SetTaskmanWindow
-! FUNCTION: SetThreadDesktop
-! FUNCTION: SetTimer
-! FUNCTION: SetUserObjectInformationA
-! FUNCTION: SetUserObjectInformationW
-! FUNCTION: SetUserObjectSecurity
-! FUNCTION: SetWindowContextHelpId
-! FUNCTION: SetWindowLongA
-! FUNCTION: SetWindowLongW
-! FUNCTION: SetWindowPlacement
-! FUNCTION: SetWindowPos
-! FUNCTION: SetWindowRgn
-! FUNCTION: SetWindowsHookA
-! FUNCTION: SetWindowsHookExA
-! FUNCTION: SetWindowsHookExW
-! FUNCTION: SetWindowsHookW
-! FUNCTION: SetWindowStationUser
-! FUNCTION: SetWindowTextA
-! FUNCTION: SetWindowTextW
-! FUNCTION: SetWindowWord
-! FUNCTION: SetWinEventHook
-! FUNCTION: ShowCaret
-! FUNCTION: ShowCursor
-! FUNCTION: ShowOwnedPopups
-! FUNCTION: ShowScrollBar
-! FUNCTION: ShowStartGlass
-
-FUNCTION: BOOL ShowWindow ( HWND hWnd, int nCmdShow ) ;
-
-! FUNCTION: ShowWindowAsync
-! FUNCTION: SoftModalMessageBox
-! FUNCTION: SubtractRect
-! FUNCTION: SwapMouseButton
-! FUNCTION: SwitchDesktop
-! FUNCTION: SwitchToThisWindow
-! FUNCTION: SystemParametersInfoA
-! FUNCTION: SystemParametersInfoW
-! FUNCTION: TabbedTextOutA
-! FUNCTION: TabbedTextOutW
-! FUNCTION: TileChildWindows
-! FUNCTION: TileWindows
-! FUNCTION: ToAscii
-! FUNCTION: ToAsciiEx
-! FUNCTION: ToUnicode
-! FUNCTION: ToUnicodeEx
-! FUNCTION: TrackMouseEvent
-! FUNCTION: TrackPopupMenu
-! FUNCTION: TrackPopupMenuEx
-! FUNCTION: TranslateAccelerator
-! FUNCTION: TranslateAcceleratorA
-! FUNCTION: TranslateAcceleratorW
-! FUNCTION: TranslateMDISysAccel
-FUNCTION: BOOL TranslateMessage ( MSG* lpMsg ) ;
-
-! FUNCTION: UnhookWindowsHook
-! FUNCTION: UnhookWindowsHookEx
-! FUNCTION: UnhookWinEvent
-! FUNCTION: UnionRect
-! FUNCTION: UnloadKeyboardLayout
-! FUNCTION: UnlockWindowStation
-! FUNCTION: UnpackDDElParam
-FUNCTION: BOOL UnregisterClassA ( LPCTSTR lpClassName, HINSTANCE hInstance ) ;
-FUNCTION: BOOL UnregisterClassW ( LPCWSTR lpClassName, HINSTANCE hInstance ) ;
-: UnregisterClass \ UnregisterClassW \ UnregisterClassA unicode-exec ;
-! FUNCTION: UnregisterDeviceNotification
-! FUNCTION: UnregisterHotKey
-! FUNCTION: UnregisterMessagePumpHook
-! FUNCTION: UnregisterUserApiHook
-! FUNCTION: UpdateLayeredWindow
-! FUNCTION: UpdatePerUserSystemParameters
-
-
-FUNCTION: BOOL UpdateWindow ( HWND hWnd ) ;
-
-! FUNCTION: User32InitializeImmEntryTable
-! FUNCTION: UserClientDllInitialize
-! FUNCTION: UserHandleGrantAccess
-! FUNCTION: UserLpkPSMTextOut
-! FUNCTION: UserLpkTabbedTextOut
-! FUNCTION: UserRealizePalette
-! FUNCTION: UserRegisterWowHandlers
-! FUNCTION: ValidateRect
-! FUNCTION: ValidateRgn
-! FUNCTION: VkKeyScanA
-! FUNCTION: VkKeyScanExA
-! FUNCTION: VkKeyScanExW
-! FUNCTION: VkKeyScanW
-! FUNCTION: VRipOutput
-! FUNCTION: VTagOutput
-! FUNCTION: WaitForInputIdle
-! FUNCTION: WaitMessage
-! FUNCTION: WCSToMBEx
-! FUNCTION: Win32PoolAllocationStats
-! FUNCTION: WindowFromDC
-! FUNCTION: WindowFromPoint
-! FUNCTION: WinHelpA
-! FUNCTION: WinHelpW
-! FUNCTION: WINNLSEnableIME
-! FUNCTION: WINNLSGetEnableStatus
-! FUNCTION: WINNLSGetIMEHotkey
-! FUNCTION: wsprintfA
-! FUNCTION: wsprintfW
-! FUNCTION: wvsprintfA
-! FUNCTION: wvsprintfW
-
+++ /dev/null
-! Copyright (C) 2005, 2006 Doug Coleman.
-! See http://factor.sf.net/license.txt for BSD license.
-USING: alien parser namespaces kernel syntax words math io prettyprint ;
-IN: win32-api
-
-: win32-error=0 zero? [ win32-error ] when ;
-: win32-error>0 0 > [ win32-error ] when ;
-: win32-error<0 0 < [ win32-error ] when ;
-: win32-error<>0 zero? [ win32-error ] unless ;
-
-: lo-word ( wparam -- lo ) HEX: ffff bitand ;
-: hi-word ( wparam -- hi ) -16 shift ;
-
-: msgbox ( str -- )
- f swap "DebugMsg" MB_OK MessageBox drop ;
-
+++ /dev/null
-! Copyright (C) 2005, 2006 Doug Coleman.
-! See http://factor.sf.net/license.txt for BSD license.
-USING: hashtables kernel math namespaces parser prettyprint words ;
-IN: win32-api-messages
-
-SYMBOL: windows-messages
-
-USE: inspector
-
-: maybe-create-windows-messages
- windows-messages get hashtable?
- [ H{ } clone global [ windows-messages set ] bind ] unless ;
-
-: add-windows-message ( -- )
- word [ unparse ] keep execute maybe-create-windows-messages
- windows-messages get set-hash ; parsing
-
-: get-windows-message-name ( n -- name )
- windows-messages get hash* [ drop "unknown message" ] unless ;
-
-: WM_NULL HEX: 0000 ; inline add-windows-message
-: WM_CREATE HEX: 0001 ; inline add-windows-message
-: WM_DESTROY HEX: 0002 ; inline add-windows-message
-: WM_MOVE HEX: 0003 ; inline add-windows-message
-: WM_SIZE HEX: 0005 ; inline add-windows-message
-: WM_ACTIVATE HEX: 0006 ; inline add-windows-message
-: WM_SETFOCUS HEX: 0007 ; inline add-windows-message
-: WM_KILLFOCUS HEX: 0008 ; inline add-windows-message
-: WM_ENABLE HEX: 000A ; inline add-windows-message
-: WM_SETREDRAW HEX: 000B ; inline add-windows-message
-: WM_SETTEXT HEX: 000C ; inline add-windows-message
-: WM_GETTEXT HEX: 000D ; inline add-windows-message
-: WM_GETTEXTLENGTH HEX: 000E ; inline add-windows-message
-: WM_PAINT HEX: 000F ; inline add-windows-message
-: WM_CLOSE HEX: 0010 ; inline add-windows-message
-: WM_QUERYENDSESSION HEX: 0011 ; inline add-windows-message
-: WM_QUERYOPEN HEX: 0013 ; inline add-windows-message
-: WM_ENDSESSION HEX: 0016 ; inline add-windows-message
-: WM_QUIT HEX: 0012 ; inline add-windows-message
-: WM_ERASEBKGND HEX: 0014 ; inline add-windows-message
-: WM_SYSCOLORCHANGE HEX: 0015 ; inline add-windows-message
-: WM_SHOWWINDOW HEX: 0018 ; inline add-windows-message
-: WM_WININICHANGE HEX: 001A ; inline add-windows-message
-: WM_SETTINGCHANGE HEX: 001A ; inline add-windows-message
-: WM_DEVMODECHANGE HEX: 001B ; inline add-windows-message
-: WM_ACTIVATEAPP HEX: 001C ; inline add-windows-message
-: WM_FONTCHANGE HEX: 001D ; inline add-windows-message
-: WM_TIMECHANGE HEX: 001E ; inline add-windows-message
-: WM_CANCELMODE HEX: 001F ; inline add-windows-message
-: WM_SETCURSOR HEX: 0020 ; inline add-windows-message
-: WM_MOUSEACTIVATE HEX: 0021 ; inline add-windows-message
-: WM_CHILDACTIVATE HEX: 0022 ; inline add-windows-message
-: WM_QUEUESYNC HEX: 0023 ; inline add-windows-message
-: WM_GETMINMAXINFO HEX: 0024 ; inline add-windows-message
-: WM_PAINTICON HEX: 0026 ; inline add-windows-message
-: WM_ICONERASEBKGND HEX: 0027 ; inline add-windows-message
-: WM_NEXTDLGCTL HEX: 0028 ; inline add-windows-message
-: WM_SPOOLERSTATUS HEX: 002A ; inline add-windows-message
-: WM_DRAWITEM HEX: 002B ; inline add-windows-message
-: WM_MEASUREITEM HEX: 002C ; inline add-windows-message
-: WM_DELETEITEM HEX: 002D ; inline add-windows-message
-: WM_VKEYTOITEM HEX: 002E ; inline add-windows-message
-: WM_CHARTOITEM HEX: 002F ; inline add-windows-message
-: WM_SETFONT HEX: 0030 ; inline add-windows-message
-: WM_GETFONT HEX: 0031 ; inline add-windows-message
-: WM_SETHOTKEY HEX: 0032 ; inline add-windows-message
-: WM_GETHOTKEY HEX: 0033 ; inline add-windows-message
-: WM_QUERYDRAGICON HEX: 0037 ; inline add-windows-message
-: WM_COMPAREITEM HEX: 0039 ; inline add-windows-message
-: WM_GETOBJECT HEX: 003D ; inline add-windows-message
-: WM_COMPACTING HEX: 0041 ; inline add-windows-message
-: WM_COMMNOTIFY HEX: 0044 ; inline add-windows-message
-: WM_WINDOWPOSCHANGING HEX: 0046 ; inline add-windows-message
-: WM_WINDOWPOSCHANGED HEX: 0047 ; inline add-windows-message
-: WM_POWER HEX: 0048 ; inline add-windows-message
-: WM_COPYDATA HEX: 004A ; inline add-windows-message
-: WM_CANCELJOURNAL HEX: 004B ; inline add-windows-message
-: WM_NOTIFY HEX: 004E ; inline add-windows-message
-: WM_INPUTLANGCHANGEREQUEST HEX: 0050 ; inline add-windows-message
-: WM_INPUTLANGCHANGE HEX: 0051 ; inline add-windows-message
-: WM_TCARD HEX: 0052 ; inline add-windows-message
-: WM_HELP HEX: 0053 ; inline add-windows-message
-: WM_USERCHANGED HEX: 0054 ; inline add-windows-message
-: WM_NOTIFYFORMAT HEX: 0055 ; inline add-windows-message
-: WM_CONTEXTMENU HEX: 007B ; inline add-windows-message
-: WM_STYLECHANGING HEX: 007C ; inline add-windows-message
-: WM_STYLECHANGED HEX: 007D ; inline add-windows-message
-: WM_DISPLAYCHANGE HEX: 007E ; inline add-windows-message
-: WM_GETICON HEX: 007F ; inline add-windows-message
-: WM_SETICON HEX: 0080 ; inline add-windows-message
-: WM_NCCREATE HEX: 0081 ; inline add-windows-message
-: WM_NCDESTROY HEX: 0082 ; inline add-windows-message
-: WM_NCCALCSIZE HEX: 0083 ; inline add-windows-message
-: WM_NCHITTEST HEX: 0084 ; inline add-windows-message
-: WM_NCPAINT HEX: 0085 ; inline add-windows-message
-: WM_NCACTIVATE HEX: 0086 ; inline add-windows-message
-: WM_GETDLGCODE HEX: 0087 ; inline add-windows-message
-: WM_SYNCPAINT HEX: 0088 ; inline add-windows-message
-: WM_NCMOUSEMOVE HEX: 00A0 ; inline add-windows-message
-: WM_NCLBUTTONDOWN HEX: 00A1 ; inline add-windows-message
-: WM_NCLBUTTONUP HEX: 00A2 ; inline add-windows-message
-: WM_NCLBUTTONDBLCLK HEX: 00A3 ; inline add-windows-message
-: WM_NCRBUTTONDOWN HEX: 00A4 ; inline add-windows-message
-: WM_NCRBUTTONUP HEX: 00A5 ; inline add-windows-message
-: WM_NCRBUTTONDBLCLK HEX: 00A6 ; inline add-windows-message
-: WM_NCMBUTTONDOWN HEX: 00A7 ; inline add-windows-message
-: WM_NCMBUTTONUP HEX: 00A8 ; inline add-windows-message
-: WM_NCMBUTTONDBLCLK HEX: 00A9 ; inline add-windows-message
-: WM_NCXBUTTONDOWN HEX: 00AB ; inline add-windows-message
-: WM_NCXBUTTONUP HEX: 00AC ; inline add-windows-message
-: WM_NCXBUTTONDBLCLK HEX: 00AD ; inline add-windows-message
-: WM_INPUT HEX: 00FF ; inline add-windows-message
-: WM_KEYFIRST HEX: 0100 ; inline add-windows-message
-: WM_KEYDOWN HEX: 0100 ; inline add-windows-message
-: WM_KEYUP HEX: 0101 ; inline add-windows-message
-: WM_CHAR HEX: 0102 ; inline add-windows-message
-: WM_DEADCHAR HEX: 0103 ; inline add-windows-message
-: WM_SYSKEYDOWN HEX: 0104 ; inline add-windows-message
-: WM_SYSKEYUP HEX: 0105 ; inline add-windows-message
-: WM_SYSCHAR HEX: 0106 ; inline add-windows-message
-: WM_SYSDEADCHAR HEX: 0107 ; inline add-windows-message
-: WM_UNICHAR HEX: 0109 ; inline add-windows-message
-: WM_KEYLAST_NT501 HEX: 0109 ; inline add-windows-message
-: UNICODE_NOCHAR HEX: FFFF ; inline add-windows-message
-: WM_KEYLAST_PRE501 HEX: 0108 ; inline add-windows-message
-: WM_IME_STARTCOMPOSITION HEX: 010D ; inline add-windows-message
-: WM_IME_ENDCOMPOSITION HEX: 010E ; inline add-windows-message
-: WM_IME_COMPOSITION HEX: 010F ; inline add-windows-message
-: WM_IME_KEYLAST HEX: 010F ; inline add-windows-message
-: WM_INITDIALOG HEX: 0110 ; inline add-windows-message
-: WM_COMMAND HEX: 0111 ; inline add-windows-message
-: WM_SYSCOMMAND HEX: 0112 ; inline add-windows-message
-: WM_TIMER HEX: 0113 ; inline add-windows-message
-: WM_HSCROLL HEX: 0114 ; inline add-windows-message
-: WM_VSCROLL HEX: 0115 ; inline add-windows-message
-: WM_INITMENU HEX: 0116 ; inline add-windows-message
-: WM_INITMENUPOPUP HEX: 0117 ; inline add-windows-message
-: WM_MENUSELECT HEX: 011F ; inline add-windows-message
-: WM_MENUCHAR HEX: 0120 ; inline add-windows-message
-: WM_ENTERIDLE HEX: 0121 ; inline add-windows-message
-: WM_MENURBUTTONUP HEX: 0122 ; inline add-windows-message
-: WM_MENUDRAG HEX: 0123 ; inline add-windows-message
-: WM_MENUGETOBJECT HEX: 0124 ; inline add-windows-message
-: WM_UNINITMENUPOPUP HEX: 0125 ; inline add-windows-message
-: WM_MENUCOMMAND HEX: 0126 ; inline add-windows-message
-: WM_CHANGEUISTATE HEX: 0127 ; inline add-windows-message
-: WM_UPDATEUISTATE HEX: 0128 ; inline add-windows-message
-: WM_QUERYUISTATE HEX: 0129 ; inline add-windows-message
-: WM_CTLCOLORMSGBOX HEX: 0132 ; inline add-windows-message
-: WM_CTLCOLOREDIT HEX: 0133 ; inline add-windows-message
-: WM_CTLCOLORLISTBOX HEX: 0134 ; inline add-windows-message
-: WM_CTLCOLORBTN HEX: 0135 ; inline add-windows-message
-: WM_CTLCOLORDLG HEX: 0136 ; inline add-windows-message
-: WM_CTLCOLORSCROLLBAR HEX: 0137 ; inline add-windows-message
-: WM_CTLCOLORSTATIC HEX: 0138 ; inline add-windows-message
-: WM_MOUSEFIRST HEX: 0200 ; inline add-windows-message
-: WM_MOUSEMOVE HEX: 0200 ; inline add-windows-message
-: WM_LBUTTONDOWN HEX: 0201 ; inline add-windows-message
-: WM_LBUTTONUP HEX: 0202 ; inline add-windows-message
-: WM_LBUTTONDBLCLK HEX: 0203 ; inline add-windows-message
-: WM_RBUTTONDOWN HEX: 0204 ; inline add-windows-message
-: WM_RBUTTONUP HEX: 0205 ; inline add-windows-message
-: WM_RBUTTONDBLCLK HEX: 0206 ; inline add-windows-message
-: WM_MBUTTONDOWN HEX: 0207 ; inline add-windows-message
-: WM_MBUTTONUP HEX: 0208 ; inline add-windows-message
-: WM_MBUTTONDBLCLK HEX: 0209 ; inline add-windows-message
-: WM_MOUSEWHEEL HEX: 020A ; inline add-windows-message
-: WM_XBUTTONDOWN HEX: 020B ; inline add-windows-message
-: WM_XBUTTONUP HEX: 020C ; inline add-windows-message
-: WM_XBUTTONDBLCLK HEX: 020D ; inline add-windows-message
-: WM_MOUSELAST_5 HEX: 020D ; inline add-windows-message
-: WM_MOUSELAST_4 HEX: 020A ; inline add-windows-message
-: WM_MOUSELAST_PRE_4 HEX: 0209 ; inline add-windows-message
-: WM_PARENTNOTIFY HEX: 0210 ; inline add-windows-message
-: WM_ENTERMENULOOP HEX: 0211 ; inline add-windows-message
-: WM_EXITMENULOOP HEX: 0212 ; inline add-windows-message
-: WM_NEXTMENU HEX: 0213 ; inline add-windows-message
-: WM_SIZING HEX: 0214 ; inline add-windows-message
-: WM_CAPTURECHANGED HEX: 0215 ; inline add-windows-message
-: WM_MOVING HEX: 0216 ; inline add-windows-message
-: WM_POWERBROADCAST HEX: 0218 ; inline add-windows-message
-: WM_DEVICECHANGE HEX: 0219 ; inline add-windows-message
-: WM_MDICREATE HEX: 0220 ; inline add-windows-message
-: WM_MDIDESTROY HEX: 0221 ; inline add-windows-message
-: WM_MDIACTIVATE HEX: 0222 ; inline add-windows-message
-: WM_MDIRESTORE HEX: 0223 ; inline add-windows-message
-: WM_MDINEXT HEX: 0224 ; inline add-windows-message
-: WM_MDIMAXIMIZE HEX: 0225 ; inline add-windows-message
-: WM_MDITILE HEX: 0226 ; inline add-windows-message
-: WM_MDICASCADE HEX: 0227 ; inline add-windows-message
-: WM_MDIICONARRANGE HEX: 0228 ; inline add-windows-message
-: WM_MDIGETACTIVE HEX: 0229 ; inline add-windows-message
-: WM_MDISETMENU HEX: 0230 ; inline add-windows-message
-: WM_ENTERSIZEMOVE HEX: 0231 ; inline add-windows-message
-: WM_EXITSIZEMOVE HEX: 0232 ; inline add-windows-message
-: WM_DROPFILES HEX: 0233 ; inline add-windows-message
-: WM_MDIREFRESHMENU HEX: 0234 ; inline add-windows-message
-: WM_IME_SETCONTEXT HEX: 0281 ; inline add-windows-message
-: WM_IME_NOTIFY HEX: 0282 ; inline add-windows-message
-: WM_IME_CONTROL HEX: 0283 ; inline add-windows-message
-: WM_IME_COMPOSITIONFULL HEX: 0284 ; inline add-windows-message
-: WM_IME_SELECT HEX: 0285 ; inline add-windows-message
-: WM_IME_CHAR HEX: 0286 ; inline add-windows-message
-: WM_IME_REQUEST HEX: 0288 ; inline add-windows-message
-: WM_IME_KEYDOWN HEX: 0290 ; inline add-windows-message
-: WM_IME_KEYUP HEX: 0291 ; inline add-windows-message
-: WM_MOUSEHOVER HEX: 02A1 ; inline add-windows-message
-: WM_MOUSELEAVE HEX: 02A3 ; inline add-windows-message
-: WM_NCMOUSEHOVER HEX: 02A0 ; inline add-windows-message
-: WM_NCMOUSELEAVE HEX: 02A2 ; inline add-windows-message
-: WM_WTSSESSION_CHANGE HEX: 02B1 ; inline add-windows-message
-: WM_TABLET_FIRST HEX: 02c0 ; inline add-windows-message
-: WM_TABLET_LAST HEX: 02df ; inline add-windows-message
-: WM_CUT HEX: 0300 ; inline add-windows-message
-: WM_COPY HEX: 0301 ; inline add-windows-message
-: WM_PASTE HEX: 0302 ; inline add-windows-message
-: WM_CLEAR HEX: 0303 ; inline add-windows-message
-: WM_UNDO HEX: 0304 ; inline add-windows-message
-: WM_RENDERFORMAT HEX: 0305 ; inline add-windows-message
-: WM_RENDERALLFORMATS HEX: 0306 ; inline add-windows-message
-: WM_DESTROYCLIPBOARD HEX: 0307 ; inline add-windows-message
-: WM_DRAWCLIPBOARD HEX: 0308 ; inline add-windows-message
-: WM_PAINTCLIPBOARD HEX: 0309 ; inline add-windows-message
-: WM_VSCROLLCLIPBOARD HEX: 030A ; inline add-windows-message
-: WM_SIZECLIPBOARD HEX: 030B ; inline add-windows-message
-: WM_ASKCBFORMATNAME HEX: 030C ; inline add-windows-message
-: WM_CHANGECBCHAIN HEX: 030D ; inline add-windows-message
-: WM_HSCROLLCLIPBOARD HEX: 030E ; inline add-windows-message
-: WM_QUERYNEWPALETTE HEX: 030F ; inline add-windows-message
-: WM_PALETTEISCHANGING HEX: 0310 ; inline add-windows-message
-: WM_PALETTECHANGED HEX: 0311 ; inline add-windows-message
-: WM_HOTKEY HEX: 0312 ; inline add-windows-message
-: WM_PRINT HEX: 0317 ; inline add-windows-message
-: WM_PRINTCLIENT HEX: 0318 ; inline add-windows-message
-: WM_APPCOMMAND HEX: 0319 ; inline add-windows-message
-: WM_THEMECHANGED HEX: 031A ; inline add-windows-message
-: WM_HANDHELDFIRST HEX: 0358 ; inline add-windows-message
-: WM_HANDHELDLAST HEX: 035F ; inline add-windows-message
-: WM_AFXFIRST HEX: 0360 ; inline add-windows-message
-: WM_AFXLAST HEX: 037F ; inline add-windows-message
-: WM_PENWINFIRST HEX: 0380 ; inline add-windows-message
-: WM_PENWINLAST HEX: 038F ; inline add-windows-message
-: WM_APP HEX: 8000 ; inline add-windows-message
-: WM_USER HEX: 0400 ; inline add-windows-message
-: EM_GETSEL HEX: 00B0 ; inline add-windows-message
-: EM_SETSEL HEX: 00B1 ; inline add-windows-message
-: EM_GETRECT HEX: 00B2 ; inline add-windows-message
-: EM_SETRECT HEX: 00B3 ; inline add-windows-message
-: EM_SETRECTNP HEX: 00B4 ; inline add-windows-message
-: EM_SCROLL HEX: 00B5 ; inline add-windows-message
-: EM_LINESCROLL HEX: 00B6 ; inline add-windows-message
-: EM_SCROLLCARET HEX: 00B7 ; inline add-windows-message
-: EM_GETMODIFY HEX: 00B8 ; inline add-windows-message
-: EM_SETMODIFY HEX: 00B9 ; inline add-windows-message
-: EM_GETLINECOUNT HEX: 00BA ; inline add-windows-message
-: EM_LINEINDEX HEX: 00BB ; inline add-windows-message
-: EM_SETHANDLE HEX: 00BC ; inline add-windows-message
-: EM_GETHANDLE HEX: 00BD ; inline add-windows-message
-: EM_GETTHUMB HEX: 00BE ; inline add-windows-message
-: EM_LINELENGTH HEX: 00C1 ; inline add-windows-message
-: EM_REPLACESEL HEX: 00C2 ; inline add-windows-message
-: EM_GETLINE HEX: 00C4 ; inline add-windows-message
-: EM_LIMITTEXT HEX: 00C5 ; inline add-windows-message
-: EM_CANUNDO HEX: 00C6 ; inline add-windows-message
-: EM_UNDO HEX: 00C7 ; inline add-windows-message
-: EM_FMTLINES HEX: 00C8 ; inline add-windows-message
-: EM_LINEFROMCHAR HEX: 00C9 ; inline add-windows-message
-: EM_SETTABSTOPS HEX: 00CB ; inline add-windows-message
-: EM_SETPASSWORDCHAR HEX: 00CC ; inline add-windows-message
-: EM_EMPTYUNDOBUFFER HEX: 00CD ; inline add-windows-message
-: EM_GETFIRSTVISIBLELINE HEX: 00CE ; inline add-windows-message
-: EM_SETREADONLY HEX: 00CF ; inline add-windows-message
-: EM_SETWORDBREAKPROC HEX: 00D0 ; inline add-windows-message
-: EM_GETWORDBREAKPROC HEX: 00D1 ; inline add-windows-message
-: EM_GETPASSWORDCHAR HEX: 00D2 ; inline add-windows-message
-: EM_SETMARGINS HEX: 00D3 ; inline add-windows-message
-: EM_GETMARGINS HEX: 00D4 ; inline add-windows-message
-: EM_SETLIMITTEXT EM_LIMITTEXT ; inline add-windows-message
-: EM_GETLIMITTEXT HEX: 00D5 ; inline add-windows-message
-: EM_POSFROMCHAR HEX: 00D6 ; inline add-windows-message
-: EM_CHARFROMPOS HEX: 00D7 ; inline add-windows-message
-: EM_SETIMESTATUS HEX: 00D8 ; inline add-windows-message
-: EM_GETIMESTATUS HEX: 00D9 ; inline add-windows-message
-: BM_GETCHECK HEX: 00F0 ; inline add-windows-message
-: BM_SETCHECK HEX: 00F1 ; inline add-windows-message
-: BM_GETSTATE HEX: 00F2 ; inline add-windows-message
-: BM_SETSTATE HEX: 00F3 ; inline add-windows-message
-: BM_SETSTYLE HEX: 00F4 ; inline add-windows-message
-: BM_CLICK HEX: 00F5 ; inline add-windows-message
-: BM_GETIMAGE HEX: 00F6 ; inline add-windows-message
-: BM_SETIMAGE HEX: 00F7 ; inline add-windows-message
-: STM_SETICON HEX: 0170 ; inline add-windows-message
-: STM_GETICON HEX: 0171 ; inline add-windows-message
-: STM_SETIMAGE HEX: 0172 ; inline add-windows-message
-: STM_GETIMAGE HEX: 0173 ; inline add-windows-message
-: STM_MSGMAX HEX: 0174 ; inline add-windows-message
-: DM_GETDEFID WM_USER ; inline add-windows-message
-: DM_SETDEFID WM_USER 1 + ; inline add-windows-message
-: DM_REPOSITION WM_USER 2 + ; inline add-windows-message
-: LB_ADDSTRING HEX: 0180 ; inline add-windows-message
-: LB_INSERTSTRING HEX: 0181 ; inline add-windows-message
-: LB_DELETESTRING HEX: 0182 ; inline add-windows-message
-: LB_SELITEMRANGEEX HEX: 0183 ; inline add-windows-message
-: LB_RESETCONTENT HEX: 0184 ; inline add-windows-message
-: LB_SETSEL HEX: 0185 ; inline add-windows-message
-: LB_SETCURSEL HEX: 0186 ; inline add-windows-message
-: LB_GETSEL HEX: 0187 ; inline add-windows-message
-: LB_GETCURSEL HEX: 0188 ; inline add-windows-message
-: LB_GETTEXT HEX: 0189 ; inline add-windows-message
-: LB_GETTEXTLEN HEX: 018A ; inline add-windows-message
-: LB_GETCOUNT HEX: 018B ; inline add-windows-message
-: LB_SELECTSTRING HEX: 018C ; inline add-windows-message
-: LB_DIR HEX: 018D ; inline add-windows-message
-: LB_GETTOPINDEX HEX: 018E ; inline add-windows-message
-: LB_FINDSTRING HEX: 018F ; inline add-windows-message
-: LB_GETSELCOUNT HEX: 0190 ; inline add-windows-message
-: LB_GETSELITEMS HEX: 0191 ; inline add-windows-message
-: LB_SETTABSTOPS HEX: 0192 ; inline add-windows-message
-: LB_GETHORIZONTALEXTENT HEX: 0193 ; inline add-windows-message
-: LB_SETHORIZONTALEXTENT HEX: 0194 ; inline add-windows-message
-: LB_SETCOLUMNWIDTH HEX: 0195 ; inline add-windows-message
-: LB_ADDFILE HEX: 0196 ; inline add-windows-message
-: LB_SETTOPINDEX HEX: 0197 ; inline add-windows-message
-: LB_GETITEMRECT HEX: 0198 ; inline add-windows-message
-: LB_GETITEMDATA HEX: 0199 ; inline add-windows-message
-: LB_SETITEMDATA HEX: 019A ; inline add-windows-message
-: LB_SELITEMRANGE HEX: 019B ; inline add-windows-message
-: LB_SETANCHORINDEX HEX: 019C ; inline add-windows-message
-: LB_GETANCHORINDEX HEX: 019D ; inline add-windows-message
-: LB_SETCARETINDEX HEX: 019E ; inline add-windows-message
-: LB_GETCARETINDEX HEX: 019F ; inline add-windows-message
-: LB_SETITEMHEIGHT HEX: 01A0 ; inline add-windows-message
-: LB_GETITEMHEIGHT HEX: 01A1 ; inline add-windows-message
-: LB_FINDSTRINGEXACT HEX: 01A2 ; inline add-windows-message
-: LB_SETLOCALE HEX: 01A5 ; inline add-windows-message
-: LB_GETLOCALE HEX: 01A6 ; inline add-windows-message
-: LB_SETCOUNT HEX: 01A7 ; inline add-windows-message
-: LB_INITSTORAGE HEX: 01A8 ; inline add-windows-message
-: LB_ITEMFROMPOINT HEX: 01A9 ; inline add-windows-message
-: LB_MULTIPLEADDSTRING HEX: 01B1 ; inline add-windows-message
-: LB_GETLISTBOXINFO HEX: 01B2 ; inline add-windows-message
-: LB_MSGMAX_501 HEX: 01B3 ; inline add-windows-message
-: LB_MSGMAX_WCE4 HEX: 01B1 ; inline add-windows-message
-: LB_MSGMAX_4 HEX: 01B0 ; inline add-windows-message
-: LB_MSGMAX_PRE4 HEX: 01A8 ; inline add-windows-message
-: CB_GETEDITSEL HEX: 0140 ; inline add-windows-message
-: CB_LIMITTEXT HEX: 0141 ; inline add-windows-message
-: CB_SETEDITSEL HEX: 0142 ; inline add-windows-message
-: CB_ADDSTRING HEX: 0143 ; inline add-windows-message
-: CB_DELETESTRING HEX: 0144 ; inline add-windows-message
-: CB_DIR HEX: 0145 ; inline add-windows-message
-: CB_GETCOUNT HEX: 0146 ; inline add-windows-message
-: CB_GETCURSEL HEX: 0147 ; inline add-windows-message
-: CB_GETLBTEXT HEX: 0148 ; inline add-windows-message
-: CB_GETLBTEXTLEN HEX: 0149 ; inline add-windows-message
-: CB_INSERTSTRING HEX: 014A ; inline add-windows-message
-: CB_RESETCONTENT HEX: 014B ; inline add-windows-message
-: CB_FINDSTRING HEX: 014C ; inline add-windows-message
-: CB_SELECTSTRING HEX: 014D ; inline add-windows-message
-: CB_SETCURSEL HEX: 014E ; inline add-windows-message
-: CB_SHOWDROPDOWN HEX: 014F ; inline add-windows-message
-: CB_GETITEMDATA HEX: 0150 ; inline add-windows-message
-: CB_SETITEMDATA HEX: 0151 ; inline add-windows-message
-: CB_GETDROPPEDCONTROLRECT HEX: 0152 ; inline add-windows-message
-: CB_SETITEMHEIGHT HEX: 0153 ; inline add-windows-message
-: CB_GETITEMHEIGHT HEX: 0154 ; inline add-windows-message
-: CB_SETEXTENDEDUI HEX: 0155 ; inline add-windows-message
-: CB_GETEXTENDEDUI HEX: 0156 ; inline add-windows-message
-: CB_GETDROPPEDSTATE HEX: 0157 ; inline add-windows-message
-: CB_FINDSTRINGEXACT HEX: 0158 ; inline add-windows-message
-: CB_SETLOCALE HEX: 0159 ; inline add-windows-message
-: CB_GETLOCALE HEX: 015A ; inline add-windows-message
-: CB_GETTOPINDEX HEX: 015B ; inline add-windows-message
-: CB_SETTOPINDEX HEX: 015C ; inline add-windows-message
-: CB_GETHORIZONTALEXTENT HEX: 015d ; inline add-windows-message
-: CB_SETHORIZONTALEXTENT HEX: 015e ; inline add-windows-message
-: CB_GETDROPPEDWIDTH HEX: 015f ; inline add-windows-message
-: CB_SETDROPPEDWIDTH HEX: 0160 ; inline add-windows-message
-: CB_INITSTORAGE HEX: 0161 ; inline add-windows-message
-: CB_MULTIPLEADDSTRING HEX: 0163 ; inline add-windows-message
-: CB_GETCOMBOBOXINFO HEX: 0164 ; inline add-windows-message
-: CB_MSGMAX_501 HEX: 0165 ; inline add-windows-message
-: CB_MSGMAX_WCE400 HEX: 0163 ; inline add-windows-message
-: CB_MSGMAX_400 HEX: 0162 ; inline add-windows-message
-: CB_MSGMAX_PRE400 HEX: 015B ; inline add-windows-message
-: SBM_SETPOS HEX: 00E0 ; inline add-windows-message
-: SBM_GETPOS HEX: 00E1 ; inline add-windows-message
-: SBM_SETRANGE HEX: 00E2 ; inline add-windows-message
-: SBM_SETRANGEREDRAW HEX: 00E6 ; inline add-windows-message
-: SBM_GETRANGE HEX: 00E3 ; inline add-windows-message
-: SBM_ENABLE_ARROWS HEX: 00E4 ; inline add-windows-message
-: SBM_SETSCROLLINFO HEX: 00E9 ; inline add-windows-message
-: SBM_GETSCROLLINFO HEX: 00EA ; inline add-windows-message
-: SBM_GETSCROLLBARINFO HEX: 00EB ; inline add-windows-message
-: LVM_FIRST HEX: 1000 ; inline add-windows-message ! ListView messages
-: TV_FIRST HEX: 1100 ; inline add-windows-message ! TreeView messages
-: HDM_FIRST HEX: 1200 ; inline add-windows-message ! Header messages
-: TCM_FIRST HEX: 1300 ; inline add-windows-message ! Tab control messages
-: PGM_FIRST HEX: 1400 ; inline add-windows-message ! Pager control messages
-: ECM_FIRST HEX: 1500 ; inline add-windows-message ! Edit control messages
-: BCM_FIRST HEX: 1600 ; inline add-windows-message ! Button control messages
-: CBM_FIRST HEX: 1700 ; inline add-windows-message ! Combobox control messages
-: CCM_FIRST HEX: 2000 ; inline add-windows-message ! Common control shared messages
-: CCM_LAST CCM_FIRST HEX: 0200 + ; inline add-windows-message
-: CCM_SETBKCOLOR CCM_FIRST 1 + ; inline add-windows-message
-: CCM_SETCOLORSCHEME CCM_FIRST 2 + ; inline add-windows-message
-: CCM_GETCOLORSCHEME CCM_FIRST 3 + ; inline add-windows-message
-: CCM_GETDROPTARGET CCM_FIRST 4 + ; inline add-windows-message
-: CCM_SETUNICODEFORMAT CCM_FIRST 5 + ; inline add-windows-message
-: CCM_GETUNICODEFORMAT CCM_FIRST 6 + ; inline add-windows-message
-: CCM_SETVERSION CCM_FIRST 7 + ; inline add-windows-message
-: CCM_GETVERSION CCM_FIRST 8 + ; inline add-windows-message
-: CCM_SETNOTIFYWINDOW CCM_FIRST 9 + ; inline add-windows-message
-: CCM_SETWINDOWTHEME CCM_FIRST HEX: b + ; inline add-windows-message
-: CCM_DPISCALE CCM_FIRST HEX: c + ; inline add-windows-message
-: HDM_GETITEMCOUNT HDM_FIRST 0 + ; inline add-windows-message
-: HDM_INSERTITEMA HDM_FIRST 1 + ; inline add-windows-message
-: HDM_INSERTITEMW HDM_FIRST 10 + ; inline add-windows-message
-: HDM_DELETEITEM HDM_FIRST 2 + ; inline add-windows-message
-: HDM_GETITEMA HDM_FIRST 3 + ; inline add-windows-message
-: HDM_GETITEMW HDM_FIRST 11 + ; inline add-windows-message
-: HDM_SETITEMA HDM_FIRST 4 + ; inline add-windows-message
-: HDM_SETITEMW HDM_FIRST 12 + ; inline add-windows-message
-: HDM_LAYOUT HDM_FIRST 5 + ; inline add-windows-message
-: HDM_HITTEST HDM_FIRST 6 + ; inline add-windows-message
-: HDM_GETITEMRECT HDM_FIRST 7 + ; inline add-windows-message
-: HDM_SETIMAGELIST HDM_FIRST 8 + ; inline add-windows-message
-: HDM_GETIMAGELIST HDM_FIRST 9 + ; inline add-windows-message
-: HDM_ORDERTOINDEX HDM_FIRST 15 + ; inline add-windows-message
-: HDM_CREATEDRAGIMAGE HDM_FIRST 16 + ; inline add-windows-message
-: HDM_GETORDERARRAY HDM_FIRST 17 + ; inline add-windows-message
-: HDM_SETORDERARRAY HDM_FIRST 18 + ; inline add-windows-message
-: HDM_SETHOTDIVIDER HDM_FIRST 19 + ; inline add-windows-message
-: HDM_SETBITMAPMARGIN HDM_FIRST 20 + ; inline add-windows-message
-: HDM_GETBITMAPMARGIN HDM_FIRST 21 + ; inline add-windows-message
-: HDM_SETUNICODEFORMAT CCM_SETUNICODEFORMAT ; inline add-windows-message
-: HDM_GETUNICODEFORMAT CCM_GETUNICODEFORMAT ; inline add-windows-message
-: HDM_SETFILTERCHANGETIMEOUT HDM_FIRST 22 + ; inline add-windows-message
-: HDM_EDITFILTER HDM_FIRST 23 + ; inline add-windows-message
-: HDM_CLEARFILTER HDM_FIRST 24 + ; inline add-windows-message
-: TB_ENABLEBUTTON WM_USER 1 + ; inline add-windows-message
-: TB_CHECKBUTTON WM_USER 2 + ; inline add-windows-message
-: TB_PRESSBUTTON WM_USER 3 + ; inline add-windows-message
-: TB_HIDEBUTTON WM_USER 4 + ; inline add-windows-message
-: TB_INDETERMINATE WM_USER 5 + ; inline add-windows-message
-: TB_MARKBUTTON WM_USER 6 + ; inline add-windows-message
-: TB_ISBUTTONENABLED WM_USER 9 + ; inline add-windows-message
-: TB_ISBUTTONCHECKED WM_USER 10 + ; inline add-windows-message
-: TB_ISBUTTONPRESSED WM_USER 11 + ; inline add-windows-message
-: TB_ISBUTTONHIDDEN WM_USER 12 + ; inline add-windows-message
-: TB_ISBUTTONINDETERMINATE WM_USER 13 + ; inline add-windows-message
-: TB_ISBUTTONHIGHLIGHTED WM_USER 14 + ; inline add-windows-message
-: TB_SETSTATE WM_USER 17 + ; inline add-windows-message
-: TB_GETSTATE WM_USER 18 + ; inline add-windows-message
-: TB_ADDBITMAP WM_USER 19 + ; inline add-windows-message
-: TB_ADDBUTTONSA WM_USER 20 + ; inline add-windows-message
-: TB_INSERTBUTTONA WM_USER 21 + ; inline add-windows-message
-: TB_ADDBUTTONS WM_USER 20 + ; inline add-windows-message
-: TB_INSERTBUTTON WM_USER 21 + ; inline add-windows-message
-: TB_DELETEBUTTON WM_USER 22 + ; inline add-windows-message
-: TB_GETBUTTON WM_USER 23 + ; inline add-windows-message
-: TB_BUTTONCOUNT WM_USER 24 + ; inline add-windows-message
-: TB_COMMANDTOINDEX WM_USER 25 + ; inline add-windows-message
-: TB_SAVERESTOREA WM_USER 26 + ; inline add-windows-message
-: TB_SAVERESTOREW WM_USER 76 + ; inline add-windows-message
-: TB_CUSTOMIZE WM_USER 27 + ; inline add-windows-message
-: TB_ADDSTRINGA WM_USER 28 + ; inline add-windows-message
-: TB_ADDSTRINGW WM_USER 77 + ; inline add-windows-message
-: TB_GETITEMRECT WM_USER 29 + ; inline add-windows-message
-: TB_BUTTONSTRUCTSIZE WM_USER 30 + ; inline add-windows-message
-: TB_SETBUTTONSIZE WM_USER 31 + ; inline add-windows-message
-: TB_SETBITMAPSIZE WM_USER 32 + ; inline add-windows-message
-: TB_AUTOSIZE WM_USER 33 + ; inline add-windows-message
-: TB_GETTOOLTIPS WM_USER 35 + ; inline add-windows-message
-: TB_SETTOOLTIPS WM_USER 36 + ; inline add-windows-message
-: TB_SETPARENT WM_USER 37 + ; inline add-windows-message
-: TB_SETROWS WM_USER 39 + ; inline add-windows-message
-: TB_GETROWS WM_USER 40 + ; inline add-windows-message
-: TB_SETCMDID WM_USER 42 + ; inline add-windows-message
-: TB_CHANGEBITMAP WM_USER 43 + ; inline add-windows-message
-: TB_GETBITMAP WM_USER 44 + ; inline add-windows-message
-: TB_GETBUTTONTEXTA WM_USER 45 + ; inline add-windows-message
-: TB_GETBUTTONTEXTW WM_USER 75 + ; inline add-windows-message
-: TB_REPLACEBITMAP WM_USER 46 + ; inline add-windows-message
-: TB_SETINDENT WM_USER 47 + ; inline add-windows-message
-: TB_SETIMAGELIST WM_USER 48 + ; inline add-windows-message
-: TB_GETIMAGELIST WM_USER 49 + ; inline add-windows-message
-: TB_LOADIMAGES WM_USER 50 + ; inline add-windows-message
-: TB_GETRECT WM_USER 51 + ; inline add-windows-message
-: TB_SETHOTIMAGELIST WM_USER 52 + ; inline add-windows-message
-: TB_GETHOTIMAGELIST WM_USER 53 + ; inline add-windows-message
-: TB_SETDISABLEDIMAGELIST WM_USER 54 + ; inline add-windows-message
-: TB_GETDISABLEDIMAGELIST WM_USER 55 + ; inline add-windows-message
-: TB_SETSTYLE WM_USER 56 + ; inline add-windows-message
-: TB_GETSTYLE WM_USER 57 + ; inline add-windows-message
-: TB_GETBUTTONSIZE WM_USER 58 + ; inline add-windows-message
-: TB_SETBUTTONWIDTH WM_USER 59 + ; inline add-windows-message
-: TB_SETMAXTEXTROWS WM_USER 60 + ; inline add-windows-message
-: TB_GETTEXTROWS WM_USER 61 + ; inline add-windows-message
-: TB_GETOBJECT WM_USER 62 + ; inline add-windows-message
-: TB_GETHOTITEM WM_USER 71 + ; inline add-windows-message
-: TB_SETHOTITEM WM_USER 72 + ; inline add-windows-message
-: TB_SETANCHORHIGHLIGHT WM_USER 73 + ; inline add-windows-message
-: TB_GETANCHORHIGHLIGHT WM_USER 74 + ; inline add-windows-message
-: TB_MAPACCELERATORA WM_USER 78 + ; inline add-windows-message
-: TB_GETINSERTMARK WM_USER 79 + ; inline add-windows-message
-: TB_SETINSERTMARK WM_USER 80 + ; inline add-windows-message
-: TB_INSERTMARKHITTEST WM_USER 81 + ; inline add-windows-message
-: TB_MOVEBUTTON WM_USER 82 + ; inline add-windows-message
-: TB_GETMAXSIZE WM_USER 83 + ; inline add-windows-message
-: TB_SETEXTENDEDSTYLE WM_USER 84 + ; inline add-windows-message
-: TB_GETEXTENDEDSTYLE WM_USER 85 + ; inline add-windows-message
-: TB_GETPADDING WM_USER 86 + ; inline add-windows-message
-: TB_SETPADDING WM_USER 87 + ; inline add-windows-message
-: TB_SETINSERTMARKCOLOR WM_USER 88 + ; inline add-windows-message
-: TB_GETINSERTMARKCOLOR WM_USER 89 + ; inline add-windows-message
-: TB_SETCOLORSCHEME CCM_SETCOLORSCHEME ; inline add-windows-message
-: TB_GETCOLORSCHEME CCM_GETCOLORSCHEME ; inline add-windows-message
-: TB_SETUNICODEFORMAT CCM_SETUNICODEFORMAT ; inline add-windows-message
-: TB_GETUNICODEFORMAT CCM_GETUNICODEFORMAT ; inline add-windows-message
-: TB_MAPACCELERATORW WM_USER 90 + ; inline add-windows-message
-: TB_GETBITMAPFLAGS WM_USER 41 + ; inline add-windows-message
-: TB_GETBUTTONINFOW WM_USER 63 + ; inline add-windows-message
-: TB_SETBUTTONINFOW WM_USER 64 + ; inline add-windows-message
-: TB_GETBUTTONINFOA WM_USER 65 + ; inline add-windows-message
-: TB_SETBUTTONINFOA WM_USER 66 + ; inline add-windows-message
-: TB_INSERTBUTTONW WM_USER 67 + ; inline add-windows-message
-: TB_ADDBUTTONSW WM_USER 68 + ; inline add-windows-message
-: TB_HITTEST WM_USER 69 + ; inline add-windows-message
-: TB_SETDRAWTEXTFLAGS WM_USER 70 + ; inline add-windows-message
-: TB_GETSTRINGW WM_USER 91 + ; inline add-windows-message
-: TB_GETSTRINGA WM_USER 92 + ; inline add-windows-message
-: TB_GETMETRICS WM_USER 101 + ; inline add-windows-message
-: TB_SETMETRICS WM_USER 102 + ; inline add-windows-message
-: TB_SETWINDOWTHEME CCM_SETWINDOWTHEME ; inline add-windows-message
-: RB_INSERTBANDA WM_USER 1 + ; inline add-windows-message
-: RB_DELETEBAND WM_USER 2 + ; inline add-windows-message
-: RB_GETBARINFO WM_USER 3 + ; inline add-windows-message
-: RB_SETBARINFO WM_USER 4 + ; inline add-windows-message
-: RB_GETBANDINFO WM_USER 5 + ; inline add-windows-message
-: RB_SETBANDINFOA WM_USER 6 + ; inline add-windows-message
-: RB_SETPARENT WM_USER 7 + ; inline add-windows-message
-: RB_HITTEST WM_USER 8 + ; inline add-windows-message
-: RB_GETRECT WM_USER 9 + ; inline add-windows-message
-: RB_INSERTBANDW WM_USER 10 + ; inline add-windows-message
-: RB_SETBANDINFOW WM_USER 11 + ; inline add-windows-message
-: RB_GETBANDCOUNT WM_USER 12 + ; inline add-windows-message
-: RB_GETROWCOUNT WM_USER 13 + ; inline add-windows-message
-: RB_GETROWHEIGHT WM_USER 14 + ; inline add-windows-message
-: RB_IDTOINDEX WM_USER 16 + ; inline add-windows-message
-: RB_GETTOOLTIPS WM_USER 17 + ; inline add-windows-message
-: RB_SETTOOLTIPS WM_USER 18 + ; inline add-windows-message
-: RB_SETBKCOLOR WM_USER 19 + ; inline add-windows-message
-: RB_GETBKCOLOR WM_USER 20 + ; inline add-windows-message
-: RB_SETTEXTCOLOR WM_USER 21 + ; inline add-windows-message
-: RB_GETTEXTCOLOR WM_USER 22 + ; inline add-windows-message
-: RB_SIZETORECT WM_USER 23 + ; inline add-windows-message
-: RB_SETCOLORSCHEME CCM_SETCOLORSCHEME ; inline add-windows-message
-: RB_GETCOLORSCHEME CCM_GETCOLORSCHEME ; inline add-windows-message
-: RB_BEGINDRAG WM_USER 24 + ; inline add-windows-message
-: RB_ENDDRAG WM_USER 25 + ; inline add-windows-message
-: RB_DRAGMOVE WM_USER 26 + ; inline add-windows-message
-: RB_GETBARHEIGHT WM_USER 27 + ; inline add-windows-message
-: RB_GETBANDINFOW WM_USER 28 + ; inline add-windows-message
-: RB_GETBANDINFOA WM_USER 29 + ; inline add-windows-message
-: RB_MINIMIZEBAND WM_USER 30 + ; inline add-windows-message
-: RB_MAXIMIZEBAND WM_USER 31 + ; inline add-windows-message
-: RB_GETDROPTARGET CCM_GETDROPTARGET ; inline add-windows-message
-: RB_GETBANDBORDERS WM_USER 34 + ; inline add-windows-message
-: RB_SHOWBAND WM_USER 35 + ; inline add-windows-message
-: RB_SETPALETTE WM_USER 37 + ; inline add-windows-message
-: RB_GETPALETTE WM_USER 38 + ; inline add-windows-message
-: RB_MOVEBAND WM_USER 39 + ; inline add-windows-message
-: RB_SETUNICODEFORMAT CCM_SETUNICODEFORMAT ; inline add-windows-message
-: RB_GETUNICODEFORMAT CCM_GETUNICODEFORMAT ; inline add-windows-message
-: RB_GETBANDMARGINS WM_USER 40 + ; inline add-windows-message
-: RB_SETWINDOWTHEME CCM_SETWINDOWTHEME ; inline add-windows-message
-: RB_PUSHCHEVRON WM_USER 43 + ; inline add-windows-message
-: TTM_ACTIVATE WM_USER 1 + ; inline add-windows-message
-: TTM_SETDELAYTIME WM_USER 3 + ; inline add-windows-message
-: TTM_ADDTOOLA WM_USER 4 + ; inline add-windows-message
-: TTM_ADDTOOLW WM_USER 50 + ; inline add-windows-message
-: TTM_DELTOOLA WM_USER 5 + ; inline add-windows-message
-: TTM_DELTOOLW WM_USER 51 + ; inline add-windows-message
-: TTM_NEWTOOLRECTA WM_USER 6 + ; inline add-windows-message
-: TTM_NEWTOOLRECTW WM_USER 52 + ; inline add-windows-message
-: TTM_RELAYEVENT WM_USER 7 + ; inline add-windows-message
-: TTM_GETTOOLINFOA WM_USER 8 + ; inline add-windows-message
-: TTM_GETTOOLINFOW WM_USER 53 + ; inline add-windows-message
-: TTM_SETTOOLINFOA WM_USER 9 + ; inline add-windows-message
-: TTM_SETTOOLINFOW WM_USER 54 + ; inline add-windows-message
-: TTM_HITTESTA WM_USER 10 + ; inline add-windows-message
-: TTM_HITTESTW WM_USER 55 + ; inline add-windows-message
-: TTM_GETTEXTA WM_USER 11 + ; inline add-windows-message
-: TTM_GETTEXTW WM_USER 56 + ; inline add-windows-message
-: TTM_UPDATETIPTEXTA WM_USER 12 + ; inline add-windows-message
-: TTM_UPDATETIPTEXTW WM_USER 57 + ; inline add-windows-message
-: TTM_GETTOOLCOUNT WM_USER 13 + ; inline add-windows-message
-: TTM_ENUMTOOLSA WM_USER 14 + ; inline add-windows-message
-: TTM_ENUMTOOLSW WM_USER 58 + ; inline add-windows-message
-: TTM_GETCURRENTTOOLA WM_USER 15 + ; inline add-windows-message
-: TTM_GETCURRENTTOOLW WM_USER 59 + ; inline add-windows-message
-: TTM_WINDOWFROMPOINT WM_USER 16 + ; inline add-windows-message
-: TTM_TRACKACTIVATE WM_USER 17 + ; inline add-windows-message
-: TTM_TRACKPOSITION WM_USER 18 + ; inline add-windows-message
-: TTM_SETTIPBKCOLOR WM_USER 19 + ; inline add-windows-message
-: TTM_SETTIPTEXTCOLOR WM_USER 20 + ; inline add-windows-message
-: TTM_GETDELAYTIME WM_USER 21 + ; inline add-windows-message
-: TTM_GETTIPBKCOLOR WM_USER 22 + ; inline add-windows-message
-: TTM_GETTIPTEXTCOLOR WM_USER 23 + ; inline add-windows-message
-: TTM_SETMAXTIPWIDTH WM_USER 24 + ; inline add-windows-message
-: TTM_GETMAXTIPWIDTH WM_USER 25 + ; inline add-windows-message
-: TTM_SETMARGIN WM_USER 26 + ; inline add-windows-message
-: TTM_GETMARGIN WM_USER 27 + ; inline add-windows-message
-: TTM_POP WM_USER 28 + ; inline add-windows-message
-: TTM_UPDATE WM_USER 29 + ; inline add-windows-message
-: TTM_GETBUBBLESIZE WM_USER 30 + ; inline add-windows-message
-: TTM_ADJUSTRECT WM_USER 31 + ; inline add-windows-message
-: TTM_SETTITLEA WM_USER 32 + ; inline add-windows-message
-: TTM_SETTITLEW WM_USER 33 + ; inline add-windows-message
-: TTM_POPUP WM_USER 34 + ; inline add-windows-message
-: TTM_GETTITLE WM_USER 35 + ; inline add-windows-message
-: TTM_SETWINDOWTHEME CCM_SETWINDOWTHEME ; inline add-windows-message
-: SB_SETTEXTA WM_USER 1+ ; inline add-windows-message
-: SB_SETTEXTW WM_USER 11 + ; inline add-windows-message
-: SB_GETTEXTA WM_USER 2 + ; inline add-windows-message
-: SB_GETTEXTW WM_USER 13 + ; inline add-windows-message
-: SB_GETTEXTLENGTHA WM_USER 3 + ; inline add-windows-message
-: SB_GETTEXTLENGTHW WM_USER 12 + ; inline add-windows-message
-: SB_SETPARTS WM_USER 4 + ; inline add-windows-message
-: SB_GETPARTS WM_USER 6 + ; inline add-windows-message
-: SB_GETBORDERS WM_USER 7 + ; inline add-windows-message
-: SB_SETMINHEIGHT WM_USER 8 + ; inline add-windows-message
-: SB_SIMPLE WM_USER 9 + ; inline add-windows-message
-: SB_GETRECT WM_USER 10 + ; inline add-windows-message
-: SB_ISSIMPLE WM_USER 14 + ; inline add-windows-message
-: SB_SETICON WM_USER 15 + ; inline add-windows-message
-: SB_SETTIPTEXTA WM_USER 16 + ; inline add-windows-message
-: SB_SETTIPTEXTW WM_USER 17 + ; inline add-windows-message
-: SB_GETTIPTEXTA WM_USER 18 + ; inline add-windows-message
-: SB_GETTIPTEXTW WM_USER 19 + ; inline add-windows-message
-: SB_GETICON WM_USER 20 + ; inline add-windows-message
-: SB_SETUNICODEFORMAT CCM_SETUNICODEFORMAT ; inline add-windows-message
-: SB_GETUNICODEFORMAT CCM_GETUNICODEFORMAT ; inline add-windows-message
-: SB_SETBKCOLOR CCM_SETBKCOLOR ; inline add-windows-message
-: SB_SIMPLEID HEX: 00ff ; inline add-windows-message
-: TBM_GETPOS WM_USER ; inline add-windows-message
-: TBM_GETRANGEMIN WM_USER 1 + ; inline add-windows-message
-: TBM_GETRANGEMAX WM_USER 2 + ; inline add-windows-message
-: TBM_GETTIC WM_USER 3 + ; inline add-windows-message
-: TBM_SETTIC WM_USER 4 + ; inline add-windows-message
-: TBM_SETPOS WM_USER 5 + ; inline add-windows-message
-: TBM_SETRANGE WM_USER 6 + ; inline add-windows-message
-: TBM_SETRANGEMIN WM_USER 7 + ; inline add-windows-message
-: TBM_SETRANGEMAX WM_USER 8 + ; inline add-windows-message
-: TBM_CLEARTICS WM_USER 9 + ; inline add-windows-message
-: TBM_SETSEL WM_USER 10 + ; inline add-windows-message
-: TBM_SETSELSTART WM_USER 11 + ; inline add-windows-message
-: TBM_SETSELEND WM_USER 12 + ; inline add-windows-message
-: TBM_GETPTICS WM_USER 14 + ; inline add-windows-message
-: TBM_GETTICPOS WM_USER 15 + ; inline add-windows-message
-: TBM_GETNUMTICS WM_USER 16 + ; inline add-windows-message
-: TBM_GETSELSTART WM_USER 17 + ; inline add-windows-message
-: TBM_GETSELEND WM_USER 18 + ; inline add-windows-message
-: TBM_CLEARSEL WM_USER 19 + ; inline add-windows-message
-: TBM_SETTICFREQ WM_USER 20 + ; inline add-windows-message
-: TBM_SETPAGESIZE WM_USER 21 + ; inline add-windows-message
-: TBM_GETPAGESIZE WM_USER 22 + ; inline add-windows-message
-: TBM_SETLINESIZE WM_USER 23 + ; inline add-windows-message
-: TBM_GETLINESIZE WM_USER 24 + ; inline add-windows-message
-: TBM_GETTHUMBRECT WM_USER 25 + ; inline add-windows-message
-: TBM_GETCHANNELRECT WM_USER 26 + ; inline add-windows-message
-: TBM_SETTHUMBLENGTH WM_USER 27 + ; inline add-windows-message
-: TBM_GETTHUMBLENGTH WM_USER 28 + ; inline add-windows-message
-: TBM_SETTOOLTIPS WM_USER 29 + ; inline add-windows-message
-: TBM_GETTOOLTIPS WM_USER 30 + ; inline add-windows-message
-: TBM_SETTIPSIDE WM_USER 31 + ; inline add-windows-message
-: TBM_SETBUDDY WM_USER 32 + ; inline add-windows-message
-: TBM_GETBUDDY WM_USER 33 + ; inline add-windows-message
-: TBM_SETUNICODEFORMAT CCM_SETUNICODEFORMAT ; inline add-windows-message
-: TBM_GETUNICODEFORMAT CCM_GETUNICODEFORMAT ; inline add-windows-message
-: DL_BEGINDRAG WM_USER 133 + ; inline add-windows-message
-: DL_DRAGGING WM_USER 134 + ; inline add-windows-message
-: DL_DROPPED WM_USER 135 + ; inline add-windows-message
-: DL_CANCELDRAG WM_USER 136 + ; inline add-windows-message
-: UDM_SETRANGE WM_USER 101 + ; inline add-windows-message
-: UDM_GETRANGE WM_USER 102 + ; inline add-windows-message
-: UDM_SETPOS WM_USER 103 + ; inline add-windows-message
-: UDM_GETPOS WM_USER 104 + ; inline add-windows-message
-: UDM_SETBUDDY WM_USER 105 + ; inline add-windows-message
-: UDM_GETBUDDY WM_USER 106 + ; inline add-windows-message
-: UDM_SETACCEL WM_USER 107 + ; inline add-windows-message
-: UDM_GETACCEL WM_USER 108 + ; inline add-windows-message
-: UDM_SETBASE WM_USER 109 + ; inline add-windows-message
-: UDM_GETBASE WM_USER 110 + ; inline add-windows-message
-: UDM_SETRANGE32 WM_USER 111 + ; inline add-windows-message
-: UDM_GETRANGE32 WM_USER 112 + ; inline add-windows-message
-: UDM_SETUNICODEFORMAT CCM_SETUNICODEFORMAT ; inline add-windows-message
-: UDM_GETUNICODEFORMAT CCM_GETUNICODEFORMAT ; inline add-windows-message
-: UDM_SETPOS32 WM_USER 113 + ; inline add-windows-message
-: UDM_GETPOS32 WM_USER 114 + ; inline add-windows-message
-: PBM_SETRANGE WM_USER 1 + ; inline add-windows-message
-: PBM_SETPOS WM_USER 2 + ; inline add-windows-message
-: PBM_DELTAPOS WM_USER 3 + ; inline add-windows-message
-: PBM_SETSTEP WM_USER 4 + ; inline add-windows-message
-: PBM_STEPIT WM_USER 5 + ; inline add-windows-message
-: PBM_SETRANGE32 WM_USER 6 + ; inline add-windows-message
-: PBM_GETRANGE WM_USER 7 + ; inline add-windows-message
-: PBM_GETPOS WM_USER 8 + ; inline add-windows-message
-: PBM_SETBARCOLOR WM_USER 9 + ; inline add-windows-message
-: PBM_SETBKCOLOR CCM_SETBKCOLOR ; inline add-windows-message
-: HKM_SETHOTKEY WM_USER 1 + ; inline add-windows-message
-: HKM_GETHOTKEY WM_USER 2 + ; inline add-windows-message
-: HKM_SETRULES WM_USER 3 + ; inline add-windows-message
-: LVM_SETUNICODEFORMAT CCM_SETUNICODEFORMAT ; inline add-windows-message
-: LVM_GETUNICODEFORMAT CCM_GETUNICODEFORMAT ; inline add-windows-message
-: LVM_GETBKCOLOR LVM_FIRST 0 + ; inline add-windows-message
-: LVM_SETBKCOLOR LVM_FIRST 1 + ; inline add-windows-message
-: LVM_GETIMAGELIST LVM_FIRST 2 + ; inline add-windows-message
-: LVM_SETIMAGELIST LVM_FIRST 3 + ; inline add-windows-message
-: LVM_GETITEMCOUNT LVM_FIRST 4 + ; inline add-windows-message
-: LVM_GETITEMA LVM_FIRST 5 + ; inline add-windows-message
-: LVM_GETITEMW LVM_FIRST 75 + ; inline add-windows-message
-: LVM_SETITEMA LVM_FIRST 6 + ; inline add-windows-message
-: LVM_SETITEMW LVM_FIRST 76 + ; inline add-windows-message
-: LVM_INSERTITEMA LVM_FIRST 7 + ; inline add-windows-message
-: LVM_INSERTITEMW LVM_FIRST 77 + ; inline add-windows-message
-: LVM_DELETEITEM LVM_FIRST 8 + ; inline add-windows-message
-: LVM_DELETEALLITEMS LVM_FIRST 9 + ; inline add-windows-message
-: LVM_GETCALLBACKMASK LVM_FIRST 10 + ; inline add-windows-message
-: LVM_SETCALLBACKMASK LVM_FIRST 11 + ; inline add-windows-message
-: LVM_FINDITEMA LVM_FIRST 13 + ; inline add-windows-message
-: LVM_FINDITEMW LVM_FIRST 83 + ; inline add-windows-message
-: LVM_GETITEMRECT LVM_FIRST 14 + ; inline add-windows-message
-: LVM_SETITEMPOSITION LVM_FIRST 15 + ; inline add-windows-message
-: LVM_GETITEMPOSITION LVM_FIRST 16 + ; inline add-windows-message
-: LVM_GETSTRINGWIDTHA LVM_FIRST 17 + ; inline add-windows-message
-: LVM_GETSTRINGWIDTHW LVM_FIRST 87 + ; inline add-windows-message
-: LVM_HITTEST LVM_FIRST 18 + ; inline add-windows-message
-: LVM_ENSUREVISIBLE LVM_FIRST 19 + ; inline add-windows-message
-: LVM_SCROLL LVM_FIRST 20 + ; inline add-windows-message
-: LVM_REDRAWITEMS LVM_FIRST 21 + ; inline add-windows-message
-: LVM_ARRANGE LVM_FIRST 22 + ; inline add-windows-message
-: LVM_EDITLABELA LVM_FIRST 23 + ; inline add-windows-message
-: LVM_EDITLABELW LVM_FIRST 118 + ; inline add-windows-message
-: LVM_GETEDITCONTROL LVM_FIRST 24 + ; inline add-windows-message
-: LVM_GETCOLUMNA LVM_FIRST 25 + ; inline add-windows-message
-: LVM_GETCOLUMNW LVM_FIRST 95 + ; inline add-windows-message
-: LVM_SETCOLUMNA LVM_FIRST 26 + ; inline add-windows-message
-: LVM_SETCOLUMNW LVM_FIRST 96 + ; inline add-windows-message
-: LVM_INSERTCOLUMNA LVM_FIRST 27 + ; inline add-windows-message
-: LVM_INSERTCOLUMNW LVM_FIRST 97 + ; inline add-windows-message
-: LVM_DELETECOLUMN LVM_FIRST 28 + ; inline add-windows-message
-: LVM_GETCOLUMNWIDTH LVM_FIRST 29 + ; inline add-windows-message
-: LVM_SETCOLUMNWIDTH LVM_FIRST 30 + ; inline add-windows-message
-: LVM_CREATEDRAGIMAGE LVM_FIRST 33 + ; inline add-windows-message
-: LVM_GETVIEWRECT LVM_FIRST 34 + ; inline add-windows-message
-: LVM_GETTEXTCOLOR LVM_FIRST 35 + ; inline add-windows-message
-: LVM_SETTEXTCOLOR LVM_FIRST 36 + ; inline add-windows-message
-: LVM_GETTEXTBKCOLOR LVM_FIRST 37 + ; inline add-windows-message
-: LVM_SETTEXTBKCOLOR LVM_FIRST 38 + ; inline add-windows-message
-: LVM_GETTOPINDEX LVM_FIRST 39 + ; inline add-windows-message
-: LVM_GETCOUNTPERPAGE LVM_FIRST 40 + ; inline add-windows-message
-: LVM_GETORIGIN LVM_FIRST 41 + ; inline add-windows-message
-: LVM_UPDATE LVM_FIRST 42 + ; inline add-windows-message
-: LVM_SETITEMSTATE LVM_FIRST 43 + ; inline add-windows-message
-: LVM_GETITEMSTATE LVM_FIRST 44 + ; inline add-windows-message
-: LVM_GETITEMTEXTA LVM_FIRST 45 + ; inline add-windows-message
-: LVM_GETITEMTEXTW LVM_FIRST 115 + ; inline add-windows-message
-: LVM_SETITEMTEXTA LVM_FIRST 46 + ; inline add-windows-message
-: LVM_SETITEMTEXTW LVM_FIRST 116 + ; inline add-windows-message
-: LVM_SETITEMCOUNT LVM_FIRST 47 + ; inline add-windows-message
-: LVM_SORTITEMS LVM_FIRST 48 + ; inline add-windows-message
-: LVM_SETITEMPOSITION32 LVM_FIRST 49 + ; inline add-windows-message
-: LVM_GETSELECTEDCOUNT LVM_FIRST 50 + ; inline add-windows-message
-: LVM_GETITEMSPACING LVM_FIRST 51 + ; inline add-windows-message
-: LVM_GETISEARCHSTRINGA LVM_FIRST 52 + ; inline add-windows-message
-: LVM_GETISEARCHSTRINGW LVM_FIRST 117 + ; inline add-windows-message
-: LVM_SETICONSPACING LVM_FIRST 53 + ; inline add-windows-message
-: LVM_SETEXTENDEDLISTVIEWSTYLE LVM_FIRST 54 + ; inline add-windows-message
-: LVM_GETEXTENDEDLISTVIEWSTYLE LVM_FIRST 55 + ; inline add-windows-message
-: LVM_GETSUBITEMRECT LVM_FIRST 56 + ; inline add-windows-message
-: LVM_SUBITEMHITTEST LVM_FIRST 57 + ; inline add-windows-message
-: LVM_SETCOLUMNORDERARRAY LVM_FIRST 58 + ; inline add-windows-message
-: LVM_GETCOLUMNORDERARRAY LVM_FIRST 59 + ; inline add-windows-message
-: LVM_SETHOTITEM LVM_FIRST 60 + ; inline add-windows-message
-: LVM_GETHOTITEM LVM_FIRST 61 + ; inline add-windows-message
-: LVM_SETHOTCURSOR LVM_FIRST 62 + ; inline add-windows-message
-: LVM_GETHOTCURSOR LVM_FIRST 63 + ; inline add-windows-message
-: LVM_APPROXIMATEVIEWRECT LVM_FIRST 64 + ; inline add-windows-message
-: LVM_SETWORKAREAS LVM_FIRST 65 + ; inline add-windows-message
-: LVM_GETWORKAREAS LVM_FIRST 70 + ; inline add-windows-message
-: LVM_GETNUMBEROFWORKAREAS LVM_FIRST 73 + ; inline add-windows-message
-: LVM_GETSELECTIONMARK LVM_FIRST 66 + ; inline add-windows-message
-: LVM_SETSELECTIONMARK LVM_FIRST 67 + ; inline add-windows-message
-: LVM_SETHOVERTIME LVM_FIRST 71 + ; inline add-windows-message
-: LVM_GETHOVERTIME LVM_FIRST 72 + ; inline add-windows-message
-: LVM_SETTOOLTIPS LVM_FIRST 74 + ; inline add-windows-message
-: LVM_GETTOOLTIPS LVM_FIRST 78 + ; inline add-windows-message
-: LVM_SORTITEMSEX LVM_FIRST 81 + ; inline add-windows-message
-: LVM_SETBKIMAGEA LVM_FIRST 68 + ; inline add-windows-message
-: LVM_SETBKIMAGEW LVM_FIRST 138 + ; inline add-windows-message
-: LVM_GETBKIMAGEA LVM_FIRST 69 + ; inline add-windows-message
-: LVM_GETBKIMAGEW LVM_FIRST 139 + ; inline add-windows-message
-: LVM_SETSELECTEDCOLUMN LVM_FIRST 140 + ; inline add-windows-message
-: LVM_SETTILEWIDTH LVM_FIRST 141 + ; inline add-windows-message
-: LVM_SETVIEW LVM_FIRST 142 + ; inline add-windows-message
-: LVM_GETVIEW LVM_FIRST 143 + ; inline add-windows-message
-: LVM_INSERTGROUP LVM_FIRST 145 + ; inline add-windows-message
-: LVM_SETGROUPINFO LVM_FIRST 147 + ; inline add-windows-message
-: LVM_GETGROUPINFO LVM_FIRST 149 + ; inline add-windows-message
-: LVM_REMOVEGROUP LVM_FIRST 150 + ; inline add-windows-message
-: LVM_MOVEGROUP LVM_FIRST 151 + ; inline add-windows-message
-: LVM_MOVEITEMTOGROUP LVM_FIRST 154 + ; inline add-windows-message
-: LVM_SETGROUPMETRICS LVM_FIRST 155 + ; inline add-windows-message
-: LVM_GETGROUPMETRICS LVM_FIRST 156 + ; inline add-windows-message
-: LVM_ENABLEGROUPVIEW LVM_FIRST 157 + ; inline add-windows-message
-: LVM_SORTGROUPS LVM_FIRST 158 + ; inline add-windows-message
-: LVM_INSERTGROUPSORTED LVM_FIRST 159 + ; inline add-windows-message
-: LVM_REMOVEALLGROUPS LVM_FIRST 160 + ; inline add-windows-message
-: LVM_HASGROUP LVM_FIRST 161 + ; inline add-windows-message
-: LVM_SETTILEVIEWINFO LVM_FIRST 162 + ; inline add-windows-message
-: LVM_GETTILEVIEWINFO LVM_FIRST 163 + ; inline add-windows-message
-: LVM_SETTILEINFO LVM_FIRST 164 + ; inline add-windows-message
-: LVM_GETTILEINFO LVM_FIRST 165 + ; inline add-windows-message
-: LVM_SETINSERTMARK LVM_FIRST 166 + ; inline add-windows-message
-: LVM_GETINSERTMARK LVM_FIRST 167 + ; inline add-windows-message
-: LVM_INSERTMARKHITTEST LVM_FIRST 168 + ; inline add-windows-message
-: LVM_GETINSERTMARKRECT LVM_FIRST 169 + ; inline add-windows-message
-: LVM_SETINSERTMARKCOLOR LVM_FIRST 170 + ; inline add-windows-message
-: LVM_GETINSERTMARKCOLOR LVM_FIRST 171 + ; inline add-windows-message
-: LVM_SETINFOTIP LVM_FIRST 173 + ; inline add-windows-message
-: LVM_GETSELECTEDCOLUMN LVM_FIRST 174 + ; inline add-windows-message
-: LVM_ISGROUPVIEWENABLED LVM_FIRST 175 + ; inline add-windows-message
-: LVM_GETOUTLINECOLOR LVM_FIRST 176 + ; inline add-windows-message
-: LVM_SETOUTLINECOLOR LVM_FIRST 177 + ; inline add-windows-message
-: LVM_CANCELEDITLABEL LVM_FIRST 179 + ; inline add-windows-message
-: LVM_MAPINDEXTOID LVM_FIRST 180 + ; inline add-windows-message
-: LVM_MAPIDTOINDEX LVM_FIRST 181 + ; inline add-windows-message
-: TVM_INSERTITEMA TV_FIRST 0 + ; inline add-windows-message
-: TVM_INSERTITEMW TV_FIRST 50 + ; inline add-windows-message
-: TVM_DELETEITEM TV_FIRST 1 + ; inline add-windows-message
-: TVM_EXPAND TV_FIRST 2 + ; inline add-windows-message
-: TVM_GETITEMRECT TV_FIRST 4 + ; inline add-windows-message
-: TVM_GETCOUNT TV_FIRST 5 + ; inline add-windows-message
-: TVM_GETINDENT TV_FIRST 6 + ; inline add-windows-message
-: TVM_SETINDENT TV_FIRST 7 + ; inline add-windows-message
-: TVM_GETIMAGELIST TV_FIRST 8 + ; inline add-windows-message
-: TVM_SETIMAGELIST TV_FIRST 9 + ; inline add-windows-message
-: TVM_GETNEXTITEM TV_FIRST 10 + ; inline add-windows-message
-: TVM_SELECTITEM TV_FIRST 11 + ; inline add-windows-message
-: TVM_GETITEMA TV_FIRST 12 + ; inline add-windows-message
-: TVM_GETITEMW TV_FIRST 62 + ; inline add-windows-message
-: TVM_SETITEMA TV_FIRST 13 + ; inline add-windows-message
-: TVM_SETITEMW TV_FIRST 63 + ; inline add-windows-message
-: TVM_EDITLABELA TV_FIRST 14 + ; inline add-windows-message
-: TVM_EDITLABELW TV_FIRST 65 + ; inline add-windows-message
-: TVM_GETEDITCONTROL TV_FIRST 15 + ; inline add-windows-message
-: TVM_GETVISIBLECOUNT TV_FIRST 16 + ; inline add-windows-message
-: TVM_HITTEST TV_FIRST 17 + ; inline add-windows-message
-: TVM_CREATEDRAGIMAGE TV_FIRST 18 + ; inline add-windows-message
-: TVM_SORTCHILDREN TV_FIRST 19 + ; inline add-windows-message
-: TVM_ENSUREVISIBLE TV_FIRST 20 + ; inline add-windows-message
-: TVM_SORTCHILDRENCB TV_FIRST 21 + ; inline add-windows-message
-: TVM_ENDEDITLABELNOW TV_FIRST 22 + ; inline add-windows-message
-: TVM_GETISEARCHSTRINGA TV_FIRST 23 + ; inline add-windows-message
-: TVM_GETISEARCHSTRINGW TV_FIRST 64 + ; inline add-windows-message
-: TVM_SETTOOLTIPS TV_FIRST 24 + ; inline add-windows-message
-: TVM_GETTOOLTIPS TV_FIRST 25 + ; inline add-windows-message
-: TVM_SETINSERTMARK TV_FIRST 26 + ; inline add-windows-message
-: TVM_SETUNICODEFORMAT CCM_SETUNICODEFORMAT ; inline add-windows-message
-: TVM_GETUNICODEFORMAT CCM_GETUNICODEFORMAT ; inline add-windows-message
-: TVM_SETITEMHEIGHT TV_FIRST 27 + ; inline add-windows-message
-: TVM_GETITEMHEIGHT TV_FIRST 28 + ; inline add-windows-message
-: TVM_SETBKCOLOR TV_FIRST 29 + ; inline add-windows-message
-: TVM_SETTEXTCOLOR TV_FIRST 30 + ; inline add-windows-message
-: TVM_GETBKCOLOR TV_FIRST 31 + ; inline add-windows-message
-: TVM_GETTEXTCOLOR TV_FIRST 32 + ; inline add-windows-message
-: TVM_SETSCROLLTIME TV_FIRST 33 + ; inline add-windows-message
-: TVM_GETSCROLLTIME TV_FIRST 34 + ; inline add-windows-message
-: TVM_SETINSERTMARKCOLOR TV_FIRST 37 + ; inline add-windows-message
-: TVM_GETINSERTMARKCOLOR TV_FIRST 38 + ; inline add-windows-message
-: TVM_GETITEMSTATE TV_FIRST 39 + ; inline add-windows-message
-: TVM_SETLINECOLOR TV_FIRST 40 + ; inline add-windows-message
-: TVM_GETLINECOLOR TV_FIRST 41 + ; inline add-windows-message
-: TVM_MAPACCIDTOHTREEITEM TV_FIRST 42 + ; inline add-windows-message
-: TVM_MAPHTREEITEMTOACCID TV_FIRST 43 + ; inline add-windows-message
-: CBEM_INSERTITEMA WM_USER 1 + ; inline add-windows-message
-: CBEM_SETIMAGELIST WM_USER 2 + ; inline add-windows-message
-: CBEM_GETIMAGELIST WM_USER 3 + ; inline add-windows-message
-: CBEM_GETITEMA WM_USER 4 + ; inline add-windows-message
-: CBEM_SETITEMA WM_USER 5 + ; inline add-windows-message
-: CBEM_DELETEITEM CB_DELETESTRING ; inline add-windows-message
-: CBEM_GETCOMBOCONTROL WM_USER 6 + ; inline add-windows-message
-: CBEM_GETEDITCONTROL WM_USER 7 + ; inline add-windows-message
-: CBEM_SETEXTENDEDSTYLE WM_USER 14 + ; inline add-windows-message
-: CBEM_GETEXTENDEDSTYLE WM_USER 9 + ; inline add-windows-message
-: CBEM_SETUNICODEFORMAT CCM_SETUNICODEFORMAT ; inline add-windows-message
-: CBEM_GETUNICODEFORMAT CCM_GETUNICODEFORMAT ; inline add-windows-message
-: CBEM_SETEXSTYLE WM_USER 8 + ; inline add-windows-message
-: CBEM_GETEXSTYLE WM_USER 9 + ; inline add-windows-message
-: CBEM_HASEDITCHANGED WM_USER 10 + ; inline add-windows-message
-: CBEM_INSERTITEMW WM_USER 11 + ; inline add-windows-message
-: CBEM_SETITEMW WM_USER 12 + ; inline add-windows-message
-: CBEM_GETITEMW WM_USER 13 + ; inline add-windows-message
-: TCM_GETIMAGELIST TCM_FIRST 2 + ; inline add-windows-message
-: TCM_SETIMAGELIST TCM_FIRST 3 + ; inline add-windows-message
-: TCM_GETITEMCOUNT TCM_FIRST 4 + ; inline add-windows-message
-: TCM_GETITEMA TCM_FIRST 5 + ; inline add-windows-message
-: TCM_GETITEMW TCM_FIRST 60 + ; inline add-windows-message
-: TCM_SETITEMA TCM_FIRST 6 + ; inline add-windows-message
-: TCM_SETITEMW TCM_FIRST 61 + ; inline add-windows-message
-: TCM_INSERTITEMA TCM_FIRST 7 + ; inline add-windows-message
-: TCM_INSERTITEMW TCM_FIRST 62 + ; inline add-windows-message
-: TCM_DELETEITEM TCM_FIRST 8 + ; inline add-windows-message
-: TCM_DELETEALLITEMS TCM_FIRST 9 + ; inline add-windows-message
-: TCM_GETITEMRECT TCM_FIRST 10 + ; inline add-windows-message
-: TCM_GETCURSEL TCM_FIRST 11 + ; inline add-windows-message
-: TCM_SETCURSEL TCM_FIRST 12 + ; inline add-windows-message
-: TCM_HITTEST TCM_FIRST 13 + ; inline add-windows-message
-: TCM_SETITEMEXTRA TCM_FIRST 14 + ; inline add-windows-message
-: TCM_ADJUSTRECT TCM_FIRST 40 + ; inline add-windows-message
-: TCM_SETITEMSIZE TCM_FIRST 41 + ; inline add-windows-message
-: TCM_REMOVEIMAGE TCM_FIRST 42 + ; inline add-windows-message
-: TCM_SETPADDING TCM_FIRST 43 + ; inline add-windows-message
-: TCM_GETROWCOUNT TCM_FIRST 44 + ; inline add-windows-message
-: TCM_GETTOOLTIPS TCM_FIRST 45 + ; inline add-windows-message
-: TCM_SETTOOLTIPS TCM_FIRST 46 + ; inline add-windows-message
-: TCM_GETCURFOCUS TCM_FIRST 47 + ; inline add-windows-message
-: TCM_SETCURFOCUS TCM_FIRST 48 + ; inline add-windows-message
-: TCM_SETMINTABWIDTH TCM_FIRST 49 + ; inline add-windows-message
-: TCM_DESELECTALL TCM_FIRST 50 + ; inline add-windows-message
-: TCM_HIGHLIGHTITEM TCM_FIRST 51 + ; inline add-windows-message
-: TCM_SETEXTENDEDSTYLE TCM_FIRST 52 + ; inline add-windows-message
-: TCM_GETEXTENDEDSTYLE TCM_FIRST 53 + ; inline add-windows-message
-: TCM_SETUNICODEFORMAT CCM_SETUNICODEFORMAT ; inline add-windows-message
-: TCM_GETUNICODEFORMAT CCM_GETUNICODEFORMAT ; inline add-windows-message
-: ACM_OPENA WM_USER 100 + ; inline add-windows-message
-: ACM_OPENW WM_USER 103 + ; inline add-windows-message
-: ACM_PLAY WM_USER 101 + ; inline add-windows-message
-: ACM_STOP WM_USER 102 + ; inline add-windows-message
-: MCM_FIRST HEX: 1000 ; inline add-windows-message
-: MCM_GETCURSEL MCM_FIRST 1 + ; inline add-windows-message
-: MCM_SETCURSEL MCM_FIRST 2 + ; inline add-windows-message
-: MCM_GETMAXSELCOUNT MCM_FIRST 3 + ; inline add-windows-message
-: MCM_SETMAXSELCOUNT MCM_FIRST 4 + ; inline add-windows-message
-: MCM_GETSELRANGE MCM_FIRST 5 + ; inline add-windows-message
-: MCM_SETSELRANGE MCM_FIRST 6 + ; inline add-windows-message
-: MCM_GETMONTHRANGE MCM_FIRST 7 + ; inline add-windows-message
-: MCM_SETDAYSTATE MCM_FIRST 8 + ; inline add-windows-message
-: MCM_GETMINREQRECT MCM_FIRST 9 + ; inline add-windows-message
-: MCM_SETCOLOR MCM_FIRST 10 + ; inline add-windows-message
-: MCM_GETCOLOR MCM_FIRST 11 + ; inline add-windows-message
-: MCM_SETTODAY MCM_FIRST 12 + ; inline add-windows-message
-: MCM_GETTODAY MCM_FIRST 13 + ; inline add-windows-message
-: MCM_HITTEST MCM_FIRST 14 + ; inline add-windows-message
-: MCM_SETFIRSTDAYOFWEEK MCM_FIRST 15 + ; inline add-windows-message
-: MCM_GETFIRSTDAYOFWEEK MCM_FIRST 16 + ; inline add-windows-message
-: MCM_GETRANGE MCM_FIRST 17 + ; inline add-windows-message
-: MCM_SETRANGE MCM_FIRST 18 + ; inline add-windows-message
-: MCM_GETMONTHDELTA MCM_FIRST 19 + ; inline add-windows-message
-: MCM_SETMONTHDELTA MCM_FIRST 20 + ; inline add-windows-message
-: MCM_GETMAXTODAYWIDTH MCM_FIRST 21 + ; inline add-windows-message
-: MCM_SETUNICODEFORMAT CCM_SETUNICODEFORMAT ; inline add-windows-message
-: MCM_GETUNICODEFORMAT CCM_GETUNICODEFORMAT ; inline add-windows-message
-: DTM_FIRST HEX: 1000 ; inline add-windows-message
-: DTM_GETSYSTEMTIME DTM_FIRST 1 + ; inline add-windows-message
-: DTM_SETSYSTEMTIME DTM_FIRST 2 + ; inline add-windows-message
-: DTM_GETRANGE DTM_FIRST 3 + ; inline add-windows-message
-: DTM_SETRANGE DTM_FIRST 4 + ; inline add-windows-message
-: DTM_SETFORMATA DTM_FIRST 5 + ; inline add-windows-message
-: DTM_SETFORMATW DTM_FIRST 50 + ; inline add-windows-message
-: DTM_SETMCCOLOR DTM_FIRST 6 + ; inline add-windows-message
-: DTM_GETMCCOLOR DTM_FIRST 7 + ; inline add-windows-message
-: DTM_GETMONTHCAL DTM_FIRST 8 + ; inline add-windows-message
-: DTM_SETMCFONT DTM_FIRST 9 + ; inline add-windows-message
-: DTM_GETMCFONT DTM_FIRST 10 + ; inline add-windows-message
-: PGM_SETCHILD PGM_FIRST 1 + ; inline add-windows-message
-: PGM_RECALCSIZE PGM_FIRST 2 + ; inline add-windows-message
-: PGM_FORWARDMOUSE PGM_FIRST 3 + ; inline add-windows-message
-: PGM_SETBKCOLOR PGM_FIRST 4 + ; inline add-windows-message
-: PGM_GETBKCOLOR PGM_FIRST 5 + ; inline add-windows-message
-: PGM_SETBORDER PGM_FIRST 6 + ; inline add-windows-message
-: PGM_GETBORDER PGM_FIRST 7 + ; inline add-windows-message
-: PGM_SETPOS PGM_FIRST 8 + ; inline add-windows-message
-: PGM_GETPOS PGM_FIRST 9 + ; inline add-windows-message
-: PGM_SETBUTTONSIZE PGM_FIRST 10 + ; inline add-windows-message
-: PGM_GETBUTTONSIZE PGM_FIRST 11 + ; inline add-windows-message
-: PGM_GETBUTTONSTATE PGM_FIRST 12 + ; inline add-windows-message
-: PGM_GETDROPTARGET CCM_GETDROPTARGET ; inline add-windows-message
-: BCM_GETIDEALSIZE BCM_FIRST 1 + ; inline add-windows-message
-: BCM_SETIMAGELIST BCM_FIRST 2 + ; inline add-windows-message
-: BCM_GETIMAGELIST BCM_FIRST 3 + ; inline add-windows-message
-: BCM_SETTEXTMARGIN BCM_FIRST 4 + ; inline add-windows-message
-: BCM_GETTEXTMARGIN BCM_FIRST 5 + ; inline add-windows-message
-: EM_SETCUEBANNER ECM_FIRST 1 + ; inline add-windows-message
-: EM_GETCUEBANNER ECM_FIRST 2 + ; inline add-windows-message
-: EM_SHOWBALLOONTIP ECM_FIRST 3 + ; inline add-windows-message
-: EM_HIDEBALLOONTIP ECM_FIRST 4 + ; inline add-windows-message
-: CB_SETMINVISIBLE CBM_FIRST 1 + ; inline add-windows-message
-: CB_GETMINVISIBLE CBM_FIRST 2 + ; inline add-windows-message
-: LM_HITTEST WM_USER HEX: 0300 + ; inline add-windows-message
-: LM_GETIDEALHEIGHT WM_USER HEX: 0301 + ; inline add-windows-message
-: LM_SETITEM WM_USER HEX: 0302 + ; inline add-windows-message
-: LM_GETITEM WM_USER HEX: 0303 + ; inline add-windows-message
--- /dev/null
+! Copyright (C) 2005, 2006 Doug Coleman.
+! See http://factor.sf.net/license.txt for BSD license.
+USING: alien kernel errors ;
+IN: win32-api
+
+LIBRARY: gdi32
+
+! Stock Logical Objects
+: WHITE_BRUSH 0 ; inline
+: LTGRAY_BRUSH 1 ; inline
+: GRAY_BRUSH 2 ; inline
+: DKGRAY_BRUSH 3 ; inline
+: BLACK_BRUSH 4 ; inline
+: NULL_BRUSH 5 ; inline
+: HOLLOW_BRUSH NULL_BRUSH ; inline
+: WHITE_PEN 6 ; inline
+: BLACK_PEN 7 ; inline
+: NULL_PEN 8 ; inline
+: OEM_FIXED_FONT 10 ; inline
+: ANSI_FIXED_FONT 11 ; inline
+: ANSI_VAR_FONT 12 ; inline
+: SYSTEM_FONT 13 ; inline
+: DEVICE_DEFAULT_FONT 14 ; inline
+: DEFAULT_PALETTE 15 ; inline
+: SYSTEM_FIXED_FONT 16 ; inline
+: DEFAULT_GUI_FONT 17 ; inline
+: DC_BRUSH 18 ; inline
+: DC_PEN 19 ; inline
+
+
--- /dev/null
+! FUNCTION: AbortDoc\r
+! Copyright (C) 2005, 2006 Doug Coleman.\r
+! See http://factor.sf.net/license.txt for BSD license.\r
+USING: alien kernel errors ;\r
+IN: win32-api\r
+\r
+LIBRARY: gdi32\r
+\r
+! FUNCTION: AbortPath\r
+! FUNCTION: AddFontMemResourceEx\r
+! FUNCTION: AddFontResourceA\r
+! FUNCTION: AddFontResourceExA\r
+! FUNCTION: AddFontResourceExW\r
+! FUNCTION: AddFontResourceTracking\r
+! FUNCTION: AddFontResourceW\r
+! FUNCTION: AngleArc\r
+! FUNCTION: AnimatePalette\r
+! FUNCTION: AnyLinkedFonts\r
+! FUNCTION: Arc\r
+! FUNCTION: ArcTo\r
+! FUNCTION: BeginPath\r
+! FUNCTION: bInitSystemAndFontsDirectoriesW\r
+! FUNCTION: BitBlt\r
+! FUNCTION: bMakePathNameW\r
+! FUNCTION: BRUSHOBJ_hGetColorTransform\r
+! FUNCTION: BRUSHOBJ_pvAllocRbrush\r
+! FUNCTION: BRUSHOBJ_pvGetRbrush\r
+! FUNCTION: BRUSHOBJ_ulGetBrushColor\r
+! FUNCTION: CancelDC\r
+! FUNCTION: cGetTTFFromFOT\r
+! FUNCTION: CheckColorsInGamut\r
+FUNCTION: int ChoosePixelFormat ( HDC hDC, PFD* ppfd ) ;\r
+! FUNCTION: Chord\r
+! FUNCTION: ClearBitmapAttributes\r
+! FUNCTION: ClearBrushAttributes\r
+! FUNCTION: CLIPOBJ_bEnum\r
+! FUNCTION: CLIPOBJ_cEnumStart\r
+! FUNCTION: CLIPOBJ_ppoGetPath\r
+! FUNCTION: CloseEnhMetaFile\r
+! FUNCTION: CloseFigure\r
+! FUNCTION: CloseMetaFile\r
+! FUNCTION: ColorCorrectPalette\r
+! FUNCTION: ColorMatchToTarget\r
+! FUNCTION: CombineRgn\r
+! FUNCTION: CombineTransform\r
+! FUNCTION: CopyEnhMetaFileA\r
+! FUNCTION: CopyEnhMetaFileW\r
+! FUNCTION: CopyMetaFileA\r
+! FUNCTION: CopyMetaFileW\r
+! FUNCTION: CreateBitmap\r
+! FUNCTION: CreateBitmapIndirect\r
+! FUNCTION: CreateBrushIndirect\r
+! FUNCTION: CreateColorSpaceA\r
+! FUNCTION: CreateColorSpaceW\r
+! FUNCTION: CreateCompatibleBitmap\r
+! FUNCTION: CreateCompatibleDC\r
+! FUNCTION: CreateDCA\r
+! FUNCTION: CreateDCW\r
+! FUNCTION: CreateDIBitmap\r
+! FUNCTION: CreateDIBPatternBrush\r
+! FUNCTION: CreateDIBPatternBrushPt\r
+! FUNCTION: CreateDIBSection\r
+! FUNCTION: CreateDiscardableBitmap\r
+! FUNCTION: CreateEllipticRgn\r
+! FUNCTION: CreateEllipticRgnIndirect\r
+! FUNCTION: CreateEnhMetaFileA\r
+! FUNCTION: CreateEnhMetaFileW\r
+! FUNCTION: CreateFontA\r
+! FUNCTION: CreateFontIndirectA\r
+! FUNCTION: CreateFontIndirectExA\r
+! FUNCTION: CreateFontIndirectExW\r
+! FUNCTION: CreateFontIndirectW\r
+! FUNCTION: CreateFontW\r
+! FUNCTION: CreateHalftonePalette\r
+! FUNCTION: CreateHatchBrush\r
+! FUNCTION: CreateICA\r
+! FUNCTION: CreateICW\r
+! FUNCTION: CreateMetaFileA\r
+! FUNCTION: CreateMetaFileW\r
+! FUNCTION: CreatePalette\r
+! FUNCTION: CreatePatternBrush\r
+! FUNCTION: CreatePen\r
+! FUNCTION: CreatePenIndirect\r
+! FUNCTION: CreatePolygonRgn\r
+! FUNCTION: CreatePolyPolygonRgn\r
+! FUNCTION: CreateRectRgn\r
+! FUNCTION: CreateRectRgnIndirect\r
+! FUNCTION: CreateRoundRectRgn\r
+! FUNCTION: CreateScalableFontResourceA\r
+! FUNCTION: CreateScalableFontResourceW\r
+! FUNCTION: CreateSolidBrush\r
+! FUNCTION: DdEntry0\r
+! FUNCTION: DdEntry1\r
+! FUNCTION: DdEntry10\r
+! FUNCTION: DdEntry11\r
+! FUNCTION: DdEntry12\r
+! FUNCTION: DdEntry13\r
+! FUNCTION: DdEntry14\r
+! FUNCTION: DdEntry15\r
+! FUNCTION: DdEntry16\r
+! FUNCTION: DdEntry17\r
+! FUNCTION: DdEntry18\r
+! FUNCTION: DdEntry19\r
+! FUNCTION: DdEntry2\r
+! FUNCTION: DdEntry20\r
+! FUNCTION: DdEntry21\r
+! FUNCTION: DdEntry22\r
+! FUNCTION: DdEntry23\r
+! FUNCTION: DdEntry24\r
+! FUNCTION: DdEntry25\r
+! FUNCTION: DdEntry26\r
+! FUNCTION: DdEntry27\r
+! FUNCTION: DdEntry28\r
+! FUNCTION: DdEntry29\r
+! FUNCTION: DdEntry3\r
+! FUNCTION: DdEntry30\r
+! FUNCTION: DdEntry31\r
+! FUNCTION: DdEntry32\r
+! FUNCTION: DdEntry33\r
+! FUNCTION: DdEntry34\r
+! FUNCTION: DdEntry35\r
+! FUNCTION: DdEntry36\r
+! FUNCTION: DdEntry37\r
+! FUNCTION: DdEntry38\r
+! FUNCTION: DdEntry39\r
+! FUNCTION: DdEntry4\r
+! FUNCTION: DdEntry40\r
+! FUNCTION: DdEntry41\r
+! FUNCTION: DdEntry42\r
+! FUNCTION: DdEntry43\r
+! FUNCTION: DdEntry44\r
+! FUNCTION: DdEntry45\r
+! FUNCTION: DdEntry46\r
+! FUNCTION: DdEntry47\r
+! FUNCTION: DdEntry48\r
+! FUNCTION: DdEntry49\r
+! FUNCTION: DdEntry5\r
+! FUNCTION: DdEntry50\r
+! FUNCTION: DdEntry51\r
+! FUNCTION: DdEntry52\r
+! FUNCTION: DdEntry53\r
+! FUNCTION: DdEntry54\r
+! FUNCTION: DdEntry55\r
+! FUNCTION: DdEntry56\r
+! FUNCTION: DdEntry6\r
+! FUNCTION: DdEntry7\r
+! FUNCTION: DdEntry8\r
+! FUNCTION: DdEntry9\r
+! FUNCTION: DeleteColorSpace\r
+! FUNCTION: DeleteDC\r
+! FUNCTION: DeleteEnhMetaFile\r
+! FUNCTION: DeleteMetaFile\r
+! FUNCTION: DeleteObject\r
+! FUNCTION: DescribePixelFormat\r
+! FUNCTION: DeviceCapabilitiesExA\r
+! FUNCTION: DeviceCapabilitiesExW\r
+! FUNCTION: DPtoLP\r
+! FUNCTION: DrawEscape\r
+! FUNCTION: Ellipse\r
+! FUNCTION: EnableEUDC\r
+! FUNCTION: EndDoc\r
+! FUNCTION: EndFormPage\r
+! FUNCTION: EndPage\r
+! FUNCTION: EndPath\r
+! FUNCTION: EngAcquireSemaphore\r
+! FUNCTION: EngAlphaBlend\r
+! FUNCTION: EngAssociateSurface\r
+! FUNCTION: EngBitBlt\r
+! FUNCTION: EngCheckAbort\r
+! FUNCTION: EngComputeGlyphSet\r
+! FUNCTION: EngCopyBits\r
+! FUNCTION: EngCreateBitmap\r
+! FUNCTION: EngCreateClip\r
+! FUNCTION: EngCreateDeviceBitmap\r
+! FUNCTION: EngCreateDeviceSurface\r
+! FUNCTION: EngCreatePalette\r
+! FUNCTION: EngCreateSemaphore\r
+! FUNCTION: EngDeleteClip\r
+! FUNCTION: EngDeletePalette\r
+! FUNCTION: EngDeletePath\r
+! FUNCTION: EngDeleteSemaphore\r
+! FUNCTION: EngDeleteSurface\r
+! FUNCTION: EngEraseSurface\r
+! FUNCTION: EngFillPath\r
+! FUNCTION: EngFindResource\r
+! FUNCTION: EngFreeModule\r
+! FUNCTION: EngGetCurrentCodePage\r
+! FUNCTION: EngGetDriverName\r
+! FUNCTION: EngGetPrinterDataFileName\r
+! FUNCTION: EngGradientFill\r
+! FUNCTION: EngLineTo\r
+! FUNCTION: EngLoadModule\r
+! FUNCTION: EngLockSurface\r
+! FUNCTION: EngMarkBandingSurface\r
+! FUNCTION: EngMultiByteToUnicodeN\r
+! FUNCTION: EngMultiByteToWideChar\r
+! FUNCTION: EngPaint\r
+! FUNCTION: EngPlgBlt\r
+! FUNCTION: EngQueryEMFInfo\r
+! FUNCTION: EngQueryLocalTime\r
+! FUNCTION: EngReleaseSemaphore\r
+! FUNCTION: EngStretchBlt\r
+! FUNCTION: EngStretchBltROP\r
+! FUNCTION: EngStrokeAndFillPath\r
+! FUNCTION: EngStrokePath\r
+! FUNCTION: EngTextOut\r
+! FUNCTION: EngTransparentBlt\r
+! FUNCTION: EngUnicodeToMultiByteN\r
+! FUNCTION: EngUnlockSurface\r
+! FUNCTION: EngWideCharToMultiByte\r
+! FUNCTION: EnumEnhMetaFile\r
+! FUNCTION: EnumFontFamiliesA\r
+! FUNCTION: EnumFontFamiliesExA\r
+! FUNCTION: EnumFontFamiliesExW\r
+! FUNCTION: EnumFontFamiliesW\r
+! FUNCTION: EnumFontsA\r
+! FUNCTION: EnumFontsW\r
+! FUNCTION: EnumICMProfilesA\r
+! FUNCTION: EnumICMProfilesW\r
+! FUNCTION: EnumMetaFile\r
+! FUNCTION: EnumObjects\r
+! FUNCTION: EqualRgn\r
+! FUNCTION: Escape\r
+! FUNCTION: EudcLoadLinkW\r
+! FUNCTION: EudcUnloadLinkW\r
+! FUNCTION: ExcludeClipRect\r
+! FUNCTION: ExtCreatePen\r
+! FUNCTION: ExtCreateRegion\r
+! FUNCTION: ExtEscape\r
+! FUNCTION: ExtFloodFill\r
+! FUNCTION: ExtSelectClipRgn\r
+! FUNCTION: ExtTextOutA\r
+! FUNCTION: ExtTextOutW\r
+! FUNCTION: FillPath\r
+! FUNCTION: FillRgn\r
+! FUNCTION: FixBrushOrgEx\r
+! FUNCTION: FlattenPath\r
+! FUNCTION: FloodFill\r
+! FUNCTION: FontIsLinked\r
+! FUNCTION: FONTOBJ_cGetAllGlyphHandles\r
+! FUNCTION: FONTOBJ_cGetGlyphs\r
+! FUNCTION: FONTOBJ_pfdg\r
+! FUNCTION: FONTOBJ_pifi\r
+! FUNCTION: FONTOBJ_pQueryGlyphAttrs\r
+! FUNCTION: FONTOBJ_pvTrueTypeFontFile\r
+! FUNCTION: FONTOBJ_pxoGetXform\r
+! FUNCTION: FONTOBJ_vGetInfo\r
+! FUNCTION: FrameRgn\r
+! FUNCTION: GdiAddFontResourceW\r
+! FUNCTION: GdiAddGlsBounds\r
+! FUNCTION: GdiAddGlsRecord\r
+! FUNCTION: GdiAlphaBlend\r
+! FUNCTION: GdiArtificialDecrementDriver\r
+! FUNCTION: GdiCleanCacheDC\r
+! FUNCTION: GdiComment\r
+! FUNCTION: GdiConsoleTextOut\r
+! FUNCTION: GdiConvertAndCheckDC\r
+! FUNCTION: GdiConvertBitmap\r
+! FUNCTION: GdiConvertBitmapV5\r
+! FUNCTION: GdiConvertBrush\r
+! FUNCTION: GdiConvertDC\r
+! FUNCTION: GdiConvertEnhMetaFile\r
+! FUNCTION: GdiConvertFont\r
+! FUNCTION: GdiConvertMetaFilePict\r
+! FUNCTION: GdiConvertPalette\r
+! FUNCTION: GdiConvertRegion\r
+! FUNCTION: GdiConvertToDevmodeW\r
+! FUNCTION: GdiCreateLocalEnhMetaFile\r
+! FUNCTION: GdiCreateLocalMetaFilePict\r
+! FUNCTION: GdiDeleteLocalDC\r
+! FUNCTION: GdiDeleteSpoolFileHandle\r
+! FUNCTION: GdiDescribePixelFormat\r
+! FUNCTION: GdiDllInitialize\r
+! FUNCTION: GdiDrawStream\r
+! FUNCTION: GdiEndDocEMF\r
+! FUNCTION: GdiEndPageEMF\r
+! FUNCTION: GdiEntry1\r
+! FUNCTION: GdiEntry10\r
+! FUNCTION: GdiEntry11\r
+! FUNCTION: GdiEntry12\r
+! FUNCTION: GdiEntry13\r
+! FUNCTION: GdiEntry14\r
+! FUNCTION: GdiEntry15\r
+! FUNCTION: GdiEntry16\r
+! FUNCTION: GdiEntry2\r
+! FUNCTION: GdiEntry3\r
+! FUNCTION: GdiEntry4\r
+! FUNCTION: GdiEntry5\r
+! FUNCTION: GdiEntry6\r
+! FUNCTION: GdiEntry7\r
+! FUNCTION: GdiEntry8\r
+! FUNCTION: GdiEntry9\r
+! FUNCTION: GdiFixUpHandle\r
+! FUNCTION: GdiFlush\r
+! FUNCTION: GdiFullscreenControl\r
+! FUNCTION: GdiGetBatchLimit\r
+! FUNCTION: GdiGetCharDimensions\r
+! FUNCTION: GdiGetCodePage\r
+! FUNCTION: GdiGetDC\r
+! FUNCTION: GdiGetDevmodeForPage\r
+! FUNCTION: GdiGetLocalBrush\r
+! FUNCTION: GdiGetLocalDC\r
+! FUNCTION: GdiGetLocalFont\r
+! FUNCTION: GdiGetPageCount\r
+! FUNCTION: GdiGetPageHandle\r
+! FUNCTION: GdiGetSpoolFileHandle\r
+! FUNCTION: GdiGetSpoolMessage\r
+! FUNCTION: GdiGradientFill\r
+! FUNCTION: GdiInitializeLanguagePack\r
+! FUNCTION: GdiInitSpool\r
+! FUNCTION: GdiIsMetaFileDC\r
+! FUNCTION: GdiIsMetaPrintDC\r
+! FUNCTION: GdiIsPlayMetafileDC\r
+! FUNCTION: GdiPlayDCScript\r
+! FUNCTION: GdiPlayEMF\r
+! FUNCTION: GdiPlayJournal\r
+! FUNCTION: GdiPlayPageEMF\r
+! FUNCTION: GdiPlayPrivatePageEMF\r
+! FUNCTION: GdiPlayScript\r
+! FUNCTION: gdiPlaySpoolStream\r
+! FUNCTION: GdiPrinterThunk\r
+! FUNCTION: GdiProcessSetup\r
+! FUNCTION: GdiQueryFonts\r
+! FUNCTION: GdiQueryTable\r
+! FUNCTION: GdiRealizationInfo\r
+! FUNCTION: GdiReleaseDC\r
+! FUNCTION: GdiReleaseLocalDC\r
+! FUNCTION: GdiResetDCEMF\r
+! FUNCTION: GdiSetAttrs\r
+! FUNCTION: GdiSetBatchLimit\r
+! FUNCTION: GdiSetLastError\r
+FUNCTION: BOOL GdiSetPixelFormat ( HDC hDC, int iPixelFormat, PFD* ppfd ) ;\r
+! FUNCTION: GdiSetServerAttr\r
+! FUNCTION: GdiStartDocEMF\r
+! FUNCTION: GdiStartPageEMF\r
+! FUNCTION: GdiSwapBuffers\r
+! FUNCTION: GdiTransparentBlt\r
+! FUNCTION: GdiValidateHandle\r
+! FUNCTION: GetArcDirection\r
+! FUNCTION: GetAspectRatioFilterEx\r
+! FUNCTION: GetBitmapAttributes\r
+! FUNCTION: GetBitmapBits\r
+! FUNCTION: GetBitmapDimensionEx\r
+! FUNCTION: GetBkColor\r
+! FUNCTION: GetBkMode\r
+! FUNCTION: GetBoundsRect\r
+! FUNCTION: GetBrushAttributes\r
+! FUNCTION: GetBrushOrgEx\r
+! FUNCTION: GetCharABCWidthsA\r
+! FUNCTION: GetCharABCWidthsFloatA\r
+! FUNCTION: GetCharABCWidthsFloatW\r
+! FUNCTION: GetCharABCWidthsI\r
+! FUNCTION: GetCharABCWidthsW\r
+! FUNCTION: GetCharacterPlacementA\r
+! FUNCTION: GetCharacterPlacementW\r
+! FUNCTION: GetCharWidth32A\r
+! FUNCTION: GetCharWidth32W\r
+! FUNCTION: GetCharWidthA\r
+! FUNCTION: GetCharWidthFloatA\r
+! FUNCTION: GetCharWidthFloatW\r
+! FUNCTION: GetCharWidthI\r
+! FUNCTION: GetCharWidthInfo\r
+! FUNCTION: GetCharWidthW\r
+! FUNCTION: GetClipBox\r
+! FUNCTION: GetClipRgn\r
+! FUNCTION: GetColorAdjustment\r
+! FUNCTION: GetColorSpace\r
+! FUNCTION: GetCurrentObject\r
+! FUNCTION: GetCurrentPositionEx\r
+! FUNCTION: GetDCBrushColor\r
+! FUNCTION: GetDCOrgEx\r
+! FUNCTION: GetDCPenColor\r
+! FUNCTION: GetDeviceCaps\r
+! FUNCTION: GetDeviceGammaRamp\r
+! FUNCTION: GetDIBColorTable\r
+! FUNCTION: GetDIBits\r
+! FUNCTION: GetEnhMetaFileA\r
+! FUNCTION: GetEnhMetaFileBits\r
+! FUNCTION: GetEnhMetaFileDescriptionA\r
+! FUNCTION: GetEnhMetaFileDescriptionW\r
+! FUNCTION: GetEnhMetaFileHeader\r
+! FUNCTION: GetEnhMetaFilePaletteEntries\r
+! FUNCTION: GetEnhMetaFilePixelFormat\r
+! FUNCTION: GetEnhMetaFileW\r
+! FUNCTION: GetETM\r
+! FUNCTION: GetEUDCTimeStamp\r
+! FUNCTION: GetEUDCTimeStampExW\r
+! FUNCTION: GetFontAssocStatus\r
+! FUNCTION: GetFontData\r
+! FUNCTION: GetFontLanguageInfo\r
+! FUNCTION: GetFontResourceInfoW\r
+! FUNCTION: GetFontUnicodeRanges\r
+! FUNCTION: GetGlyphIndicesA\r
+! FUNCTION: GetGlyphIndicesW\r
+! FUNCTION: GetGlyphOutline\r
+! FUNCTION: GetGlyphOutlineA\r
+! FUNCTION: GetGlyphOutlineW\r
+! FUNCTION: GetGlyphOutlineWow\r
+! FUNCTION: GetGraphicsMode\r
+! FUNCTION: GetHFONT\r
+! FUNCTION: GetICMProfileA\r
+! FUNCTION: GetICMProfileW\r
+! FUNCTION: GetKerningPairs\r
+! FUNCTION: GetKerningPairsA\r
+! FUNCTION: GetKerningPairsW\r
+! FUNCTION: GetLayout\r
+! FUNCTION: GetLogColorSpaceA\r
+! FUNCTION: GetLogColorSpaceW\r
+! FUNCTION: GetMapMode\r
+! FUNCTION: GetMetaFileA\r
+! FUNCTION: GetMetaFileBitsEx\r
+! FUNCTION: GetMetaFileW\r
+! FUNCTION: GetMetaRgn\r
+! FUNCTION: GetMiterLimit\r
+! FUNCTION: GetNearestColor\r
+! FUNCTION: GetNearestPaletteIndex\r
+! FUNCTION: GetObjectA\r
+! FUNCTION: GetObjectType\r
+! FUNCTION: GetObjectW\r
+! FUNCTION: GetOutlineTextMetricsA\r
+! FUNCTION: GetOutlineTextMetricsW\r
+! FUNCTION: GetPaletteEntries\r
+! FUNCTION: GetPath\r
+! FUNCTION: GetPixel\r
+! FUNCTION: GetPixelFormat\r
+! FUNCTION: GetPolyFillMode\r
+! FUNCTION: GetRandomRgn\r
+! FUNCTION: GetRasterizerCaps\r
+! FUNCTION: GetRegionData\r
+! FUNCTION: GetRelAbs\r
+! FUNCTION: GetRgnBox\r
+! FUNCTION: GetROP2\r
+FUNCTION: HGDIOBJ GetStockObject ( int fnObject ) ;\r
+! FUNCTION: GetStretchBltMode\r
+! FUNCTION: GetStringBitmapA\r
+! FUNCTION: GetStringBitmapW\r
+! FUNCTION: GetSystemPaletteEntries\r
+! FUNCTION: GetSystemPaletteUse\r
+! FUNCTION: GetTextAlign\r
+! FUNCTION: GetTextCharacterExtra\r
+! FUNCTION: GetTextCharset\r
+! FUNCTION: GetTextCharsetInfo\r
+! FUNCTION: GetTextColor\r
+! FUNCTION: GetTextExtentExPointA\r
+! FUNCTION: GetTextExtentExPointI\r
+! FUNCTION: GetTextExtentExPointW\r
+! FUNCTION: GetTextExtentExPointWPri\r
+! FUNCTION: GetTextExtentPoint32A\r
+! FUNCTION: GetTextExtentPoint32W\r
+! FUNCTION: GetTextExtentPointA\r
+! FUNCTION: GetTextExtentPointI\r
+! FUNCTION: GetTextExtentPointW\r
+! FUNCTION: GetTextFaceA\r
+! FUNCTION: GetTextFaceAliasW\r
+! FUNCTION: GetTextFaceW\r
+! FUNCTION: GetTextMetricsA\r
+! FUNCTION: GetTextMetricsW\r
+! FUNCTION: GetTransform\r
+! FUNCTION: GetViewportExtEx\r
+! FUNCTION: GetViewportOrgEx\r
+! FUNCTION: GetWindowExtEx\r
+! FUNCTION: GetWindowOrgEx\r
+! FUNCTION: GetWinMetaFileBits\r
+! FUNCTION: GetWorldTransform\r
+! FUNCTION: HT_Get8BPPFormatPalette\r
+! FUNCTION: HT_Get8BPPMaskPalette\r
+! FUNCTION: IntersectClipRect\r
+! FUNCTION: InvertRgn\r
+! FUNCTION: IsValidEnhMetaRecord\r
+! FUNCTION: IsValidEnhMetaRecordOffExt\r
+! FUNCTION: LineDDA\r
+! FUNCTION: LineTo\r
+! FUNCTION: LPtoDP\r
+! FUNCTION: MaskBlt\r
+! FUNCTION: MirrorRgn\r
+! FUNCTION: ModifyWorldTransform\r
+! FUNCTION: MoveToEx\r
+! FUNCTION: NamedEscape\r
+! FUNCTION: OffsetClipRgn\r
+! FUNCTION: OffsetRgn\r
+! FUNCTION: OffsetViewportOrgEx\r
+! FUNCTION: OffsetWindowOrgEx\r
+! FUNCTION: PaintRgn\r
+! FUNCTION: PatBlt\r
+! FUNCTION: PATHOBJ_bEnum\r
+! FUNCTION: PATHOBJ_bEnumClipLines\r
+! FUNCTION: PATHOBJ_vEnumStart\r
+! FUNCTION: PATHOBJ_vEnumStartClipLines\r
+! FUNCTION: PATHOBJ_vGetBounds\r
+! FUNCTION: PathToRegion\r
+! FUNCTION: Pie\r
+! FUNCTION: PlayEnhMetaFile\r
+! FUNCTION: PlayEnhMetaFileRecord\r
+! FUNCTION: PlayMetaFile\r
+! FUNCTION: PlayMetaFileRecord\r
+! FUNCTION: PlgBlt\r
+! FUNCTION: PolyBezier\r
+! FUNCTION: PolyBezierTo\r
+! FUNCTION: PolyDraw\r
+! FUNCTION: Polygon\r
+! FUNCTION: Polyline\r
+! FUNCTION: PolylineTo\r
+! FUNCTION: PolyPatBlt\r
+! FUNCTION: PolyPolygon\r
+! FUNCTION: PolyPolyline\r
+! FUNCTION: PolyTextOutA\r
+! FUNCTION: PolyTextOutW\r
+! FUNCTION: PtInRegion\r
+! FUNCTION: PtVisible\r
+! FUNCTION: QueryFontAssocStatus\r
+! FUNCTION: RealizePalette\r
+! FUNCTION: Rectangle\r
+! FUNCTION: RectInRegion\r
+! FUNCTION: RectVisible\r
+! FUNCTION: RemoveFontMemResourceEx\r
+! FUNCTION: RemoveFontResourceA\r
+! FUNCTION: RemoveFontResourceExA\r
+! FUNCTION: RemoveFontResourceExW\r
+! FUNCTION: RemoveFontResourceTracking\r
+! FUNCTION: RemoveFontResourceW\r
+! FUNCTION: ResetDCA\r
+! FUNCTION: ResetDCW\r
+! FUNCTION: ResizePalette\r
+! FUNCTION: RestoreDC\r
+! FUNCTION: RoundRect\r
+! FUNCTION: SaveDC\r
+! FUNCTION: ScaleViewportExtEx\r
+! FUNCTION: ScaleWindowExtEx\r
+! FUNCTION: SelectBrushLocal\r
+! FUNCTION: SelectClipPath\r
+! FUNCTION: SelectClipRgn\r
+! FUNCTION: SelectFontLocal\r
+! FUNCTION: SelectObject\r
+! FUNCTION: SelectPalette\r
+! FUNCTION: SetAbortProc\r
+! FUNCTION: SetArcDirection\r
+! FUNCTION: SetBitmapAttributes\r
+! FUNCTION: SetBitmapBits\r
+! FUNCTION: SetBitmapDimensionEx\r
+! FUNCTION: SetBkColor\r
+! FUNCTION: SetBkMode\r
+! FUNCTION: SetBoundsRect\r
+! FUNCTION: SetBrushAttributes\r
+! FUNCTION: SetBrushOrgEx\r
+! FUNCTION: SetColorAdjustment\r
+! FUNCTION: SetColorSpace\r
+! FUNCTION: SetDCBrushColor\r
+! FUNCTION: SetDCPenColor\r
+! FUNCTION: SetDeviceGammaRamp\r
+! FUNCTION: SetDIBColorTable\r
+! FUNCTION: SetDIBits\r
+! FUNCTION: SetDIBitsToDevice\r
+! FUNCTION: SetEnhMetaFileBits\r
+! FUNCTION: SetFontEnumeration\r
+! FUNCTION: SetGraphicsMode\r
+! FUNCTION: SetICMMode\r
+! FUNCTION: SetICMProfileA\r
+! FUNCTION: SetICMProfileW\r
+! FUNCTION: SetLayout\r
+! FUNCTION: SetLayoutWidth\r
+! FUNCTION: SetMagicColors\r
+! FUNCTION: SetMapMode\r
+! FUNCTION: SetMapperFlags\r
+! FUNCTION: SetMetaFileBitsEx\r
+! FUNCTION: SetMetaRgn\r
+! FUNCTION: SetMiterLimit\r
+! FUNCTION: SetPaletteEntries\r
+! FUNCTION: SetPixel\r
+! FUNCTION: SetPixelFormat\r
+! FUNCTION: SetPixelV\r
+! FUNCTION: SetPolyFillMode\r
+! FUNCTION: SetRectRgn\r
+! FUNCTION: SetRelAbs\r
+! FUNCTION: SetROP2\r
+! FUNCTION: SetStretchBltMode\r
+! FUNCTION: SetSystemPaletteUse\r
+! FUNCTION: SetTextAlign\r
+! FUNCTION: SetTextCharacterExtra\r
+! FUNCTION: SetTextColor\r
+! FUNCTION: SetTextJustification\r
+! FUNCTION: SetViewportExtEx\r
+! FUNCTION: SetViewportOrgEx\r
+! FUNCTION: SetVirtualResolution\r
+! FUNCTION: SetWindowExtEx\r
+! FUNCTION: SetWindowOrgEx\r
+! FUNCTION: SetWinMetaFileBits\r
+! FUNCTION: SetWorldTransform\r
+! FUNCTION: StartDocA\r
+! FUNCTION: StartDocW\r
+! FUNCTION: StartFormPage\r
+! FUNCTION: StartPage\r
+! FUNCTION: StretchBlt\r
+! FUNCTION: StretchDIBits\r
+! FUNCTION: STROBJ_bEnum\r
+! FUNCTION: STROBJ_bEnumPositionsOnly\r
+! FUNCTION: STROBJ_bGetAdvanceWidths\r
+! FUNCTION: STROBJ_dwGetCodePage\r
+! FUNCTION: STROBJ_vEnumStart\r
+! FUNCTION: StrokeAndFillPath\r
+! FUNCTION: StrokePath\r
+FUNCTION: BOOL SwapBuffers ( HDC hDC ) ;\r
+! FUNCTION: TextOutA\r
+! FUNCTION: TextOutW\r
+! FUNCTION: TranslateCharsetInfo\r
+! FUNCTION: UnloadNetworkFonts\r
+! FUNCTION: UnrealizeObject\r
+! FUNCTION: UpdateColors\r
+! FUNCTION: UpdateICMRegKeyA\r
+! FUNCTION: UpdateICMRegKeyW\r
+! FUNCTION: WidenPath\r
+! FUNCTION: XFORMOBJ_bApplyXform\r
+! FUNCTION: XFORMOBJ_iGetXform\r
+! FUNCTION: XLATEOBJ_cGetPalette\r
+! FUNCTION: XLATEOBJ_hGetColorTransform\r
+! FUNCTION: XLATEOBJ_iXlate\r
+! FUNCTION: XLATEOBJ_piVector\r
--- /dev/null
+! Copyright (C) 2005, 2006 Doug Coleman.
+! See http://factor.sf.net/license.txt for BSD license.
+USING: alien kernel errors ;
+IN: win32-api
+
+LIBRARY: kernel32
+
+
+! FUNCTION: DWORD FormatMessage(
+ ! DWORD dwFlags,
+ ! LPCVOID lpSource,
+ ! DWORD dwMessageId,
+ ! DWORD dwLanguageId,
+ ! LPTSTR lpBuffer,
+ ! DWORD nSize,
+ ! va_list* Arguments
+! ) ;
+
+
+! FUNCTION: HMODULE GetModuleHandleA ( LPCTSTR lpModulename ) ;
+! FUNCTION: HMODULE GetModuleHandleW ( LPCWSTR lpModulename ) ;
+
+FUNCTION: HMODULE GetModuleHandleA ( void* lpModulename ) ;
+FUNCTION: HMODULE GetModuleHandleW ( void* lpModulename ) ;
+
+: GetModuleHandle \ GetModuleHandleW \ GetModuleHandleA unicode-exec ;
+
+
+! FUNCTION: HMODULE GetModuleHandleEx (
+! DWORD dwFlags,
+! LPCTSTR lpModulename,
+! HMODULE* phModule ) ;
+
+
+
+FUNCTION: DWORD GetLastError ( ) ;
+
+: (win32-error) ( id -- string )
+ "char*" f "error_message" [ "int" ] alien-invoke ;
+
+: win32-error ( -- )
+ GetLastError dup 0 = [ (win32-error) throw ] unless drop ;
+
+: GHND HEX: 40 ; inline
+: GMEM_FIXED 0 ; inline
+: GMEM_MOVEABLE 2 ; inline
+: GMEM_ZEROINIT HEX: 40 ; inline
+: GPTR HEX: 40 ; inline
+
+FUNCTION: HGLOBAL GlobalAlloc ( UINT uFlags, SIZE_T dwBytes ) ;
+FUNCTION: LPVOID GlobalLock ( HGLOBAL hMem ) ;
+! FUNCTION: char* GlobalLock ( HGLOBAL hMem ) ;
+FUNCTION: BOOL GlobalUnlock ( HGLOBAL hMem ) ;
+
+FUNCTION: DWORD SleepEx ( DWORD dwMilliSeconds, BOOL bAlertable ) ;
+
+
--- /dev/null
+IN: scratchpad
+USING: alien compiler kernel namespaces parser sequences words ;
+
+{
+ { "gdi32" "gdi32.dll" "stdcall" }
+ { "user32" "user32.dll" "stdcall" }
+ { "kernel32" "kernel32.dll" "stdcall" }
+ { "winsock" "ws2_32.dll" "stdcall" }
+ { "mswsock" "mswsock.dll" "stdcall" }
+ { "libc" "msvcrt.dll" "cdecl" }
+} [ first3 add-library ] each
+
+{
+ "windows-messages"
+ "types"
+ "gdi32"
+ "kernel32-types"
+ "kernel32-constants"
+ "kernel32-structs"
+ "kernel32"
+ "user32-types"
+ "user32-constants"
+ "user32-structs"
+ "user32"
+ "opengl32"
+ "utils"
+} [ "/windows/" swap ".factor" append3 run-resource ] each
+
+IN: kernel
+: default-shell "tty" ;
--- /dev/null
+! Copyright (C) 2005, 2006 Doug Coleman.
+! See http://factor.sf.net/license.txt for BSD license.
+USING: alien parser namespaces kernel syntax words math io prettyprint ;
+IN: win32-api
+
+! PIXELFORMATDESCRIPTOR flags
+: PFD_DOUBLEBUFFER HEX: 00000001 ; inline
+: PFD_STEREO HEX: 00000002 ; inline
+: PFD_DRAW_TO_WINDOW HEX: 00000004 ; inline
+: PFD_DRAW_TO_BITMAP HEX: 00000008 ; inline
+: PFD_SUPPORT_GDI HEX: 00000010 ; inline
+: PFD_SUPPORT_OPENGL HEX: 00000020 ; inline
+: PFD_GENERIC_FORMAT HEX: 00000040 ; inline
+: PFD_NEED_PALETTE HEX: 00000080 ; inline
+: PFD_NEED_SYSTEM_PALETTE HEX: 00000100 ; inline
+: PFD_SWAP_EXCHANGE HEX: 00000200 ; inline
+: PFD_SWAP_COPY HEX: 00000400 ; inline
+: PFD_SWAP_LAYER_BUFFERS HEX: 00000800 ; inline
+: PFD_GENERIC_ACCELERATED HEX: 00001000 ; inline
+: PFD_SUPPORT_DIRECTDRAW HEX: 00002000 ; inline
+
+! PIXELFORMATDESCRIPTOR flags for use in ChoosePixelFormat only
+: PFD_DEPTH_DONTCARE HEX: 20000000 ; inline
+: PFD_DOUBLEBUFFER_DONTCARE HEX: 40000000 ; inline
+: PFD_STEREO_DONTCARE HEX: 80000000 ; inline
+
+! pixel types
+: PFD_TYPE_RGBA 0 ; inline
+: PFD_TYPE_COLORINDEX 1 ; inline
+
+! layer types
+: PFD_MAIN_PLANE 0 ; inline
+: PFD_OVERLAY_PLANE 1 ; inline
+: PFD_UNDERLAY_PLANE -1 ; inline
+
+: LPD_TYPE_RGBA 0 ; inline
+: LPD_TYPE_COLORINDEX 1 ; inline
+
+! wglSwapLayerBuffers flags
+: WGL_SWAP_MAIN_PLANE HEX: 00000001 ; inline
+: WGL_SWAP_OVERLAY1 HEX: 00000002 ; inline
+: WGL_SWAP_OVERLAY2 HEX: 00000004 ; inline
+: WGL_SWAP_OVERLAY3 HEX: 00000008 ; inline
+: WGL_SWAP_OVERLAY4 HEX: 00000010 ; inline
+: WGL_SWAP_OVERLAY5 HEX: 00000020 ; inline
+: WGL_SWAP_OVERLAY6 HEX: 00000040 ; inline
+: WGL_SWAP_OVERLAY7 HEX: 00000080 ; inline
+: WGL_SWAP_OVERLAY8 HEX: 00000100 ; inline
+: WGL_SWAP_OVERLAY9 HEX: 00000200 ; inline
+: WGL_SWAP_OVERLAY10 HEX: 00000400 ; inline
+: WGL_SWAP_OVERLAY11 HEX: 00000800 ; inline
+: WGL_SWAP_OVERLAY12 HEX: 00001000 ; inline
+: WGL_SWAP_OVERLAY13 HEX: 00002000 ; inline
+: WGL_SWAP_OVERLAY14 HEX: 00004000 ; inline
+: WGL_SWAP_OVERLAY15 HEX: 00008000 ; inline
+: WGL_SWAP_UNDERLAY1 HEX: 00010000 ; inline
+: WGL_SWAP_UNDERLAY2 HEX: 00020000 ; inline
+: WGL_SWAP_UNDERLAY3 HEX: 00040000 ; inline
+: WGL_SWAP_UNDERLAY4 HEX: 00080000 ; inline
+: WGL_SWAP_UNDERLAY5 HEX: 00100000 ; inline
+: WGL_SWAP_UNDERLAY6 HEX: 00200000 ; inline
+: WGL_SWAP_UNDERLAY7 HEX: 00400000 ; inline
+: WGL_SWAP_UNDERLAY8 HEX: 00800000 ; inline
+: WGL_SWAP_UNDERLAY9 HEX: 01000000 ; inline
+: WGL_SWAP_UNDERLAY10 HEX: 02000000 ; inline
+: WGL_SWAP_UNDERLAY11 HEX: 04000000 ; inline
+: WGL_SWAP_UNDERLAY12 HEX: 08000000 ; inline
+: WGL_SWAP_UNDERLAY13 HEX: 10000000 ; inline
+: WGL_SWAP_UNDERLAY14 HEX: 20000000 ; inline
+: WGL_SWAP_UNDERLAY15 HEX: 40000000 ; inline
+
+
+
+: pfd-dwFlags
+ PFD_DRAW_TO_WINDOW PFD_SUPPORT_OPENGL bitor PFD_DOUBLEBUFFER bitor ;
+
+! TODO: compare to http://www.nullterminator.net/opengl32.html
+: make-pfd ( bits -- pfd )
+ "PIXELFORMATDESCRIPTOR" <c-object>
+ "PIXELFORMATDESCRIPTOR" c-size over set-PIXELFORMATDESCRIPTOR-nSize
+ 1 over set-PIXELFORMATDESCRIPTOR-nVersion
+ pfd-dwFlags over set-PIXELFORMATDESCRIPTOR-dwFlags
+ PFD_TYPE_RGBA over set-PIXELFORMATDESCRIPTOR-iPixelType
+ [ set-PIXELFORMATDESCRIPTOR-cColorBits ] keep
+ 16 over set-PIXELFORMATDESCRIPTOR-cDepthBits
+ PFD_MAIN_PLANE over set-PIXELFORMATDESCRIPTOR-dwLayerMask ;
+
+
+LIBRARY: gl
+
+
+! FUNCTION: int ReleaseDC ( HWND hWnd, HDC hDC ) ;
+! FUNCTION: HDC ResetDC ( HDC hdc, DEVMODE* lpInitData ) ;
+! FUNCTION: BOOL RestoreDC ( HDC hdc, int nSavedDC ) ;
+! FUNCTION: int SaveDC( HDC hDC ) ;
+! FUNCTION: HGDIOBJ SelectObject ( HDC hDC, HGDIOBJ hgdiobj ) ;
+
+FUNCTION: HGLRC wglCreateContext ( HDC hDC ) ;
+FUNCTION: BOOL wglDeleteContext ( HGLRC hRC ) ;
+FUNCTION: BOOL wglMakeCurrent ( HDC hDC, HGLRC hglrc ) ;
+
+
--- /dev/null
+! Copyright (C) 2005, 2006 Doug Coleman.
+! See http://factor.sf.net/license.txt for BSD license.
+USING: alien namespaces kernel words ;
+IN: win32-api
+
+! http://msdn.microsoft.com/library/default.asp?url=/library/en-us/winprog/winprog/windows_data_types.asp
+
+SYMBOL: unicode f unicode set
+: unicode-exec ( unicode-func ascii-func -- func )
+ unicode get [
+ drop execute
+ ] [
+ nip execute
+ ] if ; inline
+
+: unicode? unicode get ; inline
+
+: win64? f ;
+
+! win64
+! char uchar short ushort int uint long ulong longlong ulonglong
+! 1 1 2 2 * * ?
+! win32
+! char uchar short ushort int uint long ulong longlong ulonglong
+! 1 1 2 2 * * 4 4 8 8
+
+
+TYPEDEF: char CHAR
+TYPEDEF: uchar UCHAR
+TYPEDEF: uchar BYTE
+
+TYPEDEF: short wchar_t
+TYPEDEF: wchar_t WCHAR
+
+TYPEDEF: short SHORT
+TYPEDEF: ushort USHORT
+
+TYPEDEF: ushort WORD
+TYPEDEF: ulong DWORD
+
+TYPEDEF: int INT
+TYPEDEF: uint UINT
+
+TYPEDEF: int BOOL
+
+TYPEDEF: int* PINT
+TYPEDEF: int* LPINT
+TYPEDEF: int HFILE
+
+TYPEDEF: long LONG
+TYPEDEF: long* LPLONG
+TYPEDEF: long LONG_PTR
+TYPEDEF: long* PLONG_PTR
+
+TYPEDEF: uint ULONG
+TYPEDEF: ulong ULONG_PTR
+TYPEDEF: ulong* PULONG_PTR
+
+TYPEDEF: void VOID
+TYPEDEF: void* PVOID
+TYPEDEF: void* LPVOID
+TYPEDEF: void* LPCVOID
+
+TYPEDEF: float FLOAT
+! The following is commented out for two reasons.
+! 1) all of the code in both branches will be run because TYPEDEF: is a
+! parsing word
+! 2) we are waiting on gcc to be ported to win64/msys
+! 3) the TYPEDEF:s are probably wrong.
+
+! win64? [
+ ! ! TODO: check these!
+ ! TYPEDEF: INT32 HALF_PTR
+ ! TYPEDEF: UINT32 UHALF_PTR
+ ! TYPEDEF: long INT_PTR
+ ! TYPEDEF: ulong UINT_PTR
+
+ ! TYPEDEF: longlong LONG_PTR ! 64bit
+ ! TYPEDEF: ulonglong ULONG_PTR ! 64bit
+
+ ! TYPEDEF: int INT32
+ ! TYPEDEF: uint UINT32
+ ! TYPEDEF: uint DWORD32
+ ! TYPEDEF: uint ULONG32
+ ! TYPEDEF: ulong ULONG64
+ ! TYPEDEF: int* POINTER_32
+ ! TYPEDEF: long* POINTER_64
+ ! TYPEDEF: longlong INT64
+ ! TYPEDEF: ulonglong UINT64
+ ! TYPEDEF: longlong LONGLONG ! 64bit
+ ! TYPEDEF: ulonglong ULONGLONG
+ ! TYPEDEF: longlong LONG64
+ ! TYPEDEF: ulonglong DWORD64
+ ! ] [
+! Correct for win32
+ TYPEDEF: short HALF_PTR
+ TYPEDEF: ushort UHALF_PTR
+ TYPEDEF: int INT_PTR
+ TYPEDEF: uint UINT_PTR
+
+ TYPEDEF: int LONG_PTR
+ TYPEDEF: ulong ULONG_PTR
+
+ TYPEDEF: int INT32
+ TYPEDEF: uint UINT32
+ TYPEDEF: uint DWORD32
+ TYPEDEF: ulong ULONG32
+ TYPEDEF: ulonglong ULONG64
+ TYPEDEF: long* POINTER_32
+ TYPEDEF: longlong* POINTER_64
+ TYPEDEF: longlong INT64
+ TYPEDEF: ulonglong UINT64
+ TYPEDEF: longlong LONGLONG
+ TYPEDEF: ulonglong ULONGLONG
+ TYPEDEF: longlong LONG64
+ TYPEDEF: ulonglong DWORD64
+! ] if
+
+! unicode? [
+ ! TYPEDEF: WCHAR TBYTE
+ ! TYPEDEF: WCHAR TCHAR
+ ! ] [
+ TYPEDEF: uchar TBYTE
+ TYPEDEF: char TCHAR
+! ] if
+
+! Below down is based on the above definitions
+! There should be no 32/64bit issues
+
+TYPEDEF: WORD ATOM
+TYPEDEF: BYTE BOOLEAN
+! TYPEDEF: __stdcall CALLBACK
+TYPEDEF: DWORD COLORREF
+TYPEDEF: ULONGLONG DWORDLONG
+TYPEDEF: ULONG_PTR DWORD_PTR
+TYPEDEF: PVOID HANDLE
+TYPEDEF: HANDLE HACCEL
+TYPEDEF: HANDLE HBITMAP
+TYPEDEF: HANDLE HBRUSH
+TYPEDEF: HANDLE HCOLORSPACE
+TYPEDEF: HANDLE HCONV
+TYPEDEF: HANDLE HCONVLIST
+TYPEDEF: HANDLE HICON
+TYPEDEF: HICON HCURSOR
+TYPEDEF: HANDLE HDC
+TYPEDEF: HANDLE HDDEDATA
+TYPEDEF: HANDLE HDESK
+TYPEDEF: HANDLE HDROP
+TYPEDEF: HANDLE HDWP
+TYPEDEF: HANDLE HENMETAFILE
+TYPEDEF: HANDLE HFONT
+TYPEDEF: HANDLE HGDIOBJ
+TYPEDEF: HANDLE HGLOBAL
+TYPEDEF: HANDLE HHOOK
+TYPEDEF: HANDLE HINSTANCE
+TYPEDEF: HANDLE HKEY
+TYPEDEF: HANDLE HKL
+TYPEDEF: HANDLE HLOCAL
+TYPEDEF: HANDLE HMENU
+TYPEDEF: HANDLE HMETAFILE
+TYPEDEF: HINSTANCE HMODULE
+TYPEDEF: HANDLE HMONITOR
+TYPEDEF: HANDLE HPALETTE
+TYPEDEF: HANDLE HPEN
+TYPEDEF: LONG HRESULT
+TYPEDEF: HANDLE HRGN
+TYPEDEF: HANDLE HRSRC
+TYPEDEF: HANDLE HSZ
+TYPEDEF: HANDLE WINSTA ! MS docs say typedef HANDLE WINSTA ;
+TYPEDEF: HANDLE HWINSTA ! typo??
+TYPEDEF: HANDLE HWND
+TYPEDEF: WORD LANGID
+TYPEDEF: DWORD LCID
+TYPEDEF: DWORD LCTYPE
+TYPEDEF: DWORD LGRPID
+TYPEDEF: LONG_PTR LPARAM
+TYPEDEF: BOOL* LPBOOL
+TYPEDEF: BYTE* LPBYTE
+TYPEDEF: DWORD* LPCOLORREF
+! TYPEDEF: CHAR* LPCSTR
+TYPEDEF: VOID* LPCSTR
+TYPEDEF: WCHAR* LPCWSTR
+TYPEDEF: WCHAR* LPWSTR
+unicode? [
+ TYPEDEF: LPCWSTR LPCTSTR
+ TYPEDEF: LPWSTR LPTSTR
+ TYPEDEF: LPCWSTR PCTSTR
+ TYPEDEF: LPWSTR PTSTR
+ ] [
+ TYPEDEF: LPCSTR LPCTSTR
+ TYPEDEF: LPSTR LPTSTR
+ TYPEDEF: LPCSTR PCTSTR
+ TYPEDEF: LPSTR PTSTR
+] if
+TYPEDEF: DWORD* LPDWORD
+TYPEDEF: HANDLE* LPHANDLE
+TYPEDEF: CHAR* LPSTR
+TYPEDEF: WORD* LPWORD
+TYPEDEF: WCHAR* LPWSTR
+TYPEDEF: LONG_PTR LRESULT
+TYPEDEF: BOOL* PBOOL
+TYPEDEF: BOOLEAN* PBOOLEAN
+TYPEDEF: BYTE* PBYTE
+TYPEDEF: CHAR* PCHAR
+TYPEDEF: CHAR* PCSTR
+TYPEDEF: WCHAR* PCWSTR
+TYPEDEF: DWORD* PDWORD
+TYPEDEF: DWORDLONG* PDWORDLONG
+TYPEDEF: DWORD_PTR* PDWORD_PTR
+TYPEDEF: DWORD32* PDWORD32
+TYPEDEF: DWORD64* PDWORD64
+TYPEDEF: FLOAT* PFLOAT
+TYPEDEF: HALF_PTR* PHALF_PTR
+TYPEDEF: HANDLE* PHANDLE
+TYPEDEF: HKEY* PHKEY
+TYPEDEF: INT_PTR* PINT_PTR
+TYPEDEF: INT32* PINT32
+TYPEDEF: INT64* PINT64
+TYPEDEF: PDWORD PLCID
+TYPEDEF: LONG* PLONG
+TYPEDEF: LONGLONG* PLONGLONG
+TYPEDEF: LONG_PTR* PLONG_PTR
+TYPEDEF: LONG32* PLONG32
+TYPEDEF: LONG64* PLONG64
+TYPEDEF: SHORT* PSHORT
+TYPEDEF: SIZE_T* PSIZE_T
+TYPEDEF: SSIZE_T* PSSIZE_T
+TYPEDEF: CHAR* PSTR
+TYPEDEF: TBYTE* PTBYTE
+TYPEDEF: TCHAR* PTCHAR
+TYPEDEF: UCHAR* PUCHAR
+TYPEDEF: UHALF_PTR* PUHALF_PTR
+TYPEDEF: UINT* PUINT
+TYPEDEF: UINT_PTR* PUINT_PTR
+TYPEDEF: UINT32* PUINT32
+TYPEDEF: UINT64* PUINT64
+TYPEDEF: ULONG* PULONG
+TYPEDEF: ULONGLONG* PULONGLONG
+TYPEDEF: ULONG_PTR* PULONG_PTR
+TYPEDEF: ULONG32* PULONG32
+TYPEDEF: ULONG64* PULONG64
+TYPEDEF: USHORT* PUSHORT
+TYPEDEF: WCHAR* PWCHAR
+TYPEDEF: WORD* PWORD
+TYPEDEF: WCHAR* PWSTR
+TYPEDEF: HANDLE SC_HANDLE
+TYPEDEF: LPVOID SC_LOCK
+TYPEDEF: HANDLE SERVICE_STATUS_HANDLE
+TYPEDEF: ULONG_PTR SIZE_T
+TYPEDEF: LONG_PTR SSIZE_T
+TYPEDEF: LONGLONG USN
+TYPEDEF: UINT_PTR WPARAM
+
+
+TYPEDEF: RECT* LPRECT
+TYPEDEF: void* PWNDCLASS
+TYPEDEF: void* PWNDCLASSEX
+
+TYPEDEF: void* WNDPROC
+TYPEDEF: void* MSGBOXPARAMSA
+TYPEDEF: void* MSGBOXPARAMSW
+
+! typedef LRESULT (CALLBACK* WNDPROC)(HWND, UINT, WPARAM, LPARAM);
+
+BEGIN-STRUCT: WNDCLASS
+ FIELD: UINT style
+ FIELD: WNDPROC lpfnWndProc
+ FIELD: int cbClsExtra
+ FIELD: int cbWndExtra
+ FIELD: HINSTANCE hInstance
+ FIELD: HICON hIcon
+ FIELD: HCURSOR hCursor
+ FIELD: HBRUSH hbrBackground
+ FIELD: LPCTSTR lpszMenuName
+ FIELD: LPCTSTR lpszClassName
+END-STRUCT
+
+BEGIN-STRUCT: WNDCLASSEX
+ FIELD: UINT cbSize
+ FIELD: UINT style
+ FIELD: WNDPROC lpfnWndProc
+ FIELD: int cbClsExtra
+ FIELD: int cbWndExtra
+ FIELD: HINSTANCE hInstance
+ FIELD: HICON hIcon
+ FIELD: HCURSOR hCursor
+ FIELD: HBRUSH hbrBackground
+ FIELD: LPCTSTR lpszMenuName
+ FIELD: LPCTSTR lpszClassName
+ FIELD: HICON hIconSm
+END-STRUCT
+
+BEGIN-STRUCT: RECT
+ FIELD: LONG left
+ FIELD: LONG top
+ FIELD: LONG right
+ FIELD: LONG bottom
+END-STRUCT
+
+BEGIN-STRUCT: PAINTSTRUCT
+ FIELD: HDC hdc
+ FIELD: BOOL fErase
+ FIELD: RECT rcPaint
+ FIELD: BOOL fRestore
+ FIELD: BOOL fIncUpdate
+ FIELD: BYTE rgbReserved[32]
+END-STRUCT
+
+TYPEDEF: PAINTSTRUCT* LPPAINTSTRUCT
+
+BEGIN-STRUCT: POINT
+ FIELD: LONG x
+ FIELD: LONG y
+END-STRUCT
+
+BEGIN-STRUCT: MSG
+ FIELD: HWND hWnd
+ FIELD: UINT message
+ FIELD: WPARAM wParam
+ FIELD: LPARAM lParam
+ FIELD: DWORD time
+ FIELD: POINT pt
+END-STRUCT
+TYPEDEF: MSG* LPMSG
+
+BEGIN-STRUCT: PIXELFORMATDESCRIPTOR
+ FIELD: WORD nSize
+ FIELD: WORD nVersion
+ FIELD: DWORD dwFlags
+ FIELD: BYTE iPixelType
+ FIELD: BYTE cColorBits
+ FIELD: BYTE cRedBits
+ FIELD: BYTE cRedShift
+ FIELD: BYTE cGreenBits
+ FIELD: BYTE cGreenShift
+ FIELD: BYTE cBlueBits
+ FIELD: BYTE cBlueShift
+ FIELD: BYTE cAlphaBits
+ FIELD: BYTE cAlphaShift
+ FIELD: BYTE cAccumBits
+ FIELD: BYTE cAccumRedBits
+ FIELD: BYTE cAccumGreenBits
+ FIELD: BYTE cAccumBlueBits
+ FIELD: BYTE cAccumAlphaBits
+ FIELD: BYTE cDepthBits
+ FIELD: BYTE cStencilBits
+ FIELD: BYTE cAuxBuffers
+ FIELD: BYTE iLayerType
+ FIELD: BYTE bReserved
+ FIELD: DWORD dwLayerMask
+ FIELD: DWORD dwVisibleMask
+ FIELD: DWORD dwDamageMask
+END-STRUCT
+
+BEGIN-STRUCT: RECT
+ FIELD: LONG left
+ FIELD: LONG top
+ FIELD: LONG right
+ FIELD: LONG bottom
+END-STRUCT
+
+TYPEDEF: RECT* PRECT
+TYPEDEF: RECT* LPRECT
+TYPEDEF: PIXELFORMATDESCRIPTOR PFD
+TYPEDEF: PFD* LPPFD
+TYPEDEF: HANDLE HGLRC
+TYPEDEF: HANDLE HRGN
--- /dev/null
+! Copyright (C) 2005, 2006 Doug Coleman.
+! See http://factor.sf.net/license.txt for BSD license.
+USING: alien parser namespaces kernel syntax words math io prettyprint ;
+IN: win32-api
+
+
+
+
+LIBRARY: user32
+FUNCTION: HKL ActivateKeyboardLayout ( HKL hkl, UINT Flags ) ;
+
+FUNCTION: BOOL AdjustWindowRect ( LPRECT lpRect, DWORD dwStyle, BOOL bMenu ) ;
+FUNCTION: BOOL AdjustWindowRectEx ( LPRECT lpRect, DWORD dwStyle, BOOL bMenu, DWORD dwExStyle ) ;
+! FUNCTION: AlignRects
+! FUNCTION: AllowForegroundActivation
+! FUNCTION: AllowSetForegroundWindow
+! FUNCTION: AnimateWindow
+
+
+
+FUNCTION: BOOL AnyPopup ( ) ;
+
+! FUNCTION: AppendMenuA
+! FUNCTION: AppendMenuW
+! FUNCTION: ArrangeIconicWindows
+! FUNCTION: AttachThreadInput
+! FUNCTION: BeginDeferWindowPos
+
+
+FUNCTION: HDC BeginPaint ( HWND hwnd, LPPAINTSTRUCT lpPaint ) ;
+
+! FUNCTION: BlockInput
+! FUNCTION: BringWindowToTop
+! FUNCTION: BroadcastSystemMessage
+! FUNCTION: BroadcastSystemMessageA
+! FUNCTION: BroadcastSystemMessageExA
+! FUNCTION: BroadcastSystemMessageExW
+! FUNCTION: BroadcastSystemMessageW
+! FUNCTION: BuildReasonArray
+! FUNCTION: CalcMenuBar
+! FUNCTION: CallMsgFilter
+! FUNCTION: CallMsgFilterA
+! FUNCTION: CallMsgFilterW
+! FUNCTION: CallNextHookEx
+! FUNCTION: CallWindowProcA
+! FUNCTION: CallWindowProcW
+! FUNCTION: CascadeChildWindows
+! FUNCTION: CascadeWindows
+! FUNCTION: ChangeClipboardChain
+! FUNCTION: ChangeDisplaySettingsA
+! FUNCTION: ChangeDisplaySettingsExA
+! FUNCTION: ChangeDisplaySettingsExW
+! FUNCTION: ChangeDisplaySettingsW
+! FUNCTION: ChangeMenuA
+! FUNCTION: ChangeMenuW
+! FUNCTION: CharLowerA
+! FUNCTION: CharLowerBuffA
+! FUNCTION: CharLowerBuffW
+! FUNCTION: CharLowerW
+! FUNCTION: CharNextA
+! FUNCTION: CharNextExA
+! FUNCTION: CharNextW
+! FUNCTION: CharPrevA
+! FUNCTION: CharPrevExA
+! FUNCTION: CharPrevW
+! FUNCTION: CharToOemA
+! FUNCTION: CharToOemBuffA
+! FUNCTION: CharToOemBuffW
+! FUNCTION: CharToOemW
+! FUNCTION: CharUpperA
+! FUNCTION: CharUpperBuffA
+! FUNCTION: CharUpperBuffW
+! FUNCTION: CharUpperW
+! FUNCTION: CheckDlgButton
+! FUNCTION: CheckMenuItem
+! FUNCTION: CheckMenuRadioItem
+! FUNCTION: CheckRadioButton
+! FUNCTION: ChildWindowFromPoint
+! FUNCTION: ChildWindowFromPointEx
+! FUNCTION: ClientThreadSetup
+! FUNCTION: ClientToScreen
+! FUNCTION: CliImmSetHotKey
+! FUNCTION: ClipCursor
+FUNCTION: BOOL CloseClipboard ( ) ;
+! FUNCTION: CloseDesktop
+! FUNCTION: CloseWindow
+! FUNCTION: CloseWindowStation
+! FUNCTION: CopyAcceleratorTableA
+! FUNCTION: CopyAcceleratorTableW
+! FUNCTION: CopyIcon
+! FUNCTION: CopyImage
+! FUNCTION: CopyRect
+! FUNCTION: CountClipboardFormats
+! FUNCTION: CreateAcceleratorTableA
+! FUNCTION: CreateAcceleratorTableW
+! FUNCTION: CreateCaret
+! FUNCTION: CreateCursor
+! FUNCTION: CreateDesktopA
+! FUNCTION: CreateDesktopW
+! FUNCTION: CreateDialogIndirectParamA
+! FUNCTION: CreateDialogIndirectParamAorW
+! FUNCTION: CreateDialogIndirectParamW
+! FUNCTION: CreateDialogParamA
+! FUNCTION: CreateDialogParamW
+! FUNCTION: CreateIcon
+! FUNCTION: CreateIconFromResource
+! FUNCTION: CreateIconFromResourceEx
+! FUNCTION: CreateIconIndirect
+! FUNCTION: CreateMDIWindowA
+! FUNCTION: CreateMDIWindowW
+! FUNCTION: CreateMenu
+! FUNCTION: CreatePopupMenu
+! FUNCTION: CreateSystemThreads
+
+FUNCTION: HWND CreateWindowExA (
+ DWORD dwExStyle,
+ LPCSTR lpClassName,
+ LPCSTR lpWindowName,
+ DWORD dwStyle,
+ uint X,
+ uint Y,
+ uint nWidth,
+ uint nHeight,
+ HWND hWndParent,
+ HMENU hMenu,
+ HINSTANCE hInstance,
+ LPVOID lpParam ) ;
+
+FUNCTION: HWND CreateWindowExW (
+ DWORD dwExStyle,
+ LPCWSTR lpClassName,
+ LPCWSTR lpWindowName,
+ DWORD dwStyle,
+ uint X,
+ uint Y,
+ uint nWidth,
+ uint nHeight,
+ HWND hWndParent,
+ HMENU hMenu,
+ HINSTANCE hInstance,
+ LPVOID lpParam ) ;
+
+: CreateWindowEx \ CreateWindowExW \ CreateWindowExA unicode-exec ;
+
+! 11 >r <r
+: CreateWindow >r >r >r >r >r >r >r >r >r >r >r 0 r> r> r> r> r> r> r> r> r> r> r> CreateWindowEx ;
+
+
+! FUNCTION: CreateWindowStationA
+! FUNCTION: CreateWindowStationW
+! FUNCTION: CsrBroadcastSystemMessageExW
+! FUNCTION: CtxInitUser32
+! FUNCTION: DdeAbandonTransaction
+! FUNCTION: DdeAccessData
+! FUNCTION: DdeAddData
+! FUNCTION: DdeClientTransaction
+! FUNCTION: DdeCmpStringHandles
+! FUNCTION: DdeConnect
+! FUNCTION: DdeConnectList
+! FUNCTION: DdeCreateDataHandle
+! FUNCTION: DdeCreateStringHandleA
+! FUNCTION: DdeCreateStringHandleW
+! FUNCTION: DdeDisconnect
+! FUNCTION: DdeDisconnectList
+! FUNCTION: DdeEnableCallback
+! FUNCTION: DdeFreeDataHandle
+! FUNCTION: DdeFreeStringHandle
+! FUNCTION: DdeGetData
+! FUNCTION: DdeGetLastError
+! FUNCTION: DdeGetQualityOfService
+! FUNCTION: DdeImpersonateClient
+! FUNCTION: DdeInitializeA
+! FUNCTION: DdeInitializeW
+! FUNCTION: DdeKeepStringHandle
+! FUNCTION: DdeNameService
+! FUNCTION: DdePostAdvise
+! FUNCTION: DdeQueryConvInfo
+! FUNCTION: DdeQueryNextServer
+! FUNCTION: DdeQueryStringA
+! FUNCTION: DdeQueryStringW
+! FUNCTION: DdeReconnect
+! FUNCTION: DdeSetQualityOfService
+! FUNCTION: DdeSetUserHandle
+! FUNCTION: DdeUnaccessData
+! FUNCTION: DdeUninitialize
+! FUNCTION: DefDlgProcA
+! FUNCTION: DefDlgProcW
+! FUNCTION: DeferWindowPos
+! FUNCTION: DefFrameProcA
+! FUNCTION: DefFrameProcW
+! FUNCTION: DefMDIChildProcA
+! FUNCTION: DefMDIChildProcW
+! FUNCTION: DefRawInputProc
+FUNCTION: LRESULT DefWindowProcA ( HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam ) ;
+FUNCTION: LRESULT DefWindowProcW ( HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam ) ;
+: DefWindowProc \ DefWindowProcW \ DefWindowProcA unicode-exec ;
+! FUNCTION: DeleteMenu
+! FUNCTION: DeregisterShellHookWindow
+! FUNCTION: DestroyAcceleratorTable
+! FUNCTION: DestroyCaret
+! FUNCTION: DestroyCursor
+! FUNCTION: DestroyIcon
+! FUNCTION: DestroyMenu
+! FUNCTION: DestroyReasons
+FUNCTION: BOOL DestroyWindow ( HWND hWnd ) ;
+! FUNCTION: DeviceEventWorker
+! FUNCTION: DialogBoxIndirectParamA
+! FUNCTION: DialogBoxIndirectParamAorW
+! FUNCTION: DialogBoxIndirectParamW
+! FUNCTION: DialogBoxParamA
+! FUNCTION: DialogBoxParamW
+! FUNCTION: DisableProcessWindowsGhosting
+
+FUNCTION: LONG DispatchMessageA ( MSG* lpMsg ) ;
+FUNCTION: LONG DispatchMessageW ( MSG* lpMsg ) ;
+: DispatchMessage \ DispatchMessageW \ DispatchMessageA unicode-exec ;
+
+! FUNCTION: DisplayExitWindowsWarnings
+! FUNCTION: DlgDirListA
+! FUNCTION: DlgDirListComboBoxA
+! FUNCTION: DlgDirListComboBoxW
+! FUNCTION: DlgDirListW
+! FUNCTION: DlgDirSelectComboBoxExA
+! FUNCTION: DlgDirSelectComboBoxExW
+! FUNCTION: DlgDirSelectExA
+! FUNCTION: DlgDirSelectExW
+! FUNCTION: DragDetect
+! FUNCTION: DragObject
+
+
+FUNCTION: BOOL DrawAnimatedRects ( HWND hWnd, int idAni, RECT* lprcFrom, RECT* lprcTo ) ;
+! FUNCTION: BOOL DrawCaption ( HWND hWnd, HDC hdc, LPRECT lprc, UINT uFlags ) ;
+
+! FUNCTION: DrawEdge
+! FUNCTION: DrawFocusRect
+! FUNCTION: DrawFrame
+! FUNCTION: DrawFrameControl
+! FUNCTION: DrawIcon
+! FUNCTION: DrawIconEx
+! FUNCTION: DrawMenuBar
+! FUNCTION: DrawMenuBarTemp
+! FUNCTION: DrawStateA
+! FUNCTION: DrawStateW
+! FUNCTION: DrawTextA
+! FUNCTION: DrawTextExA
+! FUNCTION: DrawTextExW
+! FUNCTION: DrawTextW
+! FUNCTION: EditWndProc
+FUNCTION: BOOL EmptyClipboard ( ) ;
+! FUNCTION: EnableMenuItem
+! FUNCTION: EnableScrollBar
+! FUNCTION: EnableWindow
+! FUNCTION: EndDeferWindowPos
+! FUNCTION: EndDialog
+! FUNCTION: EndMenu
+
+FUNCTION: BOOL EndPaint ( HWND hWnd, PAINTSTRUCT* lpPaint) ;
+
+! FUNCTION: EndTask
+! FUNCTION: EnterReaderModeHelper
+! FUNCTION: EnumChildWindows
+FUNCTION: UINT EnumClipboardFormats ( UINT format ) ;
+! FUNCTION: EnumDesktopsA
+! FUNCTION: EnumDesktopsW
+! FUNCTION: EnumDesktopWindows
+! FUNCTION: EnumDisplayDevicesA
+! FUNCTION: EnumDisplayDevicesW
+! FUNCTION: EnumDisplayMonitors
+! FUNCTION: EnumDisplaySettingsA
+! FUNCTION: EnumDisplaySettingsExA
+! FUNCTION: EnumDisplaySettingsExW
+! FUNCTION: EnumDisplaySettingsW
+! FUNCTION: EnumPropsA
+! FUNCTION: EnumPropsExA
+! FUNCTION: EnumPropsExW
+! FUNCTION: EnumPropsW
+! FUNCTION: EnumThreadWindows
+! FUNCTION: EnumWindows
+! FUNCTION: EnumWindowStationsA
+! FUNCTION: EnumWindowStationsW
+! FUNCTION: EqualRect
+! FUNCTION: ExcludeUpdateRgn
+! FUNCTION: ExitWindowsEx
+! FUNCTION: FillRect
+! FUNCTION: FindWindowA
+! FUNCTION: FindWindowExA
+! FUNCTION: FindWindowExW
+! FUNCTION: FindWindowW
+! FUNCTION: FlashWindow
+! FUNCTION: FlashWindowEx
+! FUNCTION: FrameRect
+! FUNCTION: FreeDDElParam
+! FUNCTION: GetActiveWindow
+! FUNCTION: GetAltTabInfo
+! FUNCTION: GetAltTabInfoA
+! FUNCTION: GetAltTabInfoW
+! FUNCTION: GetAncestor
+! FUNCTION: GetAppCompatFlags
+! FUNCTION: GetAppCompatFlags2
+! FUNCTION: GetAsyncKeyState
+FUNCTION: HWND GetCapture ( ) ;
+! FUNCTION: GetCaretBlinkTime
+! FUNCTION: GetCaretPos
+FUNCTION: BOOL GetClassInfoA ( HINSTANCE hInst, LPCTSTR lpszClass, LPWNDCLASS lpwcx ) ;
+FUNCTION: BOOL GetClassInfoW ( HINSTANCE hInst, LPCWSTR lpszClass, LPWNDCLASS lpwcx ) ;
+: GetClassInfo \ GetClassInfoW \ GetClassInfoA unicode-exec ;
+
+FUNCTION: BOOL GetClassInfoExA ( HINSTANCE hInst, LPCTSTR lpszClass, LPWNDCLASSEX lpwcx ) ;
+FUNCTION: BOOL GetClassInfoExW ( HINSTANCE hInst, LPCWSTR lpszClass, LPWNDCLASSEX lpwcx ) ;
+: GetClassInfoEx \ GetClassInfoExW \ GetClassInfoExA unicode-exec ;
+
+FUNCTION: ULONG_PTR GetClassLongA ( HWND hWnd, int nIndex ) ;
+FUNCTION: ULONG_PTR GetClassLongW ( HWND hWnd, int nIndex ) ;
+: GetClassLong \ GetClassLongW \ GetClassLongA unicode-exec ;
+: GetClassLongPtr \ GetClassLongW \ GetClassLongA unicode-exec ;
+
+
+! FUNCTION: GetClassNameA
+! FUNCTION: GetClassNameW
+! FUNCTION: GetClassWord
+! FUNCTION: BOOL GetClientRect ( HWND hWnd, LPRECT lpRect ) ;
+
+FUNCTION: HANDLE GetClipboardData ( UINT uFormat ) ;
+
+! FUNCTION: GetClipboardFormatNameA
+! FUNCTION: GetClipboardFormatNameW
+FUNCTION: HWND GetClipboardOwner ( ) ;
+FUNCTION: DWORD GetClipboardSequenceNumber ( ) ;
+! FUNCTION: GetClipboardViewer
+! FUNCTION: GetClipCursor
+! FUNCTION: GetComboBoxInfo
+! FUNCTION: GetCursor
+! FUNCTION: GetCursorFrameInfo
+! FUNCTION: GetCursorInfo
+! FUNCTION: GetCursorPos
+FUNCTION: HDC GetDC ( HWND hWnd ) ;
+FUNCTION: HDC GetDCEx ( HWND hWnd, HRGN hrgnClip, DWORD flags ) ;
+! FUNCTION: GetDesktopWindow
+! FUNCTION: GetDialogBaseUnits
+! FUNCTION: GetDlgCtrlID
+! FUNCTION: GetDlgItem
+! FUNCTION: GetDlgItemInt
+! FUNCTION: GetDlgItemTextA
+! FUNCTION: GetDlgItemTextW
+! FUNCTION: GetDoubleClickTime
+FUNCTION: HWND GetFocus ( ) ;
+! FUNCTION: GetForegroundWindow
+! FUNCTION: GetGuiResources
+! FUNCTION: GetGUIThreadInfo
+! FUNCTION: GetIconInfo
+! FUNCTION: GetInputDesktop
+! FUNCTION: GetInputState
+! FUNCTION: GetInternalWindowPos
+! FUNCTION: GetKBCodePage
+! FUNCTION: GetKeyboardLayout
+! FUNCTION: GetKeyboardLayoutList
+! FUNCTION: GetKeyboardLayoutNameA
+! FUNCTION: GetKeyboardLayoutNameW
+! FUNCTION: GetKeyboardState
+! FUNCTION: GetKeyboardType
+! FUNCTION: GetKeyNameTextA
+! FUNCTION: GetKeyNameTextW
+FUNCTION: SHORT GetKeyState ( int nVirtKey ) ;
+! FUNCTION: GetLastActivePopup
+! FUNCTION: GetLastInputInfo
+! FUNCTION: GetLayeredWindowAttributes
+! FUNCTION: GetListBoxInfo
+! FUNCTION: GetMenu
+! FUNCTION: GetMenuBarInfo
+! FUNCTION: GetMenuCheckMarkDimensions
+! FUNCTION: GetMenuContextHelpId
+! FUNCTION: GetMenuDefaultItem
+! FUNCTION: GetMenuInfo
+! FUNCTION: GetMenuItemCount
+! FUNCTION: GetMenuItemID
+! FUNCTION: GetMenuItemInfoA
+! FUNCTION: GetMenuItemInfoW
+! FUNCTION: GetMenuItemRect
+! FUNCTION: GetMenuState
+! FUNCTION: GetMenuStringA
+! FUNCTION: GetMenuStringW
+
+FUNCTION: BOOL GetMessageA ( LPMSG lpMsg, HWND hWnd, UINT wMsgFilterMin, UINT wMsgFilterMax ) ;
+FUNCTION: BOOL GetMessageW ( LPMSG lpMsg, HWND hWnd, UINT wMsgFilterMin, UINT wMsgFilterMax ) ;
+: GetMessage \ GetMessageW \ GetMessageA unicode-exec ;
+
+! FUNCTION: GetMessageExtraInfo
+! FUNCTION: GetMessagePos
+! FUNCTION: GetMessageTime
+! FUNCTION: GetMonitorInfoA
+! FUNCTION: GetMonitorInfoW
+! FUNCTION: GetMouseMovePointsEx
+! FUNCTION: GetNextDlgGroupItem
+! FUNCTION: GetNextDlgTabItem
+! FUNCTION: GetOpenClipboardWindow
+FUNCTION: HWND GetParent ( HWND hWnd ) ;
+FUNCTION: int GetPriorityClipboardFormat ( UINT* paFormatPriorityList, int cFormats ) ;
+! FUNCTION: GetProcessDefaultLayout
+! FUNCTION: GetProcessWindowStation
+! FUNCTION: GetProgmanWindow
+! FUNCTION: GetPropA
+! FUNCTION: GetPropW
+! FUNCTION: GetQueueStatus
+! FUNCTION: GetRawInputBuffer
+! FUNCTION: GetRawInputData
+! FUNCTION: GetRawInputDeviceInfoA
+! FUNCTION: GetRawInputDeviceInfoW
+! FUNCTION: GetRawInputDeviceList
+! FUNCTION: GetReasonTitleFromReasonCode
+! FUNCTION: GetRegisteredRawInputDevices
+! FUNCTION: GetScrollBarInfo
+! FUNCTION: GetScrollInfo
+! FUNCTION: GetScrollPos
+! FUNCTION: GetScrollRange
+! FUNCTION: GetShellWindow
+! FUNCTION: GetSubMenu
+! FUNCTION: GetSysColor
+FUNCTION: HBRUSH GetSysColorBrush ( int nIndex ) ;
+! FUNCTION: GetSystemMenu
+! FUNCTION: GetSystemMetrics
+! FUNCTION: GetTabbedTextExtentA
+! FUNCTION: GetTabbedTextExtentW
+! FUNCTION: GetTaskmanWindow
+! FUNCTION: GetThreadDesktop
+! FUNCTION: GetTitleBarInfo
+
+
+FUNCTION: HWND GetTopWindow ( HWND hWnd ) ;
+! FUNCTION: BOOL GetUpdateRect ( HWND hWnd, LPRECT lpRect, BOOL bErase ) ;
+FUNCTION: int GetUpdateRgn ( HWND hWnd, HRGN hRgn, BOOL bErase ) ;
+
+
+! FUNCTION: GetUserObjectInformationA
+! FUNCTION: GetUserObjectInformationW
+! FUNCTION: GetUserObjectSecurity
+FUNCTION: HWND GetWindow ( HWND hWnd, UINT uCmd ) ;
+! FUNCTION: GetWindowContextHelpId
+! FUNCTION: GetWindowDC
+! FUNCTION: GetWindowInfo
+! FUNCTION: GetWindowLongA
+! FUNCTION: GetWindowLongW
+! FUNCTION: GetWindowModuleFileName
+! FUNCTION: GetWindowModuleFileNameA
+! FUNCTION: GetWindowModuleFileNameW
+! FUNCTION: GetWindowPlacement
+! FUNCTION: BOOL GetWindowRect ( HWND hWnd, LPRECT lpRect ) ;
+! FUNCTION: GetWindowRgn
+! FUNCTION: GetWindowRgnBox
+! FUNCTION: GetWindowTextA
+! FUNCTION: GetWindowTextLengthA
+! FUNCTION: GetWindowTextLengthW
+! FUNCTION: GetWindowTextW
+! FUNCTION: GetWindowThreadProcessId
+! FUNCTION: GetWindowWord
+! FUNCTION: GetWinStationInfo
+! FUNCTION: GrayStringA
+! FUNCTION: GrayStringW
+! FUNCTION: HideCaret
+! FUNCTION: HiliteMenuItem
+! FUNCTION: ImpersonateDdeClientWindow
+! FUNCTION: IMPGetIMEA
+! FUNCTION: IMPGetIMEW
+! FUNCTION: IMPQueryIMEA
+! FUNCTION: IMPQueryIMEW
+! FUNCTION: IMPSetIMEA
+! FUNCTION: IMPSetIMEW
+! FUNCTION: InflateRect
+! FUNCTION: InitializeLpkHooks
+! FUNCTION: InitializeWin32EntryTable
+! FUNCTION: InSendMessage
+! FUNCTION: InSendMessageEx
+! FUNCTION: InsertMenuA
+! FUNCTION: InsertMenuItemA
+! FUNCTION: InsertMenuItemW
+! FUNCTION: InsertMenuW
+! FUNCTION: InternalGetWindowText
+! FUNCTION: IntersectRect
+! FUNCTION: InvalidateRect
+! FUNCTION: InvalidateRgn
+! FUNCTION: InvertRect
+! FUNCTION: IsCharAlphaA
+! FUNCTION: IsCharAlphaNumericA
+! FUNCTION: IsCharAlphaNumericW
+! FUNCTION: IsCharAlphaW
+! FUNCTION: IsCharLowerA
+! FUNCTION: IsCharLowerW
+! FUNCTION: IsCharUpperA
+! FUNCTION: IsCharUpperW
+FUNCTION: BOOL IsChild ( HWND hWndParent, HWND hWnd ) ;
+FUNCTION: BOOL IsClipboardFormatAvailable ( UINT format ) ;
+! FUNCTION: IsDialogMessage
+! FUNCTION: IsDialogMessageA
+! FUNCTION: IsDialogMessageW
+! FUNCTION: IsDlgButtonChecked
+FUNCTION: BOOL IsGUIThread ( BOOL bConvert ) ;
+FUNCTION: BOOL IsHungAppWindow ( HWND hWnd ) ;
+FUNCTION: BOOL IsIconic ( HWND hWnd ) ;
+FUNCTION: BOOL IsMenu ( HMENU hMenu ) ;
+! FUNCTION: BOOL IsRectEmpty
+! FUNCTION: BOOL IsServerSideWindow
+FUNCTION: BOOL IsWindow ( HWND hWnd ) ;
+! FUNCTION: BOOL IsWindowEnabled
+! FUNCTION: BOOL IsWindowInDestroy
+FUNCTION: BOOL IsWindowUnicode ( HWND hWnd ) ;
+FUNCTION: BOOL IsWindowVisible ( HWND hWnd ) ;
+! FUNCTION: BOOL IsWinEventHookInstalled
+FUNCTION: BOOL IsZoomed ( HWND hWnd ) ;
+! FUNCTION: keybd_event
+! FUNCTION: KillSystemTimer
+! FUNCTION: KillTimer
+! FUNCTION: LoadAcceleratorsA
+! FUNCTION: LoadAcceleratorsW
+! FUNCTION: LoadBitmapA
+! FUNCTION: LoadBitmapW
+! FUNCTION: LoadCursorFromFileA
+! FUNCTION: LoadCursorFromFileW
+
+
+! FUNCTION: HCURSOR LoadCursorA ( HINSTANCE hInstance, LPCTSTR lpCursorName ) ;
+! FUNCTION: HCURSOR LoadCursorW ( HINSTANCE hInstance, LPCWSTR lpCursorName ) ;
+FUNCTION: HCURSOR LoadCursorA ( HINSTANCE hInstance, ushort lpCursorName ) ;
+FUNCTION: HCURSOR LoadCursorW ( HINSTANCE hInstance, ushort lpCursorName ) ;
+: LoadCursor \ LoadCursorW \ LoadCursorA unicode-exec ;
+
+! FUNCTION: HICON LoadIconA ( HINSTANCE hInstance, LPCTSTR lpIconName ) ;
+! FUNCTION: HICON LoadIconW ( HINSTANCE hInstance, LPCWSTR lpIconName ) ;
+FUNCTION: HICON LoadIconA ( HINSTANCE hInstance, ushort lpIconName ) ;
+FUNCTION: HICON LoadIconW ( HINSTANCE hInstance, ushort lpIconName ) ;
+: LoadIcon \ LoadIconW \ LoadIconA unicode-exec ;
+
+! FUNCTION: LoadImageA
+! FUNCTION: LoadImageW
+! FUNCTION: LoadKeyboardLayoutA
+! FUNCTION: LoadKeyboardLayoutEx
+! FUNCTION: LoadKeyboardLayoutW
+! FUNCTION: LoadLocalFonts
+! FUNCTION: LoadMenuA
+! FUNCTION: LoadMenuIndirectA
+! FUNCTION: LoadMenuIndirectW
+! FUNCTION: LoadMenuW
+! FUNCTION: LoadRemoteFonts
+! FUNCTION: LoadStringA
+! FUNCTION: LoadStringW
+! FUNCTION: LockSetForegroundWindow
+! FUNCTION: LockWindowStation
+! FUNCTION: LockWindowUpdate
+! FUNCTION: LockWorkStation
+! FUNCTION: LookupIconIdFromDirectory
+! FUNCTION: LookupIconIdFromDirectoryEx
+! FUNCTION: MapDialogRect
+! FUNCTION: MapVirtualKeyA
+! FUNCTION: MapVirtualKeyExA
+! FUNCTION: MapVirtualKeyExW
+! FUNCTION: MapVirtualKeyW
+! FUNCTION: MapWindowPoints
+! FUNCTION: MB_GetString
+! FUNCTION: MBToWCSEx
+! FUNCTION: MenuItemFromPoint
+! FUNCTION: MenuWindowProcA
+! FUNCTION: MenuWindowProcW
+
+! -1 is Simple beep
+FUNCTION: BOOL MessageBeep ( UINT uType ) ;
+
+FUNCTION: int MessageBoxA (
+ HWND hWnd,
+ LPCSTR lpText,
+ LPCSTR lpCaption,
+ UINT uType ) ;
+
+FUNCTION: int MessageBoxW (
+ HWND hWnd,
+ LPCWSTR lpText,
+ LPCWSTR lpCaption,
+ UINT uType) ;
+
+FUNCTION: int MessageBoxExA ( HWND hWnd,
+ LPCSTR lpText,
+ LPCSTR lpCaption,
+ UINT uType,
+ WORD wLanguageId
+ ) ;
+
+FUNCTION: int MessageBoxExW (
+ HWND hWnd,
+ LPCWSTR lpText,
+ LPCWSTR lpCaption,
+ UINT uType,
+ WORD wLanguageId ) ;
+
+FUNCTION: int MessageBoxIndirectA (
+ MSGBOXPARAMSA* params ) ;
+
+FUNCTION: int MessageBoxIndirectW (
+ MSGBOXPARAMSW* params ) ;
+
+
+: MessageBox ( -- )
+ \ MessageBoxW \ MessageBoxA unicode-exec ;
+
+: MessageBoxEx ( -- )
+ \ MessageBoxExW \ MessageBoxExA unicode-exec ;
+
+: MessageBoxIndirect ( -- )
+ \ MessageBoxIndirectW \ MessageBoxIndirectA unicode-exec ;
+
+! FUNCTION: MessageBoxTimeoutA ! dllexported, not in header
+! FUNCTION: MessageBoxTimeoutW ! dllexported, not in header
+
+! FUNCTION: ModifyMenuA
+! FUNCTION: ModifyMenuW
+! FUNCTION: MonitorFromPoint
+! FUNCTION: MonitorFromRect
+! FUNCTION: MonitorFromWindow
+! FUNCTION: mouse_event
+
+
+
+FUNCTION: BOOL MoveWindow (
+ HWND hWnd,
+ int X,
+ int Y,
+ int nWidth,
+ int nHeight,
+ BOOL bRepaint ) ;
+
+
+! FUNCTION: MsgWaitForMultipleObjects
+! FUNCTION: MsgWaitForMultipleObjectsEx
+! FUNCTION: NotifyWinEvent
+! FUNCTION: OemKeyScan
+! FUNCTION: OemToCharA
+! FUNCTION: OemToCharBuffA
+! FUNCTION: OemToCharBuffW
+! FUNCTION: OemToCharW
+! FUNCTION: OffsetRect
+FUNCTION: BOOL OpenClipboard ( HWND hWndNewOwner ) ;
+! FUNCTION: OpenDesktopA
+! FUNCTION: OpenDesktopW
+! FUNCTION: OpenIcon
+! FUNCTION: OpenInputDesktop
+! FUNCTION: OpenWindowStationA
+! FUNCTION: OpenWindowStationW
+! FUNCTION: PackDDElParam
+! FUNCTION: PaintDesktop
+! FUNCTION: PaintMenuBar
+FUNCTION: BOOL PeekMessageA ( LPMSG lpMsg, HWND hWnd, UINT wMsgFilterMin, UINT wMsgFilterMax, UINT wRemoveMsg ) ;
+FUNCTION: BOOL PeekMessageW ( LPMSG lpMsg, HWND hWnd, UINT wMsgFilterMin, UINT wMsgFilterMax, UINT wRemoveMsg ) ;
+: PeekMessage \ PeekMessageW \ PeekMessageA unicode-exec ;
+
+! FUNCTION: PostMessageA
+! FUNCTION: PostMessageW
+FUNCTION: void PostQuitMessage ( int nExitCode ) ;
+! FUNCTION: PostThreadMessageA
+! FUNCTION: PostThreadMessageW
+! FUNCTION: PrintWindow
+! FUNCTION: PrivateExtractIconExA
+! FUNCTION: PrivateExtractIconExW
+! FUNCTION: PrivateExtractIconsA
+! FUNCTION: PrivateExtractIconsW
+! FUNCTION: PrivateSetDbgTag
+! FUNCTION: PrivateSetRipFlags
+! FUNCTION: PtInRect
+! FUNCTION: QuerySendMessage
+! FUNCTION: QueryUserCounters
+! FUNCTION: RealChildWindowFromPoint
+! FUNCTION: RealGetWindowClass
+! FUNCTION: RealGetWindowClassA
+! FUNCTION: RealGetWindowClassW
+! FUNCTION: ReasonCodeNeedsBugID
+! FUNCTION: ReasonCodeNeedsComment
+! FUNCTION: RecordShutdownReason
+! FUNCTION: RedrawWindow
+
+FUNCTION: ATOM RegisterClassA ( WNDCLASS* lpWndClass) ;
+FUNCTION: ATOM RegisterClassW ( WNDCLASS* lpWndClass ) ;
+FUNCTION: ATOM RegisterClassExA ( WNDCLASSEX* lpwcx ) ;
+FUNCTION: ATOM RegisterClassExW ( WNDCLASSEX* lpwcx ) ;
+
+: RegisterClass \ RegisterClassW \ RegisterClassA unicode-exec ;
+: RegisterClassEx \ RegisterClassExW \ RegisterClassExA unicode-exec ;
+
+! FUNCTION: RegisterClipboardFormatA
+! FUNCTION: RegisterClipboardFormatW
+! FUNCTION: RegisterDeviceNotificationA
+! FUNCTION: RegisterDeviceNotificationW
+! FUNCTION: RegisterHotKey
+! FUNCTION: RegisterLogonProcess
+! FUNCTION: RegisterMessagePumpHook
+! FUNCTION: RegisterRawInputDevices
+! FUNCTION: RegisterServicesProcess
+! FUNCTION: RegisterShellHookWindow
+! FUNCTION: RegisterSystemThread
+! FUNCTION: RegisterTasklist
+! FUNCTION: RegisterUserApiHook
+! FUNCTION: RegisterWindowMessageA
+! FUNCTION: RegisterWindowMessageW
+FUNCTION: BOOL ReleaseCapture ( ) ;
+FUNCTION: int ReleaseDC ( HWND hWnd, HDC hDC ) ;
+! FUNCTION: RemoveMenu
+! FUNCTION: RemovePropA
+! FUNCTION: RemovePropW
+! FUNCTION: ReplyMessage
+! FUNCTION: ResolveDesktopForWOW
+! FUNCTION: ReuseDDElParam
+! FUNCTION: ScreenToClient
+! FUNCTION: ScrollChildren
+! FUNCTION: ScrollDC
+! FUNCTION: ScrollWindow
+! FUNCTION: ScrollWindowEx
+! FUNCTION: SendDlgItemMessageA
+! FUNCTION: SendDlgItemMessageW
+! FUNCTION: SendIMEMessageExA
+! FUNCTION: SendIMEMessageExW
+! FUNCTION: UINT SendInput ( UINT nInputs, LPINPUT pInputs, int cbSize ) ;
+FUNCTION: LRESULT SendMessageA ( HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam ) ;
+FUNCTION: LRESULT SendMessageW ( HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam ) ;
+: SendMessage \ SendMessageW \ SendMessageA unicode-exec ;
+! FUNCTION: SendMessageCallbackA
+! FUNCTION: SendMessageCallbackW
+! FUNCTION: SendMessageTimeoutA
+! FUNCTION: SendMessageTimeoutW
+! FUNCTION: SendNotifyMessageA
+! FUNCTION: SendNotifyMessageW
+! FUNCTION: SetActiveWindow
+FUNCTION: HWND SetCapture ( HWND hWnd ) ;
+! FUNCTION: SetCaretBlinkTime
+! FUNCTION: SetCaretPos
+
+FUNCTION: ULONG_PTR SetClassLongW ( HWND hWnd, int nIndex, LONG_PTR dwNewLong ) ;
+FUNCTION: ULONG_PTR SetClassLongA ( HWND hWnd, int nIndex, LONG_PTR dwNewLong ) ;
+: SetClassLongPtr \ SetClassLongW \ SetClassLongA unicode-exec ;
+: SetClassLong \ SetClassLongW \ SetClassLongA unicode-exec ;
+
+! FUNCTION: SetClassWord
+FUNCTION: HANDLE SetClipboardData ( UINT uFormat, HANDLE hMem ) ;
+! FUNCTION: SetClipboardViewer
+! FUNCTION: SetConsoleReserveKeys
+! FUNCTION: SetCursor
+! FUNCTION: SetCursorContents
+! FUNCTION: SetCursorPos
+! FUNCTION: SetDebugErrorLevel
+! FUNCTION: SetDeskWallpaper
+! FUNCTION: SetDlgItemInt
+! FUNCTION: SetDlgItemTextA
+! FUNCTION: SetDlgItemTextW
+! FUNCTION: SetDoubleClickTime
+FUNCTION: HWND SetFocus ( HWND hWnd ) ;
+FUNCTION: BOOL SetForegroundWindow ( HWND hWnd ) ;
+! FUNCTION: SetInternalWindowPos
+! FUNCTION: SetKeyboardState
+! type is ignored
+FUNCTION: void SetLastErrorEx ( DWORD dwErrCode, DWORD dwType ) ;
+: SetLastError 0 SetLastErrorEx ;
+! FUNCTION: SetLayeredWindowAttributes
+! FUNCTION: SetLogonNotifyWindow
+! FUNCTION: SetMenu
+! FUNCTION: SetMenuContextHelpId
+! FUNCTION: SetMenuDefaultItem
+! FUNCTION: SetMenuInfo
+! FUNCTION: SetMenuItemBitmaps
+! FUNCTION: SetMenuItemInfoA
+! FUNCTION: SetMenuItemInfoW
+! FUNCTION: SetMessageExtraInfo
+! FUNCTION: SetMessageQueue
+! FUNCTION: SetParent
+! FUNCTION: SetProcessDefaultLayout
+! FUNCTION: SetProcessWindowStation
+! FUNCTION: SetProgmanWindow
+! FUNCTION: SetPropA
+! FUNCTION: SetPropW
+! FUNCTION: SetRect
+! FUNCTION: SetRectEmpty
+! FUNCTION: SetScrollInfo
+! FUNCTION: SetScrollPos
+! FUNCTION: SetScrollRange
+! FUNCTION: SetShellWindow
+! FUNCTION: SetShellWindowEx
+! FUNCTION: SetSysColors
+! FUNCTION: SetSysColorsTemp
+! FUNCTION: SetSystemCursor
+! FUNCTION: SetSystemMenu
+! FUNCTION: SetSystemTimer
+! FUNCTION: SetTaskmanWindow
+! FUNCTION: SetThreadDesktop
+! FUNCTION: SetTimer
+! FUNCTION: SetUserObjectInformationA
+! FUNCTION: SetUserObjectInformationW
+! FUNCTION: SetUserObjectSecurity
+! FUNCTION: SetWindowContextHelpId
+! FUNCTION: SetWindowLongA
+! FUNCTION: SetWindowLongW
+! FUNCTION: SetWindowPlacement
+! FUNCTION: SetWindowPos
+! FUNCTION: SetWindowRgn
+! FUNCTION: SetWindowsHookA
+! FUNCTION: SetWindowsHookExA
+! FUNCTION: SetWindowsHookExW
+! FUNCTION: SetWindowsHookW
+! FUNCTION: SetWindowStationUser
+! FUNCTION: SetWindowTextA
+! FUNCTION: SetWindowTextW
+! FUNCTION: SetWindowWord
+! FUNCTION: SetWinEventHook
+! FUNCTION: ShowCaret
+! FUNCTION: ShowCursor
+! FUNCTION: ShowOwnedPopups
+! FUNCTION: ShowScrollBar
+! FUNCTION: ShowStartGlass
+
+FUNCTION: BOOL ShowWindow ( HWND hWnd, int nCmdShow ) ;
+
+! FUNCTION: ShowWindowAsync
+! FUNCTION: SoftModalMessageBox
+! FUNCTION: SubtractRect
+! FUNCTION: SwapMouseButton
+! FUNCTION: SwitchDesktop
+! FUNCTION: SwitchToThisWindow
+! FUNCTION: SystemParametersInfoA
+! FUNCTION: SystemParametersInfoW
+! FUNCTION: TabbedTextOutA
+! FUNCTION: TabbedTextOutW
+! FUNCTION: TileChildWindows
+! FUNCTION: TileWindows
+! FUNCTION: ToAscii
+! FUNCTION: ToAsciiEx
+! FUNCTION: ToUnicode
+! FUNCTION: ToUnicodeEx
+! FUNCTION: TrackMouseEvent
+! FUNCTION: TrackPopupMenu
+! FUNCTION: TrackPopupMenuEx
+! FUNCTION: TranslateAccelerator
+! FUNCTION: TranslateAcceleratorA
+! FUNCTION: TranslateAcceleratorW
+! FUNCTION: TranslateMDISysAccel
+FUNCTION: BOOL TranslateMessage ( MSG* lpMsg ) ;
+
+! FUNCTION: UnhookWindowsHook
+! FUNCTION: UnhookWindowsHookEx
+! FUNCTION: UnhookWinEvent
+! FUNCTION: UnionRect
+! FUNCTION: UnloadKeyboardLayout
+! FUNCTION: UnlockWindowStation
+! FUNCTION: UnpackDDElParam
+FUNCTION: BOOL UnregisterClassA ( LPCTSTR lpClassName, HINSTANCE hInstance ) ;
+FUNCTION: BOOL UnregisterClassW ( LPCWSTR lpClassName, HINSTANCE hInstance ) ;
+: UnregisterClass \ UnregisterClassW \ UnregisterClassA unicode-exec ;
+! FUNCTION: UnregisterDeviceNotification
+! FUNCTION: UnregisterHotKey
+! FUNCTION: UnregisterMessagePumpHook
+! FUNCTION: UnregisterUserApiHook
+! FUNCTION: UpdateLayeredWindow
+! FUNCTION: UpdatePerUserSystemParameters
+
+
+FUNCTION: BOOL UpdateWindow ( HWND hWnd ) ;
+
+! FUNCTION: User32InitializeImmEntryTable
+! FUNCTION: UserClientDllInitialize
+! FUNCTION: UserHandleGrantAccess
+! FUNCTION: UserLpkPSMTextOut
+! FUNCTION: UserLpkTabbedTextOut
+! FUNCTION: UserRealizePalette
+! FUNCTION: UserRegisterWowHandlers
+! FUNCTION: ValidateRect
+! FUNCTION: ValidateRgn
+! FUNCTION: VkKeyScanA
+! FUNCTION: VkKeyScanExA
+! FUNCTION: VkKeyScanExW
+! FUNCTION: VkKeyScanW
+! FUNCTION: VRipOutput
+! FUNCTION: VTagOutput
+! FUNCTION: WaitForInputIdle
+! FUNCTION: WaitMessage
+! FUNCTION: WCSToMBEx
+! FUNCTION: Win32PoolAllocationStats
+! FUNCTION: WindowFromDC
+! FUNCTION: WindowFromPoint
+! FUNCTION: WinHelpA
+! FUNCTION: WinHelpW
+! FUNCTION: WINNLSEnableIME
+! FUNCTION: WINNLSGetEnableStatus
+! FUNCTION: WINNLSGetIMEHotkey
+! FUNCTION: wsprintfA
+! FUNCTION: wsprintfW
+! FUNCTION: wvsprintfA
+! FUNCTION: wvsprintfW
+
--- /dev/null
+! Copyright (C) 2005, 2006 Doug Coleman.
+! See http://factor.sf.net/license.txt for BSD license.
+USING: alien parser namespaces kernel syntax words math io prettyprint ;
+IN: win32-api
+
+: win32-error=0 zero? [ win32-error ] when ;
+: win32-error>0 0 > [ win32-error ] when ;
+: win32-error<0 0 < [ win32-error ] when ;
+: win32-error<>0 zero? [ win32-error ] unless ;
+
+: lo-word ( wparam -- lo ) HEX: ffff bitand ;
+: hi-word ( wparam -- hi ) -16 shift ;
+
+: msgbox ( str -- )
+ f swap "DebugMsg" MB_OK MessageBox drop ;
+
--- /dev/null
+! Copyright (C) 2005, 2006 Doug Coleman.
+! See http://factor.sf.net/license.txt for BSD license.
+USING: hashtables kernel math namespaces parser prettyprint words ;
+IN: win32-api-messages
+
+SYMBOL: windows-messages
+H{ } clone windows-messaage set-global
+
+USE: inspector
+
+: add-windows-message ( -- )
+ word [ unparse ] keep execute windows-messages get set-hash ; parsing
+
+: get-windows-message-name ( n -- name )
+ windows-messages get hash* [ drop "unknown message" ] unless ;
+
+: WM_NULL HEX: 0000 ; inline add-windows-message
+: WM_CREATE HEX: 0001 ; inline add-windows-message
+: WM_DESTROY HEX: 0002 ; inline add-windows-message
+: WM_MOVE HEX: 0003 ; inline add-windows-message
+: WM_SIZE HEX: 0005 ; inline add-windows-message
+: WM_ACTIVATE HEX: 0006 ; inline add-windows-message
+: WM_SETFOCUS HEX: 0007 ; inline add-windows-message
+: WM_KILLFOCUS HEX: 0008 ; inline add-windows-message
+: WM_ENABLE HEX: 000A ; inline add-windows-message
+: WM_SETREDRAW HEX: 000B ; inline add-windows-message
+: WM_SETTEXT HEX: 000C ; inline add-windows-message
+: WM_GETTEXT HEX: 000D ; inline add-windows-message
+: WM_GETTEXTLENGTH HEX: 000E ; inline add-windows-message
+: WM_PAINT HEX: 000F ; inline add-windows-message
+: WM_CLOSE HEX: 0010 ; inline add-windows-message
+: WM_QUERYENDSESSION HEX: 0011 ; inline add-windows-message
+: WM_QUERYOPEN HEX: 0013 ; inline add-windows-message
+: WM_ENDSESSION HEX: 0016 ; inline add-windows-message
+: WM_QUIT HEX: 0012 ; inline add-windows-message
+: WM_ERASEBKGND HEX: 0014 ; inline add-windows-message
+: WM_SYSCOLORCHANGE HEX: 0015 ; inline add-windows-message
+: WM_SHOWWINDOW HEX: 0018 ; inline add-windows-message
+: WM_WININICHANGE HEX: 001A ; inline add-windows-message
+: WM_SETTINGCHANGE HEX: 001A ; inline add-windows-message
+: WM_DEVMODECHANGE HEX: 001B ; inline add-windows-message
+: WM_ACTIVATEAPP HEX: 001C ; inline add-windows-message
+: WM_FONTCHANGE HEX: 001D ; inline add-windows-message
+: WM_TIMECHANGE HEX: 001E ; inline add-windows-message
+: WM_CANCELMODE HEX: 001F ; inline add-windows-message
+: WM_SETCURSOR HEX: 0020 ; inline add-windows-message
+: WM_MOUSEACTIVATE HEX: 0021 ; inline add-windows-message
+: WM_CHILDACTIVATE HEX: 0022 ; inline add-windows-message
+: WM_QUEUESYNC HEX: 0023 ; inline add-windows-message
+: WM_GETMINMAXINFO HEX: 0024 ; inline add-windows-message
+: WM_PAINTICON HEX: 0026 ; inline add-windows-message
+: WM_ICONERASEBKGND HEX: 0027 ; inline add-windows-message
+: WM_NEXTDLGCTL HEX: 0028 ; inline add-windows-message
+: WM_SPOOLERSTATUS HEX: 002A ; inline add-windows-message
+: WM_DRAWITEM HEX: 002B ; inline add-windows-message
+: WM_MEASUREITEM HEX: 002C ; inline add-windows-message
+: WM_DELETEITEM HEX: 002D ; inline add-windows-message
+: WM_VKEYTOITEM HEX: 002E ; inline add-windows-message
+: WM_CHARTOITEM HEX: 002F ; inline add-windows-message
+: WM_SETFONT HEX: 0030 ; inline add-windows-message
+: WM_GETFONT HEX: 0031 ; inline add-windows-message
+: WM_SETHOTKEY HEX: 0032 ; inline add-windows-message
+: WM_GETHOTKEY HEX: 0033 ; inline add-windows-message
+: WM_QUERYDRAGICON HEX: 0037 ; inline add-windows-message
+: WM_COMPAREITEM HEX: 0039 ; inline add-windows-message
+: WM_GETOBJECT HEX: 003D ; inline add-windows-message
+: WM_COMPACTING HEX: 0041 ; inline add-windows-message
+: WM_COMMNOTIFY HEX: 0044 ; inline add-windows-message
+: WM_WINDOWPOSCHANGING HEX: 0046 ; inline add-windows-message
+: WM_WINDOWPOSCHANGED HEX: 0047 ; inline add-windows-message
+: WM_POWER HEX: 0048 ; inline add-windows-message
+: WM_COPYDATA HEX: 004A ; inline add-windows-message
+: WM_CANCELJOURNAL HEX: 004B ; inline add-windows-message
+: WM_NOTIFY HEX: 004E ; inline add-windows-message
+: WM_INPUTLANGCHANGEREQUEST HEX: 0050 ; inline add-windows-message
+: WM_INPUTLANGCHANGE HEX: 0051 ; inline add-windows-message
+: WM_TCARD HEX: 0052 ; inline add-windows-message
+: WM_HELP HEX: 0053 ; inline add-windows-message
+: WM_USERCHANGED HEX: 0054 ; inline add-windows-message
+: WM_NOTIFYFORMAT HEX: 0055 ; inline add-windows-message
+: WM_CONTEXTMENU HEX: 007B ; inline add-windows-message
+: WM_STYLECHANGING HEX: 007C ; inline add-windows-message
+: WM_STYLECHANGED HEX: 007D ; inline add-windows-message
+: WM_DISPLAYCHANGE HEX: 007E ; inline add-windows-message
+: WM_GETICON HEX: 007F ; inline add-windows-message
+: WM_SETICON HEX: 0080 ; inline add-windows-message
+: WM_NCCREATE HEX: 0081 ; inline add-windows-message
+: WM_NCDESTROY HEX: 0082 ; inline add-windows-message
+: WM_NCCALCSIZE HEX: 0083 ; inline add-windows-message
+: WM_NCHITTEST HEX: 0084 ; inline add-windows-message
+: WM_NCPAINT HEX: 0085 ; inline add-windows-message
+: WM_NCACTIVATE HEX: 0086 ; inline add-windows-message
+: WM_GETDLGCODE HEX: 0087 ; inline add-windows-message
+: WM_SYNCPAINT HEX: 0088 ; inline add-windows-message
+: WM_NCMOUSEMOVE HEX: 00A0 ; inline add-windows-message
+: WM_NCLBUTTONDOWN HEX: 00A1 ; inline add-windows-message
+: WM_NCLBUTTONUP HEX: 00A2 ; inline add-windows-message
+: WM_NCLBUTTONDBLCLK HEX: 00A3 ; inline add-windows-message
+: WM_NCRBUTTONDOWN HEX: 00A4 ; inline add-windows-message
+: WM_NCRBUTTONUP HEX: 00A5 ; inline add-windows-message
+: WM_NCRBUTTONDBLCLK HEX: 00A6 ; inline add-windows-message
+: WM_NCMBUTTONDOWN HEX: 00A7 ; inline add-windows-message
+: WM_NCMBUTTONUP HEX: 00A8 ; inline add-windows-message
+: WM_NCMBUTTONDBLCLK HEX: 00A9 ; inline add-windows-message
+: WM_NCXBUTTONDOWN HEX: 00AB ; inline add-windows-message
+: WM_NCXBUTTONUP HEX: 00AC ; inline add-windows-message
+: WM_NCXBUTTONDBLCLK HEX: 00AD ; inline add-windows-message
+: WM_INPUT HEX: 00FF ; inline add-windows-message
+: WM_KEYFIRST HEX: 0100 ; inline add-windows-message
+: WM_KEYDOWN HEX: 0100 ; inline add-windows-message
+: WM_KEYUP HEX: 0101 ; inline add-windows-message
+: WM_CHAR HEX: 0102 ; inline add-windows-message
+: WM_DEADCHAR HEX: 0103 ; inline add-windows-message
+: WM_SYSKEYDOWN HEX: 0104 ; inline add-windows-message
+: WM_SYSKEYUP HEX: 0105 ; inline add-windows-message
+: WM_SYSCHAR HEX: 0106 ; inline add-windows-message
+: WM_SYSDEADCHAR HEX: 0107 ; inline add-windows-message
+: WM_UNICHAR HEX: 0109 ; inline add-windows-message
+: WM_KEYLAST_NT501 HEX: 0109 ; inline add-windows-message
+: UNICODE_NOCHAR HEX: FFFF ; inline add-windows-message
+: WM_KEYLAST_PRE501 HEX: 0108 ; inline add-windows-message
+: WM_IME_STARTCOMPOSITION HEX: 010D ; inline add-windows-message
+: WM_IME_ENDCOMPOSITION HEX: 010E ; inline add-windows-message
+: WM_IME_COMPOSITION HEX: 010F ; inline add-windows-message
+: WM_IME_KEYLAST HEX: 010F ; inline add-windows-message
+: WM_INITDIALOG HEX: 0110 ; inline add-windows-message
+: WM_COMMAND HEX: 0111 ; inline add-windows-message
+: WM_SYSCOMMAND HEX: 0112 ; inline add-windows-message
+: WM_TIMER HEX: 0113 ; inline add-windows-message
+: WM_HSCROLL HEX: 0114 ; inline add-windows-message
+: WM_VSCROLL HEX: 0115 ; inline add-windows-message
+: WM_INITMENU HEX: 0116 ; inline add-windows-message
+: WM_INITMENUPOPUP HEX: 0117 ; inline add-windows-message
+: WM_MENUSELECT HEX: 011F ; inline add-windows-message
+: WM_MENUCHAR HEX: 0120 ; inline add-windows-message
+: WM_ENTERIDLE HEX: 0121 ; inline add-windows-message
+: WM_MENURBUTTONUP HEX: 0122 ; inline add-windows-message
+: WM_MENUDRAG HEX: 0123 ; inline add-windows-message
+: WM_MENUGETOBJECT HEX: 0124 ; inline add-windows-message
+: WM_UNINITMENUPOPUP HEX: 0125 ; inline add-windows-message
+: WM_MENUCOMMAND HEX: 0126 ; inline add-windows-message
+: WM_CHANGEUISTATE HEX: 0127 ; inline add-windows-message
+: WM_UPDATEUISTATE HEX: 0128 ; inline add-windows-message
+: WM_QUERYUISTATE HEX: 0129 ; inline add-windows-message
+: WM_CTLCOLORMSGBOX HEX: 0132 ; inline add-windows-message
+: WM_CTLCOLOREDIT HEX: 0133 ; inline add-windows-message
+: WM_CTLCOLORLISTBOX HEX: 0134 ; inline add-windows-message
+: WM_CTLCOLORBTN HEX: 0135 ; inline add-windows-message
+: WM_CTLCOLORDLG HEX: 0136 ; inline add-windows-message
+: WM_CTLCOLORSCROLLBAR HEX: 0137 ; inline add-windows-message
+: WM_CTLCOLORSTATIC HEX: 0138 ; inline add-windows-message
+: WM_MOUSEFIRST HEX: 0200 ; inline add-windows-message
+: WM_MOUSEMOVE HEX: 0200 ; inline add-windows-message
+: WM_LBUTTONDOWN HEX: 0201 ; inline add-windows-message
+: WM_LBUTTONUP HEX: 0202 ; inline add-windows-message
+: WM_LBUTTONDBLCLK HEX: 0203 ; inline add-windows-message
+: WM_RBUTTONDOWN HEX: 0204 ; inline add-windows-message
+: WM_RBUTTONUP HEX: 0205 ; inline add-windows-message
+: WM_RBUTTONDBLCLK HEX: 0206 ; inline add-windows-message
+: WM_MBUTTONDOWN HEX: 0207 ; inline add-windows-message
+: WM_MBUTTONUP HEX: 0208 ; inline add-windows-message
+: WM_MBUTTONDBLCLK HEX: 0209 ; inline add-windows-message
+: WM_MOUSEWHEEL HEX: 020A ; inline add-windows-message
+: WM_XBUTTONDOWN HEX: 020B ; inline add-windows-message
+: WM_XBUTTONUP HEX: 020C ; inline add-windows-message
+: WM_XBUTTONDBLCLK HEX: 020D ; inline add-windows-message
+: WM_MOUSELAST_5 HEX: 020D ; inline add-windows-message
+: WM_MOUSELAST_4 HEX: 020A ; inline add-windows-message
+: WM_MOUSELAST_PRE_4 HEX: 0209 ; inline add-windows-message
+: WM_PARENTNOTIFY HEX: 0210 ; inline add-windows-message
+: WM_ENTERMENULOOP HEX: 0211 ; inline add-windows-message
+: WM_EXITMENULOOP HEX: 0212 ; inline add-windows-message
+: WM_NEXTMENU HEX: 0213 ; inline add-windows-message
+: WM_SIZING HEX: 0214 ; inline add-windows-message
+: WM_CAPTURECHANGED HEX: 0215 ; inline add-windows-message
+: WM_MOVING HEX: 0216 ; inline add-windows-message
+: WM_POWERBROADCAST HEX: 0218 ; inline add-windows-message
+: WM_DEVICECHANGE HEX: 0219 ; inline add-windows-message
+: WM_MDICREATE HEX: 0220 ; inline add-windows-message
+: WM_MDIDESTROY HEX: 0221 ; inline add-windows-message
+: WM_MDIACTIVATE HEX: 0222 ; inline add-windows-message
+: WM_MDIRESTORE HEX: 0223 ; inline add-windows-message
+: WM_MDINEXT HEX: 0224 ; inline add-windows-message
+: WM_MDIMAXIMIZE HEX: 0225 ; inline add-windows-message
+: WM_MDITILE HEX: 0226 ; inline add-windows-message
+: WM_MDICASCADE HEX: 0227 ; inline add-windows-message
+: WM_MDIICONARRANGE HEX: 0228 ; inline add-windows-message
+: WM_MDIGETACTIVE HEX: 0229 ; inline add-windows-message
+: WM_MDISETMENU HEX: 0230 ; inline add-windows-message
+: WM_ENTERSIZEMOVE HEX: 0231 ; inline add-windows-message
+: WM_EXITSIZEMOVE HEX: 0232 ; inline add-windows-message
+: WM_DROPFILES HEX: 0233 ; inline add-windows-message
+: WM_MDIREFRESHMENU HEX: 0234 ; inline add-windows-message
+: WM_IME_SETCONTEXT HEX: 0281 ; inline add-windows-message
+: WM_IME_NOTIFY HEX: 0282 ; inline add-windows-message
+: WM_IME_CONTROL HEX: 0283 ; inline add-windows-message
+: WM_IME_COMPOSITIONFULL HEX: 0284 ; inline add-windows-message
+: WM_IME_SELECT HEX: 0285 ; inline add-windows-message
+: WM_IME_CHAR HEX: 0286 ; inline add-windows-message
+: WM_IME_REQUEST HEX: 0288 ; inline add-windows-message
+: WM_IME_KEYDOWN HEX: 0290 ; inline add-windows-message
+: WM_IME_KEYUP HEX: 0291 ; inline add-windows-message
+: WM_MOUSEHOVER HEX: 02A1 ; inline add-windows-message
+: WM_MOUSELEAVE HEX: 02A3 ; inline add-windows-message
+: WM_NCMOUSEHOVER HEX: 02A0 ; inline add-windows-message
+: WM_NCMOUSELEAVE HEX: 02A2 ; inline add-windows-message
+: WM_WTSSESSION_CHANGE HEX: 02B1 ; inline add-windows-message
+: WM_TABLET_FIRST HEX: 02c0 ; inline add-windows-message
+: WM_TABLET_LAST HEX: 02df ; inline add-windows-message
+: WM_CUT HEX: 0300 ; inline add-windows-message
+: WM_COPY HEX: 0301 ; inline add-windows-message
+: WM_PASTE HEX: 0302 ; inline add-windows-message
+: WM_CLEAR HEX: 0303 ; inline add-windows-message
+: WM_UNDO HEX: 0304 ; inline add-windows-message
+: WM_RENDERFORMAT HEX: 0305 ; inline add-windows-message
+: WM_RENDERALLFORMATS HEX: 0306 ; inline add-windows-message
+: WM_DESTROYCLIPBOARD HEX: 0307 ; inline add-windows-message
+: WM_DRAWCLIPBOARD HEX: 0308 ; inline add-windows-message
+: WM_PAINTCLIPBOARD HEX: 0309 ; inline add-windows-message
+: WM_VSCROLLCLIPBOARD HEX: 030A ; inline add-windows-message
+: WM_SIZECLIPBOARD HEX: 030B ; inline add-windows-message
+: WM_ASKCBFORMATNAME HEX: 030C ; inline add-windows-message
+: WM_CHANGECBCHAIN HEX: 030D ; inline add-windows-message
+: WM_HSCROLLCLIPBOARD HEX: 030E ; inline add-windows-message
+: WM_QUERYNEWPALETTE HEX: 030F ; inline add-windows-message
+: WM_PALETTEISCHANGING HEX: 0310 ; inline add-windows-message
+: WM_PALETTECHANGED HEX: 0311 ; inline add-windows-message
+: WM_HOTKEY HEX: 0312 ; inline add-windows-message
+: WM_PRINT HEX: 0317 ; inline add-windows-message
+: WM_PRINTCLIENT HEX: 0318 ; inline add-windows-message
+: WM_APPCOMMAND HEX: 0319 ; inline add-windows-message
+: WM_THEMECHANGED HEX: 031A ; inline add-windows-message
+: WM_HANDHELDFIRST HEX: 0358 ; inline add-windows-message
+: WM_HANDHELDLAST HEX: 035F ; inline add-windows-message
+: WM_AFXFIRST HEX: 0360 ; inline add-windows-message
+: WM_AFXLAST HEX: 037F ; inline add-windows-message
+: WM_PENWINFIRST HEX: 0380 ; inline add-windows-message
+: WM_PENWINLAST HEX: 038F ; inline add-windows-message
+: WM_APP HEX: 8000 ; inline add-windows-message
+: WM_USER HEX: 0400 ; inline add-windows-message
+: EM_GETSEL HEX: 00B0 ; inline add-windows-message
+: EM_SETSEL HEX: 00B1 ; inline add-windows-message
+: EM_GETRECT HEX: 00B2 ; inline add-windows-message
+: EM_SETRECT HEX: 00B3 ; inline add-windows-message
+: EM_SETRECTNP HEX: 00B4 ; inline add-windows-message
+: EM_SCROLL HEX: 00B5 ; inline add-windows-message
+: EM_LINESCROLL HEX: 00B6 ; inline add-windows-message
+: EM_SCROLLCARET HEX: 00B7 ; inline add-windows-message
+: EM_GETMODIFY HEX: 00B8 ; inline add-windows-message
+: EM_SETMODIFY HEX: 00B9 ; inline add-windows-message
+: EM_GETLINECOUNT HEX: 00BA ; inline add-windows-message
+: EM_LINEINDEX HEX: 00BB ; inline add-windows-message
+: EM_SETHANDLE HEX: 00BC ; inline add-windows-message
+: EM_GETHANDLE HEX: 00BD ; inline add-windows-message
+: EM_GETTHUMB HEX: 00BE ; inline add-windows-message
+: EM_LINELENGTH HEX: 00C1 ; inline add-windows-message
+: EM_REPLACESEL HEX: 00C2 ; inline add-windows-message
+: EM_GETLINE HEX: 00C4 ; inline add-windows-message
+: EM_LIMITTEXT HEX: 00C5 ; inline add-windows-message
+: EM_CANUNDO HEX: 00C6 ; inline add-windows-message
+: EM_UNDO HEX: 00C7 ; inline add-windows-message
+: EM_FMTLINES HEX: 00C8 ; inline add-windows-message
+: EM_LINEFROMCHAR HEX: 00C9 ; inline add-windows-message
+: EM_SETTABSTOPS HEX: 00CB ; inline add-windows-message
+: EM_SETPASSWORDCHAR HEX: 00CC ; inline add-windows-message
+: EM_EMPTYUNDOBUFFER HEX: 00CD ; inline add-windows-message
+: EM_GETFIRSTVISIBLELINE HEX: 00CE ; inline add-windows-message
+: EM_SETREADONLY HEX: 00CF ; inline add-windows-message
+: EM_SETWORDBREAKPROC HEX: 00D0 ; inline add-windows-message
+: EM_GETWORDBREAKPROC HEX: 00D1 ; inline add-windows-message
+: EM_GETPASSWORDCHAR HEX: 00D2 ; inline add-windows-message
+: EM_SETMARGINS HEX: 00D3 ; inline add-windows-message
+: EM_GETMARGINS HEX: 00D4 ; inline add-windows-message
+: EM_SETLIMITTEXT EM_LIMITTEXT ; inline add-windows-message
+: EM_GETLIMITTEXT HEX: 00D5 ; inline add-windows-message
+: EM_POSFROMCHAR HEX: 00D6 ; inline add-windows-message
+: EM_CHARFROMPOS HEX: 00D7 ; inline add-windows-message
+: EM_SETIMESTATUS HEX: 00D8 ; inline add-windows-message
+: EM_GETIMESTATUS HEX: 00D9 ; inline add-windows-message
+: BM_GETCHECK HEX: 00F0 ; inline add-windows-message
+: BM_SETCHECK HEX: 00F1 ; inline add-windows-message
+: BM_GETSTATE HEX: 00F2 ; inline add-windows-message
+: BM_SETSTATE HEX: 00F3 ; inline add-windows-message
+: BM_SETSTYLE HEX: 00F4 ; inline add-windows-message
+: BM_CLICK HEX: 00F5 ; inline add-windows-message
+: BM_GETIMAGE HEX: 00F6 ; inline add-windows-message
+: BM_SETIMAGE HEX: 00F7 ; inline add-windows-message
+: STM_SETICON HEX: 0170 ; inline add-windows-message
+: STM_GETICON HEX: 0171 ; inline add-windows-message
+: STM_SETIMAGE HEX: 0172 ; inline add-windows-message
+: STM_GETIMAGE HEX: 0173 ; inline add-windows-message
+: STM_MSGMAX HEX: 0174 ; inline add-windows-message
+: DM_GETDEFID WM_USER ; inline add-windows-message
+: DM_SETDEFID WM_USER 1 + ; inline add-windows-message
+: DM_REPOSITION WM_USER 2 + ; inline add-windows-message
+: LB_ADDSTRING HEX: 0180 ; inline add-windows-message
+: LB_INSERTSTRING HEX: 0181 ; inline add-windows-message
+: LB_DELETESTRING HEX: 0182 ; inline add-windows-message
+: LB_SELITEMRANGEEX HEX: 0183 ; inline add-windows-message
+: LB_RESETCONTENT HEX: 0184 ; inline add-windows-message
+: LB_SETSEL HEX: 0185 ; inline add-windows-message
+: LB_SETCURSEL HEX: 0186 ; inline add-windows-message
+: LB_GETSEL HEX: 0187 ; inline add-windows-message
+: LB_GETCURSEL HEX: 0188 ; inline add-windows-message
+: LB_GETTEXT HEX: 0189 ; inline add-windows-message
+: LB_GETTEXTLEN HEX: 018A ; inline add-windows-message
+: LB_GETCOUNT HEX: 018B ; inline add-windows-message
+: LB_SELECTSTRING HEX: 018C ; inline add-windows-message
+: LB_DIR HEX: 018D ; inline add-windows-message
+: LB_GETTOPINDEX HEX: 018E ; inline add-windows-message
+: LB_FINDSTRING HEX: 018F ; inline add-windows-message
+: LB_GETSELCOUNT HEX: 0190 ; inline add-windows-message
+: LB_GETSELITEMS HEX: 0191 ; inline add-windows-message
+: LB_SETTABSTOPS HEX: 0192 ; inline add-windows-message
+: LB_GETHORIZONTALEXTENT HEX: 0193 ; inline add-windows-message
+: LB_SETHORIZONTALEXTENT HEX: 0194 ; inline add-windows-message
+: LB_SETCOLUMNWIDTH HEX: 0195 ; inline add-windows-message
+: LB_ADDFILE HEX: 0196 ; inline add-windows-message
+: LB_SETTOPINDEX HEX: 0197 ; inline add-windows-message
+: LB_GETITEMRECT HEX: 0198 ; inline add-windows-message
+: LB_GETITEMDATA HEX: 0199 ; inline add-windows-message
+: LB_SETITEMDATA HEX: 019A ; inline add-windows-message
+: LB_SELITEMRANGE HEX: 019B ; inline add-windows-message
+: LB_SETANCHORINDEX HEX: 019C ; inline add-windows-message
+: LB_GETANCHORINDEX HEX: 019D ; inline add-windows-message
+: LB_SETCARETINDEX HEX: 019E ; inline add-windows-message
+: LB_GETCARETINDEX HEX: 019F ; inline add-windows-message
+: LB_SETITEMHEIGHT HEX: 01A0 ; inline add-windows-message
+: LB_GETITEMHEIGHT HEX: 01A1 ; inline add-windows-message
+: LB_FINDSTRINGEXACT HEX: 01A2 ; inline add-windows-message
+: LB_SETLOCALE HEX: 01A5 ; inline add-windows-message
+: LB_GETLOCALE HEX: 01A6 ; inline add-windows-message
+: LB_SETCOUNT HEX: 01A7 ; inline add-windows-message
+: LB_INITSTORAGE HEX: 01A8 ; inline add-windows-message
+: LB_ITEMFROMPOINT HEX: 01A9 ; inline add-windows-message
+: LB_MULTIPLEADDSTRING HEX: 01B1 ; inline add-windows-message
+: LB_GETLISTBOXINFO HEX: 01B2 ; inline add-windows-message
+: LB_MSGMAX_501 HEX: 01B3 ; inline add-windows-message
+: LB_MSGMAX_WCE4 HEX: 01B1 ; inline add-windows-message
+: LB_MSGMAX_4 HEX: 01B0 ; inline add-windows-message
+: LB_MSGMAX_PRE4 HEX: 01A8 ; inline add-windows-message
+: CB_GETEDITSEL HEX: 0140 ; inline add-windows-message
+: CB_LIMITTEXT HEX: 0141 ; inline add-windows-message
+: CB_SETEDITSEL HEX: 0142 ; inline add-windows-message
+: CB_ADDSTRING HEX: 0143 ; inline add-windows-message
+: CB_DELETESTRING HEX: 0144 ; inline add-windows-message
+: CB_DIR HEX: 0145 ; inline add-windows-message
+: CB_GETCOUNT HEX: 0146 ; inline add-windows-message
+: CB_GETCURSEL HEX: 0147 ; inline add-windows-message
+: CB_GETLBTEXT HEX: 0148 ; inline add-windows-message
+: CB_GETLBTEXTLEN HEX: 0149 ; inline add-windows-message
+: CB_INSERTSTRING HEX: 014A ; inline add-windows-message
+: CB_RESETCONTENT HEX: 014B ; inline add-windows-message
+: CB_FINDSTRING HEX: 014C ; inline add-windows-message
+: CB_SELECTSTRING HEX: 014D ; inline add-windows-message
+: CB_SETCURSEL HEX: 014E ; inline add-windows-message
+: CB_SHOWDROPDOWN HEX: 014F ; inline add-windows-message
+: CB_GETITEMDATA HEX: 0150 ; inline add-windows-message
+: CB_SETITEMDATA HEX: 0151 ; inline add-windows-message
+: CB_GETDROPPEDCONTROLRECT HEX: 0152 ; inline add-windows-message
+: CB_SETITEMHEIGHT HEX: 0153 ; inline add-windows-message
+: CB_GETITEMHEIGHT HEX: 0154 ; inline add-windows-message
+: CB_SETEXTENDEDUI HEX: 0155 ; inline add-windows-message
+: CB_GETEXTENDEDUI HEX: 0156 ; inline add-windows-message
+: CB_GETDROPPEDSTATE HEX: 0157 ; inline add-windows-message
+: CB_FINDSTRINGEXACT HEX: 0158 ; inline add-windows-message
+: CB_SETLOCALE HEX: 0159 ; inline add-windows-message
+: CB_GETLOCALE HEX: 015A ; inline add-windows-message
+: CB_GETTOPINDEX HEX: 015B ; inline add-windows-message
+: CB_SETTOPINDEX HEX: 015C ; inline add-windows-message
+: CB_GETHORIZONTALEXTENT HEX: 015d ; inline add-windows-message
+: CB_SETHORIZONTALEXTENT HEX: 015e ; inline add-windows-message
+: CB_GETDROPPEDWIDTH HEX: 015f ; inline add-windows-message
+: CB_SETDROPPEDWIDTH HEX: 0160 ; inline add-windows-message
+: CB_INITSTORAGE HEX: 0161 ; inline add-windows-message
+: CB_MULTIPLEADDSTRING HEX: 0163 ; inline add-windows-message
+: CB_GETCOMBOBOXINFO HEX: 0164 ; inline add-windows-message
+: CB_MSGMAX_501 HEX: 0165 ; inline add-windows-message
+: CB_MSGMAX_WCE400 HEX: 0163 ; inline add-windows-message
+: CB_MSGMAX_400 HEX: 0162 ; inline add-windows-message
+: CB_MSGMAX_PRE400 HEX: 015B ; inline add-windows-message
+: SBM_SETPOS HEX: 00E0 ; inline add-windows-message
+: SBM_GETPOS HEX: 00E1 ; inline add-windows-message
+: SBM_SETRANGE HEX: 00E2 ; inline add-windows-message
+: SBM_SETRANGEREDRAW HEX: 00E6 ; inline add-windows-message
+: SBM_GETRANGE HEX: 00E3 ; inline add-windows-message
+: SBM_ENABLE_ARROWS HEX: 00E4 ; inline add-windows-message
+: SBM_SETSCROLLINFO HEX: 00E9 ; inline add-windows-message
+: SBM_GETSCROLLINFO HEX: 00EA ; inline add-windows-message
+: SBM_GETSCROLLBARINFO HEX: 00EB ; inline add-windows-message
+: LVM_FIRST HEX: 1000 ; inline add-windows-message ! ListView messages
+: TV_FIRST HEX: 1100 ; inline add-windows-message ! TreeView messages
+: HDM_FIRST HEX: 1200 ; inline add-windows-message ! Header messages
+: TCM_FIRST HEX: 1300 ; inline add-windows-message ! Tab control messages
+: PGM_FIRST HEX: 1400 ; inline add-windows-message ! Pager control messages
+: ECM_FIRST HEX: 1500 ; inline add-windows-message ! Edit control messages
+: BCM_FIRST HEX: 1600 ; inline add-windows-message ! Button control messages
+: CBM_FIRST HEX: 1700 ; inline add-windows-message ! Combobox control messages
+: CCM_FIRST HEX: 2000 ; inline add-windows-message ! Common control shared messages
+: CCM_LAST CCM_FIRST HEX: 0200 + ; inline add-windows-message
+: CCM_SETBKCOLOR CCM_FIRST 1 + ; inline add-windows-message
+: CCM_SETCOLORSCHEME CCM_FIRST 2 + ; inline add-windows-message
+: CCM_GETCOLORSCHEME CCM_FIRST 3 + ; inline add-windows-message
+: CCM_GETDROPTARGET CCM_FIRST 4 + ; inline add-windows-message
+: CCM_SETUNICODEFORMAT CCM_FIRST 5 + ; inline add-windows-message
+: CCM_GETUNICODEFORMAT CCM_FIRST 6 + ; inline add-windows-message
+: CCM_SETVERSION CCM_FIRST 7 + ; inline add-windows-message
+: CCM_GETVERSION CCM_FIRST 8 + ; inline add-windows-message
+: CCM_SETNOTIFYWINDOW CCM_FIRST 9 + ; inline add-windows-message
+: CCM_SETWINDOWTHEME CCM_FIRST HEX: b + ; inline add-windows-message
+: CCM_DPISCALE CCM_FIRST HEX: c + ; inline add-windows-message
+: HDM_GETITEMCOUNT HDM_FIRST 0 + ; inline add-windows-message
+: HDM_INSERTITEMA HDM_FIRST 1 + ; inline add-windows-message
+: HDM_INSERTITEMW HDM_FIRST 10 + ; inline add-windows-message
+: HDM_DELETEITEM HDM_FIRST 2 + ; inline add-windows-message
+: HDM_GETITEMA HDM_FIRST 3 + ; inline add-windows-message
+: HDM_GETITEMW HDM_FIRST 11 + ; inline add-windows-message
+: HDM_SETITEMA HDM_FIRST 4 + ; inline add-windows-message
+: HDM_SETITEMW HDM_FIRST 12 + ; inline add-windows-message
+: HDM_LAYOUT HDM_FIRST 5 + ; inline add-windows-message
+: HDM_HITTEST HDM_FIRST 6 + ; inline add-windows-message
+: HDM_GETITEMRECT HDM_FIRST 7 + ; inline add-windows-message
+: HDM_SETIMAGELIST HDM_FIRST 8 + ; inline add-windows-message
+: HDM_GETIMAGELIST HDM_FIRST 9 + ; inline add-windows-message
+: HDM_ORDERTOINDEX HDM_FIRST 15 + ; inline add-windows-message
+: HDM_CREATEDRAGIMAGE HDM_FIRST 16 + ; inline add-windows-message
+: HDM_GETORDERARRAY HDM_FIRST 17 + ; inline add-windows-message
+: HDM_SETORDERARRAY HDM_FIRST 18 + ; inline add-windows-message
+: HDM_SETHOTDIVIDER HDM_FIRST 19 + ; inline add-windows-message
+: HDM_SETBITMAPMARGIN HDM_FIRST 20 + ; inline add-windows-message
+: HDM_GETBITMAPMARGIN HDM_FIRST 21 + ; inline add-windows-message
+: HDM_SETUNICODEFORMAT CCM_SETUNICODEFORMAT ; inline add-windows-message
+: HDM_GETUNICODEFORMAT CCM_GETUNICODEFORMAT ; inline add-windows-message
+: HDM_SETFILTERCHANGETIMEOUT HDM_FIRST 22 + ; inline add-windows-message
+: HDM_EDITFILTER HDM_FIRST 23 + ; inline add-windows-message
+: HDM_CLEARFILTER HDM_FIRST 24 + ; inline add-windows-message
+: TB_ENABLEBUTTON WM_USER 1 + ; inline add-windows-message
+: TB_CHECKBUTTON WM_USER 2 + ; inline add-windows-message
+: TB_PRESSBUTTON WM_USER 3 + ; inline add-windows-message
+: TB_HIDEBUTTON WM_USER 4 + ; inline add-windows-message
+: TB_INDETERMINATE WM_USER 5 + ; inline add-windows-message
+: TB_MARKBUTTON WM_USER 6 + ; inline add-windows-message
+: TB_ISBUTTONENABLED WM_USER 9 + ; inline add-windows-message
+: TB_ISBUTTONCHECKED WM_USER 10 + ; inline add-windows-message
+: TB_ISBUTTONPRESSED WM_USER 11 + ; inline add-windows-message
+: TB_ISBUTTONHIDDEN WM_USER 12 + ; inline add-windows-message
+: TB_ISBUTTONINDETERMINATE WM_USER 13 + ; inline add-windows-message
+: TB_ISBUTTONHIGHLIGHTED WM_USER 14 + ; inline add-windows-message
+: TB_SETSTATE WM_USER 17 + ; inline add-windows-message
+: TB_GETSTATE WM_USER 18 + ; inline add-windows-message
+: TB_ADDBITMAP WM_USER 19 + ; inline add-windows-message
+: TB_ADDBUTTONSA WM_USER 20 + ; inline add-windows-message
+: TB_INSERTBUTTONA WM_USER 21 + ; inline add-windows-message
+: TB_ADDBUTTONS WM_USER 20 + ; inline add-windows-message
+: TB_INSERTBUTTON WM_USER 21 + ; inline add-windows-message
+: TB_DELETEBUTTON WM_USER 22 + ; inline add-windows-message
+: TB_GETBUTTON WM_USER 23 + ; inline add-windows-message
+: TB_BUTTONCOUNT WM_USER 24 + ; inline add-windows-message
+: TB_COMMANDTOINDEX WM_USER 25 + ; inline add-windows-message
+: TB_SAVERESTOREA WM_USER 26 + ; inline add-windows-message
+: TB_SAVERESTOREW WM_USER 76 + ; inline add-windows-message
+: TB_CUSTOMIZE WM_USER 27 + ; inline add-windows-message
+: TB_ADDSTRINGA WM_USER 28 + ; inline add-windows-message
+: TB_ADDSTRINGW WM_USER 77 + ; inline add-windows-message
+: TB_GETITEMRECT WM_USER 29 + ; inline add-windows-message
+: TB_BUTTONSTRUCTSIZE WM_USER 30 + ; inline add-windows-message
+: TB_SETBUTTONSIZE WM_USER 31 + ; inline add-windows-message
+: TB_SETBITMAPSIZE WM_USER 32 + ; inline add-windows-message
+: TB_AUTOSIZE WM_USER 33 + ; inline add-windows-message
+: TB_GETTOOLTIPS WM_USER 35 + ; inline add-windows-message
+: TB_SETTOOLTIPS WM_USER 36 + ; inline add-windows-message
+: TB_SETPARENT WM_USER 37 + ; inline add-windows-message
+: TB_SETROWS WM_USER 39 + ; inline add-windows-message
+: TB_GETROWS WM_USER 40 + ; inline add-windows-message
+: TB_SETCMDID WM_USER 42 + ; inline add-windows-message
+: TB_CHANGEBITMAP WM_USER 43 + ; inline add-windows-message
+: TB_GETBITMAP WM_USER 44 + ; inline add-windows-message
+: TB_GETBUTTONTEXTA WM_USER 45 + ; inline add-windows-message
+: TB_GETBUTTONTEXTW WM_USER 75 + ; inline add-windows-message
+: TB_REPLACEBITMAP WM_USER 46 + ; inline add-windows-message
+: TB_SETINDENT WM_USER 47 + ; inline add-windows-message
+: TB_SETIMAGELIST WM_USER 48 + ; inline add-windows-message
+: TB_GETIMAGELIST WM_USER 49 + ; inline add-windows-message
+: TB_LOADIMAGES WM_USER 50 + ; inline add-windows-message
+: TB_GETRECT WM_USER 51 + ; inline add-windows-message
+: TB_SETHOTIMAGELIST WM_USER 52 + ; inline add-windows-message
+: TB_GETHOTIMAGELIST WM_USER 53 + ; inline add-windows-message
+: TB_SETDISABLEDIMAGELIST WM_USER 54 + ; inline add-windows-message
+: TB_GETDISABLEDIMAGELIST WM_USER 55 + ; inline add-windows-message
+: TB_SETSTYLE WM_USER 56 + ; inline add-windows-message
+: TB_GETSTYLE WM_USER 57 + ; inline add-windows-message
+: TB_GETBUTTONSIZE WM_USER 58 + ; inline add-windows-message
+: TB_SETBUTTONWIDTH WM_USER 59 + ; inline add-windows-message
+: TB_SETMAXTEXTROWS WM_USER 60 + ; inline add-windows-message
+: TB_GETTEXTROWS WM_USER 61 + ; inline add-windows-message
+: TB_GETOBJECT WM_USER 62 + ; inline add-windows-message
+: TB_GETHOTITEM WM_USER 71 + ; inline add-windows-message
+: TB_SETHOTITEM WM_USER 72 + ; inline add-windows-message
+: TB_SETANCHORHIGHLIGHT WM_USER 73 + ; inline add-windows-message
+: TB_GETANCHORHIGHLIGHT WM_USER 74 + ; inline add-windows-message
+: TB_MAPACCELERATORA WM_USER 78 + ; inline add-windows-message
+: TB_GETINSERTMARK WM_USER 79 + ; inline add-windows-message
+: TB_SETINSERTMARK WM_USER 80 + ; inline add-windows-message
+: TB_INSERTMARKHITTEST WM_USER 81 + ; inline add-windows-message
+: TB_MOVEBUTTON WM_USER 82 + ; inline add-windows-message
+: TB_GETMAXSIZE WM_USER 83 + ; inline add-windows-message
+: TB_SETEXTENDEDSTYLE WM_USER 84 + ; inline add-windows-message
+: TB_GETEXTENDEDSTYLE WM_USER 85 + ; inline add-windows-message
+: TB_GETPADDING WM_USER 86 + ; inline add-windows-message
+: TB_SETPADDING WM_USER 87 + ; inline add-windows-message
+: TB_SETINSERTMARKCOLOR WM_USER 88 + ; inline add-windows-message
+: TB_GETINSERTMARKCOLOR WM_USER 89 + ; inline add-windows-message
+: TB_SETCOLORSCHEME CCM_SETCOLORSCHEME ; inline add-windows-message
+: TB_GETCOLORSCHEME CCM_GETCOLORSCHEME ; inline add-windows-message
+: TB_SETUNICODEFORMAT CCM_SETUNICODEFORMAT ; inline add-windows-message
+: TB_GETUNICODEFORMAT CCM_GETUNICODEFORMAT ; inline add-windows-message
+: TB_MAPACCELERATORW WM_USER 90 + ; inline add-windows-message
+: TB_GETBITMAPFLAGS WM_USER 41 + ; inline add-windows-message
+: TB_GETBUTTONINFOW WM_USER 63 + ; inline add-windows-message
+: TB_SETBUTTONINFOW WM_USER 64 + ; inline add-windows-message
+: TB_GETBUTTONINFOA WM_USER 65 + ; inline add-windows-message
+: TB_SETBUTTONINFOA WM_USER 66 + ; inline add-windows-message
+: TB_INSERTBUTTONW WM_USER 67 + ; inline add-windows-message
+: TB_ADDBUTTONSW WM_USER 68 + ; inline add-windows-message
+: TB_HITTEST WM_USER 69 + ; inline add-windows-message
+: TB_SETDRAWTEXTFLAGS WM_USER 70 + ; inline add-windows-message
+: TB_GETSTRINGW WM_USER 91 + ; inline add-windows-message
+: TB_GETSTRINGA WM_USER 92 + ; inline add-windows-message
+: TB_GETMETRICS WM_USER 101 + ; inline add-windows-message
+: TB_SETMETRICS WM_USER 102 + ; inline add-windows-message
+: TB_SETWINDOWTHEME CCM_SETWINDOWTHEME ; inline add-windows-message
+: RB_INSERTBANDA WM_USER 1 + ; inline add-windows-message
+: RB_DELETEBAND WM_USER 2 + ; inline add-windows-message
+: RB_GETBARINFO WM_USER 3 + ; inline add-windows-message
+: RB_SETBARINFO WM_USER 4 + ; inline add-windows-message
+: RB_GETBANDINFO WM_USER 5 + ; inline add-windows-message
+: RB_SETBANDINFOA WM_USER 6 + ; inline add-windows-message
+: RB_SETPARENT WM_USER 7 + ; inline add-windows-message
+: RB_HITTEST WM_USER 8 + ; inline add-windows-message
+: RB_GETRECT WM_USER 9 + ; inline add-windows-message
+: RB_INSERTBANDW WM_USER 10 + ; inline add-windows-message
+: RB_SETBANDINFOW WM_USER 11 + ; inline add-windows-message
+: RB_GETBANDCOUNT WM_USER 12 + ; inline add-windows-message
+: RB_GETROWCOUNT WM_USER 13 + ; inline add-windows-message
+: RB_GETROWHEIGHT WM_USER 14 + ; inline add-windows-message
+: RB_IDTOINDEX WM_USER 16 + ; inline add-windows-message
+: RB_GETTOOLTIPS WM_USER 17 + ; inline add-windows-message
+: RB_SETTOOLTIPS WM_USER 18 + ; inline add-windows-message
+: RB_SETBKCOLOR WM_USER 19 + ; inline add-windows-message
+: RB_GETBKCOLOR WM_USER 20 + ; inline add-windows-message
+: RB_SETTEXTCOLOR WM_USER 21 + ; inline add-windows-message
+: RB_GETTEXTCOLOR WM_USER 22 + ; inline add-windows-message
+: RB_SIZETORECT WM_USER 23 + ; inline add-windows-message
+: RB_SETCOLORSCHEME CCM_SETCOLORSCHEME ; inline add-windows-message
+: RB_GETCOLORSCHEME CCM_GETCOLORSCHEME ; inline add-windows-message
+: RB_BEGINDRAG WM_USER 24 + ; inline add-windows-message
+: RB_ENDDRAG WM_USER 25 + ; inline add-windows-message
+: RB_DRAGMOVE WM_USER 26 + ; inline add-windows-message
+: RB_GETBARHEIGHT WM_USER 27 + ; inline add-windows-message
+: RB_GETBANDINFOW WM_USER 28 + ; inline add-windows-message
+: RB_GETBANDINFOA WM_USER 29 + ; inline add-windows-message
+: RB_MINIMIZEBAND WM_USER 30 + ; inline add-windows-message
+: RB_MAXIMIZEBAND WM_USER 31 + ; inline add-windows-message
+: RB_GETDROPTARGET CCM_GETDROPTARGET ; inline add-windows-message
+: RB_GETBANDBORDERS WM_USER 34 + ; inline add-windows-message
+: RB_SHOWBAND WM_USER 35 + ; inline add-windows-message
+: RB_SETPALETTE WM_USER 37 + ; inline add-windows-message
+: RB_GETPALETTE WM_USER 38 + ; inline add-windows-message
+: RB_MOVEBAND WM_USER 39 + ; inline add-windows-message
+: RB_SETUNICODEFORMAT CCM_SETUNICODEFORMAT ; inline add-windows-message
+: RB_GETUNICODEFORMAT CCM_GETUNICODEFORMAT ; inline add-windows-message
+: RB_GETBANDMARGINS WM_USER 40 + ; inline add-windows-message
+: RB_SETWINDOWTHEME CCM_SETWINDOWTHEME ; inline add-windows-message
+: RB_PUSHCHEVRON WM_USER 43 + ; inline add-windows-message
+: TTM_ACTIVATE WM_USER 1 + ; inline add-windows-message
+: TTM_SETDELAYTIME WM_USER 3 + ; inline add-windows-message
+: TTM_ADDTOOLA WM_USER 4 + ; inline add-windows-message
+: TTM_ADDTOOLW WM_USER 50 + ; inline add-windows-message
+: TTM_DELTOOLA WM_USER 5 + ; inline add-windows-message
+: TTM_DELTOOLW WM_USER 51 + ; inline add-windows-message
+: TTM_NEWTOOLRECTA WM_USER 6 + ; inline add-windows-message
+: TTM_NEWTOOLRECTW WM_USER 52 + ; inline add-windows-message
+: TTM_RELAYEVENT WM_USER 7 + ; inline add-windows-message
+: TTM_GETTOOLINFOA WM_USER 8 + ; inline add-windows-message
+: TTM_GETTOOLINFOW WM_USER 53 + ; inline add-windows-message
+: TTM_SETTOOLINFOA WM_USER 9 + ; inline add-windows-message
+: TTM_SETTOOLINFOW WM_USER 54 + ; inline add-windows-message
+: TTM_HITTESTA WM_USER 10 + ; inline add-windows-message
+: TTM_HITTESTW WM_USER 55 + ; inline add-windows-message
+: TTM_GETTEXTA WM_USER 11 + ; inline add-windows-message
+: TTM_GETTEXTW WM_USER 56 + ; inline add-windows-message
+: TTM_UPDATETIPTEXTA WM_USER 12 + ; inline add-windows-message
+: TTM_UPDATETIPTEXTW WM_USER 57 + ; inline add-windows-message
+: TTM_GETTOOLCOUNT WM_USER 13 + ; inline add-windows-message
+: TTM_ENUMTOOLSA WM_USER 14 + ; inline add-windows-message
+: TTM_ENUMTOOLSW WM_USER 58 + ; inline add-windows-message
+: TTM_GETCURRENTTOOLA WM_USER 15 + ; inline add-windows-message
+: TTM_GETCURRENTTOOLW WM_USER 59 + ; inline add-windows-message
+: TTM_WINDOWFROMPOINT WM_USER 16 + ; inline add-windows-message
+: TTM_TRACKACTIVATE WM_USER 17 + ; inline add-windows-message
+: TTM_TRACKPOSITION WM_USER 18 + ; inline add-windows-message
+: TTM_SETTIPBKCOLOR WM_USER 19 + ; inline add-windows-message
+: TTM_SETTIPTEXTCOLOR WM_USER 20 + ; inline add-windows-message
+: TTM_GETDELAYTIME WM_USER 21 + ; inline add-windows-message
+: TTM_GETTIPBKCOLOR WM_USER 22 + ; inline add-windows-message
+: TTM_GETTIPTEXTCOLOR WM_USER 23 + ; inline add-windows-message
+: TTM_SETMAXTIPWIDTH WM_USER 24 + ; inline add-windows-message
+: TTM_GETMAXTIPWIDTH WM_USER 25 + ; inline add-windows-message
+: TTM_SETMARGIN WM_USER 26 + ; inline add-windows-message
+: TTM_GETMARGIN WM_USER 27 + ; inline add-windows-message
+: TTM_POP WM_USER 28 + ; inline add-windows-message
+: TTM_UPDATE WM_USER 29 + ; inline add-windows-message
+: TTM_GETBUBBLESIZE WM_USER 30 + ; inline add-windows-message
+: TTM_ADJUSTRECT WM_USER 31 + ; inline add-windows-message
+: TTM_SETTITLEA WM_USER 32 + ; inline add-windows-message
+: TTM_SETTITLEW WM_USER 33 + ; inline add-windows-message
+: TTM_POPUP WM_USER 34 + ; inline add-windows-message
+: TTM_GETTITLE WM_USER 35 + ; inline add-windows-message
+: TTM_SETWINDOWTHEME CCM_SETWINDOWTHEME ; inline add-windows-message
+: SB_SETTEXTA WM_USER 1+ ; inline add-windows-message
+: SB_SETTEXTW WM_USER 11 + ; inline add-windows-message
+: SB_GETTEXTA WM_USER 2 + ; inline add-windows-message
+: SB_GETTEXTW WM_USER 13 + ; inline add-windows-message
+: SB_GETTEXTLENGTHA WM_USER 3 + ; inline add-windows-message
+: SB_GETTEXTLENGTHW WM_USER 12 + ; inline add-windows-message
+: SB_SETPARTS WM_USER 4 + ; inline add-windows-message
+: SB_GETPARTS WM_USER 6 + ; inline add-windows-message
+: SB_GETBORDERS WM_USER 7 + ; inline add-windows-message
+: SB_SETMINHEIGHT WM_USER 8 + ; inline add-windows-message
+: SB_SIMPLE WM_USER 9 + ; inline add-windows-message
+: SB_GETRECT WM_USER 10 + ; inline add-windows-message
+: SB_ISSIMPLE WM_USER 14 + ; inline add-windows-message
+: SB_SETICON WM_USER 15 + ; inline add-windows-message
+: SB_SETTIPTEXTA WM_USER 16 + ; inline add-windows-message
+: SB_SETTIPTEXTW WM_USER 17 + ; inline add-windows-message
+: SB_GETTIPTEXTA WM_USER 18 + ; inline add-windows-message
+: SB_GETTIPTEXTW WM_USER 19 + ; inline add-windows-message
+: SB_GETICON WM_USER 20 + ; inline add-windows-message
+: SB_SETUNICODEFORMAT CCM_SETUNICODEFORMAT ; inline add-windows-message
+: SB_GETUNICODEFORMAT CCM_GETUNICODEFORMAT ; inline add-windows-message
+: SB_SETBKCOLOR CCM_SETBKCOLOR ; inline add-windows-message
+: SB_SIMPLEID HEX: 00ff ; inline add-windows-message
+: TBM_GETPOS WM_USER ; inline add-windows-message
+: TBM_GETRANGEMIN WM_USER 1 + ; inline add-windows-message
+: TBM_GETRANGEMAX WM_USER 2 + ; inline add-windows-message
+: TBM_GETTIC WM_USER 3 + ; inline add-windows-message
+: TBM_SETTIC WM_USER 4 + ; inline add-windows-message
+: TBM_SETPOS WM_USER 5 + ; inline add-windows-message
+: TBM_SETRANGE WM_USER 6 + ; inline add-windows-message
+: TBM_SETRANGEMIN WM_USER 7 + ; inline add-windows-message
+: TBM_SETRANGEMAX WM_USER 8 + ; inline add-windows-message
+: TBM_CLEARTICS WM_USER 9 + ; inline add-windows-message
+: TBM_SETSEL WM_USER 10 + ; inline add-windows-message
+: TBM_SETSELSTART WM_USER 11 + ; inline add-windows-message
+: TBM_SETSELEND WM_USER 12 + ; inline add-windows-message
+: TBM_GETPTICS WM_USER 14 + ; inline add-windows-message
+: TBM_GETTICPOS WM_USER 15 + ; inline add-windows-message
+: TBM_GETNUMTICS WM_USER 16 + ; inline add-windows-message
+: TBM_GETSELSTART WM_USER 17 + ; inline add-windows-message
+: TBM_GETSELEND WM_USER 18 + ; inline add-windows-message
+: TBM_CLEARSEL WM_USER 19 + ; inline add-windows-message
+: TBM_SETTICFREQ WM_USER 20 + ; inline add-windows-message
+: TBM_SETPAGESIZE WM_USER 21 + ; inline add-windows-message
+: TBM_GETPAGESIZE WM_USER 22 + ; inline add-windows-message
+: TBM_SETLINESIZE WM_USER 23 + ; inline add-windows-message
+: TBM_GETLINESIZE WM_USER 24 + ; inline add-windows-message
+: TBM_GETTHUMBRECT WM_USER 25 + ; inline add-windows-message
+: TBM_GETCHANNELRECT WM_USER 26 + ; inline add-windows-message
+: TBM_SETTHUMBLENGTH WM_USER 27 + ; inline add-windows-message
+: TBM_GETTHUMBLENGTH WM_USER 28 + ; inline add-windows-message
+: TBM_SETTOOLTIPS WM_USER 29 + ; inline add-windows-message
+: TBM_GETTOOLTIPS WM_USER 30 + ; inline add-windows-message
+: TBM_SETTIPSIDE WM_USER 31 + ; inline add-windows-message
+: TBM_SETBUDDY WM_USER 32 + ; inline add-windows-message
+: TBM_GETBUDDY WM_USER 33 + ; inline add-windows-message
+: TBM_SETUNICODEFORMAT CCM_SETUNICODEFORMAT ; inline add-windows-message
+: TBM_GETUNICODEFORMAT CCM_GETUNICODEFORMAT ; inline add-windows-message
+: DL_BEGINDRAG WM_USER 133 + ; inline add-windows-message
+: DL_DRAGGING WM_USER 134 + ; inline add-windows-message
+: DL_DROPPED WM_USER 135 + ; inline add-windows-message
+: DL_CANCELDRAG WM_USER 136 + ; inline add-windows-message
+: UDM_SETRANGE WM_USER 101 + ; inline add-windows-message
+: UDM_GETRANGE WM_USER 102 + ; inline add-windows-message
+: UDM_SETPOS WM_USER 103 + ; inline add-windows-message
+: UDM_GETPOS WM_USER 104 + ; inline add-windows-message
+: UDM_SETBUDDY WM_USER 105 + ; inline add-windows-message
+: UDM_GETBUDDY WM_USER 106 + ; inline add-windows-message
+: UDM_SETACCEL WM_USER 107 + ; inline add-windows-message
+: UDM_GETACCEL WM_USER 108 + ; inline add-windows-message
+: UDM_SETBASE WM_USER 109 + ; inline add-windows-message
+: UDM_GETBASE WM_USER 110 + ; inline add-windows-message
+: UDM_SETRANGE32 WM_USER 111 + ; inline add-windows-message
+: UDM_GETRANGE32 WM_USER 112 + ; inline add-windows-message
+: UDM_SETUNICODEFORMAT CCM_SETUNICODEFORMAT ; inline add-windows-message
+: UDM_GETUNICODEFORMAT CCM_GETUNICODEFORMAT ; inline add-windows-message
+: UDM_SETPOS32 WM_USER 113 + ; inline add-windows-message
+: UDM_GETPOS32 WM_USER 114 + ; inline add-windows-message
+: PBM_SETRANGE WM_USER 1 + ; inline add-windows-message
+: PBM_SETPOS WM_USER 2 + ; inline add-windows-message
+: PBM_DELTAPOS WM_USER 3 + ; inline add-windows-message
+: PBM_SETSTEP WM_USER 4 + ; inline add-windows-message
+: PBM_STEPIT WM_USER 5 + ; inline add-windows-message
+: PBM_SETRANGE32 WM_USER 6 + ; inline add-windows-message
+: PBM_GETRANGE WM_USER 7 + ; inline add-windows-message
+: PBM_GETPOS WM_USER 8 + ; inline add-windows-message
+: PBM_SETBARCOLOR WM_USER 9 + ; inline add-windows-message
+: PBM_SETBKCOLOR CCM_SETBKCOLOR ; inline add-windows-message
+: HKM_SETHOTKEY WM_USER 1 + ; inline add-windows-message
+: HKM_GETHOTKEY WM_USER 2 + ; inline add-windows-message
+: HKM_SETRULES WM_USER 3 + ; inline add-windows-message
+: LVM_SETUNICODEFORMAT CCM_SETUNICODEFORMAT ; inline add-windows-message
+: LVM_GETUNICODEFORMAT CCM_GETUNICODEFORMAT ; inline add-windows-message
+: LVM_GETBKCOLOR LVM_FIRST 0 + ; inline add-windows-message
+: LVM_SETBKCOLOR LVM_FIRST 1 + ; inline add-windows-message
+: LVM_GETIMAGELIST LVM_FIRST 2 + ; inline add-windows-message
+: LVM_SETIMAGELIST LVM_FIRST 3 + ; inline add-windows-message
+: LVM_GETITEMCOUNT LVM_FIRST 4 + ; inline add-windows-message
+: LVM_GETITEMA LVM_FIRST 5 + ; inline add-windows-message
+: LVM_GETITEMW LVM_FIRST 75 + ; inline add-windows-message
+: LVM_SETITEMA LVM_FIRST 6 + ; inline add-windows-message
+: LVM_SETITEMW LVM_FIRST 76 + ; inline add-windows-message
+: LVM_INSERTITEMA LVM_FIRST 7 + ; inline add-windows-message
+: LVM_INSERTITEMW LVM_FIRST 77 + ; inline add-windows-message
+: LVM_DELETEITEM LVM_FIRST 8 + ; inline add-windows-message
+: LVM_DELETEALLITEMS LVM_FIRST 9 + ; inline add-windows-message
+: LVM_GETCALLBACKMASK LVM_FIRST 10 + ; inline add-windows-message
+: LVM_SETCALLBACKMASK LVM_FIRST 11 + ; inline add-windows-message
+: LVM_FINDITEMA LVM_FIRST 13 + ; inline add-windows-message
+: LVM_FINDITEMW LVM_FIRST 83 + ; inline add-windows-message
+: LVM_GETITEMRECT LVM_FIRST 14 + ; inline add-windows-message
+: LVM_SETITEMPOSITION LVM_FIRST 15 + ; inline add-windows-message
+: LVM_GETITEMPOSITION LVM_FIRST 16 + ; inline add-windows-message
+: LVM_GETSTRINGWIDTHA LVM_FIRST 17 + ; inline add-windows-message
+: LVM_GETSTRINGWIDTHW LVM_FIRST 87 + ; inline add-windows-message
+: LVM_HITTEST LVM_FIRST 18 + ; inline add-windows-message
+: LVM_ENSUREVISIBLE LVM_FIRST 19 + ; inline add-windows-message
+: LVM_SCROLL LVM_FIRST 20 + ; inline add-windows-message
+: LVM_REDRAWITEMS LVM_FIRST 21 + ; inline add-windows-message
+: LVM_ARRANGE LVM_FIRST 22 + ; inline add-windows-message
+: LVM_EDITLABELA LVM_FIRST 23 + ; inline add-windows-message
+: LVM_EDITLABELW LVM_FIRST 118 + ; inline add-windows-message
+: LVM_GETEDITCONTROL LVM_FIRST 24 + ; inline add-windows-message
+: LVM_GETCOLUMNA LVM_FIRST 25 + ; inline add-windows-message
+: LVM_GETCOLUMNW LVM_FIRST 95 + ; inline add-windows-message
+: LVM_SETCOLUMNA LVM_FIRST 26 + ; inline add-windows-message
+: LVM_SETCOLUMNW LVM_FIRST 96 + ; inline add-windows-message
+: LVM_INSERTCOLUMNA LVM_FIRST 27 + ; inline add-windows-message
+: LVM_INSERTCOLUMNW LVM_FIRST 97 + ; inline add-windows-message
+: LVM_DELETECOLUMN LVM_FIRST 28 + ; inline add-windows-message
+: LVM_GETCOLUMNWIDTH LVM_FIRST 29 + ; inline add-windows-message
+: LVM_SETCOLUMNWIDTH LVM_FIRST 30 + ; inline add-windows-message
+: LVM_CREATEDRAGIMAGE LVM_FIRST 33 + ; inline add-windows-message
+: LVM_GETVIEWRECT LVM_FIRST 34 + ; inline add-windows-message
+: LVM_GETTEXTCOLOR LVM_FIRST 35 + ; inline add-windows-message
+: LVM_SETTEXTCOLOR LVM_FIRST 36 + ; inline add-windows-message
+: LVM_GETTEXTBKCOLOR LVM_FIRST 37 + ; inline add-windows-message
+: LVM_SETTEXTBKCOLOR LVM_FIRST 38 + ; inline add-windows-message
+: LVM_GETTOPINDEX LVM_FIRST 39 + ; inline add-windows-message
+: LVM_GETCOUNTPERPAGE LVM_FIRST 40 + ; inline add-windows-message
+: LVM_GETORIGIN LVM_FIRST 41 + ; inline add-windows-message
+: LVM_UPDATE LVM_FIRST 42 + ; inline add-windows-message
+: LVM_SETITEMSTATE LVM_FIRST 43 + ; inline add-windows-message
+: LVM_GETITEMSTATE LVM_FIRST 44 + ; inline add-windows-message
+: LVM_GETITEMTEXTA LVM_FIRST 45 + ; inline add-windows-message
+: LVM_GETITEMTEXTW LVM_FIRST 115 + ; inline add-windows-message
+: LVM_SETITEMTEXTA LVM_FIRST 46 + ; inline add-windows-message
+: LVM_SETITEMTEXTW LVM_FIRST 116 + ; inline add-windows-message
+: LVM_SETITEMCOUNT LVM_FIRST 47 + ; inline add-windows-message
+: LVM_SORTITEMS LVM_FIRST 48 + ; inline add-windows-message
+: LVM_SETITEMPOSITION32 LVM_FIRST 49 + ; inline add-windows-message
+: LVM_GETSELECTEDCOUNT LVM_FIRST 50 + ; inline add-windows-message
+: LVM_GETITEMSPACING LVM_FIRST 51 + ; inline add-windows-message
+: LVM_GETISEARCHSTRINGA LVM_FIRST 52 + ; inline add-windows-message
+: LVM_GETISEARCHSTRINGW LVM_FIRST 117 + ; inline add-windows-message
+: LVM_SETICONSPACING LVM_FIRST 53 + ; inline add-windows-message
+: LVM_SETEXTENDEDLISTVIEWSTYLE LVM_FIRST 54 + ; inline add-windows-message
+: LVM_GETEXTENDEDLISTVIEWSTYLE LVM_FIRST 55 + ; inline add-windows-message
+: LVM_GETSUBITEMRECT LVM_FIRST 56 + ; inline add-windows-message
+: LVM_SUBITEMHITTEST LVM_FIRST 57 + ; inline add-windows-message
+: LVM_SETCOLUMNORDERARRAY LVM_FIRST 58 + ; inline add-windows-message
+: LVM_GETCOLUMNORDERARRAY LVM_FIRST 59 + ; inline add-windows-message
+: LVM_SETHOTITEM LVM_FIRST 60 + ; inline add-windows-message
+: LVM_GETHOTITEM LVM_FIRST 61 + ; inline add-windows-message
+: LVM_SETHOTCURSOR LVM_FIRST 62 + ; inline add-windows-message
+: LVM_GETHOTCURSOR LVM_FIRST 63 + ; inline add-windows-message
+: LVM_APPROXIMATEVIEWRECT LVM_FIRST 64 + ; inline add-windows-message
+: LVM_SETWORKAREAS LVM_FIRST 65 + ; inline add-windows-message
+: LVM_GETWORKAREAS LVM_FIRST 70 + ; inline add-windows-message
+: LVM_GETNUMBEROFWORKAREAS LVM_FIRST 73 + ; inline add-windows-message
+: LVM_GETSELECTIONMARK LVM_FIRST 66 + ; inline add-windows-message
+: LVM_SETSELECTIONMARK LVM_FIRST 67 + ; inline add-windows-message
+: LVM_SETHOVERTIME LVM_FIRST 71 + ; inline add-windows-message
+: LVM_GETHOVERTIME LVM_FIRST 72 + ; inline add-windows-message
+: LVM_SETTOOLTIPS LVM_FIRST 74 + ; inline add-windows-message
+: LVM_GETTOOLTIPS LVM_FIRST 78 + ; inline add-windows-message
+: LVM_SORTITEMSEX LVM_FIRST 81 + ; inline add-windows-message
+: LVM_SETBKIMAGEA LVM_FIRST 68 + ; inline add-windows-message
+: LVM_SETBKIMAGEW LVM_FIRST 138 + ; inline add-windows-message
+: LVM_GETBKIMAGEA LVM_FIRST 69 + ; inline add-windows-message
+: LVM_GETBKIMAGEW LVM_FIRST 139 + ; inline add-windows-message
+: LVM_SETSELECTEDCOLUMN LVM_FIRST 140 + ; inline add-windows-message
+: LVM_SETTILEWIDTH LVM_FIRST 141 + ; inline add-windows-message
+: LVM_SETVIEW LVM_FIRST 142 + ; inline add-windows-message
+: LVM_GETVIEW LVM_FIRST 143 + ; inline add-windows-message
+: LVM_INSERTGROUP LVM_FIRST 145 + ; inline add-windows-message
+: LVM_SETGROUPINFO LVM_FIRST 147 + ; inline add-windows-message
+: LVM_GETGROUPINFO LVM_FIRST 149 + ; inline add-windows-message
+: LVM_REMOVEGROUP LVM_FIRST 150 + ; inline add-windows-message
+: LVM_MOVEGROUP LVM_FIRST 151 + ; inline add-windows-message
+: LVM_MOVEITEMTOGROUP LVM_FIRST 154 + ; inline add-windows-message
+: LVM_SETGROUPMETRICS LVM_FIRST 155 + ; inline add-windows-message
+: LVM_GETGROUPMETRICS LVM_FIRST 156 + ; inline add-windows-message
+: LVM_ENABLEGROUPVIEW LVM_FIRST 157 + ; inline add-windows-message
+: LVM_SORTGROUPS LVM_FIRST 158 + ; inline add-windows-message
+: LVM_INSERTGROUPSORTED LVM_FIRST 159 + ; inline add-windows-message
+: LVM_REMOVEALLGROUPS LVM_FIRST 160 + ; inline add-windows-message
+: LVM_HASGROUP LVM_FIRST 161 + ; inline add-windows-message
+: LVM_SETTILEVIEWINFO LVM_FIRST 162 + ; inline add-windows-message
+: LVM_GETTILEVIEWINFO LVM_FIRST 163 + ; inline add-windows-message
+: LVM_SETTILEINFO LVM_FIRST 164 + ; inline add-windows-message
+: LVM_GETTILEINFO LVM_FIRST 165 + ; inline add-windows-message
+: LVM_SETINSERTMARK LVM_FIRST 166 + ; inline add-windows-message
+: LVM_GETINSERTMARK LVM_FIRST 167 + ; inline add-windows-message
+: LVM_INSERTMARKHITTEST LVM_FIRST 168 + ; inline add-windows-message
+: LVM_GETINSERTMARKRECT LVM_FIRST 169 + ; inline add-windows-message
+: LVM_SETINSERTMARKCOLOR LVM_FIRST 170 + ; inline add-windows-message
+: LVM_GETINSERTMARKCOLOR LVM_FIRST 171 + ; inline add-windows-message
+: LVM_SETINFOTIP LVM_FIRST 173 + ; inline add-windows-message
+: LVM_GETSELECTEDCOLUMN LVM_FIRST 174 + ; inline add-windows-message
+: LVM_ISGROUPVIEWENABLED LVM_FIRST 175 + ; inline add-windows-message
+: LVM_GETOUTLINECOLOR LVM_FIRST 176 + ; inline add-windows-message
+: LVM_SETOUTLINECOLOR LVM_FIRST 177 + ; inline add-windows-message
+: LVM_CANCELEDITLABEL LVM_FIRST 179 + ; inline add-windows-message
+: LVM_MAPINDEXTOID LVM_FIRST 180 + ; inline add-windows-message
+: LVM_MAPIDTOINDEX LVM_FIRST 181 + ; inline add-windows-message
+: TVM_INSERTITEMA TV_FIRST 0 + ; inline add-windows-message
+: TVM_INSERTITEMW TV_FIRST 50 + ; inline add-windows-message
+: TVM_DELETEITEM TV_FIRST 1 + ; inline add-windows-message
+: TVM_EXPAND TV_FIRST 2 + ; inline add-windows-message
+: TVM_GETITEMRECT TV_FIRST 4 + ; inline add-windows-message
+: TVM_GETCOUNT TV_FIRST 5 + ; inline add-windows-message
+: TVM_GETINDENT TV_FIRST 6 + ; inline add-windows-message
+: TVM_SETINDENT TV_FIRST 7 + ; inline add-windows-message
+: TVM_GETIMAGELIST TV_FIRST 8 + ; inline add-windows-message
+: TVM_SETIMAGELIST TV_FIRST 9 + ; inline add-windows-message
+: TVM_GETNEXTITEM TV_FIRST 10 + ; inline add-windows-message
+: TVM_SELECTITEM TV_FIRST 11 + ; inline add-windows-message
+: TVM_GETITEMA TV_FIRST 12 + ; inline add-windows-message
+: TVM_GETITEMW TV_FIRST 62 + ; inline add-windows-message
+: TVM_SETITEMA TV_FIRST 13 + ; inline add-windows-message
+: TVM_SETITEMW TV_FIRST 63 + ; inline add-windows-message
+: TVM_EDITLABELA TV_FIRST 14 + ; inline add-windows-message
+: TVM_EDITLABELW TV_FIRST 65 + ; inline add-windows-message
+: TVM_GETEDITCONTROL TV_FIRST 15 + ; inline add-windows-message
+: TVM_GETVISIBLECOUNT TV_FIRST 16 + ; inline add-windows-message
+: TVM_HITTEST TV_FIRST 17 + ; inline add-windows-message
+: TVM_CREATEDRAGIMAGE TV_FIRST 18 + ; inline add-windows-message
+: TVM_SORTCHILDREN TV_FIRST 19 + ; inline add-windows-message
+: TVM_ENSUREVISIBLE TV_FIRST 20 + ; inline add-windows-message
+: TVM_SORTCHILDRENCB TV_FIRST 21 + ; inline add-windows-message
+: TVM_ENDEDITLABELNOW TV_FIRST 22 + ; inline add-windows-message
+: TVM_GETISEARCHSTRINGA TV_FIRST 23 + ; inline add-windows-message
+: TVM_GETISEARCHSTRINGW TV_FIRST 64 + ; inline add-windows-message
+: TVM_SETTOOLTIPS TV_FIRST 24 + ; inline add-windows-message
+: TVM_GETTOOLTIPS TV_FIRST 25 + ; inline add-windows-message
+: TVM_SETINSERTMARK TV_FIRST 26 + ; inline add-windows-message
+: TVM_SETUNICODEFORMAT CCM_SETUNICODEFORMAT ; inline add-windows-message
+: TVM_GETUNICODEFORMAT CCM_GETUNICODEFORMAT ; inline add-windows-message
+: TVM_SETITEMHEIGHT TV_FIRST 27 + ; inline add-windows-message
+: TVM_GETITEMHEIGHT TV_FIRST 28 + ; inline add-windows-message
+: TVM_SETBKCOLOR TV_FIRST 29 + ; inline add-windows-message
+: TVM_SETTEXTCOLOR TV_FIRST 30 + ; inline add-windows-message
+: TVM_GETBKCOLOR TV_FIRST 31 + ; inline add-windows-message
+: TVM_GETTEXTCOLOR TV_FIRST 32 + ; inline add-windows-message
+: TVM_SETSCROLLTIME TV_FIRST 33 + ; inline add-windows-message
+: TVM_GETSCROLLTIME TV_FIRST 34 + ; inline add-windows-message
+: TVM_SETINSERTMARKCOLOR TV_FIRST 37 + ; inline add-windows-message
+: TVM_GETINSERTMARKCOLOR TV_FIRST 38 + ; inline add-windows-message
+: TVM_GETITEMSTATE TV_FIRST 39 + ; inline add-windows-message
+: TVM_SETLINECOLOR TV_FIRST 40 + ; inline add-windows-message
+: TVM_GETLINECOLOR TV_FIRST 41 + ; inline add-windows-message
+: TVM_MAPACCIDTOHTREEITEM TV_FIRST 42 + ; inline add-windows-message
+: TVM_MAPHTREEITEMTOACCID TV_FIRST 43 + ; inline add-windows-message
+: CBEM_INSERTITEMA WM_USER 1 + ; inline add-windows-message
+: CBEM_SETIMAGELIST WM_USER 2 + ; inline add-windows-message
+: CBEM_GETIMAGELIST WM_USER 3 + ; inline add-windows-message
+: CBEM_GETITEMA WM_USER 4 + ; inline add-windows-message
+: CBEM_SETITEMA WM_USER 5 + ; inline add-windows-message
+: CBEM_DELETEITEM CB_DELETESTRING ; inline add-windows-message
+: CBEM_GETCOMBOCONTROL WM_USER 6 + ; inline add-windows-message
+: CBEM_GETEDITCONTROL WM_USER 7 + ; inline add-windows-message
+: CBEM_SETEXTENDEDSTYLE WM_USER 14 + ; inline add-windows-message
+: CBEM_GETEXTENDEDSTYLE WM_USER 9 + ; inline add-windows-message
+: CBEM_SETUNICODEFORMAT CCM_SETUNICODEFORMAT ; inline add-windows-message
+: CBEM_GETUNICODEFORMAT CCM_GETUNICODEFORMAT ; inline add-windows-message
+: CBEM_SETEXSTYLE WM_USER 8 + ; inline add-windows-message
+: CBEM_GETEXSTYLE WM_USER 9 + ; inline add-windows-message
+: CBEM_HASEDITCHANGED WM_USER 10 + ; inline add-windows-message
+: CBEM_INSERTITEMW WM_USER 11 + ; inline add-windows-message
+: CBEM_SETITEMW WM_USER 12 + ; inline add-windows-message
+: CBEM_GETITEMW WM_USER 13 + ; inline add-windows-message
+: TCM_GETIMAGELIST TCM_FIRST 2 + ; inline add-windows-message
+: TCM_SETIMAGELIST TCM_FIRST 3 + ; inline add-windows-message
+: TCM_GETITEMCOUNT TCM_FIRST 4 + ; inline add-windows-message
+: TCM_GETITEMA TCM_FIRST 5 + ; inline add-windows-message
+: TCM_GETITEMW TCM_FIRST 60 + ; inline add-windows-message
+: TCM_SETITEMA TCM_FIRST 6 + ; inline add-windows-message
+: TCM_SETITEMW TCM_FIRST 61 + ; inline add-windows-message
+: TCM_INSERTITEMA TCM_FIRST 7 + ; inline add-windows-message
+: TCM_INSERTITEMW TCM_FIRST 62 + ; inline add-windows-message
+: TCM_DELETEITEM TCM_FIRST 8 + ; inline add-windows-message
+: TCM_DELETEALLITEMS TCM_FIRST 9 + ; inline add-windows-message
+: TCM_GETITEMRECT TCM_FIRST 10 + ; inline add-windows-message
+: TCM_GETCURSEL TCM_FIRST 11 + ; inline add-windows-message
+: TCM_SETCURSEL TCM_FIRST 12 + ; inline add-windows-message
+: TCM_HITTEST TCM_FIRST 13 + ; inline add-windows-message
+: TCM_SETITEMEXTRA TCM_FIRST 14 + ; inline add-windows-message
+: TCM_ADJUSTRECT TCM_FIRST 40 + ; inline add-windows-message
+: TCM_SETITEMSIZE TCM_FIRST 41 + ; inline add-windows-message
+: TCM_REMOVEIMAGE TCM_FIRST 42 + ; inline add-windows-message
+: TCM_SETPADDING TCM_FIRST 43 + ; inline add-windows-message
+: TCM_GETROWCOUNT TCM_FIRST 44 + ; inline add-windows-message
+: TCM_GETTOOLTIPS TCM_FIRST 45 + ; inline add-windows-message
+: TCM_SETTOOLTIPS TCM_FIRST 46 + ; inline add-windows-message
+: TCM_GETCURFOCUS TCM_FIRST 47 + ; inline add-windows-message
+: TCM_SETCURFOCUS TCM_FIRST 48 + ; inline add-windows-message
+: TCM_SETMINTABWIDTH TCM_FIRST 49 + ; inline add-windows-message
+: TCM_DESELECTALL TCM_FIRST 50 + ; inline add-windows-message
+: TCM_HIGHLIGHTITEM TCM_FIRST 51 + ; inline add-windows-message
+: TCM_SETEXTENDEDSTYLE TCM_FIRST 52 + ; inline add-windows-message
+: TCM_GETEXTENDEDSTYLE TCM_FIRST 53 + ; inline add-windows-message
+: TCM_SETUNICODEFORMAT CCM_SETUNICODEFORMAT ; inline add-windows-message
+: TCM_GETUNICODEFORMAT CCM_GETUNICODEFORMAT ; inline add-windows-message
+: ACM_OPENA WM_USER 100 + ; inline add-windows-message
+: ACM_OPENW WM_USER 103 + ; inline add-windows-message
+: ACM_PLAY WM_USER 101 + ; inline add-windows-message
+: ACM_STOP WM_USER 102 + ; inline add-windows-message
+: MCM_FIRST HEX: 1000 ; inline add-windows-message
+: MCM_GETCURSEL MCM_FIRST 1 + ; inline add-windows-message
+: MCM_SETCURSEL MCM_FIRST 2 + ; inline add-windows-message
+: MCM_GETMAXSELCOUNT MCM_FIRST 3 + ; inline add-windows-message
+: MCM_SETMAXSELCOUNT MCM_FIRST 4 + ; inline add-windows-message
+: MCM_GETSELRANGE MCM_FIRST 5 + ; inline add-windows-message
+: MCM_SETSELRANGE MCM_FIRST 6 + ; inline add-windows-message
+: MCM_GETMONTHRANGE MCM_FIRST 7 + ; inline add-windows-message
+: MCM_SETDAYSTATE MCM_FIRST 8 + ; inline add-windows-message
+: MCM_GETMINREQRECT MCM_FIRST 9 + ; inline add-windows-message
+: MCM_SETCOLOR MCM_FIRST 10 + ; inline add-windows-message
+: MCM_GETCOLOR MCM_FIRST 11 + ; inline add-windows-message
+: MCM_SETTODAY MCM_FIRST 12 + ; inline add-windows-message
+: MCM_GETTODAY MCM_FIRST 13 + ; inline add-windows-message
+: MCM_HITTEST MCM_FIRST 14 + ; inline add-windows-message
+: MCM_SETFIRSTDAYOFWEEK MCM_FIRST 15 + ; inline add-windows-message
+: MCM_GETFIRSTDAYOFWEEK MCM_FIRST 16 + ; inline add-windows-message
+: MCM_GETRANGE MCM_FIRST 17 + ; inline add-windows-message
+: MCM_SETRANGE MCM_FIRST 18 + ; inline add-windows-message
+: MCM_GETMONTHDELTA MCM_FIRST 19 + ; inline add-windows-message
+: MCM_SETMONTHDELTA MCM_FIRST 20 + ; inline add-windows-message
+: MCM_GETMAXTODAYWIDTH MCM_FIRST 21 + ; inline add-windows-message
+: MCM_SETUNICODEFORMAT CCM_SETUNICODEFORMAT ; inline add-windows-message
+: MCM_GETUNICODEFORMAT CCM_GETUNICODEFORMAT ; inline add-windows-message
+: DTM_FIRST HEX: 1000 ; inline add-windows-message
+: DTM_GETSYSTEMTIME DTM_FIRST 1 + ; inline add-windows-message
+: DTM_SETSYSTEMTIME DTM_FIRST 2 + ; inline add-windows-message
+: DTM_GETRANGE DTM_FIRST 3 + ; inline add-windows-message
+: DTM_SETRANGE DTM_FIRST 4 + ; inline add-windows-message
+: DTM_SETFORMATA DTM_FIRST 5 + ; inline add-windows-message
+: DTM_SETFORMATW DTM_FIRST 50 + ; inline add-windows-message
+: DTM_SETMCCOLOR DTM_FIRST 6 + ; inline add-windows-message
+: DTM_GETMCCOLOR DTM_FIRST 7 + ; inline add-windows-message
+: DTM_GETMONTHCAL DTM_FIRST 8 + ; inline add-windows-message
+: DTM_SETMCFONT DTM_FIRST 9 + ; inline add-windows-message
+: DTM_GETMCFONT DTM_FIRST 10 + ; inline add-windows-message
+: PGM_SETCHILD PGM_FIRST 1 + ; inline add-windows-message
+: PGM_RECALCSIZE PGM_FIRST 2 + ; inline add-windows-message
+: PGM_FORWARDMOUSE PGM_FIRST 3 + ; inline add-windows-message
+: PGM_SETBKCOLOR PGM_FIRST 4 + ; inline add-windows-message
+: PGM_GETBKCOLOR PGM_FIRST 5 + ; inline add-windows-message
+: PGM_SETBORDER PGM_FIRST 6 + ; inline add-windows-message
+: PGM_GETBORDER PGM_FIRST 7 + ; inline add-windows-message
+: PGM_SETPOS PGM_FIRST 8 + ; inline add-windows-message
+: PGM_GETPOS PGM_FIRST 9 + ; inline add-windows-message
+: PGM_SETBUTTONSIZE PGM_FIRST 10 + ; inline add-windows-message
+: PGM_GETBUTTONSIZE PGM_FIRST 11 + ; inline add-windows-message
+: PGM_GETBUTTONSTATE PGM_FIRST 12 + ; inline add-windows-message
+: PGM_GETDROPTARGET CCM_GETDROPTARGET ; inline add-windows-message
+: BCM_GETIDEALSIZE BCM_FIRST 1 + ; inline add-windows-message
+: BCM_SETIMAGELIST BCM_FIRST 2 + ; inline add-windows-message
+: BCM_GETIMAGELIST BCM_FIRST 3 + ; inline add-windows-message
+: BCM_SETTEXTMARGIN BCM_FIRST 4 + ; inline add-windows-message
+: BCM_GETTEXTMARGIN BCM_FIRST 5 + ; inline add-windows-message
+: EM_SETCUEBANNER ECM_FIRST 1 + ; inline add-windows-message
+: EM_GETCUEBANNER ECM_FIRST 2 + ; inline add-windows-message
+: EM_SHOWBALLOONTIP ECM_FIRST 3 + ; inline add-windows-message
+: EM_HIDEBALLOONTIP ECM_FIRST 4 + ; inline add-windows-message
+: CB_SETMINVISIBLE CBM_FIRST 1 + ; inline add-windows-message
+: CB_GETMINVISIBLE CBM_FIRST 2 + ; inline add-windows-message
+: LM_HITTEST WM_USER HEX: 0300 + ; inline add-windows-message
+: LM_GETIDEALHEIGHT WM_USER HEX: 0301 + ; inline add-windows-message
+: LM_SETITEM WM_USER HEX: 0302 + ; inline add-windows-message
+: LM_GETITEM WM_USER HEX: 0303 + ; inline add-windows-message