• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright (C) 2006, 2007 Apple Inc.  All rights reserved.
3  *
4  * Redistribution and use in source and binary forms, with or without
5  * modification, are permitted provided that the following conditions
6  * are met:
7  * 1. Redistributions of source code must retain the above copyright
8  *    notice, this list of conditions and the following disclaimer.
9  * 2. Redistributions in binary form must reproduce the above copyright
10  *    notice, this list of conditions and the following disclaimer in the
11  *    documentation and/or other materials provided with the distribution.
12  *
13  * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY
14  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
15  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
16  * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL APPLE COMPUTER, INC. OR
17  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
18  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
19  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
20  * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
21  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
22  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
23  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
24  */
25 
26 #include "config.h"
27 #include "WebKitDLL.h"
28 #include <initguid.h>
29 #include "DOMEventsClasses.h"
30 
31 #pragma warning( push, 0 )
32 #include <WebCore/DOMWindow.h>
33 #include <WebCore/Event.h>
34 #include <WebCore/KeyboardEvent.h>
35 #include <WebCore/MouseEvent.h>
36 #pragma warning( pop )
37 
38 // DOMEventListener -----------------------------------------------------------
39 
QueryInterface(const IID & riid,void ** ppvObject)40 HRESULT STDMETHODCALLTYPE DOMEventListener::QueryInterface(const IID &riid, void** ppvObject)
41 {
42     *ppvObject = 0;
43     if (IsEqualGUID(riid, IID_IDOMEventListener))
44         *ppvObject = static_cast<IDOMEventListener*>(this);
45     else
46         return DOMObject::QueryInterface(riid, ppvObject);
47 
48     AddRef();
49     return S_OK;
50 }
51 
handleEvent(IDOMEvent *)52 HRESULT STDMETHODCALLTYPE DOMEventListener::handleEvent(
53     /* [in] */ IDOMEvent* /*evt*/)
54 {
55     return E_NOTIMPL;
56 }
57 
58 // DOMEvent -------------------------------------------------------------------
59 
DOMEvent(PassRefPtr<WebCore::Event> e)60 DOMEvent::DOMEvent(PassRefPtr<WebCore::Event> e)
61 : m_event(0)
62 {
63     m_event = e;
64 }
65 
~DOMEvent()66 DOMEvent::~DOMEvent()
67 {
68 }
69 
createInstance(PassRefPtr<WebCore::Event> e)70 IDOMEvent* DOMEvent::createInstance(PassRefPtr<WebCore::Event> e)
71 {
72     if (!e)
73         return 0;
74 
75     HRESULT hr;
76     IDOMEvent* domEvent = 0;
77 
78     if (e->isKeyboardEvent()) {
79         DOMKeyboardEvent* newEvent = new DOMKeyboardEvent(e);
80         hr = newEvent->QueryInterface(IID_IDOMKeyboardEvent, (void**)&domEvent);
81     } else if (e->isMouseEvent()) {
82         DOMMouseEvent* newEvent = new DOMMouseEvent(e);
83         hr = newEvent->QueryInterface(IID_IDOMMouseEvent, (void**)&domEvent);
84     } else if (e->isMutationEvent()) {
85         DOMMutationEvent* newEvent = new DOMMutationEvent(e);
86         hr = newEvent->QueryInterface(IID_IDOMMutationEvent, (void**)&domEvent);
87     } else if (e->isOverflowEvent()) {
88         DOMOverflowEvent* newEvent = new DOMOverflowEvent(e);
89         hr = newEvent->QueryInterface(IID_IDOMOverflowEvent, (void**)&domEvent);
90     } else if (e->isWheelEvent()) {
91         DOMWheelEvent* newEvent = new DOMWheelEvent(e);
92         hr = newEvent->QueryInterface(IID_IDOMWheelEvent, (void**)&domEvent);
93     } else if (e->isUIEvent()) {
94         DOMUIEvent* newEvent = new DOMUIEvent(e);
95         hr = newEvent->QueryInterface(IID_IDOMUIEvent, (void**)&domEvent);
96     } else {
97         DOMEvent* newEvent = new DOMEvent(e);
98         hr = newEvent->QueryInterface(IID_IDOMEvent, (void**)&domEvent);
99     }
100 
101     if (FAILED(hr))
102         return 0;
103 
104     return domEvent;
105 }
106 
QueryInterface(const IID & riid,void ** ppvObject)107 HRESULT STDMETHODCALLTYPE DOMEvent::QueryInterface(const IID &riid, void** ppvObject)
108 {
109     *ppvObject = 0;
110     if (IsEqualGUID(riid, IID_DOMEvent))
111         *ppvObject = this;
112     else if (IsEqualGUID(riid, IID_IDOMEvent))
113         *ppvObject = static_cast<IDOMEvent*>(this);
114     else
115         return DOMObject::QueryInterface(riid, ppvObject);
116 
117     AddRef();
118     return S_OK;
119 }
120 
type(BSTR *)121 HRESULT STDMETHODCALLTYPE DOMEvent::type(
122     /* [retval][out] */ BSTR* /*result*/)
123 {
124     return E_NOTIMPL;
125 }
126 
target(IDOMEventTarget **)127 HRESULT STDMETHODCALLTYPE DOMEvent::target(
128     /* [retval][out] */ IDOMEventTarget** /*result*/)
129 {
130     return E_NOTIMPL;
131 }
132 
currentTarget(IDOMEventTarget **)133 HRESULT STDMETHODCALLTYPE DOMEvent::currentTarget(
134     /* [retval][out] */ IDOMEventTarget** /*result*/)
135 {
136     return E_NOTIMPL;
137 }
138 
eventPhase(unsigned short *)139 HRESULT STDMETHODCALLTYPE DOMEvent::eventPhase(
140     /* [retval][out] */ unsigned short* /*result*/)
141 {
142     return E_NOTIMPL;
143 }
144 
bubbles(BOOL *)145 HRESULT STDMETHODCALLTYPE DOMEvent::bubbles(
146     /* [retval][out] */ BOOL* /*result*/)
147 {
148     return E_NOTIMPL;
149 }
150 
cancelable(BOOL *)151 HRESULT STDMETHODCALLTYPE DOMEvent::cancelable(
152     /* [retval][out] */ BOOL* /*result*/)
153 {
154     return E_NOTIMPL;
155 }
156 
timeStamp(DOMTimeStamp *)157 HRESULT STDMETHODCALLTYPE DOMEvent::timeStamp(
158     /* [retval][out] */ DOMTimeStamp* /*result*/)
159 {
160     return E_NOTIMPL;
161 }
162 
stopPropagation(void)163 HRESULT STDMETHODCALLTYPE DOMEvent::stopPropagation( void)
164 {
165     return E_NOTIMPL;
166 }
167 
preventDefault(void)168 HRESULT STDMETHODCALLTYPE DOMEvent::preventDefault( void)
169 {
170     return E_NOTIMPL;
171 }
172 
initEvent(BSTR,BOOL,BOOL)173 HRESULT STDMETHODCALLTYPE DOMEvent::initEvent(
174     /* [in] */ BSTR /*eventTypeArg*/,
175     /* [in] */ BOOL /*canBubbleArg*/,
176     /* [in] */ BOOL /*cancelableArg*/)
177 {
178     return E_NOTIMPL;
179 }
180 
181 // DOMUIEvent -----------------------------------------------------------------
182 
QueryInterface(REFIID riid,void ** ppvObject)183 HRESULT STDMETHODCALLTYPE DOMUIEvent::QueryInterface(REFIID riid, void** ppvObject)
184 {
185     *ppvObject = 0;
186     if (IsEqualGUID(riid, IID_IDOMUIEvent))
187         *ppvObject = static_cast<IDOMUIEvent*>(this);
188     else
189         return DOMEvent::QueryInterface(riid, ppvObject);
190 
191     AddRef();
192     return S_OK;
193 }
194 
view(IDOMWindow **)195 HRESULT STDMETHODCALLTYPE DOMUIEvent::view(
196     /* [retval][out] */ IDOMWindow** /*result*/)
197 {
198     return E_NOTIMPL;
199 }
200 
detail(long *)201 HRESULT STDMETHODCALLTYPE DOMUIEvent::detail(
202     /* [retval][out] */ long* /*result*/)
203 {
204     return E_NOTIMPL;
205 }
206 
initUIEvent(BSTR,BOOL,BOOL,IDOMWindow *,long)207 HRESULT STDMETHODCALLTYPE DOMUIEvent::initUIEvent(
208     /* [in] */ BSTR /*type*/,
209     /* [in] */ BOOL /*canBubble*/,
210     /* [in] */ BOOL /*cancelable*/,
211     /* [in] */ IDOMWindow* /*view*/,
212     /* [in] */ long /*detail*/)
213 {
214     return E_NOTIMPL;
215 }
216 
keyCode(long *)217 HRESULT STDMETHODCALLTYPE DOMUIEvent::keyCode(
218     /* [retval][out] */ long* /*result*/)
219 {
220     return E_NOTIMPL;
221 }
222 
charCode(long *)223 HRESULT STDMETHODCALLTYPE DOMUIEvent::charCode(
224     /* [retval][out] */ long* /*result*/)
225 {
226     return E_NOTIMPL;
227 }
228 
layerX(long *)229 HRESULT STDMETHODCALLTYPE DOMUIEvent::layerX(
230     /* [retval][out] */ long* /*result*/)
231 {
232     return E_NOTIMPL;
233 }
234 
layerY(long *)235 HRESULT STDMETHODCALLTYPE DOMUIEvent::layerY(
236     /* [retval][out] */ long* /*result*/)
237 {
238     return E_NOTIMPL;
239 }
240 
pageX(long *)241 HRESULT STDMETHODCALLTYPE DOMUIEvent::pageX(
242     /* [retval][out] */ long* /*result*/)
243 {
244     return E_NOTIMPL;
245 }
246 
pageY(long *)247 HRESULT STDMETHODCALLTYPE DOMUIEvent::pageY(
248     /* [retval][out] */ long* /*result*/)
249 {
250     return E_NOTIMPL;
251 }
252 
which(long *)253 HRESULT STDMETHODCALLTYPE DOMUIEvent::which(
254     /* [retval][out] */ long* /*result*/)
255 {
256     return E_NOTIMPL;
257 }
258 
259 // DOMKeyboardEvent -----------------------------------------------------------
260 
QueryInterface(REFIID riid,void ** ppvObject)261 HRESULT STDMETHODCALLTYPE DOMKeyboardEvent::QueryInterface(REFIID riid, void** ppvObject)
262 {
263     *ppvObject = 0;
264     if (IsEqualGUID(riid, IID_IDOMKeyboardEvent))
265         *ppvObject = static_cast<IDOMKeyboardEvent*>(this);
266     else
267         return DOMUIEvent::QueryInterface(riid, ppvObject);
268 
269     AddRef();
270     return S_OK;
271 }
272 
keyIdentifier(BSTR *)273 HRESULT STDMETHODCALLTYPE DOMKeyboardEvent::keyIdentifier(
274     /* [retval][out] */ BSTR* /*result*/)
275 {
276     return E_NOTIMPL;
277 }
278 
keyLocation(unsigned long *)279 HRESULT STDMETHODCALLTYPE DOMKeyboardEvent::keyLocation(
280     /* [retval][out] */ unsigned long* /*result*/)
281 {
282     return E_NOTIMPL;
283 }
284 
ctrlKey(BOOL * result)285 HRESULT STDMETHODCALLTYPE DOMKeyboardEvent::ctrlKey(
286     /* [retval][out] */ BOOL* result)
287 {
288     *result = FALSE;
289     if (!m_event || !m_event->isKeyboardEvent())
290         return E_FAIL;
291     WebCore::KeyboardEvent* keyEvent = static_cast<WebCore::KeyboardEvent*>(m_event.get());
292 
293     *result = keyEvent->ctrlKey() ? TRUE : FALSE;
294     return S_OK;
295 }
296 
shiftKey(BOOL * result)297 HRESULT STDMETHODCALLTYPE DOMKeyboardEvent::shiftKey(
298     /* [retval][out] */ BOOL* result)
299 {
300     *result = FALSE;
301     if (!m_event || !m_event->isKeyboardEvent())
302         return E_FAIL;
303     WebCore::KeyboardEvent* keyEvent = static_cast<WebCore::KeyboardEvent*>(m_event.get());
304 
305     *result = keyEvent->shiftKey() ? TRUE : FALSE;
306     return S_OK;
307 }
308 
altKey(BOOL * result)309 HRESULT STDMETHODCALLTYPE DOMKeyboardEvent::altKey(
310     /* [retval][out] */ BOOL* result)
311 {
312     *result = FALSE;
313     if (!m_event || !m_event->isKeyboardEvent())
314         return E_FAIL;
315     WebCore::KeyboardEvent* keyEvent = static_cast<WebCore::KeyboardEvent*>(m_event.get());
316 
317     *result = keyEvent->altKey() ? TRUE : FALSE;
318     return S_OK;
319 }
320 
metaKey(BOOL * result)321 HRESULT STDMETHODCALLTYPE DOMKeyboardEvent::metaKey(
322     /* [retval][out] */ BOOL* result)
323 {
324     *result = FALSE;
325     if (!m_event || !m_event->isKeyboardEvent())
326         return E_FAIL;
327     WebCore::KeyboardEvent* keyEvent = static_cast<WebCore::KeyboardEvent*>(m_event.get());
328 
329     *result = keyEvent->metaKey() ? TRUE : FALSE;
330     return S_OK;
331 }
332 
altGraphKey(BOOL * result)333 HRESULT STDMETHODCALLTYPE DOMKeyboardEvent::altGraphKey(
334     /* [retval][out] */ BOOL* result)
335 {
336     *result = FALSE;
337     if (!m_event || !m_event->isKeyboardEvent())
338         return E_FAIL;
339     WebCore::KeyboardEvent* keyEvent = static_cast<WebCore::KeyboardEvent*>(m_event.get());
340 
341     *result = keyEvent->altGraphKey() ? TRUE : FALSE;
342     return S_OK;
343 }
344 
getModifierState(BSTR,BOOL *)345 HRESULT STDMETHODCALLTYPE DOMKeyboardEvent::getModifierState(
346     /* [in] */ BSTR /*keyIdentifierArg*/,
347     /* [retval][out] */ BOOL* /*result*/)
348 {
349     return E_NOTIMPL;
350 }
351 
initKeyboardEvent(BSTR,BOOL,BOOL,IDOMWindow *,BSTR,unsigned long,BOOL,BOOL,BOOL,BOOL,BOOL)352 HRESULT STDMETHODCALLTYPE DOMKeyboardEvent::initKeyboardEvent(
353     /* [in] */ BSTR /*type*/,
354     /* [in] */ BOOL /*canBubble*/,
355     /* [in] */ BOOL /*cancelable*/,
356     /* [in] */ IDOMWindow* /*view*/,
357     /* [in] */ BSTR /*keyIdentifier*/,
358     /* [in] */ unsigned long /*keyLocation*/,
359     /* [in] */ BOOL /*ctrlKey*/,
360     /* [in] */ BOOL /*altKey*/,
361     /* [in] */ BOOL /*shiftKey*/,
362     /* [in] */ BOOL /*metaKey*/,
363     /* [in] */ BOOL /*graphKey*/)
364 {
365     return E_NOTIMPL;
366 }
367 
368 // DOMMouseEvent --------------------------------------------------------------
369 
QueryInterface(REFIID riid,void ** ppvObject)370 HRESULT STDMETHODCALLTYPE DOMMouseEvent::QueryInterface(REFIID riid, void** ppvObject)
371 {
372     *ppvObject = 0;
373     if (IsEqualGUID(riid, IID_IDOMMouseEvent))
374         *ppvObject = static_cast<IDOMMouseEvent*>(this);
375     else
376         return DOMUIEvent::QueryInterface(riid, ppvObject);
377 
378     AddRef();
379     return S_OK;
380 }
381 
screenX(long *)382 HRESULT STDMETHODCALLTYPE DOMMouseEvent::screenX(
383     /* [retval][out] */ long* /*result*/)
384 {
385     return E_NOTIMPL;
386 }
387 
screenY(long *)388 HRESULT STDMETHODCALLTYPE DOMMouseEvent::screenY(
389     /* [retval][out] */ long* /*result*/)
390 {
391     return E_NOTIMPL;
392 }
393 
clientX(long *)394 HRESULT STDMETHODCALLTYPE DOMMouseEvent::clientX(
395     /* [retval][out] */ long* /*result*/)
396 {
397     return E_NOTIMPL;
398 }
399 
clientY(long *)400 HRESULT STDMETHODCALLTYPE DOMMouseEvent::clientY(
401     /* [retval][out] */ long* /*result*/)
402 {
403     return E_NOTIMPL;
404 }
405 
ctrlKey(BOOL * result)406 HRESULT STDMETHODCALLTYPE DOMMouseEvent::ctrlKey(
407     /* [retval][out] */ BOOL* result)
408 {
409     *result = FALSE;
410     if (!m_event || !m_event->isMouseEvent())
411         return E_FAIL;
412     WebCore::MouseEvent* mouseEvent = static_cast<WebCore::MouseEvent*>(m_event.get());
413 
414     *result = mouseEvent->ctrlKey() ? TRUE : FALSE;
415     return S_OK;
416 }
417 
shiftKey(BOOL * result)418 HRESULT STDMETHODCALLTYPE DOMMouseEvent::shiftKey(
419     /* [retval][out] */ BOOL* result)
420 {
421     *result = FALSE;
422     if (!m_event || !m_event->isMouseEvent())
423         return E_FAIL;
424     WebCore::MouseEvent* mouseEvent = static_cast<WebCore::MouseEvent*>(m_event.get());
425 
426     *result = mouseEvent->shiftKey() ? TRUE : FALSE;
427     return S_OK;
428 }
429 
altKey(BOOL * result)430 HRESULT STDMETHODCALLTYPE DOMMouseEvent::altKey(
431     /* [retval][out] */ BOOL* result)
432 {
433     *result = FALSE;
434     if (!m_event || !m_event->isMouseEvent())
435         return E_FAIL;
436     WebCore::MouseEvent* mouseEvent = static_cast<WebCore::MouseEvent*>(m_event.get());
437 
438     *result = mouseEvent->altKey() ? TRUE : FALSE;
439     return S_OK;
440 }
441 
metaKey(BOOL * result)442 HRESULT STDMETHODCALLTYPE DOMMouseEvent::metaKey(
443     /* [retval][out] */ BOOL* result)
444 {
445     *result = FALSE;
446     if (!m_event || !m_event->isMouseEvent())
447         return E_FAIL;
448     WebCore::MouseEvent* mouseEvent = static_cast<WebCore::MouseEvent*>(m_event.get());
449 
450     *result = mouseEvent->metaKey() ? TRUE : FALSE;
451     return S_OK;
452 }
453 
button(unsigned short *)454 HRESULT STDMETHODCALLTYPE DOMMouseEvent::button(
455     /* [retval][out] */ unsigned short* /*result*/)
456 {
457     return E_NOTIMPL;
458 }
459 
relatedTarget(IDOMEventTarget **)460 HRESULT STDMETHODCALLTYPE DOMMouseEvent::relatedTarget(
461     /* [retval][out] */ IDOMEventTarget** /*result*/)
462 {
463     return E_NOTIMPL;
464 }
465 
initMouseEvent(BSTR,BOOL,BOOL,IDOMWindow *,long,long,long,long,long,BOOL,BOOL,BOOL,BOOL,unsigned short,IDOMEventTarget *)466 HRESULT STDMETHODCALLTYPE DOMMouseEvent::initMouseEvent(
467     /* [in] */ BSTR /*type*/,
468     /* [in] */ BOOL /*canBubble*/,
469     /* [in] */ BOOL /*cancelable*/,
470     /* [in] */ IDOMWindow* /*view*/,
471     /* [in] */ long /*detail*/,
472     /* [in] */ long /*screenX*/,
473     /* [in] */ long /*screenY*/,
474     /* [in] */ long /*clientX*/,
475     /* [in] */ long /*clientY*/,
476     /* [in] */ BOOL /*ctrlKey*/,
477     /* [in] */ BOOL /*altKey*/,
478     /* [in] */ BOOL /*shiftKey*/,
479     /* [in] */ BOOL /*metaKey*/,
480     /* [in] */ unsigned short /*button*/,
481     /* [in] */ IDOMEventTarget* /*relatedTarget*/)
482 {
483     return E_NOTIMPL;
484 }
485 
offsetX(long *)486 HRESULT STDMETHODCALLTYPE DOMMouseEvent::offsetX(
487     /* [retval][out] */ long* /*result*/)
488 {
489     return E_NOTIMPL;
490 }
491 
offsetY(long *)492 HRESULT STDMETHODCALLTYPE DOMMouseEvent::offsetY(
493     /* [retval][out] */ long* /*result*/)
494 {
495     return E_NOTIMPL;
496 }
497 
x(long *)498 HRESULT STDMETHODCALLTYPE DOMMouseEvent::x(
499     /* [retval][out] */ long* /*result*/)
500 {
501     return E_NOTIMPL;
502 }
503 
y(long *)504 HRESULT STDMETHODCALLTYPE DOMMouseEvent::y(
505     /* [retval][out] */ long* /*result*/)
506 {
507     return E_NOTIMPL;
508 }
509 
fromElement(IDOMNode **)510 HRESULT STDMETHODCALLTYPE DOMMouseEvent::fromElement(
511     /* [retval][out] */ IDOMNode** /*result*/)
512 {
513     return E_NOTIMPL;
514 }
515 
toElement(IDOMNode **)516 HRESULT STDMETHODCALLTYPE DOMMouseEvent::toElement(
517     /* [retval][out] */ IDOMNode** /*result*/)
518 {
519     return E_NOTIMPL;
520 }
521 
522 // DOMMutationEvent -----------------------------------------------------------
523 
QueryInterface(REFIID riid,void ** ppvObject)524 HRESULT STDMETHODCALLTYPE DOMMutationEvent::QueryInterface(REFIID riid, void** ppvObject)
525 {
526     *ppvObject = 0;
527     if (IsEqualGUID(riid, IID_IDOMMutationEvent))
528         *ppvObject = static_cast<IDOMMutationEvent*>(this);
529     else
530         return DOMEvent::QueryInterface(riid, ppvObject);
531 
532     AddRef();
533     return S_OK;
534 }
535 
relatedNode(IDOMNode **)536 HRESULT STDMETHODCALLTYPE DOMMutationEvent::relatedNode(
537     /* [retval][out] */ IDOMNode** /*result*/)
538 {
539     return E_NOTIMPL;
540 }
541 
prevValue(BSTR *)542 HRESULT STDMETHODCALLTYPE DOMMutationEvent::prevValue(
543     /* [retval][out] */ BSTR* /*result*/)
544 {
545     return E_NOTIMPL;
546 }
547 
newValue(BSTR *)548 HRESULT STDMETHODCALLTYPE DOMMutationEvent::newValue(
549     /* [retval][out] */ BSTR* /*result*/)
550 {
551     return E_NOTIMPL;
552 }
553 
attrName(BSTR *)554 HRESULT STDMETHODCALLTYPE DOMMutationEvent::attrName(
555     /* [retval][out] */ BSTR* /*result*/)
556 {
557     return E_NOTIMPL;
558 }
559 
attrChange(unsigned short *)560 HRESULT STDMETHODCALLTYPE DOMMutationEvent::attrChange(
561     /* [retval][out] */ unsigned short* /*result*/)
562 {
563     return E_NOTIMPL;
564 }
565 
initMutationEvent(BSTR,BOOL,BOOL,IDOMNode *,BSTR,BSTR,BSTR,unsigned short)566 HRESULT STDMETHODCALLTYPE DOMMutationEvent::initMutationEvent(
567     /* [in] */ BSTR /*type*/,
568     /* [in] */ BOOL /*canBubble*/,
569     /* [in] */ BOOL /*cancelable*/,
570     /* [in] */ IDOMNode* /*relatedNode*/,
571     /* [in] */ BSTR /*prevValue*/,
572     /* [in] */ BSTR /*newValue*/,
573     /* [in] */ BSTR /*attrName*/,
574     /* [in] */ unsigned short /*attrChange*/)
575 {
576     return E_NOTIMPL;
577 }
578 
579 // DOMOverflowEvent -----------------------------------------------------------
580 
QueryInterface(REFIID riid,void ** ppvObject)581 HRESULT STDMETHODCALLTYPE DOMOverflowEvent::QueryInterface(REFIID riid, void** ppvObject)
582 {
583     *ppvObject = 0;
584     if (IsEqualGUID(riid, IID_IDOMOverflowEvent))
585         *ppvObject = static_cast<IDOMOverflowEvent*>(this);
586     else
587         return DOMEvent::QueryInterface(riid, ppvObject);
588 
589     AddRef();
590     return S_OK;
591 }
592 
orient(unsigned short *)593 HRESULT STDMETHODCALLTYPE DOMOverflowEvent::orient(
594     /* [retval][out] */ unsigned short* /*result*/)
595 {
596     return E_NOTIMPL;
597 }
598 
horizontalOverflow(BOOL *)599 HRESULT STDMETHODCALLTYPE DOMOverflowEvent::horizontalOverflow(
600     /* [retval][out] */ BOOL* /*result*/)
601 {
602     return E_NOTIMPL;
603 }
604 
verticalOverflow(BOOL *)605 HRESULT STDMETHODCALLTYPE DOMOverflowEvent::verticalOverflow(
606     /* [retval][out] */ BOOL* /*result*/)
607 {
608     return E_NOTIMPL;
609 }
610 
611 // DOMWheelEvent --------------------------------------------------------------
612 
QueryInterface(REFIID riid,void ** ppvObject)613 HRESULT STDMETHODCALLTYPE DOMWheelEvent::QueryInterface(REFIID riid, void** ppvObject)
614 {
615     *ppvObject = 0;
616     if (IsEqualGUID(riid, IID_IDOMWheelEvent))
617         *ppvObject = static_cast<IDOMWheelEvent*>(this);
618     else
619         return DOMUIEvent::QueryInterface(riid, ppvObject);
620 
621     AddRef();
622     return S_OK;
623 }
624 
screenX(long *)625 HRESULT STDMETHODCALLTYPE DOMWheelEvent::screenX(
626     /* [retval][out] */ long* /*result*/)
627 {
628     return E_NOTIMPL;
629 }
630 
screenY(long *)631 HRESULT STDMETHODCALLTYPE DOMWheelEvent::screenY(
632     /* [retval][out] */ long* /*result*/)
633 {
634     return E_NOTIMPL;
635 }
636 
clientX(long *)637 HRESULT STDMETHODCALLTYPE DOMWheelEvent::clientX(
638     /* [retval][out] */ long* /*result*/)
639 {
640     return E_NOTIMPL;
641 }
642 
clientY(long *)643 HRESULT STDMETHODCALLTYPE DOMWheelEvent::clientY(
644     /* [retval][out] */ long* /*result*/)
645 {
646     return E_NOTIMPL;
647 }
648 
ctrlKey(BOOL *)649 HRESULT STDMETHODCALLTYPE DOMWheelEvent::ctrlKey(
650     /* [retval][out] */ BOOL* /*result*/)
651 {
652     return E_NOTIMPL;
653 }
654 
shiftKey(BOOL *)655 HRESULT STDMETHODCALLTYPE DOMWheelEvent::shiftKey(
656     /* [retval][out] */ BOOL* /*result*/)
657 {
658     return E_NOTIMPL;
659 }
660 
altKey(BOOL *)661 HRESULT STDMETHODCALLTYPE DOMWheelEvent::altKey(
662     /* [retval][out] */ BOOL* /*result*/)
663 {
664     return E_NOTIMPL;
665 }
666 
metaKey(BOOL *)667 HRESULT STDMETHODCALLTYPE DOMWheelEvent::metaKey(
668     /* [retval][out] */ BOOL* /*result*/)
669 {
670     return E_NOTIMPL;
671 }
672 
wheelDelta(long *)673 HRESULT STDMETHODCALLTYPE DOMWheelEvent::wheelDelta(
674     /* [retval][out] */ long* /*result*/)
675 {
676     return E_NOTIMPL;
677 }
678 
wheelDeltaX(long *)679 HRESULT STDMETHODCALLTYPE DOMWheelEvent::wheelDeltaX(
680     /* [retval][out] */ long* /*result*/)
681 {
682     return E_NOTIMPL;
683 }
684 
wheelDeltaY(long *)685 HRESULT STDMETHODCALLTYPE DOMWheelEvent::wheelDeltaY(
686     /* [retval][out] */ long* /*result*/)
687 {
688     return E_NOTIMPL;
689 }
690 
offsetX(long *)691 HRESULT STDMETHODCALLTYPE DOMWheelEvent::offsetX(
692     /* [retval][out] */ long* /*result*/)
693 {
694     return E_NOTIMPL;
695 }
696 
offsetY(long *)697 HRESULT STDMETHODCALLTYPE DOMWheelEvent::offsetY(
698     /* [retval][out] */ long* /*result*/)
699 {
700     return E_NOTIMPL;
701 }
702 
x(long *)703 HRESULT STDMETHODCALLTYPE DOMWheelEvent::x(
704     /* [retval][out] */ long* /*result*/)
705 {
706     return E_NOTIMPL;
707 }
708 
y(long *)709 HRESULT STDMETHODCALLTYPE DOMWheelEvent::y(
710     /* [retval][out] */ long* /*result*/)
711 {
712     return E_NOTIMPL;
713 }
714 
isHorizontal(BOOL *)715 HRESULT STDMETHODCALLTYPE DOMWheelEvent::isHorizontal(
716     /* [retval][out] */ BOOL* /*result*/)
717 {
718     return E_NOTIMPL;
719 }
720 
initWheelEvent(long,long,IDOMWindow *,long,long,long,long,BOOL,BOOL,BOOL,BOOL)721 HRESULT STDMETHODCALLTYPE DOMWheelEvent::initWheelEvent(
722     /* [in] */ long /*wheelDeltaX*/,
723     /* [in] */ long /*wheelDeltaY*/,
724     /* [in] */ IDOMWindow* /*view*/,
725     /* [in] */ long /*screenX*/,
726     /* [in] */ long /*screenY*/,
727     /* [in] */ long /*clientX*/,
728     /* [in] */ long /*clientY*/,
729     /* [in] */ BOOL /*ctrlKey*/,
730     /* [in] */ BOOL /*altKey*/,
731     /* [in] */ BOOL /*shiftKey*/,
732     /* [in] */ BOOL /*metaKey*/)
733 {
734     return E_NOTIMPL;
735 }
736