From 66c4e51bcf74c14b6760051cf00bcfacfa28593b Mon Sep 17 00:00:00 2001 From: erg Date: Tue, 25 Jul 2006 14:04:14 +0000 Subject: [PATCH] ran dos2unix on win32 files --- library/io/windows/load.factor | 48 +- library/ui/windows/clipboard.factor | 94 +- library/ui/windows/gdi32.factor | 72 +- library/ui/windows/kernel32.factor | 122 +- library/ui/windows/load.factor | 54 +- library/ui/windows/opengl32.factor | 204 +- library/ui/windows/types.factor | 734 +++--- library/ui/windows/ui.factor | 650 ++--- library/ui/windows/user32.factor | 2748 ++++++++++---------- library/ui/windows/utils.factor | 32 +- library/ui/windows/windows-messages.factor | 2010 +++++++------- 11 files changed, 3384 insertions(+), 3384 deletions(-) diff --git a/library/io/windows/load.factor b/library/io/windows/load.factor index d4eda1c9ab..ae19852dd8 100644 --- a/library/io/windows/load.factor +++ b/library/io/windows/load.factor @@ -1,24 +1,24 @@ -IN: scratchpad -USING: alien compiler kernel namespaces parser sequences words ; - -{ - { "gdi32" "gdi32" } - { "user32" "user32" } - { "kernel32" "kernel32" } - { "winsock" "ws2_32" } - { "mswsock" "mswsock" } -} [ first2 add-simple-library ] each -"libc" "msvcrt.dll" "cdecl" add-library - -{ - "io" - "errors" - "winsock" - "io-internals" - "stream" - "server" - "io-last" -} [ "/library/io/windows/" swap ".factor" append3 run-resource ] each - -IN: kernel -: default-shell "ui" ; +IN: scratchpad +USING: alien compiler kernel namespaces parser sequences words ; + +{ + { "gdi32" "gdi32" } + { "user32" "user32" } + { "kernel32" "kernel32" } + { "winsock" "ws2_32" } + { "mswsock" "mswsock" } +} [ first2 add-simple-library ] each +"libc" "msvcrt.dll" "cdecl" add-library + +{ + "io" + "errors" + "winsock" + "io-internals" + "stream" + "server" + "io-last" +} [ "/library/io/windows/" swap ".factor" append3 run-resource ] each + +IN: kernel +: default-shell "ui" ; diff --git a/library/ui/windows/clipboard.factor b/library/ui/windows/clipboard.factor index 5c71320d53..ea81e65c68 100644 --- a/library/ui/windows/clipboard.factor +++ b/library/ui/windows/clipboard.factor @@ -1,47 +1,47 @@ -! Copyright (C) 2006 Doug Coleman. -! See http://factorcode.org/license.txt for BSD license. -USING: kernel win32-api math namespaces io prettyprint errors sequences alien - libc gadgets ; -IN: win32 - -: (enum-clipboard) ( n -- ) - EnumClipboardFormats win32-error dup 0 > [ dup , (enum-clipboard) ] when ; - -: enum-clipboard ( -- seq ) - [ 0 (enum-clipboard) ] { } make nip ; - -: paste ( -- str ) - f OpenClipboard drop - CF_TEXT IsClipboardFormatAvailable 0 = [ - "no text in clipboard" print - ] [ - ! "text found" print - CF_TEXT GetClipboardData - dup GlobalLock swap - GlobalUnlock drop - ] if - CloseClipboard drop alien>char-string ; - -: copy ( str -- ) - f OpenClipboard drop - EmptyClipboard drop - GMEM_MOVEABLE over length 1+ GlobalAlloc dup 0 = [ - "unable to allocate memory" throw - ] when - - dup GlobalLock - rot dup length memcpy - dup GlobalUnlock drop - CF_TEXT swap SetClipboardData 0 = [ - win32-error - "SetClipboardData failed" throw - ] when - - CloseClipboard drop ; - -TUPLE: pasteboard ; -M: pasteboard clipboard-contents ( pb -- str ) drop paste ; -M: pasteboard set-clipboard-contents ( str pb -- ) drop copy ; - -: init-clipboard ( -- ) - clipboard set-global ; +! Copyright (C) 2006 Doug Coleman. +! See http://factorcode.org/license.txt for BSD license. +USING: kernel win32-api math namespaces io prettyprint errors sequences alien + libc gadgets ; +IN: win32 + +: (enum-clipboard) ( n -- ) + EnumClipboardFormats win32-error dup 0 > [ dup , (enum-clipboard) ] when ; + +: enum-clipboard ( -- seq ) + [ 0 (enum-clipboard) ] { } make nip ; + +: paste ( -- str ) + f OpenClipboard drop + CF_TEXT IsClipboardFormatAvailable 0 = [ + "no text in clipboard" print + ] [ + ! "text found" print + CF_TEXT GetClipboardData + dup GlobalLock swap + GlobalUnlock drop + ] if + CloseClipboard drop alien>char-string ; + +: copy ( str -- ) + f OpenClipboard drop + EmptyClipboard drop + GMEM_MOVEABLE over length 1+ GlobalAlloc dup 0 = [ + "unable to allocate memory" throw + ] when + + dup GlobalLock + rot dup length memcpy + dup GlobalUnlock drop + CF_TEXT swap SetClipboardData 0 = [ + win32-error + "SetClipboardData failed" throw + ] when + + CloseClipboard drop ; + +TUPLE: pasteboard ; +M: pasteboard clipboard-contents ( pb -- str ) drop paste ; +M: pasteboard set-clipboard-contents ( str pb -- ) drop copy ; + +: init-clipboard ( -- ) + clipboard set-global ; diff --git a/library/ui/windows/gdi32.factor b/library/ui/windows/gdi32.factor index e3a24d0c41..07b67a6214 100644 --- a/library/ui/windows/gdi32.factor +++ b/library/ui/windows/gdi32.factor @@ -1,36 +1,36 @@ -! 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 ) ; - - +! 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 ) ; + + diff --git a/library/ui/windows/kernel32.factor b/library/ui/windows/kernel32.factor index 9f0904c505..a643034635 100644 --- a/library/ui/windows/kernel32.factor +++ b/library/ui/windows/kernel32.factor @@ -1,61 +1,61 @@ -! 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 ( char* lpModulename ) ; -FUNCTION: HMODULE GetModuleHandleW ( char* 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 ) ; - - +! 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 ( char* lpModulename ) ; +FUNCTION: HMODULE GetModuleHandleW ( char* 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 ) ; + + diff --git a/library/ui/windows/load.factor b/library/ui/windows/load.factor index 2717bf373a..9da031b491 100644 --- a/library/ui/windows/load.factor +++ b/library/ui/windows/load.factor @@ -1,27 +1,27 @@ -IN: scratchpad -USING: alien compiler kernel namespaces parser sequences words ; - -{ - { "gdi32" "gdi32" } - { "user32" "user32" } - { "kernel32" "kernel32" } - { "winsock" "ws2_32" } - { "mswsock" "mswsock" } -} [ first2 add-simple-library ] each -"libc" "msvcrt.dll" "cdecl" add-library - -{ - "windows-messages" - "types" - "gdi32" - "kernel32" - "user32" - "opengl32" - "utils" - "ui" - "clipboard" - -} [ "/library/ui/windows/" swap ".factor" append3 run-resource ] each - -IN: kernel -: default-shell "tty" ; +IN: scratchpad +USING: alien compiler kernel namespaces parser sequences words ; + +{ + { "gdi32" "gdi32" } + { "user32" "user32" } + { "kernel32" "kernel32" } + { "winsock" "ws2_32" } + { "mswsock" "mswsock" } +} [ first2 add-simple-library ] each +"libc" "msvcrt.dll" "cdecl" add-library + +{ + "windows-messages" + "types" + "gdi32" + "kernel32" + "user32" + "opengl32" + "utils" + "ui" + "clipboard" + +} [ "/library/ui/windows/" swap ".factor" append3 run-resource ] each + +IN: kernel +: default-shell "tty" ; diff --git a/library/ui/windows/opengl32.factor b/library/ui/windows/opengl32.factor index 3e9c423c62..ecbfad522d 100644 --- a/library/ui/windows/opengl32.factor +++ b/library/ui/windows/opengl32.factor @@ -1,102 +1,102 @@ -! 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" - "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 ) ; - - +! 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" + "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 ) ; + + diff --git a/library/ui/windows/types.factor b/library/ui/windows/types.factor index 4722057df3..5cc00bd1fd 100644 --- a/library/ui/windows/types.factor +++ b/library/ui/windows/types.factor @@ -1,367 +1,367 @@ -! 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: 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 +! 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: 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 diff --git a/library/ui/windows/ui.factor b/library/ui/windows/ui.factor index 2a979ec9f9..b4c8d4645f 100644 --- a/library/ui/windows/ui.factor +++ b/library/ui/windows/ui.factor @@ -1,325 +1,325 @@ -! Copyright (C) 2005, 2006 Doug Coleman. -! See http://factorcode.org/license.txt for BSD license. -USING: alien arrays errors freetype gadgets gadgets-launchpad - gadgets-listener hashtables io kernel math namespaces prettyprint - sequences strings vectors words win32-api win32-api-messages ; -USING: inspector threads memory ; -IN: win32 - -! world-handle is a -TUPLE: win hWnd hDC hRC world ; - -SYMBOL: msg-obj -SYMBOL: class-name - -: random-class-name "Factor" 100000000 random-int unparse append ; - -: style ( -- n ) WS_OVERLAPPEDWINDOW ; inline -: ex-style ( -- n ) WS_EX_APPWINDOW WS_EX_WINDOWEDGE bitor ; inline - -: adjust-RECT ( RECT -- ) - style 0 ex-style AdjustWindowRectEx win32-error=0 ; - -: make-RECT ( width height -- RECT ) - "RECT" [ set-RECT-bottom ] keep [ set-RECT-right ] keep ; - -: make-adjusted-RECT ( width height -- RECT ) - make-RECT dup adjust-RECT ; - - -: get-RECT-dimensions ( RECT -- width height ) - [ RECT-right ] keep [ RECT-left - ] keep - [ RECT-bottom ] keep RECT-top - ; - -: handle-wm-paint ( hWnd uMsg wParam lParam -- ) - #! wParam and lParam are unused - #! only paint if width/height both > 0 - 3drop window dup rect-dim first2 [ 0 > ] 2apply and [ draw-world ] when ; - -: handle-wm-size ( hWnd uMsg wParam lParam -- ) - [ lo-word ] keep hi-word make-RECT get-RECT-dimensions 2array - 2nip - dup { 0 0 } = [ 2drop ] [ swap window set-gadget-dim ] if ; - -: wm-keydown-codes ( n -- key ) - H{ - { 8 "BACKSPACE" } - { 9 "TAB" } - { 13 "RETURN" } - { 27 "ESCAPE" } - { 33 "PAGE_UP" } - { 34 "PAGE_DOWN" } - { 35 "END" } - { 36 "HOME" } - { 37 "LEFT" } - { 38 "UP" } - { 39 "RIGHT" } - { 40 "DOWN" } - { 45 "INSERT" } - { 46 "DELETE" } - } ; - -: key-state-down? - GetKeyState 1 16 shift bitand 0 > ; - -: left-shift? ( -- ? ) VK_LSHIFT key-state-down? ; -: left-ctrl? ( -- ? ) VK_LCONTROL key-state-down? ; -: left-alt? ( -- ? ) VK_LMENU key-state-down? ; -: right-shift? ( -- ? ) VK_RSHIFT key-state-down? ; -: right-ctrl? ( -- ? ) VK_RCONTROL key-state-down? ; -: right-alt? ( -- ? ) VK_RMENU key-state-down? ; -: shift? ( -- ? ) left-shift? right-shift? or ; -: ctrl? ( -- ? ) left-ctrl? right-ctrl? or ; -: alt? ( -- ? ) left-alt? right-alt? or ; -: caps-lock? ( -- ? ) VK_CAPITAL GetKeyState zero? not ; -: lower-case? ( -- ? ) shift? caps-lock? and caps-lock? not shift? not and or ; - -: key-modifiers ( -- list ) - [ - shift? [ S+ , ] when - ctrl? [ C+ , ] when - alt? [ A+ , ] when - ] { } make [ empty? not ] keep f ? ; - -: exclude-keys - H{ - ! { 8 "BACKSPACE" } - ! { 9 "TAB" } - { 16 "SHIFT" } - { 17 "CTRL" } - { 18 "ALT" } - { 20 "CAPS-LOCK" } - { 27 "ESCAPE" } - } ; - -: exclude-key? ( n -- bool ) exclude-keys hash* nip ; -: handle-key? ( n -- bool ) wm-keydown-codes hash* nip ; - -: keystroke>gesture ( n -- ) - dup wm-keydown-codes hash* [ nip ] [ drop ch>string lower-case? [ >lower ] when ] if - key-modifiers swap ; - -SYMBOL: lParam -SYMBOL: wParam -SYMBOL: uMsg -SYMBOL: hWnd - -: get-focus ( hWnd -- gadget ) - window world-focus ; - -: handle-wm-keydown ( hWnd uMsg wParam lParam -- ) - lParam set wParam set uMsg set hWnd set - wParam get exclude-key? [ - wParam get keystroke>gesture - hWnd get get-focus handle-gesture [ - wParam get ch>string lower-case? [ >lower ] when - hWnd get get-focus user-input - ] when - ] unless ; - -: handle-wm-keyup ( hWnd uMsg wParam lParam -- ) - lParam set wParam set uMsg set hWnd set - wParam get keystroke>gesture hWnd get get-focus handle-gesture - drop ; - -: cleanup-window ( handle -- ) - [ win-hRC wglDeleteContext win32-error=0 ] keep - [ win-hWnd ] keep win-hDC ReleaseDC win32-error=0 ; - -: handle-wm-destroy ( hWnd uMsg wParam lParam -- ) - 3drop - window [ world-handle ] keep - [ close-world ] keep - [ drop win-hWnd unregister-window ] 2keep - drop cleanup-window - 0 PostQuitMessage ; - -: handle-wm-set-focus ( hWnd uMsg wParam lParam -- ) - 3drop window focus-world ; - -: handle-wm-kill-focus ( hWnd uMsg wParam lParam -- ) - 3drop window unfocus-world ; - -: mouse-button ( uMsg -- n ) - { - { [ dup WM_LBUTTONDOWN = ] [ drop 1 ] } - { [ dup WM_LBUTTONUP = ] [ drop 1 ] } - { [ dup WM_MBUTTONDOWN = ] [ drop 2 ] } - { [ dup WM_MBUTTONUP = ] [ drop 2 ] } - { [ dup WM_RBUTTONDOWN = ] [ drop 3 ] } - { [ dup WM_RBUTTONUP = ] [ drop 3 ] } - { [ t ] [ "bad button" throw ] } - } cond ; - -: mouse-coordinate ( lParam -- seq ) [ lo-word ] keep hi-word 2array ; -: mouse-wheel ( lParam -- n ) hi-word 0 > 1 -1 ? ; - -: prepare-mouse ( hWnd uMsg wParam lParam -- world ) - nip >r mouse-button r> mouse-coordinate rot window ; - -: handle-wm-buttondown ( hWnd uMsg wParam lParam -- ) - >r pick SetCapture drop r> - prepare-mouse send-button-down ; - -: handle-wm-buttonup ( hWnd uMsg wParam lParam -- ) - ReleaseCapture drop - prepare-mouse send-button-up ; - -: handle-wm-mousemove ( hWnd uMsg wParam lParam -- ) - 2nip mouse-coordinate swap window move-hand fire-motion ; - -: handle-wm-mousewheel ( hWnd uMsg wParam lParam -- ) - mouse-coordinate >r mouse-wheel nip r> rot window send-wheel ; - -: handle-wm-cancelmode ( hWnd uMsg wParam lParam -- ) - #! message sent if windows needs application to stop dragging - 3drop drop ReleaseCapture drop ; - -: 4dup ( a b c d -- a b c d a b c d ) - >r >r 2dup r> r> 2swap >r >r 2dup r> r> 2swap ; - -! return 0 if you handle the message, else just let DefWindowProc return its val -: ui-wndproc ( hWnd uMsg wParam lParam -- lresult ) - "uint" { "void*" "uint" "long" "long" } [ - [ - pick - ! "Message: " write dup get-windows-message-name write - ! " " write dup unparse print flush - { - { [ dup WM_DESTROY = ] [ drop handle-wm-destroy 0 ] } - { [ dup WM_PAINT = ] - [ drop 4dup handle-wm-paint DefWindowProc ] } - { [ dup WM_SIZE = ] [ drop handle-wm-size 0 ] } - - ! Keyboard events - { [ dup WM_KEYDOWN = over WM_SYSKEYDOWN = or ] - [ drop handle-wm-keydown 0 ] } - { [ dup WM_KEYUP = over WM_SYSKEYUP = or ] - [ drop handle-wm-keyup 0 ] } - - { [ dup WM_SETFOCUS = ] [ drop handle-wm-set-focus 0 ] } - { [ dup WM_KILLFOCUS = ] [ drop handle-wm-kill-focus 0 ] } - - ! Mouse events - { [ dup WM_LBUTTONDOWN = ] [ drop handle-wm-buttondown 0 ] } - { [ dup WM_MBUTTONDOWN = ] [ drop handle-wm-buttondown 0 ] } - { [ dup WM_RBUTTONDOWN = ] [ drop handle-wm-buttondown 0 ] } - { [ dup WM_LBUTTONUP = ] [ drop handle-wm-buttonup 0 ] } - { [ dup WM_MBUTTONUP = ] [ drop handle-wm-buttonup 0 ] } - { [ dup WM_RBUTTONUP = ] [ drop handle-wm-buttonup 0 ] } - { [ dup WM_MOUSEMOVE = ] [ drop handle-wm-mousemove 0 ] } - { [ dup WM_MOUSEWHEEL = ] [ drop handle-wm-mousewheel 0 ] } - { [ dup WM_CANCELMODE = ] [ drop handle-wm-cancelmode 0 ] } - - { [ t ] [ drop DefWindowProc ] } - } cond - ] [ error. 0 ] recover - ! "finished handling message" print .s flush - ] alien-callback ; - -: do-events ( -- ) - msg-obj get f 0 0 PM_REMOVE PeekMessage - zero? not [ - msg-obj get MSG-message WM_QUIT = [ - msg-obj get [ TranslateMessage drop ] keep DispatchMessage drop - ] unless - ] when ; - -: event-loop ( -- ) - ! "MSG'D" print flush - windows get empty? [ - [ do-events ui-step ] ui-try event-loop - ] unless ; - -: register-wndclassex ( classname wndproc -- ) - "WNDCLASSEX" - "WNDCLASSEX" c-size over set-WNDCLASSEX-cbSize - CS_HREDRAW CS_VREDRAW bitor CS_OWNDC bitor over set-WNDCLASSEX-style - [ set-WNDCLASSEX-lpfnWndProc ] keep - 0 over set-WNDCLASSEX-cbClsExtra - 0 over set-WNDCLASSEX-cbWndExtra - f GetModuleHandle over set-WNDCLASSEX-hInstance - f IDI_APPLICATION LoadIcon over set-WNDCLASSEX-hIcon - f IDC_ARROW LoadCursor over set-WNDCLASSEX-hCursor - [ set-WNDCLASSEX-lpszClassName ] keep - RegisterClassEx dup win32-error=0 ; - -: create-window ( width height -- hwnd ) - make-adjusted-RECT - >r class-name get f r> - >r >r >r ex-style r> r> - WS_CLIPSIBLINGS WS_CLIPCHILDREN bitor style bitor - 0 0 r> - get-RECT-dimensions - f f f GetModuleHandle f CreateWindowEx dup win32-error=0 ; - -: show-window ( hWnd -- ) - dup SW_SHOW ShowWindow drop ! always succeeds - dup SetForegroundWindow drop - SetFocus drop ; - -: init-win32-ui - "MSG" msg-obj set - random-class-name class-name set - class-name get ui-wndproc - register-wndclassex win32-error=0 ; - -: cleanup-win32-ui ( -- ) - class-name get f UnregisterClass drop ; - -: setup-pixel-format ( hdc -- ) - 16 make-pfd [ ChoosePixelFormat dup win32-error=0 ] 2keep - swapd SetPixelFormat win32-error=0 ; - -: get-dc ( hWnd -- hDC ) GetDC dup win32-error=0 ; - -: get-rc ( hDC -- hRC ) - dup wglCreateContext dup win32-error=0 - [ wglMakeCurrent win32-error=0 ] keep ; - -: setup-gl ( hwnd -- hDC hRC ) - get-dc - dup setup-pixel-format - dup get-rc ; - -IN: gadgets - -: open-window* ( world -- ) ! new - [ rect-dim first2 create-window dup setup-gl ] keep - [ ] keep - [ swap win-hWnd register-window ] 2keep - [ set-world-handle ] 2keep - start-world win-hWnd show-window ; - -: select-gl-context ( handle -- ) - [ win-hDC ] keep win-hRC wglMakeCurrent win32-error=0 ; - -: flush-gl-context ( handle -- ) - win-hDC SwapBuffers win32-error=0 ; - -! Move window to front -: raise-window ( world -- ) - world-handle win-hWnd SetFocus drop ReleaseCapture drop ; - -: set-title ( string world -- ) - world-handle win-hWnd - swap alien-address >r WM_SETTEXT 0 r> SendMessage drop ; - -IN: shells -: ui - [ - [ - init-timers - ! init-clipboard - init-win32-ui - restore-windows? [ - restore-windows - ] [ - init-ui - launchpad-window - listener-window - ] if - event-loop - ] with-freetype - ] [ cleanup-win32-ui ] cleanup ; - +! Copyright (C) 2005, 2006 Doug Coleman. +! See http://factorcode.org/license.txt for BSD license. +USING: alien arrays errors freetype gadgets gadgets-launchpad + gadgets-listener hashtables io kernel math namespaces prettyprint + sequences strings vectors words win32-api win32-api-messages ; +USING: inspector threads memory ; +IN: win32 + +! world-handle is a +TUPLE: win hWnd hDC hRC world ; + +SYMBOL: msg-obj +SYMBOL: class-name + +: random-class-name "Factor" 100000000 random-int unparse append ; + +: style ( -- n ) WS_OVERLAPPEDWINDOW ; inline +: ex-style ( -- n ) WS_EX_APPWINDOW WS_EX_WINDOWEDGE bitor ; inline + +: adjust-RECT ( RECT -- ) + style 0 ex-style AdjustWindowRectEx win32-error=0 ; + +: make-RECT ( width height -- RECT ) + "RECT" [ set-RECT-bottom ] keep [ set-RECT-right ] keep ; + +: make-adjusted-RECT ( width height -- RECT ) + make-RECT dup adjust-RECT ; + + +: get-RECT-dimensions ( RECT -- width height ) + [ RECT-right ] keep [ RECT-left - ] keep + [ RECT-bottom ] keep RECT-top - ; + +: handle-wm-paint ( hWnd uMsg wParam lParam -- ) + #! wParam and lParam are unused + #! only paint if width/height both > 0 + 3drop window dup rect-dim first2 [ 0 > ] 2apply and [ draw-world ] when ; + +: handle-wm-size ( hWnd uMsg wParam lParam -- ) + [ lo-word ] keep hi-word make-RECT get-RECT-dimensions 2array + 2nip + dup { 0 0 } = [ 2drop ] [ swap window set-gadget-dim ] if ; + +: wm-keydown-codes ( n -- key ) + H{ + { 8 "BACKSPACE" } + { 9 "TAB" } + { 13 "RETURN" } + { 27 "ESCAPE" } + { 33 "PAGE_UP" } + { 34 "PAGE_DOWN" } + { 35 "END" } + { 36 "HOME" } + { 37 "LEFT" } + { 38 "UP" } + { 39 "RIGHT" } + { 40 "DOWN" } + { 45 "INSERT" } + { 46 "DELETE" } + } ; + +: key-state-down? + GetKeyState 1 16 shift bitand 0 > ; + +: left-shift? ( -- ? ) VK_LSHIFT key-state-down? ; +: left-ctrl? ( -- ? ) VK_LCONTROL key-state-down? ; +: left-alt? ( -- ? ) VK_LMENU key-state-down? ; +: right-shift? ( -- ? ) VK_RSHIFT key-state-down? ; +: right-ctrl? ( -- ? ) VK_RCONTROL key-state-down? ; +: right-alt? ( -- ? ) VK_RMENU key-state-down? ; +: shift? ( -- ? ) left-shift? right-shift? or ; +: ctrl? ( -- ? ) left-ctrl? right-ctrl? or ; +: alt? ( -- ? ) left-alt? right-alt? or ; +: caps-lock? ( -- ? ) VK_CAPITAL GetKeyState zero? not ; +: lower-case? ( -- ? ) shift? caps-lock? and caps-lock? not shift? not and or ; + +: key-modifiers ( -- list ) + [ + shift? [ S+ , ] when + ctrl? [ C+ , ] when + alt? [ A+ , ] when + ] { } make [ empty? not ] keep f ? ; + +: exclude-keys + H{ + ! { 8 "BACKSPACE" } + ! { 9 "TAB" } + { 16 "SHIFT" } + { 17 "CTRL" } + { 18 "ALT" } + { 20 "CAPS-LOCK" } + { 27 "ESCAPE" } + } ; + +: exclude-key? ( n -- bool ) exclude-keys hash* nip ; +: handle-key? ( n -- bool ) wm-keydown-codes hash* nip ; + +: keystroke>gesture ( n -- ) + dup wm-keydown-codes hash* [ nip ] [ drop ch>string lower-case? [ >lower ] when ] if + key-modifiers swap ; + +SYMBOL: lParam +SYMBOL: wParam +SYMBOL: uMsg +SYMBOL: hWnd + +: get-focus ( hWnd -- gadget ) + window world-focus ; + +: handle-wm-keydown ( hWnd uMsg wParam lParam -- ) + lParam set wParam set uMsg set hWnd set + wParam get exclude-key? [ + wParam get keystroke>gesture + hWnd get get-focus handle-gesture [ + wParam get ch>string lower-case? [ >lower ] when + hWnd get get-focus user-input + ] when + ] unless ; + +: handle-wm-keyup ( hWnd uMsg wParam lParam -- ) + lParam set wParam set uMsg set hWnd set + wParam get keystroke>gesture hWnd get get-focus handle-gesture + drop ; + +: cleanup-window ( handle -- ) + [ win-hRC wglDeleteContext win32-error=0 ] keep + [ win-hWnd ] keep win-hDC ReleaseDC win32-error=0 ; + +: handle-wm-destroy ( hWnd uMsg wParam lParam -- ) + 3drop + window [ world-handle ] keep + [ close-world ] keep + [ drop win-hWnd unregister-window ] 2keep + drop cleanup-window + 0 PostQuitMessage ; + +: handle-wm-set-focus ( hWnd uMsg wParam lParam -- ) + 3drop window focus-world ; + +: handle-wm-kill-focus ( hWnd uMsg wParam lParam -- ) + 3drop window unfocus-world ; + +: mouse-button ( uMsg -- n ) + { + { [ dup WM_LBUTTONDOWN = ] [ drop 1 ] } + { [ dup WM_LBUTTONUP = ] [ drop 1 ] } + { [ dup WM_MBUTTONDOWN = ] [ drop 2 ] } + { [ dup WM_MBUTTONUP = ] [ drop 2 ] } + { [ dup WM_RBUTTONDOWN = ] [ drop 3 ] } + { [ dup WM_RBUTTONUP = ] [ drop 3 ] } + { [ t ] [ "bad button" throw ] } + } cond ; + +: mouse-coordinate ( lParam -- seq ) [ lo-word ] keep hi-word 2array ; +: mouse-wheel ( lParam -- n ) hi-word 0 > 1 -1 ? ; + +: prepare-mouse ( hWnd uMsg wParam lParam -- world ) + nip >r mouse-button r> mouse-coordinate rot window ; + +: handle-wm-buttondown ( hWnd uMsg wParam lParam -- ) + >r pick SetCapture drop r> + prepare-mouse send-button-down ; + +: handle-wm-buttonup ( hWnd uMsg wParam lParam -- ) + ReleaseCapture drop + prepare-mouse send-button-up ; + +: handle-wm-mousemove ( hWnd uMsg wParam lParam -- ) + 2nip mouse-coordinate swap window move-hand fire-motion ; + +: handle-wm-mousewheel ( hWnd uMsg wParam lParam -- ) + mouse-coordinate >r mouse-wheel nip r> rot window send-wheel ; + +: handle-wm-cancelmode ( hWnd uMsg wParam lParam -- ) + #! message sent if windows needs application to stop dragging + 3drop drop ReleaseCapture drop ; + +: 4dup ( a b c d -- a b c d a b c d ) + >r >r 2dup r> r> 2swap >r >r 2dup r> r> 2swap ; + +! return 0 if you handle the message, else just let DefWindowProc return its val +: ui-wndproc ( hWnd uMsg wParam lParam -- lresult ) + "uint" { "void*" "uint" "long" "long" } [ + [ + pick + ! "Message: " write dup get-windows-message-name write + ! " " write dup unparse print flush + { + { [ dup WM_DESTROY = ] [ drop handle-wm-destroy 0 ] } + { [ dup WM_PAINT = ] + [ drop 4dup handle-wm-paint DefWindowProc ] } + { [ dup WM_SIZE = ] [ drop handle-wm-size 0 ] } + + ! Keyboard events + { [ dup WM_KEYDOWN = over WM_SYSKEYDOWN = or ] + [ drop handle-wm-keydown 0 ] } + { [ dup WM_KEYUP = over WM_SYSKEYUP = or ] + [ drop handle-wm-keyup 0 ] } + + { [ dup WM_SETFOCUS = ] [ drop handle-wm-set-focus 0 ] } + { [ dup WM_KILLFOCUS = ] [ drop handle-wm-kill-focus 0 ] } + + ! Mouse events + { [ dup WM_LBUTTONDOWN = ] [ drop handle-wm-buttondown 0 ] } + { [ dup WM_MBUTTONDOWN = ] [ drop handle-wm-buttondown 0 ] } + { [ dup WM_RBUTTONDOWN = ] [ drop handle-wm-buttondown 0 ] } + { [ dup WM_LBUTTONUP = ] [ drop handle-wm-buttonup 0 ] } + { [ dup WM_MBUTTONUP = ] [ drop handle-wm-buttonup 0 ] } + { [ dup WM_RBUTTONUP = ] [ drop handle-wm-buttonup 0 ] } + { [ dup WM_MOUSEMOVE = ] [ drop handle-wm-mousemove 0 ] } + { [ dup WM_MOUSEWHEEL = ] [ drop handle-wm-mousewheel 0 ] } + { [ dup WM_CANCELMODE = ] [ drop handle-wm-cancelmode 0 ] } + + { [ t ] [ drop DefWindowProc ] } + } cond + ] [ error. 0 ] recover + ! "finished handling message" print .s flush + ] alien-callback ; + +: do-events ( -- ) + msg-obj get f 0 0 PM_REMOVE PeekMessage + zero? not [ + msg-obj get MSG-message WM_QUIT = [ + msg-obj get [ TranslateMessage drop ] keep DispatchMessage drop + ] unless + ] when ; + +: event-loop ( -- ) + ! "MSG'D" print flush + windows get empty? [ + [ do-events ui-step ] ui-try event-loop + ] unless ; + +: register-wndclassex ( classname wndproc -- ) + "WNDCLASSEX" + "WNDCLASSEX" c-size over set-WNDCLASSEX-cbSize + CS_HREDRAW CS_VREDRAW bitor CS_OWNDC bitor over set-WNDCLASSEX-style + [ set-WNDCLASSEX-lpfnWndProc ] keep + 0 over set-WNDCLASSEX-cbClsExtra + 0 over set-WNDCLASSEX-cbWndExtra + f GetModuleHandle over set-WNDCLASSEX-hInstance + f IDI_APPLICATION LoadIcon over set-WNDCLASSEX-hIcon + f IDC_ARROW LoadCursor over set-WNDCLASSEX-hCursor + [ set-WNDCLASSEX-lpszClassName ] keep + RegisterClassEx dup win32-error=0 ; + +: create-window ( width height -- hwnd ) + make-adjusted-RECT + >r class-name get f r> + >r >r >r ex-style r> r> + WS_CLIPSIBLINGS WS_CLIPCHILDREN bitor style bitor + 0 0 r> + get-RECT-dimensions + f f f GetModuleHandle f CreateWindowEx dup win32-error=0 ; + +: show-window ( hWnd -- ) + dup SW_SHOW ShowWindow drop ! always succeeds + dup SetForegroundWindow drop + SetFocus drop ; + +: init-win32-ui + "MSG" msg-obj set + random-class-name class-name set + class-name get ui-wndproc + register-wndclassex win32-error=0 ; + +: cleanup-win32-ui ( -- ) + class-name get f UnregisterClass drop ; + +: setup-pixel-format ( hdc -- ) + 16 make-pfd [ ChoosePixelFormat dup win32-error=0 ] 2keep + swapd SetPixelFormat win32-error=0 ; + +: get-dc ( hWnd -- hDC ) GetDC dup win32-error=0 ; + +: get-rc ( hDC -- hRC ) + dup wglCreateContext dup win32-error=0 + [ wglMakeCurrent win32-error=0 ] keep ; + +: setup-gl ( hwnd -- hDC hRC ) + get-dc + dup setup-pixel-format + dup get-rc ; + +IN: gadgets + +: open-window* ( world -- ) ! new + [ rect-dim first2 create-window dup setup-gl ] keep + [ ] keep + [ swap win-hWnd register-window ] 2keep + [ set-world-handle ] 2keep + start-world win-hWnd show-window ; + +: select-gl-context ( handle -- ) + [ win-hDC ] keep win-hRC wglMakeCurrent win32-error=0 ; + +: flush-gl-context ( handle -- ) + win-hDC SwapBuffers win32-error=0 ; + +! Move window to front +: raise-window ( world -- ) + world-handle win-hWnd SetFocus drop ReleaseCapture drop ; + +: set-title ( string world -- ) + world-handle win-hWnd + swap alien-address >r WM_SETTEXT 0 r> SendMessage drop ; + +IN: shells +: ui + [ + [ + init-timers + ! init-clipboard + init-win32-ui + restore-windows? [ + restore-windows + ] [ + init-ui + launchpad-window + listener-window + ] if + event-loop + ] with-freetype + ] [ cleanup-win32-ui ] cleanup ; + diff --git a/library/ui/windows/user32.factor b/library/ui/windows/user32.factor index c2a167aafe..4e60166c7b 100644 --- a/library/ui/windows/user32.factor +++ b/library/ui/windows/user32.factor @@ -1,1374 +1,1374 @@ -! 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 >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 - +! 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 >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 + diff --git a/library/ui/windows/utils.factor b/library/ui/windows/utils.factor index 643337bf5c..ee878f4b26 100644 --- a/library/ui/windows/utils.factor +++ b/library/ui/windows/utils.factor @@ -1,16 +1,16 @@ -! 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 ; - +! 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 ; + diff --git a/library/ui/windows/windows-messages.factor b/library/ui/windows/windows-messages.factor index 35c1c9272a..cd20ec6af0 100644 --- a/library/ui/windows/windows-messages.factor +++ b/library/ui/windows/windows-messages.factor @@ -1,1005 +1,1005 @@ -! 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 +! 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