[SHELL32]

- Fix some ITEMIDLIST types
CORE-8441

svn path=/trunk/; revision=69620
This commit is contained in:
Thomas Faber 2015-10-19 15:17:29 +00:00
parent ae23c43fe8
commit da8f249696
9 changed files with 19 additions and 19 deletions

View file

@ -92,7 +92,7 @@ class CDefView :
BOOL m_menusLoaded;
UINT m_uState;
UINT m_cidl;
PCUITEMID_CHILD_ARRAY m_apidl;
PCUITEMID_CHILD *m_apidl;
PIDLIST_ABSOLUTE m_pidlParent;
LISTVIEW_SORT_INFO m_sortInfo;
ULONG m_hNotify; /* change notification handle */
@ -1227,7 +1227,7 @@ UINT CDefView::GetSelections()
SHFree(m_apidl);
m_cidl = m_ListView.GetSelectedCount();
m_apidl = reinterpret_cast<PCUITEMID_CHILD_ARRAY>(SHAlloc(m_cidl * sizeof(PCUITEMID_CHILD)));
m_apidl = static_cast<PCUITEMID_CHILD*>(SHAlloc(m_cidl * sizeof(PCUITEMID_CHILD)));
if (!m_apidl)
{
m_cidl = 0;

View file

@ -1746,10 +1746,10 @@ SHCreateDefaultContextMenu(
HRESULT
WINAPI
CDefFolderMenu_Create2(
LPCITEMIDLIST pidlFolder,
PCIDLIST_ABSOLUTE pidlFolder,
HWND hwnd,
UINT cidl,
LPCITEMIDLIST *apidl,
PCUITEMID_CHILD_ARRAY apidl,
IShellFolder *psf,
LPFNDFMCALLBACK lpfn,
UINT nKeys,

View file

@ -147,7 +147,7 @@ class CIDLDataObj :
{
private:
LPITEMIDLIST pidl;
LPITEMIDLIST * apidl;
PIDLIST_RELATIVE *apidl;
UINT cidl;
DWORD dropeffect;
@ -160,7 +160,7 @@ private:
public:
CIDLDataObj();
~CIDLDataObj();
HRESULT WINAPI Initialize(HWND hwndOwner, LPCITEMIDLIST pMyPidl, LPCITEMIDLIST * apidlx, UINT cidlx);
HRESULT WINAPI Initialize(HWND hwndOwner, PCIDLIST_ABSOLUTE pMyPidl, PCUIDLIST_RELATIVE_ARRAY apidlx, UINT cidlx);
///////////
virtual HRESULT WINAPI GetData(LPFORMATETC pformatetcIn, STGMEDIUM *pmedium);
@ -204,7 +204,7 @@ CIDLDataObj::~CIDLDataObj()
ILFree(pidl);
}
HRESULT WINAPI CIDLDataObj::Initialize(HWND hwndOwner, LPCITEMIDLIST pMyPidl, LPCITEMIDLIST * apidlx, UINT cidlx)
HRESULT WINAPI CIDLDataObj::Initialize(HWND hwndOwner, PCIDLIST_ABSOLUTE pMyPidl, PCUIDLIST_RELATIVE_ARRAY apidlx, UINT cidlx)
{
pidl = ILClone(pMyPidl);
apidl = _ILCopyaPidl(apidlx, cidlx);
@ -408,7 +408,7 @@ HRESULT WINAPI CIDLDataObj::EndOperation(HRESULT hResult, IBindCtx *pbcReserved,
/**************************************************************************
* IDataObject_Constructor
*/
HRESULT IDataObject_Constructor(HWND hwndOwner, LPCITEMIDLIST pMyPidl, LPCITEMIDLIST * apidl, UINT cidl, IDataObject **dataObject)
HRESULT IDataObject_Constructor(HWND hwndOwner, PCIDLIST_ABSOLUTE pMyPidl, PCUIDLIST_RELATIVE_ARRAY apidl, UINT cidl, IDataObject **dataObject)
{
return ShellObjectCreatorInit<CIDLDataObj>(hwndOwner, pMyPidl, apidl, cidl, IID_IDataObject, dataObject);
}
@ -418,7 +418,7 @@ HRESULT IDataObject_Constructor(HWND hwndOwner, LPCITEMIDLIST pMyPidl, LPCITEMID
*
*/
HRESULT WINAPI SHCreateDataObject(LPCITEMIDLIST pidlFolder, UINT cidl, LPCITEMIDLIST* apidl, IDataObject *pdtInner, REFIID riid, void **ppv)
HRESULT WINAPI SHCreateDataObject(PCIDLIST_ABSOLUTE pidlFolder, UINT cidl, PCUITEMID_CHILD_ARRAY apidl, IDataObject *pdtInner, REFIID riid, void **ppv)
{
if (IsEqualIID(riid, IID_IDataObject))
{

View file

@ -673,7 +673,7 @@ CCPLItemMenu::CCPLItemMenu()
HRESULT WINAPI CCPLItemMenu::Initialize(UINT cidl, PCUITEMID_CHILD_ARRAY apidl)
{
m_cidl = cidl;
m_apidl = const_cast<PCUITEMID_CHILD_ARRAY>(_ILCopyaPidl(apidl, m_cidl));
m_apidl = _ILCopyaPidl(apidl, m_cidl);
if (m_cidl && !m_apidl)
return E_OUTOFMEMORY;
@ -682,7 +682,7 @@ HRESULT WINAPI CCPLItemMenu::Initialize(UINT cidl, PCUITEMID_CHILD_ARRAY apidl)
CCPLItemMenu::~CCPLItemMenu()
{
_ILFreeaPidl(const_cast<PITEMID_CHILD *>(m_apidl), m_cidl);
_ILFreeaPidl(m_apidl, m_cidl);
}
HRESULT WINAPI CCPLItemMenu::QueryContextMenu(

View file

@ -89,7 +89,7 @@ class CCPLItemMenu:
public IContextMenu2
{
private:
LPCITEMIDLIST *m_apidl;
PITEMID_CHILD *m_apidl;
UINT m_cidl;
public:

View file

@ -2597,15 +2597,15 @@ void _ILFreeaPidl(LPITEMIDLIST * apidl, UINT cidl)
*
* copies an aPidl struct
*/
LPITEMIDLIST* _ILCopyaPidl(const LPCITEMIDLIST * apidlsrc, UINT cidl)
PITEMID_CHILD* _ILCopyaPidl(PCUITEMID_CHILD_ARRAY apidlsrc, UINT cidl)
{
UINT i;
LPITEMIDLIST *apidldest;
PITEMID_CHILD *apidldest;
if (!apidlsrc)
return NULL;
apidldest = SHAlloc(cidl * sizeof(LPITEMIDLIST));
apidldest = SHAlloc(cidl * sizeof(PITEMID_CHILD));
for (i = 0; i < cidl; i++)
apidldest[i] = ILClone(apidlsrc[i]);

View file

@ -306,7 +306,7 @@ BOOL pcheck (LPCITEMIDLIST pidl) DECLSPEC_HIDDEN;
* aPidl helper
*/
void _ILFreeaPidl(LPITEMIDLIST * apidl, UINT cidl) DECLSPEC_HIDDEN;
LPITEMIDLIST * _ILCopyaPidl(const LPCITEMIDLIST * apidlsrc, UINT cidl) DECLSPEC_HIDDEN;
PITEMID_CHILD* _ILCopyaPidl(PCUITEMID_CHILD_ARRAY apidlsrc, UINT cidl) DECLSPEC_HIDDEN;
LPITEMIDLIST * _ILCopyCidaToaPidl(LPITEMIDLIST* pidl, const CIDA * cida) DECLSPEC_HIDDEN;
BOOL ILGetDisplayNameExW(LPSHELLFOLDER psf, LPCITEMIDLIST pidl, LPWSTR path, DWORD type) DECLSPEC_HIDDEN;

View file

@ -61,7 +61,7 @@ DWORD WINAPI ParseFieldW(LPCWSTR src, DWORD nField, LPWSTR dst, DWORD len) DECLS
/****************************************************************************
* Class constructors
*/
HRESULT IDataObject_Constructor(HWND hwndOwner, LPCITEMIDLIST pMyPidl, LPCITEMIDLIST * apidl, UINT cidl, IDataObject **dataObject);
HRESULT IDataObject_Constructor(HWND hwndOwner, LPCITEMIDLIST pMyPidl, PCUITEMID_CHILD_ARRAY apidl, UINT cidl, IDataObject **dataObject);
HRESULT IEnumFORMATETC_Constructor(UINT cfmt, const FORMATETC afmt[], IEnumFORMATETC **enumerator);
LPCLASSFACTORY IClassFactory_Constructor(REFCLSID);

View file

@ -1837,9 +1837,9 @@ void WINAPI SHDestroyPropSheetExtArray(HPSXA hpsxa)
* Create IDataObject from PIDLs??
*/
HRESULT WINAPI CIDLData_CreateFromIDArray(
LPCITEMIDLIST pidlFolder,
PCIDLIST_ABSOLUTE pidlFolder,
UINT cpidlFiles,
LPCITEMIDLIST *lppidlFiles,
PCUIDLIST_RELATIVE_ARRAY lppidlFiles,
LPDATAOBJECT *ppdataObject)
{
UINT i;