Home | History | Annotate | Download | only in events
      1 /*
      2  * Copyright (C) 2006, 2007 Apple Inc. All rights reserved.
      3  *
      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.
      8  *
      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.
     13  *
     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.
     18  */
     19 
     20 [
     21     EventConstructor,
     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;
     37 
     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);
     53 
     54     // extensions
     55     readonly attribute long             offsetX;
     56     readonly attribute long             offsetY;
     57     readonly attribute long             x;
     58     readonly attribute long             y;
     59     readonly attribute Node             fromElement;
     60     readonly attribute Node             toElement;
     61 
     62     readonly attribute DataTransfer     dataTransfer;
     63 };
     64 
     65