51#define SHV_CHANGE_NOTIFY WM_USER + 0x1111
55#define CONTEXT_MENU_BASE_ID 1
98 public CWindowImpl<CDefView, CWindow, CControlWinTraits>,
102 public IShellFolderView,
301 DVTARGETDEVICE *ptd,
HDC hicTargetDev,
LOGPALETTE **ppColorSet)
override;
407#define IDM_VIEW_FILES (FCIDM_SHVIEWFIRST + 0x500)
408#define IDM_VIEW_IDW (FCIDM_SHVIEWFIRST + 0x501)
409#define IDM_MYFILEITEM (FCIDM_SHVIEWFIRST + 0x502)
414#define GET_WM_COMMAND_ID(wp, lp) LOWORD(wp)
415#define GET_WM_COMMAND_HWND(wp, lp) (HWND)(lp)
416#define GET_WM_COMMAND_CMD(wp, lp) HIWORD(wp)
455 TRACE(
" destroying IShellView(%p)\n",
this);
489 TRACE(
"ICommDlgBrowser::IncludeObject pidl=%p\n", pidl);
503 TRACE(
"ICommDlgBrowser::OnDefaultCommand\n");
517 TRACE(
"ICommDlgBrowser::OnStateChange flags=%x\n",
uFlags);
576 DWORD uTotalFileSize = 0;
580 bool bIsOnlyFoldersSelected =
true;
596 bIsOnlyFoldersSelected =
false;
602 if ((cSelectedItems && !bIsOnlyFoldersSelected) || uTotalFileSize)
632 DWORD dwStyle, dwExStyle, ListExStyle;
705 ListExStyle |= LVS_EX_HEADERINALLVIEWS;
709 dwExStyle &= ~WS_EX_CLIENTEDGE;
711 RECT rcListView = {0,0,0,0};
733 DWORD cbDropShadow =
sizeof(bDropShadow);
743 L"ListviewShadow",
NULL, &bDropShadow, &cbDropShadow);
798 for (
int i = 0; 1;
i++)
812 FIXME(
"no m_pSF2Parent\n");
907 for (
int i = 0;
i<cItems;
i++)
920 TRACE(
"(%p)(pidl=%p)\n",
this, pidl);
942 TRACE(
"(%p)(pidl=%p)\n",
this, pidl);
958 TRACE(
"(%p)(pidlold=%p pidlnew=%p)\n",
this, pidlOld, pidlNew);
967 lvItem.
iItem = nItem;
975 lvItem.
iItem = nItem;
997 TRACE(
"(%p)(pidl=%p)\n",
this, pidl);
1006 lvItem.
iItem = nItem;
1041 DWORD dFlags = SHCONTF_NONFOLDERS | SHCONTF_FOLDERS;
1042 DWORD dwValue, cbValue;
1044 TRACE(
"%p\n",
this);
1048 cbValue =
sizeof(dwValue);
1050 L"Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced",
1051 L"Hidden",
NULL, &dwValue, &cbValue);
1054 dFlags |= SHCONTF_INCLUDEHIDDEN;
1059 cbValue =
sizeof(dwValue);
1061 L"Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced",
1062 L"ShowSuperHidden",
NULL, &dwValue, &cbValue);
1065 dFlags |= SHCONTF_INCLUDESUPERHIDDEN;
1084 while((
S_OK == pEnumIDList->Next(1, &pidl, &dwFetched)) && dwFetched)
1104 FIXME(
"no m_pSF2Parent\n");
1258 TRACE(
"%p\n",
this);
1263 ERR(
"Error Registering DragDrop\n");
1499 TRACE(
"-- selected Item found\n");
1507 CMINVOKECOMMANDINFOEX cmi;
1510 cmi.cbSize =
sizeof(cmi);
1512 cmi.lpVerb = lpVerb;
1515 cmi.fMask |= CMIC_MASK_SHIFT_DOWN;
1518 cmi.fMask |= CMIC_MASK_CONTROL_DOWN;
1522 cmi.fMask |= CMIC_MASK_PTINVOKE;
1526 HRESULT hr = pCM->InvokeCommand((LPCMINVOKECOMMANDINFO)&cmi);
1548 if (hResult ==
S_OK)
1566 if (uCommand == (
UINT)-1)
1568 ERR(
"GetMenuDefaultItem returned -1\n");
1583 TRACE(
"(%p)\n",
this);
1587 ERR(
"HACK: Aborting context menu in nested call\n");
1609 SelectItem(hittest.iItem, SVSI_SELECT | SVSI_DESELECTOTHERS | SVSI_ENSUREVISIBLE);
1699 SFGAOF rfg = SFGAO_BROWSABLE | SFGAO_CANCOPY | SFGAO_CANLINK | SFGAO_CANMOVE | SFGAO_CANDELETE | SFGAO_CANRENAME | SFGAO_HASPROPSHEET | SFGAO_FILESYSTEM | SFGAO_FOLDER;
1725 WORD wWidth, wHeight;
1730 TRACE(
"%p width=%u height=%u\n",
this, wWidth, wHeight);
1750 TRACE(
"%p\n",
this);
1761 TRACE(
"%p uState=%x\n",
this, uState);
1798 SFGAOF rfg = SFGAO_CANCOPY | SFGAO_CANMOVE | SFGAO_FILESYSTEM;
1803 if (!bCopy && !(rfg & SFGAO_CANMOVE))
1805 if (bCopy && !(rfg & SFGAO_CANCOPY))
1824 TRACE(
"%p\n",
this);
1844 TRACE(
"(%p) stub\n",
this);
1865 TRACE(
"(%p)->(0x%08x 0x%08x %p) stub\n",
this, dwCmdID, dwCmd, hwndCmd);
1918 for (
int i=0;
i < nCount;
i++)
1962 L"SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer",
1967 cbValue =
sizeof(dwValue);
1988 TRACE(
"%p CtlID=%u lpnmh->code=%x\n",
this, CtlID, lpnmh->
code);
1990 switch (lpnmh->
code)
1993 TRACE(
"-- NM_SETFOCUS %p\n",
this);
1997 TRACE(
"-- NM_KILLFOCUS %p\n",
this);
2003 TRACE(
"-- NM_CUSTOMDRAW %p\n",
this);
2006 TRACE(
"-- NM_RELEASEDCAPTURE %p\n",
this);
2009 TRACE(
"-- NM_CLICK %p\n",
this);
2012 TRACE(
"-- NM_RCLICK %p\n",
this);
2015 TRACE(
"-- NM_DBLCLK %p\n",
this);
2019 TRACE(
"-- NM_RETURN %p\n",
this);
2023 TRACE(
"-- HDN_ENDTRACKW %p\n",
this);
2028 TRACE(
"-- LVN_DELETEITEM %p\n",
this);
2033 TRACE(
"-- LVN_DELETEALLITEMS %p\n",
this);
2036 TRACE(
"-- LVN_INSERTITEM (STUB)%p\n",
this);
2039 TRACE(
"-- LVN_ITEMACTIVATE %p\n",
this);
2052 TRACE(
"-- LVN_GETDISPINFO %p\n",
this);
2078 FIXME(
"no m_pSF2Parent\n");
2087 ULONG attributes = SFGAO_HIDDEN;
2090 if (attributes & SFGAO_HIDDEN)
2097 TRACE(
"-- LVN_ITEMCHANGED %p\n",
this);
2104 TRACE(
"-- LVN_BEGINDRAG\n");
2116 dwEffect |=
dwAttributes & (SFGAO_CANCOPY | SFGAO_CANLINK);
2120 piaso->SetAsyncMode(
TRUE);
2144 DWORD dwAttr = SFGAO_CANRENAME;
2147 TRACE(
"-- LVN_BEGINLABELEDITW %p\n",
this);
2150 if (SFGAO_CANRENAME & dwAttr)
2156 if (!(dwAttr & SFGAO_FOLDER) && (dwAttr & SFGAO_FILESYSTEM) &&
2181 TRACE(
"-- LVN_ENDLABELEDITW %p\n",
this);
2209 TRACE(
"-- %p WM_COMMAND %x unhandled\n",
this, lpnmh->
code);
2222 if (!pidl1 || !pidl2)
2276 ERR(
"hLock == NULL\n");
2283 TRACE(
"(%p)(%p,%p,0x%08x)\n",
this, Pidls[0], Pidls[1],
lParam);
2285 lEvent &= ~SHCNE_INTERRUPT;
2305 if (bParent0 && bParent1)
2333 ERR(
"no context menu\n");
2423 TRACE(
"(%p)\n",
this);
2432 FIXME(
"(%p) stub\n",
this);
2456 FIXME(
"(%p)\n",
this);
2462 TRACE(
"(%p)->(state=%x)\n",
this, uState);
2485 TRACE(
"(%p)\n",
this);
2503 TRACE(
"(%p)\n",
this);
2551 TRACE(
"(%p)->(%p) vmode=%x flags=%x\n",
this, lpfs,
2563 FIXME(
"(%p) stub\n",
this);
2570 FIXME(
"(%p) stub\n",
this);
2579 TRACE(
"(%p)->(pidl=%p, 0x%08x) stub\n",
this, pidl,
uFlags);
2583 ERR(
"!m_ListView\n");
2599 if (
uFlags & SVSI_SELECT)
2602 lvItem.
state &= ~LVIS_SELECTED;
2604 if (
uFlags & SVSI_FOCUSED)
2607 lvItem.
state &= ~LVIS_FOCUSED;
2611 if (
uFlags & SVSI_DESELECTOTHERS)
2613 lvItem.
state &= ~LVIS_SELECTED;
2615 lvItem.
state &= ~LVIS_FOCUSED;
2622 if (
uFlags & SVSI_ENSUREVISIBLE)
2625 if((
uFlags & SVSI_EDIT) == SVSI_EDIT)
2676 TRACE(
"-- (%p)->(interface=%p)\n",
this, *ppvOut);
2683 TRACE(
"(%p)->(%p), stub\n",
this, pViewMode);
2695 TRACE(
"(%p)->(%u), stub\n",
this, ViewMode);
2721 FIXME(
"ViewMode %d not implemented\n", ViewMode);
2776 TRACE(
"(%p)->(%p)\n",
this, piItem);
2785 TRACE(
"(%p)->(%p)\n",
this, piItem);
2796 ERR(
"!m_ListView\n");
2801 if (lvIndex == -1 || ppt ==
NULL)
2810 TRACE(
"(%p)->(%p)\n",
this, ppt);
2814 ERR(
"!m_ListView\n");
2823 ppt->
x = spacing.
cx;
2824 ppt->
y = spacing.
cy;
2855 if (
dwFlags & SVSI_ENSUREVISIBLE)
2859 if (
dwFlags & SVSI_DESELECTOTHERS)
2871 if ((
dwFlags & SVSI_EDIT) == SVSI_EDIT)
2916 OLEMENUGROUPWIDTHS omw = { { 0, 0, 0, 0, 0, 0 } };
2920 TRACE(
"(%p)->(shlview=%p shlbrs=%p rec=%p hwnd=%p vmode=%x flags=%x)\n",
this, psvPrevious, psb, prcView,
hwnd,
mode,
flags);
2921 if (prcView !=
NULL)
2922 TRACE(
"-- left=%i top=%i right=%i bottom=%i\n", prcView->
left, prcView->
top, prcView->
right, prcView->
bottom);
2929 FIXME(
"unsupported view flags 0x%08x\n", view_flags);
2940 else if (
IsEqualIID(*view_id, VID_SmallIcons))
2946 else if (
IsEqualIID(*view_id, VID_Thumbnails))
2950 else if (
IsEqualIID(*view_id, VID_ThumbStrip))
2963 TRACE(
"-- CommDlgBrowser\n");
2966 RECT rcView = *prcView;
2987 TRACE(
"-- after fnInsertMenusSB\n");
2997 FIXME(
"(%p)->(%p) stub\n",
this, new_pidl);
3011 FIXME(
"(%p)->(%ld) stub\n",
this,
sort);
3036 TRACE(
"(%p)->(%p %p)\n",
this, pidl,
item);
3039 ERR(
"!m_ListView\n");
3048 TRACE(
"(%p)->(%p %d)\n",
this, pidl,
item);
3054 TRACE(
"(%p)->(%p %p)\n",
this, pidl,
item);
3058 ERR(
"!m_ListView\n");
3091 FIXME(
"(%p)->(%p %p %p) stub\n",
this, pidl_old, pidl_new,
item);
3097 FIXME(
"(%p)->(%p %p) stub\n",
this, pidl,
item);
3158 FIXME(
"(%p)->(%p) stub\n",
this,
pt);
3170 FIXME(
"(%p)->(%p %p) stub\n",
this, pidl,
pt);
3176 FIXME(
"(%p)->(%p) stub\n",
this, drop_target);
3182 FIXME(
"(%p)->(%d) stub\n",
this, move);
3188 FIXME(
"(%p)->(%p) stub\n",
this,
obj);
3194 FIXME(
"(%p)->(%p) stub\n",
this, spacing);
3215 TRACE(
"(%p)->(%p)\n",
this, support);
3221 FIXME(
"(%p)->(%p) stub\n",
this, disp);
3227 FIXME(
"(%p)->(%p(%s) 0x%08x %p %p\n",
3228 this, pguidCmdGroup,
debugstr_guid(pguidCmdGroup), cCmds, prgCmds, pCmdText);
3233 for (
UINT i = 0;
i < cCmds;
i++)
3235 FIXME(
"\tprgCmds[%d].cmdID = %d\n",
i, prgCmds[
i].cmdID);
3236 prgCmds[
i].
cmdf = 0;
3239 return OLECMDERR_E_UNKNOWNGROUP;
3248 FIXME(
"(%p)->(\n\tTarget GUID:%s Command:0x%08x Opt:0x%08x %p %p)\n",
3249 this,
debugstr_guid(pguidCmdGroup), nCmdID, nCmdexecopt, pvaIn, pvaOut);
3252 return OLECMDERR_E_UNKNOWNGROUP;
3259 return OLECMDERR_E_NOTSUPPORTED;
3279 V_I4(pvaOut) = 0x403;
3283 if (
IsEqualIID(*pguidCmdGroup, CGID_Explorer) &&
3285 (nCmdexecopt == 4) && pvaOut)
3288 if (
IsEqualIID(*pguidCmdGroup, CGID_ShellDocView) &&
3293 return OLECMDERR_E_UNKNOWNGROUP;
3307#define SCROLLAREAWIDTH 20
3486 for (
i = 0;
i < nCount; ++
i)
3499 for (
i = nCount - 1;
i >= 0; --
i)
3511 for (
i = 0;
i < nCount; ++
i)
3528 for (
i = nCount - 1;
i >= 0; --
i)
3547 int nPartArray[] = {-1};
3552 int nFileSizePartLength = 125;
3553 const int nLocationPartLength = 150;
3554 const int nRightPartsLength = nFileSizePartLength + nLocationPartLength;
3555 int nObjectsPartLength = nWidth - nRightPartsLength;
3559 if (nObjectsPartLength <= nLocationPartLength)
3560 nObjectsPartLength = nFileSizePartLength = nWidth / 3;
3562 int nPartArray[] = {nObjectsPartLength, nObjectsPartLength + nFileSizePartLength, -1};
3587 INT i1 =
pmap->Lookup(lParam1), i2 =
pmap->Lookup(lParam2);
3603 for (
INT i = 0;
i < nCount; ++
i)
3612 INT iFrom = iItem, iTo = iPosition;
3615 if (iFrom >= nCount)
3623 for (
INT i = iFrom;
i < iTo; ++
i)
3633 for (
INT i = iFrom;
i > iTo; --
i)
3645 for (
INT i = 0;
i < nCount; ++
i)
3709 TRACE(
"(%p)\n",
this);
3721 TRACE(
"(%p)\n",
this);
3728 FIXME(
"Stub: this=%p\n",
this);
3734 FIXME(
"Stub: this=%p\n",
this);
3740 FIXME(
"Stub: this=%p\n",
this);
3746 FIXME(
"Stub: this=%p\n",
this);
3752 FIXME(
"partial stub: %p 0x%08x 0x%08x %p\n",
this, aspects, advf, pAdvSink);
3764 TRACE(
"this=%p pAspects=%p pAdvf=%p ppAdvSink=%p\n",
this, pAspects, pAdvf, ppAdvSink);
3832 return ShellObjectCreatorInit<CDefView>(pFolder,
riid, ppvOut);
3842 TRACE(
"sf=%p pidl=%p cb=%p mode=0x%08x parm=%p\n",
3866 if (!pcsfv || pcsfv->
cbSize !=
sizeof(*pcsfv))
3869 TRACE(
"sf=%p outer=%p callback=%p\n",
BOOL _ILIsDesktop(LPCITEMIDLIST pidl)
HRESULT WINAPI CDefViewDual_Constructor(REFIID riid, LPVOID *ppvOut)
#define GET_WM_COMMAND_HWND(wp, lp)
HMENU GetSubmenuByID(HMENU hmenu, UINT id)
CSimpleMap< LPARAM, INT > CLParamIndexMap
struct LISTVIEW_SORT_INFO * LPLISTVIEW_SORT_INFO
static BOOL ILIsParentOrSpecialParent(PCIDLIST_ABSOLUTE pidl1, PCIDLIST_ABSOLUTE pidl2)
void(CALLBACK * PFNSHGETSETTINGSPROC)(LPSHELLFLAGSTATE lpsfs, DWORD dwMask)
#define SHV_CHANGE_NOTIFY
#define GET_WM_COMMAND_ID(wp, lp)
#define CONTEXT_MENU_BASE_ID
HRESULT SHSetMenuIdInMenuMsg(UINT uMsg, LPARAM lParam, UINT CmdId)
HRESULT CDefView_CreateInstance(IShellFolder *pFolder, REFIID riid, LPVOID *ppvOut)
#define GET_WM_COMMAND_CMD(wp, lp)
UINT ReallyGetMenuItemID(HMENU hmenu, int i)
static INT CALLBACK SelectionMoveCompareFunc(LPARAM lParam1, LPARAM lParam2, LPARAM lParamSort)
HRESULT WINAPI SHCreateShellFolderView(const SFV_CREATE *pcsfv, IShellView **ppsv)
static VOID DrawTileBitmap(HDC hDC, LPCRECT prc, HBITMAP hbm, INT nWidth, INT nHeight, INT dx, INT dy)
static void ClientToListView(HWND hwndLV, POINT *ppt)
DWORD WINAPI SHMenuIndexFromID(HMENU hMenu, UINT uID)
static BOOL SelectExtOnRename(void)
HRESULT WINAPI SHCreateShellFolderViewEx(LPCSFV psvcbi, IShellView **ppsv)
HRESULT SHGetMenuIdFromMenuMsg(UINT uMsg, LPARAM lParam, UINT *CmdId)
#define SFVM_GET_CUSTOMVIEWINFO
#define SFVM_ADDINGOBJECT
#define SFVM_LISTREFRESHED
#define SFVM_WINDOWCLOSING
#define SFVM_SELECTIONCHANGED
#define shell32_hInstance
_STLP_MOVE_TO_STD_NAMESPACE void sort(_RandomAccessIter __first, _RandomAccessIter __last)
#define WINE_DEFAULT_DEBUG_CHANNEL(t)
void shell(int argc, const char *argv[])
#define STDMETHODCALLTYPE
#define RegCloseKey(hKey)
EXTERN_C HANDLE WINAPI SHChangeNotification_Lock(HANDLE hTicket, DWORD dwOwnerPID, LPITEMIDLIST **lppidls, LPLONG lpwEventId)
EXTERN_C ULONG WINAPI SHChangeNotifyRegister(HWND hwnd, INT fSources, LONG wEventMask, UINT uMsg, INT cItems, SHChangeNotifyEntry *lpItems)
EXTERN_C BOOL WINAPI SHChangeNotification_Unlock(HANDLE hLock)
EXTERN_C BOOL WINAPI SHChangeNotifyDeregister(ULONG hNotify)
static LRESULT CALLBACK StartWindowProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
CWindow GetParent() const
STDMETHOD() Drop(IDataObject *pDataObj, DWORD grfKeyState, POINTL pt, DWORD *pdwEffect) override
STDMETHOD() Unfreeze(DWORD dwFreeze) override
LRESULT OnShowWindow(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL &bHandled)
CComPtr< IShellFolder > m_pSFParent
LRESULT OnKillFocus(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL &bHandled)
STDMETHOD() GetAutoArrange() override
LRESULT OnSetFocus(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL &bHandled)
STDMETHOD() SelectAndPositionItem(LPCITEMIDLIST item, UINT flags, POINT *point) override
HRESULT OnStateChange(UINT uFlags)
static INT CALLBACK fill_list(LPVOID ptr, LPVOID arg)
STDMETHOD() DestroyViewWindow() override
LRESULT OnSysColorChange(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL &bHandled)
LRESULT OnContextMenu(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL &bHandled)
int LV_AddItem(PCUITEMID_CHILD pidl)
STDMETHOD() SetItemPos(PCUITEMID_CHILD pidl, POINT *pt) override
STDMETHOD() RemoveObject(PITEMID_CHILD pidl, UINT *item) override
HMENU m_hMenuArrangeModes
CComPtr< IDataObject > m_pCurDataObject
STDMETHOD() SetAutomationObject(IDispatch *disp) override
CComPtr< IShellFolderViewDual > m_pShellFolderViewDual
STDMETHOD() DragLeave() override
LRESULT OnNCCreate(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL &bHandled)
STDMETHOD() AutoArrange() override
STDMETHOD() ContextSensitiveHelp(BOOL fEnterMode) override
STDMETHOD() AddPropertySheetPages(DWORD dwReserved, LPFNSVADDPROPSHEETPAGE pfn, LPARAM lparam) override
STDMETHOD() QueryService(REFGUID guidService, REFIID riid, void **ppvObject) override
BOOLEAN LV_DeleteItem(PCUITEMID_CHILD pidl)
STDMETHOD() GetItemObject(UINT uItem, REFIID riid, void **ppv) override
STDMETHOD() GetObjectCount(UINT *count) override
STDMETHOD() SetCallback(IShellFolderViewCB *new_cb, IShellFolderViewCB **old_cb) override
HRESULT drag_notify_subitem(DWORD grfKeyState, POINTL pt, DWORD *pdwEffect)
HRESULT _DoFolderViewCB(UINT uMsg, WPARAM wParam, LPARAM lParam)
STDMETHOD() Items(UINT uFlags, REFIID riid, void **ppv) override
STDMETHOD() CreateViewWindow2(LPSV2CVW2_PARAMS view_params) override
STDMETHOD() SelectItem(PCUITEMID_CHILD pidlItem, SVSIF uFlags) override
LRESULT OnSize(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL &bHandled)
STDMETHOD() GetAdvise(DWORD *pAspects, DWORD *pAdvf, IAdviseSink **ppAdvSink) override
LRESULT OnGetDlgCode(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL &bHandled)
HRESULT IncludeObject(PCUITEMID_CHILD pidl)
STDMETHOD() SaveViewState() override
CComPtr< IContextMenu > m_pCM
CComPtr< IShellBrowser > m_pShellBrowser
void _DoCopyToMoveToFolder(BOOL bCopy)
BOOL m_isParentFolderSpecial
INT _FindInsertableIndexFromPoint(POINT pt)
LRESULT OnPrintClient(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL &bHandled)
LISTVIEW_SORT_INFO m_sortInfo
CComPtr< IDataObject > m_pSourceDataObject
HRESULT CheckViewMode(HMENU hmenuView)
CComPtr< IAdviseSink > m_pAdvSink
void _HandleStatusBarResize(int width)
STDMETHOD() SetCurrentViewMode(UINT ViewMode) override
LRESULT OnInitMenuPopup(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL &bHandled)
LRESULT OnExplorerCommand(UINT uCommand, BOOL bUseSelection)
LRESULT OnSettingChange(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL &bHandled)
STDMETHOD() GetItemPosition(PCUITEMID_CHILD pidl, POINT *ppt) override
STDMETHOD() SetPoints(IDataObject *obj) override
STDMETHOD() IsDropOnSource(IDropTarget *drop_target) override
CComPtr< IDropTarget > m_pCurDropTarget
PIDLIST_ABSOLUTE m_pidlParent
STDMETHOD() GetSelectionMarkedItem(int *piItem) override
STDMETHOD() TranslateAccelerator(MSG *pmsg) override
STDMETHOD() QueryContinueDrag(BOOL fEscapePressed, DWORD grfKeyState) override
virtual WNDPROC GetWindowProc()
BOOLEAN LV_ProdItem(PCUITEMID_CHILD pidl)
STDMETHOD() Draw(DWORD dwDrawAspect, LONG lindex, void *pvAspect, DVTARGETDEVICE *ptd, HDC hdcTargetDev, HDC hdcDraw, LPCRECTL lprcBounds, LPCRECTL lprcWBounds, BOOL(STDMETHODCALLTYPE *pfnContinue)(ULONG_PTR dwContinue), ULONG_PTR dwContinue) override
LRESULT OnCustomItem(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL &bHandled)
CComPtr< IShellFolderViewCB > m_pShellFolderViewCB
STDMETHOD() GiveFeedback(DWORD dwEffect) override
STDMETHOD() ArrangeGrid() override
STDMETHOD() SetRedraw(BOOL redraw) override
HRESULT OpenSelectedItems()
void _ForceStatusBarResize()
CComPtr< IContextMenu > m_pFileMenu
HRESULT WINAPI Initialize(IShellFolder *shellFolder)
PCUITEMID_CHILD * m_apidl
LRESULT OnActivate(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL &bHandled)
STDMETHOD() GetSelectedObjects(PCUITEMID_CHILD **pidl, UINT *items) override
STDMETHOD() QuerySupport(UINT *support) override
LRESULT OnEraseBackground(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL &bHandled)
void _MoveSelectionOnAutoArrange(POINT pt)
static INT CALLBACK ListViewCompareItems(LPARAM lParam1, LPARAM lParam2, LPARAM lpData)
STDMETHOD() GetDefaultSpacing(POINT *ppt) override
HRESULT FillArrangeAsMenu(HMENU hmenuArrange)
STDMETHOD() UpdateObject(PITEMID_CHILD pidl_old, PITEMID_CHILD pidl_new, UINT *item) override
STDMETHOD() GetItemSpacing(ITEMSPACING *spacing) override
static ATL::CWndClassInfo & GetWndClassInfo()
CComPtr< IShellFolder2 > m_pSF2Parent
LRESULT OnCommand(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL &bHandled)
STDMETHOD() AddObject(PITEMID_CHILD pidl, UINT *item) override
STDMETHOD() GetDropPoint(POINT *pt) override
STDMETHOD() GetSelectedCount(UINT *count) override
STDMETHOD() GetFocusedItem(int *piItem) override
STDMETHOD() GetSpacing(POINT *ppt) override
LRESULT OnDestroy(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL &bHandled)
STDMETHOD() CreateViewWindow(IShellView *psvPrevious, LPCFOLDERSETTINGS pfs, IShellBrowser *psb, RECT *prcView, HWND *phWnd) override
STDMETHOD() GetDragPoint(POINT *pt) override
BOOL m_bmenuBarInitialized
PCUITEMID_CHILD _PidlByItem(int i)
STDMETHOD() GetFolder(REFIID riid, void **ppv) override
STDMETHOD() Exec(const GUID *pguidCmdGroup, DWORD nCmdID, DWORD nCmdexecopt, VARIANT *pvaIn, VARIANT *pvaOut) override
STDMETHOD() DragOver(DWORD grfKeyState, POINTL pt, DWORD *pdwEffect) override
STDMETHOD() Rearrange(LPARAM sort) override
HRESULT InvokeContextMenuCommand(CComPtr< IContextMenu > &pCM, LPCSTR lpVerb, POINT *pt=NULL)
STDMETHOD() GetView(SHELLVIEWID *view_guid, ULONG view_type) override
STDMETHOD() QueryStatus(const GUID *pguidCmdGroup, ULONG cCmds, OLECMD prgCmds[], OLECMDTEXT *pCmdText) override
STDMETHOD() HandleRename(LPCITEMIDLIST new_pidl) override
BOOLEAN LV_RenameItem(PCUITEMID_CHILD pidlOld, PCUITEMID_CHILD pidlNew)
STDMETHOD() GetCurrentInfo(LPFOLDERSETTINGS pfs) override
CComPtr< ICommDlgBrowser > m_pCommDlgBrowser
STDMETHOD() GetCurrentViewMode(UINT *pViewMode) override
STDMETHOD() RefreshObject(PITEMID_CHILD pidl, UINT *item) override
STDMETHOD() IsBkDropTarget(IDropTarget *drop_target) override
STDMETHOD() Refresh() override
STDMETHOD() SelectAndPositionItems(UINT cidl, PCUITEMID_CHILD_ARRAY apidl, POINT *apt, DWORD dwFlags) override
HRESULT OnDefaultCommand()
STDMETHOD() SetClipboard(BOOL move) override
STDMETHOD() ItemCount(UINT uFlags, int *pcItems) override
virtual VOID OnFinalMessage(HWND) override
LRESULT OnGetShellBrowser(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL &bHandled)
STDMETHOD() MoveIcons(IDataObject *obj) override
STDMETHOD() GetWindow(HWND *lphwnd) override
STDMETHOD() CreateViewWindow3(IShellBrowser *psb, IShellView *psvPrevious, SV3CVW3_FLAGS view_flags, FOLDERFLAGS mask, FOLDERFLAGS flags, FOLDERVIEWMODE mode, const SHELLVIEWID *view_id, const RECT *prcView, HWND *hwnd) override
STDMETHOD() GetArrangeParam(LPARAM *sort) override
LRESULT OnChangeNotify(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL &bHandled)
STDMETHOD() Freeze(DWORD dwDrawAspect, LONG lindex, void *pvAspect, DWORD *pdwFreeze) override
STDMETHOD() GetColorSet(DWORD dwDrawAspect, LONG lindex, void *pvAspect, DVTARGETDEVICE *ptd, HDC hicTargetDev, LOGPALETTE **ppColorSet) override
FOLDERSETTINGS m_FolderSettings
STDMETHOD() DragEnter(IDataObject *pDataObj, DWORD grfKeyState, POINTL pt, DWORD *pdwEffect) override
static LRESULT CALLBACK WindowProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
STDMETHOD() SetObjectCount(UINT count, UINT flags) override
STDMETHOD() GetObject(PITEMID_CHILD *pidl, UINT item) override
LRESULT OnNotify(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL &bHandled)
STDMETHOD() EnableModeless(BOOL fEnable) override
STDMETHOD() SetAdvise(DWORD aspects, DWORD advf, IAdviseSink *pAdvSink) override
LRESULT OnCreate(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL &bHandled)
STDMETHOD() UIActivate(UINT uState) override
int LV_FindItemByPidl(PCUITEMID_CHILD pidl)
STDMETHOD() Item(int iItemIndex, PITEMID_CHILD *ppidl) override
void DoActivate(UINT uState)
STDMETHOD() Select(UINT flags) override
SFVM_CUSTOMVIEWINFO_DATA m_viewinfo_data
int GetNextItem(int i, WORD flags)
UINT GetItemState(int i, UINT mask)
BOOL SetTextBkColor(COLORREF cr)
int InsertItem(const LV_ITEM *pitem)
DWORD SetExtendedListViewStyle(DWORD dw, DWORD dwMask=0)
void SetRedraw(BOOL redraw)
BOOL SortItems(PFNLVCOMPARE pfnCompare, PVOID lParam)
void SetItemState(int i, UINT state, UINT mask)
DWORD_PTR GetItemData(int i)
BOOL SetTextColor(COLORREF cr)
HIMAGELIST SetImageList(HIMAGELIST himl, int iImageList)
int InsertColumn(int iCol, LV_COLUMN *pcol)
BOOL EnsureVisible(int i, BOOL fPartialOK)
BOOL SetItemPosition(int nItem, POINT *pPoint)
BOOL GetItem(LV_ITEM *pitem)
void GetItemSpacing(SIZE &spacing, BOOL bSmallIconView=FALSE)
BOOL SetItem(const LV_ITEM *pitem)
int HitTest(LV_HITTESTINFO *phtInfo)
BOOL GetItemPosition(int nItem, POINT *pPoint)
BOOL SetBkColor(COLORREF cr)
HWND Create(HWND hWndParent, _U_RECT rect, LPCTSTR szWindowName=NULL, DWORD dwStyle=0, DWORD dwExStyle=0, _U_MENUorID MenuOrID=0U, LPVOID lpCreateParam=NULL)
LONG WINAPI RegOpenKeyExW(HKEY hKey, LPCWSTR lpSubKey, DWORD ulOptions, REGSAM samDesired, PHKEY phkResult)
LONG WINAPI RegQueryValueExW(_In_ HKEY hkeyorg, _In_ LPCWSTR name, _In_ LPDWORD reserved, _In_ LPDWORD type, _In_ LPBYTE data, _In_ LPDWORD count)
void WINAPI DPA_DestroyCallback(HDPA hdpa, PFNDPAENUMCALLBACK enumProc, LPVOID lParam)
HDPA WINAPI DPA_Create(INT nGrow)
INT WINAPI DPA_InsertPtr(HDPA hdpa, INT i, LPVOID p)
VOID WINAPI ImageList_EndDrag(void)
BOOL WINAPI ImageList_DragEnter(HWND hwndLock, INT x, INT y)
BOOL WINAPI ImageList_DragMove(INT x, INT y)
BOOL WINAPI ImageList_DragLeave(HWND hwndLock)
BOOL WINAPI ImageList_BeginDrag(HIMAGELIST himlTrack, INT iTrack, INT dxHotspot, INT dyHotspot)
#define FAILED_UNEXPECTEDLY(hr)
HRESULT WINAPI RegisterDragDrop(HWND hwnd, LPDROPTARGET pDropTarget)
HRESULT WINAPI DoDragDrop(IDataObject *pDataObject, IDropSource *pDropSource, DWORD dwOKEffect, DWORD *pdwEffect)
HRESULT WINAPI RevokeDragDrop(HWND hwnd)
BOOL SHELL_FS_HideExtension(LPCWSTR szPath)
void WINAPI SHFree(LPVOID pv)
LPVOID WINAPI SHAlloc(SIZE_T len)
HRESULT WINAPI SHGetFolderLocation(HWND hwndOwner, int nFolder, HANDLE hToken, DWORD dwReserved, LPITEMIDLIST *ppidl)
#define EnableModeless(type)
HRESULT WINAPI IUnknown_QueryService(IUnknown *, REFGUID, REFIID, LPVOID *)
HRESULT WINAPI IUnknown_SetSite(IUnknown *obj, IUnknown *site)
LPWSTR WINAPI PathFindExtensionW(LPCWSTR lpszPath)
DWORD WINAPI SHGetValueW(HKEY hKey, LPCWSTR lpszSubKey, LPCWSTR lpszValue, LPDWORD pwType, LPVOID pvData, LPDWORD pcbData)
LPWSTR WINAPI StrFormatByteSizeW(LONGLONG llBytes, LPWSTR lpszDest, UINT cchMax)
static VOID NTAPI BitBlt(_In_ ULONG Left, _In_ ULONG Top, _In_ ULONG Width, _In_ ULONG Height, _In_reads_bytes_(Delta *Height) PUCHAR Buffer, _In_ ULONG BitsPerPixel, _In_ ULONG Delta)
static IShellFolder IShellItem **static IBindCtx LPITEMIDLIST SFGAOF
GLint GLint GLint GLint GLint x
GLint GLint GLint GLint GLint GLint y
GLuint GLuint GLsizei count
GLint GLint GLsizei width
GLenum const GLfloat * params
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint GLint GLint GLenum GLenum GLenum GLint GLuint GLenum GLenum GLfloat GLenum GLfloat GLenum map
HLOCAL NTAPI LocalAlloc(UINT uFlags, SIZE_T dwBytes)
BOOL WINAPI Shell_GetImageLists(HIMAGELIST *lpBigList, HIMAGELIST *lpSmallList)
int WINAPI SHMapPIDLToSystemImageListIndex(IShellFolder *sh, LPCITEMIDLIST pidl, int *pIndex)
const DWORD DROPEFFECT_NONE
const DWORD DROPEFFECT_MOVE
HRESULT QueryInterface([in] REFIID riid, [out, iid_is(riid)] void **ppvObject)
#define COM_INTERFACE_ENTRY_IID(iid, x)
#define MESSAGE_HANDLER(msg, func)
#define BEGIN_MSG_MAP(theClass)
int WINAPI lstrcmpiW(LPCWSTR lpString1, LPCWSTR lpString2)
#define memcpy(s1, s2, n)
static const CLSID *static CLSID *static const GUID VARIANT VARIANT *static IServiceProvider DWORD *static HMENU
static int int const SCRIPT_CONTROL const SCRIPT_STATE SCRIPT_ITEM ULONG int * pcItems
_In_ HANDLE _In_ DWORD _In_ DWORD _Inout_opt_ LPOVERLAPPED _In_opt_ LPTRANSMIT_FILE_BUFFERS _In_ DWORD dwReserved
const GUID IID_IViewObject
LPITEMIDLIST WINAPI ILClone(LPCITEMIDLIST pidl)
void WINAPI ILFree(LPITEMIDLIST pidl)
LPITEMIDLIST WINAPI ILFindLastID(LPCITEMIDLIST pidl)
BOOL WINAPI ILIsParent(LPCITEMIDLIST pidlParent, LPCITEMIDLIST pidlChild, BOOL bImmediate)
LPITEMIDLIST WINAPI ILCombine(LPCITEMIDLIST pidl1, LPCITEMIDLIST pidl2)
BOOL WINAPI ILRemoveLastID(LPITEMIDLIST pidl)
DWORD _ILGetFileSize(LPCITEMIDLIST pidl, LPSTR pOut, UINT uOutSize)
BOOL _ILIsFolder(LPCITEMIDLIST pidl)
BOOL _ILIsBitBucket(LPCITEMIDLIST pidl)
BOOL WINAPI SHGetPathFromIDListW(LPCITEMIDLIST pidl, LPWSTR pszPath)
BOOL _ILIsNetHood(LPCITEMIDLIST pidl)
BOOL _ILIsControlPanel(LPCITEMIDLIST pidl)
BOOL WINAPI ILIsEqual(LPCITEMIDLIST pidl1, LPCITEMIDLIST pidl2)
BOOL(CALLBACK * LPFNADDPROPSHEETPAGE)(HPROPSHEETPAGE, LPARAM)
#define NM_RELEASEDCAPTURE
#define Header_GetItem(hwndHD, i, phdi)
#define LVS_EX_ONECLICKACTIVATE
#define ListView_GetItemRect(hwnd, i, prc, code)
#define LVS_SHAREIMAGELISTS
#define LVS_NOCOLUMNHEADER
#define LPSTR_TEXTCALLBACKW
#define LVS_EX_SNAPTOGRID
#define Header_SetItem(hwndHD, i, phdi)
#define LVS_SHOWSELALWAYS
#define LVN_DELETEALLITEMS
#define LVM_SETCALLBACKMASK
#define LVM_GETEDITCONTROL
#define LVS_EX_FULLROWSELECT
#define LVS_EX_TRACKSELECT
#define ListView_GetOrigin(hwndLV, ppt)
#define LVN_ENDLABELEDITW
#define LVN_BEGINLABELEDITW
struct tagNMLISTVIEW * LPNMLISTVIEW
#define LVIR_SELECTBOUNDS
#define LVM_GETEXTENDEDLISTVIEWSTYLE
#define LVS_EX_DOUBLEBUFFER
#define ListView_GetItemSpacing(hwndLV, fSmall)
#define IsEqualIID(riid1, riid2)
#define IsEqualCLSID(rclsid1, rclsid2)
void redraw(int x, int y, int cx, int cy)
HRESULT WINAPI SHForwardContextMenuMsg(IUnknown *pUnk, UINT uMsg, WPARAM wParam, LPARAM lParam, LRESULT *pResult, BOOL useIContextMenu2)
HRESULT WINAPI SHLimitInputEdit(HWND hWnd, IShellFolder *psf)
BOOL WINAPI StrRetToStrNW(LPWSTR dest, DWORD len, LPSTRRET src, const ITEMIDLIST *pidl)
BOOL WINAPI StrRetToStrNA(LPSTR dest, DWORD len, LPSTRRET src, const ITEMIDLIST *pidl)
#define SID_IShellBrowser
#define FCIDM_BROWSERLAST
#define CSIDL_COMMON_DESKTOPDIRECTORY
#define CSIDL_DESKTOPDIRECTORY
#define SFVM_WINDOWCREATED
#define FCIDM_MENU_VIEW_SEP_OPTIONS
#define SHCNE_RENAMEFOLDER
#define SHCNRF_NewDelivery
#define MM_SUBMENUSHAVEIDS
#define MM_DONTREMOVESEPS
#define SHCNRF_ShellLevel
#define FCIDM_SHVIEWFIRST
#define SHCNRF_InterruptLevel
@ FWF_SINGLECLICKACTIVATE
LPARAM LPFNSVADDPROPSHEETPAGE
DWORD WINAPI SHRestricted(RESTRICTIONS rest)
#define FCIDM_SHVIEW_AUTOARRANGE
#define FCIDM_SHVIEW_SELECTALL
#define IDS_OBJECTS_SELECTED
#define FCIDM_SHVIEW_OPEN
#define FCIDM_SHVIEW_LISTVIEW
#define FCIDM_SHVIEW_UNDO
#define FCIDM_SHVIEW_ALIGNTOGRID
#define FCIDM_SHVIEW_COPY
#define FCIDM_SHVIEW_BIGICON
#define FCIDM_SHVIEW_INSERTLINK
#define FCIDM_SHVIEW_REFRESH
#define IDI_SHELL_COMPUTER_DESKTOP
#define FCIDM_SHVIEW_NEWFOLDER
#define FCIDM_SHVIEW_SMALLICON
#define FCIDM_TB_SMALLICON
#define FCIDM_SHVIEW_PROPERTIES
#define FCIDM_SHVIEW_SNAPTOGRID
#define FCIDM_SHVIEW_VIEW
#define FCIDM_SHVIEW_COPYTO
#define FCIDM_SHVIEW_MOVETO
#define FCIDM_SHVIEW_DELETE
#define FCIDM_SHVIEW_RENAME
#define FCIDM_TB_REPORTVIEW
#define FCIDM_SHVIEW_REPORTVIEW
#define FCIDM_SHVIEW_INVERTSELECTION
#define FCIDM_SHVIEW_ARRANGE
#define FCIDM_SHVIEW_INSERT
ITEMIDLIST UNALIGNED * LPITEMIDLIST
const PCUITEMID_CHILD * PCUITEMID_CHILD_ARRAY
const ITEMID_CHILD UNALIGNED * PCUITEMID_CHILD
const ITEMIDLIST_RELATIVE UNALIGNED * PCUIDLIST_RELATIVE
const ITEMIDLIST UNALIGNED * LPCITEMIDLIST
STRSAFEAPI StringCchPrintfW(STRSAFE_LPWSTR pszDest, size_t cchDest, STRSAFE_LPCWSTR pszFormat,...)
LPFNVIEWCALLBACK pfnCallback
IShellFolderViewCB * psfvcb
TW_UINT32 TW_UINT16 TW_UINT16 MSG
#define CWM_GETISHELLBROWSER
BOOL WINAPI SetShellWindowEx(HWND, HWND)
_In_ WDFCOLLECTION _In_ WDFOBJECT Item
_In_ PCCERT_CONTEXT _In_ DWORD dwFlags
_In_ void _In_ PCCERT_CONTEXT _In_opt_ LPFILETIME _In_ DWORD _In_ DWORD _Outptr_opt_ void ** ppvObject
_In_ CLIPOBJ _In_ BRUSHOBJ _In_ LONG _In_ LONG y1
_In_ CLIPOBJ _In_ BRUSHOBJ _In_ LONG x1
#define DRAGDROP_S_USEDEFAULTCURSORS
#define DRAGDROP_S_CANCEL
HGDIOBJ WINAPI SelectObject(_In_ HDC, _In_ HGDIOBJ)
HDC WINAPI CreateCompatibleDC(_In_opt_ HDC hdc)
int WINAPI FillRect(HDC, LPCRECT, HBRUSH)
BOOL WINAPI DeleteDC(_In_ HDC)
#define HKEY_CURRENT_USER
HWND WINAPI GetFocus(void)
DWORD WINAPI GetSysColor(_In_ int)
HMENU WINAPI CreatePopupMenu(void)
UINT WINAPI GetMenuDefaultItem(_In_ HMENU hMenu, _In_ UINT fByPos, _In_ UINT gmdiFlags)
int WINAPI GetMenuItemCount(_In_opt_ HMENU)
#define SPI_SETDESKWALLPAPER
BOOL WINAPI PostMessageW(_In_opt_ HWND, _In_ UINT, _In_ WPARAM, _In_ LPARAM)
BOOL WINAPI GetWindowRect(_In_ HWND, _Out_ LPRECT)
int WINAPI LoadStringW(_In_opt_ HINSTANCE hInstance, _In_ UINT uID, _Out_writes_to_(cchBufferMax, return+1) LPWSTR lpBuffer, _In_ int cchBufferMax)
BOOL WINAPI SetWindowPos(_In_ HWND, _In_opt_ HWND, _In_ int, _In_ int, _In_ int, _In_ int, _In_ UINT)
BOOL WINAPI InsertMenuW(_In_ HMENU, _In_ UINT, _In_ UINT, _In_ UINT_PTR, _In_opt_ LPCWSTR)
HBRUSH WINAPI GetSysColorBrush(_In_ int)
HMENU WINAPI CreateMenu(void)
BOOL WINAPI DeleteMenu(_In_ HMENU, _In_ UINT, _In_ UINT)
UINT WINAPI GetMenuItemID(_In_ HMENU, _In_ int)
#define WM_SYSCOLORCHANGE
BOOL WINAPI TrackPopupMenuEx(_In_ HMENU, _In_ UINT, _In_ int, _In_ int, _In_ HWND, _In_opt_ LPTPMPARAMS)
BOOL WINAPI ClientToScreen(_In_ HWND, _Inout_ LPPOINT)
DWORD WINAPI CheckMenuItem(_In_ HMENU, _In_ UINT, _In_ UINT)
BOOL WINAPI GetClientRect(_In_ HWND, _Out_ LPRECT)
HMENU WINAPI GetSubMenu(_In_ HMENU, _In_ int)
struct tagNMHDR * LPNMHDR
BOOL WINAPI CheckMenuRadioItem(_In_ HMENU, _In_ UINT, _In_ UINT, _In_ UINT, _In_ UINT)
#define MAKEINTRESOURCEA(i)
HACCEL WINAPI LoadAcceleratorsW(_In_opt_ HINSTANCE, _In_ LPCWSTR)
BOOL WINAPI DestroyMenu(_In_ HMENU)
BOOL WINAPI GetMenuItemInfoW(_In_ HMENU, _In_ UINT, _In_ BOOL, _Inout_ LPMENUITEMINFOW)
int WINAPI TranslateAcceleratorW(_In_ HWND, _In_ HACCEL, _In_ LPMSG)
BOOL WINAPI TrackPopupMenu(_In_ HMENU, _In_ UINT, _In_ int, _In_ int, _Reserved_ int, _In_ HWND, _Reserved_ LPCRECT)
int WINAPI GetScrollPos(_In_ HWND, _In_ int)
#define MAKEINTRESOURCEW(i)
HMENU WINAPI LoadMenuW(_In_opt_ HINSTANCE, _In_ LPCWSTR)
LRESULT(CALLBACK * WNDPROC)(HWND, UINT, WPARAM, LPARAM)
#define TranslateAccelerator
BOOL WINAPI EnableMenuItem(_In_ HMENU, _In_ UINT, _In_ UINT)
HICON WINAPI LoadIconW(_In_opt_ HINSTANCE hInstance, _In_ LPCWSTR lpIconName)
BOOL WINAPI MoveWindow(_In_ HWND, _In_ int, _In_ int, _In_ int, _In_ int, _In_ BOOL)
LRESULT WINAPI SendMessageW(_In_ HWND, _In_ UINT, _In_ WPARAM, _In_ LPARAM)
SHORT WINAPI GetKeyState(_In_ int)
BOOL WINAPI ScreenToClient(_In_ HWND, _Inout_ LPPOINT)
#define IID_PPV_ARG(Itype, ppType)
#define IID_NULL_PPV_ARG(Itype, ppType)