18e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project/*
28e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * Copyright (C) 2006, 2007, 2008 Apple Inc.  All rights reserved.
38e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project *
48e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * Redistribution and use in source and binary forms, with or without
58e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * modification, are permitted provided that the following conditions
68e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * are met:
78e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * 1. Redistributions of source code must retain the above copyright
88e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project *    notice, this list of conditions and the following disclaimer.
98e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * 2. Redistributions in binary form must reproduce the above copyright
108e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project *    notice, this list of conditions and the following disclaimer in the
118e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project *    documentation and/or other materials provided with the distribution.
128e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project *
138e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY
148e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
158e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
168e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL APPLE COMPUTER, INC. OR
178e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
188e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
198e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
208e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
218e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
228e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
238e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
248e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project */
258e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
268e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project#ifndef DO_NO_IMPORTS
278e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectimport "oaidl.idl";
288e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectimport "ocidl.idl";
298e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectimport "DOMCore.idl";
308e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectimport "DOMWindow.idl";
318e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project#endif
328e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
338e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectinterface IDOMEvent;
348e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectinterface IDOMEventException;
358e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectinterface IDOMEventTarget;
368e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectinterface IDOMKeyboardEvent;
378e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectinterface IDOMMouseEvent;
388e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectinterface IDOMMutationEvent;
398e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectinterface IDOMNode;
408e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectinterface IDOMOverflowEvent;
418e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectinterface IDOMUIEvent;
428e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectinterface IDOMWheelEvent;
438e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectinterface IDOMWindow;
448e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
458e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projecttypedef long long DOMTimeStamp;
468e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
478e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project[
488e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    object,
498e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    oleautomation,
508e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    uuid(7f8a0a96-f864-44fb-87fb-c5f03666e8e6),
518e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    pointer_default(unique)
528e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project]
538e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectinterface IDOMEventListener : IDOMObject
548e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
558e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //void               handleEvent(in Event evt);
568e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    HRESULT handleEvent([in] IDOMEvent* evt);
578e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
588e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
598e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project[
608e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    object,
618e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    oleautomation,
628e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    uuid(62343a9e-a779-4e91-818a-14fc178cf4c2),
638e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    pointer_default(unique)
648e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project]
658e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectinterface IDOMEvent : IDOMObject
668e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
678e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    // DOM PhaseType
688e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    const unsigned short DOMEVENT_CAPTURING_PHASE     = 1;
698e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    const unsigned short DOMEVENT_AT_TARGET           = 2;
708e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    const unsigned short DOMEVENT_BUBBLING_PHASE      = 3;
718e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
728e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    // Reverse-engineered from Netscape
738e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    const unsigned short DOMEVENT_MOUSEDOWN           = 1;
748e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    const unsigned short DOMEVENT_MOUSEUP             = 2;
758e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    const unsigned short DOMEVENT_MOUSEOVER           = 4;
768e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    const unsigned short DOMEVENT_MOUSEOUT            = 8;
778e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    const unsigned short DOMEVENT_MOUSEMOVE           = 16;
788e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    const unsigned short DOMEVENT_MOUSEDRAG           = 32;
798e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    const unsigned short DOMEVENT_CLICK               = 64;
808e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    const unsigned short DOMEVENT_DBLCLICK            = 128;
818e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    const unsigned short DOMEVENT_KEYDOWN             = 256;
828e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    const unsigned short DOMEVENT_KEYUP               = 512;
838e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    const unsigned short DOMEVENT_KEYPRESS            = 1024;
848e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    const unsigned short DOMEVENT_DRAGDROP            = 2048;
858e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    const unsigned short DOMEVENT_FOCUS               = 4096;
868e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    const unsigned short DOMEVENT_BLUR                = 8192;
878e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    const unsigned short DOMEVENT_SELECT              = 16384;
888e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    const unsigned short DOMEVENT_CHANGE              = 32768;
898e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
908e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //readonly attribute DOMString        type;
918e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    HRESULT type([out, retval] BSTR* result);
928e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
938e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //readonly attribute EventTarget      target;
948e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    HRESULT target([out, retval] IDOMEventTarget** result);
958e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
968e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //readonly attribute EventTarget      currentTarget;
978e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    HRESULT currentTarget([out, retval] IDOMEventTarget** result);
988e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
998e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //readonly attribute unsigned short   eventPhase;
1008e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    HRESULT eventPhase([out, retval] unsigned short* result);
1018e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1028e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //readonly attribute boolean          bubbles;
1038e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    HRESULT bubbles([out, retval] BOOL* result);
1048e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1058e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //readonly attribute boolean          cancelable;
1068e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    HRESULT cancelable([out, retval] BOOL* result);
1078e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1088e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //readonly attribute DOMTimeStamp     timeStamp;
1098e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    HRESULT timeStamp([out, retval] DOMTimeStamp* result);
1108e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1118e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //void               stopPropagation();
1128e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    HRESULT stopPropagation();
1138e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1148e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //void               preventDefault();
1158e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    HRESULT preventDefault();
1168e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1178e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //[OldStyleObjC] void initEvent(in DOMString eventTypeArg,
1188e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //                              in boolean canBubbleArg,
1198e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //                              in boolean cancelableArg);
1208e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    HRESULT initEvent([in] BSTR eventTypeArg, [in] BOOL canBubbleArg, [in] BOOL cancelableArg);
1218e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
1228e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1238e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project[
1248e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    object,
1258e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    oleautomation,
1268e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    uuid(c7cf7d84-d755-40bc-b664-84bc79eff709),
1278e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    pointer_default(unique)
1288e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project]
1298e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectinterface IDOMEventTarget : IUnknown
1308e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
1318e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //void               addEventListener(in DOMString type,
1328e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //                                    in EventListener listener,
1338e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //                                    in boolean useCapture);
1348e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    HRESULT addEventListener([in] BSTR type, [in] IDOMEventListener* listener, [in] BOOL useCapture);
1358e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1368e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //void               removeEventListener(in DOMString type,
1378e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //                                       in EventListener listener,
1388e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //                                       in boolean useCapture);
1398e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    HRESULT removeEventListener([in] BSTR type, [in] IDOMEventListener* listener, [in] BOOL useCapture);
1408e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1418e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //boolean            dispatchEvent(in Event event)
1428e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    HRESULT dispatchEvent([in] IDOMEvent* event, [out, retval] BOOL* result);
1438e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
1448e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1458e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project[
1468e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    object,
1478e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    oleautomation,
1488e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    uuid(55AAF192-68CD-409f-A551-89710DC7240A),
1498e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    pointer_default(unique)
1508e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project]
1518e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectinterface IDOMDocumentEvent : IUnknown
1528e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
1538e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //Event              createEvent(in DOMString eventType)
1548e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //    raises(DOMException);
1558e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    HRESULT createEvent([in] BSTR eventType, [out, retval] IDOMEvent** result);
1568e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
1578e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1588e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project[
1598e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    object,
1608e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    oleautomation,
1618e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    uuid(76bc4e46-67df-40d3-89b0-a94dcc2ed507),
1628e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    pointer_default(unique)
1638e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project]
1648e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectinterface IDOMKeyboardEvent : IDOMUIEvent
1658e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
1668e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    // KeyLocationCode
1678e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    const unsigned long       DOMKEYBOARDEVENT_KEY_LOCATION_STANDARD      = 0x00;
1688e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    const unsigned long       DOMKEYBOARDEVENT_KEY_LOCATION_LEFT          = 0x01;
1698e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    const unsigned long       DOMKEYBOARDEVENT_KEY_LOCATION_RIGHT         = 0x02;
1708e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    const unsigned long       DOMKEYBOARDEVENT_KEY_LOCATION_NUMPAD        = 0x03;
1718e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1728e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //readonly attribute DOMString        keyIdentifier;
1738e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    HRESULT keyIdentifier([out, retval] BSTR* result);
1748e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1758e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //readonly attribute unsigned long    keyLocation;
1768e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    HRESULT keyLocation([out, retval] unsigned long* result);
1778e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1788e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //readonly attribute boolean          ctrlKey;
1798e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    HRESULT ctrlKey([out, retval] BOOL* result);
1808e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1818e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //readonly attribute boolean          shiftKey;
1828e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    HRESULT shiftKey([out, retval] BOOL* result);
1838e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1848e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //readonly attribute boolean          altKey;
1858e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    HRESULT altKey([out, retval] BOOL* result);
1868e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1878e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //readonly attribute boolean          metaKey;
1888e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    HRESULT metaKey([out, retval] BOOL* result);
1898e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1908e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //readonly attribute boolean          altGraphKey;
1918e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    HRESULT altGraphKey([out, retval] BOOL* result);
1928e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1938e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //boolean getModifierState(in DOMString keyIdentifierArg);
1948e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    HRESULT getModifierState([in] BSTR keyIdentifierArg, [out, retval] BOOL* result);
1958e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
1968e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    // FIXME: this does not match the version in the DOM spec.
1978e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //void initKeyboardEvent(in AtomicString type,
1988e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //                       in boolean canBubble,
1998e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //                       in boolean cancelable,
2008e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //                       in DOMWindow view,
2018e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //                       in DOMString keyIdentifier,
2028e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //                       in unsigned long keyLocation,
2038e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //                       in boolean ctrlKey,
2048e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //                       in boolean altKey,
2058e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //                       in boolean shiftKey,
2068e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //                       in boolean metaKey,
2078e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //                       in boolean altGraphKey);
2088e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    HRESULT initKeyboardEvent([in] BSTR type, [in] BOOL canBubble, [in] BOOL cancelable, [in] IDOMWindow* view, [in] BSTR keyIdentifier, [in] unsigned long keyLocation, [in] BOOL ctrlKey, [in] BOOL altKey, [in] BOOL shiftKey, [in] BOOL metaKey, [in] BOOL graphKey);
2098e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
2108e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    // WebKit Extensions
2118e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //readonly attribute long             keyCode;
2128e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //HRESULT keyCode([out, retval] long* result);
2138e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
2148e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //readonly attribute long             charCode;
2158e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //HRESULT charCode([out, retval] long* result);
2168e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
2178e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //void initKeyboardEvent(in AtomicString type,
2188e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //                       in boolean canBubble,
2198e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //                       in boolean cancelable,
2208e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //                       in DOMWindow view,
2218e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //                       in DOMString keyIdentifier,
2228e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //                       in unsigned long keyLocation,
2238e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //                       in boolean ctrlKey,
2248e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //                       in boolean altKey,
2258e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //                       in boolean shiftKey,
2268e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //                       in boolean metaKey);
2278e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
2288e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
2298e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project[
2308e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    object,
2318e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    oleautomation,
2328e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    uuid(bdd97151-5f6a-4ba4-a902-9b008392eb54),
2338e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    pointer_default(unique)
2348e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project]
2358e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectinterface IDOMMouseEvent : IDOMUIEvent
2368e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
2378e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //readonly attribute long             screenX;
2388e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    HRESULT screenX([out, retval] long* result);
2398e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
2408e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //readonly attribute long             screenY;
2418e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    HRESULT screenY([out, retval] long* result);
2428e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
2438e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //readonly attribute long             clientX;
2448e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    HRESULT clientX([out, retval] long* result);
2458e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
2468e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //readonly attribute long             clientY;
2478e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    HRESULT clientY([out, retval] long* result);
2488e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
2498e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //readonly attribute boolean          ctrlKey;
2508e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    HRESULT ctrlKey([out, retval] BOOL* result);
2518e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
2528e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //readonly attribute boolean          shiftKey;
2538e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    HRESULT shiftKey([out, retval] BOOL* result);
2548e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
2558e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //readonly attribute boolean          altKey;
2568e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    HRESULT altKey([out, retval] BOOL* result);
2578e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
2588e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //readonly attribute boolean          metaKey;
2598e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    HRESULT metaKey([out, retval] BOOL* result);
2608e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
2618e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //readonly attribute unsigned short   button;
2628e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    HRESULT button([out, retval] unsigned short* result);
2638e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
2648e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //readonly attribute EventTarget      relatedTarget;
2658e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    HRESULT relatedTarget([out, retval] IDOMEventTarget** result);
2668e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
2678e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //[OldStyleObjC] void initMouseEvent(in AtomicString type,
2688e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //                                   in boolean canBubble,
2698e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //                                   in boolean cancelable,
2708e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //                                   in DOMWindow view,
2718e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //                                   in long detail,
2728e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //                                   in long screenX,
2738e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //                                   in long screenY,
2748e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //                                   in long clientX,
2758e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //                                   in long clientY,
2768e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //                                   in boolean ctrlKey,
2778e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //                                   in boolean altKey,
2788e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //                                   in boolean shiftKey,
2798e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //                                   in boolean metaKey,
2808e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //                                   in unsigned short button,
2818e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //                                   in EventTarget relatedTarget);
2828e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    HRESULT initMouseEvent([in] BSTR type, [in] BOOL canBubble, [in] BOOL cancelable, [in] IDOMWindow* view, [in] long detail, [in] long screenX, [in] long screenY, [in] long clientX, [in] long clientY, [in] BOOL ctrlKey, [in] BOOL altKey, [in] BOOL shiftKey, [in] BOOL metaKey, [in] unsigned short button, [in] IDOMEventTarget* relatedTarget);
2838e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
2848e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    // extensions
2858e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //readonly attribute long             offsetX;
2868e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    HRESULT offsetX([out, retval] long* result);
2878e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
2888e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //readonly attribute long             offsetY;
2898e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    HRESULT offsetY([out, retval] long* result);
2908e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
2918e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //readonly attribute long             x;
2928e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    HRESULT x([out, retval] long* result);
2938e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
2948e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //readonly attribute long             y;
2958e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    HRESULT y([out, retval] long* result);
2968e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
2978e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //readonly attribute Node             fromElement;
2988e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    HRESULT fromElement([out, retval] IDOMNode** result);
2998e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
3008e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //readonly attribute Node             toElement;
3018e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    HRESULT toElement([out, retval] IDOMNode** result);
3028e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
3038e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
3048e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project[
3058e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    object,
3068e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    oleautomation,
3078e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    uuid(6345d228-ea67-48ee-93c8-ff6e9c6356e9),
3088e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    pointer_default(unique)
3098e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project]
3108e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectinterface IDOMMutationEvent : IDOMEvent
3118e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
3128e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    // attrChangeType
3138e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    const unsigned short DOMMUTATIONEVENT_MODIFICATION = 1;
3148e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    const unsigned short DOMMUTATIONEVENT_ADDITION     = 2;
3158e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    const unsigned short DOMMUTATIONEVENT_REMOVAL      = 3;
3168e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
3178e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //readonly attribute Node           relatedNode;
3188e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    HRESULT relatedNode([out, retval] IDOMNode** result);
3198e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
3208e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //readonly attribute DOMString      prevValue;
3218e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    HRESULT prevValue([out, retval] BSTR* result);
3228e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
3238e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //readonly attribute DOMString      newValue;
3248e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    HRESULT newValue([out, retval] BSTR* result);
3258e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
3268e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //readonly attribute DOMString      attrName;
3278e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    HRESULT attrName([out, retval] BSTR* result);
3288e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
3298e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //readonly attribute unsigned short attrChange;
3308e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    HRESULT attrChange([out, retval] unsigned short* result);
3318e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
3328e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //[OldStyleObjC] void initMutationEvent(in AtomicString type,
3338e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //                                      in boolean canBubble,
3348e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //                                      in boolean cancelable,
3358e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //                                      in Node relatedNode,
3368e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //                                      in DOMString prevValue,
3378e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //                                      in DOMString newValue,
3388e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //                                      in DOMString attrName,
3398e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //                                      in unsigned short attrChange);
3408e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    HRESULT initMutationEvent([in] BSTR type, [in] BOOL canBubble, [in] BOOL cancelable, [in] IDOMNode* relatedNode, [in] BSTR prevValue, [in] BSTR newValue, [in] BSTR attrName, [in] unsigned short attrChange);
3418e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
3428e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
3438e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project[
3448e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    object,
3458e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    oleautomation,
3468e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    uuid(6048369e-e444-401b-950d-c9daef9384d2),
3478e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    pointer_default(unique)
3488e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project]
3498e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectinterface IDOMOverflowEvent : IDOMEvent
3508e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
3518e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    const unsigned short DOMOVERFLOWEVENT_HORIZONTAL = 0;
3528e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    const unsigned short DOMOVERFLOWEVENT_VERTICAL   = 1;
3538e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    const unsigned short DOMOVERFLOWEVENT_BOTH       = 2;
3548e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
3558e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //readonly attribute unsigned short orient;
3568e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    HRESULT orient([out, retval] unsigned short* result);
3578e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
3588e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //readonly attribute boolean horizontalOverflow;
3598e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    HRESULT horizontalOverflow([out, retval] BOOL* result);
3608e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
3618e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //readonly attribute boolean verticalOverflow;
3628e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    HRESULT verticalOverflow([out, retval] BOOL* result);
3638e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
3648e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
3658e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project[
3668e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    object,
3678e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    oleautomation,
3688e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    uuid(b928261d-7c9e-4156-af71-6f698bd97788),
3698e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    pointer_default(unique)
3708e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project]
3718e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectinterface IDOMUIEvent : IDOMEvent
3728e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
3738e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //readonly attribute DOMWindow            view;
3748e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    HRESULT view([out, retval] IDOMWindow** result);
3758e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
3768e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //readonly attribute long                 detail;
3778e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    HRESULT detail([out, retval] long* result);
3788e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
3798e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //[OldStyleObjC] void initUIEvent(in AtomicString type,
3808e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //                                in boolean canBubble,
3818e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //                                in boolean cancelable,
3828e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //                                in DOMWindow view,
3838e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //                                in long detail);
3848e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    HRESULT initUIEvent([in] BSTR type, [in] BOOL canBubble, [in] BOOL cancelable, [in] IDOMWindow* view, [in] long detail);
3858e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
3868e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    // extentsions
3878e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //readonly attribute long                 keyCode;
3888e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    HRESULT keyCode([out, retval] long* result);
3898e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
3908e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //readonly attribute long                 charCode;
3918e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    HRESULT charCode([out, retval] long* result);
3928e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
3938e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //readonly attribute long                 layerX;
3948e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    HRESULT layerX([out, retval] long* result);
3958e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
3968e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //readonly attribute long                 layerY;
3978e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    HRESULT layerY([out, retval] long* result);
3988e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
3998e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //readonly attribute long                 pageX;
4008e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    HRESULT pageX([out, retval] long* result);
4018e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
4028e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //readonly attribute long                 pageY;
4038e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    HRESULT pageY([out, retval] long* result);
4048e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
4058e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //readonly attribute long                 which;
4068e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    HRESULT which([out, retval] long* result);
4078e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
4088e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
4098e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project[
4108e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    object,
4118e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    oleautomation,
4128e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    uuid(5404e6d9-a2bb-4c74-8070-ce9d2599bd00),
4138e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    pointer_default(unique)
4148e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project]
4158e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectinterface IDOMWheelEvent : IDOMUIEvent
4168e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project{
4178e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //readonly attribute long    screenX;
4188e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    HRESULT screenX([out, retval] long* result);
4198e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
4208e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //readonly attribute long    screenY;
4218e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    HRESULT screenY([out, retval] long* result);
4228e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
4238e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //readonly attribute long    clientX;
4248e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    HRESULT clientX([out, retval] long* result);
4258e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
4268e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //readonly attribute long    clientY;
4278e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    HRESULT clientY([out, retval] long* result);
4288e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
4298e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //readonly attribute boolean ctrlKey;
4308e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    HRESULT ctrlKey([out, retval] BOOL* result);
4318e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
4328e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //readonly attribute boolean shiftKey;
4338e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    HRESULT shiftKey([out, retval] BOOL* result);
4348e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
4358e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //readonly attribute boolean altKey;
4368e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    HRESULT altKey([out, retval] BOOL* result);
4378e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
4388e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //readonly attribute boolean metaKey;
4398e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    HRESULT metaKey([out, retval] BOOL* result);
4408e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
4418e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //readonly attribute long    wheelDelta;
4428e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    HRESULT wheelDelta([out, retval] long* result);
4438e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
4448e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //readonly attribute long    wheelDeltaX;
4458e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    HRESULT wheelDeltaX([out, retval] long* result);
4468e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
4478e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //readonly attribute long    wheelDeltaY;
4488e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    HRESULT wheelDeltaY([out, retval] long* result);
4498e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
4508e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    // WebKit Extensions
4518e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //readonly attribute long    offsetX;
4528e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    HRESULT offsetX([out, retval] long* result);
4538e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
4548e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //readonly attribute long    offsetY;
4558e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    HRESULT offsetY([out, retval] long* result);
4568e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
4578e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //readonly attribute long    x;
4588e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    HRESULT x([out, retval] long* result);
4598e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
4608e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //readonly attribute long    y;
4618e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    HRESULT y([out, retval] long* result);
4628e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
4638e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //readonly attribute boolean isHorizontal;
4648e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    HRESULT isHorizontal([out, retval] BOOL* result);
4658e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
4668e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //void initWheelEvent(in long wheelDeltaX,
4678e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //                    in long wheelDeltaY,
4688e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //                    in DOMWindow view,
4698e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //                    in long screenX,
4708e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //                    in long screenY,
4718e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //                    in long clientX,
4728e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //                    in long clientY,
4738e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //                    in boolean ctrlKey,
4748e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //                    in boolean altKey,
4758e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //                    in boolean shiftKey,
4768e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    //                    in boolean metaKey);
4778e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    HRESULT initWheelEvent([in] long wheelDeltaX, [in] long wheelDeltaY, [in] IDOMWindow* view, [in] long screenX, [in] long screenY, [in] long clientX, [in] long clientY, [in] BOOL ctrlKey, [in] BOOL altKey, [in] BOOL shiftKey, [in] BOOL metaKey);
4788e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project}
479