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