mirror of
https://github.com/reactos/reactos.git
synced 2024-09-30 22:47:28 +00:00
[SHELL32_NEW]
- Merge 51729
Implement SHGetImageList
9db87f13d3
Fixes explorer++ main window
svn path=/branches/shell32_new-bringup/; revision=51940
This commit is contained in:
parent
f90c74df0d
commit
175a443bf4
|
@ -50,6 +50,7 @@
|
|||
#include "shlwapi.h"
|
||||
#include "commdlg.h"
|
||||
#include "recyclebin.h"
|
||||
#include "commoncontrols.h"
|
||||
|
||||
WINE_DEFAULT_DEBUG_CHANNEL(shell);
|
||||
WINE_DECLARE_DEBUG_CHANNEL(pidl);
|
||||
|
@ -2254,10 +2255,40 @@ EXTERN_C void WINAPI SHFlushSFCache(void)
|
|||
{
|
||||
}
|
||||
|
||||
/*************************************************************************
|
||||
* SHGetImageList (SHELL32.727)
|
||||
*
|
||||
* Returns a copy of a shell image list.
|
||||
*
|
||||
* NOTES
|
||||
* Windows XP features 4 sizes of image list, and Vista 5. Wine currently
|
||||
* only supports the traditional small and large image lists, so requests
|
||||
* for the others will currently fail.
|
||||
*/
|
||||
EXTERN_C HRESULT WINAPI SHGetImageList(int iImageList, REFIID riid, void **ppv)
|
||||
{
|
||||
FIXME("STUB: %i %s\n",iImageList,debugstr_guid(&riid));
|
||||
return E_NOINTERFACE;
|
||||
HIMAGELIST hLarge, hSmall;
|
||||
HIMAGELIST hNew;
|
||||
HRESULT ret = E_FAIL;
|
||||
|
||||
/* Wine currently only maintains large and small image lists */
|
||||
if ((iImageList != SHIL_LARGE) && (iImageList != SHIL_SMALL) && (iImageList != SHIL_SYSSMALL))
|
||||
{
|
||||
FIXME("Unsupported image list %i requested\n", iImageList);
|
||||
return E_FAIL;
|
||||
}
|
||||
|
||||
Shell_GetImageLists(&hLarge, &hSmall);
|
||||
hNew = ImageList_Duplicate(iImageList == SHIL_LARGE ? hLarge : hSmall);
|
||||
|
||||
/* Get the interface for the new image list */
|
||||
if (hNew)
|
||||
{
|
||||
ret = HIMAGELIST_QueryInterface(hNew, riid, ppv);
|
||||
ImageList_Destroy(hNew);
|
||||
}
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
/*************************************************************************
|
||||
|
|
Loading…
Reference in a new issue