jaxp/src/share/classes/org/w3c/dom/events/MouseEvent.java
changeset 6 7f561c08de6b
equal deleted inserted replaced
0:fd16c54261b3 6:7f561c08de6b
       
     1 /*
       
     2  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
       
     3  *
       
     4  * This code is free software; you can redistribute it and/or modify it
       
     5  * under the terms of the GNU General Public License version 2 only, as
       
     6  * published by the Free Software Foundation.  Sun designates this
       
     7  * particular file as subject to the "Classpath" exception as provided
       
     8  * by Sun in the LICENSE file that accompanied this code.
       
     9  *
       
    10  * This code is distributed in the hope that it will be useful, but WITHOUT
       
    11  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
       
    12  * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
       
    13  * version 2 for more details (a copy is included in the LICENSE file that
       
    14  * accompanied this code).
       
    15  *
       
    16  * You should have received a copy of the GNU General Public License version
       
    17  * 2 along with this work; if not, write to the Free Software Foundation,
       
    18  * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
       
    19  *
       
    20  * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
       
    21  * CA 95054 USA or visit www.sun.com if you need additional information or
       
    22  * have any questions.
       
    23  */
       
    24 
       
    25 /*
       
    26  * This file is available under and governed by the GNU General Public
       
    27  * License version 2 only, as published by the Free Software Foundation.
       
    28  * However, the following notice accompanied the original version of this
       
    29  * file and, per its terms, should not be removed:
       
    30  *
       
    31  * Copyright (c) 2000 World Wide Web Consortium,
       
    32  * (Massachusetts Institute of Technology, Institut National de
       
    33  * Recherche en Informatique et en Automatique, Keio University). All
       
    34  * Rights Reserved. This program is distributed under the W3C's Software
       
    35  * Intellectual Property License. This program is distributed in the
       
    36  * hope that it will be useful, but WITHOUT ANY WARRANTY; without even
       
    37  * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
       
    38  * PURPOSE.
       
    39  * See W3C License http://www.w3.org/Consortium/Legal/ for more details.
       
    40  */
       
    41 
       
    42 package org.w3c.dom.events;
       
    43 
       
    44 import org.w3c.dom.views.AbstractView;
       
    45 
       
    46 /**
       
    47  * The <code>MouseEvent</code> interface provides specific contextual
       
    48  * information associated with Mouse events.
       
    49  * <p>The <code>detail</code> attribute inherited from <code>UIEvent</code>
       
    50  * indicates the number of times a mouse button has been pressed and
       
    51  * released over the same screen location during a user action. The
       
    52  * attribute value is 1 when the user begins this action and increments by 1
       
    53  * for each full sequence of pressing and releasing. If the user moves the
       
    54  * mouse between the mousedown and mouseup the value will be set to 0,
       
    55  * indicating that no click is occurring.
       
    56  * <p>In the case of nested elements mouse events are always targeted at the
       
    57  * most deeply nested element. Ancestors of the targeted element may use
       
    58  * bubbling to obtain notification of mouse events which occur within its
       
    59  * descendent elements.
       
    60  * <p>See also the <a href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Events-20001113'>Document Object Model (DOM) Level 2 Events Specification</a>.
       
    61  * @since DOM Level 2
       
    62  */
       
    63 public interface MouseEvent extends UIEvent {
       
    64     /**
       
    65      * The horizontal coordinate at which the event occurred relative to the
       
    66      * origin of the screen coordinate system.
       
    67      */
       
    68     public int getScreenX();
       
    69 
       
    70     /**
       
    71      * The vertical coordinate at which the event occurred relative to the
       
    72      * origin of the screen coordinate system.
       
    73      */
       
    74     public int getScreenY();
       
    75 
       
    76     /**
       
    77      * The horizontal coordinate at which the event occurred relative to the
       
    78      * DOM implementation's client area.
       
    79      */
       
    80     public int getClientX();
       
    81 
       
    82     /**
       
    83      * The vertical coordinate at which the event occurred relative to the DOM
       
    84      * implementation's client area.
       
    85      */
       
    86     public int getClientY();
       
    87 
       
    88     /**
       
    89      * Used to indicate whether the 'ctrl' key was depressed during the firing
       
    90      * of the event.
       
    91      */
       
    92     public boolean getCtrlKey();
       
    93 
       
    94     /**
       
    95      * Used to indicate whether the 'shift' key was depressed during the
       
    96      * firing of the event.
       
    97      */
       
    98     public boolean getShiftKey();
       
    99 
       
   100     /**
       
   101      * Used to indicate whether the 'alt' key was depressed during the firing
       
   102      * of the event. On some platforms this key may map to an alternative
       
   103      * key name.
       
   104      */
       
   105     public boolean getAltKey();
       
   106 
       
   107     /**
       
   108      * Used to indicate whether the 'meta' key was depressed during the firing
       
   109      * of the event. On some platforms this key may map to an alternative
       
   110      * key name.
       
   111      */
       
   112     public boolean getMetaKey();
       
   113 
       
   114     /**
       
   115      * During mouse events caused by the depression or release of a mouse
       
   116      * button, <code>button</code> is used to indicate which mouse button
       
   117      * changed state. The values for <code>button</code> range from zero to
       
   118      * indicate the left button of the mouse, one to indicate the middle
       
   119      * button if present, and two to indicate the right button. For mice
       
   120      * configured for left handed use in which the button actions are
       
   121      * reversed the values are instead read from right to left.
       
   122      */
       
   123     public short getButton();
       
   124 
       
   125     /**
       
   126      * Used to identify a secondary <code>EventTarget</code> related to a UI
       
   127      * event. Currently this attribute is used with the mouseover event to
       
   128      * indicate the <code>EventTarget</code> which the pointing device
       
   129      * exited and with the mouseout event to indicate the
       
   130      * <code>EventTarget</code> which the pointing device entered.
       
   131      */
       
   132     public EventTarget getRelatedTarget();
       
   133 
       
   134     /**
       
   135      * The <code>initMouseEvent</code> method is used to initialize the value
       
   136      * of a <code>MouseEvent</code> created through the
       
   137      * <code>DocumentEvent</code> interface. This method may only be called
       
   138      * before the <code>MouseEvent</code> has been dispatched via the
       
   139      * <code>dispatchEvent</code> method, though it may be called multiple
       
   140      * times during that phase if necessary. If called multiple times, the
       
   141      * final invocation takes precedence.
       
   142      * @param typeArg Specifies the event type.
       
   143      * @param canBubbleArg Specifies whether or not the event can bubble.
       
   144      * @param cancelableArg Specifies whether or not the event's default
       
   145      *   action can be prevented.
       
   146      * @param viewArg Specifies the <code>Event</code>'s
       
   147      *   <code>AbstractView</code>.
       
   148      * @param detailArg Specifies the <code>Event</code>'s mouse click count.
       
   149      * @param screenXArg Specifies the <code>Event</code>'s screen x
       
   150      *   coordinate
       
   151      * @param screenYArg Specifies the <code>Event</code>'s screen y
       
   152      *   coordinate
       
   153      * @param clientXArg Specifies the <code>Event</code>'s client x
       
   154      *   coordinate
       
   155      * @param clientYArg Specifies the <code>Event</code>'s client y
       
   156      *   coordinate
       
   157      * @param ctrlKeyArg Specifies whether or not control key was depressed
       
   158      *   during the <code>Event</code>.
       
   159      * @param altKeyArg Specifies whether or not alt key was depressed during
       
   160      *   the <code>Event</code>.
       
   161      * @param shiftKeyArg Specifies whether or not shift key was depressed
       
   162      *   during the <code>Event</code>.
       
   163      * @param metaKeyArg Specifies whether or not meta key was depressed
       
   164      *   during the <code>Event</code>.
       
   165      * @param buttonArg Specifies the <code>Event</code>'s mouse button.
       
   166      * @param relatedTargetArg Specifies the <code>Event</code>'s related
       
   167      *   <code>EventTarget</code>.
       
   168      */
       
   169     public void initMouseEvent(String typeArg,
       
   170                                boolean canBubbleArg,
       
   171                                boolean cancelableArg,
       
   172                                AbstractView viewArg,
       
   173                                int detailArg,
       
   174                                int screenXArg,
       
   175                                int screenYArg,
       
   176                                int clientXArg,
       
   177                                int clientYArg,
       
   178                                boolean ctrlKeyArg,
       
   179                                boolean altKeyArg,
       
   180                                boolean shiftKeyArg,
       
   181                                boolean metaKeyArg,
       
   182                                short buttonArg,
       
   183                                EventTarget relatedTargetArg);
       
   184 
       
   185 }