]> gitweb.factorcode.org Git - factor.git/commitdiff
windows: Add some words that would be useful for Windows notifications.
authorDoug Coleman <doug.coleman@gmail.com>
Tue, 20 Feb 2018 05:46:30 +0000 (23:46 -0600)
committerDoug Coleman <doug.coleman@gmail.com>
Tue, 20 Feb 2018 05:46:30 +0000 (23:46 -0600)
basis/windows/shell32/shell32.factor
basis/windows/user32/user32.factor

index 864663bd40b6b8fc379c1fe08b45a5c7e9d5dcb9..387d11824b7d5f1792b97be4a36580cf98b05596 100644 (file)
@@ -1,8 +1,9 @@
 ! Copyright (C) 2006, 2008 Doug Coleman.
 ! See http://factorcode.org/license.txt for BSD license.
 USING: alien alien.c-types alien.data alien.strings alien.syntax
-classes.struct io.backend kernel windows windows.com
-windows.com.syntax windows.kernel32 windows.ole32 windows.types ;
+classes.struct io.backend kernel literals math windows
+windows.com windows.com.syntax windows.kernel32 windows.messages
+windows.ole32 windows.types ;
 IN: windows.shell32
 
 CONSTANT: CSIDL_DESKTOP 0x00
@@ -318,3 +319,63 @@ FUNCTION: BOOL DragQueryPoint ( HDROP hDrop, POINT* lppt )
 FUNCTION: void DragFinish ( HDROP hDrop )
 
 FUNCTION: BOOL IsUserAnAdmin ( )
+
+
+CONSTANT: NIM_ADD 0
+CONSTANT: NIM_MODIFY 1
+CONSTANT: NIM_DELETE 2
+CONSTANT: NIM_SETFOCUS 3
+CONSTANT: NIM_SETVERSION 4
+
+CONSTANT: NIF_MESSAGE 0x1
+CONSTANT: NIF_ICON 0x2
+CONSTANT: NIF_TIP 0x4
+CONSTANT: NIF_STATE 0x8
+CONSTANT: NIF_INFO 0x10
+CONSTANT: NIF_GUID 0x20
+CONSTANT: NIF_REALTIME 0x40
+CONSTANT: NIF_SHOWTIP 0x80
+
+CONSTANT: NIIF_NONE 0x0
+CONSTANT: NIIF_INFO 0x1
+CONSTANT: NIIF_WARNING 0x2
+CONSTANT: NIIF_ERROR 0x3
+CONSTANT: NIIF_USER 0x4
+CONSTANT: NIIF_ICON_MASK 0xF
+CONSTANT: NIIF_NOSOUND 0x10
+
+CONSTANT: NIS_HIDDEN 1
+CONSTANT: NIS_SHAREDICON 2
+
+CONSTANT: NOTIFYICON_VERSION 3
+CONSTANT: NOTIFYICON_VERSION_4 4
+
+! >= 0x0500
+CONSTANT: NIN_SELECT $[ WM_USER 0 + ]
+CONSTANT: NIN_KEYSELECT $[ WM_USER 1 + ]
+! >= 0x0501
+CONSTANT: NIN_BALLOONSHOW $[ WM_USER 2 + ]
+CONSTANT: NIN_BALLOONHIDE $[ WM_USER 3 + ]
+CONSTANT: NIN_BALLOONTIMEOUT $[ WM_USER 4 + ]
+CONSTANT: NIN_BALLOONUSERCLICK $[ WM_USER 5 + ]
+
+STRUCT: NOTIFYICONDATA
+    { cbSize DWORD }
+    { hWnd HWND }
+    { uID UINT }
+    { uFlags UINT }
+    { uCallbackMessage UINT }
+    { hIcon HICON }
+    { szTip TCHAR[64] }
+    { dwState DWORD }
+    { dwStateMask DWORD }
+    { szInfo TCHAR[256] }
+    { uTimeout UINT } ! { uVersion UINT } ! c-union here1
+    { szInfoTitle TCHAR[64] }
+    { dwInfoFlags DWORD }
+    { guidItem GUID }
+    { hBalloonIcon HICON } ;
+
+TYPEDEF: NOTIFYICONDATA* PNOTIFYICONDATA
+
+FUNCTION: BOOL Shell_NotifyIcon ( DWORD dwMessage, PNOTIFYICONDATA lpdata )
index 2e5f78899fe2477d36ac8c9c79a7f8b8121d9133..d3afdc95c1cc329bb97e4f00c931bdeb9e79a308 100644 (file)
@@ -116,13 +116,6 @@ CONSTANT: COLOR_BTNTEXT           18
 CONSTANT: COLOR_INACTIVECAPTIONTEXT 19
 CONSTANT: COLOR_BTNHIGHLIGHT      20
 
-CONSTANT: IDI_APPLICATION     32512
-CONSTANT: IDI_HAND            32513
-CONSTANT: IDI_QUESTION        32514
-CONSTANT: IDI_EXCLAMATION     32515
-CONSTANT: IDI_ASTERISK        32516
-CONSTANT: IDI_WINLOGO         32517
-
 ! ShowWindow() Commands
 CONSTANT: SW_HIDE             0
 CONSTANT: SW_SHOWNORMAL       1
@@ -1020,6 +1013,185 @@ STRUCT: CHANGEFILTERSTRUCT
     { ExtStatus DWORD } ;
 TYPEDEF: CHANGEFILTERSTRUCT* PCHANGEFILTERSTRUCT
 
+CONSTANT: LR_DEFAULTCOLOR 0x00
+CONSTANT: LR_MONOCHROME 0x01
+CONSTANT: LR_COLOR 0x02
+CONSTANT: LR_COPYRETURNORG 0x04
+CONSTANT: LR_COPYDELETEORG 0x08
+CONSTANT: LR_LOADFROMFILE 0x10
+CONSTANT: LR_LOADTRANSPARENT 0x20
+CONSTANT: LR_DEFAULTSIZE 0x40
+CONSTANT: LR_VGACOLOR 0x80
+CONSTANT: LR_LOADMAP3DCOLORS 0x1000
+CONSTANT: LR_CREATEDIBSECTION 0x2000
+CONSTANT: LR_COPYFROMRESOURCE 0x4000
+CONSTANT: LR_SHARED 0x8000
+
+CONSTANT: IMAGE_BITMAP 0
+CONSTANT: IMAGE_ICON 1
+CONSTANT: IMAGE_CURSOR 2
+
+CONSTANT: IDI_APPLICATION 32512
+CONSTANT: IDI_ASTERISK 21516
+CONSTANT: IDI_ERROR 32513
+CONSTANT: IDI_EXCLAMATION 32515
+CONSTANT: IDI_HAND 32513
+CONSTANT: IDI_INFORMATION 32516
+CONSTANT: IDI_QUESTION 32514
+CONSTANT: IDI_SHIELD 32518
+CONSTANT: IDI_WARNING 32515
+CONSTANT: IDI_WINLOGO 32517
+
+CONSTANT: OBM_BTNCORNERS 32758
+CONSTANT: OBM_BTSIZE 32761
+CONSTANT: OBM_CHECK 32760
+CONSTANT: OBM_CHECKBOXES 32759
+CONSTANT: OBM_CLOSE 32754
+CONSTANT: OBM_COMBO 32738
+CONSTANT: OBM_DNARROW 32752
+CONSTANT: OBM_DNARROWD 32742
+CONSTANT: OBM_DNARROWI 32736
+CONSTANT: OBM_LFARROW 32750
+CONSTANT: OBM_LFARROWI 32734
+CONSTANT: OBM_LFARROWD 32740
+CONSTANT: OBM_MNARROW 32739
+CONSTANT: OBM_OLD_CLOSE 32767
+CONSTANT: OBM_OLD_DNARROW 32764
+CONSTANT: OBM_OLD_LFARROW 32762
+CONSTANT: OBM_OLD_REDUCE 32757
+CONSTANT: OBM_OLD_RESTORE 32755
+CONSTANT: OBM_OLD_RGARROW 32763
+CONSTANT: OBM_OLD_UPARROW 32765
+CONSTANT: OBM_OLD_ZOOM 32756
+CONSTANT: OBM_REDUCE 32749
+CONSTANT: OBM_REDUCED 32746
+CONSTANT: OBM_RESTORE 32747
+CONSTANT: OBM_RESTORED 32744
+CONSTANT: OBM_RGARROW 32751
+CONSTANT: OBM_RGARROWD 32741
+CONSTANT: OBM_RGARROWI 32735
+CONSTANT: OBM_SIZE 32766
+CONSTANT: OBM_UPARROW 32753
+CONSTANT: OBM_UPARROWD 32743
+CONSTANT: OBM_UPARROWI 32737
+CONSTANT: OBM_ZOOM 32748
+CONSTANT: OBM_ZOOMD 32745
+CONSTANT: OCR_NORMAL 32512
+CONSTANT: OCR_IBEAM 32513
+CONSTANT: OCR_WAIT 32514
+CONSTANT: OCR_CROSS 32515
+CONSTANT: OCR_UP 32516
+CONSTANT: OCR_SIZE 32640
+CONSTANT: OCR_ICON 32641
+CONSTANT: OCR_SIZENWSE 32642
+CONSTANT: OCR_SIZENESW 32643
+CONSTANT: OCR_SIZEWE 32644
+CONSTANT: OCR_SIZENS 32645
+CONSTANT: OCR_SIZEALL 32646
+CONSTANT: OCR_NO 32648
+CONSTANT: OCR_APPSTARTING 32650
+CONSTANT: OIC_SAMPLE 32512
+CONSTANT: OIC_HAND 32513
+CONSTANT: OIC_QUES 32514
+CONSTANT: OIC_BANG 32515
+CONSTANT: OIC_NOTE 32516
+CONSTANT: OIC_WINLOGO 32517
+CONSTANT: OIC_WARNING 32515
+CONSTANT: OIC_ERROR 32513
+CONSTANT: OIC_INFORMATION 32516
+
+CONSTANT: SM_CXSCREEN 0
+CONSTANT: SM_CYSCREEN 1
+CONSTANT: SM_CXVSCROLL 2
+CONSTANT: SM_CYHSCROLL 3
+CONSTANT: SM_CYCAPTION 4
+CONSTANT: SM_CXBORDER 5
+CONSTANT: SM_CYBORDER 6
+CONSTANT: SM_CXDLGFRAME 7
+CONSTANT: SM_CXFIXEDFRAME 7
+CONSTANT: SM_CYDLGFRAME 8
+CONSTANT: SM_CYFIXEDFRAME 8
+CONSTANT: SM_CYVTHUMB 9
+CONSTANT: SM_CXHTHUMB 10
+CONSTANT: SM_CXICON 11
+CONSTANT: SM_CYICON 12
+CONSTANT: SM_CXCURSOR 13
+CONSTANT: SM_CYCURSOR 14
+CONSTANT: SM_CYMENU 15
+CONSTANT: SM_CXFULLSCREEN 16
+CONSTANT: SM_CYFULLSCREEN 17
+CONSTANT: SM_CYKANJIWINDOW 18
+CONSTANT: SM_MOUSEPRESENT 19
+CONSTANT: SM_CYVSCROLL 20
+CONSTANT: SM_CXHSCROLL 21
+CONSTANT: SM_DEBUG 22
+CONSTANT: SM_SWAPBUTTON 23
+CONSTANT: SM_RESERVED1 24
+CONSTANT: SM_RESERVED2 25
+CONSTANT: SM_RESERVED3 26
+CONSTANT: SM_RESERVED4 27
+CONSTANT: SM_CXMIN 28
+CONSTANT: SM_CYMIN 29
+CONSTANT: SM_CXSIZE 30
+CONSTANT: SM_CYSIZE 31
+CONSTANT: SM_CXSIZEFRAME 32
+CONSTANT: SM_CXFRAME 32
+CONSTANT: SM_CYSIZEFRAME 33
+CONSTANT: SM_CYFRAME 33
+CONSTANT: SM_CXMINTRACK 34
+CONSTANT: SM_CYMINTRACK 35
+CONSTANT: SM_CXDOUBLECLK 36
+CONSTANT: SM_CYDOUBLECLK 37
+CONSTANT: SM_CXICONSPACING 38
+CONSTANT: SM_CYICONSPACING 39
+CONSTANT: SM_MENUDROPALIGNMENT 40
+CONSTANT: SM_PENWINDOWS 41
+CONSTANT: SM_DBCSENABLED 42
+CONSTANT: SM_CMOUSEBUTTONS 43
+CONSTANT: SM_SECURE 44
+CONSTANT: SM_CXEDGE 45
+CONSTANT: SM_CYEDGE 46
+CONSTANT: SM_CXMINSPACING 47
+CONSTANT: SM_CYMINSPACING 48
+CONSTANT: SM_CXSMICON 49
+CONSTANT: SM_CYSMICON 50
+CONSTANT: SM_CYSMCAPTION 51
+CONSTANT: SM_CXSMSIZE 52
+CONSTANT: SM_CYSMSIZE 53
+CONSTANT: SM_CXMENUSIZE 54
+CONSTANT: SM_CYMENUSIZE 55
+CONSTANT: SM_ARRANGE 56
+CONSTANT: SM_CXMINIMIZED 57
+CONSTANT: SM_CYMINIMIZED 58
+CONSTANT: SM_CXMAXTRACK 59
+CONSTANT: SM_CYMAXTRACK 60
+CONSTANT: SM_CXMAXIMIZED 61
+CONSTANT: SM_CYMAXIMIZED 62
+CONSTANT: SM_NETWORK 63
+! CONSTANT: LR_DEFAULTSIZE 64
+CONSTANT: SM_CLEANBOOT 67
+CONSTANT: SM_CXDRAG 68
+CONSTANT: SM_CYDRAG 69
+CONSTANT: SM_SHOWSOUNDS 70
+CONSTANT: SM_CXMENUCHECK 71
+CONSTANT: SM_CYMENUCHECK 72
+CONSTANT: SM_SLOWMACHINE 73
+CONSTANT: SM_MIDEASTENABLED 74
+CONSTANT: SM_MOUSEWHEELPRESENT 75
+CONSTANT: SM_XVIRTUALSCREEN 76
+CONSTANT: SM_YVIRTUALSCREEN 77
+CONSTANT: SM_CXVIRTUALSCREEN 78
+CONSTANT: SM_CYVIRTUALSCREEN 79
+CONSTANT: SM_CMONITORS 80
+CONSTANT: SM_SAMEDISPLAYFORMAT 81
+CONSTANT: SM_IMMENABLED 82
+CONSTANT: SM_CXFOCUSBORDER 83
+CONSTANT: SM_CYFOCUSBORDER 84
+CONSTANT: SM_TABLETPC 86
+CONSTANT: SM_MEDIACENTER 87
+CONSTANT: SM_CMETRICS 88
+CONSTANT: SM_REMOTESESSION 0X1000
+
 LIBRARY: user32
 
 FUNCTION: HKL ActivateKeyboardLayout ( HKL hkl, UINT Flags )
@@ -1538,7 +1710,8 @@ FUNCTION: HICON LoadIconW ( HINSTANCE hInstance, LPCTSTR lpIconName )
 ALIAS: LoadIcon LoadIconW
 
 ! FUNCTION: LoadImageA
-! FUNCTION: LoadImageW
+FUNCTION: HANDLE LoadImageW ( HINSTANCE hinst, LPCTSTR lpszName, UINT uType, int cxDesired, int cyDesired, UINT fuLoad )
+ALIAS: LoadImage LoadImageW
 ! FUNCTION: LoadKeyboardLayoutA
 ! FUNCTION: LoadKeyboardLayoutEx
 ! FUNCTION: LoadKeyboardLayoutW