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