#ifndef DO_NO_IMPORTS
import "oaidl.idl";
import "ocidl.idl";
import "DOMCore.idl";
import "DOMWindow.idl";
#endif
interface IDOMEvent;
interface IDOMEventException;
interface IDOMEventTarget;
interface IDOMKeyboardEvent;
interface IDOMMouseEvent;
interface IDOMMutationEvent;
interface IDOMNode;
interface IDOMOverflowEvent;
interface IDOMUIEvent;
interface IDOMWheelEvent;
interface IDOMWindow;
typedef long long DOMTimeStamp;
[
object,
oleautomation,
uuid(7f8a0a96-f864-44fb-87fb-c5f03666e8e6),
pointer_default(unique)
]
interface IDOMEventListener : IDOMObject
{
HRESULT handleEvent([in] IDOMEvent* evt);
}
[
object,
oleautomation,
uuid(62343a9e-a779-4e91-818a-14fc178cf4c2),
pointer_default(unique)
]
interface IDOMEvent : IDOMObject
{
const unsigned short DOMEVENT_CAPTURING_PHASE = 1;
const unsigned short DOMEVENT_AT_TARGET = 2;
const unsigned short DOMEVENT_BUBBLING_PHASE = 3;
const unsigned short DOMEVENT_MOUSEDOWN = 1;
const unsigned short DOMEVENT_MOUSEUP = 2;
const unsigned short DOMEVENT_MOUSEOVER = 4;
const unsigned short DOMEVENT_MOUSEOUT = 8;
const unsigned short DOMEVENT_MOUSEMOVE = 16;
const unsigned short DOMEVENT_MOUSEDRAG = 32;
const unsigned short DOMEVENT_CLICK = 64;
const unsigned short DOMEVENT_DBLCLICK = 128;
const unsigned short DOMEVENT_KEYDOWN = 256;
const unsigned short DOMEVENT_KEYUP = 512;
const unsigned short DOMEVENT_KEYPRESS = 1024;
const unsigned short DOMEVENT_DRAGDROP = 2048;
const unsigned short DOMEVENT_FOCUS = 4096;
const unsigned short DOMEVENT_BLUR = 8192;
const unsigned short DOMEVENT_SELECT = 16384;
const unsigned short DOMEVENT_CHANGE = 32768;
HRESULT type([out, retval] BSTR* result);
HRESULT target([out, retval] IDOMEventTarget** result);
HRESULT currentTarget([out, retval] IDOMEventTarget** result);
HRESULT eventPhase([out, retval] unsigned short* result);
HRESULT bubbles([out, retval] BOOL* result);
HRESULT cancelable([out, retval] BOOL* result);
HRESULT timeStamp([out, retval] DOMTimeStamp* result);
HRESULT stopPropagation();
HRESULT preventDefault();
HRESULT initEvent([in] BSTR eventTypeArg, [in] BOOL canBubbleArg, [in] BOOL cancelableArg);
}
[
object,
oleautomation,
uuid(c7cf7d84-d755-40bc-b664-84bc79eff709),
pointer_default(unique)
]
interface IDOMEventTarget : IUnknown
{
HRESULT addEventListener([in] BSTR type, [in] IDOMEventListener* listener, [in] BOOL useCapture);
HRESULT removeEventListener([in] BSTR type, [in] IDOMEventListener* listener, [in] BOOL useCapture);
HRESULT dispatchEvent([in] IDOMEvent* event, [out, retval] BOOL* result);
}
[
object,
oleautomation,
uuid(55AAF192-68CD-409f-A551-89710DC7240A),
pointer_default(unique)
]
interface IDOMDocumentEvent : IUnknown
{
HRESULT createEvent([in] BSTR eventType, [out, retval] IDOMEvent** result);
}
[
object,
oleautomation,
uuid(76bc4e46-67df-40d3-89b0-a94dcc2ed507),
pointer_default(unique)
]
interface IDOMKeyboardEvent : IDOMUIEvent
{
const unsigned long DOMKEYBOARDEVENT_KEY_LOCATION_STANDARD = 0x00;
const unsigned long DOMKEYBOARDEVENT_KEY_LOCATION_LEFT = 0x01;
const unsigned long DOMKEYBOARDEVENT_KEY_LOCATION_RIGHT = 0x02;
const unsigned long DOMKEYBOARDEVENT_KEY_LOCATION_NUMPAD = 0x03;
HRESULT keyIdentifier([out, retval] BSTR* result);
HRESULT location([out, retval] unsigned long* result);
HRESULT keyLocation([out, retval] unsigned long* result);
HRESULT ctrlKey([out, retval] BOOL* result);
HRESULT shiftKey([out, retval] BOOL* result);
HRESULT altKey([out, retval] BOOL* result);
HRESULT metaKey([out, retval] BOOL* result);
HRESULT altGraphKey([out, retval] BOOL* result);
HRESULT getModifierState([in] BSTR keyIdentifierArg, [out, retval] BOOL* result);
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);
}
[
object,
oleautomation,
uuid(bdd97151-5f6a-4ba4-a902-9b008392eb54),
pointer_default(unique)
]
interface IDOMMouseEvent : IDOMUIEvent
{
HRESULT screenX([out, retval] long* result);
HRESULT screenY([out, retval] long* result);
HRESULT clientX([out, retval] long* result);
HRESULT clientY([out, retval] long* result);
HRESULT ctrlKey([out, retval] BOOL* result);
HRESULT shiftKey([out, retval] BOOL* result);
HRESULT altKey([out, retval] BOOL* result);
HRESULT metaKey([out, retval] BOOL* result);
HRESULT button([out, retval] unsigned short* result);
HRESULT relatedTarget([out, retval] IDOMEventTarget** result);
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);
HRESULT offsetX([out, retval] long* result);
HRESULT offsetY([out, retval] long* result);
HRESULT x([out, retval] long* result);
HRESULT y([out, retval] long* result);
HRESULT fromElement([out, retval] IDOMNode** result);
HRESULT toElement([out, retval] IDOMNode** result);
}
[
object,
oleautomation,
uuid(6345d228-ea67-48ee-93c8-ff6e9c6356e9),
pointer_default(unique)
]
interface IDOMMutationEvent : IDOMEvent
{
const unsigned short DOMMUTATIONEVENT_MODIFICATION = 1;
const unsigned short DOMMUTATIONEVENT_ADDITION = 2;
const unsigned short DOMMUTATIONEVENT_REMOVAL = 3;
HRESULT relatedNode([out, retval] IDOMNode** result);
HRESULT prevValue([out, retval] BSTR* result);
HRESULT newValue([out, retval] BSTR* result);
HRESULT attrName([out, retval] BSTR* result);
HRESULT attrChange([out, retval] unsigned short* result);
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);
}
[
object,
oleautomation,
uuid(6048369e-e444-401b-950d-c9daef9384d2),
pointer_default(unique)
]
interface IDOMOverflowEvent : IDOMEvent
{
const unsigned short DOMOVERFLOWEVENT_HORIZONTAL = 0;
const unsigned short DOMOVERFLOWEVENT_VERTICAL = 1;
const unsigned short DOMOVERFLOWEVENT_BOTH = 2;
HRESULT orient([out, retval] unsigned short* result);
HRESULT horizontalOverflow([out, retval] BOOL* result);
HRESULT verticalOverflow([out, retval] BOOL* result);
}
[
object,
oleautomation,
uuid(b928261d-7c9e-4156-af71-6f698bd97788),
pointer_default(unique)
]
interface IDOMUIEvent : IDOMEvent
{
HRESULT view([out, retval] IDOMWindow** result);
HRESULT detail([out, retval] long* result);
HRESULT initUIEvent([in] BSTR type, [in] BOOL canBubble, [in] BOOL cancelable, [in] IDOMWindow* view, [in] long detail);
HRESULT keyCode([out, retval] long* result);
HRESULT charCode([out, retval] long* result);
HRESULT unused1([out, retval] long* result);
HRESULT unused2([out, retval] long* result);
HRESULT pageX([out, retval] long* result);
HRESULT pageY([out, retval] long* result);
HRESULT which([out, retval] long* result);
}
[
object,
oleautomation,
uuid(5404e6d9-a2bb-4c74-8070-ce9d2599bd00),
pointer_default(unique)
]
interface IDOMWheelEvent : IDOMUIEvent
{
HRESULT screenX([out, retval] long* result);
HRESULT screenY([out, retval] long* result);
HRESULT clientX([out, retval] long* result);
HRESULT clientY([out, retval] long* result);
HRESULT ctrlKey([out, retval] BOOL* result);
HRESULT shiftKey([out, retval] BOOL* result);
HRESULT altKey([out, retval] BOOL* result);
HRESULT metaKey([out, retval] BOOL* result);
HRESULT wheelDelta([out, retval] long* result);
HRESULT wheelDeltaX([out, retval] long* result);
HRESULT wheelDeltaY([out, retval] long* result);
HRESULT offsetX([out, retval] long* result);
HRESULT offsetY([out, retval] long* result);
HRESULT x([out, retval] long* result);
HRESULT y([out, retval] long* result);
HRESULT isHorizontal([out, retval] BOOL* result);
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);
}