ReactOS 0.4.15-dev-5884-gab5aff5
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< TBase, TWinTraits >
 CWindowImplBaseT ()
 
virtual void OnFinalMessage (HWND)
 
BOOL SubclassWindow (HWND hWnd)
 
HWND UnsubclassWindow (BOOL bForce=FALSE)
 
virtual WNDPROC GetWindowProc ()
 
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< TBase >
 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 (_In_ int nID) const
 
UINT GetDlgItemInt (_In_ int nID, _Out_opt_ BOOL *lpTrans=NULL, _In_ BOOL bSigned=TRUE) const
 
UINT GetDlgItemText (_In_ int nID, _Out_writes_to_(nMaxCount, return+1) LPTSTR lpStr, _In_ int nMaxCount) const
 
BOOL GetDlgItemText (_In_ int nID, _Inout_ _Outref_result_maybenull_ _Post_z_ 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 (_Out_writes_to_(nMaxCount, return+1) LPTSTR lpszStringBuf, _In_ int nMaxCount) const
 
BOOL GetWindowText (_Inout_ _Outref_result_maybenull_ _Post_z_ BSTR &bstrText) const
 
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 InsertMenusSB ([in] HMENU hmenuShared, [in, out] LPOLEMENUGROUPWIDTHS lpMenuWidths)
 
HRESULT SetMenuSB ([in] HMENU hmenuShared, [in] HOLEMENU holemenuReserved, [in] HWND hwndActiveObject)
 
HRESULT RemoveMenusSB ([in] HMENU hmenuShared)
 
HRESULT SetStatusTextSB ([in, unique] LPCOLESTR pszStatusText)
 
HRESULT EnableModelessSB ([in] BOOL fEnable)
 
HRESULT TranslateAcceleratorSB ([in] MSG *pmsg, [in] WORD wID)
 
HRESULT BrowseObject ([in] PCUIDLIST_RELATIVE pidl, [in] UINT wFlags)
 
HRESULT GetViewStateStream ([in] DWORD grfMode, [out] IStream **ppStrm)
 
HRESULT GetControlWindow ([in] UINT id, [out] HWND *phwnd)
 
HRESULT SendControlMsg ([in] UINT id, [in] UINT uMsg, [in] WPARAM wParam, [in] LPARAM lParam, [in] LRESULT *pret)
 
HRESULT QueryActiveShellView ([out] IShellView **ppshv)
 
HRESULT OnViewWindowActive ([in] IShellView *pshv)
 
HRESULT SetToolbarItems ([in] LPTBBUTTONSB lpButtons, [in] UINT nButtons, [in] UINT uFlags)
 
HRESULT GetWindow ([out] HWND *phwnd)
 
HRESULT ContextSensitiveHelp ([in] BOOL fEnterMode)
 
- Public Member Functions inherited from IUnknown
HRESULT QueryInterface ([in] REFIID riid, [out, iid_is(riid)] void **ppvObject)
 
ULONG AddRef ()
 
ULONG Release ()
 
HRESULT DragEnter ([in, unique] IDataObject *pDataObj, [in] DWORD grfKeyState, [in] POINTL pt, [in, out] DWORD *pdwEffect)
 
HRESULT DragOver ([in] DWORD grfKeyState, [in] POINTL pt, [in, out] DWORD *pdwEffect)
 
HRESULT DragLeave ()
 
HRESULT Drop ([in, unique] IDataObject *pDataObj, [in] DWORD grfKeyState, [in] POINTL pt, [in, out] DWORD *pdwEffect)
 
- Public Member Functions inherited from IServiceProvider
HRESULT QueryService ([in] REFGUID guidService, [in] REFIID riid, [out] void **ppvObject)
 
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)
 
HRESULT ProfferService ([in] REFGUID service, [in] IServiceProvider *pService, [out] DWORD *pCookie)
 
HRESULT RevokeService ([in] DWORD cookie)
 
HRESULT FindWindowByIndex ([in] DWORD dwID, [out] IUnknown **ppunk)
 
HRESULT GetWindowData ([in] IStream *pStream, [out] LPWINDOWDATA pWinData)
 
HRESULT LoadHistoryPosition ([in] LPWSTR pszUrlLocation, [in] DWORD dwPosition)
 
HRESULT LoadHistory ([in] IStream *pStream, [in] IBindCtx *pbc)
 
HRESULT SaveHistory ([in] IStream *pStream)
 
HRESULT SetPositionCookie ([in] DWORD dwPositioncookie)
 
HRESULT GetPositionCookie ([out] DWORD *pdwPositioncookie)
 
HRESULT GetClassID ([out] CLSID *pClassID)
 
HRESULT QueryStatus ([in, unique] const GUID *pguidCmdGroup, [in] ULONG cCmds, [in, out, size_is(cCmds)] OLECMD prgCmds[], [in, out, unique] OLECMDTEXT *pCmdText)
 
HRESULT Exec ([in, unique] const GUID *pguidCmdGroup, [in] DWORD nCmdID, [in] DWORD nCmdexecopt, [in, unique] VARIANT *pvaIn, [in, out, unique] VARIANT *pvaOut)
 
- Public Member Functions inherited from IBrowserService2
LRESULT WndProcBS ([in] HWND hwnd, [in] UINT uMsg, [in] WPARAM wParam, [in] LPARAM lParam)
 
HRESULT SetAsDefFolderSettings ()
 
HRESULT GetViewRect ([in, out] RECT *prc)
 
HRESULT OnSize ([in] WPARAM wParam)
 
HRESULT OnCreate ([in] struct tagCREATESTRUCTW *pcs)
 
LRESULT OnCommand ([in] WPARAM wParam, [in] LPARAM lParam)
 
HRESULT OnDestroy ()
 
LRESULT OnNotify ([in, out] struct tagNMHDR *pnm)
 
HRESULT OnSetFocus ()
 
HRESULT OnFrameWindowActivateBS ([in] BOOL fActive)
 
HRESULT ReleaseShellView ()
 
HRESULT ActivatePendingView ()
 
HRESULT CreateViewWindow ([in] IShellView *psvNew, [in] IShellView *psvOld, [out] LPRECT prcView, [out] HWND *phwnd)
 
HRESULT CreateBrowserPropSheetExt ([in] REFIID riid, [out] void **ppv)
 
HRESULT GetViewWindow ([out] HWND *phwndView)
 
HRESULT GetBaseBrowserData ([in, out] LPCBASEBROWSERDATA *pbbd)
 
LPBASEBROWSERDATA PutBaseBrowserData ()
 
HRESULT InitializeTravelLog ([in] ITravelLog *ptl, [in] DWORD dw)
 
HRESULT SetTopBrowser ()
 
HRESULT Offline ([in] int iCmd)
 
HRESULT AllowViewResize ([in] BOOL f)
 
HRESULT SetActivateState ([in] UINT u)
 
HRESULT UpdateSecureLockIcon ([in] int eSecureLock)
 
HRESULT InitializeDownloadManager ()
 
HRESULT InitializeTransitionSite ()
 
HRESULT _Initialize ([in] HWND hwnd, [in] IUnknown *pauto)
 
HRESULT _CancelPendingNavigationAsync ()
 
HRESULT _CancelPendingView ()
 
HRESULT _MaySaveChanges ()
 
HRESULT _PauseOrResumeView ([in] BOOL fPaused)
 
HRESULT _DisableModeless ()
 
HRESULT _NavigateToPidl ([in] PCIDLIST_ABSOLUTE pidl, [in] DWORD grfHLNF, [in] DWORD dwFlags)
 
HRESULT _TryShell2Rename ([in] IShellView *psv, [in] PCIDLIST_ABSOLUTE pidlNew)
 
HRESULT _SwitchActivationNow ()
 
HRESULT _ExecChildren ([in] IUnknown *punkBar, [in] BOOL fBroadcast, [in] const GUID *pguidCmdGroup, [in] DWORD nCmdID, [in] DWORD nCmdexecopt, [in] VARIANTARG *pvarargIn, [in, out] VARIANTARG *pvarargOut)
 
HRESULT _SendChildren ([in] HWND hwndBar, [in] BOOL fBroadcast, [in] UINT uMsg, [in] WPARAM wParam, [in] LPARAM lParam)
 
HRESULT GetFolderSetData ([in, out] struct tagFolderSetData *pfsd)
 
HRESULT _OnFocusChange ([in] UINT itb)
 
HRESULT v_ShowHideChildWindows ([in] BOOL fChildOnly)
 
UINT _get_itbLastFocus ()
 
HRESULT _put_itbLastFocus ([in] UINT itbLastFocus)
 
HRESULT _UIActivateView ([in] UINT uState)
 
HRESULT _GetViewBorderRect ([in, out] RECT *prc)
 
HRESULT _UpdateViewRectSize ()
 
HRESULT _ResizeNextBorder ([in] UINT itb)
 
HRESULT _ResizeView ()
 
HRESULT _GetEffectiveClientArea ([in, out] LPRECT lprectBorder, [in] HMONITOR hmon)
 
IStreamv_GetViewStream ([in] PCIDLIST_ABSOLUTE pidl, [in] DWORD grfMode, [in] LPCWSTR pwszName)
 
LRESULT ForwardViewMsg ([in] UINT uMsg, [in] WPARAM wParam, [in] LPARAM lParam)
 
HRESULT SetAcceleratorMenu ([in] HACCEL hacc)
 
int _GetToolbarCount ()
 
LPTOOLBARITEM _GetToolbarItem ([in] int itb)
 
HRESULT _SaveToolbars ([in] IStream *pstm)
 
HRESULT _LoadToolbars ([in] IStream *pstm)
 
HRESULT _CloseAndReleaseToolbars ([in] BOOL fClose)
 
HRESULT v_MayGetNextToolbarFocus ([in] LPMSG lpMsg, [in] UINT itbNext, [in] int citb, [out] LPTOOLBARITEM *pptbi, [out] HWND *phwnd)
 
HRESULT _ResizeNextBorderHelper ([in] UINT itb, [in] BOOL bUseHmonitor)
 
UINT _FindTBar ([in] IUnknown *punkSrc)
 
HRESULT _SetFocus ([in] LPTOOLBARITEM ptbi, [in] HWND hwnd, [in] LPMSG lpMsg)
 
HRESULT v_MayTranslateAccelerator ([in] MSG *pmsg)
 
HRESULT _GetBorderDWHelper ([in] IUnknown *punkSrc, [in] LPRECT lprectBorder, [in] BOOL bUseHmonitor)
 
HRESULT v_CheckZoneCrossing ([in, out] PCIDLIST_ABSOLUTE pidl)
 
- Public Member Functions inherited from IBrowserService
HRESULT GetParentSite ([out] IOleInPlaceSite **ppipsite)
 
HRESULT SetTitle ([in] IShellView *psv, [in] LPCWSTR pszName)
 
HRESULT GetTitle ([in] IShellView *psv, [out, size_is(cchName)] LPWSTR pszName, [in] DWORD cchName)
 
HRESULT GetOleObject ([out] IOleObject **ppobjv)
 
HRESULT GetTravelLog ([out, optional] ITravelLog **pptl)
 
HRESULT ShowControlWindow ([in] UINT id, [in] BOOL fShow)
 
HRESULT IsControlWindowShown ([in] UINT id, [out] BOOL *pfShown)
 
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 DisplayParseError ([in] HRESULT hres, [in] LPCWSTR pwszPath)
 
HRESULT NavigateToPidl ([in] PCIDLIST_ABSOLUTE pidl, [in] DWORD grfHLNF)
 
HRESULT SetNavigateState ([in] BNSTATE bnstate)
 
HRESULT GetNavigateState ([out] BNSTATE *pbnstate)
 
HRESULT NotifyRedirect ([in] IShellView *psv, [in] PCIDLIST_ABSOLUTE pidl, [out] BOOL *pfDidBrowse)
 
HRESULT UpdateWindowList ()
 
HRESULT UpdateBackForwardState ()
 
HRESULT SetFlags ([in] DWORD dwFlags, [in] DWORD dwFlagMask)
 
HRESULT GetFlags ([out] DWORD *pdwFlags)
 
HRESULT CanNavigateNow ()
 
HRESULT GetPidl ([out] PIDLIST_ABSOLUTE *ppidl)
 
HRESULT SetReferrer ([in] PCIDLIST_ABSOLUTE pidl)
 
DWORD GetBrowserIndex ()
 
HRESULT GetBrowserByIndex ([in] DWORD dwID, [out] IUnknown **ppunk)
 
HRESULT GetHistoryObject ([out] IOleObject **ppole, [out] IStream **pstm, [out] IBindCtx **ppbc)
 
HRESULT SetHistoryObject ([in] IOleObject *pole, [in] BOOL fIsLocalAnchor)
 
HRESULT CacheOLEServer ([in] IOleObject *pole)
 
HRESULT GetSetCodePage ([in] VARIANT *pvarIn, [out] VARIANT *pvarOut)
 
HRESULT OnHttpEquiv ([in] IShellView *psv, [in] BOOL fDone, [in] VARIANT *pvarargIn, [out] VARIANT *pvarargOut)
 
HRESULT GetPalette ([out] HPALETTE *hpal)
 
HRESULT RegisterWindow ([in] BOOL fForceRegister, [in] int swc)
 
- Public Member Functions inherited from ATL::IConnectionPointContainerImpl< CShellBrowser >
STDMETHOD() EnumConnectionPoints (IEnumConnectionPoints **ppEnum)
 
STDMETHOD() FindConnectionPoint (REFIID riid, IConnectionPoint **ppCP)
 
HRESULT EnumConnectionPoints ([out] IEnumConnectionPoints **ppEnum)
 
HRESULT FindConnectionPoint ([in] REFIID riid, [out] 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< TBase, TWinTraits >
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< TBase >
enum  { WINSTATE_DESTROYED = 0x00000001 }
 
- Public Types inherited from IShellBrowser
typedef IShellBrowserLPSHELLBROWSER
 
typedef LPARAM LPTBBUTTONSB
 
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< TBase, TWinTraits >
WNDPROC m_pfnSuperWindowProc
 
- Public Attributes inherited from ATL::CWindowImplRoot< TBase >
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 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{
712 fStatusBarVisible = true;
717}
HWND fCurrentShellViewWindow
IStream * fHistoryStream
IOleObject * fHistoryObject
LPITEMIDLIST fCurrentDirectoryPIDL
IBindCtx * fHistoryBindContext
#define NULL
Definition: types.h:112

◆ ~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}

◆ _CloseAndReleaseToolbars()

HRESULT STDMETHODCALLTYPE CShellBrowser::_CloseAndReleaseToolbars ( BOOL  fClose)
virtual

Implements IBrowserService2.

Definition at line 2854 of file shellbrowser.cpp.

2855{
2856 return E_NOTIMPL;
2857}

◆ _DisableModeless()

HRESULT STDMETHODCALLTYPE CShellBrowser::_DisableModeless ( )
virtual

Implements IBrowserService2.

Definition at line 2732 of file shellbrowser.cpp.

2733{
2734 return E_NOTIMPL;
2735}

◆ _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}

◆ _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}

◆ _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}

◆ _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}

◆ _GetViewBorderRect()

HRESULT STDMETHODCALLTYPE CShellBrowser::_GetViewBorderRect ( RECT prc)
virtual

Implements IBrowserService2.

Definition at line 2794 of file shellbrowser.cpp.

2795{
2796 return E_NOTIMPL;
2797}

◆ _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}

◆ _LoadToolbars()

HRESULT STDMETHODCALLTYPE CShellBrowser::_LoadToolbars ( IStream pstm)
virtual

Implements IBrowserService2.

Definition at line 2849 of file shellbrowser.cpp.

2850{
2851 return E_NOTIMPL;
2852}

◆ _MaySaveChanges()

HRESULT STDMETHODCALLTYPE CShellBrowser::_MaySaveChanges ( )
virtual

Implements IBrowserService2.

Definition at line 2722 of file shellbrowser.cpp.

2723{
2724 return E_NOTIMPL;
2725}

◆ _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}

◆ _OnFocusChange()

HRESULT STDMETHODCALLTYPE CShellBrowser::_OnFocusChange ( UINT  itb)
virtual

Implements IBrowserService2.

Definition at line 2769 of file shellbrowser.cpp.

2770{
2771 return E_NOTIMPL;
2772}

◆ _PauseOrResumeView()

HRESULT STDMETHODCALLTYPE CShellBrowser::_PauseOrResumeView ( BOOL  fPaused)
virtual

Implements IBrowserService2.

Definition at line 2727 of file shellbrowser.cpp.

2728{
2729 return E_NOTIMPL;
2730}

◆ _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}

◆ _ResizeNextBorder()

HRESULT STDMETHODCALLTYPE CShellBrowser::_ResizeNextBorder ( UINT  itb)
virtual

Implements IBrowserService2.

Definition at line 2804 of file shellbrowser.cpp.

2805{
2806 return E_NOTIMPL;
2807}

◆ _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}

◆ _ResizeView()

HRESULT STDMETHODCALLTYPE CShellBrowser::_ResizeView ( )
virtual

Implements IBrowserService2.

Definition at line 2809 of file shellbrowser.cpp.

2810{
2811 return E_NOTIMPL;
2812}

◆ _SaveToolbars()

HRESULT STDMETHODCALLTYPE CShellBrowser::_SaveToolbars ( IStream pstm)
virtual

Implements IBrowserService2.

Definition at line 2844 of file shellbrowser.cpp.

2845{
2846 return E_NOTIMPL;
2847}

◆ _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}

◆ _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}

◆ _SwitchActivationNow()

HRESULT STDMETHODCALLTYPE CShellBrowser::_SwitchActivationNow ( )
virtual

Implements IBrowserService2.

Definition at line 2747 of file shellbrowser.cpp.

2748{
2749 return E_NOTIMPL;
2750}

◆ _TryShell2Rename()

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

Definition at line 2742 of file shellbrowser.cpp.

2743{
2744 return E_NOTIMPL;
2745}

◆ _UIActivateView()

HRESULT STDMETHODCALLTYPE CShellBrowser::_UIActivateView ( UINT  uState)
virtual

Implements IBrowserService2.

Definition at line 2789 of file shellbrowser.cpp.

2790{
2791 return E_NOTIMPL;
2792}

◆ _UpdateViewRectSize()

HRESULT STDMETHODCALLTYPE CShellBrowser::_UpdateViewRectSize ( )
virtual

Implements IBrowserService2.

Definition at line 2799 of file shellbrowser.cpp.

2800{
2801 return E_NOTIMPL;
2802}

◆ ActivatePendingView()

HRESULT STDMETHODCALLTYPE CShellBrowser::ActivatePendingView ( )
virtual

Implements IBrowserService2.

Definition at line 2636 of file shellbrowser.cpp.

2637{
2638 return E_NOTIMPL;
2639}

◆ AllowViewResize()

HRESULT STDMETHODCALLTYPE CShellBrowser::AllowViewResize ( BOOL  f)
virtual

Implements IBrowserService2.

Definition at line 2682 of file shellbrowser.cpp.

2683{
2684 return E_NOTIMPL;
2685}

◆ 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}
HRESULT BrowseToPIDL(LPCITEMIDLIST pidl, long flags)
CComPtr< ITravelLog > fTravelLog
HRESULT ShowBand(const CLSID &classID, bool vertical)
static const long BTP_UPDATE_NEXT_HISTORY
static const long BTP_UPDATE_CUR_HISTORY
GLbitfield flags
Definition: glext.h:7161
_In_ DWORD _Out_ _In_ WORD wFlags
Definition: wincon.h:531

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
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 {
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}
#define index(s, c)
Definition: various.h:29
void Release()
Definition: atlcomcli.h:147
HWND m_hWnd
Definition: atlwin.h:267
HRESULT UpdateUpState()
CComPtr< IShellFolder > fCurrentShellFolder
HRESULT FireNavigateComplete(const wchar_t *newDirectory)
virtual HRESULT STDMETHODCALLTYPE GetTravelLog(ITravelLog **pptl)
CComPtr< IShellView > fCurrentShellView
HRESULT UpdateForwardBackState()
CABINETSTATE fCabinetState
HRESULT FireCommandStateChangeAll()
#define E_INVALIDARG
Definition: ddrawi.h:101
#define TRUE
Definition: types.h:120
#define FALSE
Definition: types.h:117
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
#define MAX_PATH
Definition: compat.h:34
HRESULT WINAPI IUnknown_SetSite(IUnknown *obj, IUnknown *site)
Definition: ordinal.c:1404
unsigned int BOOL
Definition: ntddk_ex.h:94
GLuint index
Definition: glext.h:6031
BOOL WINAPI Shell_GetImageLists(HIMAGELIST *lpBigList, HIMAGELIST *lpSmallList)
Definition: iconcache.cpp:700
int WINAPI SHMapPIDLToSystemImageListIndex(IShellFolder *sh, LPCITEMIDLIST pidl, int *pIndex)
Definition: iconcache.cpp:783
HRESULT CreateViewObject([in] HWND hwndOwner, [in] REFIID riid, [out, iid_is(riid)] void **ppvOut)
#define S_OK
Definition: intsafe.h:52
#define SUCCEEDED(hr)
Definition: intsafe.h:50
static HICON
Definition: imagelist.c:84
#define L(x)
Definition: ntvdm.h:50
LPITEMIDLIST WINAPI ILClone(LPCITEMIDLIST pidl)
Definition: pidl.c:228
void WINAPI ILFree(LPITEMIDLIST pidl)
Definition: pidl.c:925
HRESULT WINAPI SHBindToParent(LPCITEMIDLIST pidl, REFIID riid, LPVOID *ppv, LPCITEMIDLIST *ppidlLast)
Definition: pidl.c:1337
#define FAILED_UNEXPECTEDLY(hr)
Definition: shellutils.h:82
const ITEMIDLIST UNALIGNED * LPCITEMIDLIST
Definition: shtypes.idl:42
BOOL fFullPathTitle
Definition: shlobj.h:2239
#define ICON_BIG
Definition: tnclass.cpp:51
#define ICON_SMALL
Definition: tnclass.cpp:48
int32_t INT
Definition: typedefs.h:58
#define ZeroMemory
Definition: winbase.h:1670
LONG_PTR LPARAM
Definition: windef.h:208
HICON HCURSOR
Definition: windef.h:299
BOOL WINAPI GetWindowRect(_In_ HWND, _Out_ LPRECT)
HCURSOR WINAPI SetCursor(_In_opt_ HCURSOR)
int WINAPI MapWindowPoints(_In_opt_ HWND hWndFrom, _In_opt_ HWND hWndTo, _Inout_updates_(cPoints) LPPOINT lpPoints, _In_ UINT cPoints)
BOOL WINAPI LockWindowUpdate(_In_opt_ HWND)
#define SendMessage
Definition: winuser.h:5833
#define LoadCursor
Definition: winuser.h:5802
#define IDC_WAIT
Definition: winuser.h:684
#define SetWindowText
Definition: winuser.h:5847
BOOL WINAPI DestroyIcon(_In_ HICON)
Definition: cursoricon.c:2022
#define WM_SETREDRAW
Definition: winuser.h:1606
#define IID_PPV_ARG(Itype, ppType)

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 BrowseToPath(IShellFolder *newShellFolder, LPCITEMIDLIST absolutePIDL, FOLDERSETTINGS *folderSettings, long flags)
HRESULT WINAPI SHBindToFolder(LPCITEMIDLIST path, IShellFolder **newFolder)
@ FVM_ICON
Definition: shobjidl.idl:668

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);
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 WINAPI SHEnumClassesOfCategories(ULONG cImplemented, CATID *pImplemented, ULONG cRequired, CATID *pRequired, IEnumGUID **out)
BOOL IsBuiltinBand(CLSID &bandID)
#define IDM_EXPLORERBAND_BEGINCUSTOM
Definition: resource.h:78
INT WINAPI StringFromGUID2(REFGUID id, LPOLESTR str, INT cmax)
Definition: compobj.c:2434
unsigned long DWORD
Definition: ntddk_ex.h:95
unsigned int UINT
Definition: ndis.h:50
#define DSA_AppendItem(hdsa, pitem)
Definition: commctrl.h:4827
#define DSA_GetItemCount(hdsa)
Definition: commctrl.h:4826
#define IsEqualGUID(rguid1, rguid2)
Definition: guiddef.h:147
HRESULT hr
Definition: shlfolder.c:183
#define SHGetValue
Definition: shlwapi.h:70
STRSAFEAPI StringCchPrintfW(STRSAFE_LPWSTR pszDest, size_t cchDest, STRSAFE_LPCWSTR pszFormat,...)
Definition: strsafe.h:530
#define HKEY_CLASSES_ROOT
Definition: winreg.h:10
#define MF_BYPOSITION
Definition: winuser.h:203
#define InsertMenu
Definition: winuser.h:5793
__wchar_t WCHAR
Definition: xmlstorage.h:180

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}
HRESULT BuildExplorerBandCategory(HMENU hBandsMenu, CATID category, DWORD dwPos, UINT *nbFound)
#define E_FAIL
Definition: ddrawi.h:102
#define IDM_EXPLORERBAR_MEDIA
Definition: resource.h:41
#define IDM_VIEW_EXPLORERBAR
Definition: resource.h:38
#define IDM_EXPLORERBAR_SEPARATOR
Definition: resource.h:44
HMENU WINAPI SHGetMenuFromID(HMENU hMenu, UINT uID)
Definition: ordinal.c:1990
BOOL WINAPI DSA_DeleteAllItems(HDSA hdsa)
Definition: dsa.c:367
static const CLSID *static CLSID *static const GUID VARIANT VARIANT *static IServiceProvider DWORD *static HMENU
Definition: ordinal.c:60
#define OutputDebugString
Definition: winbase.h:3761
#define MF_BYCOMMAND
Definition: winuser.h:202
BOOL WINAPI DeleteMenu(_In_ HMENU, _In_ UINT, _In_ UINT)

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}

◆ CanNavigateNow()

HRESULT STDMETHODCALLTYPE CShellBrowser::CanNavigateNow ( void  )
virtual

Implements IBrowserService.

Definition at line 2499 of file shellbrowser.cpp.

2500{
2501 return E_NOTIMPL;
2502}

◆ ClientToWindow()

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

Definition at line 3067 of file shellbrowser.cpp.

3068{
3069 return E_NOTIMPL;
3070}

◆ ContextSensitiveHelp()

HRESULT STDMETHODCALLTYPE CShellBrowser::ContextSensitiveHelp ( BOOL  fEnterMode)
virtual

Implements IOleWindow.

Definition at line 2150 of file shellbrowser.cpp.

2151{
2152 return E_NOTIMPL;
2153}

◆ 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}

◆ 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}

◆ 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}

◆ 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 IDS_FOLDER_OPTIONS
Definition: resource.h:133
BOOL CALLBACK AddFolderOptionsPage(HPROPSHEETPAGE thePage, LPARAM lParam)
static const unsigned int folderOptionsPageCountMax
HRESULT WINAPI DECLSPEC_HOTPATCH CoCreateInstance(REFCLSID rclsid, LPUNKNOWN pUnkOuter, DWORD dwClsContext, REFIID iid, LPVOID *ppv)
Definition: compobj.c:3325
struct _PSP * HPROPSHEETPAGE
Definition: mstask.idl:90
#define PROPSHEETHEADER
Definition: prsht.h:392
#define PropertySheet
Definition: prsht.h:400
#define memset(x, y, z)
Definition: compat.h:39
#define MAKEINTRESOURCEW(i)
Definition: winuser.h:582

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}

◆ DragLeave()

HRESULT STDMETHODCALLTYPE CShellBrowser::DragLeave ( void  )
virtual

Implements IDropTarget.

Definition at line 2332 of file shellbrowser.cpp.

2333{
2334 return E_NOTIMPL;
2335}

◆ 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}

◆ 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}

◆ EnableModelessSB()

HRESULT STDMETHODCALLTYPE CShellBrowser::EnableModelessSB ( BOOL  fEnable)
virtual

Implements IShellBrowser.

Definition at line 2226 of file shellbrowser.cpp.

2227{
2228 return E_NOTIMPL;
2229}

◆ 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);
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 {
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}
static const int BIVerticalBaseBar
HRESULT NavigateToParent()
HRESULT DoFolderOptions()
barInfo fClientBars[3]
#define IDM_CABINET_MAINMENU
Definition: resource.h:88
bool IUnknownIsEqual(IUnknown *int1, IUnknown *int2)
HRESULT IUnknown_ShowDW(IUnknown *punk, BOOL fShow)
@ VT_UNKNOWN
Definition: compat.h:2308
@ VT_INT_PTR
Definition: compat.h:2327
#define V_UNKNOWN(A)
Definition: oleauto.h:281
#define V_VT(A)
Definition: oleauto.h:211
#define V_INTREF(A)
Definition: oleauto.h:252
#define IsEqualIID(riid1, riid2)
Definition: guiddef.h:95
#define IsEqualCLSID(rclsid1, rclsid2)
Definition: guiddef.h:96
#define CGID_InternetButtons
Definition: shlguid.h:246
#define CGID_IExplorerToolbar
#define CGID_MenuBand
#define TRACE(s)
Definition: solgame.cpp:4
#define S_FALSE
Definition: winerror.h:2357
#define LoadMenu
Definition: winuser.h:5807
#define MAKEINTRESOURCE
Definition: winuser.h:591

◆ 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}

◆ 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}

◆ 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}
HRESULT FireEvent(DISPID dispIdMember, int argCount, VARIANT *arguments)
@ VT_I4
Definition: compat.h:2298
@ VT_BOOL
Definition: compat.h:2306
#define V_BOOL(A)
Definition: oleauto.h:224
#define V_I4(A)
Definition: oleauto.h:247
#define DISPID_COMMANDSTATECHANGE
Definition: webchild.h:40

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 ** end()
Definition: atlcom.h:1070
IUnknown ** begin()
Definition: atlcom.h:1065
FT_Vector * vec
Definition: ftbbox.c:448
GLenum const GLfloat * params
Definition: glext.h:5645
HRESULT QueryInterface([in] REFIID riid, [out, iid_is(riid)] void **ppvObject)
#define GUID_NULL
Definition: ks.h:106
struct stdole::DISPPARAMS DISPPARAMS
#define DISPATCH_METHOD
Definition: oleauto.h:1006

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}
@ VT_BSTR
Definition: compat.h:2303
@ VT_BYREF
Definition: compat.h:2342
@ VT_VARIANT
Definition: compat.h:2307
@ VT_DISPATCH
Definition: compat.h:2304
#define V_VARIANTREF(A)
Definition: oleauto.h:283
#define V_BSTR(A)
Definition: oleauto.h:226
#define V_DISPATCH(A)
Definition: oleauto.h:239
#define DISPID_NAVIGATECOMPLETE2
Definition: webchild.h:54

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}

◆ get_Application()

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

Definition at line 2973 of file shellbrowser.cpp.

2974{
2975 return E_NOTIMPL;
2976}

◆ 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}

◆ get_Container()

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

Definition at line 2983 of file shellbrowser.cpp.

2984{
2985 return E_NOTIMPL;
2986}

◆ get_Document()

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

Definition at line 2988 of file shellbrowser.cpp.

2989{
2990 return E_NOTIMPL;
2991}

◆ get_FullName()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_FullName ( BSTR FullName)
virtual

Definition at line 3092 of file shellbrowser.cpp.

3093{
3094 return E_NOTIMPL;
3095}

◆ 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}

◆ get_Height()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_Height ( long pl)
virtual

Definition at line 3035 of file shellbrowser.cpp.

3036{
3037 return E_NOTIMPL;
3038}

◆ 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}

◆ get_Left()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_Left ( long pl)
virtual

Definition at line 3005 of file shellbrowser.cpp.

3006{
3007 return E_NOTIMPL;
3008}

◆ get_LocationName()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_LocationName ( BSTR LocationName)
virtual

Definition at line 3047 of file shellbrowser.cpp.

3048{
3049 return E_NOTIMPL;
3050}

◆ get_LocationURL()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_LocationURL ( BSTR LocationURL)
virtual

Definition at line 3052 of file shellbrowser.cpp.

3053{
3054 return E_NOTIMPL;
3055}

◆ 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}

◆ get_Name()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_Name ( BSTR Name)
virtual

Definition at line 3082 of file shellbrowser.cpp.

3083{
3084 return E_NOTIMPL;
3085}

◆ 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}

◆ get_Parent()

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

Definition at line 2978 of file shellbrowser.cpp.

2979{
2980 return E_NOTIMPL;
2981}

◆ get_Path()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_Path ( BSTR Path)
virtual

Definition at line 3097 of file shellbrowser.cpp.

3098{
3099 return E_NOTIMPL;
3100}

◆ get_ReadyState()

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

Definition at line 3212 of file shellbrowser.cpp.

3213{
3214 return E_NOTIMPL;
3215}

◆ 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}

◆ 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}

◆ 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}

◆ 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}

◆ 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}

◆ get_StatusText()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_StatusText ( BSTR StatusText)
virtual

Definition at line 3122 of file shellbrowser.cpp.

3123{
3124 return E_NOTIMPL;
3125}

◆ 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}

◆ get_ToolBar()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_ToolBar ( int Value)
virtual

Definition at line 3132 of file shellbrowser.cpp.

3133{
3134 return E_NOTIMPL;
3135}

◆ get_Top()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_Top ( long pl)
virtual

Definition at line 3015 of file shellbrowser.cpp.

3016{
3017 return E_NOTIMPL;
3018}

◆ 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}

◆ get_Type()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_Type ( BSTR Type)
virtual

Definition at line 2998 of file shellbrowser.cpp.

2999{
3000 return E_NOTIMPL;
3001}

◆ 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}

◆ get_Width()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_Width ( long pl)
virtual

Definition at line 3025 of file shellbrowser.cpp.

3026{
3027 return E_NOTIMPL;
3028}

◆ 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 (*cache)->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}
HRESULT CBaseBarSite_CreateInstance(REFIID riid, void **ppv, BOOL bVertical)
HRESULT CBaseBar_CreateInstance(REFIID riid, void **ppv, BOOL vertical)
Definition: CBaseBar.cpp:564
CComPtr< IUnknown > clientBar
static const int BIHorizontalBaseBar
REFIID riid
Definition: atlbase.h:39
Definition: cache.c:49

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}

◆ 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}
VOID WINAPI GetEffectiveClientRect(HWND hwnd, LPRECT lpRect, const INT *lpInfo)
Definition: commctrl.c:629
GLint GLint GLint GLint GLint x
Definition: gl.h:1548
LONG right
Definition: windef.h:308
LONG bottom
Definition: windef.h:309
LONG top
Definition: windef.h:307
LONG left
Definition: windef.h:306

◆ 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}

◆ 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}

◆ 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
#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}

◆ 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}

◆ 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;
2544 if (*ppole == NULL)
2545 return E_FAIL;
2546 return S_OK;
2547}
ULONG AddRef()

◆ 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}

◆ 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}
static const int BIInternetToolbar
HRESULT WINAPI IUnknown_QueryService(IUnknown *, REFGUID, REFIID, LPVOID *)
Definition: ordinal.c:1494
#define SID_IBandSite

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}

◆ GetOleObject()

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

Implements IBrowserService.

Definition at line 2409 of file shellbrowser.cpp.

2410{
2411 return E_NOTIMPL;
2412}

◆ GetPalette()

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

Implements IBrowserService.

Definition at line 2570 of file shellbrowser.cpp.

2571{
2572 return E_NOTIMPL;
2573}

◆ GetParentSite()

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

Implements IBrowserService.

Definition at line 2394 of file shellbrowser.cpp.

2395{
2396 return E_NOTIMPL;
2397}

◆ 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;
2510 return S_OK;
2511}

◆ GetPositionCookie()

HRESULT STDMETHODCALLTYPE CShellBrowser::GetPositionCookie ( DWORD pdwPositioncookie)
virtual

Implements IPersistHistory.

Definition at line 3400 of file shellbrowser.cpp.

3401{
3402 return E_NOTIMPL;
3403}

◆ GetProperty()

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

Definition at line 3077 of file shellbrowser.cpp.

3078{
3079 return E_NOTIMPL;
3080}

◆ 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}
_In_ void _In_ PCCERT_CONTEXT _In_opt_ LPFILETIME _In_ DWORD _In_ DWORD _Outptr_opt_ void ** ppvObject
Definition: wincrypt.h:6082

◆ 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}

◆ 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}

◆ 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}
HRESULT CTravelLog_CreateInstance(REFIID riid, void **ppv)
Definition: travellog.cpp:626
_In_ POINTL * pptl
Definition: winddi.h:3741

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}

◆ GetTypeInfoCount()

HRESULT STDMETHODCALLTYPE CShellBrowser::GetTypeInfoCount ( UINT pctinfo)
virtual

Definition at line 2372 of file shellbrowser.cpp.

2373{
2374 return E_NOTIMPL;
2375}

◆ GetViewRect()

HRESULT STDMETHODCALLTYPE CShellBrowser::GetViewRect ( RECT prc)
virtual

Implements IBrowserService2.

Definition at line 2590 of file shellbrowser.cpp.

2591{
2592 return E_NOTIMPL;
2593}

◆ 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}

◆ GetViewWindow()

HRESULT STDMETHODCALLTYPE CShellBrowser::GetViewWindow ( HWND phwndView)
virtual

Implements IBrowserService2.

Definition at line 2652 of file shellbrowser.cpp.

2653{
2654 return E_NOTIMPL;
2655}

◆ 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}

◆ 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}
DWORD dwWindowID
Definition: tlogstg.idl:24
LPWSTR lpszTitle
Definition: tlogstg.idl:29
LPWSTR lpszUrlLocation
Definition: tlogstg.idl:28
UINT uiCP
Definition: tlogstg.idl:25
PIDLIST_ABSOLUTE pidl
Definition: tlogstg.idl:26
LPWSTR lpszUrl
Definition: tlogstg.idl:27

◆ GetWindowProc()

virtual WNDPROC CShellBrowser::GetWindowProc ( )
inlinevirtual

Reimplemented from ATL::CWindowImplBaseT< TBase, TWinTraits >.

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 IDI_CABINET
Definition: resource.h:10
static LRESULT CALLBACK StartWindowProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
Definition: atlwin.h:1613
static const TCHAR szCabinetWndClass[]
#define _T(x)
Definition: vfdio.h:22
#define COLOR_WINDOW
Definition: winuser.h:912
#define IDC_ARROW
Definition: winuser.h:682
#define CS_DBLCLKS
Definition: winuser.h:646
#define LoadIcon
Definition: winuser.h:5803
WNDCLASSEXA WNDCLASSEX
Definition: winuser.h:5709

◆ 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:2589

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:2590

Referenced by OnGoForward().

◆ GoHome()

HRESULT STDMETHODCALLTYPE CShellBrowser::GoHome ( )
virtual

Definition at line 2922 of file shellbrowser.cpp.

2923{
2924 return E_NOTIMPL;
2925}

Referenced by OnGoHome().

◆ GoSearch()

HRESULT STDMETHODCALLTYPE CShellBrowser::GoSearch ( )
virtual

Definition at line 2927 of file shellbrowser.cpp.

2928{
2929 return E_NOTIMPL;
2930}

◆ 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}

◆ 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}

◆ 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
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}
@ Create
Definition: registry.c:563
HRESULT CInternetToolbar_CreateInstance(REFIID riid, void **ppv)
Definition: browseui.cpp:78
BOOL UpdateWindow()
Definition: atlwin.h:1339
void Initialize(HWND parent, IUnknown *explorerToolbar)
#define E_OUTOFMEMORY
Definition: ddrawi.h:100
HRESULT WINAPI IUnknown_Exec(IUnknown *lpUnknown, REFGUID pguidCmdGroup, DWORD nCmdID, DWORD nCmdexecopt, VARIANT *pvaIn, VARIANT *pvaOut)
Definition: