summaryrefslogtreecommitdiffstats
path: root/awt/java/awt/AWTEvent.java
diff options
context:
space:
mode:
Diffstat (limited to 'awt/java/awt/AWTEvent.java')
-rw-r--r--awt/java/awt/AWTEvent.java681
1 files changed, 0 insertions, 681 deletions
diff --git a/awt/java/awt/AWTEvent.java b/awt/java/awt/AWTEvent.java
deleted file mode 100644
index a8dc83a..0000000
--- a/awt/java/awt/AWTEvent.java
+++ /dev/null
@@ -1,681 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-/**
- * @author Dmitry A. Durnev, Michael Danilov
- * @version $Revision$
- */
-
-package java.awt;
-
-import java.util.EventObject;
-import java.util.Hashtable;
-import java.util.EventListener;
-
-import java.awt.event.*;
-
-/**
- * The abstract class AWTEvent is the base class for all AWT events. This class
- * and its subclasses supersede the original java.awt.Event class.
- *
- * @since Android 1.0
- */
-public abstract class AWTEvent extends EventObject {
-
- /**
- * The Constant serialVersionUID.
- */
- private static final long serialVersionUID = -1825314779160409405L;
-
- /**
- * The Constant COMPONENT_EVENT_MASK indicates the event relates to a
- * component.
- */
- public static final long COMPONENT_EVENT_MASK = 1;
-
- /**
- * The Constant CONTAINER_EVENT_MASK indicates the event relates to a
- * container.
- */
- public static final long CONTAINER_EVENT_MASK = 2;
-
- /**
- * The Constant FOCUS_EVENT_MASK indicates the event relates to the focus.
- */
- public static final long FOCUS_EVENT_MASK = 4;
-
- /**
- * The Constant KEY_EVENT_MASK indicates the event relates to a key.
- */
- public static final long KEY_EVENT_MASK = 8;
-
- /**
- * The Constant MOUSE_EVENT_MASK indicates the event relates to the mouse.
- */
- public static final long MOUSE_EVENT_MASK = 16;
-
- /**
- * The Constant MOUSE_MOTION_EVENT_MASK indicates the event relates to a
- * mouse motion.
- */
- public static final long MOUSE_MOTION_EVENT_MASK = 32;
-
- /**
- * The Constant WINDOW_EVENT_MASK indicates the event relates to a window.
- */
- public static final long WINDOW_EVENT_MASK = 64;
-
- /**
- * The Constant ACTION_EVENT_MASK indicates the event relates to an action.
- */
- public static final long ACTION_EVENT_MASK = 128;
-
- /**
- * The Constant ADJUSTMENT_EVENT_MASK indicates the event relates to an
- * adjustment.
- */
- public static final long ADJUSTMENT_EVENT_MASK = 256;
-
- /**
- * The Constant ITEM_EVENT_MASK indicates the event relates to an item.
- */
- public static final long ITEM_EVENT_MASK = 512;
-
- /**
- * The Constant TEXT_EVENT_MASK indicates the event relates to text.
- */
- public static final long TEXT_EVENT_MASK = 1024;
-
- /**
- * The Constant INPUT_METHOD_EVENT_MASK indicates the event relates to an
- * input method.
- */
- public static final long INPUT_METHOD_EVENT_MASK = 2048;
-
- /**
- * The Constant PAINT_EVENT_MASK indicates the event relates to a paint
- * method.
- */
- public static final long PAINT_EVENT_MASK = 8192;
-
- /**
- * The Constant INVOCATION_EVENT_MASK indicates the event relates to a
- * method invocation.
- */
- public static final long INVOCATION_EVENT_MASK = 16384;
-
- /**
- * The Constant HIERARCHY_EVENT_MASK indicates the event relates to a
- * hierarchy.
- */
- public static final long HIERARCHY_EVENT_MASK = 32768;
-
- /**
- * The Constant HIERARCHY_BOUNDS_EVENT_MASK indicates the event relates to
- * hierarchy bounds.
- */
- public static final long HIERARCHY_BOUNDS_EVENT_MASK = 65536;
-
- /**
- * The Constant MOUSE_WHEEL_EVENT_MASK indicates the event relates to the
- * mouse wheel.
- */
- public static final long MOUSE_WHEEL_EVENT_MASK = 131072;
-
- /**
- * The Constant WINDOW_STATE_EVENT_MASK indicates the event relates to a
- * window state.
- */
- public static final long WINDOW_STATE_EVENT_MASK = 262144;
-
- /**
- * The Constant WINDOW_FOCUS_EVENT_MASK indicates the event relates to a
- * window focus.
- */
- public static final long WINDOW_FOCUS_EVENT_MASK = 524288;
-
- /**
- * The Constant RESERVED_ID_MAX indicates the maximum value for reserved AWT
- * event IDs.
- */
- public static final int RESERVED_ID_MAX = 1999;
-
- /**
- * The Constant eventsMap.
- */
- private static final Hashtable<Integer, EventDescriptor> eventsMap = new Hashtable<Integer, EventDescriptor>();
-
- /**
- * The converter.
- */
- private static EventConverter converter;
-
- /**
- * The ID of the event.
- */
- protected int id;
-
- /**
- * The consumed indicates whether or not the event is sent back down to the
- * peer once the source has processed it (false means it's sent to the peer,
- * true means it's not).
- */
- protected boolean consumed;
-
- /**
- * The dispatched by kfm.
- */
- boolean dispatchedByKFM;
-
- /**
- * The is posted.
- */
- transient boolean isPosted;
-
- static {
- eventsMap.put(new Integer(KeyEvent.KEY_TYPED), new EventDescriptor(KEY_EVENT_MASK,
- KeyListener.class));
- eventsMap.put(new Integer(KeyEvent.KEY_PRESSED), new EventDescriptor(KEY_EVENT_MASK,
- KeyListener.class));
- eventsMap.put(new Integer(KeyEvent.KEY_RELEASED), new EventDescriptor(KEY_EVENT_MASK,
- KeyListener.class));
- eventsMap.put(new Integer(MouseEvent.MOUSE_CLICKED), new EventDescriptor(MOUSE_EVENT_MASK,
- MouseListener.class));
- eventsMap.put(new Integer(MouseEvent.MOUSE_PRESSED), new EventDescriptor(MOUSE_EVENT_MASK,
- MouseListener.class));
- eventsMap.put(new Integer(MouseEvent.MOUSE_RELEASED), new EventDescriptor(MOUSE_EVENT_MASK,
- MouseListener.class));
- eventsMap.put(new Integer(MouseEvent.MOUSE_MOVED), new EventDescriptor(
- MOUSE_MOTION_EVENT_MASK, MouseMotionListener.class));
- eventsMap.put(new Integer(MouseEvent.MOUSE_ENTERED), new EventDescriptor(MOUSE_EVENT_MASK,
- MouseListener.class));
- eventsMap.put(new Integer(MouseEvent.MOUSE_EXITED), new EventDescriptor(MOUSE_EVENT_MASK,
- MouseListener.class));
- eventsMap.put(new Integer(MouseEvent.MOUSE_DRAGGED), new EventDescriptor(
- MOUSE_MOTION_EVENT_MASK, MouseMotionListener.class));
- eventsMap.put(new Integer(MouseEvent.MOUSE_WHEEL), new EventDescriptor(
- MOUSE_WHEEL_EVENT_MASK, MouseWheelListener.class));
- eventsMap.put(new Integer(ComponentEvent.COMPONENT_MOVED), new EventDescriptor(
- COMPONENT_EVENT_MASK, ComponentListener.class));
- eventsMap.put(new Integer(ComponentEvent.COMPONENT_RESIZED), new EventDescriptor(
- COMPONENT_EVENT_MASK, ComponentListener.class));
- eventsMap.put(new Integer(ComponentEvent.COMPONENT_SHOWN), new EventDescriptor(
- COMPONENT_EVENT_MASK, ComponentListener.class));
- eventsMap.put(new Integer(ComponentEvent.COMPONENT_HIDDEN), new EventDescriptor(
- COMPONENT_EVENT_MASK, ComponentListener.class));
- eventsMap.put(new Integer(FocusEvent.FOCUS_GAINED), new EventDescriptor(FOCUS_EVENT_MASK,
- FocusListener.class));
- eventsMap.put(new Integer(FocusEvent.FOCUS_LOST), new EventDescriptor(FOCUS_EVENT_MASK,
- FocusListener.class));
- eventsMap.put(new Integer(PaintEvent.PAINT), new EventDescriptor(PAINT_EVENT_MASK, null));
- eventsMap.put(new Integer(PaintEvent.UPDATE), new EventDescriptor(PAINT_EVENT_MASK, null));
- eventsMap.put(new Integer(WindowEvent.WINDOW_OPENED), new EventDescriptor(
- WINDOW_EVENT_MASK, WindowListener.class));
- eventsMap.put(new Integer(WindowEvent.WINDOW_CLOSING), new EventDescriptor(
- WINDOW_EVENT_MASK, WindowListener.class));
- eventsMap.put(new Integer(WindowEvent.WINDOW_CLOSED), new EventDescriptor(
- WINDOW_EVENT_MASK, WindowListener.class));
- eventsMap.put(new Integer(WindowEvent.WINDOW_DEICONIFIED), new EventDescriptor(
- WINDOW_EVENT_MASK, WindowListener.class));
- eventsMap.put(new Integer(WindowEvent.WINDOW_ICONIFIED), new EventDescriptor(
- WINDOW_EVENT_MASK, WindowListener.class));
- eventsMap.put(new Integer(WindowEvent.WINDOW_STATE_CHANGED), new EventDescriptor(
- WINDOW_STATE_EVENT_MASK, WindowStateListener.class));
- eventsMap.put(new Integer(WindowEvent.WINDOW_LOST_FOCUS), new EventDescriptor(
- WINDOW_FOCUS_EVENT_MASK, WindowFocusListener.class));
- eventsMap.put(new Integer(WindowEvent.WINDOW_GAINED_FOCUS), new EventDescriptor(
- WINDOW_FOCUS_EVENT_MASK, WindowFocusListener.class));
- eventsMap.put(new Integer(WindowEvent.WINDOW_DEACTIVATED), new EventDescriptor(
- WINDOW_EVENT_MASK, WindowListener.class));
- eventsMap.put(new Integer(WindowEvent.WINDOW_ACTIVATED), new EventDescriptor(
- WINDOW_EVENT_MASK, WindowListener.class));
- eventsMap.put(new Integer(HierarchyEvent.HIERARCHY_CHANGED), new EventDescriptor(
- HIERARCHY_EVENT_MASK, HierarchyListener.class));
- eventsMap.put(new Integer(HierarchyEvent.ANCESTOR_MOVED), new EventDescriptor(
- HIERARCHY_BOUNDS_EVENT_MASK, HierarchyBoundsListener.class));
- eventsMap.put(new Integer(HierarchyEvent.ANCESTOR_RESIZED), new EventDescriptor(
- HIERARCHY_BOUNDS_EVENT_MASK, HierarchyBoundsListener.class));
- eventsMap.put(new Integer(ContainerEvent.COMPONENT_ADDED), new EventDescriptor(
- CONTAINER_EVENT_MASK, ContainerListener.class));
- eventsMap.put(new Integer(ContainerEvent.COMPONENT_REMOVED), new EventDescriptor(
- CONTAINER_EVENT_MASK, ContainerListener.class));
- eventsMap.put(new Integer(InputMethodEvent.INPUT_METHOD_TEXT_CHANGED), new EventDescriptor(
- INPUT_METHOD_EVENT_MASK, InputMethodListener.class));
- eventsMap.put(new Integer(InputMethodEvent.CARET_POSITION_CHANGED), new EventDescriptor(
- INPUT_METHOD_EVENT_MASK, InputMethodListener.class));
- eventsMap.put(new Integer(InvocationEvent.INVOCATION_DEFAULT), new EventDescriptor(
- INVOCATION_EVENT_MASK, null));
- eventsMap.put(new Integer(ItemEvent.ITEM_STATE_CHANGED), new EventDescriptor(
- ITEM_EVENT_MASK, ItemListener.class));
- eventsMap.put(new Integer(TextEvent.TEXT_VALUE_CHANGED), new EventDescriptor(
- TEXT_EVENT_MASK, TextListener.class));
- eventsMap.put(new Integer(ActionEvent.ACTION_PERFORMED), new EventDescriptor(
- ACTION_EVENT_MASK, ActionListener.class));
- eventsMap.put(new Integer(AdjustmentEvent.ADJUSTMENT_VALUE_CHANGED), new EventDescriptor(
- ADJUSTMENT_EVENT_MASK, AdjustmentListener.class));
- converter = new EventConverter();
- }
-
- /**
- * Instantiates a new AWT event from the specified Event object.
- *
- * @param event
- * the Event object.
- */
- public AWTEvent(Event event) {
- this(event.target, event.id);
- }
-
- /**
- * Instantiates a new AWT event with the specified object and type.
- *
- * @param source
- * the source Object.
- * @param id
- * the event's type.
- */
- public AWTEvent(Object source, int id) {
- super(source);
- this.id = id;
- consumed = false;
- }
-
- /**
- * Gets the event's type.
- *
- * @return the event type ID.
- */
- public int getID() {
- return id;
- }
-
- /**
- * Sets a new source for the AWTEvent.
- *
- * @param newSource
- * the new source Object for the AWTEvent.
- */
- public void setSource(Object newSource) {
- source = newSource;
- }
-
- /**
- * Returns a String representation of the AWTEvent.
- *
- * @return the String representation of the AWTEvent.
- */
- @Override
- public String toString() {
- /*
- * The format is based on 1.5 release behavior which can be revealed by
- * the following code: AWTEvent event = new AWTEvent(new Component(){},
- * 1){}; System.out.println(event);
- */
- String name = ""; //$NON-NLS-1$
-
- if (source instanceof Component && (source != null)) {
- Component comp = (Component)getSource();
- name = comp.getName();
- if (name == null) {
- name = ""; //$NON-NLS-1$
- }
- }
-
- return (getClass().getName() + "[" + paramString() + "]" //$NON-NLS-1$ //$NON-NLS-2$
- + " on " + (name.length() > 0 ? name : source)); //$NON-NLS-1$
- }
-
- /**
- * Returns a string representation of the AWTEvent state.
- *
- * @return a string representation of the AWTEvent state.
- */
- public String paramString() {
- // nothing to implement: all event types must override this method
- return ""; //$NON-NLS-1$
- }
-
- /**
- * Checks whether or not this AWTEvent has been consumed.
- *
- * @return true, if this AWTEvent has been consumed, false otherwise.
- */
- protected boolean isConsumed() {
- return consumed;
- }
-
- /**
- * Consumes the AWTEvent.
- */
- protected void consume() {
- consumed = true;
- }
-
- /**
- * Convert AWTEvent object to a corresponding (deprecated) Event object.
- *
- * @return new Event object which is a converted AWTEvent object or null if
- * the conversion is not possible
- */
- Event getEvent() {
-
- if (id == ActionEvent.ACTION_PERFORMED) {
- ActionEvent ae = (ActionEvent)this;
- return converter.convertActionEvent(ae);
-
- } else if (id == AdjustmentEvent.ADJUSTMENT_VALUE_CHANGED) {
- AdjustmentEvent ae = (AdjustmentEvent)this;
- return converter.convertAdjustmentEvent(ae);
-
- // ???AWT
- // } else if (id == ComponentEvent.COMPONENT_MOVED
- // && source instanceof Window) {
- // //the only type of Component events is COMPONENT_MOVED on window
- // ComponentEvent ce = (ComponentEvent) this;
- // return converter.convertComponentEvent(ce);
-
- } else if (id >= FocusEvent.FOCUS_FIRST && id <= FocusEvent.FOCUS_LAST) {
- // nothing to convert
-
- // ???AWT
- // } else if (id == ItemEvent.ITEM_STATE_CHANGED) {
- // ItemEvent ie = (ItemEvent) this;
- // return converter.convertItemEvent(ie);
-
- } else if (id == KeyEvent.KEY_PRESSED || id == KeyEvent.KEY_RELEASED) {
- KeyEvent ke = (KeyEvent)this;
- return converter.convertKeyEvent(ke);
- } else if (id >= MouseEvent.MOUSE_FIRST && id <= MouseEvent.MOUSE_LAST) {
- MouseEvent me = (MouseEvent)this;
- return converter.convertMouseEvent(me);
- } else if (id == WindowEvent.WINDOW_CLOSING || id == WindowEvent.WINDOW_ICONIFIED
- || id == WindowEvent.WINDOW_DEICONIFIED) {
- // nothing to convert
- } else {
- return null;
- }
- return new Event(source, id, null);
- }
-
- /**
- * The class EventDescriptor.
- */
- static final class EventDescriptor {
-
- /**
- * The event mask.
- */
- final long eventMask;
-
- /**
- * The listener type.
- */
- final Class<? extends EventListener> listenerType;
-
- /**
- * Instantiates a new event descriptor.
- *
- * @param eventMask
- * the event mask.
- * @param listenerType
- * the listener type.
- */
- EventDescriptor(long eventMask, Class<? extends EventListener> listenerType) {
- this.eventMask = eventMask;
- this.listenerType = listenerType;
- }
-
- }
-
- /**
- * The class EventTypeLookup.
- */
- static final class EventTypeLookup {
-
- /**
- * The last event.
- */
- private AWTEvent lastEvent = null;
-
- /**
- * The last event descriptor.
- */
- private EventDescriptor lastEventDescriptor = null;
-
- /**
- * Gets the event descriptor.
- *
- * @param event
- * the event.
- * @return the event descriptor.
- */
- EventDescriptor getEventDescriptor(AWTEvent event) {
- synchronized (this) {
- if (event != lastEvent) {
- lastEvent = event;
- lastEventDescriptor = eventsMap.get(new Integer(event.id));
- }
-
- return lastEventDescriptor;
- }
- }
-
- /**
- * Gets the event mask.
- *
- * @param event
- * the event.
- * @return the event mask.
- */
- long getEventMask(AWTEvent event) {
- final EventDescriptor ed = getEventDescriptor(event);
- return ed == null ? -1 : ed.eventMask;
- }
- }
-
- /**
- * The class EventConverter.
- */
- static final class EventConverter {
-
- /**
- * The constant OLD_MOD_MASK.
- */
- static final int OLD_MOD_MASK = Event.ALT_MASK | Event.CTRL_MASK | Event.META_MASK
- | Event.SHIFT_MASK;
-
- /**
- * Convert action event.
- *
- * @param ae
- * the ae.
- * @return the event.
- */
- Event convertActionEvent(ActionEvent ae) {
- Event evt = new Event(ae.getSource(), ae.getID(), ae.getActionCommand());
- evt.when = ae.getWhen();
- evt.modifiers = ae.getModifiers() & OLD_MOD_MASK;
-
- /*
- * if (source instanceof Button) { arg = ((Button)
- * source).getLabel(); } else if (source instanceof Checkbox) { arg
- * = new Boolean(((Checkbox) source).getState()); } else if (source
- * instanceof CheckboxMenuItem) { arg = ((CheckboxMenuItem)
- * source).getLabel(); } else if (source instanceof Choice) { arg =
- * ((Choice) source).getSelectedItem(); } else if (source instanceof
- * List) { arg = ((List) source).getSelectedItem(); } else if
- * (source instanceof MenuItem) { arg = ((MenuItem)
- * source).getLabel(); } else if (source instanceof TextField) { arg
- * = ((TextField) source).getText(); }
- */
- return evt;
- }
-
- /**
- * Convert adjustment event.
- *
- * @param ae
- * the ae.
- * @return the event.
- */
- Event convertAdjustmentEvent(AdjustmentEvent ae) {
- // TODO: Event.SCROLL_BEGIN/SCROLL_END
- return new Event(ae.source, ae.id + ae.getAdjustmentType() - 1, new Integer(ae
- .getValue()));
- }
-
- /**
- * Convert component event.
- *
- * @param ce
- * the ce.
- * @return the event.
- */
- Event convertComponentEvent(ComponentEvent ce) {
- Component comp = ce.getComponent();
- Event evt = new Event(comp, Event.WINDOW_MOVED, null);
- evt.x = comp.getX();
- evt.y = comp.getY();
- return evt;
- }
-
- // ???AWT
- /*
- * Event convertItemEvent(ItemEvent ie) { int oldId = ie.id +
- * ie.getStateChange() - 1; Object source = ie.source; int idx = -1; if
- * (source instanceof List) { List list = (List) source; idx =
- * list.getSelectedIndex(); } else if (source instanceof Choice) {
- * Choice choice = (Choice) source; idx = choice.getSelectedIndex(); }
- * Object arg = idx >= 0 ? new Integer(idx) : null; return new
- * Event(source, oldId, arg); }
- */
-
- /**
- * Convert key event.
- *
- * @param ke
- * the ke.
- * @return the event.
- */
- Event convertKeyEvent(KeyEvent ke) {
- int oldId = ke.id;
- // leave only old Event's modifiers
-
- int mod = ke.getModifiers() & OLD_MOD_MASK;
- Component comp = ke.getComponent();
- char keyChar = ke.getKeyChar();
- int keyCode = ke.getKeyCode();
- int key = convertKey(keyChar, keyCode);
- if (key >= Event.HOME && key <= Event.INSERT) {
- oldId += 2; // non-ASCII key -> action key
- }
- return new Event(comp, ke.getWhen(), oldId, 0, 0, key, mod);
- }
-
- /**
- * Convert mouse event.
- *
- * @param me
- * the me.
- * @return the event.
- */
- Event convertMouseEvent(MouseEvent me) {
- int id = me.id;
- if (id != MouseEvent.MOUSE_CLICKED) {
- Event evt = new Event(me.source, id, null);
- evt.x = me.getX();
- evt.y = me.getY();
- int mod = me.getModifiers();
- // in Event modifiers mean button number for mouse events:
- evt.modifiers = mod & (Event.ALT_MASK | Event.META_MASK);
- if (id == MouseEvent.MOUSE_PRESSED) {
- evt.clickCount = me.getClickCount();
- }
- return evt;
- }
- return null;
- }
-
- /**
- * Convert key.
- *
- * @param keyChar
- * the key char.
- * @param keyCode
- * the key code.
- * @return the int.
- */
- int convertKey(char keyChar, int keyCode) {
- int key;
- // F1 - F12
- if (keyCode >= KeyEvent.VK_F1 && keyCode <= KeyEvent.VK_F12) {
- key = Event.F1 + keyCode - KeyEvent.VK_F1;
- } else {
- switch (keyCode) {
- default: // non-action key
- key = keyChar;
- break;
- // action keys:
- case KeyEvent.VK_HOME:
- key = Event.HOME;
- break;
- case KeyEvent.VK_END:
- key = Event.END;
- break;
- case KeyEvent.VK_PAGE_UP:
- key = Event.PGUP;
- break;
- case KeyEvent.VK_PAGE_DOWN:
- key = Event.PGDN;
- break;
- case KeyEvent.VK_UP:
- key = Event.UP;
- break;
- case KeyEvent.VK_DOWN:
- key = Event.DOWN;
- break;
- case KeyEvent.VK_LEFT:
- key = Event.LEFT;
- break;
- case KeyEvent.VK_RIGHT:
- key = Event.RIGHT;
- break;
- case KeyEvent.VK_PRINTSCREEN:
- key = Event.PRINT_SCREEN;
- break;
- case KeyEvent.VK_SCROLL_LOCK:
- key = Event.SCROLL_LOCK;
- break;
- case KeyEvent.VK_CAPS_LOCK:
- key = Event.CAPS_LOCK;
- break;
- case KeyEvent.VK_NUM_LOCK:
- key = Event.NUM_LOCK;
- break;
- case KeyEvent.VK_PAUSE:
- key = Event.PAUSE;
- break;
- case KeyEvent.VK_INSERT:
- key = Event.INSERT;
- break;
- }
- }
- return key;
- }
-
- }
-
-}