24#define WM_USER_SHELLEVENT WM_USER+88
25#define WM_USER_FOLDEREVENT WM_USER+88
28 public CComCoClass<CExplorerBand, &CLSID_ExplorerBand>,
29 public CComObjectRootEx<CComMultiThreadModelNoCS>,
37 public IWinEventHandler,
38 public INamespaceProxy,
42 public CWindowImpl<CExplorerBand, CWindow, CControlWinTraits>
LPITEMIDLIST relativePidl
LPITEMIDLIST absolutePidl
HTREEITEM InsertItem(HTREEITEM hParent, IShellFolder *psfParent, LPITEMIDLIST pElt, LPITEMIDLIST pEltRelative, BOOL bSort)
STDMETHOD() GetSite(REFIID riid, void **ppvSite) override
BOOL OnTreeItemExpanding(LPNMTREEVIEW pnmtv)
STDMETHOD() Exec(const GUID *pguidCmdGroup, DWORD nCmdID, DWORD nCmdexecopt, VARIANT *pvaIn, VARIANT *pvaOut) override
STDMETHOD() UIActivateIO(BOOL fActivate, LPMSG lpMsg) override
STDMETHOD() ResizeBorderDW(const RECT *prcBorder, IUnknown *punkToolbarSite, BOOL fReserved) override
void DestroyExplorerBand()
STDMETHOD() Save(IStream *pStm, BOOL fClearDirty) override
STDMETHOD() Select(long paramC) override
void OnSelectionChanged(LPNMTREEVIEW pnmtv)
STDMETHOD() IsWindowOwner(HWND hWnd) override
STDMETHOD() Invoke(long paramC) override
HRESULT ExecuteCommand(CComPtr< IContextMenu > &menu, UINT nCmd)
STDMETHOD() ShowDW(BOOL fShow) override
LRESULT OnSetFocus(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL &bHandled)
STDMETHOD() SetSite(IUnknown *pUnkSite) override
STDMETHOD() OnWinEvent(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam, LRESULT *theResult) override
STDMETHOD() GetTypeInfo(UINT iTInfo, LCID lcid, ITypeInfo **ppTInfo) override
STDMETHOD() HasFocusIO() override
STDMETHOD() Drop(IDataObject *pObj, DWORD glfKeyState, POINTL pt, DWORD *pdwEffect) override
void InitializeExplorerBand()
STDMETHOD() CloseDW(DWORD dwReserved) override
STDMETHOD() IsDirty() override
HTREEITEM m_childTargetNode
STDMETHOD() GetWindow(HWND *lphwnd) override
static int CALLBACK CompareTreeItems(LPARAM p1, LPARAM p2, LPARAM p3)
STDMETHOD() TranslateAcceleratorIO(LPMSG lpMsg) override
STDMETHOD() RefreshFlags(long paramC, long param10, long param14) override
STDMETHOD() Load(IStream *pStm) override
STDMETHOD() GetIDsOfNames(REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId) override
HRESULT UpdateBrowser(LPITEMIDLIST pidlGoto)
BOOL NavigateToCurrentFolder()
STDMETHOD() CacheItem(long paramC) override
STDMETHOD() GetSizeMax(ULARGE_INTEGER *pcbSize) override
STDMETHOD() GetTypeInfoCount(UINT *pctinfo) override
LPITEMIDLIST m_pidlCurrent
STDMETHOD() QueryStatus(const GUID *pguidCmdGroup, ULONG cCmds, OLECMD prgCmds[], OLECMDTEXT *pCmdText) override
STDMETHOD() GetBandInfo(DWORD dwBandID, DWORD dwViewMode, DESKBANDINFO *pdbi) override
STDMETHOD() QueryService(REFGUID guidService, REFIID riid, void **ppvObject) override
CComPtr< IDataObject > m_pCurObject
void OnTreeItemDragging(LPNMTREEVIEW pnmtv, BOOL isRightClick)
CComPtr< IUnknown > m_pSite
BOOL RefreshTreePidl(HTREEITEM tree, LPITEMIDLIST pidlParent)
LRESULT OnKillFocus(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL &bHandled)
NodeInfo * GetNodeInfo(HTREEITEM hItem)
STDMETHOD() QueryContinueDrag(BOOL fEscapePressed, DWORD grfKeyState) override
BOOL NavigateToPIDL(LPITEMIDLIST dest, HTREEITEM *item, BOOL bExpand, BOOL bInsert, BOOL bSelect)
STDMETHOD() ContextSensitiveHelp(BOOL fEnterMode) override
STDMETHOD() GiveFeedback(DWORD dwEffect) override
LRESULT OnContextMenu(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL &bHandled)
LRESULT ContextMenuHack(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL &bHandled)
CComPtr< IShellFolder > m_pDesktop
BOOL OnTreeItemDeleted(LPNMTREEVIEW pnmtv)
CComPtr< IDropTarget > m_pDropTarget
STDMETHOD() DragOver(DWORD glfKeyState, POINTL pt, DWORD *pdwEffect) override
STDMETHOD() DragEnter(IDataObject *pObj, DWORD glfKeyState, POINTL pt, DWORD *pdwEffect) override
STDMETHOD() GetClassID(CLSID *pClassID) override
LRESULT OnShellEvent(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL &bHandled)
BOOL InsertSubitems(HTREEITEM hItem, NodeInfo *pNodeInfo)
STDMETHOD() GetNavigateTarget(long paramC, long param10, long param14) override
BOOL RenameItem(HTREEITEM toRename, LPITEMIDLIST newPidl)
STDMETHOD() DragLeave() override
#define WM_USER_SHELLEVENT
#define COM_INTERFACE_ENTRY2_IID(iid, x, x2)
#define COM_INTERFACE_ENTRY_IID(iid, x)
#define DECLARE_PROTECT_FINAL_CONSTRUCT()
#define DECLARE_NOT_AGGREGATABLE(x)
#define DECLARE_REGISTRY_RESOURCEID(x)
#define MESSAGE_HANDLER(msg, func)
#define BEGIN_MSG_MAP(theClass)
const IID IID_IObjectWithSite
static VARIANTARG static DISPID
_In_ HANDLE _In_ DWORD _In_ DWORD _Inout_opt_ LPOVERLAPPED _In_opt_ LPTRANSMIT_FILE_BUFFERS _In_ DWORD dwReserved
const GUID IID_IOleWindow
const GUID IID_IPersistStream
ITEMIDLIST UNALIGNED * LPITEMIDLIST
_In_ DWORD _Out_ _In_ WORD wFlags
_In_ void _In_ PCCERT_CONTEXT _In_opt_ LPFILETIME _In_ DWORD _In_ DWORD _Outptr_opt_ void ** ppvObject