ReactOS  0.4.14-dev-77-gd9e7c48
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 2717 of file shellbrowser.cpp.

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

◆ _CancelPendingView()

HRESULT STDMETHODCALLTYPE CShellBrowser::_CancelPendingView ( )
virtual

Implements IBrowserService2.

Definition at line 2722 of file shellbrowser.cpp.

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

◆ _CloseAndReleaseToolbars()

HRESULT STDMETHODCALLTYPE CShellBrowser::_CloseAndReleaseToolbars ( BOOL  fClose)
virtual

Implements IBrowserService2.

Definition at line 2859 of file shellbrowser.cpp.

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

◆ _DisableModeless()

HRESULT STDMETHODCALLTYPE CShellBrowser::_DisableModeless ( )
virtual

Implements IBrowserService2.

Definition at line 2737 of file shellbrowser.cpp.

2738 {
2739  return E_NOTIMPL;
2740 }
#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 2757 of file shellbrowser.cpp.

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

◆ _FindTBar()

UINT STDMETHODCALLTYPE CShellBrowser::_FindTBar ( IUnknown punkSrc)
virtual

Implements IBrowserService2.

Definition at line 2875 of file shellbrowser.cpp.

2876 {
2877  return 0;
2878 }

◆ _get_itbLastFocus()

UINT STDMETHODCALLTYPE CShellBrowser::_get_itbLastFocus ( )
virtual

Implements IBrowserService2.

Definition at line 2784 of file shellbrowser.cpp.

2785 {
2786  return 0;
2787 }

◆ _GetBorderDWHelper()

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

Implements IBrowserService2.

Definition at line 2899 of file shellbrowser.cpp.

2900 {
2901  return E_NOTIMPL;
2902 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ _GetEffectiveClientArea()

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

Implements IBrowserService2.

Definition at line 2819 of file shellbrowser.cpp.

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

◆ _GetToolbarCount()

int STDMETHODCALLTYPE CShellBrowser::_GetToolbarCount ( )
virtual

Implements IBrowserService2.

Definition at line 2839 of file shellbrowser.cpp.

2840 {
2841  return 0;
2842 }

◆ _GetToolbarItem()

LPTOOLBARITEM STDMETHODCALLTYPE CShellBrowser::_GetToolbarItem ( int  itb)
virtual

Implements IBrowserService2.

Definition at line 2844 of file shellbrowser.cpp.

2845 {
2846  return NULL;
2847 }
smooth NULL
Definition: ftsmooth.c:416

◆ _GetViewBorderRect()

HRESULT STDMETHODCALLTYPE CShellBrowser::_GetViewBorderRect ( RECT prc)
virtual

Implements IBrowserService2.

Definition at line 2799 of file shellbrowser.cpp.

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

◆ _Initialize()

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

Implements IBrowserService2.

Definition at line 2712 of file shellbrowser.cpp.

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

◆ _LoadToolbars()

HRESULT STDMETHODCALLTYPE CShellBrowser::_LoadToolbars ( IStream pstm)
virtual

Implements IBrowserService2.

Definition at line 2854 of file shellbrowser.cpp.

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

◆ _MaySaveChanges()

HRESULT STDMETHODCALLTYPE CShellBrowser::_MaySaveChanges ( )
virtual

Implements IBrowserService2.

Definition at line 2727 of file shellbrowser.cpp.

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

◆ _NavigateToPidl()

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

Implements IBrowserService2.

Definition at line 2742 of file shellbrowser.cpp.

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

◆ _OnFocusChange()

HRESULT STDMETHODCALLTYPE CShellBrowser::_OnFocusChange ( UINT  itb)
virtual

Implements IBrowserService2.

Definition at line 2774 of file shellbrowser.cpp.

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

◆ _PauseOrResumeView()

HRESULT STDMETHODCALLTYPE CShellBrowser::_PauseOrResumeView ( BOOL  fPaused)
virtual

Implements IBrowserService2.

Definition at line 2732 of file shellbrowser.cpp.

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

◆ _put_itbLastFocus()

HRESULT STDMETHODCALLTYPE CShellBrowser::_put_itbLastFocus ( UINT  itbLastFocus)
virtual

Implements IBrowserService2.

Definition at line 2789 of file shellbrowser.cpp.

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

◆ _ResizeNextBorder()

HRESULT STDMETHODCALLTYPE CShellBrowser::_ResizeNextBorder ( UINT  itb)
virtual

Implements IBrowserService2.

Definition at line 2809 of file shellbrowser.cpp.

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

◆ _ResizeNextBorderHelper()

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

Implements IBrowserService2.

Definition at line 2870 of file shellbrowser.cpp.

2871 {
2872  return E_NOTIMPL;
2873 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ _ResizeView()

HRESULT STDMETHODCALLTYPE CShellBrowser::_ResizeView ( )
virtual

Implements IBrowserService2.

Definition at line 2814 of file shellbrowser.cpp.

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

◆ _SaveToolbars()

HRESULT STDMETHODCALLTYPE CShellBrowser::_SaveToolbars ( IStream pstm)
virtual

Implements IBrowserService2.

Definition at line 2849 of file shellbrowser.cpp.

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

◆ _SendChildren()

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

Implements IBrowserService2.

Definition at line 2763 of file shellbrowser.cpp.

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

◆ _SetFocus()

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

Implements IBrowserService2.

Definition at line 2880 of file shellbrowser.cpp.

2881 {
2882  return E_NOTIMPL;
2883 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ _SwitchActivationNow()

HRESULT STDMETHODCALLTYPE CShellBrowser::_SwitchActivationNow ( )
virtual

Implements IBrowserService2.

Definition at line 2752 of file shellbrowser.cpp.

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

◆ _TryShell2Rename()

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

Implements IBrowserService2.

Definition at line 2747 of file shellbrowser.cpp.

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

◆ _UIActivateView()

HRESULT STDMETHODCALLTYPE CShellBrowser::_UIActivateView ( UINT  uState)
virtual

Implements IBrowserService2.

Definition at line 2794 of file shellbrowser.cpp.

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

◆ _UpdateViewRectSize()

HRESULT STDMETHODCALLTYPE CShellBrowser::_UpdateViewRectSize ( )
virtual

Implements IBrowserService2.

Definition at line 2804 of file shellbrowser.cpp.

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

◆ ActivatePendingView()

HRESULT STDMETHODCALLTYPE CShellBrowser::ActivatePendingView ( )
virtual

Implements IBrowserService2.

Definition at line 2641 of file shellbrowser.cpp.

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

◆ AllowViewResize()

HRESULT STDMETHODCALLTYPE CShellBrowser::AllowViewResize ( BOOL  f)
virtual

Implements IBrowserService2.

Definition at line 2687 of file shellbrowser.cpp.

2688 {
2689  return E_NOTIMPL;
2690 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ BrowseObject()

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

Implements IShellBrowser.

Definition at line 2243 of file shellbrowser.cpp.

2244 {
2245  if ((wFlags & SBSP_EXPLOREMODE) != NULL)
2246  ShowBand(CLSID_ExplorerBand, true);
2247 
2249  if (fTravelLog)
2251  return BrowseToPIDL(pidl, flags);
2252 }
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:1963
LONG HRESULT
Definition: typedefs.h:77
#define FAILED_UNEXPECTEDLY(hr)
Definition: shellutils.h:71
#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:5713
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:71
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 1768 of file shellbrowser.cpp.

1769 {
1770  HRESULT hr;
1771  CComPtr<IEnumGUID> pEnumGUID;
1772  WCHAR wszBandName[MAX_PATH];
1773  WCHAR wszBandGUID[MAX_PATH];
1774  WCHAR wRegKey[MAX_PATH];
1775  UINT cBands;
1776  DWORD dwRead;
1777  DWORD dwDataSize;
1778  GUID iter;
1779  MenuBandInfo mbi;
1780 
1781  mbi.fVertical = IsEqualGUID(category, CATID_InfoBand);
1782  cBands = 0;
1783  hr = SHEnumClassesOfCategories(1, &category, 0, NULL, &pEnumGUID);
1784  if (FAILED_UNEXPECTEDLY(hr))
1785  {
1786  return hr;
1787  }
1788  do
1789  {
1790  pEnumGUID->Next(1, &iter, &dwRead);
1791  if (dwRead)
1792  {
1793  // Get the band name
1794  if (IsBuiltinBand(iter))
1795  continue;
1796  if (!StringFromGUID2(iter, wszBandGUID, MAX_PATH))
1797  continue;
1798  StringCchPrintfW(wRegKey, MAX_PATH, L"CLSID\\%s", wszBandGUID);
1799  dwDataSize = MAX_PATH;
1800  SHGetValue(HKEY_CLASSES_ROOT, wRegKey, NULL, NULL, wszBandName, &dwDataSize);
1801 
1802  mbi.barGuid = iter;
1803  InsertMenu(hBandsMenu, dwPos + cBands, MF_BYPOSITION, IDM_EXPLORERBAND_BEGINCUSTOM + DSA_GetItemCount(menuDsa), wszBandName);
1804  DSA_AppendItem(menuDsa, &mbi);
1805  cBands++;
1806  }
1807  }
1808  while (dwRead > 0);
1809  if (nbFound)
1810  *nbFound = cBands;
1811  return S_OK;
1812 }
HRESULT hr
Definition: shlfolder.c:183
#define InsertMenu
Definition: winuser.h:5704
#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:71
#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 1744 of file shellbrowser.cpp.

1745 {
1746  HMENU hBandsMenu;
1747  UINT nbFound;
1748 
1750  if (!hBandsMenu)
1751  {
1752  OutputDebugString(L"No menu !\n");
1753  return E_FAIL;
1754  }
1756  BuildExplorerBandCategory(hBandsMenu, CATID_InfoBand, 4, NULL);
1757  BuildExplorerBandCategory(hBandsMenu, CATID_CommBand, 20, &nbFound);
1758  if (!nbFound)
1759  {
1760  // Remove separator
1762  }
1763  // Remove media menu since XP does it (according to API Monitor)
1765  return S_OK;
1766 }
#define MF_BYCOMMAND
Definition: winuser.h:202
#define IDM_EXPLORERBAR_SEPARATOR
Definition: resource.h:44
#define OutputDebugString
Definition: winbase.h:3707
#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 2559 of file shellbrowser.cpp.

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

◆ CanNavigateNow()

HRESULT STDMETHODCALLTYPE CShellBrowser::CanNavigateNow ( void  )
virtual

Implements IBrowserService.

Definition at line 2504 of file shellbrowser.cpp.

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

◆ ClientToWindow()

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

Definition at line 3072 of file shellbrowser.cpp.

3073 {
3074  return E_NOTIMPL;
3075 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ ContextSensitiveHelp()

HRESULT STDMETHODCALLTYPE CShellBrowser::ContextSensitiveHelp ( BOOL  fEnterMode)
virtual

Implements IOleWindow.

Definition at line 2155 of file shellbrowser.cpp.

2156 {
2157  return E_NOTIMPL;
2158 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ CreateBrowserPropSheetExt()

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

Implements IBrowserService2.

Definition at line 2652 of file shellbrowser.cpp.

2653 {
2654  return E_NOTIMPL;
2655 }
#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 2646 of file shellbrowser.cpp.

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

◆ DisplayParseError()

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

Implements IBrowserService.

Definition at line 2459 of file shellbrowser.cpp.

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

◆ DoFolderOptions()

HRESULT CShellBrowser::DoFolderOptions ( )

Definition at line 1322 of file shellbrowser.cpp.

1323 {
1324  CComPtr<IShellPropSheetExt> folderOptionsSheet;
1325  PROPSHEETHEADER m_PropSheet;
1327 // CComPtr<IGlobalFolderSettings> globalSettings;
1328 // SHELLSTATE2 shellState;
1329  HRESULT hResult;
1330 
1331  memset(m_psp, 0, sizeof(m_psp));
1332  memset(&m_PropSheet, 0, sizeof(m_PropSheet));
1333 
1334  // create sheet object
1335  hResult = CoCreateInstance(CLSID_ShellFldSetExt, NULL, CLSCTX_INPROC_SERVER,
1336  IID_PPV_ARG(IShellPropSheetExt, &folderOptionsSheet));
1337  if (FAILED_UNEXPECTEDLY(hResult))
1338  return E_FAIL;
1339 
1340  // must set site in order for Apply to all Folders on Advanced page to be enabled
1341  hResult = IUnknown_SetSite(folderOptionsSheet, static_cast<IDispatch *>(this));
1342  m_PropSheet.phpage = m_psp;
1343 
1344 #if 0
1345  hResult = CoCreateInstance(CLSID_GlobalFolderSettings, NULL, CLSCTX_INPROC_SERVER, IID_PPV_ARG(IGlobalFolderSettings, &globalSettings));
1346  if (FAILED_UNEXPECTEDLY(hResult))
1347  return E_FAIL;
1348  hResult = globalSettings->Get(&shellState, sizeof(shellState));
1349  if (FAILED_UNEXPECTEDLY(hResult))
1350  return E_FAIL;
1351 #endif
1352 
1353  // add pages
1354  hResult = folderOptionsSheet->AddPages(AddFolderOptionsPage, reinterpret_cast<LPARAM>(&m_PropSheet));
1355  if (FAILED_UNEXPECTEDLY(hResult))
1356  return E_FAIL;
1357 
1358 // CORE-11140 : Disabled this bit, because it prevents the folder options from showing.
1359 // It returns 'E_NOTIMPL'
1360 #if 0
1361  if (fCurrentShellView != NULL)
1362  {
1363  hResult = fCurrentShellView->AddPropertySheetPages(
1364  0, AddFolderOptionsPage, reinterpret_cast<LPARAM>(&m_PropSheet));
1365  if (FAILED_UNEXPECTEDLY(hResult))
1366  return E_FAIL;
1367  }
1368 #endif
1369 
1370  // show sheet
1371  CStringW strFolderOptions(MAKEINTRESOURCEW(IDS_FOLDER_OPTIONS));
1372  m_PropSheet.dwSize = sizeof(PROPSHEETHEADER);
1373  m_PropSheet.dwFlags = 0;
1374  m_PropSheet.hwndParent = m_hWnd;
1375  m_PropSheet.hInstance = _AtlBaseModule.GetResourceInstance();
1376  m_PropSheet.pszCaption = strFolderOptions;
1377  m_PropSheet.nStartPage = 0;
1378  PropertySheet(&m_PropSheet);
1379  return S_OK;
1380 }
#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:71
CComPtr< IShellView > fCurrentShellView
HWND m_hWnd
Definition: atlwin.h:268
#define IDS_FOLDER_OPTIONS
Definition: resource.h:129
HRESULT WINAPI DECLSPEC_HOTPATCH CoCreateInstance(REFCLSID rclsid, LPUNKNOWN pUnkOuter, DWORD dwClsContext, REFIID iid, LPVOID *ppv)
Definition: compobj.c: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 2326 of file shellbrowser.cpp.

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

◆ DragLeave()

HRESULT STDMETHODCALLTYPE CShellBrowser::DragLeave ( void  )
virtual

Implements IDropTarget.

Definition at line 2337 of file shellbrowser.cpp.

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

◆ DragOver()

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

Implements IDropTarget.

Definition at line 2332 of file shellbrowser.cpp.

2333 {
2334  return E_NOTIMPL;
2335 }
#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 2342 of file shellbrowser.cpp.

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

◆ EnableModelessSB()

HRESULT STDMETHODCALLTYPE CShellBrowser::EnableModelessSB ( BOOL  fEnable)
virtual

Implements IShellBrowser.

Definition at line 2231 of file shellbrowser.cpp.

2232 {
2233  return E_NOTIMPL;
2234 }
#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 2005 of file shellbrowser.cpp.

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

◆ ExecWB()

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

Definition at line 3197 of file shellbrowser.cpp.

3199 {
3200  return E_NOTIMPL;
3201 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ FindWindowByIndex()

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

Implements ITravelLogClient.

Definition at line 3292 of file shellbrowser.cpp.

3293 {
3294  return E_NOTIMPL;
3295 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ FireCommandStateChange()

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

Definition at line 1571 of file shellbrowser.cpp.

1572 {
1573  VARIANT varArg[2];
1574 
1575  V_VT(&varArg[0]) = VT_BOOL;
1576  V_BOOL(&varArg[0]) = newState ? VARIANT_TRUE : VARIANT_FALSE;
1577  V_VT(&varArg[1]) = VT_I4;
1578  V_I4(&varArg[1]) = commandID;
1579 
1580  return FireEvent(DISPID_COMMANDSTATECHANGE, 2, varArg);
1581 }
#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 1583 of file shellbrowser.cpp.

1584 {
1585  return FireCommandStateChange(false, -1);
1586 }
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 1514 of file shellbrowser.cpp.

1515 {
1519  HRESULT hResult;
1520 
1521  params.rgvarg = arguments;
1522  params.rgdispidNamedArgs = NULL;
1523  params.cArgs = argCount;
1524  params.cNamedArgs = 0;
1525  IUnknown** pp = vec.begin();
1526  while (pp < vec.end())
1527  {
1528  if (*pp != NULL)
1529  {
1530  CComPtr<IDispatch> theDispatch;
1531 
1532  hResult = (*pp)->QueryInterface(IID_PPV_ARG(IDispatch, &theDispatch));
1533  hResult = theDispatch->Invoke(dispIdMember, GUID_NULL, 0, DISPATCH_METHOD, &params, NULL, NULL, NULL);
1534  }
1535  pp++;
1536  }
1537  pp = vec2.begin();
1538  while (pp < vec2.end())
1539  {
1540  if (*pp != NULL)
1541  {
1542  CComPtr<IDispatch> theDispatch;
1543 
1544  hResult = (*pp)->QueryInterface(IID_PPV_ARG(IDispatch, &theDispatch));
1545  hResult = theDispatch->Invoke(dispIdMember, GUID_NULL, 0, DISPATCH_METHOD, &params, NULL, NULL, NULL);
1546  }
1547  pp++;
1548  }
1549  return S_OK;
1550 }
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 1552 of file shellbrowser.cpp.

1553 {
1554  // these two variants intentionally to do use CComVariant because it would double free/release
1555  // or does not need to dispose at all
1556  VARIANT varArg[2];
1557  VARIANT varArgs;
1558  CComBSTR tempString(newDirectory);
1559 
1560  V_VT(&varArgs) = VT_BSTR;
1561  V_BSTR(&varArgs) = tempString.m_str;
1562 
1563  V_VT(&varArg[0]) = VT_VARIANT | VT_BYREF;
1564  V_VARIANTREF(&varArg[0]) = &varArgs;
1565  V_VT(&varArg[1]) = VT_DISPATCH;
1566  V_DISPATCH(&varArg[1]) = (IDispatch *)this;
1567 
1568  return FireEvent(DISPID_NAVIGATECOMPLETE2, 2, varArg);
1569 }
#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 2829 of file shellbrowser.cpp.

2830 {
2831  return 0;
2832 }

◆ get_AddressBar()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_AddressBar ( VARIANT_BOOL Value)
virtual

Definition at line 3272 of file shellbrowser.cpp.

3273 {
3274  return E_NOTIMPL;
3275 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ get_Application()

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

Definition at line 2978 of file shellbrowser.cpp.

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

◆ get_Busy()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_Busy ( VARIANT_BOOL pBool)
virtual

Definition at line 3062 of file shellbrowser.cpp.

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

◆ get_Container()

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

Definition at line 2988 of file shellbrowser.cpp.

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

◆ get_Document()

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

Definition at line 2993 of file shellbrowser.cpp.

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

◆ get_FullName()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_FullName ( BSTR FullName)
virtual

Definition at line 3097 of file shellbrowser.cpp.

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

◆ get_FullScreen()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_FullScreen ( VARIANT_BOOL pbFullScreen)
virtual

Definition at line 3157 of file shellbrowser.cpp.

3158 {
3159  return E_NOTIMPL;
3160 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ get_Height()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_Height ( long pl)
virtual

Definition at line 3040 of file shellbrowser.cpp.

3041 {
3042  return E_NOTIMPL;
3043 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ get_HWND()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_HWND ( SHANDLE_PTR pHWND)
virtual

Definition at line 3092 of file shellbrowser.cpp.

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

◆ get_Left()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_Left ( long pl)
virtual

Definition at line 3010 of file shellbrowser.cpp.

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

◆ get_LocationName()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_LocationName ( BSTR LocationName)
virtual

Definition at line 3052 of file shellbrowser.cpp.

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

◆ get_LocationURL()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_LocationURL ( BSTR LocationURL)
virtual

Definition at line 3057 of file shellbrowser.cpp.

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

◆ get_MenuBar()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_MenuBar ( VARIANT_BOOL Value)
virtual

Definition at line 3147 of file shellbrowser.cpp.

3148 {
3149  return E_NOTIMPL;
3150 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ get_Name()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_Name ( BSTR Name)
virtual

Definition at line 3087 of file shellbrowser.cpp.

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

◆ get_Offline()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_Offline ( VARIANT_BOOL pbOffline)
virtual

Definition at line 3222 of file shellbrowser.cpp.

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

◆ get_Parent()

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

Definition at line 2983 of file shellbrowser.cpp.

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

◆ get_Path()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_Path ( BSTR Path)
virtual

Definition at line 3102 of file shellbrowser.cpp.

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

◆ get_ReadyState()

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

Definition at line 3217 of file shellbrowser.cpp.

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

◆ get_RegisterAsBrowser()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_RegisterAsBrowser ( VARIANT_BOOL pbRegister)
virtual

Definition at line 3242 of file shellbrowser.cpp.

3243 {
3244  return E_NOTIMPL;
3245 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ get_RegisterAsDropTarget()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_RegisterAsDropTarget ( VARIANT_BOOL pbRegister)
virtual

Definition at line 3252 of file shellbrowser.cpp.

3253 {
3254  return E_NOTIMPL;
3255 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ get_Resizable()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_Resizable ( VARIANT_BOOL Value)
virtual

Definition at line 3282 of file shellbrowser.cpp.

3283 {
3284  return E_NOTIMPL;
3285 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ get_Silent()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_Silent ( VARIANT_BOOL pbSilent)
virtual

Definition at line 3232 of file shellbrowser.cpp.

3233 {
3234  return E_NOTIMPL;
3235 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ get_StatusBar()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_StatusBar ( VARIANT_BOOL pBool)
virtual

Definition at line 3117 of file shellbrowser.cpp.

3118 {
3119  return E_NOTIMPL;
3120 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ get_StatusText()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_StatusText ( BSTR StatusText)
virtual

Definition at line 3127 of file shellbrowser.cpp.

3128 {
3129  return E_NOTIMPL;
3130 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ get_TheaterMode()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_TheaterMode ( VARIANT_BOOL pbRegister)
virtual

Definition at line 3262 of file shellbrowser.cpp.

3263 {
3264  return E_NOTIMPL;
3265 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ get_ToolBar()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_ToolBar ( int Value)
virtual

Definition at line 3137 of file shellbrowser.cpp.

3138 {
3139  return E_NOTIMPL;
3140 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ get_Top()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_Top ( long pl)
virtual

Definition at line 3020 of file shellbrowser.cpp.

3021 {
3022  return E_NOTIMPL;
3023 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ get_TopLevelContainer()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_TopLevelContainer ( VARIANT_BOOL pBool)
virtual

Definition at line 2998 of file shellbrowser.cpp.

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

◆ get_Type()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_Type ( BSTR Type)
virtual

Definition at line 3003 of file shellbrowser.cpp.

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

◆ get_Visible()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_Visible ( VARIANT_BOOL pBool)
virtual

Definition at line 3107 of file shellbrowser.cpp.

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

◆ get_Width()

HRESULT STDMETHODCALLTYPE CShellBrowser::get_Width ( long pl)
virtual

Definition at line 3030 of file shellbrowser.cpp.

3031 {
3032  return E_NOTIMPL;
3033 }
#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:71
static IOleCache * cache
Definition: ole2.c:75
HRESULT CBaseBarSite_CreateInstance(REFIID riid, void **ppv, BOOL bVertical)
HRESULT CBaseBar_CreateInstance(REFIID riid, void **ppv, BOOL vertical)
Definition: CBaseBar.cpp:564

Referenced by IsBandLoaded(), and ShowBand().

◆ GetBaseBrowserData()

HRESULT STDMETHODCALLTYPE CShellBrowser::GetBaseBrowserData ( LPCBASEBROWSERDATA pbbd)
virtual

Implements IBrowserService2.

Definition at line 2662 of file shellbrowser.cpp.

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

◆ GetBorderDW()

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

Definition at line 1883 of file shellbrowser.cpp.

1884 {
1885  static const INT excludeItems[] = { 1, 1, 1, 0xa001, 0, 0 };
1886 
1887  RECT availableBounds;
1888 
1889  GetEffectiveClientRect(m_hWnd, &availableBounds, excludeItems);
1890  for (INT x = 0; x < 3; x++)
1891  {
1892  if (fClientBars[x].clientBar.p != NULL && !IUnknownIsEqual(fClientBars[x].clientBar, punkObj))
1893  {
1894  availableBounds.top += fClientBars[x].borderSpace.top;
1895  availableBounds.left += fClientBars[x].borderSpace.left;
1896  availableBounds.bottom -= fClientBars[x].borderSpace.bottom;
1897  availableBounds.right -= fClientBars[x].borderSpace.right;
1898  }
1899  }
1900  *prcBorder = availableBounds;
1901  return S_OK;
1902 }
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 2528 of file shellbrowser.cpp.

2529 {
2530  return E_NOTIMPL;
2531 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ GetBrowserIndex()

DWORD STDMETHODCALLTYPE CShellBrowser::GetBrowserIndex ( )
virtual

Implements IBrowserService.

Definition at line 2523 of file shellbrowser.cpp.

2524 {
2525  return -1;
2526 }

Referenced by SaveHistory().

◆ GetClassID()

HRESULT STDMETHODCALLTYPE CShellBrowser::GetClassID ( CLSID pClassID)
virtual

Implements IPersist.

Definition at line 3316 of file shellbrowser.cpp.

3317 {
3318  return E_NOTIMPL;
3319 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ GetControlWindow()

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

Implements IShellBrowser.

Definition at line 2259 of file shellbrowser.cpp.

2260 {
2261  if (lphwnd == NULL)
2262  return E_POINTER;
2263  *lphwnd = NULL;
2264  switch (id)
2265  {
2266  case FCW_TOOLBAR:
2267  *lphwnd = fToolbarProxy.m_hWnd;
2268  return S_OK;
2269  case FCW_STATUS:
2270  *lphwnd = fStatusBar;
2271  return S_OK;
2272  case FCW_TREE:
2273  // find the directory browser and return it
2274  // this should be used only to determine if a tree is present
2275  return S_OK;
2276  case FCW_PROGRESS:
2277  // is this a progress dialog?
2278  return S_OK;
2279  }
2280  return S_OK;
2281 }
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 2499 of file shellbrowser.cpp.

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

◆ GetFolderSetData()

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

Implements IBrowserService2.

Definition at line 2769 of file shellbrowser.cpp.

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

◆ GetHistoryObject()

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

Implements IBrowserService.

Definition at line 2533 of file shellbrowser.cpp.

2534 {
2535  if (ppole == NULL || pstm == NULL || ppbc == NULL)
2536  return E_INVALIDARG;
2537  *ppole = fHistoryObject;
2538  if (fHistoryObject != NULL)
2540  *pstm = fHistoryStream;
2541  if (fHistoryStream != NULL)
2543  *ppbc = fHistoryBindContext;
2544  if (fHistoryBindContext != NULL)
2546  fHistoryObject = NULL;
2547  fHistoryStream = NULL;
2549  if (*ppole == NULL)
2550  return E_FAIL;
2551  return S_OK;
2552 }
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 2387 of file shellbrowser.cpp.

2389 {
2390  return E_NOTIMPL;
2391 }
#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:71
#define SID_IBandSite
static const int BIInternetToolbar

Referenced by SetMenuSB(), and WindowProc().

◆ GetNavigateState()

HRESULT STDMETHODCALLTYPE CShellBrowser::GetNavigateState ( BNSTATE pbnstate)
virtual

Implements IBrowserService.

Definition at line 2474 of file shellbrowser.cpp.

2475 {
2476  return E_NOTIMPL;
2477 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ GetOleObject()

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

Implements IBrowserService.

Definition at line 2414 of file shellbrowser.cpp.

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

◆ GetPalette()

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

Implements IBrowserService.

Definition at line 2575 of file shellbrowser.cpp.

2576 {
2577  return E_NOTIMPL;
2578 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ GetParentSite()

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

Implements IBrowserService.

Definition at line 2399 of file shellbrowser.cpp.

2400 {
2401  return E_NOTIMPL;
2402 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ GetPidl()

HRESULT STDMETHODCALLTYPE CShellBrowser::GetPidl ( LPITEMIDLIST ppidl)
virtual

Definition at line 2509 of file shellbrowser.cpp.

2510 {
2511  // called by explorer bar to get current pidl
2512  if (ppidl == NULL)
2513  return E_POINTER;
2514  *ppidl = ILClone(fCurrentDirectoryPIDL);
2515  return S_OK;
2516 }
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 3405 of file shellbrowser.cpp.

3406 {
3407  return E_NOTIMPL;
3408 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ GetProperty()

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

Definition at line 3082 of file shellbrowser.cpp.

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

◆ GetPropertyBag()

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

Definition at line 2369 of file shellbrowser.cpp.

2370 {
2371  if (ppvObject == NULL)
2372  return E_POINTER;
2373  *ppvObject = NULL;
2374  return E_NOTIMPL;
2375 }
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 2564 of file shellbrowser.cpp.

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

◆ GetTitle()

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

Implements IBrowserService.

Definition at line 2409 of file shellbrowser.cpp.

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

◆ GetTravelLog()

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

Implements IBrowserService.

Definition at line 2419 of file shellbrowser.cpp.

2420 {
2421  HRESULT hResult;
2422 
2423  // called by toolbar when displaying tooltips
2424  if (pptl == NULL)
2425  return E_FAIL;
2426 
2427  *pptl = NULL;
2428  if (fTravelLog.p == NULL)
2429  {
2431  if (FAILED_UNEXPECTEDLY(hResult))
2432  return hResult;
2433  }
2434  *pptl = fTravelLog.p;
2435  fTravelLog.p->AddRef();
2436  return S_OK;
2437 }
#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:71
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 2382 of file shellbrowser.cpp.

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

◆ GetTypeInfoCount()

HRESULT STDMETHODCALLTYPE CShellBrowser::GetTypeInfoCount ( UINT pctinfo)
virtual

Definition at line 2377 of file shellbrowser.cpp.

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

◆ GetViewRect()

HRESULT STDMETHODCALLTYPE CShellBrowser::GetViewRect ( RECT prc)
virtual

Implements IBrowserService2.

Definition at line 2595 of file shellbrowser.cpp.

2596 {
2597  return E_NOTIMPL;
2598 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ GetViewStateStream()

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

Implements IShellBrowser.

Definition at line 2254 of file shellbrowser.cpp.

2255 {
2256  return E_NOTIMPL;
2257 }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ GetViewWindow()

HRESULT STDMETHODCALLTYPE CShellBrowser::GetViewWindow ( HWND phwndView)
virtual

Implements IBrowserService2.

Definition at line 2657 of file shellbrowser.cpp.

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

◆ GetWindow()

HRESULT STDMETHODCALLTYPE CShellBrowser::GetWindow ( HWND lphwnd)
virtual

Implements IOleWindow.

Definition at line 2147 of file shellbrowser.cpp.

2148 {
2149  if (lphwnd == NULL)
2150  return E_POINTER;
2151  *lphwnd = m_hWnd;
2152  return S_OK;
2153 }
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 3297 of file shellbrowser.cpp.

3298 {
3299  if (pWinData == NULL)
3300  return E_POINTER;
3301 
3302  pWinData->dwWindowID = -1;
3303  pWinData->uiCP = 0;
3304  pWinData->pidl = ILClone(fCurrentDirectoryPIDL);
3305  pWinData->lpszUrl = NULL;
3306  pWinData->lpszUrlLocation = NULL;
3307  pWinData->lpszTitle = NULL;
3308  return S_OK;
3309 }
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:5713
#define IDC_ARROW
Definition: winuser.h:682
WNDCLASSEXA WNDCLASSEX
Definition: winuser.h:5620
#define LoadIcon
Definition: winuser.h:5714
static const TCHAR szCabinetWndClass[]

◆ GoBack()

HRESULT STDMETHODCALLTYPE CShellBrowser::GoBack ( )
virtual

Definition at line 2909 of file shellbrowser.cpp.

2910 {
2911  CComPtr<ITravelLog> travelLog;
2912  HRESULT hResult = GetTravelLog(&travelLog);
2913  if (FAILED_UNEXPECTEDLY(hResult))
2914  return hResult;
2915  return travelLog->Travel(static_cast<IDropTarget *>(this), TLOG_BACK);
2916 }
#define TLOG_BACK
Definition: shlobj.h:2506
LONG HRESULT
Definition: typedefs.h:77
#define FAILED_UNEXPECTEDLY(hr)
Definition: shellutils.h:71
virtual HRESULT STDMETHODCALLTYPE GetTravelLog(ITravelLog **pptl)

Referenced by OnGoBack().

◆ GoForward()

HRESULT STDMETHODCALLTYPE CShellBrowser::GoForward ( )
virtual

Definition at line 2918 of file shellbrowser.cpp.

2919 {
2920  CComPtr<ITravelLog> travelLog;
2921  HRESULT hResult = GetTravelLog(&travelLog);
2922  if (FAILED_UNEXPECTEDLY(hResult))
2923  return hResult;
2924  return travelLog->Travel(static_cast<IDropTarget *>(this), TLOG_FORE);
2925 }
#define TLOG_FORE
Definition: shlobj.h:2507
LONG HRESULT
Definition: typedefs.h:77
#define FAILED_UNEXPECTEDLY(hr)
Definition: shellutils.h:71
virtual HRESULT STDMETHODCALLTYPE GetTravelLog(ITravelLog **pptl)

Referenced by OnGoForward().

◆ GoHome()

HRESULT STDMETHODCALLTYPE CShellBrowser::GoHome ( )
virtual

Definition at line 2927 of file shellbrowser.cpp.

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

Referenced by OnGoHome().

◆ GoSearch()

HRESULT STDMETHODCALLTYPE CShellBrowser::GoSearch ( )
virtual

Definition at line 2932 of file shellbrowser.cpp.

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

◆ IEGetDisplayName()

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

Definition at line 2449 of file shellbrowser.cpp.

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

◆ IEParseDisplayName()

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

Definition at line 2454 of file shellbrowser.cpp.

2455 {
2456  return E_NOTIMPL;
2457 }
#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:5655
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)
LONG HRESULT
Definition: typedefs.h:77
#define FAILED_UNEXPECTEDLY(hr)
Definition: shellutils.h:71
BOOL UpdateWindow()
Definition: atlwin.h:1277
HWND m_hWnd
Definition: atlwin.h:268
#define S_OK
Definition: intsafe.h:59
#define SW_SHOWNORMAL
Definition: winuser.h:764
BOOL ShowWindow(int nCmdShow)
Definition: atlwin.h:1265
WORD cLength
Definition: shlobj.h:2176
#define HWND_DESKTOP
Definition: winuser.h:1195
static const int BIInternetToolbar
Definitio