147 lines
3.9 KiB
Plaintext
147 lines
3.9 KiB
Plaintext
/*
|
|
* Copyright 2006 Jacek Caban for CodeWeavers
|
|
*
|
|
* This library is free software; you can redistribute it and/or
|
|
* modify it under the terms of the GNU Lesser General Public
|
|
* License as published by the Free Software Foundation; either
|
|
* version 2.1 of the License, or (at your option) any later version.
|
|
*
|
|
* This library is distributed in the hope that it will be useful,
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
* Lesser General Public License for more details.
|
|
*
|
|
* You should have received a copy of the GNU Lesser General Public
|
|
* License along with this library; if not, write to the Free Software
|
|
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
|
|
*/
|
|
|
|
import "objidl.idl";
|
|
import "oleidl.idl";
|
|
import "oaidl.idl";
|
|
import "docobj.idl";
|
|
|
|
cpp_quote("#define STATURL_QUERYFLAG_ISCACHED 0x010000")
|
|
cpp_quote("#define STATURL_QUERYFLAG_NOURL 0x020000")
|
|
cpp_quote("#define STATURL_QUERYFLAG_NOTITLE 0x040000")
|
|
cpp_quote("#define STATURL_QUERYFLAG_TOPLEVEL 0x080000")
|
|
|
|
cpp_quote("#define STATURLFLAG_ISCACHED 0x0001")
|
|
cpp_quote("#define STATURLFLAG_ISTOPLEVEL 0x0002")
|
|
|
|
typedef enum _ADDURL_FLAG
|
|
{
|
|
ADDURL_FIRST = 0,
|
|
ADDURL_ADDTOHISTORYANDCACHE = 0,
|
|
ADDURL_ADDTOCACHE = 1,
|
|
ADDURL_Max = 0x7fffffff
|
|
} ADDURL_FLAG;
|
|
|
|
/*****************************************************************************
|
|
* IEnumSTATURL interface
|
|
*/
|
|
[
|
|
object,
|
|
uuid(3c374a42-bae4-11cf-bf7d-00aa006946ee),
|
|
pointer_default(unique)
|
|
]
|
|
interface IEnumSTATURL : IUnknown
|
|
{
|
|
typedef [unique] IEnumSTATURL *LPENUMSTATURL;
|
|
|
|
typedef struct _STATURL
|
|
{
|
|
DWORD cbSize;
|
|
LPWSTR pwcsUrl;
|
|
LPWSTR pwcsTitle;
|
|
FILETIME ftLastVisited;
|
|
FILETIME ftLastUpdated;
|
|
FILETIME ftExpires;
|
|
DWORD dwFlags;
|
|
} STATURL, *LPSTATURL;
|
|
|
|
HRESULT Next(
|
|
[in] ULONG celt,
|
|
[in, out] LPSTATURL rgelt,
|
|
[in, out] ULONG *pceltFetched);
|
|
|
|
HRESULT Skip([in] ULONG celt);
|
|
HRESULT Reset();
|
|
HRESULT Clone([out] IEnumSTATURL **ppenum);
|
|
|
|
HRESULT SetFilter(
|
|
[in] LPCOLESTR poszFilter,
|
|
[in] DWORD dwFlags);
|
|
}
|
|
|
|
/*****************************************************************************
|
|
* IUrlHistoryStg interface
|
|
*/
|
|
[
|
|
object,
|
|
uuid(3c374a41-bae4-11cf-bf7d-00aa006946ee),
|
|
pointer_default(unique)
|
|
]
|
|
interface IUrlHistoryStg : IUnknown
|
|
{
|
|
typedef [unique] IUrlHistoryStg *LPURLHISTORYSTG;
|
|
|
|
HRESULT AddUrl(
|
|
[in] LPCOLESTR pocsUrl,
|
|
[in, unique] LPCOLESTR pocsTitle,
|
|
[in] DWORD dwFlags);
|
|
|
|
HRESULT DeleteUrl(
|
|
[in] LPCOLESTR pocsUrl,
|
|
[in] DWORD dwFlags);
|
|
|
|
HRESULT QueryUrl(
|
|
[in] LPCOLESTR pocsUrl,
|
|
[in] DWORD dwFlags,
|
|
[in, out, unique] LPSTATURL lpSTATURL);
|
|
|
|
HRESULT BindToObject(
|
|
[in] LPCOLESTR pocsUrl,
|
|
[in] REFIID riid,
|
|
[out, iid_is(riid)] void **ppvOut);
|
|
|
|
HRESULT EnumUrls(
|
|
[out] IEnumSTATURL **ppEnum);
|
|
}
|
|
|
|
/*****************************************************************************
|
|
* IUrlHistoryStg2 interface
|
|
*/
|
|
[
|
|
object,
|
|
uuid(afa0dc11-c313-11d0-831a-00c04fd5ae38),
|
|
pointer_default(unique)
|
|
]
|
|
interface IUrlHistoryStg2 : IUrlHistoryStg
|
|
{
|
|
typedef [unique] IUrlHistoryStg2 *LPURLHISTORYSTG2;
|
|
|
|
HRESULT AddUrlAndNotify(
|
|
[in] LPCOLESTR pocsUrl,
|
|
[in,unique] LPCOLESTR pocsTitle,
|
|
[in] DWORD dwFlags,
|
|
[in] BOOL fWriteHistory,
|
|
[in] IOleCommandTarget *poctNotify,
|
|
[in, unique] IUnknown *punkISFolder);
|
|
|
|
HRESULT ClearHistory();
|
|
}
|
|
|
|
/*****************************************************************************
|
|
* IUrlHistoryNotify interface
|
|
*/
|
|
[
|
|
object,
|
|
uuid(bc40bec1-c493-11d0-831b-00C04fd5ae38),
|
|
pointer_default(unique)
|
|
]
|
|
interface IUrlHistoryNotify : IOleCommandTarget
|
|
{
|
|
typedef [unique] IUrlHistoryNotify *LPURLHISTORYNOTIFY;
|
|
}
|