Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-winehq
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wine
wine-winehq
Commits
f5cb3dde
Commit
f5cb3dde
authored
Sep 17, 2003
by
Alexandre Julliard
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Moved undocumented functions out of the exported commctrl.h.
parent
209ce0be
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
21 changed files
with
119 additions
and
154 deletions
+119
-154
animate.c
dlls/comctl32/animate.c
+1
-0
comboex.c
dlls/comctl32/comboex.c
+1
-0
comctl32.h
dlls/comctl32/comctl32.h
+24
-0
comctl32undoc.c
dlls/comctl32/comctl32undoc.c
+39
-25
datetime.c
dlls/comctl32/datetime.c
+1
-0
imagelist.c
dlls/comctl32/imagelist.c
+1
-0
ipaddress.c
dlls/comctl32/ipaddress.c
+1
-0
listview.c
dlls/comctl32/listview.c
+0
-0
nativefont.c
dlls/comctl32/nativefont.c
+1
-0
pager.c
dlls/comctl32/pager.c
+1
-0
progress.c
dlls/comctl32/progress.c
+1
-0
rebar.c
dlls/comctl32/rebar.c
+1
-0
status.c
dlls/comctl32/status.c
+1
-0
toolbar.c
dlls/comctl32/toolbar.c
+1
-1
tooltips.c
dlls/comctl32/tooltips.c
+1
-0
treeview.c
dlls/comctl32/treeview.c
+1
-1
updown.c
dlls/comctl32/updown.c
+1
-0
iconcache.c
dlls/shell32/iconcache.c
+7
-12
shell32_main.c
dlls/shell32/shell32_main.c
+0
-9
shlview.c
dlls/shell32/shlview.c
+11
-11
commctrl.h
include/commctrl.h
+24
-95
No files found.
dlls/comctl32/animate.c
View file @
f5cb3dde
...
...
@@ -39,6 +39,7 @@
#include "commctrl.h"
#include "vfw.h"
#include "mmsystem.h"
#include "comctl32.h"
#include "wine/debug.h"
WINE_DEFAULT_DEBUG_CHANNEL
(
animate
);
...
...
dlls/comctl32/comboex.c
View file @
f5cb3dde
...
...
@@ -38,6 +38,7 @@
#include "winuser.h"
#include "winnls.h"
#include "commctrl.h"
#include "comctl32.h"
#include "wine/debug.h"
#include "wine/unicode.h"
...
...
dlls/comctl32/comctl32.h
View file @
f5cb3dde
...
...
@@ -155,4 +155,28 @@ typedef struct
WNDPROC
origproc
;
}
SUBCLASS_INFO
,
*
LPSUBCLASS_INFO
;
/* private heap memory functions */
LPVOID
WINAPI
COMCTL32_Alloc
(
DWORD
);
LPVOID
WINAPI
COMCTL32_ReAlloc
(
LPVOID
,
DWORD
);
BOOL
WINAPI
COMCTL32_Free
(
LPVOID
);
DWORD
WINAPI
COMCTL32_GetSize
(
LPVOID
);
/* undocumented functions */
INT
WINAPI
Str_GetPtrA
(
LPCSTR
,
LPSTR
,
INT
);
INT
WINAPI
Str_GetPtrW
(
LPCWSTR
,
LPWSTR
,
INT
);
INT
WINAPI
DPA_GetPtrIndex
(
const
HDPA
,
LPVOID
);
BOOL
WINAPI
DPA_Grow
(
const
HDPA
,
INT
);
#define DPAM_NOSORT 0x0001
#define DPAM_INSERT 0x0004
#define DPAM_DELETE 0x0008
typedef
PVOID
(
CALLBACK
*
PFNDPAMERGE
)(
DWORD
,
PVOID
,
PVOID
,
LPARAM
);
BOOL
WINAPI
DPA_Merge
(
const
HDPA
,
const
HDPA
,
DWORD
,
PFNDPACOMPARE
,
PFNDPAMERGE
,
LPARAM
);
#define DPA_GetPtrCount(hdpa) (*(INT*)(hdpa))
#endif
/* __WINE_COMCTL32_H */
dlls/comctl32/comctl32undoc.c
View file @
f5cb3dde
...
...
@@ -61,6 +61,24 @@ WINE_DEFAULT_DEBUG_CHANNEL(commctrl);
extern
HANDLE
COMCTL32_hHeap
;
/* handle to the private heap */
struct
_DSA
{
INT
nItemCount
;
LPVOID
pData
;
INT
nMaxCount
;
INT
nItemSize
;
INT
nGrow
;
};
struct
_DPA
{
INT
nItemCount
;
LPVOID
*
ptrs
;
HANDLE
hHeap
;
INT
nGrow
;
INT
nMaxCount
;
};
typedef
struct
_STREAMDATA
{
DWORD
dwSize
;
...
...
@@ -224,10 +242,10 @@ DPA_Merge (const HDPA hdpa1, const HDPA hdpa2, DWORD dwFlags,
TRACE
(
"%p %p %08lx %p %p %08lx)
\n
"
,
hdpa1
,
hdpa2
,
dwFlags
,
pfnCompare
,
pfnMerge
,
lParam
);
if
(
IsBadWritePtr
(
hdpa1
,
sizeof
(
DPA
)))
if
(
IsBadWritePtr
(
hdpa1
,
sizeof
(
*
hdpa1
)))
return
FALSE
;
if
(
IsBadWritePtr
(
hdpa2
,
sizeof
(
DPA
)))
if
(
IsBadWritePtr
(
hdpa2
,
sizeof
(
*
hdpa2
)))
return
FALSE
;
if
(
IsBadCodePtr
((
FARPROC
)
pfnCompare
))
...
...
@@ -1330,7 +1348,7 @@ DSA_Create (INT nSize, INT nGrow)
TRACE
(
"(size=%d grow=%d)
\n
"
,
nSize
,
nGrow
);
hdsa
=
(
HDSA
)
COMCTL32_Alloc
(
sizeof
(
DSA
));
hdsa
=
(
HDSA
)
COMCTL32_Alloc
(
sizeof
(
*
hdsa
));
if
(
hdsa
)
{
hdsa
->
nItemCount
=
0
;
...
...
@@ -1663,7 +1681,7 @@ DPA_Create (INT nGrow)
TRACE
(
"(%d)
\n
"
,
nGrow
);
hdpa
=
(
HDPA
)
COMCTL32_Alloc
(
sizeof
(
DPA
));
hdpa
=
(
HDPA
)
COMCTL32_Alloc
(
sizeof
(
*
hdpa
));
if
(
hdpa
)
{
hdpa
->
nGrow
=
max
(
8
,
nGrow
);
hdpa
->
hHeap
=
COMCTL32_hHeap
;
...
...
@@ -1766,7 +1784,7 @@ DPA_Clone (const HDPA hdpa, const HDPA hdpaNew)
if
(
!
hdpaNew
)
{
/* create a new DPA */
hdpaTemp
=
(
HDPA
)
HeapAlloc
(
hdpa
->
hHeap
,
HEAP_ZERO_MEMORY
,
sizeof
(
DPA
));
sizeof
(
*
hdpaTemp
));
hdpaTemp
->
hHeap
=
hdpa
->
hHeap
;
hdpaTemp
->
nGrow
=
hdpa
->
nGrow
;
}
...
...
@@ -2237,9 +2255,9 @@ DPA_CreateEx (INT nGrow, HANDLE hHeap)
TRACE
(
"(%d %p)
\n
"
,
nGrow
,
hHeap
);
if
(
hHeap
)
hdpa
=
(
HDPA
)
HeapAlloc
(
hHeap
,
HEAP_ZERO_MEMORY
,
sizeof
(
DPA
));
hdpa
=
(
HDPA
)
HeapAlloc
(
hHeap
,
HEAP_ZERO_MEMORY
,
sizeof
(
*
hdpa
));
else
hdpa
=
(
HDPA
)
COMCTL32_Alloc
(
sizeof
(
DPA
));
hdpa
=
(
HDPA
)
COMCTL32_Alloc
(
sizeof
(
*
hdpa
));
if
(
hdpa
)
{
hdpa
->
nGrow
=
min
(
8
,
nGrow
);
...
...
@@ -2502,11 +2520,11 @@ COMCTL32_StrToIntW (LPWSTR lpString)
*/
VOID
WINAPI
DPA_EnumCallback
(
const
HDPA
hdpa
,
DPAENUMPROC
enumProc
,
LPARAM
lParam
)
DPA_EnumCallback
(
HDPA
hdpa
,
PFNDPAENUMCALLBACK
enumProc
,
LPVOID
lParam
)
{
INT
i
;
TRACE
(
"(%p %p %
08lx
)
\n
"
,
hdpa
,
enumProc
,
lParam
);
TRACE
(
"(%p %p %
p
)
\n
"
,
hdpa
,
enumProc
,
lParam
);
if
(
!
hdpa
)
return
;
...
...
@@ -2533,18 +2551,16 @@ DPA_EnumCallback (const HDPA hdpa, DPAENUMPROC enumProc, LPARAM lParam)
* lParam [I]
*
* RETURNS
* Success: TRUE
* Failure: FALSE
* none
*/
BOOL
WINAPI
DPA_DestroyCallback
(
const
HDPA
hdpa
,
DPAENUMPROC
enumProc
,
LPARAM
lParam
)
void
WINAPI
DPA_DestroyCallback
(
HDPA
hdpa
,
PFNDPAENUMCALLBACK
enumProc
,
LPVOID
lParam
)
{
TRACE
(
"(%p %p %
08lx
)
\n
"
,
hdpa
,
enumProc
,
lParam
);
TRACE
(
"(%p %p %
p
)
\n
"
,
hdpa
,
enumProc
,
lParam
);
DPA_EnumCallback
(
hdpa
,
enumProc
,
lParam
);
return
DPA_Destroy
(
hdpa
);
DPA_Destroy
(
hdpa
);
}
...
...
@@ -2563,11 +2579,11 @@ DPA_DestroyCallback (const HDPA hdpa, DPAENUMPROC enumProc, LPARAM lParam)
*/
VOID
WINAPI
DSA_EnumCallback
(
const
HDSA
hdsa
,
DSAENUMPROC
enumProc
,
LPARAM
lParam
)
DSA_EnumCallback
(
HDSA
hdsa
,
PFNDSAENUMCALLBACK
enumProc
,
LPVOID
lParam
)
{
INT
i
;
TRACE
(
"(%p %p %
08lx
)
\n
"
,
hdsa
,
enumProc
,
lParam
);
TRACE
(
"(%p %p %
p
)
\n
"
,
hdsa
,
enumProc
,
lParam
);
if
(
!
hdsa
)
return
;
...
...
@@ -2595,18 +2611,16 @@ DSA_EnumCallback (const HDSA hdsa, DSAENUMPROC enumProc, LPARAM lParam)
* lParam [I]
*
* RETURNS
* Success: TRUE
* Failure: FALSE
* none
*/
BOOL
WINAPI
DSA_DestroyCallback
(
const
HDSA
hdsa
,
DSAENUMPROC
enumProc
,
LPARAM
lParam
)
void
WINAPI
DSA_DestroyCallback
(
HDSA
hdsa
,
PFNDSAENUMCALLBACK
enumProc
,
LPVOID
lParam
)
{
TRACE
(
"(%p %p %
08lx
)
\n
"
,
hdsa
,
enumProc
,
lParam
);
TRACE
(
"(%p %p %
p
)
\n
"
,
hdsa
,
enumProc
,
lParam
);
DSA_EnumCallback
(
hdsa
,
enumProc
,
lParam
);
return
DSA_Destroy
(
hdsa
);
DSA_Destroy
(
hdsa
);
}
/**************************************************************************
...
...
dlls/comctl32/datetime.c
View file @
f5cb3dde
...
...
@@ -36,6 +36,7 @@
#include "winuser.h"
#include "winnls.h"
#include "commctrl.h"
#include "comctl32.h"
#include "wine/debug.h"
WINE_DEFAULT_DEBUG_CHANNEL
(
datetime
);
...
...
dlls/comctl32/imagelist.c
View file @
f5cb3dde
...
...
@@ -51,6 +51,7 @@
#include "wingdi.h"
#include "winuser.h"
#include "commctrl.h"
#include "comctl32.h"
#include "imagelist.h"
#include "wine/debug.h"
...
...
dlls/comctl32/ipaddress.c
View file @
f5cb3dde
...
...
@@ -44,6 +44,7 @@
#include "winuser.h"
#include "winnls.h"
#include "commctrl.h"
#include "comctl32.h"
#include "wine/unicode.h"
#include "wine/debug.h"
...
...
dlls/comctl32/listview.c
View file @
f5cb3dde
This diff is collapsed.
Click to expand it.
dlls/comctl32/nativefont.c
View file @
f5cb3dde
...
...
@@ -35,6 +35,7 @@
#include "winuser.h"
#include "winnls.h"
#include "commctrl.h"
#include "comctl32.h"
#include "wine/debug.h"
WINE_DEFAULT_DEBUG_CHANNEL
(
nativefont
);
...
...
dlls/comctl32/pager.c
View file @
f5cb3dde
...
...
@@ -36,6 +36,7 @@
#include "winuser.h"
#include "winnls.h"
#include "commctrl.h"
#include "comctl32.h"
#include "wine/debug.h"
WINE_DEFAULT_DEBUG_CHANNEL
(
pager
);
...
...
dlls/comctl32/progress.c
View file @
f5cb3dde
...
...
@@ -40,6 +40,7 @@
#include "winuser.h"
#include "winnls.h"
#include "commctrl.h"
#include "comctl32.h"
#include "wine/debug.h"
WINE_DEFAULT_DEBUG_CHANNEL
(
progress
);
...
...
dlls/comctl32/rebar.c
View file @
f5cb3dde
...
...
@@ -150,6 +150,7 @@
#include "winuser.h"
#include "winnls.h"
#include "commctrl.h"
#include "comctl32.h"
#include "wine/debug.h"
WINE_DEFAULT_DEBUG_CHANNEL
(
rebar
);
...
...
dlls/comctl32/status.c
View file @
f5cb3dde
...
...
@@ -50,6 +50,7 @@
#include "winuser.h"
#include "winnls.h"
#include "commctrl.h"
#include "comctl32.h"
#include "wine/debug.h"
WINE_DEFAULT_DEBUG_CHANNEL
(
statusbar
);
...
...
dlls/comctl32/toolbar.c
View file @
f5cb3dde
...
...
@@ -2607,7 +2607,7 @@ TOOLBAR_AddStringW (HWND hwnd, WPARAM wParam, LPARAM lParam)
COMCTL32_Free
(
oldStrings
);
}
np
=
COMCTL32_StrChrW
(
p
,
L
'|'
);
np
=
strchrW
(
p
,
'|'
);
if
(
np
!=
NULL
)
{
len
=
np
-
p
;
np
++
;
...
...
dlls/comctl32/tooltips.c
View file @
f5cb3dde
...
...
@@ -81,6 +81,7 @@
#include "winuser.h"
#include "winnls.h"
#include "commctrl.h"
#include "comctl32.h"
#include "wine/debug.h"
WINE_DEFAULT_DEBUG_CHANNEL
(
tooltips
);
...
...
dlls/comctl32/treeview.c
View file @
f5cb3dde
...
...
@@ -1815,7 +1815,7 @@ TREEVIEW_GetFont(TREEVIEW_INFO *infoPtr)
static
INT
CALLBACK
TREEVIEW_ResetTextWidth
(
LPVOID
pItem
,
DWOR
D
unused
)
TREEVIEW_ResetTextWidth
(
LPVOID
pItem
,
LPVOI
D
unused
)
{
(
void
)
unused
;
...
...
dlls/comctl32/updown.c
View file @
f5cb3dde
...
...
@@ -39,6 +39,7 @@
#include "winuser.h"
#include "winnls.h"
#include "commctrl.h"
#include "comctl32.h"
#include "wine/unicode.h"
#include "wine/debug.h"
...
...
dlls/shell32/iconcache.c
View file @
f5cb3dde
...
...
@@ -267,24 +267,19 @@ BOOL SIC_Initialize(void)
*
* frees the cache
*/
void
SIC_Destroy
(
void
)
static
INT
CALLBACK
sic_free
(
LPVOID
ptr
,
LPVOID
lparam
)
{
LPSIC_ENTRY
lpsice
;
int
i
;
SHFree
(
ptr
);
return
TRUE
;
}
void
SIC_Destroy
(
void
)
{
TRACE
(
"
\n
"
);
EnterCriticalSection
(
&
SHELL32_SicCS
);
if
(
sic_hdpa
&&
NULL
!=
DPA_GetPtr
(
sic_hdpa
,
0
))
{
for
(
i
=
0
;
i
<
DPA_GetPtrCount
(
sic_hdpa
);
++
i
)
{
lpsice
=
DPA_GetPtr
(
sic_hdpa
,
i
);
SHFree
(
lpsice
);
}
DPA_Destroy
(
sic_hdpa
);
}
if
(
sic_hdpa
)
DPA_DestroyCallback
(
sic_hdpa
,
sic_free
,
NULL
);
sic_hdpa
=
NULL
;
...
...
dlls/shell32/shell32_main.c
View file @
f5cb3dde
...
...
@@ -959,15 +959,6 @@ HRESULT WINAPI SHELL32_DllGetVersion (DLLVERSIONINFO *pdvi)
*/
void
(
WINAPI
*
pDLLInitComctl
)(
LPVOID
);
LPVOID
(
WINAPI
*
pCOMCTL32_Alloc
)
(
INT
);
BOOL
(
WINAPI
*
pCOMCTL32_Free
)
(
LPVOID
);
HANDLE
(
WINAPI
*
pCreateMRUListA
)
(
LPVOID
lpcml
);
DWORD
(
WINAPI
*
pFreeMRUListA
)
(
HANDLE
hMRUList
);
INT
(
WINAPI
*
pAddMRUData
)
(
HANDLE
hList
,
LPCVOID
lpData
,
DWORD
cbData
);
INT
(
WINAPI
*
pFindMRUData
)
(
HANDLE
hList
,
LPCVOID
lpData
,
DWORD
cbData
,
LPINT
lpRegNum
);
INT
(
WINAPI
*
pEnumMRUListA
)
(
HANDLE
hList
,
INT
nItemPos
,
LPVOID
lpBuffer
,
DWORD
nBufferSize
);
static
HINSTANCE
hComctl32
;
HINSTANCE
shell32_hInstance
=
0
;
...
...
dlls/shell32/shlview.c
View file @
f5cb3dde
...
...
@@ -563,12 +563,21 @@ static BOOLEAN LV_RenameItem(IShellViewImpl * This, LPCITEMIDLIST pidlOld, LPCIT
* - fills the list into the view
*/
static
INT
CALLBACK
fill_list
(
LPVOID
ptr
,
LPVOID
arg
)
{
LPITEMIDLIST
pidl
=
ptr
;
IShellViewImpl
*
This
=
arg
;
/* in a commdlg This works as a filemask*/
if
(
IncludeObject
(
This
,
pidl
)
==
S_OK
)
LV_AddItem
(
This
,
pidl
);
SHFree
(
pidl
);
return
TRUE
;
}
static
HRESULT
ShellView_FillList
(
IShellViewImpl
*
This
)
{
LPENUMIDLIST
pEnumIDList
;
LPITEMIDLIST
pidl
;
DWORD
dwFetched
;
INT
i
;
HRESULT
hRes
;
HDPA
hdpa
;
...
...
@@ -605,21 +614,12 @@ static HRESULT ShellView_FillList(IShellViewImpl * This)
/*turn the listview's redrawing off*/
SendMessageA
(
This
->
hWndList
,
WM_SETREDRAW
,
FALSE
,
0
);
for
(
i
=
0
;
i
<
DPA_GetPtrCount
(
hdpa
);
++
i
)
/* DPA_GetPtrCount is a macro*/
{
pidl
=
(
LPITEMIDLIST
)
DPA_GetPtr
(
hdpa
,
i
);
/* in a commdlg This works as a filemask*/
if
(
IncludeObject
(
This
,
pidl
)
==
S_OK
)
LV_AddItem
(
This
,
pidl
);
SHFree
(
pidl
);
}
DPA_DestroyCallback
(
hdpa
,
fill_list
,
This
);
/*turn the listview's redrawing back on and force it to draw*/
SendMessageA
(
This
->
hWndList
,
WM_SETREDRAW
,
TRUE
,
0
);
IEnumIDList_Release
(
pEnumIDList
);
/* destroy the list*/
DPA_Destroy
(
hdpa
);
return
S_OK
;
}
...
...
include/commctrl.h
View file @
f5cb3dde
...
...
@@ -4378,112 +4378,41 @@ DECL_WINELIB_TYPE_AW(LPNMDATETIMEFORMATQUERY)
SNDMSGA (hdp, DTM_GETMCFONT, 0, 0)
struct
_DSA
;
typedef
struct
_DSA
*
HDSA
;
typedef
INT
(
CALLBACK
*
PFNDSAENUMCALLBACK
)(
LPVOID
,
LPVOID
);
/**************************************************************************
* UNDOCUMENTED functions
*/
/* private heap memory functions */
LPVOID
WINAPI
COMCTL32_Alloc
(
DWORD
);
LPVOID
WINAPI
COMCTL32_ReAlloc
(
LPVOID
,
DWORD
);
BOOL
WINAPI
COMCTL32_Free
(
LPVOID
);
DWORD
WINAPI
COMCTL32_GetSize
(
LPVOID
);
LPWSTR
WINAPI
COMCTL32_StrChrW
(
LPCWSTR
,
WORD
);
INT
WINAPI
Str_GetPtrA
(
LPCSTR
,
LPSTR
,
INT
);
BOOL
WINAPI
Str_SetPtrA
(
LPSTR
*
,
LPCSTR
);
INT
WINAPI
Str_GetPtrW
(
LPCWSTR
,
LPWSTR
,
INT
);
BOOL
WINAPI
Str_SetPtrW
(
LPWSTR
*
,
LPCWSTR
);
#define Str_GetPtr WINELIB_NAME_AW(Str_GetPtr)
#define Str_SetPtr WINELIB_NAME_AW(Str_SetPtr)
/* Dynamic Storage Array */
typedef
struct
_DSA
{
INT
nItemCount
;
LPVOID
pData
;
INT
nMaxCount
;
INT
nItemSize
;
INT
nGrow
;
}
DSA
,
*
HDSA
;
HDSA
WINAPI
DSA_Create
(
INT
,
INT
);
BOOL
WINAPI
DSA_DeleteAllItems
(
const
HDSA
);
INT
WINAPI
DSA_DeleteItem
(
const
HDSA
,
INT
);
BOOL
WINAPI
DSA_Destroy
(
const
HDSA
);
BOOL
WINAPI
DSA_GetItem
(
const
HDSA
,
INT
,
LPVOID
);
LPVOID
WINAPI
DSA_GetItemPtr
(
const
HDSA
,
INT
);
INT
WINAPI
DSA_InsertItem
(
const
HDSA
,
INT
,
LPVOID
);
BOOL
WINAPI
DSA_SetItem
(
const
HDSA
,
INT
,
LPVOID
);
typedef
INT
(
CALLBACK
*
DSAENUMPROC
)(
LPVOID
,
DWORD
);
VOID
WINAPI
DSA_EnumCallback
(
const
HDSA
,
DSAENUMPROC
,
LPARAM
);
BOOL
WINAPI
DSA_DestroyCallback
(
const
HDSA
,
DSAENUMPROC
,
LPARAM
);
/* Dynamic Pointer Array */
typedef
struct
_DPA
{
INT
nItemCount
;
LPVOID
*
ptrs
;
HANDLE
hHeap
;
INT
nGrow
;
INT
nMaxCount
;
}
DPA
,
*
HDPA
;
HDPA
WINAPI
DPA_Create
(
INT
);
HDPA
WINAPI
DPA_CreateEx
(
INT
,
HANDLE
);
BOOL
WINAPI
DPA_Destroy
(
const
HDPA
);
HDPA
WINAPI
DPA_Clone
(
const
HDPA
,
const
HDPA
);
LPVOID
WINAPI
DPA_GetPtr
(
const
HDPA
,
INT
);
INT
WINAPI
DPA_GetPtrIndex
(
const
HDPA
,
LPVOID
);
BOOL
WINAPI
DPA_Grow
(
const
HDPA
,
INT
);
BOOL
WINAPI
DPA_SetPtr
(
const
HDPA
,
INT
,
LPVOID
);
INT
WINAPI
DPA_InsertPtr
(
const
HDPA
,
INT
,
LPVOID
);
LPVOID
WINAPI
DPA_DeletePtr
(
const
HDPA
,
INT
);
BOOL
WINAPI
DPA_DeleteAllPtrs
(
const
HDPA
);
typedef
INT
(
CALLBACK
*
PFNDPACOMPARE
)(
LPVOID
,
LPVOID
,
LPARAM
);
BOOL
WINAPI
DPA_Sort
(
const
HDPA
,
PFNDPACOMPARE
,
LPARAM
);
HDSA
WINAPI
DSA_Create
(
INT
,
INT
);
BOOL
WINAPI
DSA_Destroy
(
HDSA
);
void
WINAPI
DSA_DestroyCallback
(
HDSA
,
PFNDSAENUMCALLBACK
,
LPVOID
);
LPVOID
WINAPI
DSA_GetItemPtr
(
HDSA
,
INT
);
INT
WINAPI
DSA_InsertItem
(
HDSA
,
INT
,
LPVOID
);
#define DPAS_SORTED 0x0001
#define DPAS_INSERTBEFORE 0x0002
#define DPAS_INSERTAFTER 0x0004
INT
WINAPI
DPA_Search
(
const
HDPA
,
LPVOID
,
INT
,
PFNDPACOMPARE
,
LPARAM
,
UINT
);
#define DPAM_NOSORT 0x0001
#define DPAM_INSERT 0x0004
#define DPAM_DELETE 0x0008
typedef
PVOID
(
CALLBACK
*
PFNDPAMERGE
)(
DWORD
,
PVOID
,
PVOID
,
LPARAM
)
;
BOOL
WINAPI
DPA_Merge
(
const
HDPA
,
const
HDPA
,
DWORD
,
PFNDPACOMPARE
,
PFNDPAMERGE
,
LPARAM
)
;
struct
_DPA
;
typedef
struct
_DPA
*
HDPA
;
typedef
INT
(
CALLBACK
*
DPAENUMPROC
)(
LPVOID
,
DWORD
);
VOID
WINAPI
DPA_EnumCallback
(
const
HDPA
,
DPAENUMPROC
,
LPARAM
);
BOOL
WINAPI
DPA_DestroyCallback
(
const
HDPA
,
DPAENUMPROC
,
LPARAM
);
#define DPA_GetPtrCount(hdpa) (*(INT*)(hdpa))
#define DPA_GetPtrPtr(hdpa) (*((LPVOID**)((BYTE*)(hdpa)+sizeof(INT))))
#define DPA_FastGetPtr(hdpa,i) (DPA_GetPtrPtr(hdpa)[i])
/* notification helper functions */
typedef
INT
(
CALLBACK
*
PFNDPAENUMCALLBACK
)(
LPVOID
,
LPVOID
);
typedef
INT
(
CALLBACK
*
PFNDPACOMPARE
)(
LPVOID
,
LPVOID
,
LPARAM
);
LRESULT
WINAPI
COMCTL32_SendNotify
(
HWND
,
HWND
,
UINT
,
LPNMHDR
);
HDPA
WINAPI
DPA_Create
(
INT
);
BOOL
WINAPI
DPA_Destroy
(
HDPA
);
LPVOID
WINAPI
DPA_DeletePtr
(
HDPA
,
INT
);
BOOL
WINAPI
DPA_DeleteAllPtrs
(
HDPA
);
BOOL
WINAPI
DPA_SetPtr
(
HDPA
,
INT
,
LPVOID
);
LPVOID
WINAPI
DPA_GetPtr
(
HDPA
,
INT
);
INT
WINAPI
DPA_InsertPtr
(
HDPA
,
INT
,
LPVOID
);
BOOL
WINAPI
DPA_Sort
(
HDPA
,
PFNDPACOMPARE
,
LPARAM
);
void
WINAPI
DPA_EnumCallback
(
HDPA
,
PFNDPAENUMCALLBACK
,
LPVOID
);
void
WINAPI
DPA_DestroyCallback
(
HDPA
,
PFNDPAENUMCALLBACK
,
LPVOID
);
INT
WINAPI
DPA_Search
(
HDPA
,
LPVOID
,
INT
,
PFNDPACOMPARE
,
LPARAM
,
UINT
);
/* type and functionality of last parameter is still unknown */
LRESULT
WINAPI
COMCTL32_SendNotifyEx
(
HWND
,
HWND
,
UINT
,
LPNMHDR
,
DWORD
);
BOOL
WINAPI
Str_SetPtrW
(
LPWSTR
*
,
LPCWSTR
);
#ifdef __cplusplus
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment