ReactOS 0.4.15-dev-7931-gfd331f1
htmliframe.c
Go to the documentation of this file.
1/*
2 * Copyright 2008 Jacek 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 "mshtml_private.h"
20
21typedef struct {
23 IHTMLIFrameElement IHTMLIFrameElement_iface;
24 IHTMLIFrameElement2 IHTMLIFrameElement2_iface;
25 IHTMLIFrameElement3 IHTMLIFrameElement3_iface;
27
28static inline HTMLIFrame *impl_from_IHTMLIFrameElement(IHTMLIFrameElement *iface)
29{
30 return CONTAINING_RECORD(iface, HTMLIFrame, IHTMLIFrameElement_iface);
31}
32
33static HRESULT WINAPI HTMLIFrameElement_QueryInterface(IHTMLIFrameElement *iface,
34 REFIID riid, void **ppv)
35{
37
38 return IHTMLDOMNode_QueryInterface(&This->framebase.element.node.IHTMLDOMNode_iface, riid, ppv);
39}
40
41static ULONG WINAPI HTMLIFrameElement_AddRef(IHTMLIFrameElement *iface)
42{
44
45 return IHTMLDOMNode_AddRef(&This->framebase.element.node.IHTMLDOMNode_iface);
46}
47
48static ULONG WINAPI HTMLIFrameElement_Release(IHTMLIFrameElement *iface)
49{
51
52 return IHTMLDOMNode_Release(&This->framebase.element.node.IHTMLDOMNode_iface);
53}
54
55static HRESULT WINAPI HTMLIFrameElement_GetTypeInfoCount(IHTMLIFrameElement *iface, UINT *pctinfo)
56{
58 return IDispatchEx_GetTypeInfoCount(&This->framebase.element.node.event_target.dispex.IDispatchEx_iface,
59 pctinfo);
60}
61
62static HRESULT WINAPI HTMLIFrameElement_GetTypeInfo(IHTMLIFrameElement *iface, UINT iTInfo,
63 LCID lcid, ITypeInfo **ppTInfo)
64{
66 return IDispatchEx_GetTypeInfo(&This->framebase.element.node.event_target.dispex.IDispatchEx_iface, iTInfo,
67 lcid, ppTInfo);
68}
69
70static HRESULT WINAPI HTMLIFrameElement_GetIDsOfNames(IHTMLIFrameElement *iface, REFIID riid,
71 LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId)
72{
74 return IDispatchEx_GetIDsOfNames(&This->framebase.element.node.event_target.dispex.IDispatchEx_iface, riid,
75 rgszNames, cNames, lcid, rgDispId);
76}
77
78static HRESULT WINAPI HTMLIFrameElement_Invoke(IHTMLIFrameElement *iface, DISPID dispIdMember,
79 REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams,
80 VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr)
81{
83 return IDispatchEx_Invoke(&This->framebase.element.node.event_target.dispex.IDispatchEx_iface, dispIdMember,
84 riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr);
85}
86
87static HRESULT WINAPI HTMLIFrameElement_put_vspace(IHTMLIFrameElement *iface, LONG v)
88{
90 FIXME("(%p)->(%d)\n", This, v);
91 return E_NOTIMPL;
92}
93
94static HRESULT WINAPI HTMLIFrameElement_get_vspace(IHTMLIFrameElement *iface, LONG *p)
95{
97 FIXME("(%p)->(%p)\n", This, p);
98 return E_NOTIMPL;
99}
100
101static HRESULT WINAPI HTMLIFrameElement_put_hspace(IHTMLIFrameElement *iface, LONG v)
102{
104 FIXME("(%p)->(%d)\n", This, v);
105 return E_NOTIMPL;
106}
107
108static HRESULT WINAPI HTMLIFrameElement_get_hspace(IHTMLIFrameElement *iface, LONG *p)
109{
111 FIXME("(%p)->(%p)\n", This, p);
112 return E_NOTIMPL;
113}
114
115static HRESULT WINAPI HTMLIFrameElement_put_align(IHTMLIFrameElement *iface, BSTR v)
116{
118 FIXME("(%p)->(%s)\n", This, debugstr_w(v));
119 return E_NOTIMPL;
120}
121
122static HRESULT WINAPI HTMLIFrameElement_get_align(IHTMLIFrameElement *iface, BSTR *p)
123{
125 FIXME("(%p)->(%p)\n", This, p);
126 return E_NOTIMPL;
127}
128
129static const IHTMLIFrameElementVtbl HTMLIFrameElementVtbl = {
143};
144
145static inline HTMLIFrame *impl_from_IHTMLIFrameElement2(IHTMLIFrameElement2 *iface)
146{
147 return CONTAINING_RECORD(iface, HTMLIFrame, IHTMLIFrameElement2_iface);
148}
149
150static HRESULT WINAPI HTMLIFrameElement2_QueryInterface(IHTMLIFrameElement2 *iface,
151 REFIID riid, void **ppv)
152{
154
155 return IHTMLDOMNode_QueryInterface(&This->framebase.element.node.IHTMLDOMNode_iface, riid, ppv);
156}
157
158static ULONG WINAPI HTMLIFrameElement2_AddRef(IHTMLIFrameElement2 *iface)
159{
161
162 return IHTMLDOMNode_AddRef(&This->framebase.element.node.IHTMLDOMNode_iface);
163}
164
165static ULONG WINAPI HTMLIFrameElement2_Release(IHTMLIFrameElement2 *iface)
166{
168
169 return IHTMLDOMNode_Release(&This->framebase.element.node.IHTMLDOMNode_iface);
170}
171
172static HRESULT WINAPI HTMLIFrameElement2_GetTypeInfoCount(IHTMLIFrameElement2 *iface, UINT *pctinfo)
173{
175 return IDispatchEx_GetTypeInfoCount(&This->framebase.element.node.event_target.dispex.IDispatchEx_iface,
176 pctinfo);
177}
178
179static HRESULT WINAPI HTMLIFrameElement2_GetTypeInfo(IHTMLIFrameElement2 *iface, UINT iTInfo,
180 LCID lcid, ITypeInfo **ppTInfo)
181{
183 return IDispatchEx_GetTypeInfo(&This->framebase.element.node.event_target.dispex.IDispatchEx_iface, iTInfo,
184 lcid, ppTInfo);
185}
186
187static HRESULT WINAPI HTMLIFrameElement2_GetIDsOfNames(IHTMLIFrameElement2 *iface, REFIID riid,
188 LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId)
189{
191 return IDispatchEx_GetIDsOfNames(&This->framebase.element.node.event_target.dispex.IDispatchEx_iface, riid,
192 rgszNames, cNames, lcid, rgDispId);
193}
194
195static HRESULT WINAPI HTMLIFrameElement2_Invoke(IHTMLIFrameElement2 *iface, DISPID dispIdMember,
196 REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams,
197 VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr)
198{
200 return IDispatchEx_Invoke(&This->framebase.element.node.event_target.dispex.IDispatchEx_iface, dispIdMember,
201 riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr);
202}
203
204static HRESULT WINAPI HTMLIFrameElement2_put_height(IHTMLIFrameElement2 *iface, VARIANT v)
205{
207 nsAString nsstr;
208 nsresult nsres;
209
210 TRACE("(%p)->(%s)\n", This, debugstr_variant(&v));
211
212 if(V_VT(&v) != VT_BSTR) {
213 FIXME("Unsupported %s\n", debugstr_variant(&v));
214 return E_NOTIMPL;
215 }
216
217 nsAString_InitDepend(&nsstr, V_BSTR(&v));
218 nsres = nsIDOMHTMLIFrameElement_SetHeight(This->framebase.nsiframe, &nsstr);
219 nsAString_Finish(&nsstr);
220 if(NS_FAILED(nsres)) {
221 ERR("SetHeight failed: %08x\n", nsres);
222 return E_FAIL;
223 }
224
225 return S_OK;
226}
227
228static HRESULT WINAPI HTMLIFrameElement2_get_height(IHTMLIFrameElement2 *iface, VARIANT *p)
229{
231 nsAString nsstr;
232 nsresult nsres;
233
234 TRACE("(%p)->(%p)\n", This, p);
235
236 nsAString_Init(&nsstr, NULL);
237 nsres = nsIDOMHTMLIFrameElement_GetHeight(This->framebase.nsiframe, &nsstr);
238
239 V_VT(p) = VT_BSTR;
240 return return_nsstr(nsres, &nsstr, &V_BSTR(p));
241}
242
243static HRESULT WINAPI HTMLIFrameElement2_put_width(IHTMLIFrameElement2 *iface, VARIANT v)
244{
246 nsAString nsstr;
247 nsresult nsres;
248
249 TRACE("(%p)->(%s)\n", This, debugstr_variant(&v));
250
251 if(V_VT(&v) != VT_BSTR) {
252 FIXME("Unsupported %s\n", debugstr_variant(&v));
253 return E_NOTIMPL;
254 }
255
256 nsAString_InitDepend(&nsstr, V_BSTR(&v));
257 nsres = nsIDOMHTMLIFrameElement_SetWidth(This->framebase.nsiframe, &nsstr);
258 nsAString_Finish(&nsstr);
259 if(NS_FAILED(nsres)) {
260 ERR("SetWidth failed: %08x\n", nsres);
261 return E_FAIL;
262 }
263
264 return S_OK;
265}
266
267static HRESULT WINAPI HTMLIFrameElement2_get_width(IHTMLIFrameElement2 *iface, VARIANT *p)
268{
270 nsAString nsstr;
271 nsresult nsres;
272
273 TRACE("(%p)->(%p)\n", This, p);
274
275 nsAString_Init(&nsstr, NULL);
276 nsres = nsIDOMHTMLIFrameElement_GetWidth(This->framebase.nsiframe, &nsstr);
277
278 V_VT(p) = VT_BSTR;
279 return return_nsstr(nsres, &nsstr, &V_BSTR(p));
280}
281
282static const IHTMLIFrameElement2Vtbl HTMLIFrameElement2Vtbl = {
294};
295
296static inline HTMLIFrame *impl_from_IHTMLIFrameElement3(IHTMLIFrameElement3 *iface)
297{
298 return CONTAINING_RECORD(iface, HTMLIFrame, IHTMLIFrameElement3_iface);
299}
300
301static HRESULT WINAPI HTMLIFrameElement3_QueryInterface(IHTMLIFrameElement3 *iface,
302 REFIID riid, void **ppv)
303{
305
306 return IHTMLDOMNode_QueryInterface(&This->framebase.element.node.IHTMLDOMNode_iface, riid, ppv);
307}
308
309static ULONG WINAPI HTMLIFrameElement3_AddRef(IHTMLIFrameElement3 *iface)
310{
312
313 return IHTMLDOMNode_AddRef(&This->framebase.element.node.IHTMLDOMNode_iface);
314}
315
316static ULONG WINAPI HTMLIFrameElement3_Release(IHTMLIFrameElement3 *iface)
317{
319
320 return IHTMLDOMNode_Release(&This->framebase.element.node.IHTMLDOMNode_iface);
321}
322
323static HRESULT WINAPI HTMLIFrameElement3_GetTypeInfoCount(IHTMLIFrameElement3 *iface, UINT *pctinfo)
324{
326 return IDispatchEx_GetTypeInfoCount(&This->framebase.element.node.event_target.dispex.IDispatchEx_iface,
327 pctinfo);
328}
329
330static HRESULT WINAPI HTMLIFrameElement3_GetTypeInfo(IHTMLIFrameElement3 *iface, UINT iTInfo,
331 LCID lcid, ITypeInfo **ppTInfo)
332{
334 return IDispatchEx_GetTypeInfo(&This->framebase.element.node.event_target.dispex.IDispatchEx_iface, iTInfo,
335 lcid, ppTInfo);
336}
337
338static HRESULT WINAPI HTMLIFrameElement3_GetIDsOfNames(IHTMLIFrameElement3 *iface, REFIID riid,
339 LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId)
340{
342 return IDispatchEx_GetIDsOfNames(&This->framebase.element.node.event_target.dispex.IDispatchEx_iface, riid,
343 rgszNames, cNames, lcid, rgDispId);
344}
345
346static HRESULT WINAPI HTMLIFrameElement3_Invoke(IHTMLIFrameElement3 *iface, DISPID dispIdMember,
347 REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams,
348 VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr)
349{
351 return IDispatchEx_Invoke(&This->framebase.element.node.event_target.dispex.IDispatchEx_iface, dispIdMember,
352 riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr);
353}
354
356{
358 IHTMLDocument2 *doc;
360
361 TRACE("(%p)->(%p)\n", This, p);
362
363 if(!This->framebase.content_window) {
364 *p = NULL;
365 return S_OK;
366 }
367
368 hres = IHTMLWindow2_get_document(&This->framebase.content_window->base.IHTMLWindow2_iface, &doc);
369 *p = (IDispatch*)doc;
370 return hres;
371}
372
373static HRESULT WINAPI HTMLIFrameElement3_put_src(IHTMLIFrameElement3 *iface, BSTR v)
374{
376 FIXME("(%p)->(%s)\n", This, debugstr_w(v));
377 return E_NOTIMPL;
378}
379
380static HRESULT WINAPI HTMLIFrameElement3_get_src(IHTMLIFrameElement3 *iface, BSTR *p)
381{
383 FIXME("(%p)->(%p)\n", This, p);
384 return E_NOTIMPL;
385}
386
387static HRESULT WINAPI HTMLIFrameElement3_put_longDesc(IHTMLIFrameElement3 *iface, BSTR v)
388{
390 FIXME("(%p)->(%s)\n", This, debugstr_w(v));
391 return E_NOTIMPL;
392}
393
394static HRESULT WINAPI HTMLIFrameElement3_get_longDesc(IHTMLIFrameElement3 *iface, BSTR *p)
395{
397 FIXME("(%p)->(%p)\n", This, p);
398 return E_NOTIMPL;
399}
400
401static HRESULT WINAPI HTMLIFrameElement3_put_frameBorder(IHTMLIFrameElement3 *iface, BSTR v)
402{
404 FIXME("(%p)->(%s)\n", This, debugstr_w(v));
405 return E_NOTIMPL;
406}
407
408static HRESULT WINAPI HTMLIFrameElement3_get_frameBorder(IHTMLIFrameElement3 *iface, BSTR *p)
409{
411 FIXME("(%p)->(%p)\n", This, p);
412 return E_NOTIMPL;
413}
414
415static const IHTMLIFrameElement3Vtbl HTMLIFrameElement3Vtbl = {
430};
431
433{
434 return CONTAINING_RECORD(iface, HTMLIFrame, framebase.element.node);
435}
436
438{
440
441 if(IsEqualGUID(&IID_IHTMLIFrameElement, riid)) {
442 TRACE("(%p)->(IID_IHTMLIFrameElement %p)\n", This, ppv);
443 *ppv = &This->IHTMLIFrameElement_iface;
444 }else if(IsEqualGUID(&IID_IHTMLIFrameElement2, riid)) {
445 TRACE("(%p)->(IID_IHTMLIFrameElement2 %p)\n", This, ppv);
446 *ppv = &This->IHTMLIFrameElement2_iface;
447 }else if(IsEqualGUID(&IID_IHTMLIFrameElement3, riid)) {
448 TRACE("(%p)->(IID_IHTMLIFrameElement3 %p)\n", This, ppv);
449 *ppv = &This->IHTMLIFrameElement3_iface;
450 }else {
451 return HTMLFrameBase_QI(&This->framebase, riid, ppv);
452 }
453
454 IUnknown_AddRef((IUnknown*)*ppv);
455 return S_OK;
456}
457
459{
461
462 HTMLFrameBase_destructor(&This->framebase);
463}
464
466{
468
469 if(!This->framebase.content_window || !This->framebase.content_window->base.inner_window->doc) {
470 *p = NULL;
471 return S_OK;
472 }
473
474 *p = (IDispatch*)&This->framebase.content_window->base.inner_window->doc->basedoc.IHTMLDocument2_iface;
475 IDispatch_AddRef(*p);
476 return S_OK;
477}
478
480 DWORD grfdex, DISPID *pid)
481{
483
484 if(!This->framebase.content_window)
485 return DISP_E_UNKNOWNNAME;
486
487 return search_window_props(This->framebase.content_window->base.inner_window, name, grfdex, pid);
488}
489
491 WORD flags, DISPPARAMS *params, VARIANT *res, EXCEPINFO *ei, IServiceProvider *caller)
492{
494
495 if(!This->framebase.content_window) {
496 ERR("no content window to invoke on\n");
497 return E_FAIL;
498 }
499
500 return IDispatchEx_InvokeEx(&This->framebase.content_window->base.IDispatchEx_iface, id, lcid,
501 flags, params, res, ei, caller);
502}
503
505{
507
508 return IHTMLFrameBase2_get_readyState(&This->framebase.IHTMLFrameBase2_iface, p);
509}
510
512{
514 nsIDOMDocument *nsdoc;
515 nsresult nsres;
517
518 nsres = nsIDOMHTMLIFrameElement_GetContentDocument(This->framebase.nsiframe, &nsdoc);
519 if(NS_FAILED(nsres) || !nsdoc) {
520 ERR("GetContentDocument failed: %08x\n", nsres);
521 return E_FAIL;
522 }
523
524 hres = set_frame_doc(&This->framebase, nsdoc);
525 nsIDOMDocument_Release(nsdoc);
526 return hres;
527}
528
530{
532
533 if(This->framebase.nsiframe)
534 note_cc_edge((nsISupports*)This->framebase.nsiframe, "This->nsiframe", cb);
535}
536
538{
540
541 if(This->framebase.nsiframe) {
542 nsIDOMHTMLIFrameElement *nsiframe = This->framebase.nsiframe;
543
544 This->framebase.nsiframe = NULL;
545 nsIDOMHTMLIFrameElement_Release(nsiframe);
546 }
547}
548
556 NULL,
557 NULL,
558 NULL,
559 NULL,
567};
568
569static const tid_t HTMLIFrame_iface_tids[] = {
571 IHTMLFrameBase_tid,
572 IHTMLFrameBase2_tid,
573 IHTMLIFrameElement_tid,
574 IHTMLIFrameElement2_tid,
575 IHTMLIFrameElement3_tid,
576 0
577};
578
580 NULL,
581 DispHTMLIFrame_tid,
582 NULL,
584};
585
587{
589
590 ret = heap_alloc_zero(sizeof(HTMLIFrame));
591 if(!ret)
592 return E_OUTOFMEMORY;
593
594 ret->IHTMLIFrameElement_iface.lpVtbl = &HTMLIFrameElementVtbl;
595 ret->IHTMLIFrameElement2_iface.lpVtbl = &HTMLIFrameElement2Vtbl;
596 ret->IHTMLIFrameElement3_iface.lpVtbl = &HTMLIFrameElement3Vtbl;
597 ret->framebase.element.node.vtbl = &HTMLIFrameImplVtbl;
598
599 HTMLFrameBase_Init(&ret->framebase, doc, nselem, &HTMLIFrame_dispex);
600
601 *elem = &ret->framebase.element;
602 return S_OK;
603}
#define FIXME(fmt,...)
Definition: debug.h:111
#define ERR(fmt,...)
Definition: debug.h:110
#define E_OUTOFMEMORY
Definition: ddrawi.h:100
#define E_NOTIMPL
Definition: ddrawi.h:99
#define E_FAIL
Definition: ddrawi.h:102
#define NULL
Definition: types.h:112
OLECHAR * BSTR
Definition: compat.h:2293
@ VT_BSTR
Definition: compat.h:2303
unsigned long DWORD
Definition: ntddk_ex.h:95
unsigned short WORD
Definition: ntddk_ex.h:93
const GLdouble * v
Definition: gl.h:2040
GLuint res
Definition: glext.h:9613
GLenum const GLfloat * params
Definition: glext.h:5645
GLbitfield flags
Definition: glext.h:7161
GLfloat GLfloat p
Definition: glext.h:8902
HRESULT HTMLElement_clone(HTMLDOMNode *iface, nsIDOMNode *nsnode, HTMLDOMNode **ret)
Definition: htmlelem.c:3793
HRESULT HTMLElement_handle_event(HTMLDOMNode *iface, DWORD eid, nsIDOMEvent *event, BOOL *prevent_default)
Definition: htmlelem.c:3815
const cpc_entry_t HTMLElement_cpc[]
Definition: htmlelem.c:3847
HRESULT HTMLElement_get_attr_col(HTMLDOMNode *iface, HTMLAttributeCollection **ac)
Definition: htmlelem.c:4827
void HTMLFrameBase_Init(HTMLFrameBase *This, HTMLDocumentNode *doc, nsIDOMHTMLElement *nselem, dispex_static_data_t *dispex_data)
HRESULT set_frame_doc(HTMLFrameBase *frame, nsIDOMDocument *nsdoc)
Definition: htmlframebase.c:26
void HTMLFrameBase_destructor(HTMLFrameBase *This)
HRESULT HTMLFrameBase_QI(HTMLFrameBase *This, REFIID riid, void **ppv)
static HRESULT WINAPI HTMLIFrameElement3_put_frameBorder(IHTMLIFrameElement3 *iface, BSTR v)
Definition: htmliframe.c:401
static void HTMLIFrame_traverse(HTMLDOMNode *iface, nsCycleCollectionTraversalCallback *cb)
Definition: htmliframe.c:529
static HRESULT WINAPI HTMLIFrameElement3_get_contentDocument(IHTMLIFrameElement3 *iface, IDispatch **p)
Definition: htmliframe.c:355
static HRESULT WINAPI HTMLIFrameElement2_GetTypeInfoCount(IHTMLIFrameElement2 *iface, UINT *pctinfo)
Definition: htmliframe.c:172
static HRESULT WINAPI HTMLIFrameElement3_put_src(IHTMLIFrameElement3 *iface, BSTR v)
Definition: htmliframe.c:373
static HRESULT WINAPI HTMLIFrameElement3_get_src(IHTMLIFrameElement3 *iface, BSTR *p)
Definition: htmliframe.c:380
static HRESULT WINAPI HTMLIFrameElement_Invoke(IHTMLIFrameElement *iface, DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr)
Definition: htmliframe.c:78
static HRESULT HTMLIFrame_get_dispid(HTMLDOMNode *iface, BSTR name, DWORD grfdex, DISPID *pid)
Definition: htmliframe.c:479
static ULONG WINAPI HTMLIFrameElement2_AddRef(IHTMLIFrameElement2 *iface)
Definition: htmliframe.c:158
static HRESULT WINAPI HTMLIFrameElement2_GetIDsOfNames(IHTMLIFrameElement2 *iface, REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId)
Definition: htmliframe.c:187
static HRESULT WINAPI HTMLIFrameElement_get_hspace(IHTMLIFrameElement *iface, LONG *p)
Definition: htmliframe.c:108
static ULONG WINAPI HTMLIFrameElement3_AddRef(IHTMLIFrameElement3 *iface)
Definition: htmliframe.c:309
static HRESULT WINAPI HTMLIFrameElement_get_align(IHTMLIFrameElement *iface, BSTR *p)
Definition: htmliframe.c:122
static HRESULT WINAPI HTMLIFrameElement3_get_longDesc(IHTMLIFrameElement3 *iface, BSTR *p)
Definition: htmliframe.c:394
static HRESULT WINAPI HTMLIFrameElement_QueryInterface(IHTMLIFrameElement *iface, REFIID riid, void **ppv)
Definition: htmliframe.c:33
static ULONG WINAPI HTMLIFrameElement3_Release(IHTMLIFrameElement3 *iface)
Definition: htmliframe.c:316
static HRESULT HTMLIFrame_invoke(HTMLDOMNode *iface, DISPID id, LCID lcid, WORD flags, DISPPARAMS *params, VARIANT *res, EXCEPINFO *ei, IServiceProvider *caller)
Definition: htmliframe.c:490
static HRESULT WINAPI HTMLIFrameElement3_Invoke(IHTMLIFrameElement3 *iface, DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr)
Definition: htmliframe.c:346
static HRESULT WINAPI HTMLIFrameElement2_QueryInterface(IHTMLIFrameElement2 *iface, REFIID riid, void **ppv)
Definition: htmliframe.c:150
static ULONG WINAPI HTMLIFrameElement_AddRef(IHTMLIFrameElement *iface)
Definition: htmliframe.c:41
static const tid_t HTMLIFrame_iface_tids[]
Definition: htmliframe.c:569
static HRESULT WINAPI HTMLIFrameElement2_put_height(IHTMLIFrameElement2 *iface, VARIANT v)
Definition: htmliframe.c:204
static HRESULT HTMLIFrame_get_readystate(HTMLDOMNode *iface, BSTR *p)
Definition: htmliframe.c:504
static HRESULT WINAPI HTMLIFrameElement2_get_width(IHTMLIFrameElement2 *iface, VARIANT *p)
Definition: htmliframe.c:267
static HTMLIFrame * impl_from_IHTMLIFrameElement(IHTMLIFrameElement *iface)
Definition: htmliframe.c:28
static ULONG WINAPI HTMLIFrameElement_Release(IHTMLIFrameElement *iface)
Definition: htmliframe.c:48
static HRESULT WINAPI HTMLIFrameElement_put_align(IHTMLIFrameElement *iface, BSTR v)
Definition: htmliframe.c:115
static HRESULT HTMLIFrame_QI(HTMLDOMNode *iface, REFIID riid, void **ppv)
Definition: htmliframe.c:437
static HTMLIFrame * impl_from_IHTMLIFrameElement2(IHTMLIFrameElement2 *iface)
Definition: htmliframe.c:145
static HRESULT WINAPI HTMLIFrameElement_put_vspace(IHTMLIFrameElement *iface, LONG v)
Definition: htmliframe.c:87
static HTMLIFrame * impl_from_HTMLDOMNode(HTMLDOMNode *iface)
Definition: htmliframe.c:432
static const NodeImplVtbl HTMLIFrameImplVtbl
Definition: htmliframe.c:549
static HRESULT WINAPI HTMLIFrameElement2_Invoke(IHTMLIFrameElement2 *iface, DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr)
Definition: htmliframe.c:195
static HRESULT WINAPI HTMLIFrameElement3_GetTypeInfoCount(IHTMLIFrameElement3 *iface, UINT *pctinfo)
Definition: htmliframe.c:323
static HRESULT WINAPI HTMLIFrameElement2_GetTypeInfo(IHTMLIFrameElement2 *iface, UINT iTInfo, LCID lcid, ITypeInfo **ppTInfo)
Definition: htmliframe.c:179
static HRESULT WINAPI HTMLIFrameElement3_QueryInterface(IHTMLIFrameElement3 *iface, REFIID riid, void **ppv)
Definition: htmliframe.c:301
static dispex_static_data_t HTMLIFrame_dispex
Definition: htmliframe.c:579
static HRESULT WINAPI HTMLIFrameElement_put_hspace(IHTMLIFrameElement *iface, LONG v)
Definition: htmliframe.c:101
static HRESULT WINAPI HTMLIFrameElement3_get_frameBorder(IHTMLIFrameElement3 *iface, BSTR *p)
Definition: htmliframe.c:408
static HRESULT WINAPI HTMLIFrameElement3_put_longDesc(IHTMLIFrameElement3 *iface, BSTR v)
Definition: htmliframe.c:387
static const IHTMLIFrameElement3Vtbl HTMLIFrameElement3Vtbl
Definition: htmliframe.c:415
static HRESULT HTMLIFrame_bind_to_tree(HTMLDOMNode *iface)
Definition: htmliframe.c:511
static const IHTMLIFrameElement2Vtbl HTMLIFrameElement2Vtbl
Definition: htmliframe.c:282
static ULONG WINAPI HTMLIFrameElement2_Release(IHTMLIFrameElement2 *iface)
Definition: htmliframe.c:165
static void HTMLIFrame_unlink(HTMLDOMNode *iface)
Definition: htmliframe.c:537
static HTMLIFrame * impl_from_IHTMLIFrameElement3(IHTMLIFrameElement3 *iface)
Definition: htmliframe.c:296
static HRESULT WINAPI HTMLIFrameElement2_get_height(IHTMLIFrameElement2 *iface, VARIANT *p)
Definition: htmliframe.c:228
HRESULT HTMLIFrame_Create(HTMLDocumentNode *doc, nsIDOMHTMLElement *nselem, HTMLElement **elem)
Definition: htmliframe.c:586
static HRESULT WINAPI HTMLIFrameElement_GetTypeInfoCount(IHTMLIFrameElement *iface, UINT *pctinfo)
Definition: htmliframe.c:55
static HRESULT WINAPI HTMLIFrameElement_GetTypeInfo(IHTMLIFrameElement *iface, UINT iTInfo, LCID lcid, ITypeInfo **ppTInfo)
Definition: htmliframe.c:62
static HRESULT WINAPI HTMLIFrameElement_GetIDsOfNames(IHTMLIFrameElement *iface, REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId)
Definition: htmliframe.c:70
static HRESULT WINAPI HTMLIFrameElement3_GetTypeInfo(IHTMLIFrameElement3 *iface, UINT iTInfo, LCID lcid, ITypeInfo **ppTInfo)
Definition: htmliframe.c:330
static const IHTMLIFrameElementVtbl HTMLIFrameElementVtbl
Definition: htmliframe.c:129
static HRESULT HTMLIFrame_get_document(HTMLDOMNode *iface, IDispatch **p)
Definition: htmliframe.c:465
static HRESULT WINAPI HTMLIFrameElement_get_vspace(IHTMLIFrameElement *iface, LONG *p)
Definition: htmliframe.c:94
static void HTMLIFrame_destructor(HTMLDOMNode *iface)
Definition: htmliframe.c:458
static HRESULT WINAPI HTMLIFrameElement2_put_width(IHTMLIFrameElement2 *iface, VARIANT v)
Definition: htmliframe.c:243
static HRESULT WINAPI HTMLIFrameElement3_GetIDsOfNames(IHTMLIFrameElement3 *iface, REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId)
Definition: htmliframe.c:338
HRESULT search_window_props(HTMLInnerWindow *This, BSTR bstrName, DWORD grfdex, DISPID *pid)
Definition: htmlwindow.c:2513
tid_t
Definition: ieframe.h:311
REFIID riid
Definition: atlbase.h:39
REFIID LPVOID * ppv
Definition: atlbase.h:39
#define S_OK
Definition: intsafe.h:52
#define debugstr_w
Definition: kernel32.h:32
static const char * debugstr_variant(const VARIANT *var)
Definition: container.c:46
HRESULT hres
Definition: protocol.c:465
static HMODULE MODULEINFO DWORD cb
Definition: module.c:33
static size_t elem
Definition: string.c:68
static LPOLESTR
Definition: stg_prop.c:27
static VARIANTARG static DISPID
Definition: ordinal.c:52
void nsAString_Finish(nsAString *) DECLSPEC_HIDDEN
Definition: nsembed.c:836
#define HTMLELEMENT_TIDS
void nsAString_InitDepend(nsAString *, const PRUnichar *) DECLSPEC_HIDDEN
Definition: nsembed.c:826
BOOL nsAString_Init(nsAString *, const PRUnichar *) DECLSPEC_HIDDEN
Definition: nsembed.c:817
struct nsCycleCollectionTraversalCallback nsCycleCollectionTraversalCallback
#define NS_FAILED(res)
HRESULT return_nsstr(nsresult, nsAString *, BSTR *) DECLSPEC_HIDDEN
Definition: nsembed.c:841
unsigned int UINT
Definition: ndis.h:50
#define V_VT(A)
Definition: oleauto.h:211
#define V_BSTR(A)
Definition: oleauto.h:226
long LONG
Definition: pedump.c:60
#define IsEqualGUID(rguid1, rguid2)
Definition: guiddef.h:147
#define REFIID
Definition: guiddef.h:118
DWORD LCID
Definition: nls.h:13
#define TRACE(s)
Definition: solgame.cpp:4
IHTMLIFrameElement2 IHTMLIFrameElement2_iface
Definition: htmliframe.c:24
IHTMLIFrameElement IHTMLIFrameElement_iface
Definition: htmliframe.c:23
IHTMLIFrameElement3 IHTMLIFrameElement3_iface
Definition: htmliframe.c:25
HTMLFrameBase framebase
Definition: htmliframe.c:22
Definition: name.c:39
#define CONTAINING_RECORD(address, type, field)
Definition: typedefs.h:260
uint32_t ULONG
Definition: typedefs.h:59
int ret
_In_ DWORD _Out_ _In_ WORD wFlags
Definition: wincon.h:531
_In_ ULONG_PTR _In_ ULONG _Out_ ULONG_PTR * pid
Definition: winddi.h:3837
#define WINAPI
Definition: msvc.h:6
#define DISP_E_UNKNOWNNAME
Definition: winerror.h:2515