* Sync to recent trunk (r52563).
[reactos.git] / dll / win32 / urlmon / urlmon_urlmon.idl
1 /*
2 * Copyright 2009 Piotr Caban for CodeWeavers
3 *
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Lesser General Public
6 * License as published by the Free Software Foundation; either
7 * version 2.1 of the License, or (at your option) any later version.
8 *
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Lesser General Public License for more details.
13 *
14 * You should have received a copy of the GNU Lesser General Public
15 * License along with this library; if not, write to the Free Software
16 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
17 */
18
19 #include "urlmon.idl"
20
21 #ifndef __WIDL__
22 #define threading(model)
23 #define progid(str)
24 #define vi_progid(str)
25 #endif
26
27 [
28 helpstring("URL Moniker"),
29 threading(apartment),
30 uuid(79eac9e0-baf9-11ce-8c82-00aa004ba90b)
31 ]
32 coclass StdURLMoniker { interface IMoniker; }
33
34 [
35 helpstring("http: Asynchronous Pluggable Protocol Handler"),
36 threading(apartment),
37 uuid(79eac9e2-baf9-11ce-8c82-00aa004ba90b)
38 ]
39 coclass HttpProtocol { interface IInternetProtocolEx; interface IInternetPriority; }
40
41 [
42 helpstring("ftp: Asynchronous Pluggable Protocol Handler"),
43 threading(apartment),
44 uuid(79eac9e3-baf9-11ce-8c82-00aa004ba90b)
45 ]
46 coclass FtpProtocol { interface IInternetProtocolEx; interface IInternetPriority; }
47
48 [
49 helpstring("gopher: Asynchronous Pluggable Protocol Handler"),
50 threading(apartment),
51 uuid(79eac9e4-baf9-11ce-8c82-00aa004ba90b)
52 ]
53 coclass GopherProtocol { interface IInternetProtocolEx; interface IInternetPriority; }
54
55 [
56 helpstring("https: Asynchronous Pluggable Protocol Handler"),
57 threading(apartment),
58 uuid(79eac9e5-baf9-11ce-8c82-00aa004ba90b)
59 ]
60 coclass HttpsProtocol { interface IInternetProtocolEx; interface IInternetPriority; }
61
62 [
63 helpstring("mk: Asynchronous Pluggable Protocol Handler"),
64 threading(apartment),
65 uuid(79eac9e6-baf9-11ce-8c82-00aa004ba90b)
66 ]
67 coclass MkProtocol { interface IInternetProtocolEx; interface IInternetPriority; }
68
69 [
70 helpstring("file:, local: Asynchronous Pluggable Protocol Handler"),
71 threading(apartment),
72 uuid(79eac9e7-baf9-11ce-8c82-00aa004ba90b)
73 ]
74 coclass FileProtocol { interface IInternetProtocolEx; interface IInternetPriority; }
75
76 [
77 helpstring("CDL: Asynchronous Pluggable Protocol Handler"),
78 threading(apartment),
79 uuid(3dd53d40-7b8b-11d0-b013-00aa0059ce02)
80 ]
81 coclass CdlProtocol { interface IInternetProtocolEx; interface IInternetPriority; }
82
83 [
84 helpstring("Security Manager"),
85 threading(both),
86 uuid(7b8a2d94-0ac9-11d1-896c-00c04fb6bfc4)
87 ]
88 coclass InternetSecurityManager { interface IInternetSecurityManager; }
89
90 [
91 helpstring("URL Zone Manager"),
92 threading(both),
93 uuid(7b8a2d95-0ac9-11d1-896c-00c04fb6bfc4)
94 ]
95 coclass InternetZoneManager { interface IInternetZoneManagerEx2; }
96
97 [
98 helpstring("URLMoniker ProxyStub Factory"),
99 threading(apartment),
100 uuid(79eac9f1-baf9-11ce-8c82-00aa004ba90b)
101 ]
102 coclass PSFactoryBuffer { interface IPSFactoryBuffer; }
103
104 [
105 helpstring("AP lzdhtml encoding/decoding Filter"),
106 threading(apartment),
107 uuid(8f6b0360-b80d-11d0-a9b3-006097942311)
108 ]
109 coclass DeCompMimeFilter { interface IInternetProtocol; interface IInternetProtocolSink; }