oleaut32/tests: Test more return values.
[wine.git] / dlls / msscript.ocx / msscript.idl
blobefc00ffc50b7e1e867d6b012a32217641c42454d
1 /*
2 * Copyright 2015 Jacek Caban for CodeWeavers
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.
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.
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
19 #pragma makedep regtypelib
21 import "oaidl.idl";
24 helpstring("Microsoft Script Control 1.0"),
25 uuid(0e59f1d2-1fbe-11d0-8ff2-00a0d10038bc),
26 version(1.0)
28 library MSScriptControl
30 importlib("stdole2.tlb");
32 typedef enum {
33 Initialized = 0,
34 Connected = 1
35 } ScriptControlStates;
38 dual,
39 uuid(70841c73-067d-11d0-95d8-00a02463ab28),
40 odl,
41 hidden,
42 nonextensible,
43 oleautomation
45 interface IScriptProcedure : IDispatch {
46 [id(DISPID_VALUE), propget]
47 HRESULT Name([out, retval] BSTR *pbstrName);
49 [id(0x0064), propget]
50 HRESULT NumArgs([out, retval] long *pcArgs);
52 [id(0x0065), propget]
53 HRESULT HasReturnValue([out, retval] VARIANT_BOOL *pfHasReturnValue);
57 dual,
58 uuid(70841c71-067d-11d0-95d8-00a02463ab28),
59 odl,
60 hidden,
61 nonextensible,
62 oleautomation
64 interface IScriptProcedureCollection : IDispatch {
65 [id(DISPID_NEWENUM), propget]
66 HRESULT _NewEnum([out, retval] IUnknown *ppenumProcedures);
68 [id(DISPID_VALUE), propget]
69 HRESULT Item(
70 [in] VARIANT Index,
71 [out, retval] IScriptProcedure **ppdispProcedure);
73 [id(1), propget]
74 HRESULT Count([out, retval] long *plCount);
78 dual,
79 uuid(70841c70-067d-11d0-95d8-00a02463ab28),
80 odl,
81 hidden,
82 nonextensible,
83 oleautomation
85 interface IScriptModule : IDispatch {
86 [id(DISPID_VALUE), propget]
87 HRESULT Name([out, retval] BSTR *pbstrName);
89 [id(0x03e8), propget]
90 HRESULT CodeObject([out, retval] IDispatch *ppdispObject);
92 [id(0x03e9), propget]
93 HRESULT Procedures([out, retval] IScriptProcedureCollection **ppdispProcedures);
95 [id(0x07d0)]
96 HRESULT AddCode([in] BSTR Code);
98 [id(0x07d1)]
99 HRESULT Eval(
100 [in] BSTR Expression,
101 [out, retval] VARIANT *pvarResult);
103 [id(0x07d2)]
104 HRESULT ExecuteStatement([in] BSTR Statement);
106 [id(0x07d3), vararg]
107 HRESULT Run(
108 [in] BSTR ProcedureName,
109 [in] SAFEARRAY(VARIANT) *Parameters,
110 [out, retval] VARIANT *pvarResult);
114 dual,
115 uuid(70841c6f-067d-11d0-95d8-00a02463ab28),
116 odl,
117 hidden,
118 nonextensible,
119 oleautomation
121 interface IScriptModuleCollection : IDispatch {
122 [id(DISPID_NEWENUM), propget]
123 HRESULT _NewEnum([out, retval] IUnknown *ppenumContexts);
125 [id(DISPID_VALUE), propget]
126 HRESULT Item(
127 [in] VARIANT Index,
128 [out, retval] IScriptModule **ppmod);
130 [id(1), propget]
131 HRESULT Count([out, retval] long *plCount);
133 [id(2)]
134 HRESULT Add(
135 [in] BSTR Name,
136 [in, optional] VARIANT *Object,
137 [out, retval] IScriptModule **ppmod);
141 dual,
142 uuid(70841c78-067d-11d0-95d8-00a02463ab28),
143 odl,
144 helpstring("Provides access to scripting error information"),
145 helpcontext(0x00113eb6),
146 hidden,
147 nonextensible,
148 oleautomation
150 interface IScriptError : IDispatch {
151 [id(0x00c9), propget]
152 HRESULT Number([out, retval] long *plNumber);
154 [id(0x00ca), propget]
155 HRESULT Source([out, retval] BSTR *pbstrSource);
157 [id(0x00cb), propget]
158 HRESULT Description([out, retval] BSTR *pbstrDescription);
160 [id(0x00cc), propget]
161 HRESULT HelpFile([out, retval] BSTR *pbstrHelpFile);
163 [id(0x00cd), propget]
164 HRESULT HelpContext([out, retval] long *plHelpContext);
166 [id(0xfffffdfb), propget]
167 HRESULT Text([out, retval] BSTR *pbstrText);
169 [id(0x00ce), propget]
170 HRESULT Line([out, retval] long *plLine);
172 [id(0xfffffdef), propget]
173 HRESULT Column([out, retval] long *plColumn);
175 [id(0x00d0)]
176 HRESULT Clear();
180 dual,
181 uuid(0e59f1d3-1fbe-11d0-8ff2-00a0d10038bc),
182 odl,
183 hidden,
184 nonextensible,
185 oleautomation
187 interface IScriptControl : IDispatch {
188 [id(0x05dc), propget] HRESULT Language([out, retval] BSTR *pbstrLanguage);
189 [id(0x05dc), propput] HRESULT Language([in] BSTR pbstrLanguage);
191 [id(0x05dd), propget] HRESULT State([out, retval] ScriptControlStates *pssState);
192 [id(0x05dd), propput] HRESULT State([in] ScriptControlStates pssState);
194 [id(0x05de), propput] HRESULT SitehWnd([in] long rhs);
195 [id(0x05de), propget] HRESULT SitehWnd([out, retval] long *rhs);
197 [id(0x05df), propget] HRESULT Timeout([out, retval] long *plMilleseconds);
198 [id(0x05df), propput] HRESULT Timeout([in] long plMilleseconds);
200 [id(0x05e0), propget] HRESULT AllowUI([out, retval] VARIANT_BOOL *pfAllowUI);
201 [id(0x05e0), propput] HRESULT AllowUI([in] VARIANT_BOOL pfAllowUI);
203 [id(0x05e1), propget] HRESULT UseSafeSubset([out, retval] VARIANT_BOOL *pfUseSafeSubset);
204 [id(0x05e1), propput] HRESULT UseSafeSubset([in] VARIANT_BOOL pfUseSafeSubset);
206 [id(0x05e2), propget] HRESULT Modules([out, retval] IScriptModuleCollection **ppmods);
208 [id(0x05e3), propget] HRESULT Error([out, retval] IScriptError **ppse);
210 [id(0x03e8), propget] HRESULT CodeObject([out, retval] IDispatch **ppdispObject);
212 [id(0x03e9), propget] HRESULT Procedures([out, retval] IScriptProcedureCollection **ppdispProcedures);
214 [id(0xfffffdd8)]
215 HRESULT _AboutBox();
217 [id(0x09c4)]
218 HRESULT AddObject(
219 [in] BSTR Name,
220 [in] IDispatch *Object,
221 [in, optional, defaultvalue(0)] VARIANT_BOOL AddMembers);
223 [id(0x09c5)]
224 HRESULT Reset();
226 [id(0x07d0)]
227 HRESULT AddCode([in] BSTR Code);
229 [id(0x07d1)]
230 HRESULT Eval(
231 [in] BSTR Expression,
232 [out, retval] VARIANT *pvarResult);
234 [id(0x07d2)]
235 HRESULT ExecuteStatement([in] BSTR Statement);
237 [id(0x07d3), vararg]
238 HRESULT Run(
239 [in] BSTR ProcedureName,
240 [in] SAFEARRAY(VARIANT) *Parameters,
241 [out, retval] VARIANT *pvarResult);
245 uuid(8b167d60-8605-11d0-abcb-00a0c90fffc0),
246 hidden
248 dispinterface DScriptControlSource {
249 properties:
250 methods:
251 [id(0x0bb8)] void Error();
252 [id(0x0bb9)] void Timeout();
256 uuid(0e59f1da-1fbe-11d0-8ff2-00a0d10038bc),
257 noncreatable
259 coclass Procedure {
260 [default] interface IScriptProcedure;
264 uuid(0e59f1db-1fbe-11d0-8ff2-00a0d10038bc),
265 noncreatable
267 coclass Procedures {
268 [default] interface IScriptProcedureCollection;
272 uuid(0e59f1dc-1fbe-11d0-8ff2-00a0d10038bc),
273 noncreatable
275 coclass Module {
276 [default] interface IScriptModule;
280 uuid(0e59f1dd-1fbe-11d0-8ff2-00a0d10038bc),
281 noncreatable
283 coclass Modules {
284 [default] interface IScriptModuleCollection;
288 uuid(0e59f1de-1fbe-11d0-8ff2-00a0d10038bc),
289 noncreatable
291 coclass Error {
292 [default] interface IScriptError;
296 helpstring("ScriptControl Object"),
297 uuid(0e59f1d5-1fbe-11d0-8ff2-00a0d10038bc),
298 threading(apartment),
299 progid("MSScriptControl.ScriptControl.1"),
300 vi_progid("MSScriptControl.ScriptControl")
302 coclass ScriptControl {
303 [default] interface IScriptControl;
304 [default, source] dispinterface DScriptControlSource;