#ifndef _COMMCTRL_H #define _COMMCTRL_H #if __GNUC__ >=3 #pragma GCC system_header #endif #include #ifdef __cplusplus extern "C" { #endif #ifndef _WIN32_IE /* define _WIN32_IE if you really want it */ #if 0 #define _WIN32_IE 0x0300 #endif #endif #ifndef SNDMSG #ifdef __cplusplus #define SNDMSG ::SendMessage #else #define SNDMSG SendMessage #endif #endif /* ifndef SNDMSG */ #define DRAGLISTMSGSTRING TEXT("commctrl_DragListMsg") #define ANIMATE_CLASSW L"SysAnimate32" #define ANIMATE_CLASSA "SysAnimate32" #define HOTKEY_CLASSA "msctls_hotkey32" #define HOTKEY_CLASSW L"msctls_hotkey32" #define PROGRESS_CLASSA "msctls_progress32" #define PROGRESS_CLASSW L"msctls_progress32" #define STATUSCLASSNAMEA "msctls_statusbar32" #define STATUSCLASSNAMEW L"msctls_statusbar32" #define TOOLBARCLASSNAMEW L"ToolbarWindow32" #define TOOLBARCLASSNAMEA "ToolbarWindow32" #define TOOLTIPS_CLASSW L"tooltips_class32" #define TOOLTIPS_CLASSA "tooltips_class32" #define TRACKBAR_CLASSA "msctls_trackbar32" #define TRACKBAR_CLASSW L"msctls_trackbar32" #define UPDOWN_CLASSA "msctls_updown32" #define UPDOWN_CLASSW L"msctls_updown32" #define WC_COMBOBOXEXW L"ComboBoxEx32" #define WC_COMBOBOXEXA "ComboBoxEx32" #define WC_IPADDRESSW L"SysIPAddress32" #define WC_IPADDRESSA "SysIPAddress32" #define WC_LISTVIEWA "SysListView32" #define WC_LISTVIEWW L"SysListView32" #define WC_TABCONTROLA "SysTabControl32" #define WC_TABCONTROLW L"SysTabControl32" #define WC_TREEVIEWA "SysTreeView32" #define WC_TREEVIEWW L"SysTreeView32" #define WC_HEADERA "SysHeader32" #define WC_HEADERW L"SysHeader32" #define DATETIMEPICK_CLASSW L"SysDateTimePick32" #define DATETIMEPICK_CLASSA "SysDateTimePick32" #define MONTHCAL_CLASSW L"SysMonthCal32" #define MONTHCAL_CLASSA "SysMonthCal32" #define REBARCLASSNAMEW L"ReBarWindow32" #define REBARCLASSNAMEA "ReBarWindow32" #define LVM_FIRST 0x1000 #define TV_FIRST 0x1100 #define HDM_FIRST 0x1200 #define ACM_OPENA (WM_USER+100) #define ACM_PLAY (WM_USER+101) #define ACM_STOP (WM_USER+102) #define ACM_OPENW (WM_USER+103) #define ACN_START 1 #define ACN_STOP 2 #define CBEIF_TEXT 0x00000001 #define CBEIF_IMAGE 0x00000002 #define CBEIF_SELECTEDIMAGE 0x00000004 #define CBEIF_OVERLAY 0x00000008 #define CBEIF_INDENT 0x00000010 #define CBEIF_LPARAM 0x00000020 #define CBEIF_DI_SETITEM 0x10000000 #define CBEN_INSERTITEM (CBEN_FIRST - 1) #define CBEN_DELETEITEM (CBEN_FIRST - 2) #define CBEN_BEGINEDIT (CBEN_FIRST - 4) #define CBEN_ENDEDITA (CBEN_FIRST - 5) #define CBEN_ENDEDITW (CBEN_FIRST - 6) #define CBENF_KILLFOCUS 1 #define CBENF_RETURN 2 #define CBENF_ESCAPE 3 #define CBENF_DROPDOWN 4 #define CBEMAXSTRLEN 260 #define DL_BEGINDRAG 1157 #define DL_CANCELDRAG 1160 #define DL_DRAGGING 1158 #define DL_DROPPED 1159 #define DL_CURSORSET 0 #define DL_STOPCURSOR 1 #define DL_COPYCURSOR 2 #define DL_MOVECURSOR 3 #define CCS_TOP 1 #define CCS_NOMOVEY 2 #define CCS_BOTTOM 3 #define CCS_NORESIZE 4 #define CCS_NOPARENTALIGN 8 #define CCS_ADJUSTABLE 32 #define CCS_NODIVIDER 64 #if (_WIN32_IE >= 0x0300) #define CCS_VERT 128 #define CCS_LEFT 129 #define CCS_NOMOVEX 130 #define CCS_RIGHT 131 #endif #define ACS_CENTER 0x0001 #define ACS_TRANSPARENT 0x0002 #define ACS_AUTOPLAY 0x0004 #define ACS_TIMER 0x0008 #define PGS_VERT 0x00000000 #define PGS_HORZ 0x00000001 #define PGS_AUTOSCROLL 0x00000002 #define PGS_DRAGNDROP 0x00000004 #define CMB_MASKED 2 #define MINSYSCOMMAND SC_SIZE #define SBT_OWNERDRAW 0x1000 #define SBT_NOBORDERS 256 #define SBT_POPOUT 512 #define SBT_RTLREADING 1024 #define SB_SETTEXTA (WM_USER+1) #define SB_SETTEXTW (WM_USER+11) #define SB_GETTEXTA (WM_USER+2) #define SB_GETTEXTW (WM_USER+13) #define SB_GETTEXTLENGTHA (WM_USER+3) #define SB_GETTEXTLENGTHW (WM_USER+12) #define SB_SETPARTS (WM_USER+4) #define SB_GETPARTS (WM_USER+6) #define SB_GETBORDERS (WM_USER+7) #define SB_SETMINHEIGHT (WM_USER+8) #define SB_SIMPLE (WM_USER+9) #define SB_GETRECT (WM_USER+10) #define MSGF_COMMCTRL_BEGINDRAG 0x4200 #define MSGF_COMMCTRL_SIZEHEADER 0x4201 #define MSGF_COMMCTRL_DRAGSELECT 0x4202 #define MSGF_COMMCTRL_TOOLBARCUST 0x4203 #define ILC_COLOR 0 #define ILC_COLOR4 4 #define ILC_COLOR8 8 #define ILC_COLOR16 16 #define ILC_COLOR24 24 #define ILC_COLOR32 32 #define ILC_COLORDDB 254 #define ILC_MASK 1 #define ILC_PALETTE 2048 #define ILD_BLEND25 2 #define ILD_BLEND50 4 #define ILD_SELECTED 4 #define ILD_BLEND 4 #define ILD_FOCUS 2 #define ILD_MASK 16 #define ILD_NORMAL 0 #define ILD_TRANSPARENT 1 #define HDS_HORZ 0 #define HDS_BUTTONS 2 #define HDS_HIDDEN 8 #define NM_FIRST 0 #define NM_LAST ((UINT)-99) #define LVN_FIRST ((UINT)-100) #define LVN_LAST ((UINT)-199) #define HDN_FIRST ((UINT)-300) #define HDN_LAST ((UINT)-399) #define TVN_FIRST ((UINT)-400) #define TVN_LAST ((UINT)-499) #define TTN_FIRST ((UINT)-520) #define TTN_LAST ((UINT)-549) #define TCN_FIRST ((UINT)-550) #define TCN_LAST ((UINT)-580) #ifndef CDN_FIRST #define CDN_FIRST ((UINT)-601) /* also in commdlg.h */ #define CDN_LAST ((UINT)-699) #endif #define TBN_FIRST ((UINT)-700) #define TBN_LAST ((UINT)-720) #define UDN_FIRST ((UINT)-721) #define UDN_LAST ((UINT)-740) #if (_WIN32_IE >= 0x0300) #define RBN_FIRST ((UINT)-831) #define RBN_LAST ((UINT)-859) #define MCN_FIRST ((UINT)-750) #define MCN_LAST ((UINT)-759) #define DTN_FIRST ((UINT)-760) #define DTN_LAST ((UINT)-799) #define CBEN_FIRST ((UINT)-800) #define CBEN_LAST ((UINT)-830) #endif /* _WIN32_IE */ #if (_WIN32_IE >= 0x0400) #define IPN_FIRST (-860) #define IPN_LAST (-879) #define IPN_FIELDCHANGED (IPN_FIRST-0) #endif /* _WIN32_IE >= 0x0400 */ #define HDI_WIDTH 1 #define HDI_HEIGHT 1 #define HDI_TEXT 2 #define HDI_FORMAT 4 #define HDI_LPARAM 8 #define HDI_BITMAP 16 #if (_WIN32_IE >= 0x0300) #define HDI_IMAGE 32 #define HDI_DI_SETITEM 64 #define HDI_ORDER 128 #endif #define CBES_EX_NOEDITIMAGE 0x00000001 #define CBES_EX_NOEDITIMAGEINDENT 0x00000002 #define CBES_EX_PATHWORDBREAKPROC 0x00000004 #if (_WIN32_IE >= 0x0400) #define CBES_EX_NOSIZELIMIT 0x00000008 #define CBES_EX_CASESENSITIVE 0x00000010 #define CBEN_GETDISPINFOA (CBEN_FIRST - 0) #define CBEN_GETDISPINFOW (CBEN_FIRST - 7) #define CBEN_DRAGBEGINA (CBEN_FIRST - 8) #define CBEN_DRAGBEGINW (CBEN_FIRST - 9) #endif /* _WIN32_IE >= 0x0400 */ #if (_WIN32_IE >= 0x0500) #define HDI_FILTER 256 #endif #define HDF_LEFT 0 #define HDF_RIGHT 1 #define HDF_CENTER 2 #define HDF_JUSTIFYMASK3 #define HDF_RTLREADING 4 #define HDF_OWNERDRAW 0x8000 #define HDF_STRING 0x4000 #define HDF_BITMAP 0x2000 #if (_WIN32_IE >= 0x0300) #define HDF_BITMAP_ON_RIGHT 0x1000 #define HDF_IMAGE 0x0800 #endif #define HDM_GETITEMCOUNT HDM_FIRST #define HDM_INSERTITEMA (HDM_FIRST+1) #define HDM_INSERTITEMW (HDM_FIRST+10) #define HDM_DELETEITEM (HDM_FIRST+2) #define HDM_GETITEMA (HDM_FIRST+3) #define HDM_GETITEMW (HDM_FIRST+11) #define HDM_SETITEMA (HDM_FIRST+4) #define HDM_SETITEMW (HDM_FIRST+12) #define HDM_LAYOUT (HDM_FIRST+5) #if (_WIN32_IE >= 0x0300) #define HDM_GETITEMRECT (HDM_FIRST+7) #define HDM_GETORDERARRAY (HDM_FIRST+17) #define HDM_SETORDERARRAY (HDM_FIRST+18) #endif #define HHT_NOWHERE 1 #define HHT_ONHEADER 2 #define HHT_ONDIVIDER 4 #define HHT_ONDIVOPEN 8 #define HHT_ABOVE 256 #define HHT_BELOW 512 #define HHT_TORIGHT 1024 #define HHT_TOLEFT 2048 #define HDM_HITTEST (HDM_FIRST+6) #define HDN_ITEMCHANGINGA (HDN_FIRST-0) #define HDN_ITEMCHANGINGW (HDN_FIRST-20) #define HDN_ITEMCHANGEDA (HDN_FIRST-1) #define HDN_ITEMCHANGEDW (HDN_FIRST-21) #define HDN_ITEMCLICKA (HDN_FIRST-2) #define HDN_ITEMCLICKW (HDN_FIRST-22) #define HDN_ITEMDBLCLICKA (HDN_FIRST-3) #define HDN_ITEMDBLCLICKW (HDN_FIRST-23) #define HDN_DIVIDERDBLCLICKA (HDN_FIRST-5) #define HDN_DIVIDERDBLCLICKW (HDN_FIRST-25) #define HDN_BEGINTRACKA (HDN_FIRST-6) #define HDN_BEGINTRACKW (HDN_FIRST-26) #define HDN_ENDTRACKA (HDN_FIRST-7) #define HDN_ENDTRACKW (HDN_FIRST-27) #define HDN_TRACKA (HDN_FIRST-8) #define HDN_TRACKW (HDN_FIRST-28) #if _WIN32_IE >= 0x0300 #define HDN_ENDDRAG (HDN_FIRST-11) #define HDN_BEGINDRAG (HDN_FIRST-10) #endif #define IPM_CLEARADDRESS (WM_USER+100) #define IPM_SETADDRESS (WM_USER+101) #define IPM_GETADDRESS (WM_USER+102) #define IPM_SETRANGE (WM_USER+103) #define IPM_SETFOCUS (WM_USER+104) #define IPM_ISBLANK (WM_USER+105) #define CMB_MASKED 2 #define TBSTATE_CHECKED 1 #define TBSTATE_PRESSED 2 #define TBSTATE_ENABLED 4 #define TBSTATE_HIDDEN 8 #define TBSTATE_INDETERMINATE 16 #define TBSTATE_WRAP 32 #define TBSTYLE_BUTTON 0 #define TBSTYLE_SEP 1 #define TBSTYLE_CHECK 2 #define TBSTYLE_GROUP 4 #define TBSTYLE_CHECKGROUP (TBSTYLE_GROUP|TBSTYLE_CHECK) #if (_WIN32_IE >= 0x0300) #define TBSTYLE_DROPDOWN 8 #endif #if (_WIN32_IE >= 0x0400) #define TBSTYLE_AUTOSIZE 16 #define TBSTYLE_NOPREFIX 32 #endif #define TBSTYLE_TOOLTIPS 256 #define TBSTYLE_WRAPABLE 512 #define TBSTYLE_ALTDRAG 1024 #if (_WIN32_IE >= 0x0300) #define TBSTYLE_FLAT 2048 #define TBSTYLE_LIST 4096 #define TBSTYLE_CUSTOMERASE 8192 #endif #if (_WIN32_IE >= 0x0400) #define TBSTYLE_REGISTERDROP 0x4000 #define TBSTYLE_TRANSPARENT 0x8000 #define TBSTYLE_EX_DRAWDDARROWS 0x00000001 #endif /* _WIN32_IE >= 0x0400 */ #define TB_ENABLEBUTTON (WM_USER+1) #define TB_CHECKBUTTON (WM_USER+2) #define TB_PRESSBUTTON (WM_USER+3) #define TB_HIDEBUTTON (WM_USER+4) #define TB_INDETERMINATE (WM_USER+5) #define TB_ISBUTTONENABLED (WM_USER+9) #define TB_ISBUTTONCHECKED (WM_USER+10) #define TB_ISBUTTONPRESSED (WM_USER+11) #define TB_ISBUTTONHIDDEN (WM_USER+12) #define TB_ISBUTTONINDETERMINATE (WM_USER+13) #define TB_SETSTATE (WM_USER+17) #define TB_GETSTATE (WM_USER+18) #define TB_ADDBITMAP (WM_USER+19) #define TB_GETBUTTONSIZE (WM_USER+58) #define HINST_COMMCTRL ((HINSTANCE)-1) #define IDB_STD_SMALL_COLOR 0 #define IDB_STD_LARGE_COLOR 1 #define IDB_VIEW_SMALL_COLOR 4 #define IDB_VIEW_LARGE_COLOR 5 #define STD_CUT 0 #define STD_COPY 1 #define STD_PASTE 2 #define STD_UNDO 3 #define STD_REDOW 4 #define STD_DELETE 5 #define STD_FILENEW 6 #define STD_FILEOPEN 7 #define STD_FILESAVE 8 #define STD_PRINTPRE 9 #define STD_PROPERTIES 10 #define STD_HELP 11 #define STD_FIND 12 #define STD_REPLACE 13 #define STD_PRINT 14 #define VIEW_LARGEICONS 0 #define VIEW_SMALLICONS 1 #define VIEW_LIST 2 #define VIEW_DETAILS 3 #define VIEW_SORTNAME 4 #define VIEW_SORTSIZE 5 #define VIEW_SORTDATE 6 #define VIEW_SORTTYPE 7 #define VIEW_PARENTFOLDER 8 #define VIEW_NETCONNECT 9 #define VIEW_NETDISCONNECT 10 #define VIEW_NEWFOLDER 11 #define TB_ADDBUTTONS (WM_USER+20) #define TB_INSERTBUTTON (WM_USER+21) #define TB_DELETEBUTTON (WM_USER+22) #define TB_GETBUTTON (WM_USER+23) #define TB_BUTTONCOUNT (WM_USER+24) #define TB_COMMANDTOINDEX (WM_USER+25) #define TB_SAVERESTOREA (WM_USER+26) #define TB_SAVERESTOREW (WM_USER+76) #define TB_CUSTOMIZE (WM_USER+27) #define TB_ADDSTRINGA (WM_USER+28) #define TB_ADDSTRINGW (WM_USER+77) #define TB_GETITEMRECT (WM_USER+29) #define TB_BUTTONSTRUCTSIZE (WM_USER+30) #define TB_SETBUTTONSIZE (WM_USER+31) #define TB_SETBITMAPSIZE (WM_USER+32) #define TB_AUTOSIZE (WM_USER+33) #define TB_GETTOOLTIPS (WM_USER+35) #define TB_SETTOOLTIPS (WM_USER+36) #define TB_SETPARENT (WM_USER+37) #define TB_SETROWS (WM_USER+39) #define TB_GETROWS (WM_USER+40) #define TB_SETCMDID (WM_USER+42) #define TB_CHANGEBITMAP (WM_USER+43) #define TB_GETBITMAP (WM_USER+44) #define TB_GETBUTTONTEXTA (WM_USER+45) #define TB_GETBUTTONTEXTW (WM_USER+75) #define TB_REPLACEBITMAP (WM_USER+46) #define TBBF_LARGE 1 #define TB_GETBITMAPFLAGS (WM_USER+41) #if _WIN32_IE >= 0x400 #define TB_SETBUTTONINFO (WM_USER+66) #define TB_SETEXTENDEDSTYLE (WM_USER+84) #define TB_GETEXTENDEDSTYLE (WM_USER+85) #endif #define TBN_GETBUTTONINFOA (TBN_FIRST-0) #define TBN_GETBUTTONINFOW (TBN_FIRST-20) #define TBN_BEGINDRAG (TBN_FIRST-1) #define TBN_ENDDRAG (TBN_FIRST-2) #define TBN_BEGINADJUST (TBN_FIRST-3) #define TBN_ENDADJUST (TBN_FIRST-4) #define TBN_RESET (TBN_FIRST-5) #define TBN_QUERYINSERT (TBN_FIRST-6) #define TBN_QUERYDELETE (TBN_FIRST-7) #define TBN_TOOLBARCHANGE (TBN_FIRST-8) #define TBN_CUSTHELP (TBN_FIRST-9) #define TTS_ALWAYSTIP 1 #define TTS_NOPREFIX 2 #if( _WIN32_IE >= 0x0500 ) #define TTS_NOANIMATE 0x10 #define TTS_NOFADE 0x20 #define TTS_BALLOON 0x40 #define TTS_CLOSE 0x80 #endif /* _WIN32_IE >= 0x0500 */ #define TTF_IDISHWND 1 #define TTF_CENTERTIP 2 #define TTF_RTLREADING 4 #define TTF_SUBCLASS 16 #define TTDT_AUTOMATIC 0 #define TTDT_RESHOW 1 #define TTDT_AUTOPOP 2 #define TTDT_INITIAL 3 #define TTM_ACTIVATE (WM_USER+1) #define TTM_SETDELAYTIME (WM_USER+3) #define TTM_ADDTOOLA (WM_USER+4) #define TTM_ADDTOOLW (WM_USER+50) #define TTM_DELTOOLA (WM_USER+5) #define TTM_DELTOOLW (WM_USER+51) #define TTM_NEWTOOLRECTA (WM_USER+6) #define TTM_NEWTOOLRECTW (WM_USER+52) #define TTM_RELAYEVENT (WM_USER+7) #define TTM_GETTOOLINFOA (WM_USER+8) #define TTM_GETTOOLINFOW (WM_USER+53) #define TTM_SETTOOLINFOA (WM_USER+9) #define TTM_SETTOOLINFOW (WM_USER+54) #define TTM_HITTESTA (WM_USER+10) #define TTM_HITTESTW (WM_USER+55) #define TTM_GETTEXTA (WM_USER+11) #define TTM_GETTEXTW (WM_USER+56) #define TTM_UPDATETIPTEXTA (WM_USER+12) #define TTM_UPDATETIPTEXTW (WM_USER+57) #define TTM_GETTOOLCOUNT (WM_USER +13) #define TTM_ENUMTOOLSA (WM_USER+14) #define TTM_ENUMTOOLSW (WM_USER+58) #define TTM_GETCURRENTTOOLA (WM_USER+15) #define TTM_GETCURRENTTOOLW (WM_USER+59) #define TTM_WINDOWFROMPOINT (WM_USER+16) #if (_WIN32_IE >= 0x0300) #define TTM_TRACKACTIVATE (WM_USER+17) #define TTM_TRACKPOSITION (WM_USER+18) #define TTM_SETTIPBKCOLOR (WM_USER+19) #define TTM_SETTIPTEXTCOLOR (WM_USER+20) #define TTM_GETDELAYTIME (WM_USER+21) #define TTM_GETTIPBKCOLOR (WM_USER+22) #define TTM_GETTIPTEXTCOLOR (WM_USER+23) #define TTM_SETMAXTIPWIDTH (WM_USER+24) #define TTM_GETMAXTIPWIDTH (WM_USER+25) #define TTM_SETMARGIN (WM_USER+26) #define TTM_GETMARGIN (WM_USER+27) #define TTM_POP (WM_USER+28) #endif /* _WIN32_IE */ #if (_WIN32_IE >= 0x0400) /* IE4.0 ??? */ #define TTM_UPDATE (WM_USER+29) #endif #define TTN_NEEDTEXTA (TTN_FIRST-0) #define TTN_NEEDTEXTW (TTN_FIRST-10) #define TTN_SHOW (TTN_FIRST-1) #define TTN_POP (TTN_FIRST-2) #define UD_MAXVAL 0x7fff #define UD_MINVAL (-UD_MAXVAL) #define UDN_DELTAPOS (UDN_FIRST-1) #define UDS_WRAP 1 #define UDS_SETBUDDYINT 2 #define UDS_ALIGNRIGHT 4 #define UDS_ALIGNLEFT 8 #define UDS_AUTOBUDDY 16 #define UDS_ARROWKEYS 32 #define UDS_HORZ 64 #define UDS_NOTHOUSANDS 128 #if ( _WIN32_IE >= 0x0300 ) #define UDS_HOTTRACK 0x0100 #endif /* _WIN32_IE >= 0x0300 */ #define UDM_SETRANGE (WM_USER+101) #define UDM_GETRANGE (WM_USER+102) #define UDM_SETPOS (WM_USER+103) #define UDM_GETPOS (WM_USER+104) #define UDM_SETBUDDY (WM_USER+105) #define UDM_GETBUDDY (WM_USER+106) #define UDM_SETACCEL (WM_USER+107) #define UDM_GETACCEL (WM_USER+108) #define UDM_SETBASE (WM_USER+109) #define UDM_GETBASE (WM_USER+110) #define SB_SETTEXTA (WM_USER+1) #define SB_SETTEXTW (WM_USER+11) #define SB_GETTEXTA (WM_USER+2) #define SB_GETTEXTW (WM_USER+13) #define SB_GETTEXTLENGTHA (WM_USER+3) #define SB_GETTEXTLENGTHW (WM_USER+12) #define SB_SETPARTS (WM_USER+4) #define SB_GETPARTS (WM_USER+6) #define SB_GETBORDERS (WM_USER+7) #define SB_SETMINHEIGHT (WM_USER+8) #define SB_SIMPLE (WM_USER+9) #define SB_GETRECT (WM_USER+10) #define SBT_OWNERDRAW 0x1000 #define SBT_NOBORDERS 256 #define SBT_POPOUT 512 #define SBT_RTLREADING 1024 #if( _WIN32_IE >= 0x0400 ) #define SBT_TOOLTIPS 0x0800 #endif /* _WIN32_IE >= 0x0400 */ #define TBS_AUTOTICKS 1 #define TBS_VERT 2 #define TBS_HORZ 0 #define TBS_TOP 4 #define TBS_BOTTOM 0 #define TBS_LEFT 4 #define TBS_RIGHT 0 #define TBS_BOTH 8 #define TBS_NOTICKS 16 #define TBS_ENABLESELRANGE 32 #define TBS_FIXEDLENGTH 64 #define TBS_NOTHUMB 128 #define TBS_TOOLTIPS 0x0100 #define TBS_REVERSED 0x0200 #if _WIN32_IE >= 0x400 #define TBIF_BYINDEX -2147483648 #define TBIF_COMMAND 32 #define TBIF_IMAGE 1 #define TBIF_LPARAM 16 #define TBIF_SIZE 64 #define TBIF_STATE 4 #define TBIF_STYLE 8 #define TBIF_TEXT 2 #endif #define TBM_GETPOS (WM_USER) #define TBM_GETRANGEMIN (WM_USER+1) #define TBM_GETRANGEMAX (WM_USER+2) #define TBM_GETTIC (WM_USER+3) #define TBM_SETTIC (WM_USER+4) #define TBM_SETPOS (WM_USER+5) #define TBM_SETRANGE (WM_USER+6) #define TBM_SETRANGEMIN (WM_USER+7) #define TBM_SETRANGEMAX (WM_USER+8) #define TBM_CLEARTICS (WM_USER+9) #define TBM_SETSEL (WM_USER+10) #define TBM_SETSELSTART (WM_USER+11) #define TBM_SETSELEND (WM_USER+12) #define TBM_GETPTICS (WM_USER+14) #define TBM_GETTICPOS (WM_USER+15) #define TBM_GETNUMTICS (WM_USER+16) #define TBM_GETSELSTART (WM_USER+17) #define TBM_GETSELEND (WM_USER+18) #define TBM_CLEARSEL (WM_USER+19) #define TBM_SETTICFREQ (WM_USER+20) #define TBM_SETPAGESIZE (WM_USER+21) #define TBM_GETPAGESIZE (WM_USER+22) #define TBM_SETLINESIZE (WM_USER+23) #define TBM_GETLINESIZE (WM_USER+24) #define TBM_GETTHUMBRECT (WM_USER+25) #define TBM_GETCHANNELRECT (WM_USER+26) #define TBM_SETTHUMBLENGTH (WM_USER+27) #define TBM_GETTHUMBLENGTH (WM_USER+28) #define TB_LINEUP 0 #define TB_LINEDOWN 1 #define TB_PAGEUP 2 #define TB_PAGEDOWN 3 #define TB_THUMBPOSITION 4 #define TB_THUMBTRACK 5 #define TB_TOP 6 #define TB_BOTTOM 7 #define TB_ENDTRACK 8 #define HOTKEYF_SHIFT 1 #define HOTKEYF_CONTROL 2 #define HOTKEYF_ALT 4 #define HOTKEYF_EXT 8 #define HKCOMB_NONE 1 #define HKCOMB_S 2 #define HKCOMB_C 4 #define HKCOMB_A 8 #define HKCOMB_SC 16 #define HKCOMB_SA 32 #define HKCOMB_CA 64 #define HKCOMB_SCA 128 #define HKM_SETHOTKEY (WM_USER+1) #define HKM_GETHOTKEY (WM_USER+2) #define HKM_SETRULES (WM_USER+3) #define PBM_SETRANGE (WM_USER+1) #define PBM_SETPOS (WM_USER+2) #define PBM_DELTAPOS (WM_USER+3) #define PBM_SETSTEP (WM_USER+4) #define PBM_STEPIT (WM_USER+5) #define PBM_SETRANGE32 1030 #define PBM_GETRANGE 1031 #define PBM_GETPOS 1032 #define PBM_SETBARCOLOR 1033 #define PBM_SETBKCOLOR CCM_SETBKCOLOR #define PBS_SMOOTH 1 #define PBS_VERTICAL 4 #define LVS_ICON 0 #define LVS_REPORT 1 #define LVS_SMALLICON 2 #define LVS_LIST 3 #define LVS_TYPEMASK 3 #define LVS_SINGLESEL 4 #define LVS_SHOWSELALWAYS 8 #define LVS_SORTASCENDING 16 #define LVS_SORTDESCENDING 32 #define LVS_SHAREIMAGELISTS 64 #define LVS_NOLABELWRAP 128 #define LVS_AUTOARRANGE 256 #define LVS_EDITLABELS 512 #define LVS_NOSCROLL 0x2000 #define LVS_TYPESTYLEMASK 0xfc00 #define LVS_ALIGNTOP 0 #define LVS_ALIGNLEFT 0x800 #define LVS_ALIGNMASK 0xc00 #define LVS_OWNERDRAWFIXED 0x400 #define LVS_NOCOLUMNHEADER 0x4000 #define LVS_NOSORTHEADER 0x8000 #if (_WIN32_IE >= 0x0300) #define HDS_HOTTRACK 0x0004 #define HDS_DRAGDROP 0x0040 #define HDS_FULLDRAG 0x0080 #define HDS_FILTERBAR 0x0100 /* FIXME: missing CDIS_INDETERMINATE,CDIS_MARKED, CDDS_SUBITEM, CDRF_NOTIFYSUBITEMDRAW */ #define CDIS_CHECKED 8 #define CDIS_DEFAULT 32 #define CDIS_DISABLED 4 #define CDIS_FOCUS 16 #define CDIS_GRAYED 2 #define CDIS_HOT 64 #define CDIS_SELECTED 1 #define CDDS_POSTERASE 4 #define CDDS_POSTPAINT 2 #define CDDS_PREERASE 3 #define CDDS_PREPAINT 1 #define CDDS_ITEM 65536 #define CDDS_ITEMPOSTERASE 65540 #define CDDS_ITEMPOSTPAINT 65538 #define CDDS_ITEMPREERASE 65539 #define CDDS_ITEMPREPAINT 65537 #define CDRF_DODEFAULT 0 #define CDRF_NOTIFYITEMDRAW 32 #define CDRF_NOTIFYITEMERASE 128 #define CDRF_NOTIFYPOSTERASE 64 #define CDRF_NOTIFYPOSTPAINT 16 #define CDRF_NEWFONT 2 #define CDRF_SKIPDEFAULT 4 #define LVS_OWNERDATA 4096 #define LVS_EX_CHECKBOXES 4 #define LVS_EX_FULLROWSELECT 32 #define LVS_EX_GRIDLINES 1 #define LVS_EX_HEADERDRAGDROP 16 #define LVS_EX_ONECLICKACTIVATE 64 #define LVS_EX_SUBITEMIMAGES 2 #define LVS_EX_TRACKSELECT 8 #define LVS_EX_TWOCLICKACTIVATE 128 #define LVSICF_NOINVALIDATEALL 0x00000001 #define LVSICF_NOSCROLL 0x00000002 #if( _WIN32_IE >= 0x0400 ) #define LVS_EX_FLATSB 0x00000100 #define LVS_EX_REGIONAL 0x00000200 #define LVS_EX_INFOTIP 0x00000400 #define LVS_EX_UNDERLINEHOT 0x00000800 #define LVS_EX_UNDERLINECOLD 0x00001000 #define LVS_EX_MULTIWORKAREAS 0x00002000 #endif /* _WIN32_IE >=0x0400 */ #if( _WIN32_IE >= 0x0500 ) #define LVS_EX_LABELTIP 0x00004000 #define LVS_EX_BORDERSELECT 0x00008000 #endif /* _WIN32_IE >= 0x0500 */ #endif /* _WIN32_IE >= 0x0300 */ #define LVSIL_NORMAL 0 #define LVSIL_SMALL 1 #define LVSIL_STATE 2 #define LVM_GETBKCOLOR LVM_FIRST #define LVM_SETBKCOLOR (LVM_FIRST+1) #define LVM_GETIMAGELIST (LVM_FIRST+2) #define LVM_SETIMAGELIST (LVM_FIRST+3) #define LVM_GETITEMCOUNT (LVM_FIRST+4) #define LVIF_TEXT 1 #define LVIF_IMAGE 2 #define LVIF_PARAM 4 #define LVIF_STATE 8 #define LVIS_FOCUSED 1 #define LVIS_SELECTED 2 #define LVIS_CUT 4 #define LVIS_DROPHILITED 8 #define LVIS_OVERLAYMASK 0xF00 #define LVIS_STATEIMAGEMASK 0xF000 #define LPSTR_TEXTCALLBACKW ((LPWSTR)-1) #define LPSTR_TEXTCALLBACKA ((LPSTR)-1) #define I_IMAGECALLBACK (-1) #define LVM_GETITEMA (LVM_FIRST+5) #define LVM_GETITEMW (LVM_FIRST+75) #define LVM_SETITEMA (LVM_FIRST+6) #define LVM_SETITEMW (LVM_FIRST+76) #define LVM_INSERTITEMA (LVM_FIRST+7) #define LVM_INSERTITEMW (LVM_FIRST+77) #define LVM_DELETEITEM (LVM_FIRST+8) #define LVM_DELETEALLITEMS (LVM_FIRST+9) #define LVM_GETCALLBACKMASK (LVM_FIRST+10) #define LVM_SETCALLBACKMASK (LVM_FIRST+11) #define LVNI_ALL 0 #define LVNI_FOCUSED 1 #define LVNI_SELECTED 2 #define LVNI_CUT 4 #define LVNI_DROPHILITED 8 #define LVNI_ABOVE 256 #define LVNI_BELOW 512 #define LVNI_TOLEFT 1024 #define LVNI_TORIGHT 2048 #define LVM_GETNEXTITEM (LVM_FIRST+12) #define LVFI_PARAM 1 #define LVFI_STRING 2 #define LVFI_PARTIAL 8 #define LVFI_WRAP 32 #define LVFI_NEARESTXY 64 #define LVIF_DI_SETITEM 0x1000 #define LVM_FINDITEMA (LVM_FIRST+13) #define LVM_FINDITEMW (LVM_FIRST+83) #define LVIR_BOUNDS 0 #define LVIR_ICON 1 #define LVIR_LABEL 2 #define LVIR_SELECTBOUNDS 3 #define LVM_GETITEMRECT (LVM_FIRST+14) #define LVM_SETITEMPOSITION (LVM_FIRST+15) #define LVM_GETITEMPOSITION (LVM_FIRST+16) #define LVM_GETSTRINGWIDTHA (LVM_FIRST+17) #define LVM_GETSTRINGWIDTHW (LVM_FIRST+87) #define LVHT_NOWHERE 1 #define LVHT_ONITEMICON 2 #define LVHT_ONITEMLABEL 4 #define LVHT_ONITEMSTATEICON 8 #define LVHT_ONITEM (LVHT_ONITEMICON|LVHT_ONITEMLABEL|LVHT_ONITEMSTATEICON) #define LVHT_ABOVE 8 #define LVHT_BELOW 16 #define LVHT_TORIGHT 32 #define LVHT_TOLEFT 64 #define LVM_HITTEST (LVM_FIRST+18) #define LVM_ENSUREVISIBLE (LVM_FIRST+19) #define LVM_SCROLL (LVM_FIRST+20) #define LVM_REDRAWITEMS (LVM_FIRST+21) #define LVA_DEFAULT 0 #define LVA_ALIGNLEFT 1 #define LVA_ALIGNTOP 2 #define LVA_SNAPTOGRID 5 #define LVM_ARRANGE (LVM_FIRST+22) #define LVM_EDITLABELA (LVM_FIRST+23) #define LVM_EDITLABELW (LVM_FIRST+118) #define LVM_GETEDITCONTROL (LVM_FIRST+24) #define LVCF_FMT 1 #define LVCF_WIDTH 2 #define LVCF_TEXT 4 #define LVCF_SUBITEM 8 #if (_WIN32_IE >= 0x0300) #define LVCF_IMAGE 16 #define LVCF_ORDER 32 #endif #define LVCFMT_LEFT 0 #define LVCFMT_RIGHT 1 #define LVCFMT_CENTER 2 #define LVCFMT_JUSTIFYMASK 3 #if (_WIN32_IE >= 0x0300) #define LVCFMT_BITMAP_ON_RIGHT 4096 #define LVCFMT_COL_HAS_IMAGES 32768 #define LVCFMT_IMAGE 2048 #endif #define LVM_GETCOLUMNA (LVM_FIRST+25) #define LVM_GETCOLUMNW (LVM_FIRST+95) #define LVM_SETCOLUMNA (LVM_FIRST+26) #define LVM_SETCOLUMNW (LVM_FIRST+96) #define LVM_INSERTCOLUMNA (LVM_FIRST+27) #define LVM_INSERTCOLUMNW (LVM_FIRST+97) #define LVM_DELETECOLUMN (LVM_FIRST+28) #define LVM_GETCOLUMNWIDTH (LVM_FIRST+29) #define LVSCW_AUTOSIZE (-1) #define LVSCW_AUTOSIZE_USEHEADER (-2) #define LVM_SETCOLUMNWIDTH (LVM_FIRST+30) #define LVM_CREATEDRAGIMAGE (LVM_FIRST+33) #define LVM_GETVIEWRECT (LVM_FIRST+34) #define LVM_GETTEXTCOLOR (LVM_FIRST+35) #define LVM_SETTEXTCOLOR (LVM_FIRST+36) #define LVM_GETTEXTBKCOLOR (LVM_FIRST+37) #define LVM_SETTEXTBKCOLOR (LVM_FIRST+38) #define LVM_GETTOPINDEX (LVM_FIRST+39) #define LVM_GETCOUNTPERPAGE (LVM_FIRST+40) #define LVM_GETORIGIN (LVM_FIRST+41) #define LVM_GETORIGIN (LVM_FIRST+41) #define LVM_UPDATE (LVM_FIRST+42) #define LVM_SETITEMSTATE (LVM_FIRST+43) #define LVM_GETITEMSTATE (LVM_FIRST+44) #define LVM_GETITEMTEXTA (LVM_FIRST+45) #define LVM_GETITEMTEXTW (LVM_FIRST+115) #define LVM_SETITEMTEXTA (LVM_FIRST+46) #define LVM_SETITEMTEXTW (LVM_FIRST+116) #define LVM_SETITEMCOUNT (LVM_FIRST+47) #define LVM_SORTITEMS (LVM_FIRST+48) #define LVM_SETITEMPOSITION32 (LVM_FIRST+49) #define LVM_GETSELECTEDCOUNT (LVM_FIRST+50) #define LVM_GETITEMSPACING (LVM_FIRST+51) #define LVM_GETISEARCHSTRINGA (LVM_FIRST+52) #define LVM_GETISEARCHSTRINGW (LVM_FIRST+117) #if (_WIN32_IE >= 0x0300) #define LVM_APPROXIMATEVIEWRECT (LVM_FIRST+64) #define LVM_SETEXTENDEDLISTVIEWSTYLE (LVM_FIRST+54) #define LVM_GETEXTENDEDLISTVIEWSTYLE (LVM_FIRST+55) #define LVM_SETCOLUMNORDERARRAY (LVM_FIRST+58) #define LVM_GETCOLUMNORDERARRAY (LVM_FIRST+59) #define LVM_GETHEADER (LVM_FIRST+31) #define LVM_GETHOTCURSOR (LVM_FIRST+63) #define LVM_GETHOTITEM (LVM_FIRST+61) #define LVM_GETSUBITEMRECT (LVM_FIRST+56) #define LVM_SETHOTCURSOR (LVM_FIRST+62) #define LVM_SETHOTITEM (LVM_FIRST+60) #define LVM_SETICONSPACING (LVM_FIRST+53) #define LVM_SUBITEMHITTEST (LVM_FIRST+57) #endif #define LVN_ITEMCHANGING LVN_FIRST #define LVN_ITEMCHANGED (LVN_FIRST-1) #define LVN_INSERTITEM (LVN_FIRST-2) #define LVN_DELETEITEM (LVN_FIRST-3) #define LVN_DELETEALLITEMS (LVN_FIRST-4) #define LVN_BEGINLABELEDITA (LVN_FIRST-5) #define LVN_BEGINLABELEDITW (LVN_FIRST-75) #define LVN_ENDLABELEDITA (LVN_FIRST-6) #define LVN_ENDLABELEDITW (LVN_FIRST-76) #define LVN_COLUMNCLICK (LVN_FIRST-8) #define LVN_BEGINDRAG (LVN_FIRST-9) #define LVN_BEGINRDRAG (LVN_FIRST-11) #define LVN_GETDISPINFOA (LVN_FIRST-50) #define LVN_GETDISPINFOW (LVN_FIRST-77) #define LVN_SETDISPINFOA (LVN_FIRST-51) #define LVN_SETDISPINFOW (LVN_FIRST-78) #define LVN_KEYDOWN (LVN_FIRST-55) #if (_WIN32_IE >= 0x0400) #define LVKF_ALT 0x0001 #define LVKF_CONTROL 0x0002 #define LVKF_SHIFT 0x0004 #endif #define TVS_HASBUTTONS 1 #define TVS_HASLINES 2 #define TVS_LINESATROOT 4 #define TVS_EDITLABELS 8 #define TVS_DISABLEDRAGDROP 16 #define TVS_SHOWSELALWAYS 32 #if (_WIN32_IE >= 0x0300) #define TVS_CHECKBOXES 256 #define TVS_NOTOOLTIPS 128 #define TVS_RTLREADING 64 #define TVS_TRACKSELECT 512 #endif #if (_WIN32_IE >= 0x0400) #define TVS_FULLROWSELECT 4096 #define TVS_INFOTIP 2048 #define TVS_NONEVENHEIGHT 16384 #define TVS_NOSCROLL 8192 #define TVS_SINGLEEXPAND 1024 #endif #if( _WIN32_IE >= 0x0500 ) #define TVS_NOHSCROLL 0x8000 #endif /* _WIN32_IE >= 0x0500 */ #define TVIF_TEXT 1 #define TVIF_IMAGE 2 #define TVIF_PARAM 4 #define TVIF_STATE 8 #define TVIF_HANDLE 16 #define TVIF_SELECTEDIMAGE 32 #define TVIF_CHILDREN 64 #if (_WIN32_IE >= 0x0400) #define TVIF_INTEGRAL 0x0080 #endif /* _WIN32_IE >= 0x0400 */ #define TVIS_FOCUSED 1 #define TVIS_SELECTED 2 #define TVIS_CUT 4 #define TVIS_DROPHILITED 8 #define TVIS_BOLD 16 #define TVIS_EXPANDED 32 #define TVIS_EXPANDEDONCE 64 #define TVIS_OVERLAYMASK 0xF00 #define TVIS_STATEIMAGEMASK 0xF000 #define TVIS_USERMASK 0xF000 #define I_CHILDRENCALLBACK (-1) #define TVI_ROOT ((HTREEITEM)0xFFFF0000) #define TVI_FIRST ((HTREEITEM)0xFFFF0001) #define TVI_LAST ((HTREEITEM)0xFFFF0002) #define TVI_SORT ((HTREEITEM)0xFFFF0003) #define TVSIL_NORMAL 0 #define TVSIL_STATE 2 #define TVM_INSERTITEMA TV_FIRST #define TVM_INSERTITEMW (TV_FIRST+50) #define TVM_DELETEITEM (TV_FIRST+1) #define TVM_EXPAND (TV_FIRST+2) #define TVM_GETITEMRECT (TV_FIRST+4) #define TVM_GETCOUNT (TV_FIRST+5) #define TVM_GETINDENT (TV_FIRST+6) #define TVM_SETINDENT (TV_FIRST+7) #define TVM_GETIMAGELIST (TV_FIRST+8) #define TVM_SETIMAGELIST (TV_FIRST+9) #define TVM_GETNEXTITEM (TV_FIRST+10) #define TVM_SELECTITEM (TV_FIRST+11) #define TVM_GETITEMA (TV_FIRST+12) #define TVM_GETITEMW (TV_FIRST+62) #define TVM_SETITEMA (TV_FIRST+13) #define TVM_SETITEMW (TV_FIRST+63) #define TVM_EDITLABELA (TV_FIRST+14) #define TVM_EDITLABELW (TV_FIRST+65) #define TVM_GETEDITCONTROL (TV_FIRST+15) #define TVM_GETVISIBLECOUNT (TV_FIRST+16) #define TVM_HITTEST (TV_FIRST+17) #define TVM_CREATEDRAGIMAGE (TV_FIRST+18) #define TVM_SORTCHILDREN (TV_FIRST+19) #define TVM_ENSUREVISIBLE (TV_FIRST+20) #define TVM_SORTCHILDRENCB (TV_FIRST+21) #define TVM_ENDEDITLABELNOW (TV_FIRST+22) #define TVM_GETISEARCHSTRINGA (TV_FIRST+23) #define TVM_GETISEARCHSTRINGW (TV_FIRST+64) #if (_WIN32_IE >= 0x0300) #define TVM_GETTOOLTIPS (TV_FIRST+25) #define TVM_SETTOOLTIPS (TV_FIRST+24) #endif #if (_WIN32_IE >= 0x0400) #define TVM_GETBKCOLOR (TV_FIRST+31) #define TVM_GETINSERTMARKCOLOR (TV_FIRST+38) #define TVM_GETITEMHEIGHT (TV_FIRST+28) #define TVM_GETTEXTCOLOR (TV_FIRST+32) #define TVM_SETBKCOLOR (TV_FIRST+29) #define TVM_SETINSERTMARK (TV_FIRST+26) #define TVM_SETINSERTMARKCOLOR (TV_FIRST+37) #define TVM_SETITEMHEIGHT (TV_FIRST+27) #define TVM_SETTEXTCOLOR (TV_FIRST+30) #endif #define TVE_COLLAPSE 1 #define TVE_EXPAND 2 #define TVE_TOGGLE 3 #define TVE_COLLAPSERESET 0x8000 #define TVC_UNKNOWN 0 #define TVC_BYMOUSE 1 #define TVC_BYKEYBOARD 2 #define TVGN_ROOT 0 #define TVGN_NEXT 1 #define TVGN_PREVIOUS 2 #define TVGN_PARENT 3 #define TVGN_CHILD 4 #define TVGN_FIRSTVISIBLE 5 #define TVGN_NEXTVISIBLE 6 #define TVGN_PREVIOUSVISIBLE 7 #define TVGN_DROPHILITE 8 #define TVGN_CARET 9 #define TVN_SELCHANGINGA (TVN_FIRST-1) #define TVN_SELCHANGINGW (TVN_FIRST-50) #define TVN_SELCHANGEDA (TVN_FIRST-2) #define TVN_SELCHANGEDW (TVN_FIRST-51) #define TVN_GETDISPINFOA (TVN_FIRST-3) #define TVN_GETDISPINFOW (TVN_FIRST-52) #define TVN_SETDISPINFOA (TVN_FIRST-4) #define TVN_SETDISPINFOW (TVN_FIRST-53) #define TVN_ITEMEXPANDINGA (TVN_FIRST-5) #define TVN_ITEMEXPANDINGW (TVN_FIRST-54) #define TVN_ITEMEXPANDEDA (TVN_FIRST-6) #define TVN_ITEMEXPANDEDW (TVN_FIRST-55) #define TVN_BEGINDRAGA (TVN_FIRST-7) #define TVN_BEGINDRAGW (TVN_FIRST-56) #define TVN_BEGINRDRAGA (TVN_FIRST-8) #define TVN_BEGINRDRAGW (TVN_FIRST-57) #define TVN_DELETEITEMA (TVN_FIRST-9) #define TVN_DELETEITEMW (TVN_FIRST-58) #define TVN_BEGINLABELEDITA (TVN_FIRST-10) #define TVN_BEGINLABELEDITW (TVN_FIRST-59) #define TVN_ENDLABELEDITA (TVN_FIRST-11) #define TVN_ENDLABELEDITW (TVN_FIRST-60) #define TVN_KEYDOWN (TVN_FIRST-12) #define TVIF_DI_SETITEM 0x1000 #define TVHT_NOWHERE 1 #define TVHT_ONITEMICON 2 #define TVHT_ONITEMLABEL 4 #define TVHT_ONITEM (TVHT_ONITEMICON|TVHT_ONITEMLABEL|TVHT_ONITEMSTATEICON) #define TVHT_ONITEMINDENT 8 #define TVHT_ONITEMBUTTON 16 #define TVHT_ONITEMRIGHT 32 #define TVHT_ONITEMSTATEICON 64 #define TVHT_ABOVE 256 #define TVHT_BELOW 512 #define TVHT_TORIGHT 1024 #define TVHT_TOLEFT 2048 #define TCHT_NOWHERE 1 #define TCHT_ONITEMICON 2 #define TCHT_ONITEMLABEL 4 #define TCHT_ONITEM (TCHT_ONITEMICON|TCHT_ONITEMLABEL) #define TCS_FORCEICONLEFT 16 #define TCS_FORCELABELLEFT 32 #define TCS_TABS 0 #define TCS_BUTTONS 256 #define TCS_SINGLELINE 0 #define TCS_MULTILINE 512 #define TCS_RIGHTJUSTIFY 0 #define TCS_FIXEDWIDTH 1024 #define TCS_RAGGEDRIGHT 2048 #define TCS_FOCUSONBUTTONDOWN 0x1000 #define TCS_OWNERDRAWFIXED 0x2000 #define TCS_TOOLTIPS 0x4000 #define TCS_FOCUSNEVER 0x8000 #if (_WIN32_IE >= 0x0300) #define TCS_BOTTOM 2 #define TCS_RIGHT 2 #define TCS_VERTICAL 128 #define TCS_SCROLLOPPOSITE 0x0001 #define TCS_HOTTRACK 0x0040 #define TCS_MULTISELECT 0x0004 #endif #if( _WIN32_IE >= 0x0400 ) #define TCS_FLATBUTTONS 0x0008 #define TCS_EX_FLATSEPARATORS 0x00000001 #define TCS_EX_REGISTERDROP 0x00000002 #endif /* _WIN32_IE >= 0x0400 */ #define TCIF_TEXT 1 #define TCIF_IMAGE 2 #define TCIF_RTLREADING 4 #define TCIF_PARAM 8 #define TCM_FIRST 0x1300 #define TCM_GETIMAGELIST (TCM_FIRST+2) #define TCM_SETIMAGELIST (TCM_FIRST+3) #define TCM_GETITEMCOUNT (TCM_FIRST+4) #define TCM_GETITEMA (TCM_FIRST+5) #define TCM_GETITEMW (TCM_FIRST+60) #define TCM_SETITEMA (TCM_FIRST+6) #define TCM_SETITEMW (TCM_FIRST+61) #define TCM_INSERTITEMA (TCM_FIRST+7) #define TCM_INSERTITEMW (TCM_FIRST+62) #define TCM_DELETEITEM (TCM_FIRST+8) #define TCM_DELETEALLITEMS (TCM_FIRST+9) #define TCM_GETITEMRECT (TCM_FIRST+10) #define TCM_GETCURSEL (TCM_FIRST+11) #define TCM_SETCURSEL (TCM_FIRST+12) #define TCM_HITTEST (TCM_FIRST+13) #define TCM_SETITEMEXTRA (TCM_FIRST+14) #define TCM_ADJUSTRECT (TCM_FIRST+40) #define TCM_SETITEMSIZE (TCM_FIRST+41) #define TCM_REMOVEIMAGE (TCM_FIRST+42) #define TCM_SETPADDING (TCM_FIRST+43) #define TCM_GETROWCOUNT (TCM_FIRST+44) #define TCM_GETTOOLTIPS (TCM_FIRST+45) #define TCM_SETTOOLTIPS (TCM_FIRST+46) #define TCM_GETCURFOCUS (TCM_FIRST+47) #define TCM_SETCURFOCUS (TCM_FIRST+48) #define TCM_GETEXTENDEDSTYLE (TCM_FIRST + 53) #define TCN_KEYDOWN TCN_FIRST #define TCN_SELCHANGE (TCN_FIRST-1) #define TCN_SELCHANGING (TCN_FIRST-2) #define NM_OUTOFMEMORY (NM_FIRST-1) #define NM_CLICK (NM_FIRST-2) #define NM_DBLCLK (NM_FIRST-3) #define NM_RETURN (NM_FIRST-4) #define NM_RCLICK (NM_FIRST-5) #define NM_RDBLCLK (NM_FIRST-6) #define NM_SETFOCUS (NM_FIRST-7) #define NM_KILLFOCUS (NM_FIRST-8) #define NM_CUSTOMDRAW (NM_FIRST-12) #define NM_HOVER (NM_FIRST-13) #define NM_NCHITTEST (NM_FIRST-14) #define NM_KEYDOWN (NM_FIRST-15) #define NM_RELEASEDCAPTURE (NM_FIRST-16) #define NM_SETCURSOR (NM_FIRST-17) #define NM_CHAR (NM_FIRST-18) #define SBARS_SIZEGRIP 256 #define CCM_SETBKCOLOR 8193 #define CCM_SETCOLORSCHEME 8194 #define CCM_GETCOLORSCHEME 8195 #define CCM_GETDROPTARGET 8196 #define CCM_SETUNICODEFORMAT 8197 #define CCM_GETUNICODEFORMAT 8198 #define ICC_LISTVIEW_CLASSES 1 #define ICC_TREEVIEW_CLASSES 2 #define ICC_BAR_CLASSES 4 #define ICC_TAB_CLASSES 8 #define ICC_UPDOWN_CLASS 16 #define ICC_PROGRESS_CLASS 32 #define ICC_HOTKEY_CLASS 64 #define ICC_ANIMATE_CLASS 128 #define ICC_WIN95_CLASSES 255 #define ICC_DATE_CLASSES 256 #define ICC_USEREX_CLASSES 512 #define ICC_COOL_CLASSES 1024 #if (_WIN32_IE >= 0x0400) #define ICC_INTERNET_CLASSES 2048 #define ICC_PAGESCROLLER_CLASS 4096 #define ICC_NATIVEFNTCTL_CLASS 8192 #define INFOTIPSIZE #endif /* _WIN32_IE */ #define GDTR_MIN 1 #define GDTR_MAX 2 #define GMR_VISIBLE 0 #define GMR_DAYSTATE 1 #define GDT_ERROR -1 #define GDT_VALID 0 #define GDT_NONE 1 #define DTS_UPDOWN 1 #define DTS_SHOWNONE 2 #define DTS_SHORTDATEFORMAT 0 #define DTS_LONGDATEFORMAT 4 #define DTS_TIMEFORMAT 9 #define DTS_APPCANPARSE 16 #define DTS_RIGHTALIGN 32 #if ( _WIN32_IE >= 0x500 ) #define DTS_SHORTDATECENTURYFORMAT 0x000C #endif /* _WIN32_IE >= 0x500 */ #define MCS_DAYSTATE 1 #define MCS_MULTISELECT 2 #define MCS_WEEKNUMBERS 4 #if (_WIN32_IE >= 0x0400) #define MCS_NOTODAYCIRCLE 0x0008 #define MCS_NOTODAY 0x0010 #else /* _WIN32_IE >= 0x0400 */ #define MCS_NOTODAY 0x0008 #endif /* _WIN32_IE >= 0x0400 */ #define DTM_GETSYSTEMTIME 0x1001 #define DTM_SETSYSTEMTIME 0x1002 #define DTM_GETRANGE 0x1003 #define DTM_SETRANGE 0x1004 #define DTM_SETFORMATA 0x1005 #define DTM_SETFORMATW 0x1050 #define DTM_SETMCCOLOR 0x1006 #define DTM_GETMCCOLOR 0x1007 #define DTM_GETMONTHCAL 0x1008 #define DTM_SETMCFONT 0x1009 #define DTM_GETMCFONT 0x100a #define DTN_USERSTRINGA ((UINT)-758) #define DTN_USERSTRINGW ((UINT)-745) #define DTN_WMKEYDOWNA ((UINT)-757) #define DTN_WMKEYDOWNW ((UINT)-744) #define DTN_FORMATA ((UINT)-756) #define DTN_FORMATW ((UINT)-743) #define DTN_FORMATQUERYA ((UINT)-755) #define DTN_FORMATQUERYW ((UINT)-742) #define DTN_DROPDOWN ((UINT)-754) #define DTN_CLOSEUP ((UINT)-753) #define DTN_DATETIMECHANGE ((UINT)-759) #define MCM_GETCURSEL 0x1001 #define MCM_SETCURSEL 0x1002 #define MCM_GETMAXSELCOUNT 0x1003 #define MCM_SETMAXSELCOUNT 0x1004 #define MCM_GETSELRANGE 0x1005 #define MCM_SETSELRANGE 0x1006 #define MCM_GETMONTHRANGE 0x1007 #define MCM_SETDAYSTATE 0x1008 #define MCM_GETMINREQRECT 0x1009 #define MCM_SETCOLOR 0x100a #define MCM_GETCOLOR 0x100b #define MCM_SETTODAY 0x100c #define MCM_GETTODAY 0x100d #define MCM_HITTEST 0x100e #define MCM_SETFIRSTDAYOFWEEK 0x100f #define MCM_GETFIRSTDAYOFWEEK 0x1010 #define MCM_GETRANGE 0x1011 #define MCM_SETRANGE 0x1012 #define MCM_GETMONTHDELTA 0x1013 #define MCM_SETMONTHDELTA 0x1014 #define MCN_SELCHANGE ((UINT)-749) #define MCN_GETDAYSTATE ((UINT)-747) #define MCN_SELECT ((UINT)-746) #define ODT_HEADER 100 #define ODT_TAB 101 #define ODT_LISTVIEW #define SB_SETBKCOLOR 0x2001 #if (_WIN32_IE >= 0x0300) #define SB_ISSIMPLE 1038 #endif #define RBS_TOOLTIPS 256 #define RBS_VARHEIGHT 512 #define RBS_BANDBORDERS 1024 #define RBS_FIXEDORDER 2048 #define RBIM_IMAGELIST 1 #define RB_SETCOLORSCHEME CCM_SETCOLORSCHEME #define RB_GETCOLORSCHEME CCM_GETCOLORSCHEME #define RBBS_BREAK 1 #define RBBS_FIXEDSIZE 2 #define RBBS_CHILDEDGE 4 #define RBBS_HIDDEN 8 #define RBBS_NOVERT 16 #define RBBS_FIXEDBMP 32 #define RBBIM_STYLE 1 #define RBBIM_COLORS 2 #define RBBIM_TEXT 4 #define RBBIM_IMAGE 8 #define RBBIM_CHILD 16 #define RBBIM_CHILDSIZE 32 #define RBBIM_SIZE 64 #define RBBIM_BACKGROUND 128 #define RBBIM_ID 256 #define RB_INSERTBANDA (WM_USER+1) #define RB_INSERTBANDW (WM_USER+10) #define RB_DELETEBAND (WM_USER+2) #define RB_GETBARINFO (WM_USER+3) #define RB_SETBARINFO (WM_USER+4) #define RB_GETBANDCOUNT (WM_USER+12) #define RB_GETROWCOUNT (WM_USER+13) #define RB_GETROWHEIGHT (WM_USER+14) #define RB_SETBANDINFOA (WM_USER+6) #define RB_SETBANDINFOW (WM_USER+11) #define RB_SETPARENT (WM_USER+7) #define RBN_HEIGHTCHANGE RBN_FIRST #if (_WIN32_IE >= 0x0300) #define LVN_ODCACHEHINT (LVN_FIRST-13) #define LVN_ODFINDITEMA (LVN_FIRST-52) #define LVN_ODFINDITEMW (LVN_FIRST-79) #define LVN_ITEMACTIVATE (LVN_FIRST-14) #define LVN_ODSTATECHANGED (LVN_FIRST-15) #ifdef UNICODE #define LVN_ODFINDITEM LVN_ODFINDITEMW #else #define LVN_ODFINDITEM LVN_ODFINDITEMA #endif #endif /* _WIN32_IE */ #if (_WIN32_IE >= 0x0400) #define UDM_SETRANGE32 1135 #define UDM_GETRANGE32 1136 #define SB_SETICON 1039 #define SB_SETTIPTEXTA 1040 #define SB_SETTIPTEXTW 1041 #define SB_GETTIPTEXTA 1042 #define SB_GETTIPTEXTW 1043 #define SB_GETICON 1044 #define SB_SETUNICODEFORMAT 0x2005 #define SB_GETUNICODEFORMAT 0x2006 #define RBS_REGISTERDROP 4096 #define RBS_AUTOSIZE 8192 #define RBS_VERTICALGRIPPER 16384 #define RBS_DBLCLKTOGGLE 32768 #define RBBS_VARIABLEHEIGHT 64 #define RBBS_GRIPPERALWAYS 128 #define RBBS_NOGRIPPER 256 #define RBBIM_IDEALSIZE 512 #define RBBIM_LPARAM 1024 #define RBBIM_HEADERSIZE 2048 #define RB_HITTEST (WM_USER+8) #define RB_GETRECT (WM_USER+9) #define RB_IDTOINDEX (WM_USER+16) #define RB_GETTOOLTIPS (WM_USER+17) #define RB_SETTOOLTIPS (WM_USER+18) #define RB_SETBKCOLOR (WM_USER+19) #define RB_GETBKCOLOR (WM_USER+20) #define RB_SETTEXTCOLOR (WM_USER+21) #define RB_GETTEXTCOLOR (WM_USER+22) #define RB_SIZETORECT (WM_USER+23) #define RB_BEGINDRAG (WM_USER+24) #define RB_ENDDRAG (WM_USER+25) #define RB_DRAGMOVE (WM_USER+26) #define RB_GETBARHEIGHT (WM_USER+27) #define RB_GETBANDINFOW (WM_USER+28) #define RB_GETBANDINFOA (WM_USER+29) #define RB_MINIMIZEBAND (WM_USER+30) #define RB_MAXIMIZEBAND (WM_USER+31) #define RB_GETDROPTARGET CCM_GETDROPTARGET #define RB_GETBANDBORDERS (WM_USER+34) #define RB_SHOWBAND (WM_USER+35) #define RB_SETPALETTE (WM_USER+37) #define RB_GETPALETTE (WM_USER+38) #define RB_MOVEBAND (WM_USER+39) #define RB_SETUNICODEFORMAT CCM_SETUNICODEFORMAT #define RB_GETUNICODEFORMAT CCM_GETUNICODEFORMAT #define RBN_GETOBJECT (RBN_FIRST-1) #define RBN_LAYOUTCHANGED (RBN_FIRST-2) #define RBN_AUTOSIZE (RBN_FIRST-3) #define RBN_BEGINDRAG (RBN_FIRST-4) #define RBN_ENDDRAG (RBN_FIRST-5) #define RBN_DELETINGBAND (RBN_FIRST-6) #define RBN_DELETEDBAND (RBN_FIRST-7) #define RBN_CHILDSIZE (RBN_FIRST-8) #define RBNM_ID 1 #define RBNM_STYLE 2 #define RBNM_LPARAM 4 #define RBHT_NOWHERE 1 #define RBHT_CAPTION 2 #define RBHT_CLIENT 3 #define RBHT_GRABBER 4 #ifdef UNICODE #define SB_SETTIPTEXT SB_SETTIPTEXTW #define SB_GETTIPTEXT SB_GETTIPTEXTW #define RB_GETBANDINFO RB_GETBANDINFOW #else #define SB_SETTIPTEXT SB_SETTIPTEXTA #define SB_GETTIPTEXT SB_GETTIPTEXTA #define RB_GETBANDINFO RB_GETBANDINFOA #endif #else #define RB_GETBANDINFO (WM_USER+5) #endif /* _WIN32_IE >= 0x0400 */ #define CBEM_INSERTITEMA (WM_USER + 1) #define CBEM_SETIMAGELIST (WM_USER + 2) #define CBEM_GETIMAGELIST (WM_USER + 3) #define CBEM_GETITEMA (WM_USER + 4) #define CBEM_SETITEMA (WM_USER + 5) #define CBEM_DELETEITEM CB_DELETESTRING #define CBEM_GETCOMBOCONTROL (WM_USER + 6) #define CBEM_GETEDITCONTROL (WM_USER + 7) #define CBEM_SETEXSTYLE (WM_USER + 8) #define CBEM_GETEXSTYLE (WM_USER + 9) #if (_WIN32_IE >= 0x0400) #define CBEM_SETEXTENDEDSTYLE (WM_USER + 14) #define CBEM_GETEXTENDEDSTYLE (WM_USER + 9) #define CBEM_SETUNICODEFORMAT CCM_SETUNICODEFORMAT #define CBEM_GETUNICODEFORMAT CCM_GETUNICODEFORMAT #endif /* _WIN32_IE >= 0x0400 */ #define CBEM_HASEDITCHANGED (WM_USER + 10) #define CBEM_INSERTITEMW (WM_USER + 11) #define CBEM_SETITEMW (WM_USER + 12) #define CBEM_GETITEMW (WM_USER + 13) #ifndef RC_INVOKED typedef struct tagCOMBOBOXEXITEMA{ UINT mask; int iItem; LPSTR pszText; int cchTextMax; int iImage; int iSelectedImage; int iOverlay; int iIndent; LPARAM lParam; } COMBOBOXEXITEMA, *PCOMBOBOXEXITEMA; typedef COMBOBOXEXITEMA CONST *PCCOMBOEXITEMA; typedef struct tagCOMBOBOXEXITEMW{ UINT mask; int iItem; LPWSTR pszText; int cchTextMax; int iImage; int iSelectedImage; int iOverlay; int iIndent; LPARAM lParam; } COMBOBOXEXITEMW, *PCOMBOBOXEXITEMW; typedef COMBOBOXEXITEMW CONST *PCCOMBOEXITEMW; #if (_WIN32_IE >= 0x0400) typedef struct { NMHDR hdr; COMBOBOXEXITEMA ceItem; } NMCOMBOBOXEXA, *PNMCOMBOBOXEXA; typedef struct { NMHDR hdr; COMBOBOXEXITEMW ceItem; } NMCOMBOBOXEXW, *PNMCOMBOBOXEXW; typedef struct { NMHDR hdr; int iItemid; WCHAR szText[CBEMAXSTRLEN]; }NMCBEDRAGBEGINW, *LPNMCBEDRAGBEGINW, *PNMCBEDRAGBEGINW; typedef struct { NMHDR hdr; int iItemid; char szText[CBEMAXSTRLEN]; }NMCBEDRAGBEGINA, *LPNMCBEDRAGBEGINA, *PNMCBEDRAGBEGINA; typedef struct tagNMIPADDRESS{ NMHDR hdr; int iField; int iValue; } NMIPADDRESS, *LPNMIPADDRESS; #endif /*_WIN32_IE >= 0x0400*/ typedef struct { NMHDR hdr; BOOL fChanged; int iNewSelection; WCHAR szText[CBEMAXSTRLEN]; int iWhy; } NMCBEENDEDITW, *LPNMCBEENDEDITW, *PNMCBEENDEDITW; typedef struct { NMHDR hdr; BOOL fChanged; int iNewSelection; char szText[CBEMAXSTRLEN]; int iWhy; } NMCBEENDEDITA, *LPNMCBEENDEDITA,*PNMCBEENDEDITA; typedef struct _COLORMAP { COLORREF from; COLORREF to; } COLORMAP,*LPCOLORMAP; typedef struct { UINT uNotification; HWND hWnd; POINT ptCursor; } DRAGLISTINFO,*LPDRAGLISTINFO; typedef struct _TBBUTTON { int iBitmap; int idCommand; BYTE fsState; BYTE fsStyle; BYTE bReserved[2]; DWORD dwData; int iString; } TBBUTTON,*PTBBUTTON,*LPTBBUTTON; typedef const TBBUTTON *LPCTBBUTTON; #if _WIN32_IE >= 0x400 typedef struct { UINT cbSize; DWORD dwMask; int idCommand; int iImage; BYTE fsState; BYTE fsStyle; WORD cx; DWORD lParam; LPSTR pszText; int cchText; } TBBUTTONINFOA, *LPTBBUTTONINFOA; typedef struct { UINT cbSize; DWORD dwMask; int idCommand; int iImage; BYTE fsState; BYTE fsStyle; WORD cx; DWORD lParam; LPWSTR pszText; int cchText; } TBBUTTONINFOW, *LPTBBUTTONINFOW; #endif typedef struct { NMHDR hdr; int iItem; TBBUTTON tbButton; int cchText; LPTSTR pszText; } TBNOTIFY,*LPTBNOTIFY; typedef struct { HKEY hkr; LPCTSTR pszSubKey; LPCTSTR pszValueName; } TBSAVEPARAMS; typedef struct _IMAGEINFO { HBITMAP hbmImage; HBITMAP hbmMask; int Unused1; int Unused2; RECT rcImage; } IMAGEINFO; DECLARE_HANDLE(HIMAGELIST); typedef struct _HDITEMA { UINT mask; int cxy; LPSTR pszText; HBITMAP hbm; int cchTextMax; int fmt; LPARAM lParam; #if (_WIN32_IE >= 0x0300) int iImage; int iOrder; #endif #if (_WIN32_IE >= 0x0500) UINT type; LPVOID pvFilter; #endif } HDITEMA, * LPHDITEMA; typedef struct _HDITEMW { UINT mask; int cxy; LPWSTR pszText; HBITMAP hbm; int cchTextMax; int fmt; LPARAM lParam; #if (_WIN32_IE >= 0x0300) int iImage; int iOrder; #endif #if (_WIN32_IE >= 0x0500) UINT type; LPVOID pvFilter; #endif } HDITEMW, * LPHDITEMW; /* for backward compatability */ #define HD_ITEMA HDITEMA #define HD_ITEMW HDITEMW #define HD_ITEM HDITEM typedef struct _HD_LAYOUT { RECT *prc; WINDOWPOS *pwpos; } HDLAYOUT, *LPHDLAYOUT; #define HD_LAYOUT HDLAYOUT /* backward compatability */ typedef struct _HD_HITTESTINFO { POINT pt; UINT flags; int iItem; } HD_HITTESTINFO; typedef struct _HD_NOTIFYA { NMHDR hdr; int iItem; int iButton; HD_ITEMA *pitem; } HD_NOTIFYA; typedef struct _HD_NOTIFYW { NMHDR hdr; int iItem; int iButton; HD_ITEMW *pitem; } HD_NOTIFYW; /* FIXME: NMHEADER structure (base for all events of the comctl controls) is the same as HD_NOTIFY depending on the value of _WIN32_IE macro. I'm defining both for now. */ typedef struct _NMHEADERA { NMHDR hdr; int iItem; int iButton; HD_ITEMA* pitem; } NMHEADERA, *LPNMHEADERA; typedef struct _NMHEADERW { NMHDR hdr; int iItem; int iButton; HD_ITEMW* pitem; } NMHEADERW, *LPNMHEADERW; #ifdef UNICODE #define NMHEADER NMHEADERW #define LPNMHEADER LPNMHEADERW #else #define NMHEADER NMHEADERA #define LPNMHEADER LPNMHEADERA #endif /* End FIXME. */ typedef struct tagNMCUSTOMDRAWINFO { NMHDR hdr; DWORD dwDrawStage; HDC hdc; RECT rc; DWORD dwItemSpec; UINT uItemState; LPARAM lItemParam; } NMCUSTOMDRAW, *LPNMCUSTOMDRAW; typedef struct tagNMLVCUSTOMDRAW { NMCUSTOMDRAW nmcd; COLORREF clrText; COLORREF clrTextBk; #if _WIN32_IE >= 0x0400 int iSubItem; #endif } NMLVCUSTOMDRAW, *LPNMLVCUSTOMDRAW; typedef struct tagNMTVCUSTOMDRAW { NMCUSTOMDRAW nmcd; COLORREF clrText; COLORREF clrTextBk; #if _WIN32_IE >= 0x0400 int iLevel; #endif } NMTVCUSTOMDRAW, *LPNMTVCUSTOMDRAW; #if (_WIN32_IE >= 0x400) typedef struct tagNMITEMACTIVATE { NMHDR hdr; int iItem; int iSubItem; UINT uNewState; UINT uOldState; UINT uChanged; POINT ptAction; LPARAM lParam; UINT uKeyFlags; } NMITEMACTIVATE, *LPNMITEMACTIVATE; #endif /* _WIN32_IE >= 0x0400 */ typedef struct tagTBADDBITMAP { HINSTANCE hInst; UINT nID; } TBADDBITMAP,*LPTBADDBITMAP; typedef struct tagTBSAVEPARAMSA { HKEY hkr; LPCSTR pszSubKey; LPCSTR pszValueName; } TBSAVEPARAMSA; typedef struct tagTBSAVEPARAMSW { HKEY hkr; LPCWSTR pszSubKey; LPCWSTR pszValueName; } TBSAVEPARAMSW; typedef struct { HINSTANCE hInstOld; UINT nIDOld; HINSTANCE hInstNew; UINT nIDNew; int nButtons; } TBREPLACEBITMAP,*LPTBREPLACEBITMAP; typedef struct tagTBNOTIFYA { NMHDR hdr; int iItem; TBBUTTON tbButton; int cchText; LPSTR pszText; } TBNOTIFYA,*LPTBNOTIFYA; typedef struct tagTBNOTIFYW { NMHDR hdr; int iItem; TBBUTTON tbButton; int cchText; LPWSTR pszText; } TBNOTIFYW,*LPTBNOTIFYW; typedef struct tagTOOLINFOA { UINT cbSize; UINT uFlags; HWND hwnd; UINT uId; RECT rect; HINSTANCE hinst; LPSTR lpszText; } TOOLINFOA,*PTOOLINFOA,*LPTOOLINFOA; typedef struct tagTOOLINFOW { UINT cbSize; UINT uFlags; HWND hwnd; UINT uId; RECT rect; HINSTANCE hinst; LPWSTR lpszText; } TOOLINFOW,*PTOOLINFOW,*LPTOOLINFOW; typedef struct _TT_HITTESTINFOA { HWND hwnd; POINT pt; TOOLINFOA ti; } TTHITTESTINFOA,*LPHITTESTINFOA; typedef struct _TT_HITTESTINFOW { HWND hwnd; POINT pt; TOOLINFOW ti; } TTHITTESTINFOW,*LPHITTESTINFOW; typedef struct tagTOOLTIPTEXTA { NMHDR hdr; LPSTR lpszText; char szText[80]; HINSTANCE hinst; UINT uFlags; } TOOLTIPTEXTA,*LPTOOLTIPTEXTA; typedef struct tagTOOLTIPTEXTW { NMHDR hdr; LPWSTR lpszText; WCHAR szText[80]; HINSTANCE hinst; UINT uFlags; } TOOLTIPTEXTW,*LPTOOLTIPTEXTW; typedef struct _UDACCEL { UINT nSec; UINT nInc; } UDACCEL,*LPUDACCEL; typedef struct _NM_UPDOWN { NMHDR hdr; int iPos; int iDelta; } NM_UPDOWN,*LPNM_UPDOWN; typedef struct _LVITEMA { UINT mask; int iItem; int iSubItem; UINT state; UINT stateMask; LPSTR pszText; int cchTextMax; int iImage; LPARAM lParam; #if (_WIN32_IE >= 0x0300) int iIndent; #endif } LVITEMA, FAR *LPLVITEMA; #define _LV_ITEMA _LVITEMA #define LV_ITEMA LVITEMA typedef struct _LVITEMW { UINT mask; int iItem; int iSubItem; UINT state; UINT stateMask; LPWSTR pszText; int cchTextMax; int iImage; LPARAM lParam; #if (_WIN32_IE >= 0x0300) int iIndent; #endif } LVITEMW, FAR *LPLVITEMW; #define _LV_ITEMW _LVITEMW #define LV_ITEMW LVITEMW typedef struct tagLVFINDINFOA { UINT flags; LPCSTR psz; LPARAM lParam; POINT pt; UINT vkDirection; } LVFINDINFOA, FAR* LPFINDINFOA; #define _LV_FINDINFOA tagLVFINDINFOA #define LV_FINDINFOA LVFINDINFOA typedef struct tagLVFINDINFOW { UINT flags; LPCWSTR psz; LPARAM lParam; POINT pt; UINT vkDirection; } LVFINDINFOW, FAR* LPFINDINFOW; #define _LV_FINDINFOW tagLVFINDINFOW #define LV_FINDINFOW LVFINDINFOW typedef struct _LVHITTESTINFO { POINT pt; UINT flags; int iItem; } LVHITTESTINFO; #define _LV_HITTESTINFO _LVHITTESTINFO #define LV_HITTESTINFO LVHITTESTINFO typedef struct _LVCOLUMNA { UINT mask; int fmt; int cx; LPSTR pszText; int cchTextMax; int iSubItem; #if (_WIN32_IE >= 0x0300) int iImage; int iOrder; #endif } LVCOLUMNA, FAR *LPLVCOLUMNA; #define _LV_COLUMNA _LVCOLUMNA #define LV_COLUMNA LVCOLUMNA typedef struct _LVCOLUMNW { UINT mask; int fmt; int cx; LPWSTR pszText; int cchTextMax; int iSubItem; #if (_WIN32_IE >= 0x0300) int iImage; int iOrder; #endif } LVCOLUMNW, FAR *LPLVCOLUMNW; #define _LV_COLUMNW _LVCOLUMNW #define LV_COLUMNW LVCOLUMNW typedef int(CALLBACK *PFNLVCOMPARE)(LPARAM,LPARAM,LPARAM); typedef struct tagNMLISTVIEW { NMHDR hdr; int iItem; int iSubItem; UINT uNewState; UINT uOldState; UINT uChanged; POINT ptAction; LPARAM lParam; } NMLISTVIEW, *LPNMLISTVIEW; /* for backward compatability */ #define _NM_LISTVIEW tagNMLISTVIEW #define NM_LISTVIEW NMLISTVIEW #define LPNM_LISTVIEW LPNMLISTVIEW typedef struct tagNMLVDISPINFOA { NMHDR hdr; LV_ITEMA item; } NMLVDISPINFOA, FAR *LPNMLVDISPINFOA; #define _LV_DISPINFOA tagNMLVDISPINFOA #define LV_DISPINFOA NMLVDISPINFOA typedef struct tagNMLVDISPINFOW { NMHDR hdr; LV_ITEMW item; } NMLVDISPINFOW, FAR *LPNMLVDISPINFOW; #define _LV_DISPINFOW tagNMLVDISPINFOW #define LV_DISPINFOW NMLVDISPINFOW typedef struct _LV_KEYDOWN { NMHDR hdr; WORD wVKey; UINT flags; } LV_KEYDOWN; typedef struct tagNMLVCACHEHINT { NMHDR hdr; int iFrom; int iTo; } NMLVCACHEHINT, *PNMLVCACHEHINT; #define NM_CACHEHINT NMLVCACHEHINT DECLARE_HANDLE(HTREEITEM); typedef struct tagTVITEMA { UINT mask; HTREEITEM hItem; UINT state; UINT stateMask; LPSTR pszText; int cchTextMax; int iImage; int iSelectedImage; int cChildren; LPARAM lParam; } TVITEMA,*LPTVITEMA; #define _TV_ITEMA tagTVITEMA #define TV_ITEMA TVITEMA #define LPTV_ITEMA LPTVITEMA typedef struct tagTVITEMW { UINT mask; HTREEITEM hItem; UINT state; UINT stateMask; LPWSTR pszText; int cchTextMax; int iImage; int iSelectedImage; int cChildren; LPARAM lParam; } TVITEMW,*LPTVITEMW; #define _TV_ITEMW tagTVITEMW #define TV_ITEMW TVITEMW #define LPTV_ITEMW LPTVITEMW #if (_WIN32_IE >= 0x0400) typedef struct tagTVITEMEXA { UINT mask; HTREEITEM hItem; UINT state; UINT stateMask; LPSTR pszText; int cchTextMax; int iImage; int iSelectedImage; int cChildren; LPARAM lParam; int iIntegral; } TVITEMEXA, *LPTVITEMEXA; typedef struct tagTVITEMEXW { UINT mask; HTREEITEM hItem; UINT state; UINT stateMask; LPWSTR pszText; int cchTextMax; int iImage; int iSelectedImage; int cChildren; LPARAM lParam; int iIntegral; } TVITEMEXW, *LPTVITEMEXW; #endif /* _WIN32_IE >= 0x0400 */ typedef struct tagTVINSERTSTRUCTA { HTREEITEM hParent; HTREEITEM hInsertAfter; #if (_WIN32_IE >= 0x0400) _ANONYMOUS_UNION union { TVITEMEXA itemex; TV_ITEMA item; } DUMMYUNIONNAME; #else TV_ITEMA item; #endif } TVINSERTSTRUCTA,*LPTVINSERTSTRUCTA; #define _TV_INSERTSTRUCTA tagTVINSERTSTRUCTA #define TV_INSERTSTRUCTA TVINSERTSTRUCTA #define LPTV_INSERTSTRUCTA LPTVINSERTSTRUCTA typedef struct tagTVINSERTSTRUCTW { HTREEITEM hParent; HTREEITEM hInsertAfter; #if (_WIN32_IE >= 0x0400) _ANONYMOUS_UNION union { TVITEMEXW itemex; TV_ITEMW item; } DUMMYUNIONNAME; #else TV_ITEMW item; #endif } TVINSERTSTRUCTW,*LPTVINSERTSTRUCTW; #define _TV_INSERTSTRUCTW tagTVINSERTSTRUCTW #define TV_INSERTSTRUCTW TVINSERTSTRUCTW #define LPTV_INSERTSTRUCTW LPTVINSERTSTRUCTW typedef struct tagTVHITTESTINFO { POINT pt; UINT flags; HTREEITEM hItem; } TVHITTESTINFO, *LPTVHITTESTINFO; #define _TV_HITTESTINFO tagTVHITTESTINFO #define TV_HITTESTINFO TVHITTESTINFO #define LPTV_HITTESTINFO LPTVHITTESTINFO typedef int(CALLBACK *PFNTVCOMPARE)(LPARAM,LPARAM,LPARAM); typedef struct _TV_SORTCB { HTREEITEM hParent; PFNTVCOMPARE lpfnCompare; LPARAM lParam; } TV_SORTCB,*LPTV_SORTCB; typedef struct tagNMTREEVIEWA { NMHDR hdr; UINT action; TV_ITEMA itemOld; TV_ITEMA itemNew; POINT ptDrag; } NMTREEVIEWA,*LPNMTREEVIEWA; #define _NM_TREEVIEWA tagNMTREEVIEWA #define NM_TREEVIEWA NMTREEVIEWA #define LPNM_TREEVIEWA LPNMTREEVIEWA typedef struct tagNMTREEVIEWW { NMHDR hdr; UINT action; TV_ITEMW itemOld; TV_ITEMW itemNew; POINT ptDrag; } NMTREEVIEWW,*LPNMTREEVIEWW; #define _NM_TREEVIEWW tagNMTREEVIEWW #define NM_TREEVIEWW NMTREEVIEWW #define LPNM_TREEVIEWW LPNMTREEVIEWW typedef struct _TV_DISPINFOA { NMHDR hdr; TV_ITEMA item; } TV_DISPINFOA; typedef struct _TV_DISPINFOW { NMHDR hdr; TV_ITEMW item; } TV_DISPINFOW; typedef struct _TV_KEYDOWN { NMHDR hdr; WORD wVKey; UINT flags; } TV_KEYDOWN; typedef struct _TC_ITEMHEADERA { UINT mask; UINT lpReserved1; UINT lpReserved2; LPSTR pszText; int cchTextMax; int iImage; } TC_ITEMHEADERA; typedef struct _TC_ITEMHEADERW { UINT mask; UINT lpReserved1; UINT lpReserved2; LPWSTR pszText; int cchTextMax; int iImage; } TC_ITEMHEADERW; typedef struct _TC_ITEMA { UINT mask; UINT lpReserved1; UINT lpReserved2; LPSTR pszText; int cchTextMax; int iImage; LPARAM lParam; } TC_ITEMA; typedef struct _TC_ITEMW { UINT mask; UINT lpReserved1; UINT lpReserved2; LPWSTR pszText; int cchTextMax; int iImage; LPARAM lParam; } TC_ITEMW; typedef struct _TC_HITTESTINFO { POINT pt; UINT flags; } TC_HITTESTINFO,*LPTC_HITTESTINFO; typedef struct _TC_KEYDOWN { NMHDR hdr; WORD wVKey; UINT flags; } TC_KEYDOWN; #if (_WIN32_IE >= 0x0300) typedef struct tagINITCOMMONCONTROLSEX { DWORD dwSize; DWORD dwICC; } INITCOMMONCONTROLSEX,*LPINITCOMMONCONTROLSEX; #endif typedef struct tagPBRANGE { int iLow; int iHigh; } PBRANGE,*PPBRANGE; typedef struct tagCOLORSCHEME { DWORD dwSize; COLORREF clrBtnHighlight; COLORREF clrBtnShadow; } COLORSCHEME,*LPCOLORSCHEME; typedef struct tagTCITEM { UINT mask; #if (_WIN32_IE >= 0x0300) DWORD dwState; DWORD dwStateMask; #else UINT lpReserved1; UINT lpReserved2; #endif #ifdef UNICODE LPWSTR pszText; #else LPSTR pszText; #endif int cchTextMax; int iImage; LPARAM lParam; } TCITEM,*LPTCITEM; typedef struct tagMCHITTESTINFO { UINT cbSize; POINT pt; UINT uHit; SYSTEMTIME st; }MCHITTESTINFO, *PMCHITTESTINFO; typedef DWORD MONTHDAYSTATE; typedef MONTHDAYSTATE *LPMONTHDAYSTATE; typedef struct tagNMDAYSTATE { NMHDR nmhdr; SYSTEMTIME stStart; int cDayState; LPMONTHDAYSTATE prgDayState; }NMDAYSTATE,*LPNMDAYSTATE; typedef struct tagREBARINFO { UINT cbSize; UINT fMask; HIMAGELIST himl; } REBARINFO,*LPREBARINFO; typedef struct tagREBARBANDINFOA { UINT cbSize; UINT fMask; UINT fStyle; COLORREF clrFore; COLORREF clrBack; LPSTR lpText; UINT cch; int iImage; HWND hwndChild; UINT cxMinChild; UINT cyMinChild; UINT cx; HBITMAP hbmBack; UINT wID; #if (_WIN32_IE >= 0x0400) UINT cyChild; UINT cyMaxChild; UINT cyIntegral; UINT cxIdeal; LPARAM lParam; UINT cxHeader; #endif } REBARBANDINFOA,*LPREBARBANDINFOA; typedef struct tagREBARBANDINFOW { UINT cbSize; UINT fMask; UINT fStyle; COLORREF clrFore; COLORREF clrBack; LPWSTR lpText; UINT cch; int iImage; HWND hwndChild; UINT cxMinChild; UINT cyMinChild; UINT cx; HBITMAP hbmBack; UINT wID; #if (_WIN32_IE >= 0x0400) UINT cyChild; UINT cyMaxChild; UINT cyIntegral; UINT cxIdeal; LPARAM lParam; UINT cxHeader; #endif } REBARBANDINFOW,*LPREBARBANDINFOW; typedef REBARBANDINFOA const *LPCREBARBANDINFOA; typedef REBARBANDINFOW const *LPCREBARBANDINFOW; #define REBARBANDINFOA_V3_SIZE CCSIZEOF_STRUCT(REBARBANDINFOA,wID) #define REBARBANDINFOW_V3_SIZE CCSIZEOF_STRUCT(REBARBANDINFOW, wID) #if (_WIN32_IE >= 0x0300) typedef struct tagTCHITTESTINFO { POINT pt; UINT flags; } TCHITTESTINFO,*LPTCHITTESTINFO; typedef struct tagIMAGELISTDRAWPARAMS { DWORD cbSize; HIMAGELIST himl; int i; HDC hdcDst; int x; int y; int cx; int cy; int xBitmap; int yBitmap; COLORREF rgbBk; COLORREF rgbFg; UINT fStyle; DWORD dwRop; } IMAGELISTDRAWPARAMS,*LPIMAGELISTDRAWPARAMS; #endif /* (_WIN32_IE >= 0x0300) */ #if (_WIN32_IE >= 0x0400) typedef struct tagNMREBARCHILDSIZE { NMHDR hdr; UINT uBand; UINT wID; RECT rcChild; RECT rcBand; } NMREBARCHILDSIZE,*LPNMREBARCHILDSIZE; typedef struct tagNMREBAR { NMHDR hdr; DWORD dwMask; UINT uBand; UINT fStyle; UINT wID; LPARAM lParam; } NMREBAR,*LPNMREBAR; typedef struct tagNMRBAUTOSIZE { NMHDR hdr; BOOL fChanged; RECT rcTarget; RECT rcActual; } NMRBAUTOSIZE,*LPNMRBAUTOSIZE; typedef struct _RB_HITTESTINFO { POINT pt; UINT flags; int iBand; } RBHITTESTINFO,*LPRBHITTESTINFO; #endif #define INDEXTOOVERLAYMASK(i) ((i)<<8) #define INDEXTOSTATEIMAGEMASK(i) ((i)<<12) #define HANDLE_WM_NOTIFY(h,w,l,f) (f)((h),(int)(w),(NMHDR*)(l)) #define FORWARD_WM_NOTIFY(h,i,p,f) (LRESULT)(f)((h),WM_NOTIFY,(WPARAM)(int)(i),(LPARAM)(NMHDR*)(p)) #define CCSIZEOF_STRUCT(n,m) (((int)((PBYTE)(&((s*)0)->m)-((PBYTE)((s*)0))))+sizeof(((s*)0)->m)) #define MAKEIPADDRESS(b1,b2,b3,b4) ((LPARAM)(((DWORD)(b1)<<24)+((DWORD)(b2)<<16)+((DWORD)(b3)<<8)+((DWORD)(b4)))) #define MAKEIPRANGE(low,high) ((LPARAM)(WORD)(((BYTE)(high)<<8)+(BYTE)(low))) #define FIRST_IPADDRESS(a) ((a>>24) & 0xff) #define SECOND_IPADDRESS(a) ((a>>16) & 0xff) #define THIRD_IPADDRESS(a) ((a>>8) & 0xff) #define FOURTH_IPADDRESS(a) (a & 0xff) #define Animate_Create(w,i,s,hI) CreateWindow(ANIMATE_CLASS,NULL,s,0,0,0,0,w,(HMENU)(i),hI,NULL) #define Animate_Open(w,f) (BOOL)SNDMSG(w,ACM_OPEN,0,(LPARAM)f) #define Animate_Play(w,f,t,r) (BOOL)SNDMSG(w,ACM_PLAY,(r),(LPARAM)MAKELONG(f,t)) #define Animate_Stop(w) (BOOL)SNDMSG(w,ACM_STOP,0,0) #define Animate_Close(w) Animate_Open(w,NULL) #define Animate_Seek(w,f) Animate_Play(w,f,f,1) HBITMAP WINAPI CreateMappedBitmap(HINSTANCE,int,UINT,LPCOLORMAP,int); HWND WINAPI CreateStatusWindowA(LONG,LPCSTR,HWND,UINT); HWND WINAPI CreateStatusWindowW(LONG,LPCWSTR,HWND,UINT); HWND WINAPI CreateToolbarEx(HWND,DWORD,UINT,int,HINSTANCE,UINT,LPCTBBUTTON,int,int,int,int,int,UINT); HWND WINAPI CreateUpDownControl(DWORD,int,int,int,int,HWND,int,HINSTANCE,HWND,int,int,int); #define DateTime_GetMonthCal(hwnd) SNDMSG(hwnd, DTM_GETMONTHCAL, 0, 0) #define DateTime_GetMonthCalColor(hwnd, icolor) SNDMSG(hwnd, DTM_GETMONTHCAL, (WPARAM)icolor,0) #define DateTime_GetMonthCalFont(hwnd) SNDMSG(hwnd,DTM_GETMCFONT,0,0) #define DateTime_GetRange(hwnd,lpsystimearray) SNDMSG(hwnd,DTM_GETRANGE,0,(LPARAM)lpsystimearray) #define DateTime_GetSystemTime(hwnd,lpsystime) SNDMSG(hwnd,DTM_GETSYSTEMTIME,0,(LPARAM)lpsystime) #define DateTime_SetFormat(hwnd,lpszformat) SNDMSG(hwnd,DTM_SETFORMAT,0,(LPARAM)lpszformat) #define DateTime_SetMonthCalColor(hwnd,icolor,clr) SNDMSG(hwnd,DTM_SETMCCOLOR,(WPARAM)icolor,(LPARAM)clr) #define DateTime_SetMonthCalFont(hwnd,hfont,lparam) SNDMSG(hwnd,DTM_SETMCFONT,(WPARAM)hfont,(LPARAM)lparam) #define DateTime_SetRange(hwnd,flags,lpsystimearray) SNDMSG(hwnd,DTM_SETRANGE,(WPARAM)flags,(LPARAM)lpsystimearray) #define DateTime_SetSystemTime(hwnd,flag,lpsystime) SNDMSG(hwnd,DTM_SETSYSTEMTIME,(WPARAM)flag,(LPARAM)lpsystime) void WINAPI DrawInsert(HWND,HWND,int); void WINAPI DrawStatusTextA(HDC,LPRECT,LPCSTR,UINT); void WINAPI DrawStatusTextW(HDC,LPRECT,LPCWSTR,UINT); void WINAPI GetEffectiveClientRect(HWND,LPRECT,LPINT); #define Header_GetItemCount(w) (int)SNDMSG((w),HDM_GETITEMCOUNT,0,0) #define Header_InsertItem(w,i,phdi) (int)SNDMSG((w),HDM_INSERTITEM,(WPARAM)(int)(i),(LPARAM)(const HD_ITEM*)(phdi)) #define Header_DeleteItem(w,i) (BOOL)SNDMSG((w),HDM_DELETEITEM,(WPARAM)(int)(i),0) #define Header_GetItem(w,i,phdi) (BOOL)SNDMSG((w),HDM_GETITEM,(WPARAM)(int)(i),(LPARAM)(HD_ITEM*)(phdi)) #define Header_SetItem(w,i,phdi) (BOOL)SNDMSG((w),HDM_SETITEM,(WPARAM)(int)(i),(LPARAM)(const HD_ITEM*)(phdi)) #define Header_Layout(w,l) (BOOL)SNDMSG((w),HDM_LAYOUT,0,(LPARAM)(HD_LAYOUT*)(l)) #if (_WIN32_IE >= 0x0300) #define Header_GetItemRect(w,i,r) (BOOL)SNDMSG((w),HDM_GETITEMRECT,(WPARAM)(i),(LPARAM)(r)) #define Header_SetOrderArray(w,l,a) (BOOL)SNDMSG((w),HDM_SETORDERARRAY,(WPARAM)(l),(LPARAM)(a)) #endif int WINAPI ImageList_Add(HIMAGELIST,HBITMAP,HBITMAP); #define ImageList_AddIcon(l,i) ImageList_ReplaceIcon(l,-1,i) int WINAPI ImageList_AddMasked(HIMAGELIST,HBITMAP,COLORREF); BOOL WINAPI ImageList_BeginDrag(HIMAGELIST,int,int,int); HIMAGELIST WINAPI ImageList_Create(int,int,UINT,int,int); BOOL WINAPI ImageList_Destroy(HIMAGELIST); BOOL WINAPI ImageList_DragEnter(HWND,int,int); BOOL WINAPI ImageList_DragLeave(HWND); BOOL WINAPI ImageList_DragMove(int,int); BOOL WINAPI ImageList_DragShowNolock(BOOL); BOOL WINAPI ImageList_Draw(HIMAGELIST,int,HDC,int,int,UINT); BOOL WINAPI ImageList_DrawEx(HIMAGELIST,int,HDC,int,int,int,int,COLORREF,COLORREF,UINT); void WINAPI ImageList_EndDrag(VOID); #define ImageList_ExtractIcon(h,l,i) ImageList_GetIcon(l,i,0) COLORREF WINAPI ImageList_GetBkColor(HIMAGELIST); HIMAGELIST WINAPI ImageList_GetDragImage(LPPOINT,LPPOINT); HICON WINAPI ImageList_GetIcon(HIMAGELIST,int,UINT); BOOL WINAPI ImageList_GetIconSize(HIMAGELIST,int*,int*); int WINAPI ImageList_GetImageCount(HIMAGELIST); BOOL WINAPI ImageList_GetImageInfo(HIMAGELIST,int,IMAGEINFO*); #define ImageList_LoadBitmap(h,l,x,G,M) ImageList_LoadImage(h,l,x,G,M,IMAGE_BITMAP,0) HIMAGELIST WINAPI ImageList_LoadImageA(HINSTANCE,LPCSTR,int,int,COLORREF,UINT,UINT); HIMAGELIST WINAPI ImageList_LoadImageW(HINSTANCE,LPCWSTR,int,int,COLORREF,UINT,UINT); HIMAGELIST WINAPI ImageList_Merge(HIMAGELIST,int,HIMAGELIST,int,int,int); BOOL WINAPI ImageList_Remove(HIMAGELIST,int); #define ImageList_RemoveAll(l) ImageList_Remove(l,-1) BOOL WINAPI ImageList_Replace(HIMAGELIST,int,HBITMAP,HBITMAP); int WINAPI ImageList_ReplaceIcon(HIMAGELIST,int,HICON); COLORREF WINAPI ImageList_SetBkColor(HIMAGELIST,COLORREF); BOOL WINAPI ImageList_SetDragCursorImage(HIMAGELIST,int,int,int); BOOL WINAPI ImageList_SetIconSize(HIMAGELIST,int,int); BOOL WINAPI ImageList_SetOverlayImage(HIMAGELIST,int,int); #ifdef _OBJIDL_H HIMAGELIST WINAPI ImageList_Read(LPSTREAM); BOOL WINAPI ImageList_Write(HIMAGELIST,LPSTREAM); #endif void WINAPI InitCommonControls(void); #if (_WIN32_IE >= 0x0300) BOOL WINAPI InitCommonControlsEx(LPINITCOMMONCONTROLSEX); #endif int WINAPI LBItemFromPt(HWND,POINT,BOOL); #define ListView_GetBkColor(w) (COLORREF)SNDMSG((w),LVM_GETBKCOLOR,0,0) #define ListView_GetImageList(w,i) (HIMAGELIST)SNDMSG((w),LVM_GETIMAGELIST,(i),0) #define ListView_GetItemCount(w) (int)SNDMSG((w),LVM_GETITEMCOUNT,0,0) #define ListView_GetItem(w,i) (BOOL)SNDMSG((w),LVM_GETITEM,0,(LPARAM)(i)) #define ListView_SetBkColor(w,c) (BOOL)SNDMSG((w),LVM_SETBKCOLOR,0,(LPARAM)c) #define ListView_SetImageList(w,h,i) (HIMAGELIST)(UINT)SNDMSG((w),LVM_SETIMAGELIST,(i),(LPARAM)(h)) #define ListView_SetItem(w,i) (BOOL)SNDMSG((w),LVM_SETITEM,0,(LPARAM)(const LV_ITEM*)(i)) #define ListView_InsertItem(w,i) (int)SNDMSG((w),LVM_INSERTITEM,0,(LPARAM)(const LV_ITEM*)(i)) #define ListView_DeleteItem(w,i) (BOOL)SNDMSG((w),LVM_DELETEITEM,i,0) #define ListView_DeleteAllItems(w) (BOOL)SNDMSG((w),LVM_DELETEALLITEMS,0,0) #define ListView_GetCallbackMask(w) (BOOL)SNDMSG((w),LVM_GETCALLBACKMASK,0,0) #define ListView_SetCallbackMask(w,m) (BOOL)SNDMSG((w),LVM_SETCALLBACKMASK,m,0) #define ListView_GetNextItem(w,i,f) (int)SNDMSG((w),LVM_GETNEXTITEM,i,MAKELPARAM((f),0)) #define ListView_FindItem(w,i,p) (int)SNDMSG((w), LVM_FINDITEM,i,(LPARAM)(const LV_FINDINFO*)(p)) #define ListView_GetItemRect(w,i,p,c) (BOOL)SNDMSG((w),LVM_GETITEMRECT,i,((p)?(((LPRECT)(p))->left=(c),(LPARAM)(LPRECT)(p)):0)) #define ListView_SetItemPosition(w,i,x,y) (BOOL)SNDMSG((w),LVM_SETITEMPOSITION,i,MAKELPARAM(x,y)) #define ListView_GetItemPosition(w,i,p) (BOOL)SNDMSG((w),LVM_GETITEMPOSITION,i,(LPARAM)p) #define ListView_GetItemSpacing(w,f) (DWORD)SNDMSG((w),LVM_GETITEMSPACING,f,0) #define ListView_GetStringWidth(w,s) (int)SNDMSG((w),LVM_GETSTRINGWIDTH,0,(LPARAM)s) #define ListView_HitTest(w,p) (int)SNDMSG((w),LVM_HITTEST,0,(LPARAM)(LV_HITTESTINFO*)(p)) #define ListView_EnsureVisible(w,i,f) (BOOL)SNDMSG((w),LVM_ENSUREVISIBLE,i,MAKELPARAM((f),0)) #define ListView_Scroll(w,dx,dy) (BOOL)SNDMSG((w),LVM_SCROLL,dx,dy) #define ListView_RedrawItems(w,f,l) (BOOL)SNDMSG((w),LVM_REDRAWITEMS,f,l) #define ListView_Arrange(w,c) (BOOL)SNDMSG((w),LVM_ARRANGE,c,0) #define ListView_EditLabel(w,i) (HWND)SNDMSG((w),LVM_EDITLABEL,i,0) #define ListView_GetEditControl(w) (HWND)SNDMSG((w),LVM_GETEDITCONTROL,0,0) #define ListView_GetColumn(w,i,p) (BOOL)SNDMSG((w),LVM_GETCOLUMN,i,(LPARAM)(LV_COLUMN*)(p)) #define ListView_SetColumn(w,i,p) (BOOL)SNDMSG((w),LVM_SETCOLUMN,i,(LPARAM)(const LV_COLUMN*)(p)) #define ListView_InsertColumn(w,i,p) (int)SNDMSG((w),LVM_INSERTCOLUMN,i,(LPARAM)(const LV_COLUMN*)(p)) #define ListView_DeleteColumn(w,i) (BOOL)SNDMSG((w),LVM_DELETECOLUMN,i,0) #define ListView_GetColumnWidth(w,i) (int)SNDMSG((w),LVM_GETCOLUMNWIDTH,i,0) #define ListView_SetColumnWidth(w,i,x) (BOOL)SNDMSG((w),LVM_SETCOLUMNWIDTH,i,MAKELPARAM((x),0)) #define ListView_CreateDragImage(w,i,p) (HIMAGELIST)SNDMSG((w),LVM_CREATEDRAGIMAGE,i,(LPARAM)(LPPOINT)(p)) #define ListView_GetViewRect(w,p) (BOOL)SNDMSG((w),LVM_GETVIEWRECT,0,(LPARAM)(LPRECT)(p)) #define ListView_GetTextColor(w) (COLORREF)SNDMSG((w),LVM_GETTEXTCOLOR,0,0) #define ListView_SetTextColor(w,c) (BOOL)SNDMSG((w),LVM_SETTEXTCOLOR,0,(LPARAM)(COLORREF)(c)) #define ListView_GetTextBkColor(w) (COLORREF)SNDMSG((w),LVM_GETTEXTBKCOLOR,0,0) #define ListView_SetTextBkColor(w,c) (BOOL)SNDMSG((w),LVM_SETTEXTBKCOLOR,0,(LPARAM)(COLORREF)(c)) #define ListView_GetTopIndex(w) (int)SNDMSG((w),LVM_GETTOPINDEX,0,0) #define ListView_GetCountPerPage(w) (int)SNDMSG((w),LVM_GETCOUNTPERPAGE,0,0) #define ListView_GetOrigin(w,p) (BOOL)SNDMSG((w),LVM_GETORIGIN,0,(LPARAM)(POINT*)(p)) #define ListView_GetOrigin(w,p) (BOOL)SNDMSG((w),LVM_GETORIGIN,0,(LPARAM)(POINT*)(p)) #define ListView_Update(w,i) (BOOL)SNDMSG((w),LVM_UPDATE,i,0) #define ListView_SetItemState(w,i,d,m) \ { \ LV_ITEM _lvi;\ _lvi.stateMask=m;\ _lvi.state=d;\ SNDMSG((w),LVM_SETITEMSTATE,i,(LPARAM)(LV_ITEM*)&_lvi);\ } #define ListView_GetItemState(w,i,m) (UINT)SNDMSG((w),LVM_GETITEMSTATE,i,m) #define ListView_GetItemText(w,i,iS,s,n) \ { \ LV_ITEM _lvi;\ _lvi.iSubItem=iS;\ _lvi.cchTextMax=n;\ _lvi.pszText=s;\ SNDMSG((w),LVM_GETITEMTEXT,i,(LPARAM)(LV_ITEM*)&_lvi);\ } #define ListView_SetItemText(w,i,iS,s) \ { \ LV_ITEM _lvi;\ _lvi.iSubItem=iS;\ _lvi.pszText=s;\ SNDMSG((w),LVM_SETITEMTEXT,i,(LPARAM)(LV_ITEM*)&_lvi);\ } #define ListView_SetItemCount(w,n) SNDMSG((w),LVM_SETITEMCOUNT,n,0) #define ListView_SortItems(w,f,l) (BOOL)SNDMSG((w),LVM_SORTITEMS,l,(LPARAM)f) #define ListView_SetItemPosition32(w,i,x,y) \ { \ POINT p={x,y}; \ SNDMSG((w),LVM_SETITEMPOSITION32,i,(LPARAM)&p);\ } #define ListView_GetSelectedCount(w) (UINT)SNDMSG((w),LVM_GETSELECTEDCOUNT,0,0) BOOL WINAPI MakeDragList(HWND); void WINAPI MenuHelp(UINT,WPARAM,LPARAM,HMENU,HINSTANCE,HWND,PUINT); #define MonthCal_GetColor(hwnd,icolor) SNDMSG(hwnd,MCM_GETCOLOR,(WPARAM)icolor,(LPARAM)0) #define MonthCal_GetCurSel(hwnd,lpsystime) SNDMSG(hwnd,MCM_GETCURSEL,0,(LPARAM)lpsystime) #define MonthCal_GetFirstDayOfWeek(hwnd) SNDMSG(hwnd,MCM_GETFIRSTDAYOFWEEK,0,0) #define MonthCal_GetMaxSelCount(hwnd) SNDMSG(hwnd,MCM_GETMAXSELCOUNT,0,0) #define MonthCal_GetMaxTodayWidth(hwnd) SNDMSG(hwnd,MCM_GETMAXTODAYWIDTH,0,0) #define MonthCal_GetMinReqRect(hwnd,lpRectInfo) SNDMSG(hwnd,MCM_GETMINREQRECT,0,(LPARAM)lpRectInfo) #define MonthCal_GetMonthDelta(hwnd) SNDMSG(hwnd,MCM_GETMONTHDELTA,0,0) #define MonthCal_GetMonthRange(hwnd,flag,systimearray) SNDMSG(hwnd,MCM_GETMONTHRANGE,(WPARAM)flag,(LPARAM)systimearray) #define MonthCal_GetRange(hwnd,systimearray) SNDMSG(hwnd,MCM_GETRANGE,0,(LPARAM)systimearray) #define MonthCal_GetSelRange(hwnd,systimearray) SNDMSG(hwnd,MCM_GETSELRANGE,0,(LPARAM)systimearray) #define MonthCal_GetToday(hwnd,systime) SNDMSG(hwnd,MCM_GETTODAY,0,(LPARAM)systime) #define MonthCal_GetUnicodeFormat(hwnd) SNDMSG(hwnd,MCM_GETUNICODEFORMAT,0,0) #define MonthCal_HitTest(hwnd,pmchittest) SNDMSG(hwnd,MCM_HITTEST,0,(LPARAM)pmchittest) #define MonthCal_SetColor(hwnd,icolor,clr) SNDMSG(hwnd,MCM_SETCOLOR,(WPARAM)icolor,(LPARAM)clr) #define MonthCal_SetCurSel(hwnd,lpsystime) SNDMSG(hwnd,MCM_SETCURSEL,0,(LPARAM)lpsystime) #define MonthCal_SetDayState(hwnd,imonths,lpdatestatearray) SNDMSG(hwnd,MCM_SETDAYSTATE,(WPARAM)imonths,(LPARAM)lpdatestatearray) #define MonthCal_SetFirstDayOfWeek(hwnd,iday) SNDMSG(hwnd,MCM_SETFIRSTDAYOFWEEK,0,(LPARAM)iday) #define MonthCal_SetMaxSelCount(hwnd,imax) SNDMSG(hwnd,MCM_SETMAXSELCOUNT,(WPARAM)imax,0) #define MonthCal_SetMonthDelta(hwnd,idelta) SNDMSG(hwnd,MCM_SETMONTHDELTA,(WPARAM)idelta,0) #define MonthCal_SetRange(hwnd,whichlimit,systimearray) SNDMSG(hwnd,MCM_SETRANGE,whichlimit,systimearray) #define MonthCal_SetSelRange(hwnd,systimearray) SNDMSG(hwnd,MCM_SETSELRANGE,0,(LPARAM)systimearray) #define MonthCal_SetToday(hwnd,systime) SNDMSG(hwnd,MCM_SETTODAY,0,(LPARAM)systime) #define MonthCal_SetUnicodeFormat(hwnd,unicode) SNDMSG(hwnd,MCM_SETUNICODEFORMAT,(WPARAM)unicode,0) BOOL WINAPI ShowHideMenuCtl(HWND,UINT,PINT); #define TabCtrl_GetItem(w,i,p) (BOOL)SNDMSG((w),TCM_GETITEM,i,(LPARAM)(TC_ITEM*)(p)) #define TabCtrl_SetItem(w,i,p) (BOOL)SNDMSG((w),TCM_SETITEM,i,(LPARAM)(TC_ITEM*)(p)) #define TabCtrl_InsertItem(w,i,p) (int)SNDMSG((w),TCM_INSERTITEM,i,(LPARAM)(const TC_ITEM*)(p)) #define TabCtrl_DeleteItem(w,i) (BOOL)SNDMSG((w),TCM_DELETEITEM,i,0) #define TabCtrl_DeleteAllItems(w) (BOOL)SNDMSG((w),TCM_DELETEALLITEMS,0,0) #define TabCtrl_GetItemRect(w,i,p) (BOOL)SNDMSG((w),TCM_GETITEMRECT,i,(LPARAM)(LPRECT)(p)) #define TabCtrl_GetCurSel(w) (int)SNDMSG((w),TCM_GETCURSEL,0,0) #define TabCtrl_SetCurSel(w,i) (int)SNDMSG((w),TCM_SETCURSEL,i,0) #define TabCtrl_HitTest(w,p) (int)SNDMSG((w),TCM_HITTEST,0,(LPARAM)(TC_HITTESTINFO*)(p)) #define TabCtrl_SetItemExtra(w,c) (BOOL)SNDMSG((w),TCM_SETITEMEXTRA,c,0) #define TabCtrl_AdjustRect(w,b,p) (int)SNDMSG((w),TCM_ADJUSTRECT,b,(LPARAM)(LPRECT)p) #define TabCtrl_SetItemSize(w,x,y) (DWORD)SNDMSG((w),TCM_SETITEMSIZE,0,MAKELPARAM(x,y)) #define TabCtrl_RemoveImage(w,i) (void)SNDMSG((w),TCM_REMOVEIMAGE,i,0) #define TabCtrl_SetPadding(w,x,y) (void)SNDMSG((w),TCM_SETPADDING,0,MAKELPARAM(x,y)) #define TabCtrl_GetRowCount(w) (int)SNDMSG((w),TCM_GETROWCOUNT,0,0) #define TabCtrl_GetToolTips(w) (HWND)SNDMSG((w),TCM_GETTOOLTIPS,0,0) #define TabCtrl_SetToolTips(w,t) (void)SNDMSG((w),TCM_SETTOOLTIPS,(WPARAM)t,0) #define TabCtrl_GetCurFocus(w) (int)SNDMSG((w),TCM_GETCURFOCUS,0,0) #define TabCtrl_SetCurFocus(w,i) (void)SNDMSG((w),TCM_SETCURFOCUS,i,0) #define TabCtrl_SetImageList(w,h) (HIMAGELIST)SNDMSG((w),TCM_SETIMAGELIST,0,(LPARAM)(UINT)(h)) #define TabCtrl_GetItemCount(w) (int)SNDMSG((w),TCM_GETITEMCOUNT,0,0) BOOL WINAPI _TrackMouseEvent(LPTRACKMOUSEEVENT); #define TreeView_InsertItem(w,i) (HTREEITEM)SNDMSG((w),TVM_INSERTITEM,0,(LPARAM)(LPTV_INSERTSTRUCT)(i)) #define TreeView_DeleteItem(w,i) (BOOL)SNDMSG((w),TVM_DELETEITEM,0,(LPARAM)(HTREEITEM)(i)) #define TreeView_DeleteAllItems(w) (BOOL)SNDMSG((w),TVM_DELETEITEM,0,(LPARAM)TVI_ROOT) #define TreeView_Expand(w,i,c) (BOOL)SNDMSG((w),TVM_EXPAND,c,(LPARAM)(HTREEITEM)(i)) #define TreeView_GetItemRect(w,i,p,c) (*(HTREEITEM*)p=(i),(BOOL)SNDMSG((w),TVM_GETITEMRECT,c,(LPARAM)(LPRECT)(p))) #define TreeView_GetCount(w) (UINT)SNDMSG((w),TVM_GETCOUNT,0,0) #define TreeView_GetIndent(w) (UINT)SNDMSG((w),TVM_GETINDENT,0,0) #define TreeView_SetIndent(w,i) (BOOL)SNDMSG((w),TVM_SETINDENT,i,0) #define TreeView_GetImageList(w,i) (HIMAGELIST)SNDMSG((w),TVM_GETIMAGELIST,i,0) #define TreeView_SetImageList(w,h,i) (HIMAGELIST)SNDMSG((w),TVM_SETIMAGELIST,i,(LPARAM)(HIMAGELIST)(h)) #define TreeView_GetNextItem(w,i,c) (HTREEITEM)SNDMSG((w),TVM_GETNEXTITEM,c,(LPARAM)(HTREEITEM)(i)) #define TreeView_GetChild(w,i) TreeView_GetNextItem(w,i,TVGN_CHILD) #define TreeView_GetNextSibling(w,i) TreeView_GetNextItem(w,i,TVGN_NEXT) #define TreeView_GetPrevSibling(w,i) TreeView_GetNextItem(w,i,TVGN_PREVIOUS) #define TreeView_GetParent(w,i) TreeView_GetNextItem(w,i,TVGN_PARENT) #define TreeView_GetFirstVisible(w) TreeView_GetNextItem(w,NULL,TVGN_FIRSTVISIBLE) #define TreeView_GetNextVisible(w,i) TreeView_GetNextItem(w,i,TVGN_NEXTVISIBLE) #define TreeView_GetPrevVisible(w,i) TreeView_GetNextItem(w,i,TVGN_PREVIOUSVISIBLE) #define TreeView_GetSelection(w) TreeView_GetNextItem(w,NULL,TVGN_CARET) #define TreeView_GetDropHilight(w) TreeView_GetNextItem(w,NULL,TVGN_DROPHILITE) #define TreeView_GetRoot(w) TreeView_GetNextItem(w,NULL,TVGN_ROOT) #define TreeView_Select(w,i,c) (HTREEITEM)SNDMSG((w),TVM_SELECTITEM,c,(LPARAM)(HTREEITEM)(i)) #define TreeView_SelectItem(w,i) TreeView_Select(w,i,TVGN_CARET) #define TreeView_SelectDropTarget(w,i) TreeView_Select(w,i,TVGN_DROPHILITE) #define TreeView_SelectSetFirstVisible(w,i) TreeView_Select(w,i,TVGN_FIRSTVISIBLE) #define TreeView_GetItem(w,i) (BOOL)SNDMSG((w),TVM_GETITEM,0,(LPARAM)(TV_ITEM*)(i)) #define TreeView_SetItem(w,i) (BOOL)SNDMSG((w),TVM_SETITEM,0,(LPARAM)(const TV_ITEM*)(i)) #define TreeView_EditLabel(w,i) (HWND)SNDMSG((w),TVM_EDITLABEL,0,(LPARAM)(HTREEITEM)(i)) #define TreeView_GetEditControl(w) (HWND)SNDMSG((w),TVM_GETEDITCONTROL,0,0) #define TreeView_GetVisibleCount(w) (UINT)SNDMSG((w),TVM_GETVISIBLECOUNT,0,0) #define TreeView_HitTest(w,p) (HTREEITEM)SNDMSG((w),TVM_HITTEST,0,(LPARAM)(LPTV_HITTESTINFO)(p)) #define TreeView_CreateDragImage(w,i) (HIMAGELIST)SNDMSG((w),TVM_CREATEDRAGIMAGE,0,(LPARAM)(HTREEITEM)(i)) #define TreeView_SortChildren(w,i,r) (BOOL)SNDMSG((w),TVM_SORTCHILDREN,r,(LPARAM)(HTREEITEM)(i)) #define TreeView_EnsureVisible(w,i) (BOOL)SNDMSG((w),TVM_ENSUREVISIBLE,0,(LPARAM)(HTREEITEM)(i)) #define TreeView_SortChildrenCB(w,s,r) (BOOL)SNDMSG((w),TVM_SORTCHILDRENCB,r,(LPARAM)(LPTV_SORTCB)(s)) #define TreeView_EndEditLabelNow(w,f) (BOOL)SNDMSG((w),TVM_ENDEDITLABELNOW,f,0) #define TreeView_GetISearchString(w,s) (BOOL)SNDMSG((w),TVM_GETISEARCHSTRING,0,(LPARAM)s) #if (_WIN32_IE >= 0x0300) #define ListView_ApproximateViewRect(w,iw,ih,i) (DWORD)SNDMSG((w),LVM_APPROXIMATEVIEWRECT,(i),MAKELPARAM((iw),(ih))) #define ListView_SetExtendedListViewStyle(w,s) (DWORD)SNDMSG((w),LVM_SETEXTENDEDLISTVIEWSTYLE,0,(s)) #define ListView_GetExtendedListViewStyle(w) (DWORD)SNDMSG((w),LVM_GETEXTENDEDLISTVIEWSTYLE,0,0) #define ListView_SetColumnOrderArray(w,i,a) (BOOL)SNDMSG((w),LVM_SETCOLUMNORDERARRAY,(WPARAM)(i),(LPARAM)(LPINT)(a)) #define ListView_GetColumnOrderArray(w,i,a) (BOOL)SNDMSG((w),LVM_GETCOLUMNORDERARRAY,(WPARAM)(i),(LPARAM)(LPINT)(a)) #define ListView_GetHeader(w) (HWND)SNDMSG((w),LVM_GETHEADER,0,0) #define ListView_GetHotCursor(w) (HCURSOR)SNDMSG((w),LVM_GETHOTCURSOR,0,0) #define ListView_GetHotItem(w) (INT)SNDMSG((w),LVM_GETHOTITEM,0,0) #define ListView_GetSubItemRect(w,i,is,c,p) (BOOL)SNDMSG((w),LVM_GETSUBITEMRECT,(WPARAM)(int)(i),((p)?(((LPRECT)(p))->left=(c),(((LPRECT)(p))->top=(is)),(LPARAM)(LPRECT)(p)):0)) #define ListView_SetHotCursor(w,c) (HCURSOR)SNDMSG((w),LVM_SETHOTCURSOR,0,(LPARAM)(c)) #define ListView_SetHotItem(w,i) (int)SNDMSG((w),LVM_SETHOTITEM,(WPARAM)(i),0) #define ListView_SetIconSpacing(w,x,y) (DWORD)SNDMSG((w),LVM_SETICONSPACING,0,MAKELONG(x,y)) #define ListView_SubItemHitTest(w,p) (int)SNDMSG((w),LVM_SUBITEMHITTEST,0,(LPARAM)(LPLVHITTESTINFO)(p)) WINBOOL WINAPI ImageList_SetImageCount(HIMAGELIST,UINT); WINBOOL WINAPI ImageList_Copy(HIMAGELIST,int,HIMAGELIST,int,UINT); WINBOOL WINAPI ImageList_DrawIndirect(IMAGELISTDRAWPARAMS*); #define TabCtrl_SetMinTabWidth(hwnd, x) SNDMSG((hwnd), TCM_SETMINTABWIDTH, 0, x) #define TabCtrl_DeselectAll(hwnd, fExcludeFocus) SNDMSG((hwnd), TCM_DESELECTALL, fExcludeFocus, 0) #define TreeView_GetToolTips(w) (HWND)SNDMSG((w),TVM_GETTOOLTIPS,0,0) #define TreeView_SetToolTips(w,wt) (HWND)SNDMSG((w),TVM_SETTOOLTIPS,(WPARAM)(wt),0) #endif #if (_WIN32_IE >= 0x0400) #define ListView_SetExtendedListViewStyleEx(w,m,s) (DWORD)SNDMSG((w),LVM_SETEXTENDEDLISTVIEWSTYLE,(m),(s)) #define TabCtrl_HighlightItem(hwnd, i, fHighlight) SNDMSG((hwnd), TCM_HIGHLIGHTITEM, (WPARAM)i, (LPARAM)MAKELONG (fHighlight, 0)) #define TabCtrl_SetExtendedStyle(hwnd, dw) SNDMSG((hwnd), TCM_SETEXTENDEDSTYLE, 0, dw) #define TabCtrl_GetExtendedStyle(hwnd) SNDMSG((hwnd), TCM_GETEXTENDEDSTYLE, 0, 0) #define TabCtrl_SetUnicodeFormat(hwnd, fUnicode) SNDMSG((hwnd), TCM_SETUNICODEFORMAT, (WPARAM)(fUnicode), 0) #define TabCtrl_GetUnicodeFormat(hwnd) SNDMSG((hwnd), TCM_GETUNICODEFORMAT, 0, 0) #define TreeView_GetBkColor(w) (COLORREF)SNDMSG((w),TVM_GETBKCOLOR,0,0) #define TreeView_GetInsertMarkColor(w) (COLORREF)SNDMSG((w),TVM_GETINSERTMARKCOLOR,0,0) #define TreeView_GetItemHeight(w) (int)SNDMSG((w),TVM_GETITEMHEIGHT,0,0) #define TreeView_GetTextColor(w) (COLORREF)SNDMSG((w),TVM_GETTEXTCOLOR,0,0) #define TreeView_SetBkColor(w,c) (COLORREF)SNDMSG((w),TVM_SETBKCOLOR,0,(LPARAM)(c)) #define TreeView_SetInsertMarkColor(w,c) (COLORREF)SNDMSG((w),TVM_SETINSERTMARKCOLOR,0,(LPARAM)(c)) #define TreeView_SetItemHeight(w,h) (int)SNDMSG((w),TVM_SETITEMHEIGHT,(WPARAM)(h),0) #define TreeView_SetTextColor(w,c) (COLORREF)SNDMSG((w),TVM_SETTEXTCOLOR,0,(LPARAM)(c)) #endif #ifdef UNICODE #define ANIMATE_CLASS ANIMATE_CLASSW #define HOTKEY_CLASS HOTKEY_CLASSW #define PROGRESS_CLASS PROGRESS_CLASSW #define STATUSCLASSNAME STATUSCLASSNAMEW #define TOOLBARCLASSNAME TOOLBARCLASSNAMEW #define TOOLTIPS_CLASS TOOLTIPS_CLASSW #define TRACKBAR_CLASS TRACKBAR_CLASSW #define UPDOWN_CLASS UPDOWN_CLASSW #define WC_COMBOBOXEX WC_COMBOBOXEXW #define WC_HEADER WC_HEADERW #define WC_IPADDRESS WC_IPADDRESSW #define WC_LISTVIEW WC_LISTVIEWW #define WC_TABCONTROL WC_TABCONTROLW #define WC_TREEVIEW WC_TREEVIEWW typedef HDITEMW HDITEM; typedef TOOLINFOW TOOLINFO,*PTOOLINFO,*LPTOOLINFO; typedef TTHITTESTINFOW TTHITTESTINFO,*LPHITTESTINFO; typedef TOOLTIPTEXTW TOOLTIPTEXT,*LPTOOLTIPTEXT; typedef TV_ITEMW TV_ITEM,*LPTV_ITEM; typedef TVITEMW TVITEM,*LPTVITEM; #if (_WIN32_IE >= 0x0400) typedef TVITEMEXW TVITEMEX,*LPTVITEMEX; #endif typedef TV_INSERTSTRUCTW TV_INSERTSTRUCT,*LPTV_INSERTSTRUCT; typedef TVINSERTSTRUCTW TVINSERTSTRUCT,*LPTVINSERTSTRUCT; typedef NM_TREEVIEWW NM_TREEVIEW,*LPNM_TREEVIEW; typedef NMTREEVIEWW NMTREEVIEW,*LPNMTREEVIEW; #define ACM_OPEN ACM_OPENW #define COMBOBOXEXITEM COMBOBOXEXITEMW #define PCOMBOBOXEXITEM PCOMBOBOXEXITEMW #define PCCOMBOBOXEXITEM PCCOMBOBOXEXITEMW #define CBEM_INSERTITEM CBEM_INSERTITEMW #define CBEM_SETITEM CBEM_SETITEMW #define CBEM_GETITEM CBEM_GETITEMW #define CBEN_ENDEDIT CBEN_ENDEDITW #define NMCBEENDEDIT NMCBEENDEDITW #define LPNMCBEENDEDIT LPNMCBEENDEDITW #define PNMCBEENDEDIT PNMCBEENDEDITW #if _WIN32_IE >= 0x0400 #define NMCOMBOBOXEX NMCOMBOBOXEXW #define PNMCOMBOBOXEX PNMCOMBOBOXEXW #define CBEN_GETDISPINFO CBEN_GETDISPINFOW #define CBEN_DRAGBEGIN CBEN_DRAGBEGINW #define NMCBEDRAGBEGIN NMCBEDRAGBEGINW #define LPNMCBEDRAGBEGIN LPNMCBEDRAGBEGINW #define PNMCBEDRAGBEGIN PNMCBEDRAGBEGINW #endif /* _WIN32_IE >= 0x0400 */ #define SB_GETTEXT SB_GETTEXTW #define SB_SETTEXT SB_SETTEXTW #define SB_GETTEXTLENGTH SB_GETTEXTLENGTHW #define STATUSCLASSNAME STATUSCLASSNAMEW #define HDM_INSERTITEM HDM_INSERTITEMW #define HDM_GETITEM HDM_GETITEMW #define HDM_SETITEM HDM_SETITEMW #define HDN_ITEMCHANGING HDN_ITEMCHANGINGW #define HDN_ITEMCHANGED HDN_ITEMCHANGEDW #define HDN_ITEMCLICK HDN_ITEMCLICKW #define HDN_ITEMDBLCLICK HDN_ITEMDBLCLICKW #define HDN_DIVIDERDBLCLICK HDN_DIVIDERDBLCLICKW #define HDN_BEGINTRACK HDN_BEGINTRACKW #define HDN_ENDTRACK HDN_ENDTRACKW #define HDN_TRACK HDN_TRACKW #define HD_NOTIFY HD_NOTIFYW #define TOOLBARCLASSNAME TOOLBARCLASSNAMEW #define TBSAVEPARAMS TBSAVEPARAMSW #define TB_GETBUTTONTEXT TB_GETBUTTONTEXTW #define TB_SAVERESTORE TB_SAVERESTOREW #define TB_ADDSTRING TB_ADDSTRINGW #define TBN_GETBUTTONINFO TBN_GETBUTTONINFOW #if _WIN32_IE >= 0x400 #define TBBUTTONINFO TBBUTTONINFOW #define LPTBBUTTONINFO LPTBBUTTONINFOW #endif #define TBNOTIFY TBNOTIFYW #define LPTBNOTIFY LPTBNOTIFYW #define TOOLTIPS_CLASS TOOLTIPS_CLASSW #define TTM_ADDTOOL TTM_ADDTOOLW #define TTM_DELTOOL TTM_DELTOOLW #define TTM_NEWTOOLRECT TTM_NEWTOOLRECTW #define TTM_GETTOOLINFO TTM_GETTOOLINFOW #define TTM_SETTOOLINFO TTM_SETTOOLINFOW #define TTM_HITTEST TTM_HITTESTW #define TTM_GETTEXT TTM_GETTEXTW #define TTM_UPDATETIPTEXT TTM_UPDATETIPTEXTW #define TTM_ENUMTOOLS TTM_ENUMTOOLSW #define TTM_GETCURRENTTOOL TTM_GETCURRENTTOOLW #define TTN_NEEDTEXT TTN_NEEDTEXTW #define SB_GETTEXT SB_GETTEXTW #define SB_SETTEXT SB_SETTEXTW #define SB_GETTEXTLENGTH SB_GETTEXTLENGTHW #define TRACKBAR_CLASS TRACKBAR_CLASSW #define UPDOWN_CLASS UPDOWN_CLASSW #define PROGRESS_CLASS PROGRESS_CLASSW #define HOTKEY_CLASS HOTKEY_CLASSW #define LV_ITEM LV_ITEMW #define LVITEM LVITEMW #define LPSTR_TEXTCALLBACK LPSTR_TEXTCALLBACKW #define LVM_GETITEM LVM_GETITEMW #define LVM_SETITEM LVM_SETITEMW #define LVM_INSERTITEM LVM_INSERTITEMW #define LV_FINDINFO LV_FINDINFOW #define LVFINDINFO LVFINDINFOW #define LVM_FINDITEM LVM_FINDITEMW #define LVM_GETSTRINGWIDTH LVM_GETSTRINGWIDTHW #define LVM_EDITLABEL LVM_EDITLABELW #define LV_COLUMN LV_COLUMNW #define LVCOLUMN LVCOLUMNW #define LVM_GETCOLUMN LVM_GETCOLUMNW #define LVM_SETCOLUMN LVM_SETCOLUMNW #define LVM_INSERTCOLUMN LVM_INSERTCOLUMNW #define LVM_GETITEMTEXT LVM_GETITEMTEXTW #define LVM_SETITEMTEXT LVM_SETITEMTEXTW #define LVM_GETISEARCHSTRING LVM_GETISEARCHSTRINGW #define LVN_BEGINLABELEDIT LVN_BEGINLABELEDITW #define LVN_ENDLABELEDIT LVN_ENDLABELEDITW #define LVN_GETDISPINFO LVN_GETDISPINFOW #define LVN_SETDISPINFO LVN_SETDISPINFOW #define LV_DISPINFO LV_DISPINFOW #define NMLVDISPINFO NMLVDISPINFOW #define TVM_INSERTITEM TVM_INSERTITEMW #define TVM_GETITEM TVM_GETITEMW #define TVM_SETITEM TVM_SETITEMW #define TVM_EDITLABEL TVM_EDITLABELW #define TVM_GETISEARCHSTRING TVM_GETISEARCHSTRINGW #define TV_DISPINFO TV_DISPINFOW #define TVN_SELCHANGING TVN_SELCHANGINGW #define TVN_SELCHANGED TVN_SELCHANGEDW #define TVN_GETDISPINFO TVN_GETDISPINFOW #define TVN_SETDISPINFO TVN_SETDISPINFOW #define TVN_ITEMEXPANDING TVN_ITEMEXPANDINGW #define TVN_ITEMEXPANDED TVN_ITEMEXPANDEDW #define TVN_BEGINDRAG TVN_BEGINDRAGW #define TVN_BEGINRDRAG TVN_BEGINRDRAGW #define TVN_DELETEITEM TVN_DELETEITEMW #define TVN_BEGINLABELEDIT TVN_BEGINLABELEDITW #define TVN_ENDLABELEDIT TVN_ENDLABELEDITW #define TC_ITEMHEADER TC_ITEMHEADERW #define TC_ITEM TC_ITEMW #define TCM_GETITEM TCM_GETITEMW #define TCM_SETITEM TCM_SETITEMW #define TCM_INSERTITEM TCM_INSERTITEMW #define CreateStatusWindow CreateStatusWindowW #define DrawStatusText DrawStatusTextW #define ImageList_LoadImage ImageList_LoadImageW #define DTM_SETFORMAT DTM_SETFORMATW #define DTN_USERSTRING DTN_USERSTRINGW #define DTN_WMKEYDOWN DTN_WMKEYDOWNW #define DTN_FORMAT DTN_FORMATW #define DTN_FORMATQUERY DTN_FORMATQUERYW #define DATETIMEPICK_CLASS DATETIMEPICK_CLASSW #define MONTHCAL_CLASS MONTHCAL_CLASSW #define REBARCLASSNAME REBARCLASSNAMEW typedef REBARBANDINFOW REBARBANDINFO,*LPREBARBANDINFO; #define LPCREBARBANDINFO LPCREBARBANDINFOW #define REBARBANDINFO_V3_SIZE REBARBANDINFOW_V3_SIZE #define RB_INSERTBAND RB_INSERTBANDW #define RB_SETBANDINFO RB_SETBANDINFOW #else /* UNICODE */ #define ANIMATE_CLASS ANIMATE_CLASSA #define HOTKEY_CLASS HOTKEY_CLASSA #define PROGRESS_CLASS PROGRESS_CLASSA #define STATUSCLASSNAME STATUSCLASSNAMEA #define TOOLBARCLASSNAME TOOLBARCLASSNAMEA #define TOOLTIPS_CLASS TOOLTIPS_CLASSA #define TRACKBAR_CLASS TRACKBAR_CLASSA #define UPDOWN_CLASS UPDOWN_CLASSA #define WC_COMBOBOXEX WC_COMBOBOXEXA #define WC_HEADER WC_HEADERA #define WC_IPADDRESS WC_IPADDRESSA #define WC_LISTVIEW WC_LISTVIEWA #define WC_TABCONTROL WC_TABCONTROLA #define WC_TREEVIEW WC_TREEVIEWA typedef HDITEMA HDITEM; typedef TOOLINFOA TOOLINFO,*PTOOLINFO,*LPTOOLINFO; typedef TTHITTESTINFOA TTHITTESTINFO,*LPHITTESTINFO; typedef TOOLTIPTEXTA TOOLTIPTEXT,*LPTOOLTIPTEXT; typedef TV_ITEMA TV_ITEM,*LPTV_ITEM; typedef TVITEMA TVITEM,*LPTVITEM; #if (_WIN32_IE >= 0x0400) typedef TVITEMEXA TVITEMEX,*LPTVITEMEX; #endif typedef TV_INSERTSTRUCTA TV_INSERTSTRUCT,*LPTV_INSERTSTRUCT; typedef TVINSERTSTRUCTA TVINSERTSTRUCT,*LPTVINSERTSTRUCT; typedef NM_TREEVIEWA NM_TREEVIEW,*LPNM_TREEVIEW; typedef NMTREEVIEWA NMTREEVIEW,*LPNMTREEVIEW; #define ACM_OPEN ACM_OPENA #define COMBOBOXEXITEM COMBOBOXEXITEMA #define PCOMBOBOXEXITEM PCOMBOBOXEXITEMA #define PCCOMBOBOXEXITEM PCCOMBOBOXEXITEMA #define CBEM_INSERTITEM CBEM_INSERTITEMA #define CBEM_SETITEM CBEM_SETITEMA #define CBEM_GETITEM CBEM_GETITEMA #define CBEN_ENDEDIT CBEN_ENDEDITA #define NMCBEENDEDIT NMCBEENDEDITA #define LPNMCBEENDEDIT LPNMCBEENDEDITA #define PNMCBEENDEDIT PNMCBEENDEDITA #if _WIN32_IE >= 0x0400 #define NMCOMBOBOXEX NMCOMBOBOXEXA #define PNMCOMBOBOXEX PNMCOMBOBOXEXA #define CBEN_DRAGBEGIN CBEN_DRAGBEGINA #define CBEN_GETDISPINFO CBEN_GETDISPINFOA #define NMCBEDRAGBEGIN NMCBEDRAGBEGINA #define LPNMCBEDRAGBEGIN LPNMCBEDRAGBEGINA #define PNMCBEDRAGBEGIN PNMCBEDRAGBEGINA #endif /* _WIN32_IE >= 0x0400 */ #define SB_GETTEXT SB_GETTEXTA #define SB_SETTEXT SB_SETTEXTA #define SB_GETTEXTLENGTH SB_GETTEXTLENGTHA #define HDM_INSERTITEM HDM_INSERTITEMA #define HDM_GETITEM HDM_GETITEMA #define HDM_SETITEM HDM_SETITEMA #define HDN_ITEMCHANGING HDN_ITEMCHANGINGA #define HDN_ITEMCHANGED HDN_ITEMCHANGEDA #define HDN_ITEMCLICK HDN_ITEMCLICKA #define HDN_ITEMDBLCLICK HDN_ITEMDBLCLICKA #define HDN_DIVIDERDBLCLICK HDN_DIVIDERDBLCLICKA #define HDN_BEGINTRACK HDN_BEGINTRACKA #define HDN_ENDTRACK HDN_ENDTRACKA #define HDN_TRACK HDN_TRACKA #define HD_NOTIFY HD_NOTIFYA #define TBSAVEPARAMS TBSAVEPARAMSA #define TB_GETBUTTONTEXT TB_GETBUTTONTEXTA #define TB_SAVERESTORE TB_SAVERESTOREA #define TB_ADDSTRING TB_ADDSTRINGA #define TBN_GETBUTTONINFO TBN_GETBUTTONINFOA #if _WIN32_IE >= 0x400 #define TBBUTTONINFO TBBUTTONINFOA #define LPTBBUTTONINFO LPTBBUTTONINFOA #endif #define TBNOTIFY TBNOTIFYA #define LPTBNOTIFY LPTBNOTIFYA #define TTM_ADDTOOL TTM_ADDTOOLA #define TTM_DELTOOL TTM_DELTOOLA #define TTM_NEWTOOLRECT TTM_NEWTOOLRECTA #define TTM_GETTOOLINFO TTM_GETTOOLINFOA #define TTM_SETTOOLINFO TTM_SETTOOLINFOA #define TTM_HITTEST TTM_HITTESTA #define TTM_GETTEXT TTM_GETTEXTA #define TTM_UPDATETIPTEXT TTM_UPDATETIPTEXTA #define TTM_ENUMTOOLS TTM_ENUMTOOLSA #define TTM_GETCURRENTTOOL TTM_GETCURRENTTOOLA #define TTN_NEEDTEXT TTN_NEEDTEXTA #define SB_GETTEXT SB_GETTEXTA #define SB_SETTEXT SB_SETTEXTA #define SB_GETTEXTLENGTH SB_GETTEXTLENGTHA #define LV_ITEM LV_ITEMA #define LVITEM LVITEMA #define LPSTR_TEXTCALLBACK LPSTR_TEXTCALLBACKA #define LVM_GETITEM LVM_GETITEMA #define LVM_SETITEM LVM_SETITEMA #define LVM_INSERTITEM LVM_INSERTITEMA #define LV_FINDINFO LV_FINDINFOA #define LVFINDINFO LVFINDINFOA #define LVM_FINDITEM LVM_FINDITEMA #define LVM_GETSTRINGWIDTH LVM_GETSTRINGWIDTHA #define LVM_EDITLABEL LVM_EDITLABELA #define LV_COLUMN LV_COLUMNA #define LVCOLUMN LVCOLUMNA #define LVM_GETCOLUMN LVM_GETCOLUMNA #define LVM_SETCOLUMN LVM_SETCOLUMNA #define LVM_INSERTCOLUMN LVM_INSERTCOLUMNA #define LVM_GETITEMTEXT LVM_GETITEMTEXTA #define LVM_SETITEMTEXT LVM_SETITEMTEXTA #define LVM_GETISEARCHSTRING LVM_GETISEARCHSTRINGA #define LVN_BEGINLABELEDIT LVN_BEGINLABELEDITA #define LVN_ENDLABELEDIT LVN_ENDLABELEDITA #define LVN_GETDISPINFO LVN_GETDISPINFOA #define LVN_SETDISPINFO LVN_SETDISPINFOA #define LV_DISPINFO LV_DISPINFOA #define NMLVDISPINFO NMLVDISPINFOA #define TVM_INSERTITEM TVM_INSERTITEMA #define TVM_GETITEM TVM_GETITEMA #define TVM_SETITEM TVM_SETITEMA #define TVM_EDITLABEL TVM_EDITLABELA #define TVM_GETISEARCHSTRING TVM_GETISEARCHSTRINGA #define TV_DISPINFO TV_DISPINFOA #define TVN_SELCHANGING TVN_SELCHANGINGA #define TVN_SELCHANGED TVN_SELCHANGEDA #define TVN_GETDISPINFO TVN_GETDISPINFOA #define TVN_SETDISPINFO TVN_SETDISPINFOA #define TVN_ITEMEXPANDING TVN_ITEMEXPANDINGA #define TVN_ITEMEXPANDED TVN_ITEMEXPANDEDA #define TVN_BEGINDRAG TVN_BEGINDRAGA #define TVN_BEGINRDRAG TVN_BEGINRDRAGA #define TVN_DELETEITEM TVN_DELETEITEMA #define TVN_BEGINLABELEDIT TVN_BEGINLABELEDITA #define TVN_ENDLABELEDIT TVN_ENDLABELEDITA #define TC_ITEMHEADER TC_ITEMHEADERA #define TC_ITEM TC_ITEMA #define TCM_GETITEM TCM_GETITEMA #define TCM_SETITEM TCM_SETITEMA #define TCM_INSERTITEM TCM_INSERTITEMA #define CreateStatusWindow CreateStatusWindowA #define DrawStatusText DrawStatusTextA #define ImageList_LoadImage ImageList_LoadImageA #define DTM_SETFORMAT DTM_SETFORMATA #define DTN_USERSTRING DTN_USERSTRINGA #define DTN_WMKEYDOWN DTN_WMKEYDOWNA #define DTN_FORMAT DTN_FORMATA #define DTN_FORMATQUERY DTN_FORMATQUERYA #define DATETIMEPICK_CLASS DATETIMEPICK_CLASSA #define MONTHCAL_CLASS MONTHCAL_CLASSA #define REBARCLASSNAME REBARCLASSNAMEA typedef REBARBANDINFOA REBARBANDINFO,*LPREBARBANDINFO; #define LPCREBARBANDINFO LPCREBARBANDINFOA #define REBARBANDINFO_V3_SIZE REBARBANDINFOA_V3_SIZE #define RB_INSERTBAND RB_INSERTBANDA #define RB_SETBANDINFO RB_SETBANDINFOA #endif #endif #ifdef __cplusplus } #endif #endif