ReactOS  0.4.15-dev-1152-g6c94e4f
CShellBrowser Class Reference
Inheritance diagram for CShellBrowser:
Collaboration diagram for CShellBrowser:

Classes

class  barInfo
 

Public Member Functions

 CShellBrowser ()
 
 ~CShellBrowser ()
 
HRESULT Initialize ()
 
HRESULT BrowseToPIDL (LPCITEMIDLIST pidl, long flags)
 
HRESULT BrowseToPath (IShellFolder *newShellFolder, LPCITEMIDLIST absolutePIDL, FOLDERSETTINGS *folderSettings, long flags)
 
HRESULT GetMenuBand (REFIID riid, void **shellMenu)
 
HRESULT GetBaseBar (bool vertical, REFIID riid, void **theBaseBar)
 
BOOL IsBandLoaded (const CLSID clsidBand, bool verticali, DWORD *pdwBandID)
 
HRESULT ShowBand (const CLSID &classID, bool vertical)
 
HRESULT NavigateToParent ()
 
HRESULT DoFolderOptions ()
 
void RepositionBars ()
 
HRESULT BuildExplorerBandMenu ()
 
HRESULT BuildExplorerBandCategory (HMENU hBandsMenu, CATID category, DWORD dwPos, UINT *nbFound)
 
BOOL IsBuiltinBand (CLSID &bandID)
 
virtual WNDPROC GetWindowProc ()
 
HRESULT FireEvent (DISPID dispIdMember, int argCount, VARIANT *arguments)
 
HRESULT FireNavigateComplete (const wchar_t *newDirectory)
 
HRESULT FireCommandStateChange (bool newState, int commandID)
 
HRESULT FireCommandStateChangeAll ()
 
HRESULT UpdateForwardBackState ()
 
HRESULT UpdateUpState ()
 
void UpdateGotoMenu (HMENU theMenu)
 
void UpdateViewMenu (HMENU theMenu)
 
virtual HRESULT STDMETHODCALLTYPE GetBorderDW (IUnknown *punkObj, LPRECT prcBorder)
 
virtual HRESULT STDMETHODCALLTYPE RequestBorderSpaceDW (IUnknown *punkObj, LPCBORDERWIDTHS pbw)
 
virtual HRESULT STDMETHODCALLTYPE SetBorderSpaceDW (IUnknown *punkObj, LPCBORDERWIDTHS pbw)
 
virtual HRESULT STDMETHODCALLTYPE QueryStatus (const GUID *pguidCmdGroup, ULONG cCmds, OLECMD prgCmds[], OLECMDTEXT *pCmdText)
 
virtual HRESULT STDMETHODCALLTYPE Exec (const GUID *pguidCmdGroup, DWORD nCmdID, DWORD nCmdexecopt, VARIANT *pvaIn, VARIANT *pvaOut)
 
virtual HRESULT STDMETHODCALLTYPE GetWindow (HWND *lphwnd)
 
virtual HRESULT STDMETHODCALLTYPE ContextSensitiveHelp (BOOL fEnterMode)
 
virtual HRESULT STDMETHODCALLTYPE InsertMenusSB (HMENU hmenuShared, LPOLEMENUGROUPWIDTHS lpMenuWidths)
 
virtual HRESULT STDMETHODCALLTYPE SetMenuSB (HMENU hmenuShared, HOLEMENU holemenuRes, HWND hwndActiveObject)
 
virtual HRESULT STDMETHODCALLTYPE RemoveMenusSB (HMENU hmenuShared)
 
virtual HRESULT STDMETHODCALLTYPE SetStatusTextSB (LPCOLESTR pszStatusText)
 
virtual HRESULT STDMETHODCALLTYPE EnableModelessSB (BOOL fEnable)
 
virtual HRESULT STDMETHODCALLTYPE TranslateAcceleratorSB (MSG *pmsg, WORD wID)
 
virtual HRESULT STDMETHODCALLTYPE BrowseObject (LPCITEMIDLIST pidl, UINT wFlags)
 
virtual HRESULT STDMETHODCALLTYPE GetViewStateStream (DWORD grfMode, IStream **ppStrm)
 
virtual HRESULT STDMETHODCALLTYPE GetControlWindow (UINT id, HWND *lphwnd)
 
virtual HRESULT STDMETHODCALLTYPE SendControlMsg (UINT id, UINT uMsg, WPARAM wParam, LPARAM lParam, LRESULT *pret)
 
virtual HRESULT STDMETHODCALLTYPE QueryActiveShellView (IShellView **ppshv)
 
virtual HRESULT STDMETHODCALLTYPE OnViewWindowActive (IShellView *ppshv)
 
virtual HRESULT STDMETHODCALLTYPE SetToolbarItems (LPTBBUTTON lpButtons, UINT nButtons, UINT uFlags)
 
virtual HRESULT STDMETHODCALLTYPE DragEnter (IDataObject *pDataObj, DWORD grfKeyState, POINTL pt, DWORD *pdwEffect)
 
virtual HRESULT STDMETHODCALLTYPE DragOver (DWORD grfKeyState, POINTL pt, DWORD *pdwEffect)
 
virtual HRESULT STDMETHODCALLTYPE DragLeave ()
 
virtual HRESULT STDMETHODCALLTYPE Drop (IDataObject *pDataObj, DWORD grfKeyState, POINTL pt, DWORD *pdwEffect)
 
virtual HRESULT STDMETHODCALLTYPE QueryService (REFGUID guidService, REFIID riid, void **ppvObject)
 
virtual HRESULT STDMETHODCALLTYPE GetPropertyBag (long flags, REFIID riid, void **ppvObject)
 
virtual HRESULT STDMETHODCALLTYPE GetTypeInfoCount (UINT *pctinfo)
 
virtual HRESULT STDMETHODCALLTYPE GetTypeInfo (UINT iTInfo, LCID lcid, ITypeInfo **ppTInfo)
 
virtual HRESULT STDMETHODCALLTYPE GetIDsOfNames (REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId)
 
virtual HRESULT STDMETHODCALLTYPE Invoke (DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr)
 
virtual HRESULT STDMETHODCALLTYPE GetParentSite (IOleInPlaceSite **ppipsite)
 
virtual HRESULT STDMETHODCALLTYPE SetTitle (IShellView *psv, LPCWSTR pszName)
 
virtual HRESULT STDMETHODCALLTYPE GetTitle (IShellView *psv, LPWSTR pszName, DWORD cchName)
 
virtual HRESULT STDMETHODCALLTYPE GetOleObject (IOleObject **ppobjv)
 
virtual HRESULT STDMETHODCALLTYPE GetTravelLog (ITravelLog **pptl)
 
virtual HRESULT STDMETHODCALLTYPE ShowControlWindow (UINT id, BOOL fShow)
 
virtual HRESULT STDMETHODCALLTYPE IsControlWindowShown (UINT id, BOOL *pfShown)
 
virtual HRESULT STDMETHODCALLTYPE IEGetDisplayName (LPCITEMIDLIST pidl, LPWSTR pwszName, UINT uFlags)
 
virtual HRESULT STDMETHODCALLTYPE IEParseDisplayName (UINT uiCP, LPCWSTR pwszPath, LPITEMIDLIST *ppidlOut)
 
virtual HRESULT STDMETHODCALLTYPE DisplayParseError (HRESULT hres, LPCWSTR pwszPath)
 
virtual HRESULT STDMETHODCALLTYPE NavigateToPidl (LPCITEMIDLIST pidl, DWORD grfHLNF)
 
virtual HRESULT STDMETHODCALLTYPE SetNavigateState (BNSTATE bnstate)
 
virtual HRESULT STDMETHODCALLTYPE GetNavigateState (BNSTATE *pbnstate)
 
virtual HRESULT STDMETHODCALLTYPE NotifyRedirect (IShellView *psv, LPCITEMIDLIST pidl, BOOL *pfDidBrowse)
 
virtual HRESULT STDMETHODCALLTYPE UpdateWindowList ()
 
virtual HRESULT STDMETHODCALLTYPE UpdateBackForwardState ()
 
virtual HRESULT STDMETHODCALLTYPE SetFlags (DWORD dwFlags, DWORD dwFlagMask)
 
virtual HRESULT STDMETHODCALLTYPE GetFlags (DWORD *pdwFlags)
 
virtual HRESULT STDMETHODCALLTYPE CanNavigateNow (void)
 
virtual HRESULT STDMETHODCALLTYPE GetPidl (LPITEMIDLIST *ppidl)
 
virtual HRESULT STDMETHODCALLTYPE SetReferrer (LPCITEMIDLIST pidl)
 
virtual DWORD STDMETHODCALLTYPE GetBrowserIndex ()
 
virtual HRESULT STDMETHODCALLTYPE GetBrowserByIndex (DWORD dwID, IUnknown **ppunk)
 
virtual HRESULT STDMETHODCALLTYPE GetHistoryObject (IOleObject **ppole, IStream **pstm, IBindCtx **ppbc)
 
virtual HRESULT STDMETHODCALLTYPE SetHistoryObject (IOleObject *pole, BOOL fIsLocalAnchor)
 
virtual HRESULT STDMETHODCALLTYPE CacheOLEServer (IOleObject *pole)
 
virtual HRESULT STDMETHODCALLTYPE GetSetCodePage (VARIANT *pvarIn, VARIANT *pvarOut)
 
virtual HRESULT STDMETHODCALLTYPE OnHttpEquiv (IShellView *psv, BOOL fDone, VARIANT *pvarargIn, VARIANT *pvarargOut)
 
virtual HRESULT STDMETHODCALLTYPE GetPalette (HPALETTE *hpal)
 
virtual HRESULT STDMETHODCALLTYPE RegisterWindow (BOOL fForceRegister, int swc)
 
virtual LRESULT STDMETHODCALLTYPE WndProcBS (HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
 
virtual HRESULT STDMETHODCALLTYPE SetAsDefFolderSettings ()
 
virtual HRESULT STDMETHODCALLTYPE GetViewRect (RECT *prc)
 
virtual HRESULT STDMETHODCALLTYPE OnSize (WPARAM wParam)
 
virtual HRESULT STDMETHODCALLTYPE OnCreate (struct tagCREATESTRUCTW *pcs)
 
virtual LRESULT STDMETHODCALLTYPE OnCommand (WPARAM wParam, LPARAM lParam)
 
virtual HRESULT STDMETHODCALLTYPE OnDestroy ()
 
virtual LRESULT STDMETHODCALLTYPE OnNotify (struct tagNMHDR *pnm)
 
virtual HRESULT STDMETHODCALLTYPE OnSetFocus ()
 
virtual HRESULT STDMETHODCALLTYPE OnFrameWindowActivateBS (BOOL fActive)
 
virtual HRESULT STDMETHODCALLTYPE ReleaseShellView ()
 
virtual HRESULT STDMETHODCALLTYPE ActivatePendingView ()
 
virtual HRESULT STDMETHODCALLTYPE CreateViewWindow (IShellView *psvNew, IShellView *psvOld, LPRECT prcView, HWND *phwnd)
 
virtual HRESULT STDMETHODCALLTYPE CreateBrowserPropSheetExt (REFIID riid, void **ppv)
 
virtual HRESULT STDMETHODCALLTYPE GetViewWindow (HWND *phwndView)
 
virtual HRESULT STDMETHODCALLTYPE GetBaseBrowserData (LPCBASEBROWSERDATA *pbbd)
 
virtual LPBASEBROWSERDATA STDMETHODCALLTYPE PutBaseBrowserData (void)
 
virtual HRESULT STDMETHODCALLTYPE InitializeTravelLog (ITravelLog *ptl, DWORD dw)
 
virtual HRESULT STDMETHODCALLTYPE SetTopBrowser ()
 
virtual HRESULT STDMETHODCALLTYPE Offline (int iCmd)
 
virtual HRESULT STDMETHODCALLTYPE AllowViewResize (BOOL f)
 
virtual HRESULT STDMETHODCALLTYPE SetActivateState (UINT u)
 
virtual HRESULT STDMETHODCALLTYPE UpdateSecureLockIcon (int eSecureLock)
 
virtual HRESULT STDMETHODCALLTYPE InitializeDownloadManager ()
 
virtual HRESULT STDMETHODCALLTYPE InitializeTransitionSite ()
 
virtual HRESULT STDMETHODCALLTYPE _Initialize (HWND hwnd, IUnknown *pauto)
 
virtual HRESULT STDMETHODCALLTYPE _CancelPendingNavigationAsync (void)
 
virtual HRESULT STDMETHODCALLTYPE _CancelPendingView ()
 
virtual HRESULT STDMETHODCALLTYPE _MaySaveChanges ()
 
virtual HRESULT STDMETHODCALLTYPE _PauseOrResumeView (BOOL fPaused)
 
virtual HRESULT STDMETHODCALLTYPE _DisableModeless ()
 
virtual HRESULT STDMETHODCALLTYPE _NavigateToPidl (LPCITEMIDLIST pidl, DWORD grfHLNF, DWORD dwFlags)
 
virtual HRESULT STDMETHODCALLTYPE _TryShell2Rename (IShellView *psv, LPCITEMIDLIST pidlNew)
 
virtual HRESULT STDMETHODCALLTYPE _SwitchActivationNow ()
 
virtual HRESULT STDMETHODCALLTYPE _ExecChildren (IUnknown *punkBar, BOOL fBroadcast, const GUID *pguidCmdGroup, DWORD nCmdID, DWORD nCmdexecopt, VARIANTARG *pvarargIn, VARIANTARG *pvarargOut)
 
virtual HRESULT STDMETHODCALLTYPE _SendChildren (HWND hwndBar, BOOL fBroadcast, UINT uMsg, WPARAM wParam, LPARAM lParam)
 
virtual HRESULT STDMETHODCALLTYPE GetFolderSetData (struct tagFolderSetData *pfsd)
 
virtual HRESULT STDMETHODCALLTYPE _OnFocusChange (UINT itb)
 
virtual HRESULT STDMETHODCALLTYPE v_ShowHideChildWindows (BOOL fChildOnly)
 
virtual UINT STDMETHODCALLTYPE _get_itbLastFocus ()
 
virtual HRESULT STDMETHODCALLTYPE _put_itbLastFocus (UINT itbLastFocus)
 
virtual HRESULT STDMETHODCALLTYPE _UIActivateView (UINT uState)
 
virtual HRESULT STDMETHODCALLTYPE _GetViewBorderRect (RECT *prc)
 
virtual HRESULT STDMETHODCALLTYPE _UpdateViewRectSize ()
 
virtual HRESULT STDMETHODCALLTYPE _ResizeNextBorder (UINT itb)
 
virtual HRESULT STDMETHODCALLTYPE _ResizeView ()
 
virtual HRESULT STDMETHODCALLTYPE _GetEffectiveClientArea (LPRECT lprectBorder, HMONITOR hmon)
 
virtual IStream *STDMETHODCALLTYPE v_GetViewStream (LPCITEMIDLIST pidl, DWORD grfMode, LPCWSTR pwszName)
 
virtual LRESULT STDMETHODCALLTYPE ForwardViewMsg (UINT uMsg, WPARAM wParam, LPARAM lParam)
 
virtual HRESULT STDMETHODCALLTYPE SetAcceleratorMenu (HACCEL hacc)
 
virtual int STDMETHODCALLTYPE _GetToolbarCount ()
 
virtual LPTOOLBARITEM STDMETHODCALLTYPE _GetToolbarItem (int itb)
 
virtual HRESULT STDMETHODCALLTYPE _SaveToolbars (IStream *pstm)
 
virtual HRESULT STDMETHODCALLTYPE _LoadToolbars (IStream *pstm)
 
virtual HRESULT STDMETHODCALLTYPE _CloseAndReleaseToolbars (BOOL fClose)
 
virtual HRESULT STDMETHODCALLTYPE v_MayGetNextToolbarFocus (LPMSG lpMsg, UINT itbNext, int citb, LPTOOLBARITEM *pptbi, HWND *phwnd)
 
virtual HRESULT STDMETHODCALLTYPE _ResizeNextBorderHelper (UINT itb, BOOL bUseHmonitor)
 
virtual UINT STDMETHODCALLTYPE _FindTBar (IUnknown *punkSrc)
 
virtual HRESULT STDMETHODCALLTYPE _SetFocus (LPTOOLBARITEM ptbi, HWND hwnd, LPMSG lpMsg)
 
virtual HRESULT STDMETHODCALLTYPE v_MayTranslateAccelerator (MSG *pmsg)
 
virtual HRESULT STDMETHODCALLTYPE _GetBorderDWHelper (IUnknown *punkSrc, LPRECT lprectBorder, BOOL bUseHmonitor)
 
virtual HRESULT STDMETHODCALLTYPE v_CheckZoneCrossing (LPCITEMIDLIST pidl)
 
virtual HRESULT STDMETHODCALLTYPE GoBack ()
 
virtual HRESULT STDMETHODCALLTYPE GoForward ()
 
virtual HRESULT STDMETHODCALLTYPE GoHome ()
 
virtual HRESULT STDMETHODCALLTYPE GoSearch ()
 
virtual HRESULT STDMETHODCALLTYPE Navigate (BSTR URL, VARIANT *Flags, VARIANT *TargetFrameName, VARIANT *PostData, VARIANT *Headers)
 
virtual HRESULT STDMETHODCALLTYPE Refresh ()
 
virtual HRESULT STDMETHODCALLTYPE Refresh2 (VARIANT *Level)
 
virtual HRESULT STDMETHODCALLTYPE Stop ()
 
virtual HRESULT STDMETHODCALLTYPE get_Application (IDispatch **ppDisp)
 
virtual HRESULT STDMETHODCALLTYPE get_Parent (IDispatch **ppDisp)
 
virtual HRESULT STDMETHODCALLTYPE get_Container (IDispatch **ppDisp)
 
virtual HRESULT STDMETHODCALLTYPE get_Document (IDispatch **ppDisp)
 
virtual HRESULT STDMETHODCALLTYPE get_TopLevelContainer (VARIANT_BOOL *pBool)
 
virtual HRESULT STDMETHODCALLTYPE get_Type (BSTR *Type)
 
virtual HRESULT STDMETHODCALLTYPE get_Left (long *pl)
 
virtual HRESULT STDMETHODCALLTYPE put_Left (long Left)
 
virtual HRESULT STDMETHODCALLTYPE get_Top (long *pl)
 
virtual HRESULT STDMETHODCALLTYPE put_Top (long Top)
 
virtual HRESULT STDMETHODCALLTYPE get_Width (long *pl)
 
virtual HRESULT STDMETHODCALLTYPE put_Width (long Width)
 
virtual HRESULT STDMETHODCALLTYPE get_Height (long *pl)
 
virtual HRESULT STDMETHODCALLTYPE put_Height (long Height)
 
virtual HRESULT STDMETHODCALLTYPE get_LocationName (BSTR *LocationName)
 
virtual HRESULT STDMETHODCALLTYPE get_LocationURL (BSTR *LocationURL)
 
virtual HRESULT STDMETHODCALLTYPE get_Busy (VARIANT_BOOL *pBool)
 
virtual HRESULT STDMETHODCALLTYPE Quit ()
 
virtual HRESULT STDMETHODCALLTYPE ClientToWindow (int *pcx, int *pcy)
 
virtual HRESULT STDMETHODCALLTYPE PutProperty (BSTR Property, VARIANT vtValue)
 
virtual HRESULT STDMETHODCALLTYPE GetProperty (BSTR Property, VARIANT *pvtValue)
 
virtual HRESULT STDMETHODCALLTYPE get_Name (BSTR *Name)
 
virtual HRESULT STDMETHODCALLTYPE get_HWND (SHANDLE_PTR *pHWND)
 
virtual HRESULT STDMETHODCALLTYPE get_FullName (BSTR *FullName)
 
virtual HRESULT STDMETHODCALLTYPE get_Path (BSTR *Path)
 
virtual HRESULT STDMETHODCALLTYPE get_Visible (VARIANT_BOOL *pBool)
 
virtual HRESULT STDMETHODCALLTYPE put_Visible (VARIANT_BOOL Value)
 
virtual HRESULT STDMETHODCALLTYPE get_StatusBar (VARIANT_BOOL *pBool)
 
virtual HRESULT STDMETHODCALLTYPE put_StatusBar (VARIANT_BOOL Value)
 
virtual HRESULT STDMETHODCALLTYPE get_StatusText (BSTR *StatusText)
 
virtual HRESULT STDMETHODCALLTYPE put_StatusText (BSTR StatusText)
 
virtual HRESULT STDMETHODCALLTYPE get_ToolBar (int *Value)
 
virtual HRESULT STDMETHODCALLTYPE put_ToolBar (int Value)
 
virtual HRESULT STDMETHODCALLTYPE get_MenuBar (VARIANT_BOOL *Value)
 
virtual HRESULT STDMETHODCALLTYPE put_MenuBar (VARIANT_BOOL Value)
 
virtual HRESULT STDMETHODCALLTYPE get_FullScreen (VARIANT_BOOL *pbFullScreen)
 
virtual HRESULT STDMETHODCALLTYPE put_FullScreen (VARIANT_BOOL bFullScreen)
 
virtual HRESULT STDMETHODCALLTYPE Navigate2 (VARIANT *URL, VARIANT *Flags, VARIANT *TargetFrameName, VARIANT *PostData, VARIANT *Headers)
 
virtual HRESULT STDMETHODCALLTYPE QueryStatusWB (OLECMDID cmdID, OLECMDF *pcmdf)
 
virtual HRESULT STDMETHODCALLTYPE ExecWB (OLECMDID cmdID, OLECMDEXECOPT cmdexecopt, VARIANT *pvaIn, VARIANT *pvaOut)
 
virtual HRESULT STDMETHODCALLTYPE ShowBrowserBar (VARIANT *pvaClsid, VARIANT *pvarShow, VARIANT *pvarSize)
 
virtual HRESULT STDMETHODCALLTYPE get_ReadyState (READYSTATE *plReadyState)
 
virtual HRESULT STDMETHODCALLTYPE get_Offline (VARIANT_BOOL *pbOffline)
 
virtual HRESULT STDMETHODCALLTYPE put_Offline (VARIANT_BOOL bOffline)
 
virtual HRESULT STDMETHODCALLTYPE get_Silent (VARIANT_BOOL *pbSilent)
 
virtual HRESULT STDMETHODCALLTYPE put_Silent (VARIANT_BOOL bSilent)
 
virtual HRESULT STDMETHODCALLTYPE get_RegisterAsBrowser (VARIANT_BOOL *pbRegister)
 
virtual HRESULT STDMETHODCALLTYPE put_RegisterAsBrowser (VARIANT_BOOL bRegister)
 
virtual HRESULT STDMETHODCALLTYPE get_RegisterAsDropTarget (VARIANT_BOOL *pbRegister)
 
virtual HRESULT STDMETHODCALLTYPE put_RegisterAsDropTarget (VARIANT_BOOL bRegister)
 
virtual HRESULT STDMETHODCALLTYPE get_TheaterMode (VARIANT_BOOL *pbRegister)
 
virtual HRESULT STDMETHODCALLTYPE put_TheaterMode (VARIANT_BOOL bRegister)
 
virtual HRESULT STDMETHODCALLTYPE get_AddressBar (VARIANT_BOOL *Value)
 
virtual HRESULT STDMETHODCALLTYPE put_AddressBar (VARIANT_BOOL Value)
 
virtual HRESULT STDMETHODCALLTYPE get_Resizable (VARIANT_BOOL *Value)
 
virtual HRESULT STDMETHODCALLTYPE put_Resizable (VARIANT_BOOL Value)
 
virtual HRESULT STDMETHODCALLTYPE FindWindowByIndex (DWORD dwID, IUnknown **ppunk)
 
virtual HRESULT STDMETHODCALLTYPE GetWindowData (IStream *pStream, LPWINDOWDATA pWinData)
 
virtual HRESULT STDMETHODCALLTYPE LoadHistoryPosition (LPWSTR pszUrlLocation, DWORD dwPosition)
 
virtual HRESULT STDMETHODCALLTYPE GetClassID (CLSID *pClassID)
 
virtual HRESULT STDMETHODCALLTYPE LoadHistory (IStream *pStream, IBindCtx *pbc)
 
virtual HRESULT STDMETHODCALLTYPE SaveHistory (IStream *pStream)
 
virtual HRESULT STDMETHODCALLTYPE SetPositionCookie (DWORD dwPositioncookie)
 
virtual HRESULT STDMETHODCALLTYPE GetPositionCookie (DWORD *pdwPositioncookie)
 
LRESULT OnCreate (UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL &bHandled)
 
LRESULT OnDestroy (UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL &bHandled)
 
LRESULT OnSize (UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL &bHandled)
 
LRESULT OnInitMenuPopup (UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL &bHandled)
 
LRESULT OnSetFocus (UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL &bHandled)
 
LRESULT RelayMsgToShellView (UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL &bHandled)
 
LRESULT OnSettingChange (UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL &bHandled)
 
LRESULT OnClose (WORD wNotifyCode, WORD wID, HWND hWndCtl, BOOL &bHandled)
 
LRESULT OnFolderOptions (WORD wNotifyCode, WORD wID, HWND hWndCtl, BOOL &bHandled)
 
LRESULT OnMapNetworkDrive (WORD wNotifyCode, WORD wID, HWND hWndCtl, BOOL &bHandled)
 
LRESULT OnDisconnectNetworkDrive (WORD wNotifyCode, WORD wID, HWND hWndCtl, BOOL &bHandled)
 
LRESULT OnAboutReactOS (WORD wNotifyCode, WORD wID, HWND hWndCtl, BOOL &bHandled)
 
LRESULT OnGoBack (WORD wNotifyCode, WORD wID, HWND hWndCtl, BOOL &bHandled)
 
LRESULT OnGoForward (WORD wNotifyCode, WORD wID, HWND hWndCtl, BOOL &bHandled)
 
LRESULT OnGoUpLevel (WORD wNotifyCode, WORD wID, HWND hWndCtl, BOOL &bHandled)
 
LRESULT OnBackspace (WORD wNotifyCode, WORD wID, HWND hWndCtl, BOOL &bHandled)
 
LRESULT OnGoHome (WORD wNotifyCode, WORD wID, HWND hWndCtl, BOOL &bHandled)
 
LRESULT OnOrganizeFavorites (WORD wNotifyCode, WORD wID, HWND hWndCtl, BOOL &bHandled)
 
LRESULT OnToggleStatusBarVisible (WORD wNotifyCode, WORD wID, HWND hWndCtl, BOOL &bHandled)
 
LRESULT OnToggleToolbarLock (WORD wNotifyCode, WORD wID, HWND hWndCtl, BOOL &bHandled)
 
LRESULT OnToggleToolbarBandVisible (WORD wNotifyCode, WORD wID, HWND hWndCtl, BOOL &bHandled)
 
LRESULT OnToggleAddressBandVisible (WORD wNotifyCode, WORD wID, HWND hWndCtl, BOOL &bHandled)
 
LRESULT OnToggleLinksBandVisible (WORD wNotifyCode, WORD wID, HWND hWndCtl, BOOL &bHandled)
 
LRESULT OnToggleTextLabels (WORD wNotifyCode, WORD wID, HWND hWndCtl, BOOL &bHandled)
 
LRESULT OnToolbarCustomize (WORD wNotifyCode, WORD wID, HWND hWndCtl, BOOL &bHandled)
 
LRESULT OnGoTravel (WORD wNotifyCode, WORD wID, HWND hWndCtl, BOOL &bHandled)
 
LRESULT OnRefresh (WORD wNotifyCode, WORD wID, HWND hWndCtl, BOOL &bHandled)
 
LRESULT OnExplorerBar (WORD wNotifyCode, WORD wID, HWND hWndCtl, BOOL &bHandled)
 
LRESULT RelayCommands (UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL &bHandled)
 
HRESULT OnSearch ()
 
- Public Member Functions inherited from ATL::CWindowImpl< CShellBrowser, CWindow, CFrameWinTraits >
HWND Create (HWND hWndParent, _U_RECT rect=NULL, LPCTSTR szWindowName=NULL, DWORD dwStyle=0, DWORD dwExStyle=0, _U_MENUorID MenuOrID=0U, LPVOID lpCreateParam=NULL)
 
- Public Member Functions inherited from ATL::CWindowImplBaseT< CWindow, CFrameWinTraits >
 CWindowImplBaseT ()
 
virtual void OnFinalMessage (HWND)
 
BOOL SubclassWindow (HWND hWnd)
 
LRESULT DefWindowProc (UINT uMsg, WPARAM wParam, LPARAM lParam)
 
HWND Create (HWND hWndParent, _U_RECT rect, LPCTSTR szWindowName, DWORD dwStyle, DWORD dwExStyle, _U_MENUorID MenuOrID, ATOM atom, LPVOID lpCreateParam)
 
- Public Member Functions inherited from ATL::CWindowImplRoot< CWindow >
 CWindowImplRoot ()
 
virtual ~CWindowImplRoot ()
 
- Public Member Functions inherited from ATL::CWindow
 CWindow (HWND hWnd=NULL)
 
 operator HWND () const
 
UINT ArrangeIconicWindows ()
 
void Attach (HWND hWndNew)
 
HDC BeginPaint (LPPAINTSTRUCT lpPaint)
 
BOOL BringWindowToTop ()
 
BOOL CenterWindow (HWND hWndCenter=NULL)
 
BOOL ChangeClipboardChain (HWND hWndNewNext)
 
BOOL CheckDlgButton (int nIDButton, UINT nCheck)
 
BOOL CheckRadioButton (int nIDFirstButton, int nIDLastButton, int nIDCheckButton)
 
HWND ChildWindowFromPoint (POINT point) const
 
HWND ChildWindowFromPointEx (POINT point, UINT uFlags) const
 
BOOL ClientToScreen (LPPOINT lpPoint) const
 
BOOL ClientToScreen (LPRECT lpRect) const
 
HWND Create (LPCTSTR lpstrWndClass, HWND hWndParent, _U_RECT rect=NULL, LPCTSTR szWindowName=NULL, DWORD dwStyle=0, DWORD dwExStyle=0, _U_MENUorID MenuOrID=0U, LPVOID lpCreateParam=NULL)
 
BOOL CreateCaret (HBITMAP pBitmap)
 
BOOL CreateGrayCaret (int nWidth, int nHeight)
 
BOOL CreateSolidCaret (int nWidth, int nHeight)
 
HDWP DeferWindowPos (HDWP hWinPosInfo, HWND hWndInsertAfter, int x, int y, int cx, int cy, UINT uFlags)
 
BOOL DestroyWindow ()
 
HWND Detach ()
 
int DlgDirList (LPTSTR lpPathSpec, int nIDListBox, int nIDStaticPath, UINT nFileType)
 
int DlgDirListComboBox (LPTSTR lpPathSpec, int nIDComboBox, int nIDStaticPath, UINT nFileType)
 
BOOL DlgDirSelect (LPTSTR lpString, int nCount, int nIDListBox)
 
BOOL DlgDirSelectComboBox (LPTSTR lpString, int nCount, int nIDComboBox)
 
void DragAcceptFiles (BOOL bAccept=TRUE)
 
BOOL DrawMenuBar ()
 
BOOL EnableScrollBar (UINT uSBFlags, UINT uArrowFlags=ESB_ENABLE_BOTH)
 
BOOL EnableWindow (BOOL bEnable=TRUE)
 
void EndPaint (LPPAINTSTRUCT lpPaint)
 
BOOL FlashWindow (BOOL bInvert)
 
BOOL GetClientRect (LPRECT lpRect) const
 
HDC GetDC ()
 
HDC GetDCEx (HRGN hRgnClip, DWORD flags)
 
HWND GetDescendantWindow (int nID) const
 
HRESULT GetDlgControl (int nID, REFIID iid, void **ppCtrl)
 
int GetDlgCtrlID () const
 
HRESULT GetDlgHost (int nID, REFIID iid, void **ppHost)
 
HWND GetDlgItem (int nID)
 
UINT GetDlgItemInt (int nID, BOOL *lpTrans=NULL, BOOL bSigned=TRUE) const
 
UINT GetDlgItemText (int nID, LPTSTR lpStr, int nMaxCount) const
 
BOOL GetDlgItemText (int nID, BSTR &bstrText) const
 
DWORD GetExStyle () const
 
HFONT GetFont () const
 
DWORD GetHotKey () const
 
HICON GetIcon (BOOL bBigIcon=TRUE) const
 
HWND GetLastActivePopup () const
 
HMENU GetMenu () const
 
HWND GetNextDlgGroupItem (HWND hWndCtl, BOOL bPrevious=FALSE) const
 
HWND GetNextDlgTabItem (HWND hWndCtl, BOOL bPrevious=FALSE) const
 
CWindow GetParent () const
 
BOOL GetScrollInfo (int nBar, LPSCROLLINFO lpScrollInfo)
 
BOOL GetScrollPos (int nBar)
 
BOOL GetScrollRange (int nBar, LPINT lpMinPos, LPINT lpMaxPos) const
 
DWORD GetStyle () const
 
HMENU GetSystemMenu (BOOL bRevert)
 
HWND GetTopLevelParent () const
 
HWND GetTopLevelWindow () const
 
HWND GetTopWindow () const
 
BOOL GetUpdateRect (LPRECT lpRect, BOOL bErase=FALSE)
 
int GetUpdateRgn (HRGN hRgn, BOOL bErase=FALSE)
 
HWND GetWindow (UINT nCmd) const
 
DWORD GetWindowContextHelpId () const
 
HDC GetWindowDC ()
 
LONG GetWindowLong (int nIndex) const
 
LONG_PTR GetWindowLongPtr (int nIndex) const
 
BOOL GetWindowPlacement (WINDOWPLACEMENT *lpwndpl) const
 
DWORD GetWindowProcessID ()
 
BOOL GetWindowRect (LPRECT lpRect) const
 
int GetWindowRgn (HRGN hRgn)
 
int GetWindowText (LPTSTR lpszStringBuf, int nMaxCount) const
 
BOOL GetWindowText (BSTR &bstrText)
 
int GetWindowTextLength () const
 
DWORD GetWindowThreadID ()
 
WORD GetWindowWord (int nIndex) const
 
void GotoDlgCtrl (HWND hWndCtrl) const
 
BOOL HideCaret ()
 
BOOL HiliteMenuItem (HMENU hMenu, UINT uHiliteItem, UINT uHilite)
 
BOOL Invalidate (BOOL bErase=TRUE)
 
BOOL InvalidateRect (LPCRECT lpRect, BOOL bErase=TRUE)
 
void InvalidateRgn (HRGN hRgn, BOOL bErase=TRUE)
 
BOOL IsChild (const HWND hWnd) const
 
BOOL IsDialogMessage (LPMSG lpMsg)
 
UINT IsDlgButtonChecked (int nIDButton) const
 
BOOL IsIconic () const
 
BOOL IsParentDialog ()
 
BOOL IsWindow () const
 
BOOL IsWindowEnabled () const
 
BOOL IsWindowVisible () const
 
BOOL IsWindowUnicode ()
 
BOOL IsZoomed () const
 
BOOL KillTimer (UINT_PTR nIDEvent)
 
BOOL LockWindowUpdate (BOOL bLock=TRUE)
 
int MapWindowPoints (HWND hWndTo, LPPOINT lpPoint, UINT nCount) const
 
int MapWindowPoints (HWND hWndTo, LPRECT lpRect) const
 
int MessageBox (LPCTSTR lpszText, LPCTSTR lpszCaption=NULL, UINT nType=MB_OK)
 
BOOL ModifyStyle (DWORD dwRemove, DWORD dwAdd, UINT nFlags=0)
 
BOOL ModifyStyleEx (DWORD dwRemove, DWORD dwAdd, UINT nFlags=0)
 
BOOL MoveWindow (int x, int y, int nWidth, int nHeight, BOOL bRepaint=TRUE)
 
void NextDlgCtrl () const
 
BOOL OpenClipboard ()
 
BOOL PostMessage (UINT message, WPARAM wParam=0, LPARAM lParam=0)
 
void PrevDlgCtrl () const
 
void Print (HDC hDC, DWORD dwFlags) const
 
void PrintClient (HDC hDC, DWORD dwFlags) const
 
BOOL RedrawWindow (LPCRECT lpRectUpdate=NULL, HRGN hRgnUpdate=NULL, UINT flags=RDW_INVALIDATE|RDW_UPDATENOW|RDW_ERASE)
 
int ReleaseDC (HDC hDC)
 
BOOL ResizeClient (int nWidth, int nHeight, BOOL bRedraw=FALSE)
 
BOOL ScreenToClient (LPPOINT lpPoint) const
 
BOOL ScrollWindow (int xAmount, int yAmount, LPCRECT lpRect=NULL, LPCRECT lpClipRect=NULL)
 
int ScrollWindowEx (int dx, int dy, LPCRECT lpRectScroll, LPCRECT lpRectClip, HRGN hRgnUpdate, LPRECT lpRectUpdate, UINT flags)
 
LRESULT SendDlgItemMessage (int nID, UINT message, WPARAM wParam=0, LPARAM lParam=0)
 
LRESULT SendMessage (UINT message, WPARAM wParam=0, LPARAM lParam=0)
 
void SendMessageToDescendants (UINT message, WPARAM wParam=0, LPARAM lParam=0, BOOL bDeep=TRUE)
 
BOOL SendNotifyMessage (UINT message, WPARAM wParam=0, LPARAM lParam=0)
 
HWND SetActiveWindow ()
 
HWND SetCapture ()
 
HWND SetClipboardViewer ()
 
int SetDlgCtrlID (int nID)
 
BOOL SetDlgItemInt (int nID, UINT nValue, BOOL bSigned=TRUE)
 
BOOL SetDlgItemText (int nID, LPCTSTR lpszString)
 
HWND SetFocus ()
 
void SetFont (HFONT hFont, BOOL bRedraw=TRUE)
 
int SetHotKey (WORD wVirtualKeyCode, WORD wModifiers)
 
HICON SetIcon (HICON hIcon, BOOL bBigIcon=TRUE)
 
BOOL SetMenu (HMENU hMenu)
 
HWND SetParent (HWND hWndNewParent)
 
void SetRedraw (BOOL bRedraw=TRUE)
 
int SetScrollInfo (int nBar, LPSCROLLINFO lpScrollInfo, BOOL bRedraw=TRUE)
 
int SetScrollPos (int nBar, int nPos, BOOL bRedraw=TRUE)
 
BOOL SetScrollRange (int nBar, int nMinPos, int nMaxPos, BOOL bRedraw=TRUE)
 
UINT_PTR SetTimer (UINT_PTR nIDEvent, UINT nElapse, void(CALLBACK *lpfnTimer)(HWND, UINT, UINT_PTR, DWORD)=NULL)
 
BOOL SetWindowContextHelpId (DWORD dwContextHelpId)
 
LONG SetWindowLong (int nIndex, LONG dwNewLong)
 
LONG_PTR SetWindowLongPtr (int nIndex, LONG_PTR dwNewLong)
 
BOOL SetWindowPlacement (const WINDOWPLACEMENT *lpwndpl)
 
BOOL SetWindowPos (HWND hWndInsertAfter, int x, int y, int cx, int cy, UINT nFlags)
 
int SetWindowRgn (HRGN hRgn, BOOL bRedraw=FALSE)
 
BOOL SetWindowText (LPCTSTR lpszString)
 
WORD SetWindowWord (int nIndex, WORD wNewWord)
 
BOOL ShowCaret ()
 
BOOL ShowOwnedPopups (BOOL bShow=TRUE)
 
BOOL ShowScrollBar (UINT nBar, BOOL bShow=TRUE)
 
BOOL ShowWindow (int nCmdShow)
 
BOOL ShowWindowAsync (int nCmdShow)
 
BOOL UpdateWindow ()
 
BOOL ValidateRect (LPCRECT lpRect)
 
BOOL ValidateRgn (HRGN hRgn)
 
BOOL WinHelp (LPCTSTR lpszHelp, UINT nCmd=HELP_CONTEXT, DWORD dwData=0)
 
- Public Member Functions inherited from ATL::CMessageMap
virtual BOOL ProcessWindowMessage (HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam, LRESULT &lResult, DWORD dwMsgMapID)=0
 
- Public Member Functions inherited from ATL::CComObjectRootEx< CComMultiThreadModelNoCS >
 ~CComObjectRootEx ()
 
ULONG InternalAddRef ()
 
ULONG InternalRelease ()
 
void Lock ()
 
void Unlock ()
 
HRESULT _AtlInitialConstruct ()
 
- Public Member Functions inherited from ATL::CComObjectRootBase
 CComObjectRootBase ()
 
 ~CComObjectRootBase ()
 
void SetVoid (void *)
 
HRESULT _AtlFinalConstruct ()
 
HRESULT FinalConstruct ()
 
void InternalFinalConstructAddRef ()
 
void InternalFinalConstructRelease ()
 
void FinalRelease ()
 
- Public Member Functions inherited from IShellBrowser
HRESULT BrowseObject ([in] PCUIDLIST_RELATIVE pidl, [in] UINT wFlags)
 
- Public Member Functions inherited from IUnknown
HRESULT QueryInterface ([in] REFIID riid, [out, iid_is(riid)] void **ppvObject)
 
ULONG AddRef ()
 
ULONG Release ()
 
- Public Member Functions inherited from IServiceProvider
HRESULT RemoteQueryService ([in] REFGUID guidService, [in] REFIID riid, [out, iid_is(riid)] IUnknown **ppvObject)
 
- Public Member Functions inherited from IProfferServiceImpl< CShellBrowser >
STDMETHODIMP ProfferService (REFGUID rguidService, IServiceProvider *psp, DWORD *pdwCookie)
 
STDMETHODIMP RevokeService (DWORD dwCookie)
 
HRESULT QueryService (REFGUID guidService, REFIID riid, void **ppvObject)
 
- Public Member Functions inherited from IBrowserService2
HRESULT _NavigateToPidl ([in] PCIDLIST_ABSOLUTE pidl, [in] DWORD grfHLNF, [in] DWORD dwFlags)
 
HRESULT _TryShell2Rename ([in] IShellView *psv, [in] PCIDLIST_ABSOLUTE pidlNew)
 
IStreamv_GetViewStream ([in] PCIDLIST_ABSOLUTE pidl, [in] DWORD grfMode, [in] LPCWSTR pwszName)
 
HRESULT v_CheckZoneCrossing ([in, out] PCIDLIST_ABSOLUTE pidl)
 
- Public Member Functions inherited from IBrowserService
HRESULT IEGetDisplayName ([in] PCIDLIST_ABSOLUTE pidl, [out] LPWSTR pwszName, [in] UINT uFlags)
 
HRESULT IEParseDisplayName ([in] UINT uiCP, [in] LPCWSTR pwszPath, [out] PIDLIST_ABSOLUTE *ppidlOut)
 
HRESULT NavigateToPidl ([in] PCIDLIST_ABSOLUTE pidl, [in] DWORD grfHLNF)
 
HRESULT NotifyRedirect ([in] IShellView *psv, [in] PCIDLIST_ABSOLUTE pidl, [out] BOOL *pfDidBrowse)
 
HRESULT GetPidl ([out] PIDLIST_ABSOLUTE *ppidl)
 
HRESULT SetReferrer ([in] PCIDLIST_ABSOLUTE pidl)
 
- Public Member Functions inherited from ATL::IConnectionPointContainerImpl< CShellBrowser >
STDMETHOD() EnumConnectionPoints (IEnumConnectionPoints **ppEnum)
 
STDMETHOD() FindConnectionPoint (REFIID riid, IConnectionPoint **ppCP)
 
- Public Member Functions inherited from MyIConnectionPointImpl< CShellBrowser, &DIID_DWebBrowserEvents2 >
STDMETHODIMP Advise (IUnknown *pUnkSink, DWORD *pdwCookie)
 
- Public Member Functions inherited from MyIConnectionPointImpl< CShellBrowser, &DIID_DWebBrowserEvents >
STDMETHODIMP Advise (IUnknown *pUnkSink, DWORD *pdwCookie)
 

Static Public Member Functions

static LRESULT CALLBACK WindowProc (HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
 
static ATL::CWndClassInfoGetWndClassInfo ()
 
- Static Public Member Functions inherited from ATL::CWindowImpl< CShellBrowser, CWindow, CFrameWinTraits >
static LPCTSTR GetWndCaption ()
 
- Static Public Member Functions inherited from ATL::CWindowImplBaseT< CWindow, CFrameWinTraits >
static DWORD GetWndStyle (DWORD dwStyle)
 
static DWORD GetWndExStyle (DWORD dwExStyle)
 
static LRESULT CALLBACK StartWindowProc (HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
 
static LRESULT CALLBACK WindowProc (HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
 
- Static Public Member Functions inherited from ATL::CWindow
static LPCTSTR GetWndClassName ()
 
static LRESULT SendMessage (HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
 
- Static Public Member Functions inherited from ATL::CComObjectRootBase
static void WINAPI ObjectMain (bool)
 
static const struct _ATL_CATMAP_ENTRYGetCategoryMap ()
 
static HRESULT WINAPI InternalQueryInterface (void *pThis, const _ATL_INTMAP_ENTRY *pEntries, REFIID iid, void **ppvObject)
 

Private Attributes

HWND fCurrentShellViewWindow
 
CComPtr< IShellFolderfCurrentShellFolder
 
CComPtr< IShellViewfCurrentShellView
 
LPITEMIDLIST fCurrentDirectoryPIDL
 
HWND fStatusBar
 
bool fStatusBarVisible
 
CToolbarProxy fToolbarProxy
 
barInfo fClientBars [3]
 
CComPtr< ITravelLogfTravelLog
 
HMENU fCurrentMenuBar
 
CABINETSTATE fCabinetState
 
GUID fCurrentVertBar
 
IOleObjectfHistoryObject
 
IStreamfHistoryStream
 
IBindCtxfHistoryBindContext
 
HDSA menuDsa
 
HACCEL m_hAccel
 

Static Private Attributes

static const int BIInternetToolbar = 0
 
static const int BIVerticalBaseBar = 1
 
static const int BIHorizontalBaseBar = 2
 

Additional Inherited Members

- Public Types inherited from ATL::CWindowImplRoot< CWindow >
enum  
 
- Public Types inherited from IShellBrowser
typedef IShellBrowserLPSHELLBROWSER
 
typedef LPTBBUTTON LPTBBUTTONSB
 
- Public Types inherited from IOleWindow
typedef IOleWindowLPOLEWINDOW
 
- Public Types inherited from IUnknown
typedef IUnknownLPUNKNOWN
 
- Public Types inherited from IDropTarget
typedef IDropTargetLPDROPTARGET
 
- Public Types inherited from IServiceProvider
typedef IServiceProviderLPSERVICEPROVIDER
 
- Public Types inherited from IPersistHistory
typedef IPersistHistoryLPPERSISTHISTORY
 
- Public Types inherited from IPersist
typedef IPersistLPPERSIST
 
- Public Types inherited from IOleCommandTarget
enum  OLECMDF {
  OLECMDF_SUPPORTED = 0x1, OLECMDF_ENABLED = 0x2, OLECMDF_LATCHED = 0x4, OLECMDF_NINCHED = 0x8,
  OLECMDF_INVISIBLE = 0x10, OLECMDF_DEFHIDEONCTXTMENU = 0x20
}
 
enum  OLECMDTEXTF { OLECMDTEXTF_NONE = 0, OLECMDTEXTF_NAME = 1, OLECMDTEXTF_STATUS = 2 }
 
enum  OLECMDEXECOPT { OLECMDEXECOPT_DODEFAULT = 0, OLECMDEXECOPT_PROMPTUSER = 1, OLECMDEXECOPT_DONTPROMPTUSER = 2, OLECMDEXECOPT_SHOWHELP = 3 }
 
enum  OLECMDID {
  OLECMDID_OPEN = 1, OLECMDID_NEW = 2, OLECMDID_SAVE = 3, OLECMDID_SAVEAS = 4,
  OLECMDID_SAVECOPYAS = 5, OLECMDID_PRINT = 6, OLECMDID_PRINTPREVIEW = 7, OLECMDID_PAGESETUP = 8,
  OLECMDID_SPELL = 9, OLECMDID_PROPERTIES = 10, OLECMDID_CUT = 11, OLECMDID_COPY = 12,
  OLECMDID_PASTE = 13, OLECMDID_PASTESPECIAL = 14, OLECMDID_UNDO = 15, OLECMDID_REDO = 16,
  OLECMDID_SELECTALL = 17, OLECMDID_CLEARSELECTION = 18, OLECMDID_ZOOM = 19, OLECMDID_GETZOOMRANGE = 20,
  OLECMDID_UPDATECOMMANDS = 21, OLECMDID_REFRESH = 22, OLECMDID_STOP = 23, OLECMDID_HIDETOOLBARS = 24,
  OLECMDID_SETPROGRESSMAX = 25, OLECMDID_SETPROGRESSPOS = 26, OLECMDID_SETPROGRESSTEXT = 27, OLECMDID_SETTITLE = 28,
  OLECMDID_SETDOWNLOADSTATE = 29, OLECMDID_STOPDOWNLOAD = 30, OLECMDID_ONTOOLBARACTIVATED = 31, OLECMDID_FIND = 32,
  OLECMDID_DELETE = 33, OLECMDID_HTTPEQUIV = 34, OLECMDID_HTTPEQUIV_DONE = 35, OLECMDID_ENABLE_INTERACTION = 36,
  OLECMDID_ONUNLOAD = 37, OLECMDID_PROPERTYBAG2 = 38, OLECMDID_PREREFRESH = 39, OLECMDID_SHOWSCRIPTERROR = 40,
  OLECMDID_SHOWMESSAGE = 41, OLECMDID_SHOWFIND = 42, OLECMDID_SHOWPAGESETUP = 43, OLECMDID_SHOWPRINT = 44,
  OLECMDID_CLOSE = 45, OLECMDID_ALLOWUILESSSAVEAS = 46, OLECMDID_DONTDOWNLOADCSS = 47, OLECMDID_UPDATEPAGESTATUS = 48,
  OLECMDID_PRINT2 = 49, OLECMDID_PRINTPREVIEW2 = 50, OLECMDID_SETPRINTTEMPLATE = 51, OLECMDID_GETPRINTTEMPLATE = 52,
  OLECMDID_PAGEACTIONBLOCKED = 55, OLECMDID_PAGEACTIONUIQUERY = 56, OLECMDID_FOCUSVIEWCONTROLS = 57, OLECMDID_FOCUSVIEWCONTROLSQUERY = 58,
  OLECMDID_SHOWPAGEACTIONMENU = 59, OLECMDID_ADDTRAVELENTRY = 60, OLECMDID_UPDATETRAVELENTRY = 61, OLECMDID_UPDATEBACKFORWARDSTATE = 62,
  OLECMDID_OPTICAL_ZOOM = 63, OLECMDID_OPTICAL_GETZOOMRANGE = 64, OLECMDID_WINDOWSTATECHANGED = 65, OLECMDID_ACTIVEXINSTALLSCOPE = 66,
  OLECMDID_UPDATETRAVELENTRY_DATARECOVERY = 67, OLECMDID_SHOWTASKDLG = 68, OLECMDID_POPSTATEEVENT = 69, OLECMDID_VIEWPORT_MODE = 70,
  OLECMDID_LAYOUT_VIEWPORT_WIDTH = 71, OLECMDID_VISUAL_VIEWPORT_EXCLUDE_BOTTOM = 72, OLECMDID_USER_OPTICAL_ZOOM = 73, OLECMDID_PAGEAVAILABLE = 74,
  OLECMDID_GETUSERSCALABLE = 75, OLECMDID_UPDATE_CARET = 76, OLECMDID_ENABLE_VISIBILITY = 77, OLECMDID_MEDIA_PLAYBACK = 78
}
 
typedef IOleCommandTargetLPOLECOMMANDTARGET
 
typedef enum IOleCommandTarget::OLECMDF OLECMDF
 
typedef struct IOleCommandTarget::_tagOLECMD OLECMD
 
typedef struct IOleCommandTarget::_tagOLECMDTEXT OLECMDTEXT
 
typedef enum IOleCommandTarget::OLECMDTEXTF OLECMDTEXTF
 
typedef enum IOleCommandTarget::OLECMDEXECOPT OLECMDEXECOPT
 
typedef enum IOleCommandTarget::OLECMDID OLECMDID
 
- Public Types inherited from IConnectionPointContainer
typedef IConnectionPointContainerPCONNECTIONPOINTCONTAINER
 
typedef IConnectionPointContainerLPCONNECTIONPOINTCONTAINER
 
- Public Attributes inherited from ATL::CWindowImplBaseT< CWindow, CFrameWinTraits >
WNDPROC m_pfnSuperWindowProc
 
- Public Attributes inherited from ATL::CWindowImplRoot< CWindow >
CWndProcThunk m_thunk
 
const _ATL_MSGm_pCurrentMsg
 
DWORD m_dwState
 
- Public Attributes inherited from ATL::CWindow
HWND m_hWnd
 
- Public Attributes inherited from ATL::CComObjectRootBase
LONG m_dwRef
 
- Public Attributes inherited from IShellBrowser
FCT_ADDTOEND typedef LPARAM LPTBBUTTONSB
 
- Public Attributes inherited from IDropTarget
const DWORD MK_ALT = 0x20
 
const DWORD DROPEFFECT_NONE = 0
 
const DWORD DROPEFFECT_COPY = 1
 
const DWORD DROPEFFECT_MOVE = 2
 
const DWORD DROPEFFECT_LINK = 4
 
const DWORD DROPEFFECT_SCROLL = 0x80000000
 
const DWORD DD_DEFSCROLLINSET = 11
 
const DWORD DD_DEFSCROLLDELAY = 50
 
const DWORD DD_DEFSCROLLINTERVAL = 50
 
const DWORD DD_DEFDRAGDELAY = 200
 
const DWORD DD_DEFDRAGMINDIST = 2
 
- Public Attributes inherited from IProfferServiceImpl< CShellBrowser >
IProfferService IProfferService_iface
 
LONG ref
 
- Static Public Attributes inherited from ATL::CWindow
static RECT rcDefault
 

Detailed Description

Definition at line 254 of file shellbrowser.cpp.

Constructor & Destructor Documentation

◆ CShellBrowser()

CShellBrowser::CShellBrowser ( )

Definition at line 707 of file shellbrowser.cpp.

708 {
711  fStatusBar = NULL;
712  fStatusBarVisible = true;
717 }
IStream * fHistoryStream
IOleObject * fHistoryObject
smooth NULL
Definition: ftsmooth.c:416
LPITEMIDLIST fCurrentDirectoryPIDL
IBindCtx * fHistoryBindContext
HWND fCurrentShellViewWindow

◆ ~CShellBrowser()

CShellBrowser::~CShellBrowser ( )

Definition at line 719 of file shellbrowser.cpp.

720 {
721  if (menuDsa)
723 }
BOOL WINAPI DSA_Destroy(HDSA hdsa)
Definition: dsa.c:103

Member Function Documentation

◆ _CancelPendingNavigationAsync()

HRESULT STDMETHODCALLTYPE CShellBrowser::_CancelPendingNavigationAsync ( void  )
virtual

Implements IBrowserService2.

Definition at line 2712 of file shellbrowser.cpp.

2713 {
2714  return E_NOTIMPL;
2715 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ _CancelPendingView()

HRESULT STDMETHODCALLTYPE CShellBrowser::_CancelPendingView ( )
virtual

Implements IBrowserService2.

Definition at line 2717 of file shellbrowser.cpp.

2718 {
2719  return E_NOTIMPL;
2720 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ _CloseAndReleaseToolbars()

HRESULT STDMETHODCALLTYPE CShellBrowser::_CloseAndReleaseToolbars ( BOOL  fClose)
virtual

Implements IBrowserService2.

Definition at line 2854 of file shellbrowser.cpp.

2855 {
2856  return E_NOTIMPL;
2857 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ _DisableModeless()

HRESULT STDMETHODCALLTYPE CShellBrowser::_DisableModeless ( )
virtual

Implements IBrowserService2.

Definition at line 2732 of file shellbrowser.cpp.

2733 {
2734  return E_NOTIMPL;
2735 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ _ExecChildren()

HRESULT STDMETHODCALLTYPE CShellBrowser::_ExecChildren ( IUnknown punkBar,
BOOL  fBroadcast,
const GUID pguidCmdGroup,
DWORD  nCmdID,
DWORD  nCmdexecopt,
VARIANTARG pvarargIn,
VARIANTARG pvarargOut 
)
virtual

Implements IBrowserService2.

Definition at line 2752 of file shellbrowser.cpp.

2754 {
2755  return E_NOTIMPL;
2756 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ _FindTBar()

UINT STDMETHODCALLTYPE CShellBrowser::_FindTBar ( IUnknown punkSrc)
virtual

Implements IBrowserService2.

Definition at line 2870 of file shellbrowser.cpp.

2871 {
2872  return 0;
2873 }

◆ _get_itbLastFocus()

UINT STDMETHODCALLTYPE CShellBrowser::_get_itbLastFocus ( )
virtual

Implements IBrowserService2.

Definition at line 2779 of file shellbrowser.cpp.

2780 {
2781  return 0;
2782 }

◆ _GetBorderDWHelper()

HRESULT STDMETHODCALLTYPE CShellBrowser::_GetBorderDWHelper ( IUnknown punkSrc,
LPRECT  lprectBorder,
BOOL  bUseHmonitor 
)
virtual

Implements IBrowserService2.

Definition at line 2894 of file shellbrowser.cpp.

2895 {
2896  return E_NOTIMPL;
2897 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ _GetEffectiveClientArea()

HRESULT STDMETHODCALLTYPE CShellBrowser::_GetEffectiveClientArea ( LPRECT  lprectBorder,
HMONITOR  hmon 
)
virtual

Implements IBrowserService2.

Definition at line 2814 of file shellbrowser.cpp.

2815 {
2816  return E_NOTIMPL;
2817 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ _GetToolbarCount()

int STDMETHODCALLTYPE CShellBrowser::_GetToolbarCount ( )
virtual

Implements IBrowserService2.

Definition at line 2834 of file shellbrowser.cpp.

2835 {
2836  return 0;
2837 }

◆ _GetToolbarItem()

LPTOOLBARITEM STDMETHODCALLTYPE CShellBrowser::_GetToolbarItem ( int  itb)
virtual

Implements IBrowserService2.

Definition at line 2839 of file shellbrowser.cpp.

2840 {
2841  return NULL;
2842 }
smooth NULL
Definition: ftsmooth.c:416

◆ _GetViewBorderRect()

HRESULT STDMETHODCALLTYPE CShellBrowser::_GetViewBorderRect ( RECT prc)
virtual

Implements IBrowserService2.

Definition at line 2794 of file shellbrowser.cpp.

2795 {
2796  return E_NOTIMPL;
2797 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ _Initialize()

HRESULT STDMETHODCALLTYPE CShellBrowser::_Initialize ( HWND  hwnd,
IUnknown pauto 
)
virtual

Implements IBrowserService2.

Definition at line 2707 of file shellbrowser.cpp.

2708 {
2709  return E_NOTIMPL;
2710 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ _LoadToolbars()

HRESULT STDMETHODCALLTYPE CShellBrowser::_LoadToolbars ( IStream pstm)
virtual

Implements IBrowserService2.

Definition at line 2849 of file shellbrowser.cpp.

2850 {
2851  return E_NOTIMPL;
2852 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ _MaySaveChanges()

HRESULT STDMETHODCALLTYPE CShellBrowser::_MaySaveChanges ( )
virtual

Implements IBrowserService2.

Definition at line 2722 of file shellbrowser.cpp.

2723 {
2724  return E_NOTIMPL;
2725 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ _NavigateToPidl()

HRESULT STDMETHODCALLTYPE CShellBrowser::_NavigateToPidl ( LPCITEMIDLIST  pidl,
DWORD  grfHLNF,
DWORD  dwFlags 
)
virtual

Definition at line 2737 of file shellbrowser.cpp.

2738 {
2739  return E_NOTIMPL;
2740 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ _OnFocusChange()

HRESULT STDMETHODCALLTYPE CShellBrowser::_OnFocusChange ( UINT  itb)
virtual

Implements IBrowserService2.

Definition at line 2769 of file shellbrowser.cpp.

2770 {
2771  return E_NOTIMPL;
2772 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ _PauseOrResumeView()

HRESULT STDMETHODCALLTYPE CShellBrowser::_PauseOrResumeView ( BOOL  fPaused)
virtual

Implements IBrowserService2.

Definition at line 2727 of file shellbrowser.cpp.

2728 {
2729  return E_NOTIMPL;
2730 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ _put_itbLastFocus()

HRESULT STDMETHODCALLTYPE CShellBrowser::_put_itbLastFocus ( UINT  itbLastFocus)
virtual

Implements IBrowserService2.

Definition at line 2784 of file shellbrowser.cpp.

2785 {
2786  return E_NOTIMPL;
2787 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ _ResizeNextBorder()

HRESULT STDMETHODCALLTYPE CShellBrowser::_ResizeNextBorder ( UINT  itb)
virtual

Implements IBrowserService2.

Definition at line 2804 of file shellbrowser.cpp.

2805 {
2806  return E_NOTIMPL;
2807 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ _ResizeNextBorderHelper()

HRESULT STDMETHODCALLTYPE CShellBrowser::_ResizeNextBorderHelper ( UINT  itb,
BOOL  bUseHmonitor 
)
virtual

Implements IBrowserService2.

Definition at line 2865 of file shellbrowser.cpp.

2866 {
2867  return E_NOTIMPL;
2868 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ _ResizeView()

HRESULT STDMETHODCALLTYPE CShellBrowser::_ResizeView ( )
virtual

Implements IBrowserService2.

Definition at line 2809 of file shellbrowser.cpp.

2810 {
2811  return E_NOTIMPL;
2812 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ _SaveToolbars()

HRESULT STDMETHODCALLTYPE CShellBrowser::_SaveToolbars ( IStream pstm)
virtual

Implements IBrowserService2.

Definition at line 2844 of file shellbrowser.cpp.

2845 {
2846  return E_NOTIMPL;
2847 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ _SendChildren()

HRESULT STDMETHODCALLTYPE CShellBrowser::_SendChildren ( HWND  hwndBar,
BOOL  fBroadcast,
UINT  uMsg,
WPARAM  wParam,
LPARAM  lParam 
)
virtual

Implements IBrowserService2.

Definition at line 2758 of file shellbrowser.cpp.

2760 {
2761  return E_NOTIMPL;
2762 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ _SetFocus()

HRESULT STDMETHODCALLTYPE CShellBrowser::_SetFocus ( LPTOOLBARITEM  ptbi,
HWND  hwnd,
LPMSG  lpMsg 
)
virtual

Implements IBrowserService2.

Definition at line 2875 of file shellbrowser.cpp.

2876 {
2877  return E_NOTIMPL;
2878 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ _SwitchActivationNow()

HRESULT STDMETHODCALLTYPE CShellBrowser::_SwitchActivationNow ( )
virtual

Implements IBrowserService2.

Definition at line 2747 of file shellbrowser.cpp.

2748 {
2749  return E_NOTIMPL;
2750 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ _TryShell2Rename()

HRESULT STDMETHODCALLTYPE CShellBrowser::_TryShell2Rename ( IShellView psv,
LPCITEMIDLIST  pidlNew 
)
virtual

Definition at line 2742 of file shellbrowser.cpp.

2743 {
2744  return E_NOTIMPL;
2745 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ _UIActivateView()

HRESULT STDMETHODCALLTYPE CShellBrowser::_UIActivateView ( UINT  uState)
virtual

Implements IBrowserService2.

Definition at line 2789 of file shellbrowser.cpp.

2790 {
2791  return E_NOTIMPL;
2792 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ _UpdateViewRectSize()

HRESULT STDMETHODCALLTYPE CShellBrowser::_UpdateViewRectSize ( )
virtual

Implements IBrowserService2.

Definition at line 2799 of file shellbrowser.cpp.

2800 {
2801  return E_NOTIMPL;
2802 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ ActivatePendingView()

HRESULT STDMETHODCALLTYPE CShellBrowser::ActivatePendingView ( )
virtual

Implements IBrowserService2.

Definition at line 2636 of file shellbrowser.cpp.

2637 {
2638  return E_NOTIMPL;
2639 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ AllowViewResize()

HRESULT STDMETHODCALLTYPE CShellBrowser::AllowViewResize ( BOOL  f)
virtual

Implements IBrowserService2.

Definition at line 2682 of file shellbrowser.cpp.

2683 {
2684  return E_NOTIMPL;
2685 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ BrowseObject()

HRESULT STDMETHODCALLTYPE CShellBrowser::BrowseObject ( LPCITEMIDLIST  pidl,
UINT  wFlags 
)
virtual

Definition at line 2238 of file shellbrowser.cpp.

2239 {
2240  if ((wFlags & SBSP_EXPLOREMODE) != NULL)
2241  ShowBand(CLSID_ExplorerBand, true);
2242 
2244  if (fTravelLog)
2246  return BrowseToPIDL(pidl, flags);
2247 }
static const long BTP_UPDATE_NEXT_HISTORY
static const long BTP_UPDATE_CUR_HISTORY
smooth NULL
Definition: ftsmooth.c:416
HRESULT BrowseToPIDL(LPCITEMIDLIST pidl, long flags)
GLbitfield flags
Definition: glext.h:7161
_In_ DWORD _Out_ _In_ WORD wFlags
Definition: wincon.h:534
HRESULT ShowBand(const CLSID &classID, bool vertical)
CComPtr< ITravelLog > fTravelLog

Referenced by Navigate().

◆ BrowseToPath()

HRESULT CShellBrowser::BrowseToPath ( IShellFolder newShellFolder,
LPCITEMIDLIST  absolutePIDL,
FOLDERSETTINGS folderSettings,
long  flags 
)

Definition at line 913 of file shellbrowser.cpp.

915 {
916  CComPtr<IShellFolder> saveCurrentShellFolder;
917  CComPtr<IShellView> saveCurrentShellView;
918  CComPtr<IShellView> newShellView;
919  CComPtr<ITravelLog> travelLog;
920  HWND newShellViewWindow;
921  BOOL windowUpdateIsLocked;
922  RECT shellViewWindowBounds;
923  HWND previousView;
924  HCURSOR saveCursor;
925  wchar_t newTitle[MAX_PATH];
926  SHGDNF nameFlags;
927  HRESULT hResult;
928 
929  if (newShellFolder == NULL)
930  return E_INVALIDARG;
931 
932  hResult = GetTravelLog(&travelLog);
933  if (FAILED_UNEXPECTEDLY(hResult))
934  return hResult;
935 
936  // update history
938  {
939  if (travelLog->CountEntries(static_cast<IDropTarget *>(this)) > 0)
940  hResult = travelLog->UpdateEntry(static_cast<IDropTarget *>(this), FALSE);
941  // what to do with error? Do we want to halt browse because state save failed?
942  }
943 
944  if (fCurrentShellView)
945  {
946  fCurrentShellView->UIActivate(SVUIA_DEACTIVATE);
947  }
948 
949  // create view object
950  hResult = newShellFolder->CreateViewObject(m_hWnd, IID_PPV_ARG(IShellView, &newShellView));
951  if (FAILED_UNEXPECTEDLY(hResult))
952  return hResult;
953  previousView = fCurrentShellViewWindow;
954 
955  // enter updating section
956  saveCursor = SetCursor(LoadCursor(NULL, IDC_WAIT));
957  windowUpdateIsLocked = LockWindowUpdate(TRUE);
958  if (fCurrentShellView != NULL)
960 
961  // set site
962  hResult = IUnknown_SetSite(newShellView, static_cast<IDropTarget *>(this));
963 
964  // update folder and view
965  saveCurrentShellFolder = fCurrentShellFolder;
966  saveCurrentShellView = fCurrentShellView;
967  fCurrentShellFolder = newShellFolder;
968  fCurrentShellView = newShellView;
969 
970  // get boundary
971  if (previousView != NULL)
972  ::GetWindowRect(previousView, &shellViewWindowBounds);
973  else
974  ZeroMemory(&shellViewWindowBounds, sizeof(shellViewWindowBounds));
975  ::MapWindowPoints(0, m_hWnd, reinterpret_cast<POINT *>(&shellViewWindowBounds), 2);
976 
977  // update current pidl
979  fCurrentDirectoryPIDL = ILClone(absolutePIDL);
980 
981  // create view window
982  hResult = newShellView->CreateViewWindow(saveCurrentShellView, folderSettings,
983  this, &shellViewWindowBounds, &newShellViewWindow);
984  if (FAILED_UNEXPECTEDLY(hResult) || newShellViewWindow == NULL)
985  {
986  fCurrentShellView = saveCurrentShellView;
987  fCurrentShellFolder = saveCurrentShellFolder;
989  if (windowUpdateIsLocked)
991  SetCursor(saveCursor);
992  return hResult;
993  }
994 
995  // update view window
996  if (saveCurrentShellView != NULL)
997  saveCurrentShellView->DestroyViewWindow();
998  fCurrentShellViewWindow = newShellViewWindow;
999 
1000  if (previousView == NULL)
1001  {
1002  RepositionBars();
1003  }
1004 
1005  // no use
1006  saveCurrentShellView.Release();
1007  saveCurrentShellFolder.Release();
1008 
1009  hResult = newShellView->UIActivate(SVUIA_ACTIVATE_FOCUS);
1010 
1011  // leave updating section
1012  if (windowUpdateIsLocked)
1014  SetCursor(saveCursor);
1015 
1016  // update history
1018  {
1019  hResult = travelLog->AddEntry(static_cast<IDropTarget *>(this), FALSE);
1020  hResult = travelLog->UpdateEntry(static_cast<IDropTarget *>(this), FALSE);
1021  }
1022 
1023  // completed
1024  nameFlags = SHGDN_FORADDRESSBAR | SHGDN_FORPARSING;
1025  hResult = IEGetNameAndFlags(fCurrentDirectoryPIDL, nameFlags, newTitle,
1026  sizeof(newTitle) / sizeof(wchar_t), NULL);
1027  if (SUCCEEDED(hResult))
1028  {
1029  FireNavigateComplete(newTitle);
1030  }
1031  else
1032  {
1033  FireNavigateComplete(L"ERROR");
1034  }
1035 
1037  nameFlags = SHGDN_FORADDRESSBAR | SHGDN_FORPARSING;
1038  else
1039  nameFlags = SHGDN_FORADDRESSBAR;
1040  hResult = IEGetNameAndFlags(fCurrentDirectoryPIDL, nameFlags, newTitle,
1041  sizeof(newTitle) / sizeof(wchar_t), NULL);
1042  if (SUCCEEDED(hResult))
1043  {
1044  SetWindowText(newTitle);
1045 
1046  LPCITEMIDLIST pidlChild;
1047  INT index, indexOpen;
1048  HIMAGELIST himlSmall, himlLarge;
1049 
1051  hResult = SHBindToParent(absolutePIDL, IID_PPV_ARG(IShellFolder, &sf), &pidlChild);
1052  if (SUCCEEDED(hResult))
1053  {
1054  index = SHMapPIDLToSystemImageListIndex(sf, pidlChild, &indexOpen);
1055 
1056  Shell_GetImageLists(&himlLarge, &himlSmall);
1057 
1058  HICON icSmall = ImageList_GetIcon(himlSmall, indexOpen, 0);
1059  HICON icLarge = ImageList_GetIcon(himlLarge, indexOpen, 0);
1060 
1061  /* Hack to make it possible to release the old icons */
1062  /* Something seems to go wrong with WM_SETICON */
1063  HICON oldSmall = (HICON)SendMessage(WM_GETICON, ICON_SMALL, 0);
1064  HICON oldLarge = (HICON)SendMessage(WM_GETICON, ICON_BIG, 0);
1065 
1066  SendMessage(WM_SETICON, ICON_SMALL, reinterpret_cast<LPARAM>(icSmall));
1067  SendMessage(WM_SETICON, ICON_BIG, reinterpret_cast<LPARAM>(icLarge));
1068 
1069  DestroyIcon(oldSmall);
1070  DestroyIcon(oldLarge);
1071  }
1072  }
1073 
1075  hResult = UpdateForwardBackState();
1076  hResult = UpdateUpState();
1077  return S_OK;
1078 }
int MapWindowPoints(HWND hWndTo, LPPOINT lpPoint, UINT nCount) const
Definition: atlwin.h:922
static HICON
Definition: imagelist.c:84
void WINAPI ILFree(LPITEMIDLIST pidl)
Definition: pidl.c:925
static const long BTP_UPDATE_NEXT_HISTORY
BOOL WINAPI DestroyIcon(_In_ HICON)
Definition: cursoricon.c:2022
#define TRUE
Definition: types.h:120
const ITEMIDLIST UNALIGNED * LPCITEMIDLIST
Definition: shtypes.idl:42
#define WM_SETREDRAW
Definition: winuser.h:1598
#define ZeroMemory
Definition: winbase.h:1648
CComPtr< IShellFolder > fCurrentShellFolder
HICON HCURSOR
Definition: windef.h:299
BOOL SetWindowText(LPCTSTR lpszString)
Definition: atlwin.h:1232
CABINETSTATE fCabinetState
#define IID_PPV_ARG(Itype, ppType)
int32_t INT
Definition: typedefs.h:58
HRESULT UpdateUpState()
#define ICON_SMALL
Definition: tnclass.cpp:48
HRESULT FireNavigateComplete(const wchar_t *newDirectory)
#define FALSE
Definition: types.h:117
unsigned int BOOL
Definition: ntddk_ex.h:94
HRESULT WINAPI IUnknown_SetSite(IUnknown *obj, IUnknown *site)
Definition: ordinal.c:1404
static const long BTP_UPDATE_CUR_HISTORY
BOOL GetWindowRect(LPRECT lpRect) const
Definition: atlwin.h:764
#define E_INVALIDARG
Definition: ddrawi.h:101
smooth NULL
Definition: ftsmooth.c:416
#define IDC_WAIT
Definition: winuser.h:684
GLuint index
Definition: glext.h:6031
long IEGetNameAndFlags(LPITEMIDLIST pidl, SHGDNF uFlags, LPWSTR pszBuf, UINT cchBuf, SFGAOF *rgfInOut)
HICON WINAPI ImageList_GetIcon(HIMAGELIST himl, INT i, UINT fStyle)
Definition: imagelist.c:1963
LONG HRESULT
Definition: typedefs.h:79
#define FAILED_UNEXPECTEDLY(hr)
Definition: shellutils.h:71
#define MAX_PATH
Definition: compat.h:34
BOOL fFullPathTitle
Definition: shlobj.h:2204
GLbitfield flags
Definition: glext.h:7161
#define index(s, c)
Definition: various.h:29
CComPtr< IShellView > fCurrentShellView
static const WCHAR L[]
Definition: oid.c:1250
BOOL LockWindowUpdate(BOOL bLock=TRUE)
Definition: atlwin.h:914
HWND m_hWnd
Definition: atlwin.h:268
LPITEMIDLIST fCurrentDirectoryPIDL
#define LoadCursor
Definition: winuser.h:5787
BOOL WINAPI Shell_GetImageLists(HIMAGELIST *lpBigList, HIMAGELIST *lpSmallList)
Definition: iconcache.cpp:706
#define S_OK
Definition: intsafe.h:51
HRESULT CreateViewObject([in] HWND hwndOwner, [in] REFIID riid, [out, iid_is(riid)] void **ppvOut)
HRESULT WINAPI SHBindToParent(LPCITEMIDLIST pidl, REFIID riid, LPVOID *ppv, LPCITEMIDLIST *ppidlLast)
Definition: pidl.c:1337
HCURSOR WINAPI SetCursor(_In_opt_ HCURSOR)
LPITEMIDLIST WINAPI ILClone(LPCITEMIDLIST pidl)
Definition: pidl.c:228
HRESULT FireCommandStateChangeAll()
void Release()
Definition: atlcomcli.h:140
HWND fCurrentShellViewWindow
int WINAPI SHMapPIDLToSystemImageListIndex(IShellFolder *sh, LPCITEMIDLIST pidl, int *pIndex)
Definition: iconcache.cpp:789
LRESULT SendMessage(UINT message, WPARAM wParam=0, LPARAM lParam=0)
Definition: atlwin.h:1048
HRESULT UpdateForwardBackState()
#define SUCCEEDED(hr)
Definition: intsafe.h:49
#define ICON_BIG
Definition: tnclass.cpp:51
virtual HRESULT STDMETHODCALLTYPE GetTravelLog(ITravelLog **pptl)

Referenced by BrowseToPIDL().

◆ BrowseToPIDL()

HRESULT CShellBrowser::BrowseToPIDL ( LPCITEMIDLIST  pidl,
long  flags 
)

Definition at line 800 of file shellbrowser.cpp.

801 {
802  CComPtr<IShellFolder> newFolder;
803  FOLDERSETTINGS newFolderSettings;
804  HRESULT hResult;
805 
806  // called by shell view to browse to new folder
807  // also called by explorer band to navigate to new folder
808  hResult = SHBindToFolder(pidl, &newFolder);
809  if (FAILED_UNEXPECTEDLY(hResult))
810  return hResult;
811 
812  newFolderSettings.ViewMode = FVM_ICON;
813  newFolderSettings.fFlags = 0;
814  hResult = BrowseToPath(newFolder, pidl, &newFolderSettings, flags);
815  if (FAILED_UNEXPECTEDLY(hResult))
816  return hResult;
817  return S_OK;
818 }
HRESULT WINAPI SHBindToFolder(LPCITEMIDLIST path, IShellFolder **newFolder)
HRESULT BrowseToPath(IShellFolder *newShellFolder, LPCITEMIDLIST absolutePIDL, FOLDERSETTINGS *folderSettings, long flags)
LONG HRESULT
Definition: typedefs.h:79
#define FAILED_UNEXPECTEDLY(hr)
Definition: shellutils.h:71
GLbitfield flags
Definition: glext.h:7161
#define S_OK
Definition: intsafe.h:51

Referenced by BrowseObject(), LoadHistory(), Navigate2(), and NavigateToParent().

◆ BuildExplorerBandCategory()

HRESULT CShellBrowser::BuildExplorerBandCategory ( HMENU  hBandsMenu,
CATID  category,
DWORD  dwPos,
UINT nbFound 
)

Definition at line 1763 of file shellbrowser.cpp.

1764 {
1765  HRESULT hr;
1766  CComPtr<IEnumGUID> pEnumGUID;
1767  WCHAR wszBandName[MAX_PATH];
1768  WCHAR wszBandGUID[MAX_PATH];
1769  WCHAR wRegKey[MAX_PATH];
1770  UINT cBands;
1771  DWORD dwRead;
1772  DWORD dwDataSize;
1773  GUID iter;
1774  MenuBandInfo mbi;
1775 
1776  mbi.fVertical = IsEqualGUID(category, CATID_InfoBand);
1777  cBands = 0;
1778  hr = SHEnumClassesOfCategories(1, &category, 0, NULL, &pEnumGUID);
1779  if (FAILED_UNEXPECTEDLY(hr))
1780  {
1781  return hr;
1782  }
1783  do
1784  {
1785  pEnumGUID->Next(1, &iter, &dwRead);
1786  if (dwRead)
1787  {
1788  // Get the band name
1789  if (IsBuiltinBand(iter))
1790  continue;
1791  if (!StringFromGUID2(iter, wszBandGUID, MAX_PATH))
1792  continue;
1793  StringCchPrintfW(wRegKey, MAX_PATH, L"CLSID\\%s", wszBandGUID);
1794  dwDataSize = MAX_PATH;
1795  SHGetValue(HKEY_CLASSES_ROOT, wRegKey, NULL, NULL, wszBandName, &dwDataSize);
1796 
1797  mbi.barGuid = iter;
1798  InsertMenu(hBandsMenu, dwPos + cBands, MF_BYPOSITION, IDM_EXPLORERBAND_BEGINCUSTOM + DSA_GetItemCount(menuDsa), wszBandName);
1799  DSA_AppendItem(menuDsa, &mbi);
1800  cBands++;
1801  }
1802  }
1803  while (dwRead > 0);
1804  if (nbFound)
1805  *nbFound = cBands;
1806  return S_OK;
1807 }
HRESULT hr
Definition: shlfolder.c:183
#define InsertMenu
Definition: winuser.h:5778
#define DSA_AppendItem(hdsa, pitem)
Definition: commctrl.h:4823
#define MF_BYPOSITION
Definition: winuser.h:203
HRESULT WINAPI SHEnumClassesOfCategories(ULONG cImplemented, CATID *pImplemented, ULONG cRequired, CATID *pRequired, IEnumGUID **out)
smooth NULL
Definition: ftsmooth.c:416
#define IDM_EXPLORERBAND_BEGINCUSTOM
Definition: resource.h:78
#define DSA_GetItemCount(hdsa)
Definition: commctrl.h:4822
BOOL IsBuiltinBand(CLSID &bandID)
#define SHGetValue
Definition: shlwapi.h:70
__wchar_t WCHAR
Definition: xmlstorage.h:180
LONG HRESULT
Definition: typedefs.h:79
#define FAILED_UNEXPECTEDLY(hr)
Definition: shellutils.h:71
#define MAX_PATH
Definition: compat.h:34
INT WINAPI StringFromGUID2(REFGUID id, LPOLESTR str, INT cmax)
Definition: compobj.c:2434
unsigned long DWORD
Definition: ntddk_ex.h:95
static const WCHAR L[]
Definition: oid.c:1250
#define S_OK
Definition: intsafe.h:51
STRSAFEAPI StringCchPrintfW(STRSAFE_LPWSTR pszDest, size_t cchDest, STRSAFE_LPCWSTR pszFormat,...)
Definition: strsafe.h:530
unsigned int UINT
Definition: ndis.h:50
BOOL WINAPI IsEqualGUID(REFGUID rguid1, REFGUID rguid2)
Definition: compobj.c:4112
#define HKEY_CLASSES_ROOT
Definition: winreg.h:10

Referenced by BuildExplorerBandMenu().

◆ BuildExplorerBandMenu()

HRESULT CShellBrowser::BuildExplorerBandMenu ( )

Definition at line 1739 of file shellbrowser.cpp.

1740 {
1741  HMENU hBandsMenu;
1742  UINT nbFound;
1743 
1745  if (!hBandsMenu)
1746  {
1747  OutputDebugString(L"No menu !\n");
1748  return E_FAIL;
1749  }
1751  BuildExplorerBandCategory(hBandsMenu, CATID_InfoBand, 4, NULL);
1752  BuildExplorerBandCategory(hBandsMenu, CATID_CommBand, 20, &nbFound);
1753  if (!nbFound)
1754  {
1755  // Remove separator
1757  }
1758  // Remove media menu since XP does it (according to API Monitor)
1760  return S_OK;
1761 }
#define MF_BYCOMMAND
Definition: winuser.h:202
#define IDM_EXPLORERBAR_SEPARATOR
Definition: resource.h:44
#define OutputDebugString
Definition: winbase.h:3730
#define E_FAIL
Definition: ddrawi.h:102
#define IDM_VIEW_EXPLORERBAR
Definition: resource.h:38
HRESULT BuildExplorerBandCategory(HMENU hBandsMenu, CATID category, DWORD dwPos, UINT *nbFound)
smooth NULL
Definition: ftsmooth.c:416
HMENU WINAPI SHGetMenuFromID(HMENU hMenu, UINT uID)
Definition: ordinal.c:1990
BOOL WINAPI DSA_DeleteAllItems(HDSA hdsa)
Definition: dsa.c:367
BOOL WINAPI DeleteMenu(_In_ HMENU, _In_ UINT, _In_ UINT)
static const WCHAR L[]
Definition: oid.c:1250
#define S_OK
Definition: intsafe.h:51
unsigned int UINT
Definition: ndis.h:50
#define IDM_EXPLORERBAR_MEDIA
Definition: resource.h:41
static const CLSID *static CLSID *static const GUID VARIANT VARIANT *static IServiceProvider DWORD *static HMENU
Definition: ordinal.c:60

Referenced by SetMenuSB().

◆ CacheOLEServer()

HRESULT STDMETHODCALLTYPE CShellBrowser::CacheOLEServer ( IOleObject pole)
virtual

Implements IBrowserService.

Definition at line 2554 of file shellbrowser.cpp.

2555 {
2556  return E_NOTIMPL;
2557 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ CanNavigateNow()

HRESULT STDMETHODCALLTYPE CShellBrowser::CanNavigateNow ( void  )
virtual

Implements IBrowserService.

Definition at line 2499 of file shellbrowser.cpp.

2500 {
2501  return E_NOTIMPL;
2502 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ ClientToWindow()

HRESULT STDMETHODCALLTYPE CShellBrowser::ClientToWindow ( int pcx,
int pcy 
)
virtual

Definition at line 3067 of file shellbrowser.cpp.

3068 {
3069  return E_NOTIMPL;
3070 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ ContextSensitiveHelp()

HRESULT STDMETHODCALLTYPE CShellBrowser::ContextSensitiveHelp ( BOOL  fEnterMode)
virtual

Implements IOleWindow.

Definition at line 2150 of file shellbrowser.cpp.

2151 {
2152  return E_NOTIMPL;
2153 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ CreateBrowserPropSheetExt()

HRESULT STDMETHODCALLTYPE CShellBrowser::CreateBrowserPropSheetExt ( REFIID  riid,
void **  ppv 
)
virtual

Implements IBrowserService2.

Definition at line 2647 of file shellbrowser.cpp.

2648 {
2649  return E_NOTIMPL;
2650 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ CreateViewWindow()

HRESULT STDMETHODCALLTYPE CShellBrowser::CreateViewWindow ( IShellView psvNew,
IShellView psvOld,
LPRECT  prcView,
HWND phwnd 
)
virtual

Implements IBrowserService2.

Definition at line 2641 of file shellbrowser.cpp.

2643 {
2644  return E_NOTIMPL;
2645 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ DisplayParseError()

HRESULT STDMETHODCALLTYPE CShellBrowser::DisplayParseError ( HRESULT  hres,
LPCWSTR  pwszPath 
)
virtual

Implements IBrowserService.

Definition at line 2454 of file shellbrowser.cpp.

2455 {
2456  return E_NOTIMPL;
2457 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ DoFolderOptions()

HRESULT CShellBrowser::DoFolderOptions ( )

Definition at line 1317 of file shellbrowser.cpp.

1318 {
1319  CComPtr<IShellPropSheetExt> folderOptionsSheet;
1320  PROPSHEETHEADER m_PropSheet;
1322 // CComPtr<IGlobalFolderSettings> globalSettings;
1323 // SHELLSTATE2 shellState;
1324  HRESULT hResult;
1325 
1326  memset(m_psp, 0, sizeof(m_psp));
1327  memset(&m_PropSheet, 0, sizeof(m_PropSheet));
1328 
1329  // create sheet object
1330  hResult = CoCreateInstance(CLSID_ShellFldSetExt, NULL, CLSCTX_INPROC_SERVER,
1331  IID_PPV_ARG(IShellPropSheetExt, &folderOptionsSheet));
1332  if (FAILED_UNEXPECTEDLY(hResult))
1333  return E_FAIL;
1334 
1335  // must set site in order for Apply to all Folders on Advanced page to be enabled
1336  hResult = IUnknown_SetSite(folderOptionsSheet, static_cast<IDispatch *>(this));
1337  m_PropSheet.phpage = m_psp;
1338 
1339 #if 0
1340  hResult = CoCreateInstance(CLSID_GlobalFolderSettings, NULL, CLSCTX_INPROC_SERVER, IID_PPV_ARG(IGlobalFolderSettings, &globalSettings));
1341  if (FAILED_UNEXPECTEDLY(hResult))
1342  return E_FAIL;
1343  hResult = globalSettings->Get(&shellState, sizeof(shellState));
1344  if (FAILED_UNEXPECTEDLY(hResult))
1345  return E_FAIL;
1346 #endif
1347 
1348  // add pages
1349  hResult = folderOptionsSheet->AddPages(AddFolderOptionsPage, reinterpret_cast<LPARAM>(&m_PropSheet));
1350  if (FAILED_UNEXPECTEDLY(hResult))
1351  return E_FAIL;
1352 
1353 // CORE-11140 : Disabled this bit, because it prevents the folder options from showing.
1354 // It returns 'E_NOTIMPL'
1355 #if 0
1356  if (fCurrentShellView != NULL)
1357  {
1358  hResult = fCurrentShellView->AddPropertySheetPages(
1359  0, AddFolderOptionsPage, reinterpret_cast<LPARAM>(&m_PropSheet));
1360  if (FAILED_UNEXPECTEDLY(hResult))
1361  return E_FAIL;
1362  }
1363 #endif
1364 
1365  // show sheet
1366  CStringW strFolderOptions(MAKEINTRESOURCEW(IDS_FOLDER_OPTIONS));
1367  m_PropSheet.dwSize = sizeof(PROPSHEETHEADER);
1368  m_PropSheet.dwFlags = 0;
1369  m_PropSheet.hwndParent = m_hWnd;
1370  m_PropSheet.hInstance = _AtlBaseModule.GetResourceInstance();
1371  m_PropSheet.pszCaption = strFolderOptions;
1372  m_PropSheet.nStartPage = 0;
1373  PropertySheet(&m_PropSheet);
1374  return S_OK;
1375 }
#define IID_PPV_ARG(Itype, ppType)
#define E_FAIL
Definition: ddrawi.h:102
struct _PSP * HPROPSHEETPAGE
Definition: mstask.idl:90
HRESULT WINAPI IUnknown_SetSite(IUnknown *obj, IUnknown *site)
Definition: ordinal.c:1404
smooth NULL
Definition: ftsmooth.c:416
#define PROPSHEETHEADER
Definition: prsht.h:392
LONG HRESULT
Definition: typedefs.h:79
#define FAILED_UNEXPECTEDLY(hr)
Definition: shellutils.h:71
CComPtr< IShellView > fCurrentShellView
HWND m_hWnd
Definition: atlwin.h:268
#define IDS_FOLDER_OPTIONS
Definition: resource.h:129
HRESULT WINAPI DECLSPEC_HOTPATCH CoCreateInstance(REFCLSID rclsid, LPUNKNOWN pUnkOuter, DWORD dwClsContext, REFIID iid, LPVOID *ppv)
Definition: compobj.c:3325
static const unsigned int folderOptionsPageCountMax
#define S_OK
Definition: intsafe.h:51
BOOL CALLBACK AddFolderOptionsPage(HPROPSHEETPAGE thePage, LPARAM lParam)
#define PropertySheet
Definition: prsht.h:400
#define MAKEINTRESOURCEW(i)
Definition: winuser.h:582
#define memset(x, y, z)
Definition: compat.h:39

Referenced by Exec(), and OnFolderOptions().

◆ DragEnter()

HRESULT STDMETHODCALLTYPE CShellBrowser::DragEnter ( IDataObject pDataObj,
DWORD  grfKeyState,
POINTL  pt,
DWORD pdwEffect 
)
virtual

Implements IDropTarget.

Definition at line 2321 of file shellbrowser.cpp.

2323 {
2324  return E_NOTIMPL;
2325 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ DragLeave()

HRESULT STDMETHODCALLTYPE CShellBrowser::DragLeave ( void  )
virtual

Implements IDropTarget.

Definition at line 2332 of file shellbrowser.cpp.

2333 {
2334  return E_NOTIMPL;
2335 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ DragOver()

HRESULT STDMETHODCALLTYPE CShellBrowser::DragOver ( DWORD  grfKeyState,
POINTL  pt,
DWORD pdwEffect 
)
virtual

Implements IDropTarget.

Definition at line 2327 of file shellbrowser.cpp.

2328 {
2329  return E_NOTIMPL;
2330 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ Drop()

HRESULT STDMETHODCALLTYPE CShellBrowser::Drop ( IDataObject pDataObj,
DWORD  grfKeyState,
POINTL  pt,
DWORD pdwEffect 
)
virtual

Implements IDropTarget.

Definition at line 2337 of file shellbrowser.cpp.

2339 {
2340  return E_NOTIMPL;
2341 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ EnableModelessSB()

HRESULT STDMETHODCALLTYPE CShellBrowser::EnableModelessSB ( BOOL  fEnable)
virtual

Implements IShellBrowser.

Definition at line 2226 of file shellbrowser.cpp.

2227 {
2228  return E_NOTIMPL;
2229 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ Exec()

HRESULT STDMETHODCALLTYPE CShellBrowser::Exec ( const GUID pguidCmdGroup,
DWORD  nCmdID,
DWORD  nCmdexecopt,
VARIANT pvaIn,
VARIANT pvaOut 
)
virtual

Implements IOleCommandTarget.

Definition at line 2000 of file shellbrowser.cpp.

2002 {
2003  HRESULT hResult;
2004 
2005  if (!pguidCmdGroup)
2006  {
2007  TRACE("Unhandled null CGID %d %d %p %p\n", nCmdID, nCmdexecopt, pvaIn, pvaOut);
2008  return E_NOTIMPL;
2009  }
2010  if (IsEqualIID(*pguidCmdGroup, CGID_Explorer))
2011  {
2012  switch (nCmdID)
2013  {
2014  case 0x1c: //Toggle Search
2015  case 0x1d: //Toggle History
2016  case 0x1e: //Toggle Favorites
2017  case 0x23: //Toggle Folders
2018  const GUID* pclsid;
2019  if (nCmdID == 0x1c) pclsid = &CLSID_FileSearchBand;
2020  else if (nCmdID == 0x1d) pclsid = &CLSID_SH_HistBand;
2021  else if (nCmdID == 0x1e) pclsid = &CLSID_SH_FavBand;
2022  else pclsid = &CLSID_ExplorerBand;
2023 
2024  if (IsEqualCLSID(*pclsid, fCurrentVertBar))
2025  {
2026  hResult = IUnknown_ShowDW(fClientBars[BIVerticalBaseBar].clientBar.p, FALSE);
2027  memset(&fCurrentVertBar, 0, sizeof(fCurrentVertBar));
2029  }
2030  else
2031  {
2032  hResult = ShowBand(*pclsid, true);
2033  }
2034  return S_OK;
2035  case 0x22:
2036  //Sent when a band closes
2037  if (V_VT(pvaIn) != VT_UNKNOWN)
2038  return E_INVALIDARG;
2039 
2040  if (IUnknownIsEqual(V_UNKNOWN(pvaIn), fClientBars[BIVerticalBaseBar].clientBar.p))
2041  {
2042  memset(&fCurrentVertBar, 0, sizeof(fCurrentVertBar));
2044  }
2045  return S_OK;
2046  case 0x27:
2047  if (nCmdexecopt == 1)
2048  {
2049  // pvaIn is a VT_UNKNOWN with a band that is being hidden
2050  }
2051  else
2052  {
2053  // update zones part of the status bar
2054  }
2055  return S_OK;
2056  case 0x35: // don't do this, and the internet toolbar doesn't create a menu band
2057  V_VT(pvaOut) = VT_INT_PTR;
2058  V_INTREF(pvaOut) = reinterpret_cast<INT *>(
2059  LoadMenu(_AtlBaseModule.GetResourceInstance(), MAKEINTRESOURCE(IDM_CABINET_MAINMENU)));
2060  return S_OK;
2061  case 0x38:
2062  // indicate if this cabinet was opened as a browser
2063  return S_FALSE;
2064  default:
2065  return E_NOTIMPL;
2066  }
2067  }
2068  else if (IsEqualIID(*pguidCmdGroup, CGID_InternetButtons))
2069  {
2070  switch (nCmdID)
2071  {
2072  case 0x23:
2073  // placeholder
2074  return S_OK;
2075  }
2076  }
2077  else if (IsEqualIID(*pguidCmdGroup, CGID_Theater))
2078  {
2079  switch (nCmdID)
2080  {
2081  case 6:
2082  // what is theater mode and why do we receive this?
2083  return E_NOTIMPL;
2084  }
2085  }
2086  else if (IsEqualIID(*pguidCmdGroup, CGID_MenuBand))
2087  {
2088  switch (nCmdID)
2089  {
2090  case 14:
2091  // initialize favorites menu
2092  return S_OK;
2093  }
2094  }
2095  else if (IsEqualIID(*pguidCmdGroup, CGID_ShellDocView))
2096  {
2097  switch (nCmdID)
2098  {
2099  case 0x12:
2100  // refresh on toolbar clicked
2101  return S_OK;
2102  case 0x26:
2103  // called for unknown bands ?
2104  return S_OK;
2105  case 0x4d:
2106  // tell the view if it should hide the task pane or not
2107  return (fClientBars[BIVerticalBaseBar].clientBar.p == NULL) ? S_FALSE : S_OK;
2108  }
2109  }
2110  else if (IsEqualIID(*pguidCmdGroup, CGID_ShellBrowser))
2111  {
2112  switch (nCmdID)
2113  {
2114  case 40994:
2115  return NavigateToParent();
2116  }
2117  }
2118  else if (IsEqualIID(*pguidCmdGroup, CGID_IExplorerToolbar))
2119  {
2120  switch (nCmdID)
2121  {
2122  case 0x7063:
2123  return DoFolderOptions();
2124  }
2125  }
2126  else if (IsEqualIID(*pguidCmdGroup, CGID_DefView))
2127  {
2128  switch (nCmdID)
2129  {
2130  case 1:
2131  // Reset All Folders option in Folder Options
2132  break;
2133  }
2134  }
2135  else
2136  {
2137  return E_NOTIMPL;
2138  }
2139  return E_NOTIMPL;
2140 }
#define MAKEINTRESOURCE
Definition: winuser.h:591
#define CGID_InternetButtons
Definition: shlguid.h:243
HRESULT DoFolderOptions()
barInfo fClientBars[3]
bool IUnknownIsEqual(IUnknown *int1, IUnknown *int2)
HRESULT NavigateToParent()
static const int BIVerticalBaseBar
#define FALSE
Definition: types.h:117
#define S_FALSE
Definition: winerror.h:2357
#define E_INVALIDARG
Definition: ddrawi.h:101
smooth NULL
Definition: ftsmooth.c:416
#define CGID_MenuBand
HRESULT IUnknown_ShowDW(IUnknown *punk, BOOL fShow)
#define V_INTREF(A)
Definition: oleauto.h:252
#define IDM_CABINET_MAINMENU
Definition: resource.h:88
#define TRACE(s)
Definition: solgame.cpp:4
#define CGID_IExplorerToolbar
LONG HRESULT
Definition: typedefs.h:79
#define V_VT(A)
Definition: oleauto.h:211
#define V_UNKNOWN(A)
Definition: oleauto.h:281
#define S_OK
Definition: intsafe.h:51
HRESULT ShowBand(const CLSID &classID, bool vertical)
#define LoadMenu
Definition: winuser.h:5792
HRESULT FireCommandStateChangeAll()
#define E_NOTIMPL
Definition: ddrawi.h:99
#define memset(x, y, z)
Definition: compat.h:39
#define IsEqualCLSID(rclsid1, rclsid2)
Definition: guiddef.h:96
#define IsEqualIID(riid1, riid2)
Definition: guiddef.h:95

◆ ExecWB()

HRESULT STDMETHODCALLTYPE CShellBrowser::ExecWB ( OLECMDID  cmdID,
OLECMDEXECOPT  cmdexecopt,
VARIANT pvaIn,
VARIANT pvaOut 
)
virtual

Definition at line 3192 of file shellbrowser.cpp.

3194 {
3195  return E_NOTIMPL;
3196 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ FindWindowByIndex()

HRESULT STDMETHODCALLTYPE CShellBrowser::FindWindowByIndex ( DWORD  dwID,
IUnknown **  ppunk 
)
virtual

Implements ITravelLogClient.

Definition at line 3287 of file shellbrowser.cpp.

3288 {
3289  return E_NOTIMPL;
3290 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ FireCommandStateChange()

HRESULT CShellBrowser::FireCommandStateChange ( bool  newState,
int  commandID 
)

Definition at line 1566 of file shellbrowser.cpp.

1567 {
1568  VARIANT varArg[2];
1569 
1570  V_VT(&varArg[0]) = VT_BOOL;
1571  V_BOOL(&varArg[0]) = newState ? VARIANT_TRUE : VARIANT_FALSE;
1572  V_VT(&varArg[1]) = VT_I4;
1573  V_I4(&varArg[1]) = commandID;
1574 
1575  return FireEvent(DISPID_COMMANDSTATECHANGE, 2, varArg);
1576 }
#define DISPID_COMMANDSTATECHANGE
Definition: webchild.h:40
Definition: compat.h:2046
#define V_I4(A)
Definition: oleauto.h:247
HRESULT FireEvent(DISPID dispIdMember, int argCount, VARIANT *arguments)
#define V_BOOL(A)
Definition: oleauto.h:224
#define V_VT(A)
Definition: oleauto.h:211

Referenced by FireCommandStateChangeAll(), UpdateForwardBackState(), and UpdateUpState().

◆ FireCommandStateChangeAll()

HRESULT CShellBrowser::FireCommandStateChangeAll ( )

Definition at line 1578 of file shellbrowser.cpp.

1579 {
1580  return FireCommandStateChange(false, -1);
1581 }
HRESULT FireCommandStateChange(bool newState, int commandID)

Referenced by BrowseToPath(), Exec(), and ShowBand().

◆ FireEvent()

HRESULT CShellBrowser::FireEvent ( DISPID  dispIdMember,
int  argCount,
VARIANT arguments 
)

Definition at line 1509 of file shellbrowser.cpp.

1510 {
1514  HRESULT hResult;
1515 
1516  params.rgvarg = arguments;
1517  params.rgdispidNamedArgs = NULL;
1518  params.cArgs = argCount;
1519  params.cNamedArgs = 0;
1520  IUnknown** pp = vec.begin();
1521  while (pp < vec.end())
1522  {
1523  if (*pp != NULL)
1524  {
1525  CComPtr<IDispatch> theDispatch;
1526 
1527  hResult = (*pp)->QueryInterface(IID_PPV_ARG(IDispatch, &theDispatch));
1528  hResult = theDispatch->Invoke(dispIdMember, GUID_NULL, 0, DISPATCH_METHOD, &params, NULL, NULL, NULL);
1529  }
1530  pp++;
1531  }
1532  pp = vec2.begin();
1533  while (pp < vec2.end())
1534  {
1535  if (*pp != NULL)
1536  {
1537  CComPtr<IDispatch> theDispatch;
1538 
1539  hResult = (*pp)->QueryInterface(IID_PPV_ARG(IDispatch, &theDispatch));
1540  hResult = theDispatch->Invoke(dispIdMember, GUID_NULL, 0, DISPATCH_METHOD, &params, NULL, NULL, NULL);
1541  }
1542  pp++;
1543  }
1544  return S_OK;
1545 }
IUnknown ** begin()
Definition: atlcom.h:1064
#define IID_PPV_ARG(Itype, ppType)
#define DISPATCH_METHOD
Definition: oleauto.h:1006
GLenum const GLfloat * params
Definition: glext.h:5645
#define pp
Definition: hlsl.yy.c:1208
smooth NULL
Definition: ftsmooth.c:416
LONG HRESULT
Definition: typedefs.h:79
FT_Vector * vec
Definition: ftbbox.c:448
#define GUID_NULL
Definition: ks.h:106
#define S_OK
Definition: intsafe.h:51
IUnknown ** end()
Definition: atlcom.h:1069
struct stdole::DISPPARAMS DISPPARAMS

Referenced by FireCommandStateChange(), and FireNavigateComplete().

◆ FireNavigateComplete()

HRESULT CShellBrowser::FireNavigateComplete ( const wchar_t newDirectory)

Definition at line 1547 of file shellbrowser.cpp.

1548 {
1549  // these two variants intentionally to do use CComVariant because it would double free/release
1550  // or does not need to dispose at all
1551  VARIANT varArg[2];
1552  VARIANT varArgs;
1553  CComBSTR tempString(newDirectory);
1554 
1555  V_VT(&varArgs) = VT_BSTR;
1556  V_BSTR(&varArgs) = tempString.m_str;
1557 
1558  V_VT(&varArg[0]) = VT_VARIANT | VT_BYREF;
1559  V_VARIANTREF(&varArg[0]) = &varArgs;
1560  V_VT(&varArg[1]) = VT_DISPATCH;
1561  V_DISPATCH(&varArg[1]) = (IDispatch *)this;
1562 
1563  return FireEvent(DISPID_NAVIGATECOMPLETE2, 2, varArg);
1564 }
#define V_DISPATCH(A)
Definition: oleauto.h:239
#define DISPID_NAVIGATECOMPLETE2
Definition: webchild.h:54
HRESULT FireEvent(DISPID dispIdMember, int argCount, VARIANT *arguments)
#define V_VT(A)
Definition: oleauto.h:211
#define V_BSTR(A)
Definition: oleauto.h:226
#define V_VARIANTREF(A)
Definition: oleauto.h:283

Referenced by BrowseToPath().

◆ ForwardViewMsg()

LRESULT STDMETHODCALLTYPE CShellBrowser::ForwardViewMsg ( UINT  uMsg,
WPARAM  wParam,
LPARAM  lParam 
)
virtual

Implements IBrowserService2.

Definition at line 2824 of file shellbrowser.cpp.

2825 {
2826  return 0;
2827 }

◆ get_AddressBar()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_AddressBar ( VARIANT_BOOL Value)
virtual

Definition at line 3267 of file shellbrowser.cpp.

3268 {
3269  return E_NOTIMPL;
3270 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ get_Application()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_Application ( IDispatch **  ppDisp)
virtual

Definition at line 2973 of file shellbrowser.cpp.

2974 {
2975  return E_NOTIMPL;
2976 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ get_Busy()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_Busy ( VARIANT_BOOL pBool)
virtual

Definition at line 3057 of file shellbrowser.cpp.

3058 {
3059  return E_NOTIMPL;
3060 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ get_Container()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_Container ( IDispatch **  ppDisp)
virtual

Definition at line 2983 of file shellbrowser.cpp.

2984 {
2985  return E_NOTIMPL;
2986 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ get_Document()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_Document ( IDispatch **  ppDisp)
virtual

Definition at line 2988 of file shellbrowser.cpp.

2989 {
2990  return E_NOTIMPL;
2991 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ get_FullName()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_FullName ( BSTR FullName)
virtual

Definition at line 3092 of file shellbrowser.cpp.

3093 {
3094  return E_NOTIMPL;
3095 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ get_FullScreen()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_FullScreen ( VARIANT_BOOL pbFullScreen)
virtual

Definition at line 3152 of file shellbrowser.cpp.

3153 {
3154  return E_NOTIMPL;
3155 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ get_Height()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_Height ( long pl)
virtual

Definition at line 3035 of file shellbrowser.cpp.

3036 {
3037  return E_NOTIMPL;
3038 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ get_HWND()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_HWND ( SHANDLE_PTR pHWND)
virtual

Definition at line 3087 of file shellbrowser.cpp.

3088 {
3089  return E_NOTIMPL;
3090 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ get_Left()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_Left ( long pl)
virtual

Definition at line 3005 of file shellbrowser.cpp.

3006 {
3007  return E_NOTIMPL;
3008 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ get_LocationName()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_LocationName ( BSTR LocationName)
virtual

Definition at line 3047 of file shellbrowser.cpp.

3048 {
3049  return E_NOTIMPL;
3050 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ get_LocationURL()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_LocationURL ( BSTR LocationURL)
virtual

Definition at line 3052 of file shellbrowser.cpp.

3053 {
3054  return E_NOTIMPL;
3055 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ get_MenuBar()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_MenuBar ( VARIANT_BOOL Value)
virtual

Definition at line 3142 of file shellbrowser.cpp.

3143 {
3144  return E_NOTIMPL;
3145 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ get_Name()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_Name ( BSTR Name)
virtual

Definition at line 3082 of file shellbrowser.cpp.

3083 {
3084  return E_NOTIMPL;
3085 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ get_Offline()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_Offline ( VARIANT_BOOL pbOffline)
virtual

Definition at line 3217 of file shellbrowser.cpp.

3218 {
3219  return E_NOTIMPL;
3220 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ get_Parent()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_Parent ( IDispatch **  ppDisp)
virtual

Definition at line 2978 of file shellbrowser.cpp.

2979 {
2980  return E_NOTIMPL;
2981 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ get_Path()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_Path ( BSTR Path)
virtual

Definition at line 3097 of file shellbrowser.cpp.

3098 {
3099  return E_NOTIMPL;
3100 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ get_ReadyState()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_ReadyState ( READYSTATE *  plReadyState)
virtual

Definition at line 3212 of file shellbrowser.cpp.

3213 {
3214  return E_NOTIMPL;
3215 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ get_RegisterAsBrowser()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_RegisterAsBrowser ( VARIANT_BOOL pbRegister)
virtual

Definition at line 3237 of file shellbrowser.cpp.

3238 {
3239  return E_NOTIMPL;
3240 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ get_RegisterAsDropTarget()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_RegisterAsDropTarget ( VARIANT_BOOL pbRegister)
virtual

Definition at line 3247 of file shellbrowser.cpp.

3248 {
3249  return E_NOTIMPL;
3250 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ get_Resizable()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_Resizable ( VARIANT_BOOL Value)
virtual

Definition at line 3277 of file shellbrowser.cpp.

3278 {
3279  return E_NOTIMPL;
3280 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ get_Silent()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_Silent ( VARIANT_BOOL pbSilent)
virtual

Definition at line 3227 of file shellbrowser.cpp.

3228 {
3229  return E_NOTIMPL;
3230 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ get_StatusBar()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_StatusBar ( VARIANT_BOOL pBool)
virtual

Definition at line 3112 of file shellbrowser.cpp.

3113 {
3114  return E_NOTIMPL;
3115 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ get_StatusText()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_StatusText ( BSTR StatusText)
virtual

Definition at line 3122 of file shellbrowser.cpp.

3123 {
3124  return E_NOTIMPL;
3125 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ get_TheaterMode()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_TheaterMode ( VARIANT_BOOL pbRegister)
virtual

Definition at line 3257 of file shellbrowser.cpp.

3258 {
3259  return E_NOTIMPL;
3260 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ get_ToolBar()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_ToolBar ( int Value)
virtual

Definition at line 3132 of file shellbrowser.cpp.

3133 {
3134  return E_NOTIMPL;
3135 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ get_Top()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_Top ( long pl)
virtual

Definition at line 3015 of file shellbrowser.cpp.

3016 {
3017  return E_NOTIMPL;
3018 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ get_TopLevelContainer()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_TopLevelContainer ( VARIANT_BOOL pBool)
virtual

Definition at line 2993 of file shellbrowser.cpp.

2994 {
2995  return E_NOTIMPL;
2996 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ get_Type()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_Type ( BSTR Type)
virtual

Definition at line 2998 of file shellbrowser.cpp.

2999 {
3000  return E_NOTIMPL;
3001 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ get_Visible()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_Visible ( VARIANT_BOOL pBool)
virtual

Definition at line 3102 of file shellbrowser.cpp.

3103 {
3104  return E_NOTIMPL;
3105 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ get_Width()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_Width ( long pl)
virtual

Definition at line 3025 of file shellbrowser.cpp.

3026 {
3027  return E_NOTIMPL;
3028 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ GetBaseBar()

HRESULT CShellBrowser::GetBaseBar ( bool  vertical,
REFIID  riid,
void **  theBaseBar 
)

Definition at line 1100 of file shellbrowser.cpp.

1101 {
1102  CComPtr<IUnknown> newBaseBar;
1103  CComPtr<IDeskBar> deskBar;
1104  CComPtr<IUnknown> newBaseBarSite;
1105  CComPtr<IDeskBarClient> deskBarClient;
1106  IUnknown **cache;
1107  HRESULT hResult;
1108 
1109  if (vertical)
1111  else
1113  if (*cache == NULL)
1114  {
1115  hResult = CBaseBar_CreateInstance(IID_PPV_ARG(IUnknown, &newBaseBar), vertical);
1116  if (FAILED_UNEXPECTEDLY(hResult))
1117  return hResult;
1118  hResult = CBaseBarSite_CreateInstance(IID_PPV_ARG(IUnknown, &newBaseBarSite), vertical);
1119  if (FAILED_UNEXPECTEDLY(hResult))
1120  return hResult;
1121 
1122  // we have to store our basebar into cache now
1123  *cache = newBaseBar;
1124  newBaseBar->AddRef();
1125 
1126  // tell the new base bar about the shell browser
1127  hResult = IUnknown_SetSite(newBaseBar, static_cast<IDropTarget *>(this));
1128  if (FAILED_UNEXPECTEDLY(hResult))
1129  return hResult;
1130 
1131  // tell the new base bar about the new base bar site
1132  hResult = newBaseBar->QueryInterface(IID_PPV_ARG(IDeskBar, &deskBar));
1133  if (FAILED_UNEXPECTEDLY(hResult))
1134  return hResult;
1135  hResult = deskBar->SetClient(newBaseBarSite);
1136  if (FAILED_UNEXPECTEDLY(hResult))
1137  return hResult;
1138 
1139  // tell the new base bar site about the new base bar
1140  hResult = newBaseBarSite->QueryInterface(IID_PPV_ARG(IDeskBarClient, &deskBarClient));
1141  if (FAILED_UNEXPECTEDLY(hResult))
1142  return hResult;
1143  hResult = deskBarClient->SetDeskBarSite(newBaseBar);
1144  if (FAILED_UNEXPECTEDLY(hResult))
1145  return hResult;
1146 
1147  }
1148  return (*cache)->QueryInterface(riid, theBaseBar);
1149 }
Definition: cache.c:48
static const int BIHorizontalBaseBar
REFIID riid
Definition: precomp.h:44
barInfo fClientBars[3]
#define IID_PPV_ARG(Itype, ppType)
CComPtr< IUnknown > clientBar
static const int BIVerticalBaseBar
HRESULT WINAPI IUnknown_SetSite(IUnknown *obj, IUnknown *site)
Definition: ordinal.c:1404
smooth NULL
Definition: ftsmooth.c:416
LONG HRESULT
Definition: typedefs.h:79
#define FAILED_UNEXPECTEDLY(hr)
Definition: shellutils.h:71
static IOleCache * cache
Definition: ole2.c:75
HRESULT CBaseBarSite_CreateInstance(REFIID riid, void **ppv, BOOL bVertical)
HRESULT CBaseBar_CreateInstance(REFIID riid, void **ppv, BOOL vertical)
Definition: CBaseBar.cpp:564

Referenced by IsBandLoaded(), and ShowBand().

◆ GetBaseBrowserData()

HRESULT STDMETHODCALLTYPE CShellBrowser::GetBaseBrowserData ( LPCBASEBROWSERDATA pbbd)
virtual

Implements IBrowserService2.

Definition at line 2657 of file shellbrowser.cpp.

2658 {
2659  return E_NOTIMPL;
2660 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ GetBorderDW()

HRESULT STDMETHODCALLTYPE CShellBrowser::GetBorderDW ( IUnknown punkObj,
LPRECT  prcBorder 
)
virtual

Definition at line 1878 of file shellbrowser.cpp.

1879 {
1880  static const INT excludeItems[] = { 1, 1, 1, 0xa001, 0, 0 };
1881 
1882  RECT availableBounds;
1883 
1884  GetEffectiveClientRect(m_hWnd, &availableBounds, excludeItems);
1885  for (INT x = 0; x < 3; x++)
1886  {
1887  if (fClientBars[x].clientBar.p != NULL && !IUnknownIsEqual(fClientBars[x].clientBar, punkObj))
1888  {
1889  availableBounds.top += fClientBars[x].borderSpace.top;
1890  availableBounds.left += fClientBars[x].borderSpace.left;
1891  availableBounds.bottom -= fClientBars[x].borderSpace.bottom;
1892  availableBounds.right -= fClientBars[x].borderSpace.right;
1893  }
1894  }
1895  *prcBorder = availableBounds;
1896  return S_OK;
1897 }
LONG top
Definition: windef.h:307
GLint GLint GLint GLint GLint x
Definition: gl.h:1548
VOID WINAPI GetEffectiveClientRect(HWND hwnd, LPRECT lpRect, const INT *lpInfo)
Definition: commctrl.c:629
LONG left
Definition: windef.h:306
barInfo fClientBars[3]
LONG right
Definition: windef.h:308
int32_t INT
Definition: typedefs.h:58
bool IUnknownIsEqual(IUnknown *int1, IUnknown *int2)
smooth NULL
Definition: ftsmooth.c:416
HWND m_hWnd
Definition: atlwin.h:268
#define S_OK
Definition: intsafe.h:51
LONG bottom
Definition: windef.h:309

◆ GetBrowserByIndex()

HRESULT STDMETHODCALLTYPE CShellBrowser::GetBrowserByIndex ( DWORD  dwID,
IUnknown **  ppunk 
)
virtual

Implements IBrowserService.

Definition at line 2523 of file shellbrowser.cpp.

2524 {
2525  return E_NOTIMPL;
2526 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ GetBrowserIndex()

DWORD STDMETHODCALLTYPE CShellBrowser::GetBrowserIndex ( )
virtual

Implements IBrowserService.

Definition at line 2518 of file shellbrowser.cpp.

2519 {
2520  return -1;
2521 }

Referenced by SaveHistory().

◆ GetClassID()

HRESULT STDMETHODCALLTYPE CShellBrowser::GetClassID ( CLSID pClassID)
virtual

Implements IPersist.

Definition at line 3311 of file shellbrowser.cpp.

3312 {
3313  return E_NOTIMPL;
3314 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ GetControlWindow()

HRESULT STDMETHODCALLTYPE CShellBrowser::GetControlWindow ( UINT  id,
HWND lphwnd 
)
virtual

Implements IShellBrowser.

Definition at line 2254 of file shellbrowser.cpp.

2255 {
2256  if (lphwnd == NULL)
2257  return E_POINTER;
2258  *lphwnd = NULL;
2259  switch (id)
2260  {
2261  case FCW_TOOLBAR:
2262  *lphwnd = fToolbarProxy.m_hWnd;
2263  return S_OK;
2264  case FCW_STATUS:
2265  *lphwnd = fStatusBar;
2266  return S_OK;
2267  case FCW_TREE:
2268  // find the directory browser and return it
2269  // this should be used only to determine if a tree is present
2270  return S_OK;
2271  case FCW_PROGRESS:
2272  // is this a progress dialog?
2273  return S_OK;
2274  }
2275  return S_OK;
2276 }
CToolbarProxy fToolbarProxy
smooth NULL
Definition: ftsmooth.c:416
HWND m_hWnd
Definition: atlwin.h:268
#define S_OK
Definition: intsafe.h:51
#define E_POINTER
Definition: winerror.h:2365

◆ GetFlags()

HRESULT STDMETHODCALLTYPE CShellBrowser::GetFlags ( DWORD pdwFlags)
virtual

Implements IBrowserService.

Definition at line 2494 of file shellbrowser.cpp.

2495 {
2496  return E_NOTIMPL;
2497 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ GetFolderSetData()

HRESULT STDMETHODCALLTYPE CShellBrowser::GetFolderSetData ( struct tagFolderSetData pfsd)
virtual

Implements IBrowserService2.

Definition at line 2764 of file shellbrowser.cpp.

2765 {
2766  return E_NOTIMPL;
2767 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ GetHistoryObject()

HRESULT STDMETHODCALLTYPE CShellBrowser::GetHistoryObject ( IOleObject **  ppole,
IStream **  pstm,
IBindCtx **  ppbc 
)
virtual

Implements IBrowserService.

Definition at line 2528 of file shellbrowser.cpp.

2529 {
2530  if (ppole == NULL || pstm == NULL || ppbc == NULL)
2531  return E_INVALIDARG;
2532  *ppole = fHistoryObject;
2533  if (fHistoryObject != NULL)
2535  *pstm = fHistoryStream;
2536  if (fHistoryStream != NULL)
2538  *ppbc = fHistoryBindContext;
2539  if (fHistoryBindContext != NULL)
2541  fHistoryObject = NULL;
2542  fHistoryStream = NULL;
2544  if (*ppole == NULL)
2545  return E_FAIL;
2546  return S_OK;
2547 }
IStream * fHistoryStream
IOleObject * fHistoryObject
#define E_FAIL
Definition: ddrawi.h:102
#define E_INVALIDARG
Definition: ddrawi.h:101
smooth NULL
Definition: ftsmooth.c:416
ULONG AddRef()
IBindCtx * fHistoryBindContext
#define S_OK
Definition: intsafe.h:51

◆ GetIDsOfNames()

HRESULT STDMETHODCALLTYPE CShellBrowser::GetIDsOfNames ( REFIID  riid,
LPOLESTR rgszNames,
UINT  cNames,
LCID  lcid,
DISPID rgDispId 
)
virtual

Definition at line 2382 of file shellbrowser.cpp.

2384 {
2385  return E_NOTIMPL;
2386 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ GetMenuBand()

HRESULT CShellBrowser::GetMenuBand ( REFIID  riid,
void **  shellMenu 
)

Definition at line 1080 of file shellbrowser.cpp.

1081 {
1082  CComPtr<IBandSite> bandSite;
1083  CComPtr<IDeskBand> deskBand;
1084  HRESULT hResult;
1085 
1086  if (!fClientBars[BIInternetToolbar].clientBar)
1087  return E_FAIL;
1088 
1090  if (FAILED_UNEXPECTEDLY(hResult))
1091  return hResult;
1092 
1093  hResult = bandSite->QueryBand(1, &deskBand, NULL, NULL, 0);
1094  if (FAILED_UNEXPECTEDLY(hResult))
1095  return hResult;
1096 
1097  return deskBand->QueryInterface(riid, shellMenu);
1098 }
REFIID riid
Definition: precomp.h:44
barInfo fClientBars[3]
#define IID_PPV_ARG(Itype, ppType)
#define E_FAIL
Definition: ddrawi.h:102
HRESULT WINAPI IUnknown_QueryService(IUnknown *, REFGUID, REFIID, LPVOID *)
Definition: ordinal.c:1494
smooth NULL
Definition: ftsmooth.c:416
LONG HRESULT
Definition: typedefs.h:79
#define FAILED_UNEXPECTEDLY(hr)
Definition: shellutils.h:71
#define SID_IBandSite
static const int BIInternetToolbar

Referenced by SetMenuSB(), and WindowProc().

◆ GetNavigateState()

HRESULT STDMETHODCALLTYPE CShellBrowser::GetNavigateState ( BNSTATE pbnstate)
virtual

Implements IBrowserService.

Definition at line 2469 of file shellbrowser.cpp.

2470 {
2471  return E_NOTIMPL;
2472 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ GetOleObject()

HRESULT STDMETHODCALLTYPE CShellBrowser::GetOleObject ( IOleObject **  ppobjv)
virtual

Implements IBrowserService.

Definition at line 2409 of file shellbrowser.cpp.

2410 {
2411  return E_NOTIMPL;
2412 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ GetPalette()

HRESULT STDMETHODCALLTYPE CShellBrowser::GetPalette ( HPALETTE *  hpal)
virtual

Implements IBrowserService.

Definition at line 2570 of file shellbrowser.cpp.

2571 {
2572  return E_NOTIMPL;
2573 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ GetParentSite()

HRESULT STDMETHODCALLTYPE CShellBrowser::GetParentSite ( IOleInPlaceSite **  ppipsite)
virtual

Implements IBrowserService.

Definition at line 2394 of file shellbrowser.cpp.

2395 {
2396  return E_NOTIMPL;
2397 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ GetPidl()

HRESULT STDMETHODCALLTYPE CShellBrowser::GetPidl ( LPITEMIDLIST ppidl)
virtual

Definition at line 2504 of file shellbrowser.cpp.

2505 {
2506  // called by explorer bar to get current pidl
2507  if (ppidl == NULL)
2508  return E_POINTER;
2509  *ppidl = ILClone(fCurrentDirectoryPIDL);
2510  return S_OK;
2511 }
smooth NULL
Definition: ftsmooth.c:416
LPITEMIDLIST fCurrentDirectoryPIDL
#define S_OK
Definition: intsafe.h:51
LPITEMIDLIST WINAPI ILClone(LPCITEMIDLIST pidl)
Definition: pidl.c:228
#define E_POINTER
Definition: winerror.h:2365

◆ GetPositionCookie()

HRESULT STDMETHODCALLTYPE CShellBrowser::GetPositionCookie ( DWORD pdwPositioncookie)
virtual

Implements IPersistHistory.

Definition at line 3400 of file shellbrowser.cpp.

3401 {
3402  return E_NOTIMPL;
3403 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ GetProperty()

HRESULT STDMETHODCALLTYPE CShellBrowser::GetProperty ( BSTR  Property,
VARIANT pvtValue 
)
virtual

Definition at line 3077 of file shellbrowser.cpp.

3078 {
3079  return E_NOTIMPL;
3080 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ GetPropertyBag()

HRESULT STDMETHODCALLTYPE CShellBrowser::GetPropertyBag ( long  flags,
REFIID  riid,
void **  ppvObject 
)
virtual

Definition at line 2364 of file shellbrowser.cpp.

2365 {
2366  if (ppvObject == NULL)
2367  return E_POINTER;
2368  *ppvObject = NULL;
2369  return E_NOTIMPL;
2370 }
smooth NULL
Definition: ftsmooth.c:416
REFIID LPVOID * ppvObject
Definition: precomp.h:44
#define E_NOTIMPL
Definition: ddrawi.h:99
#define E_POINTER
Definition: winerror.h:2365

◆ GetSetCodePage()

HRESULT STDMETHODCALLTYPE CShellBrowser::GetSetCodePage ( VARIANT pvarIn,
VARIANT pvarOut 
)
virtual

Implements IBrowserService.

Definition at line 2559 of file shellbrowser.cpp.

2560 {
2561  return E_NOTIMPL;
2562 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ GetTitle()

HRESULT STDMETHODCALLTYPE CShellBrowser::GetTitle ( IShellView psv,
LPWSTR  pszName,
DWORD  cchName 
)
virtual

Implements IBrowserService.

Definition at line 2404 of file shellbrowser.cpp.

2405 {
2406  return E_NOTIMPL;
2407 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ GetTravelLog()

HRESULT STDMETHODCALLTYPE CShellBrowser::GetTravelLog ( ITravelLog **  pptl)
virtual

Implements IBrowserService.

Definition at line 2414 of file shellbrowser.cpp.

2415 {
2416  HRESULT hResult;
2417 
2418  // called by toolbar when displaying tooltips
2419  if (pptl == NULL)
2420  return E_FAIL;
2421 
2422  *pptl = NULL;
2423  if (fTravelLog.p == NULL)
2424  {
2426  if (FAILED_UNEXPECTEDLY(hResult))
2427  return hResult;
2428  }
2429  *pptl = fTravelLog.p;
2430  fTravelLog.p->AddRef();
2431  return S_OK;
2432 }
#define IID_PPV_ARG(Itype, ppType)
#define E_FAIL
Definition: ddrawi.h:102
_In_ POINTL * pptl
Definition: winddi.h:3741
smooth NULL
Definition: ftsmooth.c:416
LONG HRESULT
Definition: typedefs.h:79
#define FAILED_UNEXPECTEDLY(hr)
Definition: shellutils.h:71
ULONG AddRef()
#define S_OK
Definition: intsafe.h:51
CComPtr< ITravelLog > fTravelLog
HRESULT CTravelLog_CreateInstance(REFIID riid, void **ppv)
Definition: travellog.cpp:626

Referenced by BrowseToPath(), GoBack(), GoForward(), UpdateForwardBackState(), and UpdateGotoMenu().

◆ GetTypeInfo()

HRESULT STDMETHODCALLTYPE CShellBrowser::GetTypeInfo ( UINT  iTInfo,
LCID  lcid,
ITypeInfo **  ppTInfo 
)
virtual

Definition at line 2377 of file shellbrowser.cpp.

2378 {
2379  return E_NOTIMPL;
2380 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ GetTypeInfoCount()

HRESULT STDMETHODCALLTYPE CShellBrowser::GetTypeInfoCount ( UINT pctinfo)
virtual

Definition at line 2372 of file shellbrowser.cpp.

2373 {
2374  return E_NOTIMPL;
2375 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ GetViewRect()

HRESULT STDMETHODCALLTYPE CShellBrowser::GetViewRect ( RECT prc)
virtual

Implements IBrowserService2.

Definition at line 2590 of file shellbrowser.cpp.

2591 {
2592  return E_NOTIMPL;
2593 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ GetViewStateStream()

HRESULT STDMETHODCALLTYPE CShellBrowser::GetViewStateStream ( DWORD  grfMode,
IStream **  ppStrm 
)
virtual

Implements IShellBrowser.

Definition at line 2249 of file shellbrowser.cpp.

2250 {
2251  return E_NOTIMPL;
2252 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ GetViewWindow()

HRESULT STDMETHODCALLTYPE CShellBrowser::GetViewWindow ( HWND phwndView)
virtual

Implements IBrowserService2.

Definition at line 2652 of file shellbrowser.cpp.

2653 {
2654  return E_NOTIMPL;
2655 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ GetWindow()

HRESULT STDMETHODCALLTYPE CShellBrowser::GetWindow ( HWND lphwnd)
virtual

Implements IOleWindow.

Definition at line 2142 of file shellbrowser.cpp.

2143 {
2144  if (lphwnd == NULL)
2145  return E_POINTER;
2146  *lphwnd = m_hWnd;
2147  return S_OK;
2148 }
smooth NULL
Definition: ftsmooth.c:416
HWND m_hWnd
Definition: atlwin.h:268
#define S_OK
Definition: intsafe.h:51
#define E_POINTER
Definition: winerror.h:2365

◆ GetWindowData()

HRESULT STDMETHODCALLTYPE CShellBrowser::GetWindowData ( IStream pStream,
LPWINDOWDATA  pWinData 
)
virtual

Implements ITravelLogClient.

Definition at line 3292 of file shellbrowser.cpp.

3293 {
3294  if (pWinData == NULL)
3295  return E_POINTER;
3296 
3297  pWinData->dwWindowID = -1;
3298  pWinData->uiCP = 0;
3299  pWinData->pidl = ILClone(fCurrentDirectoryPIDL);
3300  pWinData->lpszUrl = NULL;
3301  pWinData->lpszUrlLocation = NULL;
3302  pWinData->lpszTitle = NULL;
3303  return S_OK;
3304 }
UINT uiCP
Definition: tlogstg.idl:25
DWORD dwWindowID
Definition: tlogstg.idl:24
LPWSTR lpszUrl
Definition: tlogstg.idl:27
smooth NULL
Definition: ftsmooth.c:416
LPWSTR lpszTitle
Definition: tlogstg.idl:29
LPWSTR lpszUrlLocation
Definition: tlogstg.idl:28
LPITEMIDLIST fCurrentDirectoryPIDL
PIDLIST_ABSOLUTE pidl
Definition: tlogstg.idl:26
#define S_OK
Definition: intsafe.h:51
LPITEMIDLIST WINAPI ILClone(LPCITEMIDLIST pidl)
Definition: pidl.c:228
#define E_POINTER
Definition: winerror.h:2365

◆ GetWindowProc()

virtual WNDPROC CShellBrowser::GetWindowProc ( )
inlinevirtual

Reimplemented from ATL::CWindowImplBaseT< CWindow, CFrameWinTraits >.

Definition at line 341 of file shellbrowser.cpp.

342  {
343  return WindowProc;
344  }
static LRESULT CALLBACK WindowProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam)

◆ GetWndClassInfo()

static ATL::CWndClassInfo& CShellBrowser::GetWndClassInfo ( )
inlinestatic

Definition at line 628 of file shellbrowser.cpp.

629  {
630  static ATL::CWndClassInfo wc =
631  {
633  0, 0, NULL, LoadIcon(_AtlBaseModule.GetResourceInstance(), MAKEINTRESOURCE(IDI_CABINET)),
635  NULL, NULL, IDC_ARROW, TRUE, 0, _T("")
636  };
637  return wc;
638  }
#define MAKEINTRESOURCE
Definition: winuser.h:591
#define IDI_CABINET
Definition: resource.h:10
#define TRUE
Definition: types.h:120
#define COLOR_WINDOW
Definition: winuser.h:908
smooth NULL
Definition: ftsmooth.c:416
#define _T(x)
Definition: vfdio.h:22
static LRESULT CALLBACK StartWindowProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
Definition: atlwin.h:1530
#define CS_DBLCLKS
Definition: winuser.h:646
#define LoadCursor
Definition: winuser.h:5787
#define IDC_ARROW
Definition: winuser.h:682
WNDCLASSEXA WNDCLASSEX
Definition: winuser.h:5694
#define LoadIcon
Definition: winuser.h:5788
static const TCHAR szCabinetWndClass[]

◆ GoBack()

HRESULT STDMETHODCALLTYPE CShellBrowser::GoBack ( )
virtual

Definition at line 2904 of file shellbrowser.cpp.

2905 {
2906  CComPtr<ITravelLog> travelLog;
2907  HRESULT hResult = GetTravelLog(&travelLog);
2908  if (FAILED_UNEXPECTEDLY(hResult))
2909  return hResult;
2910  return travelLog->Travel(static_cast<IDropTarget *>(this), TLOG_BACK);
2911 }
#define TLOG_BACK
Definition: shlobj.h:2542
LONG HRESULT
Definition: typedefs.h:79
#define FAILED_UNEXPECTEDLY(hr)
Definition: shellutils.h:71
virtual HRESULT STDMETHODCALLTYPE GetTravelLog(ITravelLog **pptl)

Referenced by OnGoBack().

◆ GoForward()

HRESULT STDMETHODCALLTYPE CShellBrowser::GoForward ( )
virtual

Definition at line 2913 of file shellbrowser.cpp.

2914 {
2915  CComPtr<ITravelLog> travelLog;
2916  HRESULT hResult = GetTravelLog(&travelLog);
2917  if (FAILED_UNEXPECTEDLY(hResult))
2918  return hResult;
2919  return travelLog->Travel(static_cast<IDropTarget *>(this), TLOG_FORE);
2920 }
#define TLOG_FORE
Definition: shlobj.h:2543
LONG HRESULT
Definition: typedefs.h:79
#define FAILED_UNEXPECTEDLY(hr)
Definition: shellutils.h:71
virtual HRESULT STDMETHODCALLTYPE GetTravelLog(ITravelLog **pptl)

Referenced by OnGoForward().

◆ GoHome()

HRESULT STDMETHODCALLTYPE CShellBrowser::GoHome ( )
virtual

Definition at line 2922 of file shellbrowser.cpp.

2923 {
2924  return E_NOTIMPL;
2925 }
#define E_NOTIMPL
Definition: ddrawi.h:99

Referenced by OnGoHome().

◆ GoSearch()

HRESULT STDMETHODCALLTYPE CShellBrowser::GoSearch ( )
virtual

Definition at line 2927 of file shellbrowser.cpp.

2928 {
2929  return E_NOTIMPL;
2930 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ IEGetDisplayName()

HRESULT STDMETHODCALLTYPE CShellBrowser::IEGetDisplayName ( LPCITEMIDLIST  pidl,
LPWSTR  pwszName,
UINT  uFlags 
)
virtual

Definition at line 2444 of file shellbrowser.cpp.

2445 {
2446  return E_NOTIMPL;
2447 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ IEParseDisplayName()

HRESULT STDMETHODCALLTYPE CShellBrowser::IEParseDisplayName ( UINT  uiCP,
LPCWSTR  pwszPath,
LPITEMIDLIST ppidlOut 
)
virtual

Definition at line 2449 of file shellbrowser.cpp.

2450 {
2451  return E_NOTIMPL;
2452 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ Initialize()

HRESULT CShellBrowser::Initialize ( )

Definition at line 725 of file shellbrowser.cpp.

726 {
727  CComPtr<IPersistStreamInit> persistStreamInit;
728  HRESULT hResult;
729  CComPtr<IUnknown> clientBar;
730 
732 
733  menuDsa = DSA_Create(sizeof(MenuBandInfo), 5);
734  if (!menuDsa)
735  return E_OUTOFMEMORY;
736 
739  {
740  }
741 
742  // create window
744  if (m_hWnd == NULL)
745  return E_FAIL;
746 
747  hResult = CInternetToolbar_CreateInstance(IID_PPV_ARG(IUnknown, &clientBar));
748  if (FAILED_UNEXPECTEDLY(hResult))
749  return hResult;
750 
752 
753  // create interfaces
754  hResult = clientBar->QueryInterface(IID_PPV_ARG(IPersistStreamInit, &persistStreamInit));
755  if (FAILED_UNEXPECTEDLY(hResult))
756  return hResult;
757 
758  hResult = IUnknown_SetSite(clientBar, static_cast<IShellBrowser *>(this));
759  if (FAILED_UNEXPECTEDLY(hResult))
760  return hResult;
761 
762  hResult = IUnknown_Exec(clientBar, CGID_PrivCITCommands, 1, 1 /* or 0 */, NULL, NULL);
763  if (FAILED_UNEXPECTEDLY(hResult))
764  return hResult;
765 
766  // TODO: create settingsStream from registry entry
767  //if (settingsStream.p)
768  //{
769  // hResult = persistStreamInit->Load(settingsStream);
770  // if (FAILED_UNEXPECTEDLY(hResult))
771  // return hResult;
772  //}
773  //else
774  {
775  hResult = persistStreamInit->InitNew();
776  if (FAILED_UNEXPECTEDLY(hResult))
777  return hResult;
778  }
779 
780  hResult = IUnknown_ShowDW(clientBar, TRUE);
781  if (FAILED_UNEXPECTEDLY(hResult))
782  return hResult;
783 
784  fToolbarProxy.Initialize(m_hWnd, clientBar);
785 
786 
787  // create status bar
789  SBT_NOBORDERS | SBT_TOOLTIPS, 0, 0, 500, 20, m_hWnd, (HMENU)0xa001,
790  _AtlBaseModule.GetModuleInstance(), 0);
791  fStatusBarVisible = true;
792 
793 
795  UpdateWindow();
796 
797  return S_OK;
798 }
#define WS_CLIPSIBLINGS
Definition: pedump.c:618
#define STATUSCLASSNAMEW
Definition: commctrl.h:1932
BOOL WINAPI ReadCabinetState(CABINETSTATE *cs, int length)
Definition: shellord.c:1631
#define SBT_TOOLTIPS
Definition: commctrl.h:1921
#define CreateWindow
Definition: winuser.h:5729
void Initialize(HWND parent, IUnknown *explorerToolbar)
#define TRUE
Definition: types.h:120
HWND Create(HWND hWndParent, _U_RECT rect=NULL, LPCTSTR szWindowName=NULL, DWORD dwStyle=0, DWORD dwExStyle=0, _U_MENUorID MenuOrID=0U, LPVOID lpCreateParam=NULL)
Definition: atlwin.h:1637
CToolbarProxy fToolbarProxy
#define WS_CHILD
Definition: pedump.c:617
barInfo fClientBars[3]
CABINETSTATE fCabinetState
#define IID_PPV_ARG(Itype, ppType)
#define E_FAIL
Definition: ddrawi.h:102
CComPtr< IUnknown > clientBar
#define E_OUTOFMEMORY
Definition: ddrawi.h:100
#define FALSE
Definition: types.h:117
HRESULT WINAPI IUnknown_SetSite(IUnknown *obj, IUnknown *site)
Definition: ordinal.c:1404
smooth NULL
Definition: ftsmooth.c:416
HDSA WINAPI DSA_Create(INT nSize, INT nGrow)
Definition: dsa.c:71
HRESULT IUnknown_ShowDW(IUnknown *punk, BOOL fShow)
Definition:</