ReactOS  0.4.13-dev-259-g5ca9c9c
CShellBrowser Class Reference
Inheritance diagram for CShellBrowser:
Collaboration diagram for CShellBrowser:

Classes

class  barInfo
 

Public Member Functions

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

Static Public Member Functions

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

Private Attributes

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

Static Private Attributes

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

Additional Inherited Members

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

Detailed Description

Definition at line 255 of file shellbrowser.cpp.

Constructor & Destructor Documentation

◆ CShellBrowser()

CShellBrowser::CShellBrowser ( )

Definition at line 708 of file shellbrowser.cpp.

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

◆ ~CShellBrowser()

CShellBrowser::~CShellBrowser ( )

Definition at line 720 of file shellbrowser.cpp.

721 {
722  if (menuDsa)
724 }
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 2723 of file shellbrowser.cpp.

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

◆ _CancelPendingView()

HRESULT STDMETHODCALLTYPE CShellBrowser::_CancelPendingView ( )
virtual

Implements IBrowserService2.

Definition at line 2728 of file shellbrowser.cpp.

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

◆ _CloseAndReleaseToolbars()

HRESULT STDMETHODCALLTYPE CShellBrowser::_CloseAndReleaseToolbars ( BOOL  fClose)
virtual

Implements IBrowserService2.

Definition at line 2865 of file shellbrowser.cpp.

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

◆ _DisableModeless()

HRESULT STDMETHODCALLTYPE CShellBrowser::_DisableModeless ( )
virtual

Implements IBrowserService2.

Definition at line 2743 of file shellbrowser.cpp.

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

◆ _ExecChildren()

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

Implements IBrowserService2.

Definition at line 2763 of file shellbrowser.cpp.

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

◆ _FindTBar()

UINT STDMETHODCALLTYPE CShellBrowser::_FindTBar ( IUnknown punkSrc)
virtual

Implements IBrowserService2.

Definition at line 2881 of file shellbrowser.cpp.

2882 {
2883  return 0;
2884 }

◆ _get_itbLastFocus()

UINT STDMETHODCALLTYPE CShellBrowser::_get_itbLastFocus ( )
virtual

Implements IBrowserService2.

Definition at line 2790 of file shellbrowser.cpp.

2791 {
2792  return 0;
2793 }

◆ _GetBorderDWHelper()

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

Implements IBrowserService2.

Definition at line 2905 of file shellbrowser.cpp.

2906 {
2907  return E_NOTIMPL;
2908 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ _GetEffectiveClientArea()

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

Implements IBrowserService2.

Definition at line 2825 of file shellbrowser.cpp.

2826 {
2827  return E_NOTIMPL;
2828 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ _GetToolbarCount()

int STDMETHODCALLTYPE CShellBrowser::_GetToolbarCount ( )
virtual

Implements IBrowserService2.

Definition at line 2845 of file shellbrowser.cpp.

2846 {
2847  return 0;
2848 }

◆ _GetToolbarItem()

LPTOOLBARITEM STDMETHODCALLTYPE CShellBrowser::_GetToolbarItem ( int  itb)
virtual

Implements IBrowserService2.

Definition at line 2850 of file shellbrowser.cpp.

2851 {
2852  return NULL;
2853 }
smooth NULL
Definition: ftsmooth.c:416

◆ _GetViewBorderRect()

HRESULT STDMETHODCALLTYPE CShellBrowser::_GetViewBorderRect ( RECT prc)
virtual

Implements IBrowserService2.

Definition at line 2805 of file shellbrowser.cpp.

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

◆ _Initialize()

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

Implements IBrowserService2.

Definition at line 2718 of file shellbrowser.cpp.

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

◆ _LoadToolbars()

HRESULT STDMETHODCALLTYPE CShellBrowser::_LoadToolbars ( IStream pstm)
virtual

Implements IBrowserService2.

Definition at line 2860 of file shellbrowser.cpp.

2861 {
2862  return E_NOTIMPL;
2863 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ _MaySaveChanges()

HRESULT STDMETHODCALLTYPE CShellBrowser::_MaySaveChanges ( )
virtual

Implements IBrowserService2.

Definition at line 2733 of file shellbrowser.cpp.

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

◆ _NavigateToPidl()

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

Implements IBrowserService2.

Definition at line 2748 of file shellbrowser.cpp.

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

◆ _OnFocusChange()

HRESULT STDMETHODCALLTYPE CShellBrowser::_OnFocusChange ( UINT  itb)
virtual

Implements IBrowserService2.

Definition at line 2780 of file shellbrowser.cpp.

2781 {
2782  return E_NOTIMPL;
2783 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ _PauseOrResumeView()

HRESULT STDMETHODCALLTYPE CShellBrowser::_PauseOrResumeView ( BOOL  fPaused)
virtual

Implements IBrowserService2.

Definition at line 2738 of file shellbrowser.cpp.

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

◆ _put_itbLastFocus()

HRESULT STDMETHODCALLTYPE CShellBrowser::_put_itbLastFocus ( UINT  itbLastFocus)
virtual

Implements IBrowserService2.

Definition at line 2795 of file shellbrowser.cpp.

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

◆ _ResizeNextBorder()

HRESULT STDMETHODCALLTYPE CShellBrowser::_ResizeNextBorder ( UINT  itb)
virtual

Implements IBrowserService2.

Definition at line 2815 of file shellbrowser.cpp.

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

◆ _ResizeNextBorderHelper()

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

Implements IBrowserService2.

Definition at line 2876 of file shellbrowser.cpp.

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

◆ _ResizeView()

HRESULT STDMETHODCALLTYPE CShellBrowser::_ResizeView ( )
virtual

Implements IBrowserService2.

Definition at line 2820 of file shellbrowser.cpp.

2821 {
2822  return E_NOTIMPL;
2823 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ _SaveToolbars()

HRESULT STDMETHODCALLTYPE CShellBrowser::_SaveToolbars ( IStream pstm)
virtual

Implements IBrowserService2.

Definition at line 2855 of file shellbrowser.cpp.

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

◆ _SendChildren()

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

Implements IBrowserService2.

Definition at line 2769 of file shellbrowser.cpp.

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

◆ _SetFocus()

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

Implements IBrowserService2.

Definition at line 2886 of file shellbrowser.cpp.

2887 {
2888  return E_NOTIMPL;
2889 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ _SwitchActivationNow()

HRESULT STDMETHODCALLTYPE CShellBrowser::_SwitchActivationNow ( )
virtual

Implements IBrowserService2.

Definition at line 2758 of file shellbrowser.cpp.

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

◆ _TryShell2Rename()

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

Implements IBrowserService2.

Definition at line 2753 of file shellbrowser.cpp.

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

◆ _UIActivateView()

HRESULT STDMETHODCALLTYPE CShellBrowser::_UIActivateView ( UINT  uState)
virtual

Implements IBrowserService2.

Definition at line 2800 of file shellbrowser.cpp.

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

◆ _UpdateViewRectSize()

HRESULT STDMETHODCALLTYPE CShellBrowser::_UpdateViewRectSize ( )
virtual

Implements IBrowserService2.

Definition at line 2810 of file shellbrowser.cpp.

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

◆ ActivatePendingView()

HRESULT STDMETHODCALLTYPE CShellBrowser::ActivatePendingView ( )
virtual

Implements IBrowserService2.

Definition at line 2647 of file shellbrowser.cpp.

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

◆ AllowViewResize()

HRESULT STDMETHODCALLTYPE CShellBrowser::AllowViewResize ( BOOL  f)
virtual

Implements IBrowserService2.

Definition at line 2693 of file shellbrowser.cpp.

2694 {
2695  return E_NOTIMPL;
2696 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ BrowseObject()

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

Implements IShellBrowser.

Definition at line 2249 of file shellbrowser.cpp.

2250 {
2251  if ((wFlags & SBSP_EXPLOREMODE) != NULL)
2252  ShowBand(CLSID_ExplorerBand, true);
2253 
2255  if (fTravelLog)
2257  return BrowseToPIDL(pidl, flags);
2258 }
static const long BTP_UPDATE_NEXT_HISTORY
static const long BTP_UPDATE_CUR_HISTORY
smooth NULL
Definition: ftsmooth.c:416
HRESULT BrowseToPIDL(LPCITEMIDLIST pidl, long flags)
GLbitfield flags
Definition: glext.h:7161
_In_ DWORD _Out_ _In_ WORD wFlags
Definition: wincon.h:519
HRESULT ShowBand(const CLSID &classID, bool vertical)
CComPtr< ITravelLog > fTravelLog

Referenced by Navigate().

◆ BrowseToPath()

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

Definition at line 914 of file shellbrowser.cpp.

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

Referenced by BrowseToPIDL().

◆ BrowseToPIDL()

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

Definition at line 801 of file shellbrowser.cpp.

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

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

◆ BuildExplorerBandCategory()

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

Definition at line 1761 of file shellbrowser.cpp.

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

Referenced by BuildExplorerBandMenu().

◆ BuildExplorerBandMenu()

HRESULT CShellBrowser::BuildExplorerBandMenu ( )

Definition at line 1737 of file shellbrowser.cpp.

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

Referenced by SetMenuSB().

◆ CacheOLEServer()

HRESULT STDMETHODCALLTYPE CShellBrowser::CacheOLEServer ( IOleObject pole)
virtual

Implements IBrowserService.

Definition at line 2565 of file shellbrowser.cpp.

2566 {
2567  return E_NOTIMPL;
2568 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ CanNavigateNow()

HRESULT STDMETHODCALLTYPE CShellBrowser::CanNavigateNow ( void  )
virtual

Implements IBrowserService.

Definition at line 2510 of file shellbrowser.cpp.

2511 {
2512  return E_NOTIMPL;
2513 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ ClientToWindow()

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

Definition at line 3078 of file shellbrowser.cpp.

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

◆ ContextSensitiveHelp()

HRESULT STDMETHODCALLTYPE CShellBrowser::ContextSensitiveHelp ( BOOL  fEnterMode)
virtual

Implements IOleWindow.

Definition at line 2161 of file shellbrowser.cpp.

2162 {
2163  return E_NOTIMPL;
2164 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ CreateBrowserPropSheetExt()

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

Implements IBrowserService2.

Definition at line 2658 of file shellbrowser.cpp.

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

◆ CreateViewWindow()

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

Implements IBrowserService2.

Definition at line 2652 of file shellbrowser.cpp.

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

◆ DisplayParseError()

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

Implements IBrowserService.

Definition at line 2465 of file shellbrowser.cpp.

2466 {
2467  return E_NOTIMPL;
2468 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ DoFolderOptions()

HRESULT CShellBrowser::DoFolderOptions ( )

Definition at line 1315 of file shellbrowser.cpp.

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

Referenced by Exec(), and OnFolderOptions().

◆ DragEnter()

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

Implements IDropTarget.

Definition at line 2332 of file shellbrowser.cpp.

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

◆ DragLeave()

HRESULT STDMETHODCALLTYPE CShellBrowser::DragLeave ( void  )
virtual

Implements IDropTarget.

Definition at line 2343 of file shellbrowser.cpp.

2344 {
2345  return E_NOTIMPL;
2346 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ DragOver()

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

Implements IDropTarget.

Definition at line 2338 of file shellbrowser.cpp.

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

◆ Drop()

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

Implements IDropTarget.

Definition at line 2348 of file shellbrowser.cpp.

2350 {
2351  return E_NOTIMPL;
2352 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ EnableModelessSB()

HRESULT STDMETHODCALLTYPE CShellBrowser::EnableModelessSB ( BOOL  fEnable)
virtual

Implements IShellBrowser.

Definition at line 2237 of file shellbrowser.cpp.

2238 {
2239  return E_NOTIMPL;
2240 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ Exec()

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

Implements IOleCommandTarget.

Definition at line 1998 of file shellbrowser.cpp.

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

Referenced by OnExplorerBar().

◆ ExecWB()

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

Definition at line 3203 of file shellbrowser.cpp.

3205 {
3206  return E_NOTIMPL;
3207 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ FindWindowByIndex()

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

Implements ITravelLogClient.

Definition at line 3298 of file shellbrowser.cpp.

3299 {
3300  return E_NOTIMPL;
3301 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ FireCommandStateChange()

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

Definition at line 1564 of file shellbrowser.cpp.

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

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

◆ FireCommandStateChangeAll()

HRESULT CShellBrowser::FireCommandStateChangeAll ( )

Definition at line 1576 of file shellbrowser.cpp.

1577 {
1578  return FireCommandStateChange(false, -1);
1579 }
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 1507 of file shellbrowser.cpp.

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

Referenced by FireCommandStateChange(), and FireNavigateComplete().

◆ FireNavigateComplete()

HRESULT CShellBrowser::FireNavigateComplete ( const wchar_t newDirectory)

Definition at line 1545 of file shellbrowser.cpp.

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

Referenced by BrowseToPath().

◆ ForwardViewMsg()

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

Implements IBrowserService2.

Definition at line 2835 of file shellbrowser.cpp.

2836 {
2837  return 0;
2838 }

◆ get_AddressBar()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_AddressBar ( VARIANT_BOOL Value)
virtual

Definition at line 3278 of file shellbrowser.cpp.

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

◆ get_Application()

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

Definition at line 2984 of file shellbrowser.cpp.

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

◆ get_Busy()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_Busy ( VARIANT_BOOL pBool)
virtual

Definition at line 3068 of file shellbrowser.cpp.

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

◆ get_Container()

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

Definition at line 2994 of file shellbrowser.cpp.

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

◆ get_Document()

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

Definition at line 2999 of file shellbrowser.cpp.

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

◆ get_FullName()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_FullName ( BSTR FullName)
virtual

Definition at line 3103 of file shellbrowser.cpp.

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

◆ get_FullScreen()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_FullScreen ( VARIANT_BOOL pbFullScreen)
virtual

Definition at line 3163 of file shellbrowser.cpp.

3164 {
3165  return E_NOTIMPL;
3166 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ get_Height()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_Height ( long pl)
virtual

Definition at line 3046 of file shellbrowser.cpp.

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

◆ get_HWND()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_HWND ( SHANDLE_PTR pHWND)
virtual

Definition at line 3098 of file shellbrowser.cpp.

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

◆ get_Left()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_Left ( long pl)
virtual

Definition at line 3016 of file shellbrowser.cpp.

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

◆ get_LocationName()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_LocationName ( BSTR LocationName)
virtual

Definition at line 3058 of file shellbrowser.cpp.

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

◆ get_LocationURL()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_LocationURL ( BSTR LocationURL)
virtual

Definition at line 3063 of file shellbrowser.cpp.

3064 {
3065  return E_NOTIMPL;
3066 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ get_MenuBar()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_MenuBar ( VARIANT_BOOL Value)
virtual

Definition at line 3153 of file shellbrowser.cpp.

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

◆ get_Name()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_Name ( BSTR Name)
virtual

Definition at line 3093 of file shellbrowser.cpp.

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

◆ get_Offline()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_Offline ( VARIANT_BOOL pbOffline)
virtual

Definition at line 3228 of file shellbrowser.cpp.

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

◆ get_Parent()

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

Definition at line 2989 of file shellbrowser.cpp.

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

◆ get_Path()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_Path ( BSTR Path)
virtual

Definition at line 3108 of file shellbrowser.cpp.

3109 {
3110  return E_NOTIMPL;
3111 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ get_ReadyState()

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

Definition at line 3223 of file shellbrowser.cpp.

3224 {
3225  return E_NOTIMPL;
3226 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ get_RegisterAsBrowser()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_RegisterAsBrowser ( VARIANT_BOOL pbRegister)
virtual

Definition at line 3248 of file shellbrowser.cpp.

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

◆ get_RegisterAsDropTarget()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_RegisterAsDropTarget ( VARIANT_BOOL pbRegister)
virtual

Definition at line 3258 of file shellbrowser.cpp.

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

◆ get_Resizable()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_Resizable ( VARIANT_BOOL Value)
virtual

Definition at line 3288 of file shellbrowser.cpp.

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

◆ get_Silent()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_Silent ( VARIANT_BOOL pbSilent)
virtual

Definition at line 3238 of file shellbrowser.cpp.

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

◆ get_StatusBar()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_StatusBar ( VARIANT_BOOL pBool)
virtual

Definition at line 3123 of file shellbrowser.cpp.

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

◆ get_StatusText()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_StatusText ( BSTR StatusText)
virtual

Definition at line 3133 of file shellbrowser.cpp.

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

◆ get_TheaterMode()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_TheaterMode ( VARIANT_BOOL pbRegister)
virtual

Definition at line 3268 of file shellbrowser.cpp.

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

◆ get_ToolBar()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_ToolBar ( int Value)
virtual

Definition at line 3143 of file shellbrowser.cpp.

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

◆ get_Top()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_Top ( long pl)
virtual

Definition at line 3026 of file shellbrowser.cpp.

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

◆ get_TopLevelContainer()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_TopLevelContainer ( VARIANT_BOOL pBool)
virtual

Definition at line 3004 of file shellbrowser.cpp.

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

◆ get_Type()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_Type ( BSTR Type)
virtual

Definition at line 3009 of file shellbrowser.cpp.

3010 {
3011  return E_NOTIMPL;
3012 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ get_Visible()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_Visible ( VARIANT_BOOL pBool)
virtual

Definition at line 3113 of file shellbrowser.cpp.

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

◆ get_Width()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_Width ( long pl)
virtual

Definition at line 3036 of file shellbrowser.cpp.

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

◆ GetBaseBar()

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

Definition at line 1105 of file shellbrowser.cpp.

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

Referenced by IsBandLoaded(), and ShowBand().

◆ GetBaseBrowserData()

HRESULT STDMETHODCALLTYPE CShellBrowser::GetBaseBrowserData ( LPCBASEBROWSERDATA pbbd)
virtual

Implements IBrowserService2.

Definition at line 2668 of file shellbrowser.cpp.

2669 {
2670  return E_NOTIMPL;
2671 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ GetBorderDW()

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

Definition at line 1876 of file shellbrowser.cpp.

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

◆ GetBrowserByIndex()

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

Implements IBrowserService.

Definition at line 2534 of file shellbrowser.cpp.

2535 {
2536  return E_NOTIMPL;
2537 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ GetBrowserIndex()

DWORD STDMETHODCALLTYPE CShellBrowser::GetBrowserIndex ( )
virtual

Implements IBrowserService.

Definition at line 2529 of file shellbrowser.cpp.

2530 {
2531  return -1;
2532 }

Referenced by SaveHistory().

◆ GetClassID()

HRESULT STDMETHODCALLTYPE CShellBrowser::GetClassID ( CLSID pClassID)
virtual

Implements IPersist.

Definition at line 3322 of file shellbrowser.cpp.

3323 {
3324  return E_NOTIMPL;
3325 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ GetControlWindow()

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

Implements IShellBrowser.

Definition at line 2265 of file shellbrowser.cpp.

2266 {
2267  if (lphwnd == NULL)
2268  return E_POINTER;
2269  *lphwnd = NULL;
2270  switch (id)
2271  {
2272  case FCW_TOOLBAR:
2273  *lphwnd = fToolbarProxy.m_hWnd;
2274  return S_OK;
2275  case FCW_STATUS:
2276  *lphwnd = fStatusBar;
2277  return S_OK;
2278  case FCW_TREE:
2279  // find the directory browser and return it
2280  // this should be used only to determine if a tree is present
2281  return S_OK;
2282  case FCW_PROGRESS:
2283  // is this a progress dialog?
2284  return S_OK;
2285  }
2286  return S_OK;
2287 }
CToolbarProxy fToolbarProxy
smooth NULL
Definition: ftsmooth.c:416
HWND m_hWnd
Definition: atlwin.h:268
#define S_OK
Definition: intsafe.h:59
#define E_POINTER
Definition: winerror.h:2365

◆ GetFlags()

HRESULT STDMETHODCALLTYPE CShellBrowser::GetFlags ( DWORD pdwFlags)
virtual

Implements IBrowserService.

Definition at line 2505 of file shellbrowser.cpp.

2506 {
2507  return E_NOTIMPL;
2508 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ GetFolderSetData()

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

Implements IBrowserService2.

Definition at line 2775 of file shellbrowser.cpp.

2776 {
2777  return E_NOTIMPL;
2778 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ GetHistoryObject()

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

Implements IBrowserService.

Definition at line 2539 of file shellbrowser.cpp.

2540 {
2541  if (ppole == NULL || pstm == NULL || ppbc == NULL)
2542  return E_INVALIDARG;
2543  *ppole = fHistoryObject;
2544  if (fHistoryObject != NULL)
2546  *pstm = fHistoryStream;
2547  if (fHistoryStream != NULL)
2549  *ppbc = fHistoryBindContext;
2550  if (fHistoryBindContext != NULL)
2552  fHistoryObject = NULL;
2553  fHistoryStream = NULL;
2555  if (*ppole == NULL)
2556  return E_FAIL;
2557  return S_OK;
2558 }
IStream * fHistoryStream
IOleObject * fHistoryObject
#define E_FAIL
Definition: ddrawi.h:102
#define E_INVALIDARG
Definition: ddrawi.h:101
smooth NULL
Definition: ftsmooth.c:416
ULONG AddRef()
IBindCtx * fHistoryBindContext
#define S_OK
Definition: intsafe.h:59

◆ GetIDsOfNames()

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

Definition at line 2393 of file shellbrowser.cpp.

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

◆ GetMenuBand()

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

Definition at line 1085 of file shellbrowser.cpp.

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

Referenced by SetMenuSB(), and WindowProc().

◆ GetNavigateState()

HRESULT STDMETHODCALLTYPE CShellBrowser::GetNavigateState ( BNSTATE pbnstate)
virtual

Implements IBrowserService.

Definition at line 2480 of file shellbrowser.cpp.

2481 {
2482  return E_NOTIMPL;
2483 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ GetOleObject()

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

Implements IBrowserService.

Definition at line 2420 of file shellbrowser.cpp.

2421 {
2422  return E_NOTIMPL;
2423 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ GetPalette()

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

Implements IBrowserService.

Definition at line 2581 of file shellbrowser.cpp.

2582 {
2583  return E_NOTIMPL;
2584 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ GetParentSite()

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

Implements IBrowserService.

Definition at line 2405 of file shellbrowser.cpp.

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

◆ GetPidl()

HRESULT STDMETHODCALLTYPE CShellBrowser::GetPidl ( LPITEMIDLIST ppidl)
virtual

Definition at line 2515 of file shellbrowser.cpp.

2516 {
2517  // called by explorer bar to get current pidl
2518  if (ppidl == NULL)
2519  return E_POINTER;
2520  *ppidl = ILClone(fCurrentDirectoryPIDL);
2521  return S_OK;
2522 }
smooth NULL
Definition: ftsmooth.c:416
LPITEMIDLIST fCurrentDirectoryPIDL
#define S_OK
Definition: intsafe.h:59
LPITEMIDLIST WINAPI ILClone(LPCITEMIDLIST pidl)
Definition: pidl.c:228
#define E_POINTER
Definition: winerror.h:2365

◆ GetPositionCookie()

HRESULT STDMETHODCALLTYPE CShellBrowser::GetPositionCookie ( DWORD pdwPositioncookie)
virtual

Implements IPersistHistory.

Definition at line 3411 of file shellbrowser.cpp.

3412 {
3413  return E_NOTIMPL;
3414 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ GetProperty()

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

Definition at line 3088 of file shellbrowser.cpp.

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

◆ GetPropertyBag()

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

Definition at line 2375 of file shellbrowser.cpp.

2376 {
2377  if (ppvObject == NULL)
2378  return E_POINTER;
2379  *ppvObject = NULL;
2380  return E_NOTIMPL;
2381 }
smooth NULL
Definition: ftsmooth.c:416
REFIID LPVOID * ppvObject
Definition: precomp.h:44
#define E_NOTIMPL
Definition: ddrawi.h:99
#define E_POINTER
Definition: winerror.h:2365

◆ GetSetCodePage()

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

Implements IBrowserService.

Definition at line 2570 of file shellbrowser.cpp.

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

◆ GetTitle()

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

Implements IBrowserService.

Definition at line 2415 of file shellbrowser.cpp.

2416 {
2417  return E_NOTIMPL;
2418 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ GetTravelLog()

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

Implements IBrowserService.

Definition at line 2425 of file shellbrowser.cpp.

2426 {
2427  HRESULT hResult;
2428 
2429  // called by toolbar when displaying tooltips
2430  if (pptl == NULL)
2431  return E_FAIL;
2432 
2433  *pptl = NULL;
2434  if (fTravelLog.p == NULL)
2435  {
2437  if (FAILED_UNEXPECTEDLY(hResult))
2438  return hResult;
2439  }
2440  *pptl = fTravelLog.p;
2441  fTravelLog.p->AddRef();
2442  return S_OK;
2443 }
#define IID_PPV_ARG(Itype, ppType)
#define E_FAIL
Definition: ddrawi.h:102
_In_ POINTL * pptl
Definition: winddi.h:3741
smooth NULL
Definition: ftsmooth.c:416
LONG HRESULT
Definition: typedefs.h:77
#define FAILED_UNEXPECTEDLY(hr)
Definition: shellutils.h:35
ULONG AddRef()
#define S_OK
Definition: intsafe.h:59
CComPtr< ITravelLog > fTravelLog
HRESULT CTravelLog_CreateInstance(REFIID riid, void **ppv)
Definition: travellog.cpp:626

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

◆ GetTypeInfo()

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

Definition at line 2388 of file shellbrowser.cpp.

2389 {
2390  return E_NOTIMPL;
2391 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ GetTypeInfoCount()

HRESULT STDMETHODCALLTYPE CShellBrowser::GetTypeInfoCount ( UINT pctinfo)
virtual

Definition at line 2383 of file shellbrowser.cpp.

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

◆ GetViewRect()

HRESULT STDMETHODCALLTYPE CShellBrowser::GetViewRect ( RECT prc)
virtual

Implements IBrowserService2.

Definition at line 2601 of file shellbrowser.cpp.

2602 {
2603  return E_NOTIMPL;
2604 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ GetViewStateStream()

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

Implements IShellBrowser.

Definition at line 2260 of file shellbrowser.cpp.

2261 {
2262  return E_NOTIMPL;
2263 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ GetViewWindow()

HRESULT STDMETHODCALLTYPE CShellBrowser::GetViewWindow ( HWND phwndView)
virtual

Implements IBrowserService2.

Definition at line 2663 of file shellbrowser.cpp.

2664 {
2665  return E_NOTIMPL;
2666 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ GetWindow()

HRESULT STDMETHODCALLTYPE CShellBrowser::GetWindow ( HWND lphwnd)
virtual

Implements IOleWindow.

Definition at line 2153 of file shellbrowser.cpp.

2154 {
2155  if (lphwnd == NULL)
2156  return E_POINTER;
2157  *lphwnd = m_hWnd;
2158  return S_OK;
2159 }
smooth NULL
Definition: ftsmooth.c:416
HWND m_hWnd
Definition: atlwin.h:268
#define S_OK
Definition: intsafe.h:59
#define E_POINTER
Definition: winerror.h:2365

◆ GetWindowData()

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

Implements ITravelLogClient.

Definition at line 3303 of file shellbrowser.cpp.

3304 {
3305  if (pWinData == NULL)
3306  return E_POINTER;
3307 
3308  pWinData->dwWindowID = -1;
3309  pWinData->uiCP = 0;
3310  pWinData->pidl = ILClone(fCurrentDirectoryPIDL);
3311  pWinData->lpszUrl = NULL;
3312  pWinData->lpszUrlLocation = NULL;
3313  pWinData->lpszTitle = NULL;
3314  return S_OK;
3315 }
UINT uiCP
Definition: tlogstg.idl:25
DWORD dwWindowID
Definition: tlogstg.idl:24
LPWSTR lpszUrl
Definition: tlogstg.idl:27
smooth NULL
Definition: ftsmooth.c:416
LPWSTR lpszTitle
Definition: tlogstg.idl:29
LPWSTR lpszUrlLocation
Definition: tlogstg.idl:28
LPITEMIDLIST fCurrentDirectoryPIDL
PIDLIST_ABSOLUTE pidl
Definition: tlogstg.idl:26
#define S_OK
Definition: intsafe.h:59
LPITEMIDLIST WINAPI ILClone(LPCITEMIDLIST pidl)
Definition: pidl.c:228
#define E_POINTER
Definition: winerror.h:2365

◆ GetWindowProc()

virtual WNDPROC CShellBrowser::GetWindowProc ( )
inlinevirtual

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

Definition at line 342 of file shellbrowser.cpp.

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

◆ GetWndClassInfo()

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

Definition at line 629 of file shellbrowser.cpp.

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

◆ GoBack()

HRESULT STDMETHODCALLTYPE CShellBrowser::GoBack ( )
virtual

Definition at line 2915 of file shellbrowser.cpp.

2916 {
2917  CComPtr<ITravelLog> travelLog;
2918  HRESULT hResult = GetTravelLog(&travelLog);
2919  if (FAILED_UNEXPECTEDLY(hResult))
2920  return hResult;
2921  return travelLog->Travel(static_cast<IDropTarget *>(this), TLOG_BACK);
2922 }
#define TLOG_BACK
Definition: shlobj.h:2492
LONG HRESULT
Definition: typedefs.h:77
#define FAILED_UNEXPECTEDLY(hr)
Definition: shellutils.h:35
virtual HRESULT STDMETHODCALLTYPE GetTravelLog(ITravelLog **pptl)

Referenced by OnGoBack().

◆ GoForward()

HRESULT STDMETHODCALLTYPE CShellBrowser::GoForward ( )
virtual

Definition at line 2924 of file shellbrowser.cpp.

2925 {
2926  CComPtr<ITravelLog> travelLog;
2927  HRESULT hResult = GetTravelLog(&travelLog);
2928  if (FAILED_UNEXPECTEDLY(hResult))
2929  return hResult;
2930  return travelLog->Travel(static_cast<IDropTarget *>(this), TLOG_FORE);
2931 }
#define TLOG_FORE
Definition: shlobj.h:2493
LONG HRESULT
Definition: typedefs.h:77
#define FAILED_UNEXPECTEDLY(hr)
Definition: shellutils.h:35
virtual HRESULT STDMETHODCALLTYPE GetTravelLog(ITravelLog **pptl)

Referenced by OnGoForward().

◆ GoHome()

HRESULT STDMETHODCALLTYPE CShellBrowser::GoHome ( )
virtual

Definition at line 2933 of file shellbrowser.cpp.

2934 {
2935  return E_NOTIMPL;
2936 }
#define E_NOTIMPL
Definition: ddrawi.h:99

Referenced by OnGoHome().

◆ GoSearch()

HRESULT STDMETHODCALLTYPE CShellBrowser::GoSearch ( )
virtual

Definition at line 2938 of file shellbrowser.cpp.

2939 {
2940  return E_NOTIMPL;
2941 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ IEGetDisplayName()

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

Definition at line 2455 of file shellbrowser.cpp.

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

◆ IEParseDisplayName()

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

Definition at line 2460 of file shellbrowser.cpp.

2461 {
2462  return E_NOTIMPL;
2463 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ Initialize()

HRESULT CShellBrowser::Initialize ( )

Definition at line 726 of file shellbrowser.cpp.

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