aboutsummaryrefslogtreecommitdiff
path: root/libjava/javax/swing/event
diff options
context:
space:
mode:
authorBryce McKinlay <bryce@waitaki.otago.ac.nz>2002-08-09 04:26:17 +0000
committerBryce McKinlay <bryce@gcc.gnu.org>2002-08-09 05:26:17 +0100
commit7bde45b2eb84502b62e77e46d947e46dcbd333d6 (patch)
treecdf9958b411887bead2263ea8ef0bdfc8eae6319 /libjava/javax/swing/event
parent097684ce62b505168739fc98e952f92a8719a1fa (diff)
downloadgcc-7bde45b2eb84502b62e77e46d947e46dcbd333d6.zip
gcc-7bde45b2eb84502b62e77e46d947e46dcbd333d6.tar.gz
gcc-7bde45b2eb84502b62e77e46d947e46dcbd333d6.tar.bz2
AWT/Swing merge from GNU Classpath.
From-SVN: r56147
Diffstat (limited to 'libjava/javax/swing/event')
-rw-r--r--libjava/javax/swing/event/AncestorEvent.java140
-rw-r--r--libjava/javax/swing/event/AncestorListener.java69
-rw-r--r--libjava/javax/swing/event/CaretEvent.java79
-rw-r--r--libjava/javax/swing/event/CaretListener.java56
-rw-r--r--libjava/javax/swing/event/CellEditorListener.java62
-rw-r--r--libjava/javax/swing/event/ChangeEvent.java59
-rw-r--r--libjava/javax/swing/event/ChangeListener.java57
-rw-r--r--libjava/javax/swing/event/DocumentEvent.java185
-rw-r--r--libjava/javax/swing/event/DocumentListener.java68
-rw-r--r--libjava/javax/swing/event/EventListenerList.java241
-rw-r--r--libjava/javax/swing/event/HyperlinkEvent.java195
-rw-r--r--libjava/javax/swing/event/HyperlinkListener.java57
-rw-r--r--libjava/javax/swing/event/InternalFrameAdapter.java112
-rw-r--r--libjava/javax/swing/event/InternalFrameEvent.java114
-rw-r--r--libjava/javax/swing/event/InternalFrameListener.java92
-rw-r--r--libjava/javax/swing/event/ListDataEvent.java139
-rw-r--r--libjava/javax/swing/event/ListDataListener.java69
-rw-r--r--libjava/javax/swing/event/ListSelectionEvent.java126
-rw-r--r--libjava/javax/swing/event/ListSelectionListener.java57
-rw-r--r--libjava/javax/swing/event/MenuDragMouseEvent.java114
-rw-r--r--libjava/javax/swing/event/MenuDragMouseListener.java74
-rw-r--r--libjava/javax/swing/event/MenuEvent.java59
-rw-r--r--libjava/javax/swing/event/MenuKeyEvent.java112
-rw-r--r--libjava/javax/swing/event/MenuKeyListener.java68
-rw-r--r--libjava/javax/swing/event/MenuListener.java68
-rw-r--r--libjava/javax/swing/event/MouseInputAdapter.java115
-rw-r--r--libjava/javax/swing/event/MouseInputListener.java52
-rw-r--r--libjava/javax/swing/event/PopupMenuEvent.java58
-rw-r--r--libjava/javax/swing/event/PopupMenuListener.java68
-rw-r--r--libjava/javax/swing/event/SwingPropertyChangeSupport.java248
-rw-r--r--libjava/javax/swing/event/TableColumnModelEvent.java104
-rw-r--r--libjava/javax/swing/event/TableColumnModelListener.java80
-rw-r--r--libjava/javax/swing/event/TableModelEvent.java204
-rw-r--r--libjava/javax/swing/event/TableModelListener.java55
-rw-r--r--libjava/javax/swing/event/TreeExpansionEvent.java88
-rw-r--r--libjava/javax/swing/event/TreeExpansionListener.java62
-rw-r--r--libjava/javax/swing/event/TreeModelEvent.java170
-rw-r--r--libjava/javax/swing/event/TreeModelListener.java74
-rw-r--r--libjava/javax/swing/event/TreeSelectionEvent.java189
-rw-r--r--libjava/javax/swing/event/TreeSelectionListener.java56
-rw-r--r--libjava/javax/swing/event/TreeWillExpandListener.java62
-rw-r--r--libjava/javax/swing/event/UndoableEditEvent.java89
-rw-r--r--libjava/javax/swing/event/UndoableEditListener.java57
43 files changed, 4303 insertions, 0 deletions
diff --git a/libjava/javax/swing/event/AncestorEvent.java b/libjava/javax/swing/event/AncestorEvent.java
new file mode 100644
index 0000000..a1f5ae1
--- /dev/null
+++ b/libjava/javax/swing/event/AncestorEvent.java
@@ -0,0 +1,140 @@
+/* AncestorEvent.java --
+ Copyright (C) 2002 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+package javax.swing.event;
+
+// Imports
+import javax.swing.*;
+import java.awt.*;
+
+/**
+ * Ancestor Event
+ * @author Andrew Selkirk
+ * @author Ronald Veldema
+ */
+public class AncestorEvent extends AWTEvent {
+
+ //-------------------------------------------------------------
+ // Constants --------------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * ANCESTOR_ADDED constant
+ */
+ public static int ANCESTOR_ADDED = 0;
+
+ /**
+ * ANCESTOR_MOVED constant
+ */
+ public static int ANCESTOR_MOVED = 1;
+
+ /**
+ * ANCESTOR_REMOVED constant
+ */
+ public static int ANCESTOR_REMOVED = 2;
+
+
+ //-------------------------------------------------------------
+ // Variables --------------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * Source component
+ */
+ private JComponent sourceComponent = null;
+
+ /**
+ * Ancestor
+ */
+ private Container ancestor = null;
+
+ /**
+ * Ancestor Parent
+ */
+ private Container ancestorParent = null;
+
+
+ //-------------------------------------------------------------
+ // Initialization ---------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * Constructor AncestorEvent
+ * @param source Source component
+ * @param id ID
+ * @param ancestor ancestor
+ * @param ancestorParent parent ancestor
+ */
+ public AncestorEvent(JComponent source, int id, Container ancestor,
+ Container ancestorParent) {
+ super(source, id);
+ this.sourceComponent = source;
+ this.ancestor = ancestor;
+ this.ancestorParent = ancestorParent;
+ } // AncestorEvent()
+
+
+ //-------------------------------------------------------------
+ // Methods ----------------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * Get ancestor
+ * @return ancestor
+ */
+ public Container getAncestor() {
+ return ancestor;
+ } // getAncestor()
+
+ /**
+ * Get ancestor parent
+ * @return ancestor parent
+ */
+ public Container getAncestorParent() {
+ return ancestorParent;
+ } // getAncestorParent()
+
+ /**
+ * Get component
+ * @return component
+ */
+ public JComponent getComponent() {
+ return sourceComponent;
+ } // getComponent()
+
+
+} // AncestorEvent
diff --git a/libjava/javax/swing/event/AncestorListener.java b/libjava/javax/swing/event/AncestorListener.java
new file mode 100644
index 0000000..acd10a6
--- /dev/null
+++ b/libjava/javax/swing/event/AncestorListener.java
@@ -0,0 +1,69 @@
+/* AncestorListener.java --
+ Copyright (C) 2002 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+package javax.swing.event;
+
+// Imports
+import java.util.EventListener;
+
+/**
+ * AncestorListener Interface
+ * @author Andrew Selkirk
+ * @author Ronald Veldema
+ */
+public interface AncestorListener extends EventListener {
+
+ /**
+ * Ancestor Added
+ * @param event Ancestor Event
+ */
+ public void ancestorAdded(AncestorEvent event);
+
+ /**
+ * Ancestor Removed
+ * @param event Ancestor Event
+ */
+ public void ancestorRemoved(AncestorEvent event);
+
+ /**
+ * Ancestor Moved
+ * @param event Ancestor Event
+ */
+ public void ancestorMoved(AncestorEvent event);
+
+
+} // AncestorListener
diff --git a/libjava/javax/swing/event/CaretEvent.java b/libjava/javax/swing/event/CaretEvent.java
new file mode 100644
index 0000000..876bf4f
--- /dev/null
+++ b/libjava/javax/swing/event/CaretEvent.java
@@ -0,0 +1,79 @@
+/* CaretEvent.java --
+ Copyright (C) 2002 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+package javax.swing.event;
+
+// Imports
+import java.util.EventObject;
+
+/**
+ * CaretEvent
+ * @author Andrew Selkirk
+ */
+public abstract class CaretEvent extends EventObject {
+
+ //-------------------------------------------------------------
+ // Initialization ---------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * CaretEvent constructor
+ * @param source Source object
+ */
+ public CaretEvent(Object source) {
+ super(source);
+ } // CaretEvent()
+
+
+ //-------------------------------------------------------------
+ // Methods ----------------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * Get caret location
+ * @returns the dot
+ */
+ public abstract int getDot();
+
+ /**
+ * Get mark
+ * @returns the mark
+ */
+ public abstract int getMark();
+
+
+} // CaretEvent
diff --git a/libjava/javax/swing/event/CaretListener.java b/libjava/javax/swing/event/CaretListener.java
new file mode 100644
index 0000000..fae3947
--- /dev/null
+++ b/libjava/javax/swing/event/CaretListener.java
@@ -0,0 +1,56 @@
+/* CaretListener.java --
+ Copyright (C) 2002 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+package javax.swing.event;
+
+// Imports
+import java.util.EventListener;
+
+/**
+ * CaretListener interface
+ * @author Andrew Selkirk
+ */
+public interface CaretListener extends EventListener {
+
+ /**
+ * Caret position has been updated
+ * @param event Caret Event
+ */
+ public void caretUpdate(CaretEvent event);
+
+
+} // CaretListener
diff --git a/libjava/javax/swing/event/CellEditorListener.java b/libjava/javax/swing/event/CellEditorListener.java
new file mode 100644
index 0000000..d589605
--- /dev/null
+++ b/libjava/javax/swing/event/CellEditorListener.java
@@ -0,0 +1,62 @@
+/* CellEditorListener.java --
+ Copyright (C) 2002 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+package javax.swing.event;
+
+// Imports
+import java.util.EventListener;
+
+/**
+ * CellEditorListener interface
+ * @author Andrew Selkirk
+ */
+public interface CellEditorListener extends EventListener {
+
+ /**
+ * Editing has been canceled
+ * @param event Change Event
+ */
+ public void editingCanceled(ChangeEvent event);
+
+ /**
+ * Editing has been stopped
+ * @param event Change Event
+ */
+ public void editingStopped(ChangeEvent event);
+
+
+} // CellEditorListener
diff --git a/libjava/javax/swing/event/ChangeEvent.java b/libjava/javax/swing/event/ChangeEvent.java
new file mode 100644
index 0000000..1d2d4e1
--- /dev/null
+++ b/libjava/javax/swing/event/ChangeEvent.java
@@ -0,0 +1,59 @@
+/* ChangeEvent.java --
+ Copyright (C) 2002 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+package javax.swing.event;
+
+// Imports
+import java.util.EventObject;
+
+/**
+ * ChangeEvent
+ * @author Andrew Selkirk
+ * @author Ronald Veldema
+ */
+public class ChangeEvent extends EventObject {
+
+ /**
+ * ChangeEvent constructor
+ * @param source Source object
+ */
+ public ChangeEvent(Object source) {
+ super(source);
+ } // ChangeEvent()
+
+
+} // ChangeEvent
diff --git a/libjava/javax/swing/event/ChangeListener.java b/libjava/javax/swing/event/ChangeListener.java
new file mode 100644
index 0000000..7117365
--- /dev/null
+++ b/libjava/javax/swing/event/ChangeListener.java
@@ -0,0 +1,57 @@
+/* ChangeListener.java --
+ Copyright (C) 2002 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+package javax.swing.event;
+
+// Imports
+import java.util.EventListener;
+
+/**
+ * ChangeListener interface
+ * @author Andrew Selkirk
+ * @author Ronald Veldema
+ */
+public interface ChangeListener extends EventListener {
+
+ /**
+ * State changed
+ * @param event Change Event
+ */
+ public void stateChanged(ChangeEvent event);
+
+
+} // ChangeListener
diff --git a/libjava/javax/swing/event/DocumentEvent.java b/libjava/javax/swing/event/DocumentEvent.java
new file mode 100644
index 0000000..6ce9dd5
--- /dev/null
+++ b/libjava/javax/swing/event/DocumentEvent.java
@@ -0,0 +1,185 @@
+/* DocumentEvent.java --
+ Copyright (C) 2002 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+package javax.swing.event;
+
+// Imports
+import javax.swing.text.*;
+
+/**
+ * DocumentEvent interface
+ * @author Andrew Selkirk
+ * @author Ronald Veldema
+ */
+public interface DocumentEvent {
+
+ //-------------------------------------------------------------
+ // Classes ----------------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * ElementChange interface
+ */
+ public static interface ElementChange {
+
+ //-------------------------------------------------------------
+ // Methods ----------------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * getIndex
+ * @returns int
+ */
+ public int getIndex();
+
+ /**
+ * getElement
+ * @returns Element
+ */
+ public Element getElement();
+
+ /**
+ * getChildrenRemoved
+ * @returns Element[]
+ */
+ public Element[] getChildrenRemoved();
+
+ /**
+ * getChildrenAdded
+ * @returns Element[]
+ */
+ public Element[] getChildrenAdded();
+
+
+ } // ElementChange
+
+ /**
+ * EventType
+ */
+ public static final class EventType {
+
+ //-------------------------------------------------------------
+ // Variables --------------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * INSERT
+ */
+ public static final EventType INSERT = new EventType("INSERT"); // TODO
+
+ /**
+ * REMOVE
+ */
+ public static final EventType REMOVE = new EventType("REMOVE"); // TODO
+
+ /**
+ * CHANGE
+ */
+ public static final EventType CHANGE = new EventType("CHANGE"); // TODO
+
+ /**
+ * typeString
+ */
+ private String type;
+
+
+ //-------------------------------------------------------------
+ // Initialization ---------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * Constructor EventType
+ * @param type TODO
+ */
+ private EventType(String type) {
+ this.type = type;
+ } // EventType()
+
+
+ //-------------------------------------------------------------
+ // Methods ----------------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * toString
+ * @returns String
+ */
+ public String toString() {
+ return type; // TODO
+ } // toString()
+
+
+ } // EventType
+
+
+ //-------------------------------------------------------------
+ // Methods ----------------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * getType
+ * @returns EventType
+ */
+ public EventType getType();
+
+ /**
+ * getOffset
+ * @returns int
+ */
+ public int getOffset();
+
+ /**
+ * getLength
+ * @returns int
+ */
+ public int getLength();
+
+ /**
+ * getDocument
+ * @returns Document
+ */
+ public Document getDocument();
+
+ /**
+ * getChange
+ * @param element TODO
+ * @returns ElementChange
+ */
+ public ElementChange getChange(Element element);
+
+
+} // DocumentEvent
diff --git a/libjava/javax/swing/event/DocumentListener.java b/libjava/javax/swing/event/DocumentListener.java
new file mode 100644
index 0000000..dbf7e3c
--- /dev/null
+++ b/libjava/javax/swing/event/DocumentListener.java
@@ -0,0 +1,68 @@
+/* DocumentListener.java --
+ Copyright (C) 2002 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+package javax.swing.event;
+
+import java.util.EventListener;
+
+/**
+ * DocumentListener interface
+ * @author Andrew Selkirk
+ * @author Ronald Veldema
+ */
+public interface DocumentListener extends EventListener {
+
+ /**
+ * Changed update
+ * @param event Document Event
+ */
+ public void changedUpdate(DocumentEvent event);
+
+ /**
+ * Insert update
+ * @param event Document Event
+ */
+ public void insertUpdate(DocumentEvent event);
+
+ /**
+ * Remove update
+ * @param event Document Event
+ */
+ public void removeUpdate(DocumentEvent event);
+
+
+} // DocumentListener
diff --git a/libjava/javax/swing/event/EventListenerList.java b/libjava/javax/swing/event/EventListenerList.java
new file mode 100644
index 0000000..5017aa5
--- /dev/null
+++ b/libjava/javax/swing/event/EventListenerList.java
@@ -0,0 +1,241 @@
+/* EventListenerList.java --
+ Copyright (C) 2002 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+package javax.swing.event;
+
+// Imports
+import java.io.Serializable;
+import java.util.EventListener;
+
+/**
+ * EventListenerList
+ * @author Andrew Selkirk
+ */
+public class EventListenerList extends Object
+ implements Serializable {
+
+ //-------------------------------------------------------------
+ // Variables --------------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * Listener list
+ */
+ protected Object[] listenerList = null;
+
+
+ //-------------------------------------------------------------
+ // Initialization ---------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * EventListenerList constructor
+ */
+ public EventListenerList() {
+ listenerList = new Object[0];
+ } // EventListenerList()
+
+
+ //-------------------------------------------------------------
+ // Methods ----------------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * Add Listener
+ * @param t Class type
+ * @param listener Listener to add
+ */
+ public void add(Class t, EventListener listener) {
+
+ // Variables
+ Object[] list;
+ int index;
+ Class checkClass;
+ EventListener checkListener;
+
+ // Create New list in anticipation that listener is not present
+ list = new Object[listenerList.length + 2];
+
+ // Search through list looking for listener
+ for (index = 0; index < listenerList.length; index += 2) {
+ checkClass = (Class) listenerList[index];
+ checkListener = (EventListener) listenerList[index + 1];
+ if (checkClass.equals(t) == true &&
+ checkListener.equals(listener) == true) {
+ return;
+ } // if
+ } // for
+
+ // Add Listener
+ list[listenerList.length] = t;
+ list[listenerList.length + 1] = listener;
+
+ // Replace Listener List
+ listenerList = list;
+
+ } // add()
+
+ /**
+ * Get the total number of listeners
+ * @return Count of listeners
+ */
+ public int getListenerCount() {
+ return (int) listenerList.length / 2;
+ } // getListenerCount
+
+ /**
+ * Get the number of listeners of a particular type
+ * @param t Class type to count
+ * @returns Count of the specified listeners
+ */
+ public int getListenerCount(Class t) {
+
+ // Variables
+ int index;
+ int count;
+ String name;
+
+ // Loop through entire list
+ count = 0;
+ name = t.getName();
+ for (index = 0; index < listenerList.length; index += 2) {
+ if (((Class) listenerList[index]).getName().equals(name) == true) {
+ count += 1;
+ }
+ } // for: index
+
+ // Return Count
+ return count;
+
+ } // getListenerCount()
+
+ /**
+ * Get a list of listenerType/listener pairs
+ * @returns Listener list
+ */
+ public Object[] getListenerList() {
+ return listenerList;
+ } // getListenerList()
+
+ /**
+ * Get list of listeners of a particular type
+ * @param c Class type
+ * @returns List of listeners of the specified type
+ */
+ public EventListener[] getListeners(Class c) {
+
+ // Variables
+ int count;
+ EventListener[] list;
+ String name;
+ int index;
+
+ // Get count of listeners
+ count = getListenerCount(c);
+
+ // Create Event Listener list
+ list = new EventListener[count];
+
+ // Construct List
+ count = 0;
+ name = c.getName();
+ for (index = 0; index < listenerList.length; index += 2) {
+ if (((Class) listenerList[index]).getName().equals(name) == true) {
+ list[count] = (EventListener) listenerList[index];
+ count += 1;
+ } // if
+ } // for: index
+
+ // Return List
+ return list;
+
+ } // getListeners()
+
+ /**
+ * Remove a listener
+ * @param t Class type
+ * @param listener Listener to be removed
+ */
+ public void remove(Class t, EventListener listener) {
+
+ // Variables
+ Object[] list;
+ int index;
+ Class checkClass;
+ EventListener checkListener;
+ int pointer;
+ boolean found;
+
+ // Create New list in anticipation that listener is not present
+ if (listenerList.length == 0) {
+ return;
+ } // if
+ list = new Object[listenerList.length - 2];
+
+ // Search through list looking for listener
+ pointer = 0;
+ found = false;
+ for (index = 0; index < listenerList.length - 2; index += 2) {
+ checkClass = (Class) listenerList[index];
+ checkListener = (EventListener) listenerList[index + 1];
+ if (checkClass.equals(t) == false ||
+ checkListener.equals(listener) == false) {
+ list[pointer] = checkClass;
+ list[pointer + 1] = checkListener;
+ pointer += 2;
+ } else {
+ found = true;
+ } // if
+ } // for
+
+ // Replace Listener List
+ if (found == true) {
+ listenerList = list;
+ } // if
+
+ } // remove()
+
+ /**
+ * Get a string representation
+ * @returns String representation
+ */
+ public String toString() {
+ return null; // TODO
+ } // toString()
+
+
+} // EventListenerList
diff --git a/libjava/javax/swing/event/HyperlinkEvent.java b/libjava/javax/swing/event/HyperlinkEvent.java
new file mode 100644
index 0000000..ae356bb
--- /dev/null
+++ b/libjava/javax/swing/event/HyperlinkEvent.java
@@ -0,0 +1,195 @@
+/* HyperlinkEvent.java --
+ Copyright (C) 2002 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+package javax.swing.event;
+
+// Imports
+import java.net.*;
+import java.util.*;
+
+/**
+ * HyperlinkEvent
+ * @author Andrew Selkirk
+ * @author Ronald Veldema
+ */
+public class HyperlinkEvent extends EventObject {
+
+ //-------------------------------------------------------------
+ // Classes ----------------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * EventType
+ */
+ public static final class EventType {
+
+ //-------------------------------------------------------------
+ // Variables --------------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * ENTERED
+ */
+ public static final EventType ENTERED = new EventType("ENTERED"); // TODO
+
+ /**
+ * EXITED
+ */
+ public static final EventType EXITED = new EventType("EXITED"); // TODO
+
+ /**
+ * ACTIVATED
+ */
+ public static final EventType ACTIVATED = new EventType("ACTIVATED"); // TODO
+
+ /**
+ * type
+ */
+ private String type;
+
+
+ //-------------------------------------------------------------
+ // Initialization ---------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * Constructor EventType
+ * @param type TODO
+ */
+ private EventType(String type) {
+ this.type = type;
+ } // EventType()
+
+
+ //-------------------------------------------------------------
+ // Methods ----------------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * toString
+ * @returns String
+ */
+ public String toString() {
+ return type; // TODO
+ } // toString()
+
+
+ } // EventType
+
+
+ //-------------------------------------------------------------
+ // Variables --------------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * type
+ */
+ private EventType type;
+
+ /**
+ * url
+ */
+ private URL url;
+
+ /**
+ * description
+ */
+ private String description;
+
+
+ //-------------------------------------------------------------
+ // Initialization ---------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * Constructor HyperlinkEvent
+ * @param source TODO
+ * @param type TODO
+ * @param url TODO
+ */
+ public HyperlinkEvent(Object source, EventType type, URL url) {
+ super(source);
+ this.type = type;
+ this.url = url;
+ this.description = null;
+ } // HyperlinkEvent()
+
+ /**
+ * Constructor HyperlinkEvent
+ * @param source TODO
+ * @param type TODO
+ * @param url TODO
+ * @param description TODO
+ */
+ public HyperlinkEvent(Object source, EventType type, URL url, String description) {
+ super(source);
+ this.type = type;
+ this.url = url;
+ this.description = null;
+ } // HyperlinkEvent()
+
+
+ //-------------------------------------------------------------
+ // Methods ----------------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * getURL
+ * @returns URL
+ */
+ public URL getURL() {
+ return url;
+ } // getURL()
+
+ /**
+ * getEventType
+ * @returns EventType
+ */
+ public EventType getEventType() {
+ return type;
+ } // getEventType()
+
+ /**
+ * getDescription
+ * @returns String
+ */
+ public String getDescription() {
+ return description;
+ } // getDescription()
+
+
+} // HyperlinkEvent
diff --git a/libjava/javax/swing/event/HyperlinkListener.java b/libjava/javax/swing/event/HyperlinkListener.java
new file mode 100644
index 0000000..6b6903b
--- /dev/null
+++ b/libjava/javax/swing/event/HyperlinkListener.java
@@ -0,0 +1,57 @@
+/* HyperlinkListener.java --
+ Copyright (C) 2002 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+package javax.swing.event;
+
+// Imports
+import java.util.EventListener;
+
+/**
+ * HyperlinkListener
+ * @author Andrew Selkirk
+ * @author Ronald Veldema
+ */
+public interface HyperlinkListener extends EventListener {
+
+ /**
+ * Hyperlink updated
+ * @param event Hyperlink Event
+ */
+ public void hyperlinkUpdate(HyperlinkEvent event);
+
+
+} // HyperlinkListener
diff --git a/libjava/javax/swing/event/InternalFrameAdapter.java b/libjava/javax/swing/event/InternalFrameAdapter.java
new file mode 100644
index 0000000..d314cadc
--- /dev/null
+++ b/libjava/javax/swing/event/InternalFrameAdapter.java
@@ -0,0 +1,112 @@
+/* InternalFrameAdapter.java --
+ Copyright (C) 2002 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+package javax.swing.event;
+
+/**
+ * InternalFrameAdapter
+ * @author Andrew Selkirk
+ */
+public class InternalFrameAdapter extends Object
+ implements InternalFrameListener {
+
+ //-------------------------------------------------------------
+ // Initialization ---------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * InternalFrameAdapter constructor
+ */
+ public InternalFrameAdapter() {
+ } // InternalFrameAdapter()
+
+
+ //-------------------------------------------------------------
+ // Interface: InternalFrameListener ---------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * Internal frame activated
+ * @param event Internal frame event
+ */
+ public void internalFrameActivated(InternalFrameEvent event) {
+ } // internalFrameActivated()
+
+ /**
+ * Internal frame closed
+ * @param event Internal frame event
+ */
+ public void internalFrameClosed(InternalFrameEvent event) {
+ } // internalFrameClosed()
+
+ /**
+ * Internal frame closing
+ * @param event Internal frame event
+ */
+ public void internalFrameClosing(InternalFrameEvent event) {
+ } // internalFrameClosing()
+
+ /**
+ * Internal frame deactivated
+ * @param event Internal frame event
+ */
+ public void internalFrameDeactivated(InternalFrameEvent event) {
+ } // internalFrameDeactivated()
+
+ /**
+ * Internal frame deiconified
+ * @param event Internal frame event
+ */
+ public void internalFrameDeiconified(InternalFrameEvent event) {
+ } // internalFrameDeiconified()
+
+ /**
+ * Internal frame iconified
+ * @param event Internal frame event
+ */
+ public void internalFrameIconified(InternalFrameEvent event) {
+ } // internalFrameIconified()
+
+ /**
+ * Internal frame opened
+ * @param event Internal frame event
+ */
+ public void internalFrameOpened(InternalFrameEvent event) {
+ } // internalFrameOpened()
+
+
+} // InternalFrameAdapter
diff --git a/libjava/javax/swing/event/InternalFrameEvent.java b/libjava/javax/swing/event/InternalFrameEvent.java
new file mode 100644
index 0000000..f974cb5
--- /dev/null
+++ b/libjava/javax/swing/event/InternalFrameEvent.java
@@ -0,0 +1,114 @@
+/* InternalFrameEvent.java --
+ Copyright (C) 2002 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+package javax.swing.event;
+
+// Imports
+import java.awt.AWTEvent;
+import javax.swing.JInternalFrame;
+
+/**
+ * InternalFrameEvent
+ * @author Andrew Selkirk
+ */
+public class InternalFrameEvent extends AWTEvent {
+
+ //-------------------------------------------------------------
+ // Constants --------------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * Internal frame activated event
+ */
+ public static int INTERNAL_FRAME_ACTIVATED = 25554;
+
+ /**
+ * Internal frame closed event
+ */
+ public static int INTERNAL_FRAME_CLOSED = 25551;
+
+ /**
+ * Internal frame closing event
+ */
+ public static int INTERNAL_FRAME_CLOSING = 25550;
+
+ /**
+ * Internal frame deactivated event
+ */
+ public static int INTERNAL_FRAME_DEACTIVATED = 25555;
+
+ /**
+ * Internal frame deiconifed event
+ */
+ public static int INTERNAL_FRAME_DEICONIFIED = 25553;
+
+ /**
+ * Internal frame frame first event
+ */
+ public static int INTERNAL_FRAME_FIRST = 25549;
+
+ /**
+ * Internal frame iconified event
+ */
+ public static int INTERNAL_FRAME_ICONIFIED = 2552;
+
+ /**
+ * Internal frame last event
+ */
+ public static int INTERNAL_FRAME_LAST = 25555;
+
+ /**
+ * Internal frame opened event
+ */
+ public static int INTERNAL_FRAME_OPENED = 25550;
+
+
+ //-------------------------------------------------------------
+ // Initialization ---------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * Constructor InternalFrameEvent
+ * @param source JInternalFrame
+ * @param id Event ID
+ */
+ public InternalFrameEvent(JInternalFrame source, int id) {
+ super(source, id);
+ } // InternalFrameEvent()
+
+
+} // InternalFrameEvent
diff --git a/libjava/javax/swing/event/InternalFrameListener.java b/libjava/javax/swing/event/InternalFrameListener.java
new file mode 100644
index 0000000..b9e1de3
--- /dev/null
+++ b/libjava/javax/swing/event/InternalFrameListener.java
@@ -0,0 +1,92 @@
+/* InternalFrameListener.java --
+ Copyright (C) 2002 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+package javax.swing.event;
+
+// Imports
+import java.util.EventListener;
+
+/**
+ * InternalFrameListener interface
+ * @author Andrew Selkirk
+ */
+public interface InternalFrameListener extends EventListener {
+
+ /**
+ * Internal frame activated
+ * @param event Internal Frame Event
+ */
+ public void internalFrameActivated(InternalFrameEvent event);
+
+ /**
+ * Internal frame closed
+ * @param event Internal Frame Event
+ */
+ public void internalFrameClosed(InternalFrameEvent event);
+
+ /**
+ * Internal frame closing
+ * @param event Internal Frame Event
+ */
+ public void internalFrameClosing(InternalFrameEvent event);
+
+ /**
+ * Internal frame deactivated
+ * @param event Internal Frame Event
+ */
+ public void internalFrameDeactivated(InternalFrameEvent event);
+
+ /**
+ * Internal frame deiconified
+ * @param event Internal Frame Event
+ */
+ public void internalFrameDeiconified(InternalFrameEvent event);
+
+ /**
+ * Internal frame iconified
+ * @param event Internal Frame Event
+ */
+ public void internalFrameIconified(InternalFrameEvent event);
+
+ /**
+ * Internal frame opened
+ * @param event Internal Frame Event
+ */
+ public void internalFrameOpened(InternalFrameEvent event);
+
+
+} // InternalFrameListener
diff --git a/libjava/javax/swing/event/ListDataEvent.java b/libjava/javax/swing/event/ListDataEvent.java
new file mode 100644
index 0000000..5849f7d
--- /dev/null
+++ b/libjava/javax/swing/event/ListDataEvent.java
@@ -0,0 +1,139 @@
+/* ListDataEvent.java --
+ Copyright (C) 2002 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+package javax.swing.event;
+
+// Imports
+import java.util.EventObject;
+
+/**
+ * ListDataEvent
+ * @author Andrew Selkirk
+ * @author Ronald Veldema
+ */
+public class ListDataEvent extends EventObject {
+
+ //-------------------------------------------------------------
+ // Constants --------------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * Contents changed
+ */
+ public static int CONTENTS_CHANGED = 0;
+
+ /**
+ * Internal added
+ */
+ public static int INTERVAL_ADDED = 1;
+
+ /**
+ * Interval removed
+ */
+ public static int INTERVAL_REMOVED = 2;
+
+
+ //-------------------------------------------------------------
+ // Variables --------------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * type
+ */
+ private int type = 0;
+
+ /**
+ * index0
+ */
+ private int index0 = 0;
+
+ /**
+ * index1
+ */
+ private int index1 = 0;
+
+
+ //-------------------------------------------------------------
+ // Initialization ---------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * Constructor ListDataEvent
+ * @param source Source
+ * @param type Event type
+ * @param index0 Bottom of range
+ * @param index1 Top of range
+ */
+ public ListDataEvent(Object source, int type,
+ int index0, int index1) {
+ super(source);
+ this.type = type;
+ this.index0 = index0;
+ this.index1 = index1;
+ } // ListDataEvent()
+
+
+ //-------------------------------------------------------------
+ // Methods ----------------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * getIndex0
+ * @returns index0
+ */
+ public int getIndex0() {
+ return index0;
+ } // getIndex0()
+
+ /**
+ * getIndex1
+ * @returns index1
+ */
+ public int getIndex1() {
+ return index1;
+ } // getIndex1()
+
+ /**
+ * Event type
+ * @returns Event type
+ */
+ public int getType() {
+ return type;
+ } // getType()
+
+
+} // ListDataEvent
diff --git a/libjava/javax/swing/event/ListDataListener.java b/libjava/javax/swing/event/ListDataListener.java
new file mode 100644
index 0000000..11c4089
--- /dev/null
+++ b/libjava/javax/swing/event/ListDataListener.java
@@ -0,0 +1,69 @@
+/* ListDataListener.java --
+ Copyright (C) 2002 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+package javax.swing.event;
+
+// Imports
+import java.util.EventListener;
+
+/**
+ * ListDataListener interface
+ * @author Andrew Selkirk
+ * @author Ronald Veldema
+ */
+public interface ListDataListener extends EventListener {
+
+ /**
+ * Contents Changed
+ * @param event ListDataEvent Event
+ */
+ public void contentsChanged(ListDataEvent event);
+
+ /**
+ * Interval Added
+ * @param event ListDataEvent Event
+ */
+ public void intervalAdded(ListDataEvent event);
+
+ /**
+ * Interval Removed
+ * @param event ListDataEvent Event
+ */
+ public void intervalRemoved(ListDataEvent event);
+
+
+} // ListDataListener
diff --git a/libjava/javax/swing/event/ListSelectionEvent.java b/libjava/javax/swing/event/ListSelectionEvent.java
new file mode 100644
index 0000000..c2289f0
--- /dev/null
+++ b/libjava/javax/swing/event/ListSelectionEvent.java
@@ -0,0 +1,126 @@
+/* ListSelectionEvent.java --
+ Copyright (C) 2002 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+package javax.swing.event;
+
+// Imports
+import java.util.EventObject;
+
+/**
+ * ListSelectionEvent
+ * @author Andrew Selkirk
+ * @author Ronald Veldema
+ */
+public class ListSelectionEvent extends EventObject {
+
+ //-------------------------------------------------------------
+ // Variables --------------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * firstIndex
+ */
+ private int firstIndex = 0;
+
+ /**
+ * lastIndex
+ */
+ private int lastIndex = 0;
+
+ /**
+ * isAdjusting
+ */
+ private boolean isAdjusting = false;
+
+ //-------------------------------------------------------------
+ // Initialization ---------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * Constructor ListSelectionEvent
+ * @param source Source
+ * @param firstIndex First index
+ * @param lastIndex Last index
+ * @param isAdjusting Is Adjusting?
+ */
+ public ListSelectionEvent(Object source, int firstIndex,
+ int lastIndex, boolean isAdjusting) {
+ super(source);
+ this.firstIndex = firstIndex;
+ this.lastIndex = lastIndex;
+ this.isAdjusting = isAdjusting;
+ } // ListSelectionEvent()
+
+
+ //-------------------------------------------------------------
+ // Methods ----------------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * getFirstIndex
+ * @returns firstIndex
+ */
+ public int getFirstIndex() {
+ return firstIndex;
+ } // getFirstIndex()
+
+ /**
+ * getLastIndex
+ * @returns lastIndex
+ */
+ public int getLastIndex() {
+ return lastIndex;
+ } // getLastIndex()
+
+ /**
+ * getValueIsAdjusting
+ * @returns isAdjusting
+ */
+ public boolean getValueIsAdjusting() {
+ return isAdjusting;
+ } // getValueIsAdjusting()
+
+ /**
+ * String representation
+ * @returns String representation
+ */
+ public String toString() {
+ return null; // TODO
+ } // toString()
+
+
+} // ListSelectionEvent
diff --git a/libjava/javax/swing/event/ListSelectionListener.java b/libjava/javax/swing/event/ListSelectionListener.java
new file mode 100644
index 0000000..3b9e73a
--- /dev/null
+++ b/libjava/javax/swing/event/ListSelectionListener.java
@@ -0,0 +1,57 @@
+/* ListSelectionListener.java --
+ Copyright (C) 2002 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+package javax.swing.event;
+
+// Imports
+import java.util.EventListener;
+
+/**
+ * ListSelectionListener interface
+ * @author Andrew Selkirk
+ * @author Ronald Veldema
+ */
+public interface ListSelectionListener extends EventListener {
+
+ /**
+ * Value changed
+ * @param event List Selection Event
+ */
+ public void valueChanged(ListSelectionEvent event);
+
+
+} // ListSelectionListener
diff --git a/libjava/javax/swing/event/MenuDragMouseEvent.java b/libjava/javax/swing/event/MenuDragMouseEvent.java
new file mode 100644
index 0000000..b1eb841
--- /dev/null
+++ b/libjava/javax/swing/event/MenuDragMouseEvent.java
@@ -0,0 +1,114 @@
+/* MenuDragMouseEvent.java --
+ Copyright (C) 2002 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+package javax.swing.event;
+
+// Imports
+import java.awt.event.MouseEvent;
+import java.awt.Component;
+import javax.swing.MenuElement;
+import javax.swing.MenuSelectionManager;
+
+/**
+ * MenuDragMouseEvent
+ * @author Andrew Selkirk
+ */
+public class MenuDragMouseEvent extends MouseEvent {
+
+ //-------------------------------------------------------------
+ // Variables --------------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * path
+ */
+ private MenuElement[] path = null;
+
+ /**
+ * manager
+ */
+ private MenuSelectionManager manager = null;
+
+
+ //-------------------------------------------------------------
+ // Initialization ---------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * Constructor MenuDragMouseEvent
+ * @param source Source
+ * @param id MouseEvent type
+ * @param when Time
+ * @param modifiers Key modifiers
+ * @param x Horizontal position
+ * @param y Vertical position
+ * @param clickCount Click count
+ * @param popupTrigger Popup trigger?
+ * @param path Path
+ * @param manager MenuSelectionManager
+ */
+ public MenuDragMouseEvent(Component source, int id, long when, int modifiers,
+ int x, int y, int clickCount, boolean popupTrigger,
+ MenuElement[] path, MenuSelectionManager manager) {
+ super(source, id, when, modifiers, x, y, clickCount, popupTrigger);
+ this.path = path;
+ this.manager = manager;
+ } // MenuDragMouseEvent()
+
+
+ //-------------------------------------------------------------
+ // Methods ----------------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * Get path
+ * @returns path
+ */
+ public MenuElement[] getPath() {
+ return path;
+ } // getPath()
+
+ /**
+ * Get menu selection manager
+ * @returns manager
+ */
+ public MenuSelectionManager getMenuSelectionManager() {
+ return manager;
+ } // getMenuSelectionManager()
+
+
+} // MenuDragMouseEvent
diff --git a/libjava/javax/swing/event/MenuDragMouseListener.java b/libjava/javax/swing/event/MenuDragMouseListener.java
new file mode 100644
index 0000000..42b80a0
--- /dev/null
+++ b/libjava/javax/swing/event/MenuDragMouseListener.java
@@ -0,0 +1,74 @@
+/* MenuDragMouseListener.java --
+ Copyright (C) 2002 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+package javax.swing.event;
+
+// Imports
+import java.util.EventListener;
+
+/**
+ * MenuDragMouseListener interface
+ * @author Andrew Selkirk
+ */
+public interface MenuDragMouseListener extends EventListener {
+
+ /**
+ * Menu drag mouse dragged
+ * @param event Menu Drag Mouse Event
+ */
+ public void menuDragMouseDragged(MenuDragMouseEvent event);
+
+ /**
+ * Menu drag mouse entered
+ * @param event Menu Drag Mouse Event
+ */
+ public void menuDragMouseEntered(MenuDragMouseEvent event);
+
+ /**
+ * Menu drag mouse exited
+ * @param event Menu Drag Mouse Event
+ */
+ public void menuDragMouseExited(MenuDragMouseEvent event);
+
+ /**
+ * Menu drag mouse released
+ * @param event Menu Drag Mouse Event
+ */
+ public void menuDragMouseReleased(MenuDragMouseEvent event);
+
+
+} // MenuDragMouseListener
diff --git a/libjava/javax/swing/event/MenuEvent.java b/libjava/javax/swing/event/MenuEvent.java
new file mode 100644
index 0000000..de81744
--- /dev/null
+++ b/libjava/javax/swing/event/MenuEvent.java
@@ -0,0 +1,59 @@
+/* MenuEvent.java --
+ Copyright (C) 2002 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+package javax.swing.event;
+
+// Imports
+import java.util.EventObject;
+
+/**
+ * MenuEvent
+ * @author Andrew Selkirk
+ * @author Ronald Veldema
+ */
+public class MenuEvent extends EventObject {
+
+ /**
+ * Constructor MenuEvent
+ * @param source Source object
+ */
+ public MenuEvent(Object source) {
+ super(source);
+ } // MenuEvent()
+
+
+} // MenuEvent
diff --git a/libjava/javax/swing/event/MenuKeyEvent.java b/libjava/javax/swing/event/MenuKeyEvent.java
new file mode 100644
index 0000000..3465336
--- /dev/null
+++ b/libjava/javax/swing/event/MenuKeyEvent.java
@@ -0,0 +1,112 @@
+/* MenuKeyEvent.java --
+ Copyright (C) 2002 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+package javax.swing.event;
+
+// Imports
+import java.awt.Component;
+import java.awt.event.KeyEvent;
+import javax.swing.MenuElement;
+import javax.swing.MenuSelectionManager;
+
+/**
+ * MenuKeyEvent
+ * @author Andrew Selkirk
+ */
+public class MenuKeyEvent extends KeyEvent {
+
+ //-------------------------------------------------------------
+ // Variables --------------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * path
+ */
+ private MenuElement[] path = null;
+
+ /**
+ * manager
+ */
+ private MenuSelectionManager manager = null;
+
+
+ //-------------------------------------------------------------
+ // Initialization ---------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * Constructor MenuKeyEvent
+ * @param source Source
+ * @param id KeyEvent ID
+ * @param when Time
+ * @param modifiers Modifier keys
+ * @param keyCode Key code
+ * @param keyhar Key char
+ * @param path Path
+ * @param manager MenuSelectionManager
+ */
+ public MenuKeyEvent(Component source, int id, long when, int modifiers,
+ int keyCode, char keyChar, MenuElement[] path,
+ MenuSelectionManager manager) {
+ super(source, id, when, modifiers, keyCode, keyChar);
+ this.path = path;
+ this.manager = manager;
+ } // MenuKeyEvent()
+
+
+ //-------------------------------------------------------------
+ // Methods ----------------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * getPath
+ * @returns path
+ */
+ public MenuElement[] getPath() {
+ return path;
+ } // getPath()
+
+ /**
+ * getMenuSelectionManager
+ * @returns MenuSelectionManager
+ */
+ public MenuSelectionManager getMenuSelectionManager() {
+ return manager;
+ } // getMenuSelectionManager()
+
+
+} // MenuKeyEvent
diff --git a/libjava/javax/swing/event/MenuKeyListener.java b/libjava/javax/swing/event/MenuKeyListener.java
new file mode 100644
index 0000000..cc16668
--- /dev/null
+++ b/libjava/javax/swing/event/MenuKeyListener.java
@@ -0,0 +1,68 @@
+/* MenuKeyListener.java --
+ Copyright (C) 2002 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+package javax.swing.event;
+
+// Imports
+import java.util.EventListener;
+
+/**
+ * MenuKeyListener interface
+ * @author Andrew Selkirk
+ */
+public interface MenuKeyListener extends EventListener {
+
+ /**
+ * Menu key pressed
+ * @param event Menu Key Event
+ */
+ public void menuKeyPressed(MenuKeyEvent event);
+
+ /**
+ * Menu key released
+ * @param event Menu Key Event
+ */
+ public void menuKeyReleased(MenuKeyEvent event);
+
+ /**
+ * Menu key typed
+ * @param event Menu Key Event
+ */
+ public void menuKeyTyped(MenuKeyEvent event);
+
+
+} // MenuKeyListener
diff --git a/libjava/javax/swing/event/MenuListener.java b/libjava/javax/swing/event/MenuListener.java
new file mode 100644
index 0000000..9cc66ae
--- /dev/null
+++ b/libjava/javax/swing/event/MenuListener.java
@@ -0,0 +1,68 @@
+/* MenuListener.java --
+ Copyright (C) 2002 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+package javax.swing.event;
+
+// Imports
+import java.util.EventListener;
+
+/**
+ * MenuListener interface
+ * @author Andrew Selkirk
+ */
+public interface MenuListener extends EventListener {
+
+ /**
+ * Menu canceled
+ * @param event Menu Event
+ */
+ public void menuCanceled(MenuEvent event);
+
+ /**
+ * Menu deselected
+ * @param event Menu Event
+ */
+ public void menuDeselected(MenuEvent event);
+
+ /**
+ * Menu selected
+ * @param event Menu Event
+ */
+ public void menuSelected(MenuEvent event);
+
+
+} // MenuListener
diff --git a/libjava/javax/swing/event/MouseInputAdapter.java b/libjava/javax/swing/event/MouseInputAdapter.java
new file mode 100644
index 0000000..087f01c
--- /dev/null
+++ b/libjava/javax/swing/event/MouseInputAdapter.java
@@ -0,0 +1,115 @@
+/* MouseInputAdapter.java --
+ Copyright (C) 2002 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+package javax.swing.event;
+
+// Imports
+import java.awt.event.MouseEvent;
+
+/**
+ * MouseInputAdapter
+ * @author Andrew Selkirk
+ */
+public class MouseInputAdapter extends Object
+ implements MouseInputListener {
+
+ //-------------------------------------------------------------
+ // Initialization ---------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * Constructor MouseInputAdapter
+ */
+ public MouseInputAdapter() {
+ } // MouseInputAdapter()
+
+
+ //-------------------------------------------------------------
+ // Methods ----------------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * Mouse clicked
+ * @param event Mouse event
+ */
+ public void mouseClicked(MouseEvent event) {
+ } // mouseClicked()
+
+ /**
+ * Mouse dragged
+ * @param event Mouse event
+ */
+ public void mouseDragged(MouseEvent event) {
+ } // mouseDragged()
+
+ /**
+ * Mouse entered
+ * @param event Mouse event
+ */
+ public void mouseEntered(MouseEvent event) {
+ } // mouseEntered()
+
+ /**
+ * Mouse exited
+ * @param event Mouse event
+ */
+ public void mouseExited(MouseEvent event) {
+ } // mouseExited()
+
+ /**
+ * Mouse moved
+ * @param event Mouse event
+ */
+ public void mouseMoved(MouseEvent event) {
+ } // mouseMoved()
+
+ /**
+ * Mouse pressed
+ * @param event Mouse event
+ */
+ public void mousePressed(MouseEvent event) {
+ } // mousePressed()
+
+ /**
+ * Mouse released
+ * @param event Mouse event
+ */
+ public void mouseReleased(MouseEvent event) {
+ } // mouseReleased()
+
+
+} // MouseInputAdapterEvent
diff --git a/libjava/javax/swing/event/MouseInputListener.java b/libjava/javax/swing/event/MouseInputListener.java
new file mode 100644
index 0000000..4dcd042
--- /dev/null
+++ b/libjava/javax/swing/event/MouseInputListener.java
@@ -0,0 +1,52 @@
+/* MouseInputListener.java --
+ Copyright (C) 2002 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+package javax.swing.event;
+
+// Imports
+import java.awt.event.MouseListener;
+import java.awt.event.MouseMotionListener;
+
+/**
+ * MouseInputListener interface
+ * @author Andrew Selkirk
+ */
+public interface MouseInputListener extends MouseListener,
+ MouseMotionListener {
+
+} // MouseInputListener
+
diff --git a/libjava/javax/swing/event/PopupMenuEvent.java b/libjava/javax/swing/event/PopupMenuEvent.java
new file mode 100644
index 0000000..b51f74b
--- /dev/null
+++ b/libjava/javax/swing/event/PopupMenuEvent.java
@@ -0,0 +1,58 @@
+/* PopupMenuEvent.java --
+ Copyright (C) 2002 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+package javax.swing.event;
+
+// Imports
+import java.util.EventObject;
+
+/**
+ * PopupMenuEvent
+ * @author Andrew Selkirk
+ */
+public class PopupMenuEvent extends EventObject {
+
+ /**
+ * Constructor PopupMenuEvent
+ * @param source Source
+ */
+ public PopupMenuEvent(Object source) {
+ super(source);
+ } // PopupMenuEvent()
+
+
+} // PopupMenuEvent
diff --git a/libjava/javax/swing/event/PopupMenuListener.java b/libjava/javax/swing/event/PopupMenuListener.java
new file mode 100644
index 0000000..36e0960
--- /dev/null
+++ b/libjava/javax/swing/event/PopupMenuListener.java
@@ -0,0 +1,68 @@
+/* PopupMenuListener.java --
+ Copyright (C) 2002 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+package javax.swing.event;
+
+// Imports
+import java.util.EventListener;
+
+/**
+ * PopupMenuListener interface
+ * @author Andrew Selkirk
+ */
+public interface PopupMenuListener extends EventListener {
+
+ /**
+ * Popup Menu Canceled
+ * @param event Popup Menu Event
+ */
+ public void popupMenuCanceled(PopupMenuEvent event);
+
+ /**
+ * Popup Menu will become invisible
+ * @param event Popup Menu Event
+ */
+ public void popupMenuWillBecomeInvisible(PopupMenuEvent event);
+
+ /**
+ * Popup Menu will become visible
+ * @param event Popup Menu Event
+ */
+ public void popupMenuWillBecomeVisible(PopupMenuEvent event);
+
+
+} // PopupMenuListener
diff --git a/libjava/javax/swing/event/SwingPropertyChangeSupport.java b/libjava/javax/swing/event/SwingPropertyChangeSupport.java
new file mode 100644
index 0000000..2bb0d64
--- /dev/null
+++ b/libjava/javax/swing/event/SwingPropertyChangeSupport.java
@@ -0,0 +1,248 @@
+/* SwingPropertyChangeSupport.java --
+ Copyright (C) 2002 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+package javax.swing.event;
+
+// Imports
+import java.beans.*;
+import java.io.*;
+import java.util.*;
+
+/**
+ * SwingPropertyChangeSupport
+ * @author Andrew Selkirk
+*/
+public final class SwingPropertyChangeSupport
+ extends PropertyChangeSupport {
+
+ //-------------------------------------------------------------
+ // Variables --------------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * listeners
+ */
+ private transient EventListenerList listeners;
+
+ /**
+ * propertyListeners
+ */
+ private Hashtable propertyListeners;
+
+ /**
+ * source
+ */
+ private Object source;
+
+
+ //-------------------------------------------------------------
+ // Initialization ---------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * Constructor SwingPropertyChangeSupport
+ * @param source TODO
+ */
+ public SwingPropertyChangeSupport(Object source) {
+ super(source);
+ this.source = source;
+ this.listeners = new EventListenerList();
+ this.propertyListeners = new Hashtable();
+ } // SwingPropertyChangeSupport()
+
+
+ //-------------------------------------------------------------
+ // Methods ----------------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * writeObject
+ * @param stream TODO
+ * @exception IOException TODO
+ */
+ private void writeObject(ObjectOutputStream stream) throws IOException {
+ // TODO
+ } // writeObject()
+
+ /**
+ * readObject
+ * @param stream TODO
+ * @exception ClassNotFoundException TODO
+ * @exception IOException TODO
+ */
+ private void readObject(ObjectInputStream stream) throws ClassNotFoundException, IOException {
+ // TODO
+ } // readObject()
+
+ /**
+ * addPropertyChangeListener
+ * @param listener TODO
+ */
+ public synchronized void addPropertyChangeListener(PropertyChangeListener listener) {
+ listeners.add(PropertyChangeListener.class, listener);
+ } // addPropertyChangeListener()
+
+ /**
+ * addPropertyChangeListener
+ * @param propertyName TODO
+ * @param listener TODO
+ */
+ public synchronized void addPropertyChangeListener(String propertyName, PropertyChangeListener listener) {
+
+ // Variables
+ EventListenerList list;
+
+ // Get Listener list
+ list = (EventListenerList) propertyListeners.get(propertyName);
+ if (list == null) {
+ list = new EventListenerList();
+ propertyListeners.put(propertyName, list);
+ } // if
+
+ // Add Listeners
+ list.add(PropertyChangeListener.class, listener);
+
+ } // addPropertyChangeListener()
+
+ /**
+ * removePropertyChangeListener
+ * @param listener TODO
+ */
+ public synchronized void removePropertyChangeListener(PropertyChangeListener listener) {
+ listeners.remove(PropertyChangeListener.class, listener);
+ } // removePropertyChangeListener()
+
+ /**
+ * removePropertyChangeListener
+ * @param propertyName TODO
+ * @param listener TODO
+ */
+ public synchronized void removePropertyChangeListener(String propertyName, PropertyChangeListener listener) {
+
+ // Variables
+ EventListenerList list;
+
+ // Get Listener list
+ list = (EventListenerList) propertyListeners.get(propertyName);
+ if (list == null) {
+ return;
+ } // if
+
+ // Remove Listeners
+ list.remove(PropertyChangeListener.class, listener);
+
+ // Clean up propertyListeners
+ if (list.getListenerCount() == 0) {
+ propertyListeners.remove(propertyName);
+ } // if
+
+ } // removePropertyChangeListener()
+
+ /**
+ * firePropertyChange
+ * @param propertyName TODO
+ * @param oldValue TODO
+ * @param newValue TODO
+ */
+ public void firePropertyChange(String propertyName, Object oldValue, Object newValue) {
+
+ // Variables
+ PropertyChangeEvent event;
+
+ // Create Property Change Event
+ event = new PropertyChangeEvent(source, propertyName, oldValue, newValue);
+
+ // Fire Event
+ firePropertyChange(event);
+
+ } // firePropertyChange()
+
+ /**
+ * firePropertyChange
+ * @param event TODO
+ */
+ public void firePropertyChange(PropertyChangeEvent event) {
+
+ // Variables
+ EventListenerList list;
+ EventListener[] listenerList;
+ int index;
+ PropertyChangeListener listener;
+
+ // Check Values if they are equal
+ if (event.getOldValue() == null || event.getNewValue() == null ||
+ event.getOldValue().equals(event.getNewValue()) == true) {
+ return;
+ } // if
+
+ // Process Main Listener List
+ listenerList = listeners.getListeners(PropertyChangeListener.class);
+ for (index = 0; index < listenerList.length; index++) {
+ listener = (PropertyChangeListener) listenerList[index];
+ listener.propertyChange(event);
+ } // for
+
+ // Process Property Listener List
+ list = (EventListenerList) propertyListeners.get(event.getPropertyName());
+ if (list != null) {
+ listenerList = list.getListeners(PropertyChangeListener.class);
+ for (index = 0; index < listenerList.length; index++) {
+ listener = (PropertyChangeListener) listenerList[index];
+ listener.propertyChange(event);
+ } // for
+ } // if
+
+ } // firePropertyChange()
+
+ /**
+ * hasListeners
+ * @param propertyName TODO
+ * @returns boolean
+ */
+ public synchronized boolean hasListeners(String propertyName) {
+
+ // Get Listener list
+ if (propertyListeners.get(propertyName) == null) {
+ return false;
+ } // if
+
+ return true;
+
+ } // hasListeners()
+
+
+} // SwingPropertyChangeSupport
diff --git a/libjava/javax/swing/event/TableColumnModelEvent.java b/libjava/javax/swing/event/TableColumnModelEvent.java
new file mode 100644
index 0000000..2525dfc
--- /dev/null
+++ b/libjava/javax/swing/event/TableColumnModelEvent.java
@@ -0,0 +1,104 @@
+/* TableColumnModelEvent.java --
+ Copyright (C) 2002 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+package javax.swing.event;
+
+// Imports
+import java.util.EventObject;
+import javax.swing.table.TableColumnModel;
+
+/**
+ * TableColumnModelEvent
+ * @author Andrew Selkirk
+ */
+public class TableColumnModelEvent extends EventObject {
+
+ //-------------------------------------------------------------
+ // Variables --------------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * fromIndex
+ */
+ protected int fromIndex = 0;
+
+ /**
+ * toIndex
+ */
+ protected int toIndex = 0;
+
+
+ //-------------------------------------------------------------
+ // Initialization ---------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * Constructor TableColumnModelEvent
+ * @param source Source TableColumnModel
+ * @param from From index
+ * @param to To index
+ */
+ public TableColumnModelEvent(TableColumnModel source,
+ int from, int to) {
+ super(source);
+ fromIndex = from;
+ toIndex = to;
+ } // TableColumnModelEvent()
+
+
+ //-------------------------------------------------------------
+ // Methods ----------------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * getFromIndex.
+ * @returns From index
+ */
+ public int getFromIndex() {
+ return fromIndex;
+ } // getFromIndex()
+
+ /**
+ * getToIndex.
+ * @returns To index
+ */
+ public int getToIndex() {
+ return toIndex;
+ } // getToIndex()
+
+
+} // TableColumnModelEvent
diff --git a/libjava/javax/swing/event/TableColumnModelListener.java b/libjava/javax/swing/event/TableColumnModelListener.java
new file mode 100644
index 0000000..8271507
--- /dev/null
+++ b/libjava/javax/swing/event/TableColumnModelListener.java
@@ -0,0 +1,80 @@
+/* TableColumnModelListener.java --
+ Copyright (C) 2002 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+package javax.swing.event;
+
+// Imports
+import java.util.EventListener;
+
+/**
+ * TableColumnModelListener interface
+ * @author Andrew Selkirk
+ */
+public interface TableColumnModelListener extends EventListener {
+
+ /**
+ * Column added
+ * @param event Table Column Model Event
+ */
+ public void columnAdded(TableColumnModelEvent event);
+
+ /**
+ * Column margin changed
+ * @param event Change Event
+ */
+ public void columnMarginChanged(ChangeEvent event);
+
+ /**
+ * Column moved
+ * @param event Table Column Model Event
+ */
+ public void columnMoved(TableColumnModelEvent event);
+
+ /**
+ * Column removed
+ * @param event Table Column Model Event
+ */
+ public void columnRemoved(TableColumnModelEvent event);
+
+ /**
+ * Column selection changed
+ * @param event List Selection Event
+ */
+ public void columnSelectionChanged(ListSelectionEvent event);
+
+
+} // TableColumnModelListener
diff --git a/libjava/javax/swing/event/TableModelEvent.java b/libjava/javax/swing/event/TableModelEvent.java
new file mode 100644
index 0000000..2316c28
--- /dev/null
+++ b/libjava/javax/swing/event/TableModelEvent.java
@@ -0,0 +1,204 @@
+/* TableModelEvent.java --
+ Copyright (C) 2002 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+package javax.swing.event;
+
+// Imports
+import java.util.EventObject;
+import javax.swing.table.TableModel;
+
+/**
+ * TableModelEvent
+ * @author Andrew Selkirk
+ */
+public class TableModelEvent extends EventObject {
+
+ //-------------------------------------------------------------
+ // Constants --------------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * ALL_COLUMNS
+ */
+ public static int ALL_COLUMNS = -1;
+
+ /**
+ * DELETE
+ */
+ public static int DELETE = -1;
+
+ /**
+ * HEADER_ROW
+ */
+ public static int HEADER_ROW = -1;
+
+ /**
+ * INSERT
+ */
+ public static int INSERT = 1;
+
+ /**
+ * UPDATE
+ */
+ public static int UPDATE = 0;
+
+
+ //-------------------------------------------------------------
+ // Variables --------------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * column
+ */
+ protected int column = 0;
+
+ /**
+ * firstRow
+ */
+ protected int firstRow = 0;
+
+ /**
+ * lastRow
+ */
+ protected int lastRow = 0;
+
+ /**
+ * type
+ */
+ protected int type = 0;
+
+
+ //-------------------------------------------------------------
+ // Initialization ---------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * Constructor TableModelEvent
+ * @param source Source object
+ */
+ public TableModelEvent(TableModel source) {
+ this(source, 0, source.getRowCount(), ALL_COLUMNS, UPDATE);
+ } // TableModelEvent()
+
+ /**
+ * Constructor TableModelEvent
+ * @param source Source table model
+ * @param row Updated row
+ */
+ public TableModelEvent(TableModel source, int row) {
+ this(source, row, row, ALL_COLUMNS, UPDATE);
+ } // TableModelEvent()
+
+ /**
+ * Constructor TableModelEvent
+ * @param source Source table model
+ * @param firstRow First row of update
+ * @param lastRow Last row of update
+ */
+ public TableModelEvent(TableModel source, int firstRow,
+ int lastRow) {
+ this(source, firstRow, lastRow, ALL_COLUMNS, UPDATE);
+ } // TableModelEvent()
+
+ /**
+ * Constructor TableModelEvent
+ * @param source Source table model
+ * @param firstRow First row of update
+ * @param lastRow Last row of update
+ * @param column Affected column
+ */
+ public TableModelEvent(TableModel source, int firstRow,
+ int lastRow, int column) {
+ this(source, firstRow, lastRow, column, UPDATE);
+ } // TableModelEvent()
+
+ /**
+ * Constructor TableModelEvent
+ * @param source Source table model
+ * @param firstRow First row of update
+ * @param lastRow Last row of update
+ * @param column Affected column
+ * @param type Type of change
+ */
+ public TableModelEvent(TableModel source, int firstRow,
+ int lastRow, int column, int type) {
+ super(source);
+ this.firstRow = firstRow;
+ this.lastRow = lastRow;
+ this.column = column;
+ this.type = type;
+ } // TableModelEvent()
+
+
+ //-------------------------------------------------------------
+ // Methods ----------------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * getColumn
+ * @returns column
+ */
+ public int getColumn() {
+ return column;
+ } // getColumn()
+
+ /**
+ * getFirstRow
+ * @returns row
+ */
+ public int getFirstRow() {
+ return firstRow;
+ } // getFirstRow()
+
+ /**
+ * getLastRow
+ * @returns row
+ */
+ public int getLastRow() {
+ return lastRow;
+ } // getLastRow()
+
+ /**
+ * Get type
+ * @returns Type of event
+ */
+ public int getType() {
+ return type;
+ } // getType()
+
+
+} // TableModelEvent
diff --git a/libjava/javax/swing/event/TableModelListener.java b/libjava/javax/swing/event/TableModelListener.java
new file mode 100644
index 0000000..5a4399e
--- /dev/null
+++ b/libjava/javax/swing/event/TableModelListener.java
@@ -0,0 +1,55 @@
+/* TableModelListener.java --
+ Copyright (C) 2002 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+package javax.swing.event;
+
+import java.util.EventListener;
+
+/**
+ * TableModelListener interface
+ * @author Andrew Selkirk
+ */
+public interface TableModelListener extends EventListener {
+
+ /**
+ * Table changed
+ * @param event Table Model Event
+ */
+ public void tableChanged(TableModelEvent event);
+
+
+} // TableModelListener
diff --git a/libjava/javax/swing/event/TreeExpansionEvent.java b/libjava/javax/swing/event/TreeExpansionEvent.java
new file mode 100644
index 0000000..ee8b7c0
--- /dev/null
+++ b/libjava/javax/swing/event/TreeExpansionEvent.java
@@ -0,0 +1,88 @@
+/* TreeExpansionEvent.java --
+ Copyright (C) 2002 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+package javax.swing.event;
+
+// Imports
+import java.util.EventObject;
+import javax.swing.tree.TreePath;
+
+/**
+ * TreeExpansionEvent
+ * @author Andrew Selkirk
+ */
+public class TreeExpansionEvent extends EventObject {
+
+ //-------------------------------------------------------------
+ // Variables --------------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * path
+ */
+ protected TreePath path = null;
+
+
+ //-------------------------------------------------------------
+ // Initialization ---------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * Constructor TreeExpansionEvent
+ * @param source Source object
+ * @param path Path
+ */
+ public TreeExpansionEvent(Object source, TreePath path) {
+ super(source);
+ this.path = path;
+ } // TreeExpansionEvent()
+
+
+ //-------------------------------------------------------------
+ // Methods ----------------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * getPath
+ * @returns Tree path
+ */
+ public TreePath getPath() {
+ return path;
+ } // getPath()
+
+
+} // TreeExpansionEvent
diff --git a/libjava/javax/swing/event/TreeExpansionListener.java b/libjava/javax/swing/event/TreeExpansionListener.java
new file mode 100644
index 0000000..3263f36
--- /dev/null
+++ b/libjava/javax/swing/event/TreeExpansionListener.java
@@ -0,0 +1,62 @@
+/* TreeExpansionListener.java --
+ Copyright (C) 2002 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+package javax.swing.event;
+
+// Imports
+import java.util.EventListener;
+
+/**
+ * TreeExpansionListener interface
+ * @author Andrew Selkirk
+ */
+public interface TreeExpansionListener extends EventListener {
+
+ /**
+ * Tree collapsed
+ * @param event Tree Expansion Event
+ */
+ public void treeCollapsed(TreeExpansionEvent event);
+
+ /**
+ * Tree expanded
+ * @param event Tree Expansion Event
+ */
+ public void treeExpanded(TreeExpansionEvent event);
+
+
+} // TreeExpansionListener
diff --git a/libjava/javax/swing/event/TreeModelEvent.java b/libjava/javax/swing/event/TreeModelEvent.java
new file mode 100644
index 0000000..625dfe0
--- /dev/null
+++ b/libjava/javax/swing/event/TreeModelEvent.java
@@ -0,0 +1,170 @@
+/* TreeModelEvent.java --
+ Copyright (C) 2002 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+package javax.swing.event;
+
+// Imports
+import java.util.EventObject;
+import javax.swing.tree.TreePath;
+
+/**
+ * TreeModelEvent
+ * @author Andrew Selkirk
+ */
+public class TreeModelEvent extends EventObject {
+
+ //-------------------------------------------------------------
+ // Variables --------------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * childIndices
+ */
+ protected int[] childIndices = new int[0];
+
+ /**
+ * children
+ */
+ protected Object[] children = new Object[0];
+
+ /**
+ * path
+ */
+ protected TreePath path = null;
+
+
+ //-------------------------------------------------------------
+ // Initialization ---------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * Constructor TreeModelEvent
+ * @param source Source object
+ * @param path
+ */
+ public TreeModelEvent(Object source, Object[] path) {
+ super(source);
+ this.path = new TreePath(path);
+ } // TreeModelEvent()
+
+ /**
+ * Constructor TreeModelEvent
+ * @param source Source object
+ * @param path path
+ * @param childIndices Child indices
+ * @param children Children
+ */
+ public TreeModelEvent(Object source, Object[] path,
+ int[] childIndices, Object[] children) {
+ super(source);
+ this.path = new TreePath(path);
+ this.childIndices = childIndices;
+ this.children = children;
+ } // TreeModelEvent()
+
+ /**
+ * Constructor TreeModelEvent
+ * @param source Source object
+ * @param path Path
+ */
+ public TreeModelEvent(Object source, TreePath path) {
+ super(source);
+ this.path = path;
+ } // TreeModelEvent()
+
+ /**
+ * Constructor TreeModelEvent
+ * @param source Source object
+ * @param path Path
+ * @param childIndices Child indices
+ * @param children Children
+ */
+ public TreeModelEvent(Object source, TreePath path,
+ int[] childIndices, Object[] children) {
+ super(source);
+ this.path = path;
+ this.childIndices = childIndices;
+ this.children = children;
+ } // TreeModelEvent()
+
+
+ //-------------------------------------------------------------
+ // Methods ----------------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * getChildIndices
+ * @returns child indices
+ */
+ public int[] getChildIndices() {
+ return childIndices;
+ } // getChildIndices()
+
+ /**
+ * getChildren
+ * @returns children
+ */
+ public Object[] getChildren() {
+ return children;
+ } // getChildren()
+
+ /**
+ * getPath
+ * @returns path
+ */
+ public Object[] getPath() {
+ return path.getPath();
+ } // getPath()
+
+ /**
+ * getTreePath
+ * @returns TreePath
+ */
+ public TreePath getTreePath() {
+ return path;
+ } // getTreePath()
+
+ /**
+ * String representation
+ * @returns String representation
+ */
+ public String toString() {
+ return null; // TODO
+ } // toString()
+
+
+} // TreeModelEvent
diff --git a/libjava/javax/swing/event/TreeModelListener.java b/libjava/javax/swing/event/TreeModelListener.java
new file mode 100644
index 0000000..f240d6b
--- /dev/null
+++ b/libjava/javax/swing/event/TreeModelListener.java
@@ -0,0 +1,74 @@
+/* TreeModelListener.java --
+ Copyright (C) 2002 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+package javax.swing.event;
+
+// Imports
+import java.util.EventListener;
+
+/**
+ * TreeModelListener interface
+ * @author Andrew Selkirk
+ */
+public interface TreeModelListener extends EventListener {
+
+ /**
+ * Tree nodes changed
+ * @param event Tree Model Event
+ */
+ public void treeNodesChanged(TreeModelEvent event);
+
+ /**
+ * Tree nodes inserted
+ * @param event Tree Model Event
+ */
+ public void treeNodesInserted(TreeModelEvent event);
+
+ /**
+ * Tree nodes removed
+ * @param event Tree Model Event
+ */
+ public void treeNodesRemoved(TreeModelEvent event);
+
+ /**
+ * Tree structured changed
+ * @param event Tree Model Event
+ */
+ public void treeStructureChanged(TreeModelEvent event);
+
+
+} // TreeModelListener
diff --git a/libjava/javax/swing/event/TreeSelectionEvent.java b/libjava/javax/swing/event/TreeSelectionEvent.java
new file mode 100644
index 0000000..f53730f
--- /dev/null
+++ b/libjava/javax/swing/event/TreeSelectionEvent.java
@@ -0,0 +1,189 @@
+/* TreeSelectionEvent.java --
+ Copyright (C) 2002 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+package javax.swing.event;
+
+// Imports
+import java.util.*;
+import javax.swing.tree.*;
+
+/**
+ * TreeSelectionEvent
+ * @author Andrew Selkirk
+ * @version 1.0
+ */
+public class TreeSelectionEvent extends EventObject {
+
+ //-------------------------------------------------------------
+ // Variables --------------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * paths
+ */
+ protected TreePath[] paths;
+
+ /**
+ * areNew
+ */
+ protected boolean[] areNew;
+
+ /**
+ * oldLeadSelectionPath
+ */
+ protected TreePath oldLeadSelectionPath;
+
+ /**
+ * newLeadSelectionPath
+ */
+ protected TreePath newLeadSelectionPath;
+
+
+ //-------------------------------------------------------------
+ // Initialization ---------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * Constructor TreeSelectionEvent
+ * @param source TODO
+ * @param paths TODO
+ * @param areNew TODO
+ * @param oldLeadSelectionPath TODO
+ * @param newLeadSelectionPath TODO
+ */
+ public TreeSelectionEvent(Object source, TreePath[] paths,
+ boolean[] areNew, TreePath oldLeadSelectionPath,
+ TreePath newLeadSelectionPath) {
+ super(source);
+ this.paths = paths;
+ this.areNew = areNew;
+ this.oldLeadSelectionPath = oldLeadSelectionPath;
+ this.newLeadSelectionPath = newLeadSelectionPath;
+ } // TreeSelectionEvent()
+
+ /**
+ * Constructor TreeSelectionEvent
+ * @param source TODO
+ * @param paths TODO
+ * @param areNew TODO
+ * @param oldLeadSelectionPath TODO
+ * @param newLeadSelectionPath TODO
+ */
+ public TreeSelectionEvent(Object source, TreePath path,
+ boolean isNew, TreePath oldLeadSelectionPath,
+ TreePath newLeadSelectionPath) {
+ super(source);
+//TODO this.paths = new TreePath[1]{path};
+//TODO this.areNew = new boolean[1]{isNew};
+ this.oldLeadSelectionPath = oldLeadSelectionPath;
+ this.newLeadSelectionPath = newLeadSelectionPath;
+ } // TreeSelectionEvent()
+
+
+ //-------------------------------------------------------------
+ // Methods ----------------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * getPath
+ * @returns TreePath
+ */
+ public TreePath getPath() {
+ return paths[0];
+ } // getPath()
+
+ /**
+ * getPaths
+ * @returns TreePath[]
+ */
+ public TreePath[] getPaths() {
+ return paths;
+ } // getPaths()
+
+ /**
+ * isAddedPath
+ * @returns boolean
+ */
+ public boolean isAddedPath() {
+ return false; // TODO
+ } // isAddedPath()
+
+ /**
+ * isAddedPath
+ * @param path TODO
+ * @returns boolean
+ */
+ public boolean isAddedPath(TreePath path) {
+ return false; // TODO
+ } // isAddedPath()
+
+ /**
+ * isAddedPath
+ * @param index TODO
+ * @returns boolean
+ */
+ public boolean isAddedPath(int index) {
+ return false; // TODO
+ } // isAddedPath()
+
+ /**
+ * getOldLeadSelectionPath
+ * @returns TreePath
+ */
+ public TreePath getOldLeadSelectionPath() {
+ return oldLeadSelectionPath;
+ } // getOldLeadSelectionPath()
+
+ /**
+ * getNewLeadSelectionPath
+ * @returns TreePath
+ */
+ public TreePath getNewLeadSelectionPath() {
+ return newLeadSelectionPath;
+ } // getNewLeadSelectionPath()
+
+ /**
+ * cloneWithSource
+ * @param source TODO
+ * @returns Object
+ */
+ public Object cloneWithSource(Object source) {
+ return null; // TODO
+ } // cloneWithSource()
+
+
+} // TreeSelectionEvent
diff --git a/libjava/javax/swing/event/TreeSelectionListener.java b/libjava/javax/swing/event/TreeSelectionListener.java
new file mode 100644
index 0000000..1657b22
--- /dev/null
+++ b/libjava/javax/swing/event/TreeSelectionListener.java
@@ -0,0 +1,56 @@
+/* TreeSelectionListener.java --
+ Copyright (C) 2002 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+package javax.swing.event;
+
+// Imports
+import java.util.EventListener;
+
+/**
+ * TreeSelectionListener interface
+ * @author Andrew Selkirk
+ */
+public interface TreeSelectionListener extends EventListener {
+
+ /**
+ * Value changed
+ * @param event Tree Selection Event
+ */
+ public void valueChanged(TreeSelectionEvent event);
+
+
+} // TreeSelectionListener
diff --git a/libjava/javax/swing/event/TreeWillExpandListener.java b/libjava/javax/swing/event/TreeWillExpandListener.java
new file mode 100644
index 0000000..c70c6c6
--- /dev/null
+++ b/libjava/javax/swing/event/TreeWillExpandListener.java
@@ -0,0 +1,62 @@
+/* TreeWillExpandListener.java --
+ Copyright (C) 2002 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+package javax.swing.event;
+
+// Imports
+import java.util.EventListener;
+
+/**
+ * TreeWillExpandListener interface
+ * @author Andrew Selkirk
+ */
+public interface TreeWillExpandListener extends EventListener {
+
+ /**
+ * Tree will collapse
+ * @param event Tree Expansion Event
+ */
+ public void treeWillCollapse(TreeExpansionEvent event);
+
+ /**
+ * Tree will expand
+ * @param event Tree Expansion Event
+ */
+ public void treeWillExpand(TreeExpansionEvent event);
+
+
+} // TreeWillExpandListener
diff --git a/libjava/javax/swing/event/UndoableEditEvent.java b/libjava/javax/swing/event/UndoableEditEvent.java
new file mode 100644
index 0000000..43ed56a
--- /dev/null
+++ b/libjava/javax/swing/event/UndoableEditEvent.java
@@ -0,0 +1,89 @@
+/* UndoableEditEvent.java --
+ Copyright (C) 2002 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+package javax.swing.event;
+
+// Imports
+import java.util.*;
+import javax.swing.undo.*;
+
+/**
+ * UndoableEditEvent
+ * @author Andrew Selkirk
+ * @author Ronald Veldema
+ */
+public class UndoableEditEvent extends EventObject {
+
+ //-------------------------------------------------------------
+ // Variables --------------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * edit
+ */
+ private UndoableEdit edit;
+
+
+ //-------------------------------------------------------------
+ // Initialization ---------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * Constructor UndoableEditEvent
+ * @param source TODO
+ * @param edit TODO
+ */
+ public UndoableEditEvent(Object source, UndoableEdit edit) {
+ super(source);
+ this.edit = edit;
+ } // UndoableEditEvent()
+
+
+ //-------------------------------------------------------------
+ // Methods ----------------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * getEdit
+ * @returns UndoableEdit
+ */
+ public UndoableEdit getEdit() {
+ return edit;
+ } // getEdit()
+
+
+} // UndoableEditEvent
diff --git a/libjava/javax/swing/event/UndoableEditListener.java b/libjava/javax/swing/event/UndoableEditListener.java
new file mode 100644
index 0000000..4078407
--- /dev/null
+++ b/libjava/javax/swing/event/UndoableEditListener.java
@@ -0,0 +1,57 @@
+/* UndoableEditListener.java --
+ Copyright (C) 2002 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+package javax.swing.event;
+
+// Imports
+import java.util.EventListener;
+
+/**
+ * UndoableEditListener interface
+ * @author Andrew Selkirk
+ * @author Ronald Veldema
+ */
+public interface UndoableEditListener extends EventListener {
+
+ /**
+ * Undoable edit has happened
+ * @param event Undoable Edit Event
+ */
+ public void undoableEditHappened(UndoableEditEvent event);
+
+
+} // UndoableEditListener