summaryrefslogtreecommitdiff
path: root/vendor/winapi/src/um/urlhist.rs
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/winapi/src/um/urlhist.rs')
-rw-r--r--vendor/winapi/src/um/urlhist.rs97
1 files changed, 97 insertions, 0 deletions
diff --git a/vendor/winapi/src/um/urlhist.rs b/vendor/winapi/src/um/urlhist.rs
new file mode 100644
index 0000000..f35e550
--- /dev/null
+++ b/vendor/winapi/src/um/urlhist.rs
@@ -0,0 +1,97 @@
+// Licensed under the Apache License, Version 2.0
+// <LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
+// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your option.
+// All files in the project carrying such notice may not be copied, modified, or distributed
+// except according to those terms.
+//! Url History Interfaces
+use ctypes::c_void;
+use shared::guiddef::REFIID;
+use shared::minwindef::{BOOL, DWORD, FILETIME, ULONG};
+use shared::wtypesbase::LPCOLESTR;
+use um::docobj::{IOleCommandTarget, IOleCommandTargetVtbl};
+use um::unknwnbase::{IUnknown, IUnknownVtbl};
+use um::winnt::{HRESULT, LPWSTR};
+pub const STATURL_QUERYFLAG_ISCACHED: DWORD = 0x00010000;
+pub const STATURL_QUERYFLAG_NOURL: DWORD = 0x00020000;
+pub const STATURL_QUERYFLAG_NOTITLE: DWORD = 0x00040000;
+pub const STATURL_QUERYFLAG_TOPLEVEL: DWORD = 0x00080000;
+pub const STATURLFLAG_ISCACHED: DWORD = 0x00000001;
+pub const STATURLFLAG_ISTOPLEVEL: DWORD = 0x00000002;
+ENUM!{enum ADDURL_FLAG {
+ ADDURL_FIRST = 0,
+ ADDURL_ADDTOHISTORYANDCACHE = 0,
+ ADDURL_ADDTOCACHE = 1,
+ ADDURL_Max = 2147483647,
+}}
+pub type LPENUMSTATURL = *mut IEnumSTATURL;
+STRUCT!{struct STATURL {
+ cbSize: DWORD,
+ pwcsUrl: LPWSTR,
+ pwcsTitle: LPWSTR,
+ ftLastVisited: FILETIME,
+ ftLastUpdated: FILETIME,
+ ftExpires: FILETIME,
+ dwFlags: DWORD,
+}}
+pub type LPSTATURL = *mut STATURL;
+RIDL!{#[uuid(0x3c374a42, 0xbae4, 0x11cf, 0xbf, 0x7d, 0x00, 0xaa, 0x00, 0x69, 0x46, 0xee)]
+interface IEnumSTATURL(IEnumSTATURLVtbl): IUnknown(IUnknownVtbl) {
+ fn Next(
+ celt: ULONG,
+ rgelt: LPSTATURL,
+ pceltFetched: *mut ULONG,
+ ) -> HRESULT,
+ fn Skip(
+ celt: ULONG,
+ ) -> HRESULT,
+ fn Reset() -> HRESULT,
+ fn Clone(
+ ppenum: *mut *mut IEnumSTATURL,
+ ) -> HRESULT,
+ fn SetFilter(
+ poszFilter: LPCOLESTR,
+ dwFlags: DWORD,
+ ) -> HRESULT,
+}}
+pub type LPURLHISTORYSTG = *mut IUrlHistoryStg;
+RIDL!{#[uuid(0x3c374a41, 0xbae4, 0x11cf, 0xbf, 0x7d, 0x00, 0xaa, 0x00, 0x69, 0x46, 0xee)]
+interface IUrlHistoryStg(IUrlHistoryStgVtbl): IUnknown(IUnknownVtbl) {
+ fn AddUrl(
+ pocsUrl: LPCOLESTR,
+ ) -> HRESULT,
+ fn DeleteUrl(
+ pocsUrl: LPCOLESTR,
+ dwFlags: DWORD,
+ ) -> HRESULT,
+ fn QueryUrl(
+ pocsUrl: LPCOLESTR,
+ dwFlags: DWORD,
+ lpSTATURL: LPSTATURL,
+ ) -> HRESULT,
+ fn BindToObject(
+ pocsUrl: LPCOLESTR,
+ riid: REFIID,
+ ppvOut: *mut *mut c_void,
+ ) -> HRESULT,
+ fn EnumUrls(
+ ppEnum: *mut *mut IEnumSTATURL,
+ ) -> HRESULT,
+}}
+pub type LPURLHISTORYSTG2 = *mut IUrlHistoryStg2;
+RIDL!{#[uuid(0xafa0dc11, 0xc313, 0x11d0, 0x83, 0x1a, 0x00, 0xc0, 0x4f, 0xd5, 0xae, 0x38)]
+interface IUrlHistoryStg2(IUrlHistoryStg2Vtbl): IUrlHistoryStg(IUrlHistoryStgVtbl) {
+ fn AddUrlAndNotify(
+ pocsUrl: LPCOLESTR,
+ pocsTitle: LPCOLESTR,
+ dwFlags: DWORD,
+ fWriteHistory: BOOL,
+ poctNotify: *mut IOleCommandTarget,
+ punkISFolder: *mut IUnknown,
+ ) -> HRESULT,
+ fn ClearHistory() -> HRESULT,
+}}
+pub type LPURLHISTORYNOTIFY = *mut IUrlHistoryNotify;
+RIDL!{#[uuid(0xbc40bec1, 0xc493, 0x11d0, 0x83, 0x1b, 0x00, 0xc0, 0x4f, 0xd5, 0xae, 0x38)]
+interface IUrlHistoryNotify(IUrlHistoryNotifyVtbl):
+ IOleCommandTarget(IOleCommandTargetVtbl) {}
+}