126 lines
3.6 KiB
C
126 lines
3.6 KiB
C
#ifndef _IFACE_H
|
|
#define _IFACE_H
|
|
|
|
// Interfaces and IIDs defined here are private to shdocvw.dll
|
|
//
|
|
|
|
|
|
//
|
|
// IDocNavigate
|
|
//
|
|
// DocHost needs to notify the browser of certain events
|
|
//
|
|
//131A6950-7F78-11D0-A979-00C04FD705A2
|
|
#undef INTERFACE
|
|
#define INTERFACE IDocNavigate
|
|
DECLARE_INTERFACE_(IDocNavigate, IUnknown)
|
|
{
|
|
// *** IUnknown methods ***
|
|
STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID *ppv) PURE;
|
|
STDMETHOD_(ULONG,AddRef)(THIS) PURE;
|
|
STDMETHOD_(ULONG,Release)(THIS) PURE;
|
|
|
|
// *** IDocNavigate methods ***
|
|
STDMETHOD(OnReadyStateChange)(THIS_ IShellView* psvSource, DWORD dwReadyState) PURE;
|
|
STDMETHOD(get_ReadyState)(THIS_ DWORD * pdwReadyState) PURE;
|
|
|
|
} ;
|
|
|
|
//
|
|
// IBandNavigate
|
|
//
|
|
// band needs to navigate its UI to a specific pidl.
|
|
//
|
|
#undef INTERFACE
|
|
#define INTERFACE IBandNavigate
|
|
DECLARE_INTERFACE_(IBandNavigate, IUnknown)
|
|
{
|
|
// *** IUnknown methods ***
|
|
STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID *ppv) PURE;
|
|
STDMETHOD_(ULONG,AddRef)(THIS) PURE;
|
|
STDMETHOD_(ULONG,Release)(THIS) PURE;
|
|
|
|
// *** IBandNavigate methods ***
|
|
STDMETHOD(Select)(THIS_ LPCITEMIDLIST pidl) PURE;
|
|
|
|
} ;
|
|
|
|
|
|
//
|
|
// IEFrameAuto
|
|
//
|
|
// CIEFrameAuto private interface to hold randum stuff
|
|
//
|
|
//131A6953-7F78-11D0-A979-00C04FD705A2
|
|
#undef INTERFACE
|
|
#define INTERFACE IEFrameAuto
|
|
DECLARE_INTERFACE_(IEFrameAuto, IUnknown)
|
|
{
|
|
// *** IUnknown methods ***
|
|
STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID *ppv) PURE;
|
|
STDMETHOD_(ULONG,AddRef)(THIS) PURE;
|
|
STDMETHOD_(ULONG,Release)(THIS) PURE;
|
|
|
|
// *** IEFrameAuto methods ***
|
|
STDMETHOD(SetOwnerHwnd)(THIS_ HWND hwndOwner) PURE;
|
|
STDMETHOD(put_DefaultReadyState)(THIS_ DWORD dwDefaultReadyState, BOOL fUpdateBrowserReadyState) PURE;
|
|
STDMETHOD(OnDocumentComplete)(THIS) PURE;
|
|
STDMETHOD(OnWindowsListMarshalled)(THIS) PURE;
|
|
STDMETHOD(SetDocHostFlags)(THIS_ DWORD dwDocHostFlags) PURE;
|
|
};
|
|
|
|
//
|
|
// IPrivateOleObject
|
|
//
|
|
// a cut down version of IOleObject used for the WebBrowserOC to communicate with
|
|
// objects hosted via CDocObjectView
|
|
#undef INTERFACE
|
|
#define INTERFACE IPrivateOleObject
|
|
DECLARE_INTERFACE_(IPrivateOleObject, IUnknown )
|
|
{
|
|
// *** IUnknown methods ***
|
|
STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID *ppv) PURE;
|
|
STDMETHOD_(ULONG,AddRef)(THIS) PURE;
|
|
STDMETHOD_(ULONG,Release)(THIS) PURE;
|
|
|
|
// IPrivateOleObject
|
|
STDMETHOD( SetExtent )( DWORD dwDrawAspect, SIZEL *psizel) PURE;
|
|
STDMETHOD( GetExtent )( DWORD dwDrawAspect, SIZEL *psizel) PURE;
|
|
};
|
|
|
|
|
|
STDAPI AddUrlToUrlHistoryStg(LPCWSTR pwszUrl, LPCWSTR pwszTitle, LPUNKNOWN punk,
|
|
BOOL fWriteToHistory, IOleCommandTarget *poctNotify, IUnknown *punkSFHistory,
|
|
UINT* pcodepage);
|
|
|
|
#ifdef __cplusplus
|
|
//
|
|
// IUrlHistoryPriv
|
|
//
|
|
interface IUrlHistoryPriv : IUrlHistoryStg2
|
|
{
|
|
STDMETHOD(QueryUrlA)(LPCSTR pszUrl, DWORD dwFlags, LPSTATURL lpSTATURL) = 0;
|
|
STDMETHOD(CleanupHistory)(void) = 0;
|
|
STDMETHOD_(DWORD,GetDaysToKeep)(void) = 0;
|
|
STDMETHOD(GetProperty)(LPCTSTR pszUrl, PROPID pid, PROPVARIANT* pvarOut) = 0;
|
|
STDMETHOD(GetUserName)(LPTSTR pszUserName, DWORD cchUserName) = 0;
|
|
STDMETHOD(AddUrlAndNotifyCP)(LPCWSTR pwszUrl, LPCWSTR pwszTitle, DWORD dwFlags, BOOL fWriteHistory, IOleCommandTarget *poctNotify, IUnknown *punkSFHistory, UINT* pcodepage) = 0;
|
|
};
|
|
|
|
|
|
#define URLFLAG_DONT_DELETE_SUBSCRIBED 0x10000000
|
|
|
|
extern IUrlHistoryPriv* g_puhUrlHistory;
|
|
|
|
//
|
|
// LATER: Move all ITravelLog/ITravelEntry definitions here
|
|
//
|
|
// TLOG_BACKEXTERNAL -- succeeds only if the previous entry is external
|
|
//
|
|
#define TLOG_BACKEXTERNAL -0x7fffffff
|
|
|
|
#endif // __cplusplus
|
|
|
|
#endif // _IFACE_H
|
|
|