1 /***********************************************************************\
2 *                                mshtml.d                               *
3 *                                                                       *
4 *                       Windows API header module                       *
5 *                                                                       *
6 *                 Translated from MinGW Windows headers                 *
7 *                                                                       *
8 *                       Placed into public domain                       *
9 \***********************************************************************/
10 module win32.mshtml;
11 version(Windows):
12 
13 private import win32.basetyps, win32.oaidl, win32.unknwn,
14   win32.windef, win32.wtypes;
15 
16 // These are used in this file, but not defined in MinGW.
17 interface IHTMLStyleSheet {};
18 alias IHTMLStyle LPHTMLSTYLE;
19 alias IHTMLStyleSheet LPHTMLSTYLESHEET;
20 interface IHTMLLocation {};
21 alias IHTMLLocation LPHTMLLOCATION;
22 interface IHTMLFramesCollection {};
23 alias IHTMLFramesCollection LPHTMLFRAMESCOLLECTION;
24 interface IHTMLStyleSheetsCollection {};
25 alias IHTMLStyleSheetsCollection LPHTMLSTYLESHEETSCOLLECTION;
26 interface IHTMLStyle {};
27 interface IHTMLFiltersCollection {};
28 alias IHTMLFiltersCollection LPHTMLFILTERSCOLLECTION;
29 interface IOmHistory : IDispatch {
30 	HRESULT get_length(short* p);
31 	HRESULT back(VARIANT*);
32 	HRESULT forward(VARIANT*);
33 	HRESULT go(VARIANT*);
34 };
35 alias IOmHistory LPOMHISTORY;
36 interface IOmNavigator {};
37 alias IOmNavigator LPOMNAVIGATOR;
38 interface IHTMLImageElementFactory {};
39 alias IHTMLImageElementFactory LPHTMLIMAGEELEMENTFACTORY;
40 interface IHTMLEventObj {};
41 alias IHTMLEventObj LPHTMLEVENTOBJ;
42 interface IHTMLScreen {};
43 alias IHTMLScreen LPHTMLSCREEN;
44 interface IHTMLOptionElementFactory {};
45 alias IHTMLOptionElementFactory LPHTMLOPTIONELEMENTFACTORY;
46 
47 interface IHTMLLinkElement : IDispatch {
48 	HRESULT put_href(BSTR);
49 	HRESULT get_href(BSTR*);
50 	HRESULT put_rel(BSTR);
51 	HRESULT get_rel(BSTR*);
52 	HRESULT put_rev(BSTR);
53 	HRESULT get_rev(BSTR*);
54 	HRESULT put_type(BSTR);
55 	HRESULT get_type(BSTR*);
56 	HRESULT get_readyState(BSTR*);
57 	HRESULT put_onreadystatechange(VARIANT);
58 	HRESULT get_onreadystatechange(VARIANT*);
59 	HRESULT put_onload(VARIANT);
60 	HRESULT get_onload(VARIANT*);
61 	HRESULT put_onerror(VARIANT);
62 	HRESULT get_onerror(VARIANT*);
63 	HRESULT get_styleSheet(LPHTMLSTYLESHEET*);
64 	HRESULT put_disabled(VARIANT_BOOL);
65 	HRESULT get_disabled(VARIANT_BOOL*);
66 	HRESULT put_media(BSTR);
67 	HRESULT get_media(BSTR*);
68 }
69 alias IHTMLLinkElement LPHTMLLINKELEMENT;
70 
71 interface IHTMLImgElement : IDispatch {
72 	HRESULT put_isMap(VARIANT_BOOL);
73 	HRESULT get_isMap(VARIANT_BOOL*);
74 	HRESULT put_useMap(BSTR);
75 	HRESULT get_useMap(BSTR*);
76 	HRESULT get_mimeType(BSTR*);
77 	HRESULT get_fileSize(BSTR*);
78 	HRESULT get_fileCreatedDate(BSTR*);
79 	HRESULT get_fileModifiedDate(BSTR*);
80 	HRESULT get_fileUpdatedDate(BSTR*);
81 	HRESULT get_protocol(BSTR*);
82 	HRESULT get_href(BSTR*);
83 	HRESULT get_nameProp(BSTR*);
84 	HRESULT put_border(VARIANT);
85 	HRESULT get_border(VARIANT*);
86 	HRESULT put_vspace(LONG);
87 	HRESULT get_vspace(LONG*);
88 	HRESULT put_hspace(LONG);
89 	HRESULT get_hspace(LONG*);
90 	HRESULT put_alt(BSTR);
91 	HRESULT get_alt(BSTR*);
92 	HRESULT put_src(BSTR);
93 	HRESULT get_src(BSTR*);
94 	HRESULT put_lowsrc(BSTR);
95 	HRESULT get_lowsrc(BSTR*);
96 	HRESULT put_vrml(BSTR);
97 	HRESULT get_vrml(BSTR*);
98 	HRESULT put_dynsrc(BSTR);
99 	HRESULT get_dynsrc(BSTR*);
100 	HRESULT get_readyState(BSTR*);
101 	HRESULT get_complete(VARIANT_BOOL*);
102 	HRESULT put_loop(VARIANT);
103 	HRESULT get_loop(VARIANT*);
104 	HRESULT put_align(BSTR);
105 	HRESULT get_align(BSTR*);
106 	HRESULT put_onload(VARIANT);
107 	HRESULT get_onload(VARIANT*);
108 	HRESULT put_onerror(VARIANT);
109 	HRESULT get_onerror(VARIANT*);
110 	HRESULT put_onabort(VARIANT);
111 	HRESULT get_onabort(VARIANT*);
112 	HRESULT put_name(BSTR);
113 	HRESULT get_name(BSTR*);
114 	HRESULT put_width(LONG);
115 	HRESULT get_width(LONG*);
116 	HRESULT put_height(LONG);
117 	HRESULT get_height(LONG*);
118 	HRESULT put_start(BSTR);
119 	HRESULT get_start(BSTR*);
120 }
121 alias IHTMLImgElement LPHTMLIMGELEMENT;
122 
123 interface IHTMLElementCollection : IDispatch {
124 	HRESULT toString(BSTR*);
125 	HRESULT put_length(LONG);
126 	HRESULT get_length(LONG*);
127 	HRESULT get__newEnum(IUnknown*);
128 	HRESULT item(VARIANT,VARIANT,IDispatch* pDisp);
129 	HRESULT tags(VARIANT,IDispatch* pdisp);
130 }
131 alias IHTMLElementCollection LPHTMLELEMENTCOLLECTION;
132 
133 interface IHTMLDocument : IDispatch {
134 	HRESULT get_Script(IDispatch*);
135 }
136 
137 interface IHTMLDocument2 : IHTMLDocument {
138 	HRESULT get_all(LPHTMLELEMENTCOLLECTION*);
139 	HRESULT get_body(LPHTMLELEMENT*);
140 	HRESULT get_activeElement(LPHTMLELEMENT*);
141 	HRESULT get_images(LPHTMLELEMENTCOLLECTION*);
142 	HRESULT get_applets(LPHTMLELEMENTCOLLECTION*);
143 	HRESULT get_links(LPHTMLELEMENTCOLLECTION*);
144 	HRESULT get_forms(LPHTMLELEMENTCOLLECTION*);
145 	HRESULT get_anchors(LPHTMLELEMENTCOLLECTION*);
146 	HRESULT put_title(BSTR);
147 	HRESULT get_title(BSTR*);
148 	HRESULT get_scripts(LPHTMLELEMENTCOLLECTION*);
149 	HRESULT put_designMode(BSTR);
150 	HRESULT get_designMode(BSTR*);
151 	HRESULT get_selection(LPHTMLSELECTIONOBJECT*);
152 	HRESULT get_readyState(BSTR*);
153 	HRESULT get_frames(IHTMLFramesCollection2*);
154 	HRESULT get_embeds(LPHTMLELEMENTCOLLECTION*);
155 	HRESULT get_plugins(LPHTMLELEMENTCOLLECTION*);
156 	HRESULT put_alinkColor(VARIANT);
157 	HRESULT get_alinkColor(VARIANT*);
158 	HRESULT put_bgColor(VARIANT);
159 	HRESULT get_bgColor(VARIANT*);
160 	HRESULT put_fgColor(VARIANT);
161 	HRESULT get_fgColor(VARIANT*);
162 	HRESULT put_linkColor(VARIANT);
163 	HRESULT get_linkColor(VARIANT*);
164 	HRESULT put_vlinkColor(VARIANT);
165 	HRESULT get_vlinkColor(VARIANT*);
166 	HRESULT get_referrer(BSTR*);
167 	HRESULT get_location(LPHTMLLOCATION*);
168 	HRESULT get_lastModified(BSTR*);
169 	HRESULT put_url(BSTR);
170 	HRESULT get_url(BSTR*);
171 	HRESULT put_domain(BSTR);
172 	HRESULT get_domain(BSTR*);
173 	HRESULT put_cookie(BSTR);
174 	HRESULT get_cookie(BSTR*);
175 	HRESULT put_expands(VARIANT_BOOL);
176 	HRESULT get_expands(VARIANT_BOOL*);
177 	HRESULT put_charset(BSTR);
178 	HRESULT get_charset(BSTR*);
179 	HRESULT put_defaultCharset(BSTR);
180 	HRESULT get_defaultCharset(BSTR*);
181 	HRESULT get_mimeType(BSTR*);
182 	HRESULT get_fileSize(BSTR*);
183 	HRESULT get_fileCreatedDate(BSTR*);
184 	HRESULT get_fileModifiedDate(BSTR*);
185 	HRESULT get_fileUpdatedDate(BSTR*);
186 	HRESULT get_security(BSTR*);
187 	HRESULT get_protocol(BSTR*);
188 	HRESULT get_nameProp(BSTR*);
189 	HRESULT write(SAFEARRAY*);
190 	HRESULT writeln(SAFEARRAY*);
191 	HRESULT open(BSTR,VARIANT,VARIANT,VARIANT,IDispatch*);
192 	HRESULT close();
193 	HRESULT clear();
194 	HRESULT queryCommandSupported(BSTR,VARIANT_BOOL*);
195 	HRESULT queryCommandEnabled(BSTR,VARIANT_BOOL*);
196 	HRESULT queryCommandState(BSTR,VARIANT_BOOL*);
197 	HRESULT queryCommandIndeterm(BSTR,VARIANT_BOOL*);
198 	HRESULT queryCommandText(BSTR,BSTR*);
199 	HRESULT queryCommandValue(BSTR,VARIANT*);
200 	HRESULT execCommand(BSTR,VARIANT_BOOL,VARIANT,VARIANT_BOOL*);
201 	HRESULT execCommandShowHelp(BSTR,VARIANT_BOOL*);
202 	HRESULT createElement(BSTR,LPHTMLELEMENT*);
203 	HRESULT put_onhelp(VARIANT);
204 	HRESULT get_onhelp(VARIANT*);
205 	HRESULT put_onclick(VARIANT);
206 	HRESULT get_onclick(VARIANT*);
207 	HRESULT put_ondblclick(VARIANT);
208 	HRESULT get_ondblclick(VARIANT*);
209 	HRESULT put_onkeyup(VARIANT);
210 	HRESULT get_onkeyup(VARIANT*);
211 	HRESULT put_onkeydown(VARIANT);
212 	HRESULT get_onkeydown(VARIANT*);
213 	HRESULT put_onkeypress(VARIANT);
214 	HRESULT get_onkeypress(VARIANT*);
215 	HRESULT put_onmouseup(VARIANT);
216 	HRESULT get_onmouseup(VARIANT*);
217 	HRESULT put_onmousedown(VARIANT);
218 	HRESULT get_onmousedown(VARIANT*);
219 	HRESULT put_onmousemove(VARIANT);
220 	HRESULT get_onmousemove(VARIANT*);
221 	HRESULT put_onmouseout(VARIANT);
222 	HRESULT get_onmouseout(VARIANT*);
223 	HRESULT put_onmouseover(VARIANT);
224 	HRESULT get_onmouseover(VARIANT*);
225 	HRESULT put_onreadystatechange(VARIANT);
226 	HRESULT get_onreadystatechange(VARIANT*);
227 	HRESULT put_onafterupdate(VARIANT);
228 	HRESULT get_onafterupdate(VARIANT*);
229 	HRESULT put_onrowexit(VARIANT);
230 	HRESULT get_onrowexit(VARIANT*);
231 	HRESULT put_onrowenter(VARIANT);
232 	HRESULT get_onrowenter(VARIANT*);
233 	HRESULT put_ondragstart(VARIANT);
234 	HRESULT get_ondragstart(VARIANT*);
235 	HRESULT put_onselectstart(VARIANT);
236 	HRESULT get_onselectstart(VARIANT*);
237 	HRESULT elementFromPoint(LONG,LONG,LPHTMLELEMENT*);
238 	HRESULT get_parentWindow(LPHTMLWINDOW2*);
239 	HRESULT get_styleSheets(LPHTMLSTYLESHEETSCOLLECTION*);
240 	HRESULT put_onbeforeupdate(VARIANT);
241 	HRESULT get_onbeforeupdate(VARIANT*);
242 	HRESULT put_onerrorupdate(VARIANT);
243 	HRESULT get_onerrorupdate(VARIANT*);
244 	HRESULT toString(BSTR*);
245 	HRESULT createStyleSheet(BSTR,LONG,LPHTMLSTYLESHEET*);
246 }
247 
248 interface IHTMLSelectionObject : IDispatch {
249 	HRESULT createRange(IDispatch*);
250 	HRESULT empty();
251 	HRESULT clear();
252 	HRESULT get_type(BSTR*);
253 }
254 alias IHTMLSelectionObject LPHTMLSELECTIONOBJECT;
255 
256 interface IHTMLTxtRange : IDispatch {
257 	HRESULT get_htmlText(BSTR*);
258 	HRESULT put_text(BSTR);
259 	HRESULT get_text(BSTR*);
260 	HRESULT parentElement(LPHTMLELEMENT*);
261 	HRESULT duplicate(IHTMLTxtRange*);
262 	HRESULT inRange(IHTMLTxtRange,VARIANT_BOOL*);
263 	HRESULT isEqual(IHTMLTxtRange,VARIANT_BOOL*);
264 	HRESULT scrollIntoView(VARIANT_BOOL);
265 	HRESULT collapse(VARIANT_BOOL);
266 	HRESULT expand(BSTR,VARIANT_BOOL*);
267 	HRESULT move(BSTR,LONG,LONG*);
268 	HRESULT moveStart(BSTR,LONG,LONG*);
269 	HRESULT moveEnd(BSTR,LONG,LONG*);
270 	HRESULT select();
271 	HRESULT pasteHTML(BSTR);
272 	HRESULT moveToElementText(LPHTMLELEMENT);
273 	HRESULT setEndPoint(BSTR,IHTMLTxtRange);
274 	HRESULT compareEndPoints(BSTR,IHTMLTxtRange,LONG*);
275 	HRESULT findText(BSTR,LONG,LONG,VARIANT_BOOL*);
276 	HRESULT moveToPoint(LONG,LONG);
277 	HRESULT getBookmark(BSTR*);
278 	HRESULT moveToBookbark(BSTR,VARIANT_BOOL*);
279 	HRESULT queryCommandSupported(BSTR,VARIANT_BOOL*);
280 	HRESULT queryCommandEnabled(BSTR,VARIANT_BOOL*);
281 	HRESULT queryCommandState(BSTR,VARIANT_BOOL*);
282 	HRESULT queryCommandIndeterm(BSTR,VARIANT_BOOL*);
283 	HRESULT queryCommandText(BSTR,BSTR*);
284 	HRESULT queryCommandValue(BSTR,VARIANT*);
285 	HRESULT execCommand(BSTR,VARIANT_BOOL,VARIANT,VARIANT_BOOL*);
286 	HRESULT execCommandShowHelp(BSTR,VARIANT_BOOL*);
287 }
288 
289 interface IHTMLElement : IDispatch {
290 	HRESULT setAttribute(BSTR,VARIANT,LONG);
291 	HRESULT getAttribute(BSTR,LONG,VARIANT*);
292 	HRESULT removeAttribute(BSTR,LONG,VARIANT_BOOL*);
293 	HRESULT put_className(BSTR);
294 	HRESULT get_className(ref BSTR);
295 	HRESULT put_id(BSTR);
296 	HRESULT get_id(ref BSTR);
297 	HRESULT get_tagName(ref BSTR);
298 	HRESULT get_parentElement(LPHTMLELEMENT*);
299 	HRESULT get_style(LPHTMLSTYLE*);
300 	HRESULT put_onhelp(VARIANT);
301 	HRESULT get_onhelp(VARIANT*);
302 	HRESULT put_onclick(VARIANT);
303 	HRESULT get_onclick(VARIANT*);
304 	HRESULT put_ondblclick(VARIANT);
305 	HRESULT get_ondblclick(VARIANT*);
306 	HRESULT put_onkeydown(VARIANT);
307 	HRESULT get_onkeydown(VARIANT*);
308 	HRESULT put_onkeyup(VARIANT);
309 	HRESULT get_onkeyup(VARIANT*);
310 	HRESULT put_onkeypress(VARIANT);
311 	HRESULT get_onkeypress(VARIANT*);
312 	HRESULT put_onmouseout(VARIANT);
313 	HRESULT get_onmouseout(VARIANT*);
314 	HRESULT put_onmouseover(VARIANT);
315 	HRESULT get_onmouseover(VARIANT*);
316 	HRESULT put_onmousemove(VARIANT);
317 	HRESULT get_onmousemove(VARIANT*);
318 	HRESULT put_onmousedown(VARIANT);
319 	HRESULT get_onmousedown(VARIANT*);
320 	HRESULT put_onmouseup(VARIANT);
321 	HRESULT get_onmouseup(VARIANT*);
322 	HRESULT get_document(IDispatch*);
323 	HRESULT put_title(BSTR);
324 	HRESULT get_title(ref BSTR);
325 	HRESULT put_language(BSTR);
326 	HRESULT get_language(ref BSTR);
327 	HRESULT put_onselectstart(VARIANT);
328 	HRESULT get_onselectstart(VARIANT*);
329 	HRESULT scrollIntoView(VARIANT);
330 	HRESULT contains(LPHTMLELEMENT,VARIANT_BOOL*);
331 	HRESULT get_source3Index(LONG*);
332 	HRESULT get_recordNumber(VARIANT*);
333 	HRESULT put_lang(BSTR);
334 	HRESULT get_lang(ref BSTR);
335 	HRESULT get_offsetLeft(LONG*);
336 	HRESULT get_offsetTop(LONG*);
337 	HRESULT get_offsetWidth(LONG*);
338 	HRESULT get_offsetHeight(LONG*);
339 	HRESULT get_offsetParent(LPHTMLELEMENT*);
340 	HRESULT put_innerHTML(BSTR);
341 	HRESULT get_innerHTML(ref BSTR);
342 	HRESULT put_innerText(BSTR);
343 	HRESULT get_innerText(ref BSTR);
344 	HRESULT put_outerHTML(BSTR);
345 	HRESULT get_outerHTML(ref BSTR);
346 	HRESULT put_outerText(BSTR);
347 	HRESULT get_outerText(ref BSTR);
348 	HRESULT insertAdjacentHTML(BSTR,BSTR);
349 	HRESULT insertAdjacentText(BSTR,BSTR);
350 	HRESULT get_parentTextEdit(LPHTMLELEMENT*);
351 	HRESULT isTextEdit(VARIANT_BOOL*);
352 	HRESULT click();
353 	HRESULT get_filters(LPHTMLFILTERSCOLLECTION*);
354 	HRESULT put_ondragstart(VARIANT);
355 	HRESULT get_ondragstart(VARIANT*);
356 	HRESULT toString(BSTR*);
357 	HRESULT put_onbeforeupdate(VARIANT);
358 	HRESULT get_onbeforeupdate(VARIANT*);
359 	HRESULT put_onafterupdate(VARIANT);
360 	HRESULT get_onafterupdate(VARIANT*);
361 	HRESULT put_onerrorupdate(VARIANT);
362 	HRESULT get_onerrorupdate(VARIANT*);
363 	HRESULT put_onrowexit(VARIANT);
364 	HRESULT get_onrowexit(VARIANT*);
365 	HRESULT put_onrowenter(VARIANT);
366 	HRESULT get_onrowenter(VARIANT*);
367 	HRESULT put_ondatasetchanged(VARIANT);
368 	HRESULT get_ondatasetchanged(VARIANT*);
369 	HRESULT put_ondataavailable(VARIANT);
370 	HRESULT get_ondataavailable(VARIANT*);
371 	HRESULT put_ondatasetcomplete(VARIANT);
372 	HRESULT get_ondatasetcomplete(VARIANT*);
373 	HRESULT put_onfilterchange(VARIANT);
374 	HRESULT get_onfilterchange(VARIANT*);
375 	HRESULT get_children(IDispatch*);
376 	HRESULT get_all(IDispatch*);
377 }
378 alias IHTMLElement LPHTMLELEMENT;
379 
380 interface IHTMLFramesCollection2 : IDispatch {
381 	HRESULT item(VARIANT*,VARIANT*);
382 	HRESULT get_length(LONG*);
383 }
384 
385 interface IHTMLWindow2 : IHTMLFramesCollection2 {
386 	HRESULT get_frames(IHTMLFramesCollection2*);
387 	HRESULT put_defaultStatus(BSTR);
388 	HRESULT get_defaultStatus(BSTR*);
389 	HRESULT put_status(BSTR);
390 	HRESULT get_status(BSTR*);
391 	HRESULT setTimeout(BSTR,LONG,VARIANT*,LONG*);
392 	HRESULT clearTimeout(LONG);
393 	HRESULT alert(BSTR);
394 	HRESULT confirm(BSTR,VARIANT_BOOL*);
395 	HRESULT prompt(BSTR,BSTR,VARIANT*);
396 	HRESULT get_Image(LPHTMLIMAGEELEMENTFACTORY*);
397 	HRESULT get_location(LPHTMLLOCATION*);
398 	HRESULT get_history(LPOMHISTORY*);
399 	HRESULT close();
400 	HRESULT put_opener(VARIANT);
401 	HRESULT get_opener(VARIANT*);
402 	HRESULT get_navigator(LPOMNAVIGATOR*);
403 	HRESULT put_name(BSTR);
404 	HRESULT get_name(BSTR*);
405 	HRESULT get_parent(LPHTMLWINDOW2*);
406 	HRESULT open(BSTR,BSTR,BSTR,VARIANT_BOOL,LPHTMLWINDOW2*);
407 	HRESULT get_self(LPHTMLWINDOW2*);
408 	HRESULT get_top(LPHTMLWINDOW2*);
409 	HRESULT get_window(LPHTMLWINDOW2*);
410 	HRESULT navigate(BSTR);
411 	HRESULT put_onfocus(VARIANT);
412 	HRESULT get_onfocus(VARIANT*);
413 	HRESULT put_onblur(VARIANT);
414 	HRESULT get_onblur(VARIANT*);
415 	HRESULT put_onload(VARIANT);
416 	HRESULT get_onload(VARIANT*);
417 	HRESULT put_onbeforeunload(VARIANT);
418 	HRESULT get_onbeforeunload(VARIANT*);
419 	HRESULT put_onunload(VARIANT);
420 	HRESULT get_onunload(VARIANT*);
421 	HRESULT put_onhelp(VARIANT);
422 	HRESULT get_onhelp(VARIANT*);
423 	HRESULT put_onerror(VARIANT);
424 	HRESULT get_onerror(VARIANT*);
425 	HRESULT put_onresize(VARIANT);
426 	HRESULT get_onresize(VARIANT*);
427 	HRESULT put_onscroll(VARIANT);
428 	HRESULT get_onscroll(VARIANT*);
429 	HRESULT get_document(IHTMLDocument2*);
430 	HRESULT get_event(LPHTMLEVENTOBJ*);
431 	HRESULT get__newEnum(IUnknown*);
432 	HRESULT showModalDialog(BSTR,VARIANT*,VARIANT*,VARIANT*);
433 	HRESULT showHelp(BSTR,VARIANT,BSTR);
434 	HRESULT get_screen(LPHTMLSCREEN*);
435 	HRESULT get_Option(LPHTMLOPTIONELEMENTFACTORY*);
436 	HRESULT focus();
437 	HRESULT get_closed(VARIANT_BOOL*);
438 	HRESULT blur();
439 	HRESULT scroll(long,long);
440 	HRESULT get_clientInformation(LPOMNAVIGATOR*);
441 	HRESULT setInterval(BSTR,long,VARIANT*,long*);
442 	HRESULT clearInterval(long);
443 	HRESULT put_offscreenBuffering(VARIANT);
444 	HRESULT get_offscreenBuffering(VARIANT*);
445 	HRESULT execScript(BSTR,BSTR,VARIANT*);
446 	HRESULT toString(BSTR*);
447 	HRESULT scrollBy(LONG,LONG);
448 	HRESULT scrollTo(LONG,LONG);
449 	HRESULT moveTo(LONG,LONG);
450 	HRESULT moveBy(LONG,LONG);
451 	HRESULT resizeTo(LONG,LONG);
452 	HRESULT resizeBy(LONG,LONG);
453 	HRESULT get_external(IDispatch*);
454 }
455 alias IHTMLWindow2 LPHTMLWINDOW2;
456 
457 interface IHTMLFrameBase : IDispatch {
458 	HRESULT put_src(BSTR);
459 	HRESULT get_src(BSTR*);
460 	HRESULT put_name(BSTR);
461 	HRESULT get_name(BSTR*);
462 	HRESULT put_border(VARIANT);
463 	HRESULT get_border(VARIANT*);
464 	HRESULT put_frameBorder(BSTR);
465 	HRESULT get_frameBorder(BSTR*);
466 	HRESULT put_frameSpacing(VARIANT);
467 	HRESULT get_frameSpacing(VARIANT*);
468 	HRESULT put_marginWidth(VARIANT);
469 	HRESULT get_marginWidth(VARIANT*);
470 	HRESULT put_marginHeight(VARIANT);
471 	HRESULT get_marginHeight(VARIANT*);
472 	HRESULT put_noResize(VARIANT_BOOL);
473 	HRESULT get_noResize(VARIANT_BOOL*);
474 	HRESULT put_scrolling(BSTR);
475 	HRESULT get_scrolling(BSTR*);
476 }
477 
478 interface IHTMLFrameBase2 : IDispatch {
479 	HRESULT get_contentWindow(IHTMLWindow2*);
480 	HRESULT put_onload(VARIANT);
481 	HRESULT get_onload(VARIANT*);
482 	HRESULT put_onreadystatechange(VARIANT);
483 	HRESULT get_onreadystatechange(VARIANT*);
484 	HRESULT get_readyState(BSTR*);
485 	HRESULT put_allowTransparency(VARIANT_BOOL);
486 	HRESULT get_allowTransparency(VARIANT_BOOL*);
487 }
488 
489 interface IHTMLFrameBase3 : IDispatch {
490 	HRESULT put_longDesc(BSTR);
491 	HRESULT get_longDesc(BSTR*);
492 }
493 
494 interface IHTMLBodyElement : IDispatch {
495 	HRESULT put_background(BSTR);
496 	HRESULT get_background(BSTR*);
497 	HRESULT put_bgProperties(BSTR);
498 	HRESULT get_bgProperties(BSTR*);
499 	HRESULT put_leftMargin(VARIANT);
500 	HRESULT get_leftMargin(VARIANT*);
501 	HRESULT put_topMargin(VARIANT);
502 	HRESULT get_topMargin(VARIANT*);
503 	HRESULT put_rightMargin(VARIANT);
504 	HRESULT get_rightMargin(VARIANT*);
505 	HRESULT put_bottomMargin(VARIANT);
506 	HRESULT get_bottomMargin(VARIANT*);
507 	HRESULT put_noWrap(VARIANT_BOOL);
508 	HRESULT get_noWrap(VARIANT_BOOL*);
509 	HRESULT put_bgColor(VARIANT);
510 	HRESULT get_bgColor(VARIANT*);
511 	HRESULT put_text(VARIANT);
512 	HRESULT get_text(VARIANT*);
513 	HRESULT put_link(VARIANT);
514 	HRESULT get_link(VARIANT*);
515 	HRESULT put_vLink(VARIANT);
516 	HRESULT get_vLink(VARIANT*);
517 	HRESULT put_aLink(VARIANT);
518 	HRESULT get_aLink(VARIANT*);
519 	HRESULT put_onload(VARIANT);
520 	HRESULT get_onload(VARIANT*);
521 	HRESULT put_onunload(VARIANT);
522 	HRESULT get_onunload(VARIANT*);
523 	HRESULT put_scroll(BSTR);
524 	HRESULT get_scroll(BSTR*);
525 	HRESULT put_onselect(VARIANT);
526 	HRESULT get_onselect(VARIANT*);
527 	HRESULT put_onbeforeunload(VARIANT);
528 	HRESULT get_onbeforeunload(VARIANT*);
529 	HRESULT createTextRange(IHTMLTxtRange*);
530 }
531 
532 interface IHTMLBodyElement2 : IDispatch {
533 	HRESULT put_onbeforeprint(VARIANT);
534 	HRESULT get_onbeforeprint(VARIANT*);
535 	HRESULT put_onafterprint(VARIANT);
536 	HRESULT get_onafterprint(VARIANT*);
537 }