xref: /netbsd-src/external/gpl3/gcc/dist/libphobos/libdruntime/core/sys/windows/mshtml.d (revision 0a3071956a3a9fdebdbf7f338cf2d439b45fc728)
1 /**
2  * Windows API header module
3  *
4  * Translated from MinGW Windows headers
5  *
6  * License: $(LINK2 http://www.boost.org/LICENSE_1_0.txt, Boost License 1.0)
7  * Source: $(DRUNTIMESRC core/sys/windows/_mshtml.d)
8  */
9 module core.sys.windows.mshtml;
10 version (Windows):
11 @system:
12 
13 import core.sys.windows.basetyps, core.sys.windows.oaidl, core.sys.windows.unknwn,
14   core.sys.windows.windef, core.sys.windows.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(BSTR*);
295     HRESULT put_id(BSTR);
296     HRESULT get_id(BSTR*);
297     HRESULT get_tagName(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(BSTR*);
325     HRESULT put_language(BSTR);
326     HRESULT get_language(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(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(BSTR*);
342     HRESULT put_innerText(BSTR);
343     HRESULT get_innerText(BSTR*);
344     HRESULT put_outerHTML(BSTR);
345     HRESULT get_outerHTML(BSTR*);
346     HRESULT put_outerText(BSTR);
347     HRESULT get_outerText(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 }
538