]>
Commit | Line | Data |
---|---|---|
e1599b0c XL |
1 | // Copyright © 2015, Peter Atashian |
2 | // Licensed under the MIT License <LICENSE.md> | |
3 | //! Url History Interfaces | |
4 | pub const STATURL_QUERYFLAG_ISCACHED: ::DWORD = 0x00010000; | |
5 | pub const STATURL_QUERYFLAG_NOURL: ::DWORD = 0x00020000; | |
6 | pub const STATURL_QUERYFLAG_NOTITLE: ::DWORD = 0x00040000; | |
7 | pub const STATURL_QUERYFLAG_TOPLEVEL: ::DWORD = 0x00080000; | |
8 | pub const STATURLFLAG_ISCACHED: ::DWORD = 0x00000001; | |
9 | pub const STATURLFLAG_ISTOPLEVEL: ::DWORD = 0x00000002; | |
10 | ENUM!{enum ADDURL_FLAG { | |
11 | ADDURL_FIRST = 0, | |
12 | ADDURL_ADDTOHISTORYANDCACHE = 0, | |
13 | ADDURL_ADDTOCACHE = 1, | |
14 | ADDURL_Max = 2147483647, | |
15 | }} | |
16 | pub type LPENUMSTATURL = *mut IEnumSTATURL; | |
17 | STRUCT!{struct STATURL { | |
18 | cbSize: ::DWORD, | |
19 | pwcsUrl: ::LPWSTR, | |
20 | pwcsTitle: ::LPWSTR, | |
21 | ftLastVisited: ::FILETIME, | |
22 | ftLastUpdated: ::FILETIME, | |
23 | ftExpires: ::FILETIME, | |
24 | dwFlags: ::DWORD, | |
25 | }} | |
26 | pub type LPSTATURL = *mut STATURL; | |
27 | RIDL!{interface IEnumSTATURL(IEnumSTATURLVtbl): IUnknown(IUnknownVtbl) { | |
28 | fn Next(&mut self, celt: ::ULONG, rgelt: LPSTATURL, pceltFetched: *mut ::ULONG) -> ::HRESULT, | |
29 | fn Skip(&mut self, celt: ::ULONG) -> ::HRESULT, | |
30 | fn Reset(&mut self) -> ::HRESULT, | |
31 | fn Clone(&mut self, ppenum: *mut *mut ::IEnumSTATURL) -> ::HRESULT, | |
32 | fn SetFilter(&mut self, poszFilter: ::LPCOLESTR, dwFlags: ::DWORD) -> ::HRESULT | |
33 | }} | |
34 | pub type LPURLHISTORYSTG = *mut IUrlHistoryStg; | |
35 | RIDL!{interface IUrlHistoryStg(IUrlHistoryStgVtbl): IUnknown(IUnknownVtbl) { | |
36 | fn AddUrl(&mut self, pocsUrl: ::LPCOLESTR) -> ::HRESULT, | |
37 | fn DeleteUrl(&mut self, pocsUrl: ::LPCOLESTR, dwFlags: ::DWORD) -> ::HRESULT, | |
38 | fn QueryUrl( | |
39 | &mut self, pocsUrl: ::LPCOLESTR, dwFlags: ::DWORD, lpSTATURL: LPSTATURL | |
40 | ) -> ::HRESULT, | |
41 | fn BindToObject( | |
42 | &mut self, pocsUrl: ::LPCOLESTR, riid: ::REFIID, ppvOut: *mut *mut ::c_void | |
43 | ) -> ::HRESULT, | |
44 | fn EnumUrls(&mut self, ppEnum: *mut *mut ::IEnumSTATURL) -> ::HRESULT | |
45 | }} | |
46 | pub type LPURLHISTORYSTG2 = *mut IUrlHistoryStg2; | |
47 | RIDL!{interface IUrlHistoryStg2(IUrlHistoryStg2Vtbl): IUrlHistoryStg(IUrlHistoryStgVtbl) { | |
48 | fn AddUrlAndNotify( | |
49 | &mut self, pocsUrl: ::LPCOLESTR, pocsTitle: ::LPCOLESTR, dwFlags: ::DWORD, | |
50 | fWriteHistory: ::BOOL, poctNotify: *mut ::IOleCommandTarget, punkISFolder: *mut ::IUnknown | |
51 | ) -> ::HRESULT, | |
52 | fn ClearHistory(&mut self) -> ::HRESULT | |
53 | }} | |
54 | pub type LPURLHISTORYNOTIFY = *mut IUrlHistoryNotify; | |
55 | RIDL!{interface IUrlHistoryNotify(IUrlHistoryNotifyVtbl): | |
56 | IOleCommandTarget(IOleCommandTargetVtbl) {}} |