Synchronize with trunk revision 59636 (just before Alex's CreateProcess revamp).
[reactos.git] / include / psdk / shdeprecated.idl
index 60285ae..d6e48b5 100644 (file)
@@ -34,6 +34,83 @@ cpp_quote("#define TLMENUF_BACK             0x00000010")
 cpp_quote("#define TLMENUF_FORE             0x00000020")
 cpp_quote("#define TLMENUF_BACKANDFORTH     (TLMENUF_BACK | TLMENUF_FORE | TLMENUF_INCLUDECURRENT)")
 
+[
+    pointer_default(unique),
+    local,
+    object,
+    uuid(F46EDB3B-BC2F-11d0-9412-00AA00A3EBD3)
+]
+interface ITravelEntry : IUnknown
+{
+    HRESULT Invoke(
+        [in] IUnknown *punk);
+
+    HRESULT Update(
+        [in] IUnknown *punk,
+        [in] BOOL fIsLocalAnchor);
+
+    HRESULT GetPidl(
+        [out] LPITEMIDLIST *ppidl);
+};
+
+[
+    pointer_default(unique),
+    local,
+    object,
+    uuid(66A9CB08-4802-11d2-A561-00A0C92DBFE8)
+]
+interface ITravelLog : IUnknown
+{
+    HRESULT AddEntry(
+        [in] IUnknown *punk,
+        [in] BOOL fIsLocalAnchor);
+
+    HRESULT UpdateEntry(
+        [in] IUnknown *punk,
+        [in] BOOL fIsLocalAnchor);
+
+    HRESULT UpdateExternal(
+        [in] IUnknown *punk,
+        [in] IUnknown *punkHLBrowseContext);
+
+    HRESULT Travel(
+        [in] IUnknown *punk,
+        [in] int iOffset);
+
+    HRESULT GetTravelEntry(
+        [in]  IUnknown *punk,
+        [in]  int iOffset,
+        [optional, out] ITravelEntry **ppte);
+
+    HRESULT FindTravelEntry(
+        [in]  IUnknown *punk,
+        [in]  LPCITEMIDLIST pidl,
+        [out] ITravelEntry **ppte);
+
+    HRESULT GetToolTipText(
+        [in]  IUnknown *punk,
+        [in]  int iOffset,
+        [in]  int idsTemplate,
+        [out, size_is(cchText)] LPWSTR pwzText,
+        [in]  DWORD cchText);
+
+    HRESULT InsertMenuEntries(
+        [in] IUnknown *punk,
+        [in] HMENU hmenu,
+        [in] int nPos,
+        [in] int idFirst,
+        [in] int idLast,
+        [in] DWORD dwFlags);
+
+    HRESULT Clone(
+        [out] ITravelLog **pptl);
+
+    DWORD CountEntries(
+        [in] IUnknown *punk);
+
+    HRESULT Revert();
+};
+
 typedef void *CIE4ConnectionPoint;
 
 [
@@ -62,6 +139,12 @@ interface IExpDispSupport : IUnknown
         UINT *puArgErr);
 };
 
+typedef enum tagBNSTATE
+{
+    BNS_NORMAL = 0,
+    BNS_BEGIN_NAVIGATE = 1,
+    BNS_NAVIGATE = 2
+} BNSTATE;
 
 enum {
     SBSC_HIDE = 0,
@@ -95,6 +178,138 @@ cpp_quote("#define HLNF_EXTERNALNAVIGATE            0x10000000")
 cpp_quote("#define HLNF_ALLOW_AUTONAVIGATE          0x20000000")
 cpp_quote("#define HLNF_NEWWINDOWSMANAGED           0x80000000")
 
+[
+    pointer_default(unique),
+    local,
+    object,
+    uuid(02ba3b52-0547-11d1-b833-00c04fc9b31f)
+]
+interface IBrowserService : IUnknown
+{
+    HRESULT GetParentSite(
+        [out] IOleInPlaceSite **ppipsite);
+
+    HRESULT SetTitle(
+        [in] IShellView *psv,
+        [in] LPCWSTR pszName);
+
+    HRESULT GetTitle(
+        [in] IShellView *psv,
+        [out, size_is(cchName)] LPWSTR pszName,
+        [in] DWORD cchName);
+
+    HRESULT GetOleObject(
+        [out] IOleObject **ppobjv);
+
+    HRESULT GetTravelLog(
+        [out, optional] ITravelLog **pptl);
+
+    HRESULT ShowControlWindow(
+        [in] UINT id,
+        [in] BOOL fShow);
+
+    HRESULT IsControlWindowShown(
+        [in] UINT id,
+        [out] BOOL *pfShown);
+
+    HRESULT IEGetDisplayName(
+        [in] PCIDLIST_ABSOLUTE pidl,
+        [out] LPWSTR pwszName,
+        [in] UINT uFlags);
+
+    HRESULT IEParseDisplayName(
+        [in] UINT uiCP,
+        [in] LPCWSTR pwszPath,
+        [out] PIDLIST_ABSOLUTE *ppidlOut);
+
+    HRESULT DisplayParseError(
+        [in] HRESULT hres,
+        [in] LPCWSTR pwszPath);
+
+    HRESULT NavigateToPidl(
+        [in] PCIDLIST_ABSOLUTE pidl,
+        [in] DWORD grfHLNF);
+
+    HRESULT SetNavigateState(
+        [in] BNSTATE bnstate);
+
+    HRESULT GetNavigateState(
+        [out] BNSTATE *pbnstate);
+
+    HRESULT NotifyRedirect(
+        [in] IShellView *psv,
+        [in] PCIDLIST_ABSOLUTE pidl,
+        [out] BOOL *pfDidBrowse);
+
+    HRESULT UpdateWindowList();
+
+    HRESULT UpdateBackForwardState();
+
+    HRESULT SetFlags(
+        [in] DWORD dwFlags,
+        [in] DWORD dwFlagMask);
+
+    HRESULT GetFlags(
+        [out] DWORD *pdwFlags);
+
+    HRESULT CanNavigateNow();
+
+    HRESULT GetPidl(
+        [out] PIDLIST_ABSOLUTE *ppidl);
+
+    HRESULT SetReferrer(
+        [in] PCIDLIST_ABSOLUTE pidl);
+
+    DWORD GetBrowserIndex();
+
+    HRESULT GetBrowserByIndex(
+        [in] DWORD dwID,
+        [out] IUnknown **ppunk);
+
+    HRESULT GetHistoryObject(
+        [out] IOleObject **ppole,
+        [out] IStream **pstm,
+        [out] IBindCtx **ppbc);
+
+    HRESULT SetHistoryObject(
+        [in] IOleObject *pole,
+        [in] BOOL fIsLocalAnchor);
+
+    HRESULT CacheOLEServer(
+        [in] IOleObject *pole);
+
+    HRESULT GetSetCodePage(
+        [in] VARIANT *pvarIn,
+        [out] VARIANT *pvarOut);
+
+    HRESULT OnHttpEquiv(
+        [in] IShellView *psv,
+        [in] BOOL fDone,
+        [in] VARIANT *pvarargIn,
+        [out] VARIANT *pvarargOut);
+
+    HRESULT GetPalette(
+        [out] HPALETTE *hpal);
+
+    HRESULT RegisterWindow(
+        [in] BOOL fForceRegister,
+        [in] int swc);
+}
+
+[
+    pointer_default(unique),
+    object,
+    local,
+    uuid(5836fb00-8187-11cf-a12b-00aa004ae837)
+]
+interface IShellService : IUnknown
+{
+    HRESULT SetOwner( [in] IUnknown *pUnk );
+}
+
+cpp_quote("#if 0")
+typedef HANDLE HMONITOR;
+cpp_quote("#endif")
 
 enum {
     SECURELOCK_NOCHANGE                 = -1,
@@ -115,7 +330,84 @@ enum {
     SECURELOCK_SUGGEST_SECURE128BIT     = 13,
 };
 
+cpp_quote("#include <pshpack8.h>")
+typedef struct basebrowserdataxp
+{
+    HWND                _hwnd;
+    ITravelLog          *_ptl;
+    IHlinkFrame         *_phlf;
+    IWebBrowser2        *_pautoWB2;
+    IExpDispSupport     *_pautoEDS;
+    IShellService       *_pautoSS;
+    int                 _eSecureLockIcon;
+    DWORD               _fCreatingViewWindow;
+    UINT                _uActivateState;
+
+    LPCITEMIDLIST       _pidlNewShellView;
 
+    IOleCommandTarget   *_pctView;
+
+    LPITEMIDLIST        _pidlCur;
+    IShellView          *_psv;
+    IShellFolder        *_psf;
+    HWND                _hwndView;
+    LPWSTR              _pszTitleCur;
+
+    LPITEMIDLIST        _pidlPending;
+    IShellView          *_psvPending;
+    IShellFolder        *_psfPending;
+    HWND                _hwndViewPending;
+    LPWSTR              _pszTitlePending;
+
+    BOOL                _fIsViewMSHTML;
+    BOOL                _fPrivacyImpacted;
+    CLSID               _clsidView;
+    CLSID               _clsidViewPending;
+    HWND                _hwndFrame;
+} BASEBROWSERDATAXP, *LPBASEBROWSERDATAXP;
+
+typedef struct basebrowserdatalh
+{
+    HWND                _hwnd;
+    ITravelLog          *_ptl;
+    IHlinkFrame         *_phlf;
+    IWebBrowser2        *_pautoWB2;
+    IExpDispSupport     *_pautoEDS;
+    IShellService       *_pautoSS;
+    int                 _eSecureLockIcon;
+    DWORD               _fCreatingViewWindow;
+    UINT                _uActivateState;
+
+    LPCITEMIDLIST       _pidlNewShellView;
+
+    IOleCommandTarget   *_pctView;
+
+    LPITEMIDLIST        _pidlCur;
+    IShellView          *_psv;
+    IShellFolder        *_psf;
+    HWND                _hwndView;
+    LPWSTR              _pszTitleCur;
+
+    LPITEMIDLIST        _pidlPending;
+    IShellView          *_psvPending;
+    IShellFolder        *_psfPending;
+    HWND                _hwndViewPending;
+    LPWSTR              _pszTitlePending;
+
+    BOOL                _fIsViewMSHTML;
+    BOOL                _fPrivacyImpacted;
+    CLSID               _clsidView;
+    CLSID               _clsidViewPending;
+    HWND                _hwndFrame;
+    LONG                _lPhishingFilterStatus;
+} BASEBROWSERDATALH, *LPBASEBROWSERDATALH;
+cpp_quote("#include <poppack.h>")
+
+typedef BASEBROWSERDATAXP BASEBROWSERDATA;
+
+typedef const BASEBROWSERDATA *LPCBASEBROWSERDATA;
+
+typedef BASEBROWSERDATA *LPBASEBROWSERDATA;
 
 cpp_quote("#define VIEW_PRIORITY_RESTRICTED         0x00000070")
 cpp_quote("#define VIEW_PRIORITY_CACHEHIT           0x00000050")
@@ -128,5 +420,267 @@ cpp_quote("#define VIEW_PRIORITY_SHELLEXT_ASBACKUP  0x0015")
 cpp_quote("#define VIEW_PRIORITY_DESPERATE          0x00000010")
 cpp_quote("#define VIEW_PRIORITY_NONE               0x00000000")
 
+typedef struct tagFolderSetData {
+    FOLDERSETTINGS      _fs;
+    SHELLVIEWID         _vidRestore;
+    DWORD               _dwViewPriority;
+} FOLDERSETDATA, *LPFOLDERSETDATA;
+
+typedef struct SToolbarItem {
+    IDockingWindow      *ptbar;
+    BORDERWIDTHS        rcBorderTool;
+    LPWSTR              pwszItem;
+    BOOL                fShow;
+    HMONITOR            hMon;
+} TOOLBARITEM, *LPTOOLBARITEM;
 
 cpp_quote("#define ITB_VIEW        ((UINT)-1)")
+
+[
+    pointer_default(unique),
+    local,
+    object,
+    uuid(68BD21CC-438B-11d2-A560-00A0C92DBFE8)
+]
+interface IBrowserService2 : IBrowserService
+{
+    LRESULT WndProcBS(
+        [in] HWND hwnd,
+        [in] UINT uMsg,
+        [in, out] WPARAM wParam,
+        [in, out] LPARAM lParam);
+
+    HRESULT SetAsDefFolderSettings();
+
+    HRESULT GetViewRect(
+        [in, out] RECT *prc);
+
+    HRESULT OnSize(
+        [in] WPARAM wParam);
+
+    HRESULT OnCreate(
+        [in] struct tagCREATESTRUCTW *pcs);
+
+    LRESULT OnCommand(
+        [in] WPARAM wParam,
+        [in] LPARAM lParam);
+
+    HRESULT OnDestroy();
+
+    LRESULT OnNotify(
+        [in, out] struct tagNMHDR *pnm);
+
+    HRESULT OnSetFocus();
+
+    HRESULT OnFrameWindowActivateBS(
+        [in] BOOL fActive);
+
+    HRESULT ReleaseShellView();
+
+    HRESULT ActivatePendingView();
+
+    HRESULT CreateViewWindow(
+        [in] IShellView *psvNew,
+        [in] IShellView *psvOld,
+        [out] LPRECT prcView,
+        [out] HWND *phwnd);
+
+    HRESULT CreateBrowserPropSheetExt(
+        [in] REFIID riid,
+        [out] void **ppv);
+
+    HRESULT GetViewWindow(
+        [out] HWND *phwndView);
+
+    HRESULT GetBaseBrowserData(
+        [in, out] LPCBASEBROWSERDATA *pbbd);
+
+    LPBASEBROWSERDATA PutBaseBrowserData();
+
+    HRESULT InitializeTravelLog(
+        [in] ITravelLog *ptl,
+        [in] DWORD dw);
+
+    HRESULT SetTopBrowser();
+
+    HRESULT Offline(
+        [in] int iCmd);
+
+    HRESULT AllowViewResize(
+        [in] BOOL f);
+
+    HRESULT SetActivateState(
+        [in] UINT u);
+
+    HRESULT UpdateSecureLockIcon(
+        [in] int eSecureLock);
+
+    HRESULT InitializeDownloadManager();
+
+    HRESULT InitializeTransitionSite();
+
+    HRESULT _Initialize(
+        [in] HWND hwnd,
+        [in] IUnknown *pauto);
+
+    HRESULT _CancelPendingNavigationAsync();
+
+    HRESULT _CancelPendingView();
+
+    HRESULT _MaySaveChanges();
+
+    HRESULT _PauseOrResumeView(
+        [in] BOOL fPaused);
+
+    HRESULT _DisableModeless();
+
+    HRESULT _NavigateToPidl(
+        [in] LPCITEMIDLIST pidl,
+        [in] DWORD grfHLNF,
+        [in] DWORD dwFlags);
+
+    HRESULT _TryShell2Rename(
+        [in] IShellView *psv,
+        [in] LPCITEMIDLIST pidlNew);
+
+    HRESULT _SwitchActivationNow();
+
+    HRESULT _ExecChildren(
+        [in] IUnknown *punkBar,
+        [in] BOOL fBroadcast,
+        [in] const GUID *pguidCmdGroup,
+        [in] DWORD nCmdID,
+        [in] DWORD nCmdexecopt,
+        [in] VARIANTARG *pvarargIn,
+        [in, out] VARIANTARG *pvarargOut);
+
+    HRESULT _SendChildren(
+        [in] HWND hwndBar,
+        [in] BOOL fBroadcast,
+        [in] UINT uMsg,
+        [in, out] WPARAM wParam,
+        [in, out] LPARAM lParam);
+
+    HRESULT GetFolderSetData(
+        [in, out] struct tagFolderSetData *pfsd);
+
+    HRESULT _OnFocusChange(
+        [in] UINT itb);
+
+    HRESULT v_ShowHideChildWindows(
+        [in] BOOL fChildOnly);
+
+    UINT _get_itbLastFocus();
+
+    HRESULT _put_itbLastFocus(
+        [in] UINT itbLastFocus);
+
+    HRESULT _UIActivateView(
+        [in] UINT uState);
+
+    HRESULT _GetViewBorderRect(
+        [in, out] RECT* prc);
+
+    HRESULT _UpdateViewRectSize();
+
+    HRESULT _ResizeNextBorder(
+        [in] UINT itb);
+
+    HRESULT _ResizeView();
+
+    HRESULT _GetEffectiveClientArea(
+        [in, out] LPRECT lprectBorder,
+        [in] HMONITOR hmon);
+
+    IStream* v_GetViewStream(
+        [in] LPCITEMIDLIST pidl,
+        [in] DWORD grfMode,
+        [in] LPCWSTR pwszName);
+
+    LRESULT ForwardViewMsg(
+        [in] UINT uMsg,
+        [in] WPARAM wParam,
+        [in] LPARAM lParam);
+
+    HRESULT SetAcceleratorMenu(
+        [in] HACCEL hacc);
+
+    int _GetToolbarCount();
+
+    LPTOOLBARITEM _GetToolbarItem(
+        [in] int itb);
+
+    HRESULT _SaveToolbars(
+        [in] IStream *pstm);
+
+    HRESULT _LoadToolbars(
+        [in] IStream *pstm);
+
+    HRESULT _CloseAndReleaseToolbars(
+        [in] BOOL fClose);
+
+    HRESULT v_MayGetNextToolbarFocus(
+        [in] LPMSG lpMsg,
+        [in] UINT itbNext,
+        [in] int citb,
+        [out] LPTOOLBARITEM *pptbi,
+        [out] HWND *phwnd);
+
+    HRESULT _ResizeNextBorderHelper(
+        [in] UINT itb,
+        [in] BOOL bUseHmonitor);
+
+    UINT _FindTBar(
+        [in] IUnknown *punkSrc);
+
+    HRESULT _SetFocus(
+        [in] LPTOOLBARITEM ptbi,
+        [in] HWND hwnd,
+        [in] LPMSG lpMsg);
+
+    HRESULT v_MayTranslateAccelerator(
+        [in] MSG* pmsg);
+
+    HRESULT _GetBorderDWHelper(
+        [in] IUnknown *punkSrc,
+        [in] LPRECT lprectBorder,
+        [in] BOOL bUseHmonitor);
+
+    HRESULT v_CheckZoneCrossing(
+        [in, out] LPCITEMIDLIST pidl);
+};
+
+[
+    pointer_default(unique),
+    local,
+    object,
+    uuid(27D7CE21-762D-48F3-86F3-40E2FD3749C4)
+]
+interface IBrowserService3 : IBrowserService2
+{
+    HRESULT _PositionViewWindow(
+        [in] HWND hwnd,
+        [in] LPRECT prc);
+
+    HRESULT IEParseDisplayNameEx(
+        [in] UINT uiCP,
+        [in] LPCWSTR pwszPath,
+        [in] DWORD dwFlags,
+        [out] LPITEMIDLIST *ppidlOut);
+};
+
+[
+    pointer_default(unique),
+    local,
+    object,
+    uuid(639f1bff-e135-4096-abd8-e0f504d649a4)
+]
+interface IBrowserService4 : IBrowserService3
+{
+    HRESULT ActivateView(
+        [in] BOOL fPendingView);
+
+    HRESULT SaveViewState();
+
+    HRESULT _ResizeAllBorders();
+};