Commit ead9e564 authored by Robert Shearman's avatar Robert Shearman Committed by Alexandre Julliard

Bring common control header up to date with new additions in XP.

parent c8fa5753
...@@ -84,15 +84,17 @@ VOID WINAPI InitMUILanguage (LANGID uiLang); ...@@ -84,15 +84,17 @@ VOID WINAPI InitMUILanguage (LANGID uiLang);
/* common control shared messages */ /* common control shared messages */
#define CCM_FIRST 0x2000 #define CCM_FIRST 0x2000
#define CCM_SETBKCOLOR (CCM_FIRST+1) /* lParam = bkColor */ #define CCM_SETBKCOLOR (CCM_FIRST+0x1) /* lParam = bkColor */
#define CCM_SETCOLORSCHEME (CCM_FIRST+2) /* lParam = COLORSCHEME struct ptr */ #define CCM_SETCOLORSCHEME (CCM_FIRST+0x2) /* lParam = COLORSCHEME struct ptr */
#define CCM_GETCOLORSCHEME (CCM_FIRST+3) /* lParam = COLORSCHEME struct ptr */ #define CCM_GETCOLORSCHEME (CCM_FIRST+0x3) /* lParam = COLORSCHEME struct ptr */
#define CCM_GETDROPTARGET (CCM_FIRST+4) #define CCM_GETDROPTARGET (CCM_FIRST+0x4)
#define CCM_SETUNICODEFORMAT (CCM_FIRST+5) #define CCM_SETUNICODEFORMAT (CCM_FIRST+0x5)
#define CCM_GETUNICODEFORMAT (CCM_FIRST+6) #define CCM_GETUNICODEFORMAT (CCM_FIRST+0x6)
#define CCM_SETVERSION (CCM_FIRST+7) #define CCM_SETVERSION (CCM_FIRST+0x7)
#define CCM_GETVERSION (CCM_FIRST+8) #define CCM_GETVERSION (CCM_FIRST+0x8)
#define CCM_SETNOTIFYWINDOW (CCM_FIRST+9) /* wParam = hwndParent */ #define CCM_SETNOTIFYWINDOW (CCM_FIRST+0x9) /* wParam = hwndParent */
#define CCM_SETWINDOWTHEME (CCM_FIRST+0xb)
#define CCM_DPISCALE (CCM_FIRST+0xc)
/* common notification codes (WM_NOTIFY)*/ /* common notification codes (WM_NOTIFY)*/
...@@ -114,6 +116,10 @@ VOID WINAPI InitMUILanguage (LANGID uiLang); ...@@ -114,6 +116,10 @@ VOID WINAPI InitMUILanguage (LANGID uiLang);
#define NM_SETCURSOR (NM_FIRST-17) #define NM_SETCURSOR (NM_FIRST-17)
#define NM_CHAR (NM_FIRST-18) #define NM_CHAR (NM_FIRST-18)
#define NM_TOOLTIPSCREATED (NM_FIRST-19) #define NM_TOOLTIPSCREATED (NM_FIRST-19)
#define NM_LDOWN (NM_FIRST-20)
#define NM_RDOWN (NM_FIRST-21)
#define NM_THEMECHANGED (NM_FIRST-22)
#define HANDLE_WM_NOTIFY(hwnd, wParam, lParam, fn) \ #define HANDLE_WM_NOTIFY(hwnd, wParam, lParam, fn) \
(fn)((hwnd), (int)(wParam), (NMHDR*)(lParam)) (fn)((hwnd), (int)(wParam), (NMHDR*)(lParam))
...@@ -130,6 +136,9 @@ VOID WINAPI InitMUILanguage (LANGID uiLang); ...@@ -130,6 +136,9 @@ VOID WINAPI InitMUILanguage (LANGID uiLang);
#define I_IMAGENONE (-2) #define I_IMAGENONE (-2)
#define I_INDENTCALLBACK (-1) #define I_INDENTCALLBACK (-1)
#define I_CHILDRENCALLBACK (-1) #define I_CHILDRENCALLBACK (-1)
#define I_GROUPIDCALLBACK (-1)
#define I_GROUPIDNONE (-2)
#define I_COLUMNSCALLBACK ((UINT)-1)
/* owner drawn types */ /* owner drawn types */
#define ODT_HEADER 100 #define ODT_HEADER 100
...@@ -243,6 +252,7 @@ typedef struct tagNMCHAR ...@@ -243,6 +252,7 @@ typedef struct tagNMCHAR
#define CDIS_HOT 0x0040 #define CDIS_HOT 0x0040
#define CDIS_MARKED 0x0080 #define CDIS_MARKED 0x0080
#define CDIS_INDETERMINATE 0x0100 #define CDIS_INDETERMINATE 0x0100
#define CDIS_SHOWKEYBOARDCUES 0x0200
typedef struct tagNMCUSTOMDRAWINFO typedef struct tagNMCUSTOMDRAWINFO
...@@ -488,6 +498,8 @@ typedef struct _IMAGELIST *HIMAGELIST; ...@@ -488,6 +498,8 @@ typedef struct _IMAGELIST *HIMAGELIST;
#define ILC_COLOR24 0x0018 #define ILC_COLOR24 0x0018
#define ILC_COLOR32 0x0020 #define ILC_COLOR32 0x0020
#define ILC_PALETTE 0x0800 /* no longer supported by M$ */ #define ILC_PALETTE 0x0800 /* no longer supported by M$ */
#define ILC_MIRROR 0x2000
#define ILC_PERITEMMIRROR 0x8000
#define ILD_NORMAL 0x0000 #define ILD_NORMAL 0x0000
#define ILD_TRANSPARENT 0x0001 #define ILD_TRANSPARENT 0x0001
...@@ -684,6 +696,8 @@ BOOL WINAPI GetWindowSubclass(HWND, SUBCLASSPROC, UINT_PTR, DWORD_PTR*); ...@@ -684,6 +696,8 @@ BOOL WINAPI GetWindowSubclass(HWND, SUBCLASSPROC, UINT_PTR, DWORD_PTR*);
BOOL WINAPI RemoveWindowSubclass(HWND, SUBCLASSPROC, UINT_PTR); BOOL WINAPI RemoveWindowSubclass(HWND, SUBCLASSPROC, UINT_PTR);
LRESULT WINAPI DefSubclassProc(HWND, UINT, WPARAM, LPARAM); LRESULT WINAPI DefSubclassProc(HWND, UINT, WPARAM, LPARAM);
int WINAPI DrawShadowText(HDC, LPCWSTR, UINT, RECT*, DWORD, COLORREF, COLORREF, int, int);
/* Header control */ /* Header control */
#define WC_HEADERA "SysHeader32" #define WC_HEADERA "SysHeader32"
...@@ -702,6 +716,8 @@ static const WCHAR WC_HEADERW[] = { 'S','y','s','H','e','a','d','e','r','3','2', ...@@ -702,6 +716,8 @@ static const WCHAR WC_HEADERW[] = { 'S','y','s','H','e','a','d','e','r','3','2',
#define HDS_HIDDEN 0x0008 #define HDS_HIDDEN 0x0008
#define HDS_DRAGDROP 0x0040 #define HDS_DRAGDROP 0x0040
#define HDS_FULLDRAG 0x0080 #define HDS_FULLDRAG 0x0080
#define HDS_FILTERBAR 0x0100
#define HDS_FLAT 0x0200
#define HDI_WIDTH 0x0001 #define HDI_WIDTH 0x0001
#define HDI_HEIGHT HDI_WIDTH #define HDI_HEIGHT HDI_WIDTH
...@@ -712,6 +728,7 @@ static const WCHAR WC_HEADERW[] = { 'S','y','s','H','e','a','d','e','r','3','2', ...@@ -712,6 +728,7 @@ static const WCHAR WC_HEADERW[] = { 'S','y','s','H','e','a','d','e','r','3','2',
#define HDI_IMAGE 0x0020 #define HDI_IMAGE 0x0020
#define HDI_DI_SETITEM 0x0040 #define HDI_DI_SETITEM 0x0040
#define HDI_ORDER 0x0080 #define HDI_ORDER 0x0080
#define HDI_FILTER 0x0100
#define HDF_LEFT 0x0000 #define HDF_LEFT 0x0000
#define HDF_RIGHT 0x0001 #define HDF_RIGHT 0x0001
...@@ -719,6 +736,8 @@ static const WCHAR WC_HEADERW[] = { 'S','y','s','H','e','a','d','e','r','3','2', ...@@ -719,6 +736,8 @@ static const WCHAR WC_HEADERW[] = { 'S','y','s','H','e','a','d','e','r','3','2',
#define HDF_JUSTIFYMASK 0x0003 #define HDF_JUSTIFYMASK 0x0003
#define HDF_RTLREADING 0x0004 #define HDF_RTLREADING 0x0004
#define HDF_SORTDOWN 0x0200
#define HDF_SORTUP 0x0400
#define HDF_IMAGE 0x0800 #define HDF_IMAGE 0x0800
#define HDF_BITMAP_ON_RIGHT 0x1000 #define HDF_BITMAP_ON_RIGHT 0x1000
#define HDF_BITMAP 0x2000 #define HDF_BITMAP 0x2000
...@@ -729,6 +748,8 @@ static const WCHAR WC_HEADERW[] = { 'S','y','s','H','e','a','d','e','r','3','2', ...@@ -729,6 +748,8 @@ static const WCHAR WC_HEADERW[] = { 'S','y','s','H','e','a','d','e','r','3','2',
#define HHT_ONHEADER 0x0002 #define HHT_ONHEADER 0x0002
#define HHT_ONDIVIDER 0x0004 #define HHT_ONDIVIDER 0x0004
#define HHT_ONDIVOPEN 0x0008 #define HHT_ONDIVOPEN 0x0008
#define HHT_ONFILTER 0x0010
#define HHT_ONFILTERBUTTON 0x0020
#define HHT_ABOVE 0x0100 #define HHT_ABOVE 0x0100
#define HHT_BELOW 0x0200 #define HHT_BELOW 0x0200
#define HHT_TORIGHT 0x0400 #define HHT_TORIGHT 0x0400
...@@ -796,6 +817,8 @@ static const WCHAR WC_HEADERW[] = { 'S','y','s','H','e','a','d','e','r','3','2', ...@@ -796,6 +817,8 @@ static const WCHAR WC_HEADERW[] = { 'S','y','s','H','e','a','d','e','r','3','2',
#define HDN_GETDISPINFO WINELIB_NAME_AW(HDN_GETDISPINFO) #define HDN_GETDISPINFO WINELIB_NAME_AW(HDN_GETDISPINFO)
#define HDN_BEGINDRAG (HDN_FIRST-10) #define HDN_BEGINDRAG (HDN_FIRST-10)
#define HDN_ENDDRAG (HDN_FIRST-11) #define HDN_ENDDRAG (HDN_FIRST-11)
#define HDN_FILTERCHANGE (HDN_FIRST-12)
#define HDN_FILTERBTNCLICK (HDN_FIRST-13)
typedef struct _HD_LAYOUT typedef struct _HD_LAYOUT
{ {
...@@ -843,6 +866,27 @@ typedef struct _HD_ITEMW ...@@ -843,6 +866,27 @@ typedef struct _HD_ITEMW
#define HDITEM_V1_SIZEW CCSIZEOF_STRUCT(HDITEMW, lParam) #define HDITEM_V1_SIZEW CCSIZEOF_STRUCT(HDITEMW, lParam)
#define HDITEM_V1_SIZE WINELIB_NAME_AW(HDITEM_V1_SIZE) #define HDITEM_V1_SIZE WINELIB_NAME_AW(HDITEM_V1_SIZE)
#define HDFT_ISSTRING 0x0000
#define HDFT_ISNUMBER 0x0001
#define HDFT_HASNOVALUE 0x8000
typedef struct _HD_TEXTFILTERA
{
LPSTR pszText;
INT cchTextMax;
} HD_TEXTFILTERA, *LPHD_TEXTFILTERA;
typedef struct _HD_TEXTFILTERW
{
LPWSTR pszText;
INT cchTextMax;
} HD_TEXTFILTERW, *LPHD_TEXTFILTERW;
#define HD_TEXTFILTER WINELIB_NAME_AW(HD_TEXTFILTER)
#define HDTEXTFILTER WINELIB_NAME_AW(HD_TEXTFILTER)
#define LPHD_TEXTFILTER WINELIB_NAME_AW(LPHD_TEXTFILTER)
#define LPHDTEXTFILTER WINELIB_NAME_AW(LPHD_TEXTFILTER)
typedef struct _HD_HITTESTINFO typedef struct _HD_HITTESTINFO
{ {
POINT pt; POINT pt;
...@@ -897,6 +941,13 @@ typedef struct tagNMHDDISPINFOW ...@@ -897,6 +941,13 @@ typedef struct tagNMHDDISPINFOW
#define NMHDDISPINFO WINELIB_NAME_AW(NMHDDISPINFO) #define NMHDDISPINFO WINELIB_NAME_AW(NMHDDISPINFO)
#define LPNMHDDISPINFO WINELIB_NAME_AW(LPNMHDDISPINFO) #define LPNMHDDISPINFO WINELIB_NAME_AW(LPNMHDDISPINFO)
typedef struct tagNMHDFILTERBTNCLICK
{
NMHDR hdr;
INT iItem;
RECT rc;
} NMHDFILTERBTNCLICK, *LPNMHDFILTERBTNCLICK;
#define Header_GetItemCount(hwndHD) \ #define Header_GetItemCount(hwndHD) \
(INT)SNDMSGA((hwndHD),HDM_GETITEMCOUNT,0,0L) (INT)SNDMSGA((hwndHD),HDM_GETITEMCOUNT,0,0L)
#define Header_InsertItemA(hwndHD,i,phdi) \ #define Header_InsertItemA(hwndHD,i,phdi) \
...@@ -1127,6 +1178,9 @@ static const WCHAR TOOLBARCLASSNAMEW[] = { 'T','o','o','l','b','a','r', ...@@ -1127,6 +1178,9 @@ static const WCHAR TOOLBARCLASSNAMEW[] = { 'T','o','o','l','b','a','r',
#define TB_UNKWN463 (WM_USER+99) #define TB_UNKWN463 (WM_USER+99)
#define TB_UNKWN464 (WM_USER+100) #define TB_UNKWN464 (WM_USER+100)
#define TB_GETMETRICS (WM_USER+101)
#define TB_SETMETRICS (WM_USER+102)
#define TB_SETWINDOWTHEME CCM_SETWINDOWTHEME
#define TBN_FIRST (0U-700U) #define TBN_FIRST (0U-700U)
#define TBN_LAST (0U-720U) #define TBN_LAST (0U-720U)
...@@ -1177,6 +1231,7 @@ typedef struct _NMTBCUSTOMDRAW ...@@ -1177,6 +1231,7 @@ typedef struct _NMTBCUSTOMDRAW
RECT rcText; RECT rcText;
int nStringBkMode; int nStringBkMode;
int nHLStringBkMode; int nHLStringBkMode;
int iListGap;
} NMTBCUSTOMDRAW, *LPNMTBCUSTOMDRAW; } NMTBCUSTOMDRAW, *LPNMTBCUSTOMDRAW;
/* return flags for Toolbar NM_CUSTOMDRAW notifications */ /* return flags for Toolbar NM_CUSTOMDRAW notifications */
...@@ -1431,6 +1486,45 @@ typedef struct ...@@ -1431,6 +1486,45 @@ typedef struct
#define TBIMHT_AFTER 0x00000001 /* TRUE = insert After iButton, otherwise before */ #define TBIMHT_AFTER 0x00000001 /* TRUE = insert After iButton, otherwise before */
#define TBIMHT_BACKGROUND 0x00000002 /* TRUE if and only if missed buttons completely */ #define TBIMHT_BACKGROUND 0x00000002 /* TRUE if and only if missed buttons completely */
typedef struct tagNMTBSAVE
{
NMHDR hdr;
DWORD* pData;
DWORD* pCurrent;
UINT cbData;
int iItem;
int cButtons;
TBBUTTON tbButton;
} NMTBSAVE, *LPNMTBSAVE;
typedef struct tagNMTBRESTORE
{
NMHDR hdr;
DWORD* pData;
DWORD* pCurrent;
UINT cbData;
int iItem;
int cButtons;
int cbBytesPerRecord;
TBBUTTON tbButton;
} NMTBRESTORE, *LPNMTBRESTORE;
#define TBMF_PAD 0x00000001
#define TBMF_BARPAD 0x00000002
#define TBMF_BUTTONSPACING 0x00000004
typedef struct
{
UINT cbSize;
DWORD dwMask;
INT cxPad;
INT cyPad;
INT cxBarPad;
INT cyBarPad;
INT cxButtonSpacing;
INT cyButtonSpacing;
} TBMETRICS, *LPTBMETRICS;
HWND WINAPI HWND WINAPI
CreateToolbar(HWND, DWORD, UINT, INT, HINSTANCE, CreateToolbar(HWND, DWORD, UINT, INT, HINSTANCE,
UINT, LPCTBBUTTON, INT); UINT, LPCTBBUTTON, INT);
...@@ -1483,6 +1577,12 @@ static const WCHAR TOOLTIPS_CLASSW[] = { 't','o','o','l','t','i','p','s','_', ...@@ -1483,6 +1577,12 @@ static const WCHAR TOOLTIPS_CLASSW[] = { 't','o','o','l','t','i','p','s','_',
#define TTDT_INITIAL 3 #define TTDT_INITIAL 3
#define TTI_NONE 0
#define TTI_INFO 1
#define TTI_WARNING 2
#define TTI_ERROR 3
#define TTM_ACTIVATE (WM_USER+1) #define TTM_ACTIVATE (WM_USER+1)
#define TTM_SETDELAYTIME (WM_USER+3) #define TTM_SETDELAYTIME (WM_USER+3)
#define TTM_ADDTOOLA (WM_USER+4) #define TTM_ADDTOOLA (WM_USER+4)
...@@ -1532,6 +1632,13 @@ static const WCHAR TOOLTIPS_CLASSW[] = { 't','o','o','l','t','i','p','s','_', ...@@ -1532,6 +1632,13 @@ static const WCHAR TOOLTIPS_CLASSW[] = { 't','o','o','l','t','i','p','s','_',
#define TTM_POP (WM_USER+28) #define TTM_POP (WM_USER+28)
#define TTM_UPDATE (WM_USER+29) #define TTM_UPDATE (WM_USER+29)
#define TTM_GETBUBBLESIZE (WM_USER+30) #define TTM_GETBUBBLESIZE (WM_USER+30)
#define TTM_ADJUSTRECT (WM_USER+31)
#define TTM_SETTITLEA (WM_USER+32)
#define TTM_SETTITLEW (WM_USER+33)
#define TTM_SETTITLE WINELIB_NAME_AW(TTM_SETTITLE)
#define TTM_POPUP (WM_USER+34)
#define TTM_GETTITLE (WM_USER+35)
#define TTM_SETWINDOWTHEME CCM_SETWINDOWTHEME
#define TTN_FIRST (0U-520U) #define TTN_FIRST (0U-520U)
...@@ -1555,6 +1662,7 @@ typedef struct tagTOOLINFOA { ...@@ -1555,6 +1662,7 @@ typedef struct tagTOOLINFOA {
HINSTANCE hinst; HINSTANCE hinst;
LPSTR lpszText; LPSTR lpszText;
LPARAM lParam; LPARAM lParam;
void *lpReserved;
} TTTOOLINFOA, *LPTOOLINFOA, *PTOOLINFOA, *LPTTTOOLINFOA; } TTTOOLINFOA, *LPTOOLINFOA, *PTOOLINFOA, *LPTTTOOLINFOA;
typedef struct tagTOOLINFOW { typedef struct tagTOOLINFOW {
...@@ -1566,6 +1674,7 @@ typedef struct tagTOOLINFOW { ...@@ -1566,6 +1674,7 @@ typedef struct tagTOOLINFOW {
HINSTANCE hinst; HINSTANCE hinst;
LPWSTR lpszText; LPWSTR lpszText;
LPARAM lParam; LPARAM lParam;
void *lpReserved;
} TTTOOLINFOW, *LPTOOLINFOW, *PTOOLINFOW, *LPTTTOOLINFOW; } TTTOOLINFOW, *LPTOOLINFOW, *PTOOLINFOW, *LPTTTOOLINFOW;
#define TTTOOLINFO WINELIB_NAME_AW(TTTOOLINFO) #define TTTOOLINFO WINELIB_NAME_AW(TTTOOLINFO)
...@@ -1625,6 +1734,14 @@ typedef struct tagNMTTDISPINFOW ...@@ -1625,6 +1734,14 @@ typedef struct tagNMTTDISPINFOW
#define NMTTDISPINFO_V1_SIZEW CCSIZEOF_STRUCT(NMTTDISPINFOW, uFlags) #define NMTTDISPINFO_V1_SIZEW CCSIZEOF_STRUCT(NMTTDISPINFOW, uFlags)
#define NMTTDISPINFO_V1_SIZE WINELIB_NAME_AW(NMTTDISPINFO_V1_SIZE) #define NMTTDISPINFO_V1_SIZE WINELIB_NAME_AW(NMTTDISPINFO_V1_SIZE)
typedef struct _TTGETTITLE
{
DWORD dwSize;
UINT uTitleBitmap;
UINT cch;
WCHAR* pszTitle;
} TTGETTITLE, *PTTGETTITLE;
#define TOOLTIPTEXTW NMTTDISPINFOW #define TOOLTIPTEXTW NMTTDISPINFOW
#define TOOLTIPTEXTA NMTTDISPINFOA #define TOOLTIPTEXTA NMTTDISPINFOA
#define TOOLTIPTEXT NMTTDISPINFO #define TOOLTIPTEXT NMTTDISPINFO
...@@ -1738,6 +1855,7 @@ static const WCHAR REBARCLASSNAMEW[] = { 'R','e','B','a','r', ...@@ -1738,6 +1855,7 @@ static const WCHAR REBARCLASSNAMEW[] = { 'R','e','B','a','r',
#define RB_GETCOLORSCHEME CCM_GETCOLORSCHEME #define RB_GETCOLORSCHEME CCM_GETCOLORSCHEME
#define RB_SETUNICODEFORMAT CCM_SETUNICODEFORMAT #define RB_SETUNICODEFORMAT CCM_SETUNICODEFORMAT
#define RB_GETUNICODEFORMAT CCM_GETUNICODEFORMAT #define RB_GETUNICODEFORMAT CCM_GETUNICODEFORMAT
#define RB_SETWINDOWTHEME CCM_SETWINDOWTHEME
#define RBN_FIRST (0U-831U) #define RBN_FIRST (0U-831U)
#define RBN_LAST (0U-859U) #define RBN_LAST (0U-859U)
...@@ -1865,6 +1983,20 @@ typedef struct _RB_HITTESTINFO ...@@ -1865,6 +1983,20 @@ typedef struct _RB_HITTESTINFO
INT iBand; INT iBand;
} RBHITTESTINFO, *LPRBHITTESTINFO; } RBHITTESTINFO, *LPRBHITTESTINFO;
#define RBAB_AUTOSIZE 0x0001
#define RBAB_ADDBAND 0x0002
typedef struct tagNMREBARAUTOBREAK
{
NMHDR hdr;
UINT uBand;
UINT wID;
LPARAM lParam;
UINT uMsg;
UINT fStyleCurrent;
BOOL fAutoBreak;
} NMREBARAUTOBREAK, *LPNMREBARAUTOBREAK;
/* Trackbar control */ /* Trackbar control */
...@@ -2107,7 +2239,8 @@ static const WCHAR WC_TREEVIEWW[] = { 'S','y','s', ...@@ -2107,7 +2239,8 @@ static const WCHAR WC_TREEVIEWW[] = { 'S','y','s',
#define TVM_GETLINECOLOR (TV_FIRST+41) #define TVM_GETLINECOLOR (TV_FIRST+41)
#define TVM_SETUNICODEFORMAT CCM_SETUNICODEFORMAT #define TVM_SETUNICODEFORMAT CCM_SETUNICODEFORMAT
#define TVM_GETUNICODEFORMAT CCM_GETUNICODEFORMAT #define TVM_GETUNICODEFORMAT CCM_GETUNICODEFORMAT
#define TVM_MAPACCIDTOHTREEITEM (TV_FIRST + 42)
#define TVM_MAPHTREEITEMTOACCID (TV_FIRST + 43)
#define TVN_FIRST (0U-400U) #define TVN_FIRST (0U-400U)
...@@ -2247,6 +2380,7 @@ static const WCHAR WC_TREEVIEWW[] = { 'S','y','s', ...@@ -2247,6 +2380,7 @@ static const WCHAR WC_TREEVIEWW[] = { 'S','y','s',
#define TVGN_DROPHILITE 8 #define TVGN_DROPHILITE 8
#define TVGN_CARET 9 #define TVGN_CARET 9
#define TVGN_LASTVISIBLE 10 #define TVGN_LASTVISIBLE 10
#define TVSI_NOSINGLEEXPAND 0x8000
#define TVC_UNKNOWN 0x00 #define TVC_UNKNOWN 0x00
#define TVC_BYMOUSE 0x01 #define TVC_BYMOUSE 0x01
...@@ -2629,6 +2763,15 @@ typedef struct tagTVKEYDOWN ...@@ -2629,6 +2763,15 @@ typedef struct tagTVKEYDOWN
#define TreeView_GetInsertMarkColor(hwnd) \ #define TreeView_GetInsertMarkColor(hwnd) \
(COLORREF)SNDMSGA((hwnd), TVM_GETINSERTMARKCOLOR, 0, 0) (COLORREF)SNDMSGA((hwnd), TVM_GETINSERTMARKCOLOR, 0, 0)
#define TreeView_SetItemState(hwndTV, hti, data, _mask) \
{ TVITEM _TVi; \
_TVi.mask = TVIF_STATE; \
_TVi.hItem = hti; \
_TVi.stateMask = _mask; \
_TVi.state = data; \
SNDMSG((hwndTV), TVM_SETITEM, 0, (LPARAM)(TV_ITEM *)&_TVi); \
}
#define TreeView_GetItemState(hwndTV, hti, mask) \ #define TreeView_GetItemState(hwndTV, hti, mask) \
(UINT)SNDMSGA((hwndTV), TVM_GETITEMSTATE, (WPARAM)(hti), (LPARAM)(mask)) (UINT)SNDMSGA((hwndTV), TVM_GETITEMSTATE, (WPARAM)(hti), (LPARAM)(mask))
#define TreeView_GetCheckState(hwndTV, hti) \ #define TreeView_GetCheckState(hwndTV, hti) \
...@@ -2641,14 +2784,11 @@ typedef struct tagTVKEYDOWN ...@@ -2641,14 +2784,11 @@ typedef struct tagTVKEYDOWN
#define TreeView_GetLineColor(hwnd) \ #define TreeView_GetLineColor(hwnd) \
(COLORREF)SNDMSGA((hwnd), TVM_GETLINECOLOR, 0, 0) (COLORREF)SNDMSGA((hwnd), TVM_GETLINECOLOR, 0, 0)
#define TreeView_SetItemState(hwndTV, hti, data, _mask) \ #define TreeView_MapAccIDToHTREEITEM(hwnd, id) \
{ TVITEM _TVi; \ (HTREEITEM)SNDMSG((hwnd), TVM_MAPACCIDTOHTREEITEM, id, 0)
_TVi.mask = TVIF_STATE; \
_TVi.hItem = hti; \ #define TreeView_MapHTREEITEMToAccID(hwnd, htreeitem) \
_TVi.stateMask = _mask; \ (UINT)SNDMSG((hwnd), TVM_MAPHTREEITEMTOACCID, (WPARAM)htreeitem, 0)
_TVi.state = data; \
SNDMSGA((hwndTV), TVM_SETITEM, 0, (LPARAM)(TV_ITEM *)&_TVi); \
}
/* Listview control */ /* Listview control */
...@@ -2705,6 +2845,13 @@ static const WCHAR WC_LISTVIEWW[] = { 'S','y','s', ...@@ -2705,6 +2845,13 @@ static const WCHAR WC_LISTVIEWW[] = { 'S','y','s',
#define LVS_EX_UNDERLINEHOT 0x0800 #define LVS_EX_UNDERLINEHOT 0x0800
#define LVS_EX_UNDERLINECOLD 0x1000 #define LVS_EX_UNDERLINECOLD 0x1000
#define LVS_EX_MULTIWORKAREAS 0x2000 #define LVS_EX_MULTIWORKAREAS 0x2000
#define LVS_EX_LABELTIP 0x4000
#define LVS_EX_BORDERSELECT 0x8000
#define LVS_EX_DOUBLEBUFFER 0x00010000
#define LVS_EX_HIDELABELS 0x00020000
#define LVS_EX_SINGLEROW 0x00040000
#define LVS_EX_SNAPTOGRID 0x00080000
#define LVS_EX_SIMPLESELECT 0x00100000
#define LVCF_FMT 0x0001 #define LVCF_FMT 0x0001
#define LVCF_WIDTH 0x0002 #define LVCF_WIDTH 0x0002
...@@ -2783,6 +2930,47 @@ static const WCHAR WC_LISTVIEWW[] = { 'S','y','s', ...@@ -2783,6 +2930,47 @@ static const WCHAR WC_LISTVIEWW[] = { 'S','y','s',
#define LVHT_TORIGHT 0x0020 #define LVHT_TORIGHT 0x0020
#define LVHT_TOLEFT 0x0040 #define LVHT_TOLEFT 0x0040
#define LV_VIEW_ICON 0x0000
#define LV_VIEW_DETAILS 0x0001
#define LV_VIEW_SMALLICON 0x0002
#define LV_VIEW_LIST 0x0003
#define LV_VIEW_TILE 0x0004
#define LV_VIEW_MAX 0x0004
#define LVGF_NONE 0x00000000
#define LVGF_HEADER 0x00000001
#define LVGF_FOOTER 0x00000002
#define LVGF_STATE 0x00000004
#define LVGF_ALIGN 0x00000008
#define LVGF_GROUPID 0x00000010
#define LVGS_NORMAL 0x00000000
#define LVGS_COLLAPSED 0x00000001
#define LVGS_HIDDEN 0x00000002
#define LVGA_HEADER_LEFT 0x00000001
#define LVGA_HEADER_CENTER 0x00000002
#define LVGA_HEADER_RIGHT 0x00000004
#define LVGA_FOOTER_LEFT 0x00000008
#define LVGA_FOOTER_CENTER 0x00000010
#define LVGA_FOOTER_RIGHT 0x00000020
#define LVGMF_NONE 0x00000000
#define LVGMF_BORDERSIZE 0x00000001
#define LVGMF_BORDERCOLOR 0x00000002
#define LVGMF_TEXTCOLOR 0x00000004
#define LVTVIF_AUTOSIZE 0x00000000
#define LVTVIF_FIXEDWIDTH 0x00000001
#define LVTVIF_FIXEDHEIGHT 0x00000002
#define LVTVIF_FIXEDSIZE 0x00000003
#define LVTVIM_TILESIZE 0x00000001
#define LVTVIM_COLUMNS 0x00000002
#define LVTVIM_LABELMARGIN 0x00000004
#define LVIM_AFTER 0x00000001
#define LVM_FIRST 0x1000 #define LVM_FIRST 0x1000
#define LVM_GETBKCOLOR (LVM_FIRST+0) #define LVM_GETBKCOLOR (LVM_FIRST+0)
#define LVM_SETBKCOLOR (LVM_FIRST+1) #define LVM_SETBKCOLOR (LVM_FIRST+1)
...@@ -2890,6 +3078,41 @@ static const WCHAR WC_LISTVIEWW[] = { 'S','y','s', ...@@ -2890,6 +3078,41 @@ static const WCHAR WC_LISTVIEWW[] = { 'S','y','s',
#define LVM_GETTOOLTIPS (LVM_FIRST+78) #define LVM_GETTOOLTIPS (LVM_FIRST+78)
#define LVM_GETUNICODEFORMAT (CCM_GETUNICODEFORMAT) #define LVM_GETUNICODEFORMAT (CCM_GETUNICODEFORMAT)
#define LVM_SETUNICODEFORMAT (CCM_SETUNICODEFORMAT) #define LVM_SETUNICODEFORMAT (CCM_SETUNICODEFORMAT)
#define LVM_SETSELECTEDCOLUMN (LVM_FIRST + 140)
#define LVM_SETTILEWIDTH (LVM_FIRST + 141)
#define LVM_SETVIEW (LVM_FIRST + 142)
#define LVM_GETVIEW (LVM_FIRST + 143)
#define LVM_INSERTGROUP (LVM_FIRST + 145)
#define LVM_SETGROUPINFO (LVM_FIRST + 147)
#define LVM_GETGROUPINFO (LVM_FIRST + 149)
#define LVM_REMOVEGROUP (LVM_FIRST + 150)
#define LVM_MOVEGROUP (LVM_FIRST + 151)
#define LVM_MOVEITEMTOGROUP (LVM_FIRST + 154)
#define LVM_SETGROUPMETRICS (LVM_FIRST + 155)
#define LVM_GETGROUPMETRICS (LVM_FIRST + 156)
#define LVM_ENABLEGROUPVIEW (LVM_FIRST + 157)
#define LVM_SORTGROUPS (LVM_FIRST + 158)
#define LVM_INSERTGROUPSORTED (LVM_FIRST + 159)
#define LVM_REMOVEALLGROUPS (LVM_FIRST + 160)
#define LVM_HASGROUP (LVM_FIRST + 161)
#define LVM_SETTILEVIEWINFO (LVM_FIRST + 162)
#define LVM_GETTILEVIEWINFO (LVM_FIRST + 163)
#define LVM_SETTILEINFO (LVM_FIRST + 164)
#define LVM_GETTILEINFO (LVM_FIRST + 165)
#define LVM_SETINSERTMARK (LVM_FIRST + 166)
#define LVM_GETINSERTMARK (LVM_FIRST + 167)
#define LVM_INSERTMARKHITTEST (LVM_FIRST + 168)
#define LVM_GETINSERTMARKRECT (LVM_FIRST + 169)
#define LVM_SETINSERTMARKCOLOR (LVM_FIRST + 170)
#define LVM_GETINSERTMARKCOLOR (LVM_FIRST + 171)
#define LVM_SETINFOTIP (LVM_FIRST + 173)
#define LVM_GETSELECTEDCOLUMN (LVM_FIRST + 174)
#define LVM_ISGROUPVIEWENABLED (LVM_FIRST + 175)
#define LVM_GETOUTLINECOLOR (LVM_FIRST + 176)
#define LVM_SETOUTLINECOLOR (LVM_FIRST + 177)
#define LVM_CANCELEDITLABEL (LVM_FIRST + 179)
#define LVM_MAPINDEXTOID (LVM_FIRST + 180)
#define LVM_MAPIDTOINDEX (LVM_FIRST + 181)
#define LVN_FIRST (0U-100U) #define LVN_FIRST (0U-100U)
#define LVN_LAST (0U-199U) #define LVN_LAST (0U-199U)
...@@ -3030,6 +3253,8 @@ typedef struct tagLVBKIMAGEW ...@@ -3030,6 +3253,8 @@ typedef struct tagLVBKIMAGEW
#define LVBKIF_STYLE_NORMAL 0x00000000 #define LVBKIF_STYLE_NORMAL 0x00000000
#define LVBKIF_STYLE_TILE 0x00000010 #define LVBKIF_STYLE_TILE 0x00000010
#define LVBKIF_STYLE_MASK 0x00000010 #define LVBKIF_STYLE_MASK 0x00000010
#define LVBKIF_FLAG_TILEOFFSET 0x00000100
#define LVBKIF_TYPE_WATERMARK 0x10000000
#define ListView_SetBkImage(hwnd, plvbki) \ #define ListView_SetBkImage(hwnd, plvbki) \
(BOOL)SNDMSG((hwnd), LVM_SETBKIMAGE, 0, (LPARAM)plvbki) (BOOL)SNDMSG((hwnd), LVM_SETBKIMAGE, 0, (LPARAM)plvbki)
...@@ -3544,17 +3769,84 @@ typedef struct NMLVSCROLL ...@@ -3544,17 +3769,84 @@ typedef struct NMLVSCROLL
(HWND)SNDMSGA((hwndLV), LVM_SETTOOLTIPS, (WPARAM)hwndNewHwnd, 0L) (HWND)SNDMSGA((hwndLV), LVM_SETTOOLTIPS, (WPARAM)hwndNewHwnd, 0L)
#define ListView_SubItemHitTest(hwndLV, plvhti) \ #define ListView_SubItemHitTest(hwndLV, plvhti) \
(int)SNDMSGA((hwndLV), LVM_SUBITEMHITTEST, 0, (LPARAM)(LPLVHITTESTINFO)(plvhti)) (int)SNDMSGA((hwndLV), LVM_SUBITEMHITTEST, 0, (LPARAM)(LPLVHITTESTINFO)(plvhti))
#define ListView_GetSelectionMark(hwndLV) \ #define ListView_GetSelectionMark(hwndLV) \
(int)SNDMSG((hwndLV), LVM_GETSELECTIONMARK, 0, 0) (int)SNDMSG((hwndLV), LVM_GETSELECTIONMARK, 0, 0)
#define ListView_SetSelectionMark(hwndLV, iItem) \ #define ListView_SetSelectionMark(hwndLV, iItem) \
(int)SNDMSG((hwndLV), LVM_SETSELECTIONMARK, 0, (LPARAM)(iItem)) (int)SNDMSG((hwndLV), LVM_SETSELECTIONMARK, 0, (LPARAM)(iItem))
#define ListView_GetViewRect(hwndLV, prc) \ #define ListView_GetViewRect(hwndLV, prc) \
(BOOL)SNDMSG((hwndLV),LVM_GETVIEWRECT,0,(LPARAM)(LPRECT)(prc)) (BOOL)SNDMSG((hwndLV),LVM_GETVIEWRECT,0,(LPARAM)(LPRECT)(prc))
#define ListView_GetHeader(hwndLV) \ #define ListView_GetHeader(hwndLV) \
(HWND)SNDMSG((hwndLV),LVM_GETHEADER,0,0L) (HWND)SNDMSG((hwndLV),LVM_GETHEADER,0,0L)
#define ListView_SetSelectedColumn(hwnd, iCol) \
SNDMSG((hwnd), LVM_SETSELECTEDCOLUMN, (WPARAM)iCol, 0)
#define ListView_SetTileWidth(hwnd, cpWidth) \
SNDMSG((hwnd), LVM_SETTILEWIDTH, (WPARAM)cpWidth, 0)
#define ListView_SetView(hwnd, iView) \
(DWORD)SNDMSG((hwnd), LVM_SETVIEW, (WPARAM)(DWORD)iView, 0)
#define ListView_GetView(hwnd) \
(DWORD)SNDMSG((hwnd), LVM_GETVIEW, 0, 0)
#define ListView_InsertGroup(hwnd, index, pgrp) \
SNDMSG((hwnd), LVM_INSERTGROUP, (WPARAM)index, (LPARAM)pgrp)
#define ListView_SetGroupInfo(hwnd, iGroupId, pgrp) \
SNDMSG((hwnd), LVM_SETGROUPINFO, (WPARAM)iGroupId, (LPARAM)pgrp)
#define ListView_GetGroupInfo(hwnd, iGroupId, pgrp) \
SNDMSG((hwnd), LVM_GETGROUPINFO, (WPARAM)iGroupId, (LPARAM)pgrp)
#define ListView_RemoveGroup(hwnd, iGroupId) \
SNDMSG((hwnd), LVM_REMOVEGROUP, (WPARAM)iGroupId, 0)
#define ListView_MoveGroup(hwnd, iGroupId, toIndex) \
SNDMSG((hwnd), LVM_MOVEGROUP, (WPARAM)iGroupId, (LPARAM)toIndex)
#define ListView_MoveItemToGroup(hwnd, idItemFrom, idGroupTo) \
SNDMSG((hwnd), LVM_MOVEITEMTOGROUP, (WPARAM)idItemFrom, (LPARAM)idGroupTo)
#define ListView_SetGroupMetrics(hwnd, pGroupMetrics) \
SNDMSG((hwnd), LVM_SETGROUPMETRICS, 0, (LPARAM)pGroupMetrics)
#define ListView_GetGroupMetrics(hwnd, pGroupMetrics) \
SNDMSG((hwnd), LVM_GETGROUPMETRICS, 0, (LPARAM)pGroupMetrics)
#define ListView_EnableGroupView(hwnd, fEnable) \
SNDMSG((hwnd), LVM_ENABLEGROUPVIEW, (WPARAM)fEnable, 0)
#define ListView_SortGroups(hwnd, _pfnGroupCompate, _plv) \
SNDMSG((hwnd), LVM_SORTGROUPS, (WPARAM)_pfnGroupCompate, (LPARAM)_plv)
#define ListView_InsertGroupSorted(hwnd, structInsert) \
SNDMSG((hwnd), LVM_INSERTGROUPSORTED, (WPARAM)structInsert, 0)
#define ListView_RemoveAllGroups(hwnd) \
SNDMSG((hwnd), LVM_REMOVEALLGROUPS, 0, 0)
#define ListView_HasGroup(hwnd, dwGroupId) \
SNDMSG((hwnd), LVM_HASGROUP, dwGroupId, 0)
#define ListView_SetTileViewInfo(hwnd, ptvi) \
SNDMSG((hwnd), LVM_SETTILEVIEWINFO, 0, (LPARAM)ptvi)
#define ListView_GetTileViewInfo(hwnd, ptvi) \
SNDMSG((hwnd), LVM_GETTILEVIEWINFO, 0, (LPARAM)ptvi)
#define ListView_SetTileInfo(hwnd, pti) \
SNDMSG((hwnd), LVM_SETTILEINFO, 0, (LPARAM)pti)
#define ListView_GetTileInfo(hwnd, pti) \
SNDMSG((hwnd), LVM_GETTILEINFO, 0, (LPARAM)pti)
#define ListView_SetInsertMark(hwnd, lvim) \
(BOOL)SNDMSG((hwnd), LVM_SETINSERTMARK, (WPARAM) 0, (LPARAM) (lvim))
#define ListView_GetInsertMark(hwnd, lvim) \
(BOOL)SNDMSG((hwnd), LVM_GETINSERTMARK, (WPARAM) 0, (LPARAM) (lvim))
#define ListView_InsertMarkHitTest(hwnd, point, lvim) \
(int)SNDMSG((hwnd), LVM_INSERTMARKHITTEST, (WPARAM)(LPPOINT)(point), (LPARAM)(LPLVINSERTMARK)(lvim))
#define ListView_GetInsertMarkRect(hwnd, rc) \
(int)SNDMSG((hwnd), LVM_GETINSERTMARKRECT, (WPARAM)0, (LPARAM)(LPRECT)(rc))
#define ListView_SetInsertMarkColor(hwnd, color) \
(COLORREF)SNDMSG((hwnd), LVM_SETINSERTMARKCOLOR, (WPARAM)0, (LPARAM)(COLORREF)(color))
#define ListView_GetInsertMarkColor(hwnd) \
(COLORREF)SNDMSG((hwnd), LVM_GETINSERTMARKCOLOR, (WPARAM)0, (LPARAM)0)
#define ListView_SetInfoTip(hwndLV, plvInfoTip)\
(BOOL)SNDMSG((hwndLV), LVM_SETINFOTIP, (WPARAM)0, (LPARAM)plvInfoTip)
#define ListView_GetSelectedColumn(hwnd) \
(UINT)SNDMSG((hwnd), LVM_GETSELECTEDCOLUMN, 0, 0)
#define ListView_IsGroupViewEnabled(hwnd) \
(BOOL)SNDMSG((hwnd), LVM_ISGROUPVIEWENABLED, 0, 0)
#define ListView_GetOutlineColor(hwnd) \
(COLORREF)SNDMSG((hwnd), LVM_GETOUTLINECOLOR, 0, 0)
#define ListView_SetOutlineColor(hwnd, color) \
(COLORREF)SNDMSG((hwnd), LVM_SETOUTLINECOLOR, (WPARAM)0, (LPARAM)(COLORREF)(color))
#define ListView_CancelEditLabel(hwnd) \
(VOID)SNDMSG((hwnd), LVM_CANCELEDITLABEL, (WPARAM)0, (LPARAM)0)
#define ListView_MapIndexToID(hwnd, index) \
(UINT)SNDMSG((hwnd), LVM_MAPINDEXTOID, (WPARAM)index, (LPARAM)0)
#define ListView_MapIDToIndex(hwnd, id) \
(UINT)SNDMSG((hwnd), LVM_MAPIDTOINDEX, (WPARAM)id, (LPARAM)0)
/* Tab Control */ /* Tab Control */
...@@ -3832,6 +4124,7 @@ static const WCHAR WC_COMBOBOXEXW[] = { 'C','o','m','b','o', ...@@ -3832,6 +4124,7 @@ static const WCHAR WC_COMBOBOXEXW[] = { 'C','o','m','b','o',
#define CBEM_SETUNICODEFORMAT CCM_SETUNICODEFORMAT #define CBEM_SETUNICODEFORMAT CCM_SETUNICODEFORMAT
#define CBEM_GETUNICODEFORMAT CCM_GETUNICODEFORMAT #define CBEM_GETUNICODEFORMAT CCM_GETUNICODEFORMAT
#define CBEM_HASEDITCHANGED (WM_USER+10) #define CBEM_HASEDITCHANGED (WM_USER+10)
#define CBEM_SETWINDOWTHEME CCM_SETWINDOWTHEME
#define CBEIF_TEXT 0x00000001 #define CBEIF_TEXT 0x00000001
#define CBEIF_IMAGE 0x00000002 #define CBEIF_IMAGE 0x00000002
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment