From 64c0532eb56f83274e38ae7db754012e9d19a3f3 Mon Sep 17 00:00:00 2001 From: Danny Smith Date: Mon, 13 Oct 2003 02:46:36 +0000 Subject: [PATCH] 2003-10-13 Filip Navara * include/commctrl.h: (DSA_*):Add prototypes, typedefs and defines for Dynamic Storage Arrays. (DPA_*): Likewise, for Dynamic Pointer Arrays. (FlatSB_*, InitializeFlatSB, InitializeFlatSB): Add prototypes and defines for Flat ScrollBars. (SetWindowSubclass, GetWindowSubclass, RemoveWindowSubclass, DefSubclassProc): Add prototypes for subclassing. (DrawShadowText) Add prototype. ` (COMCTL32_VERSION): Define. --- winsup/w32api/ChangeLog | 12 +++++ winsup/w32api/include/commctrl.h | 86 ++++++++++++++++++++++++++++++++ 2 files changed, 98 insertions(+) diff --git a/winsup/w32api/ChangeLog b/winsup/w32api/ChangeLog index a44f805da..9259e5f76 100644 --- a/winsup/w32api/ChangeLog +++ b/winsup/w32api/ChangeLog @@ -1,3 +1,15 @@ +003-10-13 Filip Navara + + * include/commctrl.h: (DSA_*):Add prototypes, typedefs and + defines for Dynamic Storage Arrays. + (DPA_*): Likewise, for Dynamic Pointer Arrays. + (FlatSB_*, InitializeFlatSB, InitializeFlatSB): Add prototypes + and defines for Flat ScrollBars. + (SetWindowSubclass, GetWindowSubclass, RemoveWindowSubclass, + DefSubclassProc): Add prototypes for subclassing. + (DrawShadowText) Add prototype. +` (COMCTL32_VERSION): Define. + 2003-10-13 Martin Fuchs * include/shlobj.h (CFSTR_FILENAME, CFSTR_FILEDESCRIPTOR, diff --git a/winsup/w32api/include/commctrl.h b/winsup/w32api/include/commctrl.h index a3ea96eec..e6e7de0f5 100644 --- a/winsup/w32api/include/commctrl.h +++ b/winsup/w32api/include/commctrl.h @@ -129,6 +129,14 @@ extern "C" { #define WC_SCROLLBAR WC_SCROLLBARA #endif +#if (_WIN32_IE >= 0x0500) +#if (_WIN32_WINNT >= 0x0501) +#define COMCTL32_VERSION 6 +#else +#define COMCTL32_VERSION 5 +#endif +#endif + #define LVM_FIRST 0x1000 #define TV_FIRST 0x1100 #define HDM_FIRST 0x1200 @@ -1740,6 +1748,32 @@ extern "C" { #define CBEM_INSERTITEMW (WM_USER + 11) #define CBEM_SETITEMW (WM_USER + 12) #define CBEM_GETITEMW (WM_USER + 13) +#define DA_LAST 0x7fffffff +#define DPA_APPEND 0x7fffffff +#define DPA_ERR -1 +#define DSA_APPEND 0x7fffffff +#define DSA_ERR -1 +#define DPAS_SORTED 1 +#define DPAS_INSERTBEFORE 2 +#define DPAS_INSERTAFTER 4 +#if (_WIN32_IE >= 0x400) +#define WSB_PROP_CYVSCROLL 1 +#define WSB_PROP_CXHSCROLL 2 +#define WSB_PROP_CYHSCROLL 4 +#define WSB_PROP_CXVSCROLL 8 +#define WSB_PROP_CXHTHUMB 16 +#define WSB_PROP_CYVTHUMB 32 +#define WSB_PROP_VBKGCOLOR 64 +#define WSB_PROP_HBKGCOLOR 128 +#define WSB_PROP_VSTYLE 256 +#define WSB_PROP_HSTYLE 512 +#define WSB_PROP_WINSTYLE 1024 +#define WSB_PROP_PALETTE 2048 +#define WSB_PROP_MASK 0xfff +#define FSB_FLAT_MODE 2 +#define FSB_ENCARTA_MODE 1 +#define FSB_REGULAR_MODE 0 +#endif /* _WIN32_IE >= 0x400 */ #ifndef RC_INVOKED typedef struct tagCOMBOBOXEXITEMA{ @@ -2749,6 +2783,14 @@ typedef struct _RB_HITTESTINFO { int iBand; } RBHITTESTINFO,*LPRBHITTESTINFO; #endif +typedef struct _DSA *HDSA; +typedef struct _DPA *HDPA; +typedef INT (CALLBACK *PFNDPAENUMCALLBACK)(PVOID,PVOID); +typedef INT (CALLBACK *PFNDSAENUMCALLBACK)(PVOID,PVOID); +typedef INT (CALLBACK *PFNDPACOMPARE)(PVOID,PVOID,LPARAM); +#if (_WIN32_WINNT >= 0x0501) +typedef LRESULT (CALLBACK *SUBCLASSPROC)(HWND,UINT,WPARAM,LPARAM,UINT_PTR,DWORD_PTR); +#endif /* _WIN32_WINNT >= 0x0501 */ #define INDEXTOOVERLAYMASK(i) ((i)<<8) #define INDEXTOSTATEIMAGEMASK(i) ((i)<<12) @@ -2798,6 +2840,50 @@ void WINAPI GetEffectiveClientRect(HWND,LPRECT,LPINT); #define Header_GetOrderArray(w,l,a) (BOOL)SNDMSG((w),HDM_GETORDERARRAY,(WPARAM)(l),(LPARAM)(a)) #define Header_SetOrderArray(w,l,a) (BOOL)SNDMSG((w),HDM_SETORDERARRAY,(WPARAM)(l),(LPARAM)(a)) #endif +HDSA WINAPI DSA_Create(INT,INT); +BOOL WINAPI DSA_Destroy(HDSA); +VOID WINAPI DSA_DestroyCallback(HDSA,PFNDSAENUMCALLBACK,PVOID); +PVOID WINAPI DSA_GetItemPtr(HDSA,INT); +INT WINAPI DSA_InsertItem(HDSA,INT,PVOID); +HDPA WINAPI DPA_Create(INT); +BOOL WINAPI DPA_Destroy(HDPA); +PVOID WINAPI DPA_DeletePtr(HDPA,INT); +BOOL WINAPI DPA_DeleteAllPtrs(HDPA); +VOID WINAPI DPA_EnumCallback(HDPA,PFNDPAENUMCALLBACK,PVOID); +VOID WINAPI DPA_DestroyCallback(HDPA,PFNDPAENUMCALLBACK,PVOID); +BOOL WINAPI DPA_SetPtr(HDPA,INT,PVOID); +INT WINAPI DPA_InsertPtr(HDPA,INT,PVOID); +PVOID WINAPI DPA_GetPtr(HDPA,INT_PTR); +BOOL WINAPI DPA_Sort(HDPA,PFNDPACOMPARE,LPARAM); +INT WINAPI DPA_Search(HDPA,PVOID,INT,PFNDPACOMPARE,LPARAM,UINT); +BOOL WINAPI Str_SetPtrW(LPWSTR*,LPCWSTR); +#if (_WIN32_IE >= 0x0400) +BOOL WINAPI FlatSB_EnableScrollBar(HWND,INT,UINT); +BOOL WINAPI FlatSB_ShowScrollBar(HWND,INT,BOOL); +BOOL WINAPI FlatSB_GetScrollRange(HWND,INT,LPINT,LPINT); +BOOL WINAPI FlatSB_GetScrollInfo(HWND,INT,LPSCROLLINFO); +INT WINAPI FlatSB_GetScrollPos(HWND,INT); +BOOL WINAPI FlatSB_GetScrollProp(HWND,INT,LPINT); +#ifdef _WIN64 +BOOL WINAPI FlatSB_GetScrollPropPtr(HWND,INT,PINT_PTR); +#else +#define FlatSB_GetScrollPropPtr FlatSB_GetScrollProp +#endif +INT WINAPI FlatSB_SetScrollPos(HWND,INT,INT,BOOL); +INT WINAPI FlatSB_SetScrollInfo(HWND,INT,LPSCROLLINFO,BOOL); +INT WINAPI FlatSB_SetScrollRange(HWND,INT,INT,INT,BOOL); +BOOL WINAPI FlatSB_SetScrollProp(HWND,UINT,INT_PTR,BOOL); +#define FlatSB_SetScrollPropPtr FlatSB_SetScrollProp +BOOL WINAPI InitializeFlatSB(HWND); +HRESULT WINAPI UninitializeFlatSB(HWND); +#endif /* _WIN32_IE >= 0x0400 */ +#if (_WIN32_WINNT >= 0x0501) +BOOL WINAPI SetWindowSubclass(HWND,SUBCLASSPROC,UINT_PTR,DWORD_PTR); +BOOL WINAPI GetWindowSubclass(HWND,SUBCLASSPROC,UINT_PTR,DWORD_PTR*); +BOOL WINAPI RemoveWindowSubclass(HWND,SUBCLASSPROC,UINT_PTR); +LRESULT WINAPI DefSubclassProc(HWND,UINT,WPARAM,LPARAM); +INT WINAPI DrawShadowText(HDC,LPCWSTR,UINT,RECT*,DWORD,COLORREF,COLORREF,INT,INT); +#endif /* _WIN32_WINNT >= 0x0501 */ int WINAPI ImageList_Add(HIMAGELIST,HBITMAP,HBITMAP); #define ImageList_AddIcon(l,i) ImageList_ReplaceIcon(l,-1,i) int WINAPI ImageList_AddMasked(HIMAGELIST,HBITMAP,COLORREF);