2 * Copyright (C) 2006, 2007 Apple Inc. All rights reserved.
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Library General Public
6 * License as published by the Free Software Foundation; either
7 * version 2 of the License, or (at your option) any later version.
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Library General Public License for more details.
14 * You should have received a copy of the GNU Library General Public License
15 * along with this library; see the file COPYING.LIB. If not, write to
16 * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
17 * Boston, MA 02110-1301, USA.
22 ] interface MouseEvent : UIEvent {
23 [InitializedByEventConstructor] readonly attribute long screenX;
24 [InitializedByEventConstructor] readonly attribute long screenY;
25 [InitializedByEventConstructor] readonly attribute long clientX;
26 [InitializedByEventConstructor] readonly attribute long clientY;
27 [InitializedByEventConstructor] readonly attribute boolean ctrlKey;
28 [InitializedByEventConstructor] readonly attribute boolean shiftKey;
29 [InitializedByEventConstructor] readonly attribute boolean altKey;
30 [InitializedByEventConstructor] readonly attribute boolean metaKey;
31 [InitializedByEventConstructor] readonly attribute unsigned short button;
32 [InitializedByEventConstructor] readonly attribute EventTarget? relatedTarget;
33 [MeasureAs=MouseEventMovementX] readonly attribute long movementX;
34 [MeasureAs=MouseEventMovementY] readonly attribute long movementY;
35 [MeasureAs=PrefixedMouseEventMovementX, ImplementedAs=movementX] readonly attribute long webkitMovementX;
36 [MeasureAs=PrefixedMouseEventMovementY, ImplementedAs=movementY] readonly attribute long webkitMovementY;
38 void initMouseEvent([Default=Undefined] optional DOMString type,
39 [Default=Undefined] optional boolean canBubble,
40 [Default=Undefined] optional boolean cancelable,
41 [Default=Undefined] optional Window view,
42 [Default=Undefined] optional long detail,
43 [Default=Undefined] optional long screenX,
44 [Default=Undefined] optional long screenY,
45 [Default=Undefined] optional long clientX,
46 [Default=Undefined] optional long clientY,
47 [Default=Undefined] optional boolean ctrlKey,
48 [Default=Undefined] optional boolean altKey,
49 [Default=Undefined] optional boolean shiftKey,
50 [Default=Undefined] optional boolean metaKey,
51 [Default=Undefined] optional unsigned short button,
52 [Default=Undefined] optional EventTarget relatedTarget);
55 [MeasureAs=MouseEventOffsetX] readonly attribute long offsetX;
56 [MeasureAs=MouseEventOffsetY] readonly attribute long offsetY;
57 [MeasureAs=MouseEventX] readonly attribute long x;
58 [MeasureAs=MouseEventY] readonly attribute long y;
59 [MeasureAs=MouseEventFromElement] readonly attribute Node fromElement;
60 [MeasureAs=MouseEventToElement] readonly attribute Node toElement;
62 // FIXME: this belongs on the DragEvent interface
63 readonly attribute DataTransfer dataTransfer;