summaryrefslogtreecommitdiff
path: root/libjava/javax/swing/plaf
diff options
context:
space:
mode:
authorbryce <bryce@138bc75d-0d04-0410-961f-82ee72b054a4>2002-08-09 04:26:17 +0000
committerbryce <bryce@138bc75d-0d04-0410-961f-82ee72b054a4>2002-08-09 04:26:17 +0000
commit71946bc3b406beb3d1fb9b447204e4236d645c43 (patch)
treecdf9958b411887bead2263ea8ef0bdfc8eae6319 /libjava/javax/swing/plaf
parent0fc014c9ce8232f14be66144bf5a4c08a3e5ffe7 (diff)
downloadgcc-71946bc3b406beb3d1fb9b447204e4236d645c43.tar.gz
AWT/Swing merge from GNU Classpath.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@56147 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libjava/javax/swing/plaf')
-rw-r--r--libjava/javax/swing/plaf/ActionMapUIResource.java62
-rw-r--r--libjava/javax/swing/plaf/BorderUIResource.java275
-rw-r--r--libjava/javax/swing/plaf/ButtonUI.java5
-rw-r--r--libjava/javax/swing/plaf/ColorChooserUI.java59
-rw-r--r--libjava/javax/swing/plaf/ColorUIResource.java24
-rw-r--r--libjava/javax/swing/plaf/ComboBoxUI.java88
-rw-r--r--libjava/javax/swing/plaf/ComponentInputMapUIResource.java64
-rw-r--r--libjava/javax/swing/plaf/ComponentUI.java88
-rw-r--r--libjava/javax/swing/plaf/DesktopIconUI.java59
-rw-r--r--libjava/javax/swing/plaf/DesktopPaneUI.java59
-rw-r--r--libjava/javax/swing/plaf/DimensionUIResource.java12
-rw-r--r--libjava/javax/swing/plaf/FileChooserUI.java111
-rw-r--r--libjava/javax/swing/plaf/FontUIResource.java16
-rw-r--r--libjava/javax/swing/plaf/IconUIResource.java25
-rw-r--r--libjava/javax/swing/plaf/InputMapUIResource.java62
-rw-r--r--libjava/javax/swing/plaf/InsetsUIResource.java12
-rw-r--r--libjava/javax/swing/plaf/InternalFrameUI.java59
-rw-r--r--libjava/javax/swing/plaf/LabelUI.java6
-rw-r--r--libjava/javax/swing/plaf/ListUI.java6
-rw-r--r--libjava/javax/swing/plaf/MenuBarUI.java59
-rw-r--r--libjava/javax/swing/plaf/MenuItemUI.java59
-rw-r--r--libjava/javax/swing/plaf/OptionPaneUI.java6
-rw-r--r--libjava/javax/swing/plaf/PanelUI.java6
-rw-r--r--libjava/javax/swing/plaf/PopupMenuUI.java76
-rw-r--r--libjava/javax/swing/plaf/ProgressBarUI.java59
-rw-r--r--libjava/javax/swing/plaf/RootPaneUI.java59
-rw-r--r--libjava/javax/swing/plaf/ScrollBarUI.java59
-rw-r--r--libjava/javax/swing/plaf/ScrollPaneUI.java59
-rw-r--r--libjava/javax/swing/plaf/SeparatorUI.java59
-rw-r--r--libjava/javax/swing/plaf/SliderUI.java59
-rw-r--r--libjava/javax/swing/plaf/SplitPaneUI.java111
-rw-r--r--libjava/javax/swing/plaf/TabbedPaneUI.java23
-rw-r--r--libjava/javax/swing/plaf/TableHeaderUI.java59
-rw-r--r--libjava/javax/swing/plaf/TableUI.java59
-rw-r--r--libjava/javax/swing/plaf/TextUI.java26
-rw-r--r--libjava/javax/swing/plaf/ToolBarUI.java59
-rw-r--r--libjava/javax/swing/plaf/ToolTipUI.java59
-rw-r--r--libjava/javax/swing/plaf/TreeUI.java6
-rw-r--r--libjava/javax/swing/plaf/UIResource.java55
-rw-r--r--libjava/javax/swing/plaf/ViewportUI.java6
-rw-r--r--libjava/javax/swing/plaf/basic/BasicBorders.java42
-rw-r--r--libjava/javax/swing/plaf/basic/BasicButtonUI.java177
-rw-r--r--libjava/javax/swing/plaf/basic/BasicCheckBoxUI.java88
-rw-r--r--libjava/javax/swing/plaf/basic/BasicDefaults.java82
-rw-r--r--libjava/javax/swing/plaf/basic/BasicGraphicsUtils.java77
-rw-r--r--libjava/javax/swing/plaf/basic/BasicIconFactory.java45
-rw-r--r--libjava/javax/swing/plaf/basic/BasicLabelUI.java158
-rw-r--r--libjava/javax/swing/plaf/basic/BasicListUI.java132
-rw-r--r--libjava/javax/swing/plaf/basic/BasicLookAndFeel.java927
-rw-r--r--libjava/javax/swing/plaf/basic/BasicOptionPaneUI.java103
-rw-r--r--libjava/javax/swing/plaf/basic/BasicPanelUI.java21
-rw-r--r--libjava/javax/swing/plaf/basic/BasicRadioButtonUI.java127
-rw-r--r--libjava/javax/swing/plaf/basic/BasicScrollPaneUI.java66
-rw-r--r--libjava/javax/swing/plaf/basic/BasicTabbedPaneUI.java64
-rw-r--r--libjava/javax/swing/plaf/basic/BasicTextUI.java126
-rw-r--r--libjava/javax/swing/plaf/basic/BasicToggleButtonUI.java90
-rw-r--r--libjava/javax/swing/plaf/basic/BasicTreeUI.java7
-rw-r--r--libjava/javax/swing/plaf/basic/BasicViewportUI.java33
58 files changed, 4480 insertions, 0 deletions
diff --git a/libjava/javax/swing/plaf/ActionMapUIResource.java b/libjava/javax/swing/plaf/ActionMapUIResource.java
new file mode 100644
index 00000000000..cd9771b2dbb
--- /dev/null
+++ b/libjava/javax/swing/plaf/ActionMapUIResource.java
@@ -0,0 +1,62 @@
+/* ActionMapUIResource.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.plaf;
+
+// Imports
+import javax.swing.*;
+
+/**
+ * ActionMapUIResource
+ * @author Andrew Selkirk
+ * @version 1.0
+ */
+public class ActionMapUIResource extends ActionMap implements UIResource {
+
+ //-------------------------------------------------------------
+ // Initialization ---------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * Constructor ActionMapUIResource
+ */
+ public ActionMapUIResource() {
+ // TODO
+ } // ActionMapUIResource()
+
+
+} // ActionMapUIResource
diff --git a/libjava/javax/swing/plaf/BorderUIResource.java b/libjava/javax/swing/plaf/BorderUIResource.java
new file mode 100644
index 00000000000..2ec1fe59d0d
--- /dev/null
+++ b/libjava/javax/swing/plaf/BorderUIResource.java
@@ -0,0 +1,275 @@
+/* BorderUIResource.java
+ Copyright (C) 1999 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.plaf;
+import javax.swing.border.*;
+import javax.swing.Icon;
+import java.io.Serializable;
+import java.awt.Component;
+import java.awt.Graphics;
+import java.awt.Insets;
+import java.awt.Font;
+import java.awt.Color;
+
+/**
+ * @serial
+ * @serialField delegate Border the <code>Border</code> wrapped
+ * @author Brian Jones
+ */
+public class BorderUIResource
+ extends Object
+ implements Border, UIResource, Serializable
+{
+ private Border delegate;
+
+ /**
+ * Creates a <code>UIResource</code> wrapper for a <code>Border</code>
+ * object.
+ *
+ * @param delegate the border to be wrapped
+ */
+ public BorderUIResource(Border delegate)
+ {
+ this.delegate = delegate;
+ }
+
+ /**
+ */
+ public static Border getEtchedBorderUIResource() {
+ return null;
+ }
+
+ /**
+ */
+ public static Border getLoweredBevelBorderUIResource() {
+ return null;
+ }
+
+ /**
+ */
+ public static Border getRaisedBevelBorderUIResource() {
+ return null;
+ }
+
+ /**
+ */
+ public static Border getBlackLineBorderUIResource() {
+ return null;
+ }
+
+ /**
+ */
+ public void paintBorder(Component c, Graphics g, int x, int y,
+ int width, int height) { }
+
+ /**
+ */
+ public Insets getBorderInsets(Component c) {
+ return null;
+ }
+
+ /**
+ */
+ public boolean isBorderOpaque() {
+ return false;
+ }
+
+ /**
+ * @serial
+ */
+ public static class BevelBorderUIResource
+ extends BevelBorder
+ implements UIResource, Serializable
+ {
+ public BevelBorderUIResource(int bevelType)
+ {
+
+ }
+
+ public BevelBorderUIResource(int bevelType,
+ Color highlight,
+ Color shadow)
+ {
+ this(bevelType);
+ }
+ public BevelBorderUIResource(int bevelType,
+ Color highlightOuter,
+ Color highlightInner,
+ Color shadowOuter,
+ Color shadowInner)
+ {
+ this(bevelType);
+ }
+ }
+
+ /**
+ * @serial
+ */
+ public static class CompoundBorderUIResource
+ extends CompoundBorder
+ implements UIResource, Serializable
+ {
+ public CompoundBorderUIResource(Border outsideBorder,
+ Border insideBorder)
+ {
+
+ }
+ }
+
+ /**
+ * @serial
+ */
+ public static class EmptyBorderUIResource
+ extends EmptyBorder
+ implements UIResource, Serializable
+ {
+ public EmptyBorderUIResource(int top, int left, int bottom, int right)
+ {
+ this(new Insets(top,left,bottom,right));
+ }
+
+ public EmptyBorderUIResource(Insets insets)
+ {
+
+ }
+ }
+
+ /**
+ * @serial
+ */
+ public static class EtchedBorderUIResource
+ extends EtchedBorder
+ implements UIResource, Serializable
+ {
+ public EtchedBorderUIResource() { }
+ public EtchedBorderUIResource(int etchType)
+ {
+
+ }
+ public EtchedBorderUIResource(Color highlight, Color shadow)
+ {
+
+ }
+ public EtchedBorderUIResource(int etchType, Color highlight,
+ Color shadow)
+ {
+
+ }
+
+ }
+
+ /**
+ * @serial
+ */
+ public static class LineBorderUIResource
+ extends LineBorder
+ implements UIResource, Serializable
+ {
+ public LineBorderUIResource(Color color)
+ {
+
+ }
+ public LineBorderUIResource(Color color,
+ int thickness)
+ {
+
+ }
+ }
+
+ /**
+ * @serial
+ */
+ public static class MatteBorderUIResource
+ extends MatteBorder
+ implements UIResource, Serializable
+ {
+ public MatteBorderUIResource(int top, int left, int bottom,
+ int right, Color color)
+ {
+
+ }
+ public MatteBorderUIResource(int top, int left, int bottom,
+ int right, Icon tileIcon)
+ {
+
+ }
+ public MatteBorderUIResource(Icon tileIcon)
+ {
+
+ }
+ }
+
+ /**
+ * @serial
+ */
+ public static class TitledBorderUIResource
+ extends TitledBorder
+ implements UIResource, Serializable
+ {
+ TitledBorderUIResource(String title)
+ {
+
+ }
+ TitledBorderUIResource(Border border)
+ {
+
+ }
+ TitledBorderUIResource(Border border, String title)
+ {
+
+ }
+ TitledBorderUIResource(Border border, String title,
+ int titleJustification, int titlePosition)
+ {
+
+ }
+ TitledBorderUIResource(Border border, String title,
+ int titleJustification, int titlePosition,
+ Font titleFont)
+ {
+
+ }
+ TitledBorderUIResource(Border border, String title,
+ int titleJustification, int titlePosition,
+ Font titleFont, Color titleColor)
+ {
+
+ }
+ }
+}
+
diff --git a/libjava/javax/swing/plaf/ButtonUI.java b/libjava/javax/swing/plaf/ButtonUI.java
new file mode 100644
index 00000000000..74fd1924416
--- /dev/null
+++ b/libjava/javax/swing/plaf/ButtonUI.java
@@ -0,0 +1,5 @@
+package javax.swing.plaf;
+
+public class ButtonUI extends ComponentUI
+{
+}
diff --git a/libjava/javax/swing/plaf/ColorChooserUI.java b/libjava/javax/swing/plaf/ColorChooserUI.java
new file mode 100644
index 00000000000..e2a839ac28d
--- /dev/null
+++ b/libjava/javax/swing/plaf/ColorChooserUI.java
@@ -0,0 +1,59 @@
+/* ColorChooserUI.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.plaf;
+
+/**
+ * ColorChooserUI
+ * @author Andrew Selkirk
+ * @version 1.0
+ */
+public abstract class ColorChooserUI extends ComponentUI {
+
+ //-------------------------------------------------------------
+ // Initialization ---------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * Constructor ColorChooserUI
+ */
+ public ColorChooserUI() {
+ // TODO
+ } // ColorChooserUI()
+
+
+} // ColorChooserUI
diff --git a/libjava/javax/swing/plaf/ColorUIResource.java b/libjava/javax/swing/plaf/ColorUIResource.java
new file mode 100644
index 00000000000..86ac7b1e5a2
--- /dev/null
+++ b/libjava/javax/swing/plaf/ColorUIResource.java
@@ -0,0 +1,24 @@
+package javax.swing.plaf;
+import java.awt.Color;
+/**
+ * STUBBED
+ */
+public class ColorUIResource extends Color implements UIResource
+{
+ public ColorUIResource(Color c)
+ {
+ super(c.getRGB());
+ }
+ public ColorUIResource(float r, float g, float b)
+ {
+ super(r, g, b, 1.0f);
+ }
+ public ColorUIResource(int rgb)
+ {
+ super(rgb, false);
+ }
+ public ColorUIResource(int r, int g, int b)
+ {
+ super(r, g, b, 255);
+ }
+} // class ColorUIResource
diff --git a/libjava/javax/swing/plaf/ComboBoxUI.java b/libjava/javax/swing/plaf/ComboBoxUI.java
new file mode 100644
index 00000000000..9c045e6f8c3
--- /dev/null
+++ b/libjava/javax/swing/plaf/ComboBoxUI.java
@@ -0,0 +1,88 @@
+/* ComboBoxUI.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.plaf;
+
+// Imports
+import javax.swing.*;
+
+/**
+ * ComboBoxUI
+ * @author Andrew Selkirk
+ * @version 1.0
+ */
+public abstract class ComboBoxUI extends ComponentUI {
+
+ //-------------------------------------------------------------
+ // Initialization ---------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * Constructor ComboBoxUI
+ */
+ public ComboBoxUI() {
+ // TODO
+ } // ComboBoxUI()
+
+
+ //-------------------------------------------------------------
+ // Methods ----------------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * setPopupVisible
+ * @param combobox TODO
+ * @param visible TODO
+ */
+ public abstract void setPopupVisible(JComboBox combobox, boolean visible);
+
+ /**
+ * isPopupVisible
+ * @param combobox TODO
+ * @returns boolean
+ */
+ public abstract boolean isPopupVisible(JComboBox combobox);
+
+ /**
+ * isFocusTraversable
+ * @param combobox TODO
+ * @returns boolean
+ */
+ public abstract boolean isFocusTraversable(JComboBox combobox);
+
+
+} // ComboBoxUI
diff --git a/libjava/javax/swing/plaf/ComponentInputMapUIResource.java b/libjava/javax/swing/plaf/ComponentInputMapUIResource.java
new file mode 100644
index 00000000000..376da1ada8c
--- /dev/null
+++ b/libjava/javax/swing/plaf/ComponentInputMapUIResource.java
@@ -0,0 +1,64 @@
+/* ComponentInputMapUIResource.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.plaf;
+
+// Imports
+import javax.swing.*;
+
+/**
+ * ComponentInputMapUIResource
+ * @author Andrew Selkirk
+ * @version 1.0
+ */
+public class ComponentInputMapUIResource extends ComponentInputMap implements UIResource {
+
+ //-------------------------------------------------------------
+ // Initialization ---------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * Constructor ComponentInputMapUIResource
+ * @param component TODO
+ */
+ public ComponentInputMapUIResource(JComponent component) {
+ super(component);
+ // TODO
+ } // ComponentInputMapUIResource()
+
+
+} // ComponentInputMapUIResource
diff --git a/libjava/javax/swing/plaf/ComponentUI.java b/libjava/javax/swing/plaf/ComponentUI.java
new file mode 100644
index 00000000000..cdccbabbe48
--- /dev/null
+++ b/libjava/javax/swing/plaf/ComponentUI.java
@@ -0,0 +1,88 @@
+package javax.swing.plaf;
+
+import java.awt.*;
+import javax.swing.border.*;
+import javax.swing.*;
+
+import javax.accessibility.*;
+
+public abstract class ComponentUI
+ implements UIResource // ??
+{
+ boolean contains(JComponent c, int x, int y)
+ {
+ return c.inside(x,y);
+ }
+
+ // this SHOULD thow an error:
+ public static ComponentUI createUI(JComponent c)
+ {
+ Exception e = new Exception("createUI from ComponentUI should never be called");
+ e.printStackTrace();
+ System.exit(1);
+ return null;
+ }
+
+ public Accessible getAccessibleChild(JComponent c, int i)
+ {
+ //Return the nth Accessible child of the object.
+ return null;
+ }
+
+ public int getAccessibleChildrenCount(JComponent c)
+ {
+ //Returns the number of accessible children in the object.
+ return 0;
+ }
+
+ public Dimension getMaximumSize(JComponent c)
+ {
+ return getPreferredSize(c);
+ }
+
+ public Dimension getMinimumSize(JComponent c)
+ {
+ return getPreferredSize(c);
+ }
+
+ public Dimension getPreferredSize(JComponent c)
+ {
+ return null;
+ }
+
+ public void installUI(JComponent c)
+ {
+ String id = c.getUIClassID() + ".border";
+
+ Border s = UIManager.getBorder( id );
+
+ if (s != null)
+ {
+ c.setBorder( s );
+ //System.out.println("OK-INSTALL: " + this + ", ID=" + id + ",B="+s);
+ }
+ else
+ {
+ ///System.out.println("FAIL-INSTALL: " + this + ", " + id);
+ }
+ }
+
+ public void paint(Graphics g, JComponent c)
+ {
+ // System.out.println("UI-COMPONENT-> unimplemented paint: " + c + ", UI="+this);
+ }
+
+ public void uninstallUI(JComponent c)
+ {
+ }
+
+ public void update(Graphics g, JComponent c) {
+ if (c.isOpaque()) {
+ g.setColor(c.getBackground());
+ g.fillRect(0, 0, c.getWidth(),c.getHeight());
+ }
+ paint(g, c);
+ }
+
+}
+
diff --git a/libjava/javax/swing/plaf/DesktopIconUI.java b/libjava/javax/swing/plaf/DesktopIconUI.java
new file mode 100644
index 00000000000..880fa43915c
--- /dev/null
+++ b/libjava/javax/swing/plaf/DesktopIconUI.java
@@ -0,0 +1,59 @@
+/* DesktopIconUI.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.plaf;
+
+/**
+ * DesktopIconUI
+ * @author Andrew Selkirk
+ * @version 1.0
+ */
+public abstract class DesktopIconUI extends ComponentUI {
+
+ //-------------------------------------------------------------
+ // Initialization ---------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * Constructor DesktopIconUI
+ */
+ public DesktopIconUI() {
+ // TODO
+ } // DesktopIconUI()
+
+
+} // DesktopIconUI
diff --git a/libjava/javax/swing/plaf/DesktopPaneUI.java b/libjava/javax/swing/plaf/DesktopPaneUI.java
new file mode 100644
index 00000000000..9cb278839fb
--- /dev/null
+++ b/libjava/javax/swing/plaf/DesktopPaneUI.java
@@ -0,0 +1,59 @@
+/* DesktopPaneUI.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.plaf;
+
+/**
+ * DesktopPaneUI
+ * @author Andrew Selkirk
+ * @version 1.0
+ */
+public abstract class DesktopPaneUI extends ComponentUI {
+
+ //-------------------------------------------------------------
+ // Initialization ---------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * Constructor DesktopPaneUI
+ */
+ public DesktopPaneUI() {
+ // TODO
+ } // DesktopPaneUI()
+
+
+} // DesktopPaneUI
diff --git a/libjava/javax/swing/plaf/DimensionUIResource.java b/libjava/javax/swing/plaf/DimensionUIResource.java
new file mode 100644
index 00000000000..5fe2ec8e170
--- /dev/null
+++ b/libjava/javax/swing/plaf/DimensionUIResource.java
@@ -0,0 +1,12 @@
+package javax.swing.plaf;
+import java.awt.Dimension;
+/**
+ * STUBBED
+ */
+public class DimensionUIResource extends Dimension implements UIResource
+{
+ public DimensionUIResource(int w, int h)
+ {
+ super(w, h);
+ }
+} // class DimensionUIResource
diff --git a/libjava/javax/swing/plaf/FileChooserUI.java b/libjava/javax/swing/plaf/FileChooserUI.java
new file mode 100644
index 00000000000..00595eb7c66
--- /dev/null
+++ b/libjava/javax/swing/plaf/FileChooserUI.java
@@ -0,0 +1,111 @@
+/* FileChooserUI.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.plaf;
+
+// Imports
+import java.io.*;
+import javax.swing.*;
+import javax.swing.filechooser.*;
+import javax.swing.filechooser.FileFilter;
+
+/**
+ * FileChooserUI
+ * @author Andrew Selkirk
+ * @version 1.0
+ */
+public abstract class FileChooserUI extends ComponentUI {
+
+ //-------------------------------------------------------------
+ // Initialization ---------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * Constructor FileChooserUI
+ */
+ public FileChooserUI() {
+ // TODO
+ } // FileChooserUI()
+
+
+ //-------------------------------------------------------------
+ // Methods ----------------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * getAcceptAllFileFilter
+ * @param chooser TODO
+ * @returns FileFilter
+ */
+ public abstract FileFilter getAcceptAllFileFilter(JFileChooser chooser);
+
+ /**
+ * getFileView
+ * @param chooser TODO
+ * @returns FileView
+ */
+ public abstract FileView getFileView(JFileChooser chooser);
+
+ /**
+ * getApproveButtonText
+ * @param chooser TODO
+ * @returns String
+ */
+ public abstract String getApproveButtonText(JFileChooser chooser);
+
+ /**
+ * getDialogTitle
+ * @param chooser TODO
+ * @returns String
+ */
+ public abstract String getDialogTitle(JFileChooser chooser);
+
+ /**
+ * rescanCurrentDirectory
+ * @param value0 TODO
+ */
+ public abstract void rescanCurrentDirectory(JFileChooser chooser);
+
+ /**
+ * ensureFileIsVisible
+ * @param chooser TODO
+ * @param file TODO
+ */
+ public abstract void ensureFileIsVisible(JFileChooser chooser, File file);
+
+
+} // FileChooserUI
diff --git a/libjava/javax/swing/plaf/FontUIResource.java b/libjava/javax/swing/plaf/FontUIResource.java
new file mode 100644
index 00000000000..46bca96e483
--- /dev/null
+++ b/libjava/javax/swing/plaf/FontUIResource.java
@@ -0,0 +1,16 @@
+package javax.swing.plaf;
+import java.awt.Font;
+/**
+ * STUBBED
+ */
+public class FontUIResource extends Font implements UIResource
+{
+ public FontUIResource(Font f)
+ {
+ super(f.getName(), f.getStyle(), f.getSize());
+ }
+ public FontUIResource(String name, int style, int size)
+ {
+ super(name, style, size);
+ }
+} // class FontUIResource
diff --git a/libjava/javax/swing/plaf/IconUIResource.java b/libjava/javax/swing/plaf/IconUIResource.java
new file mode 100644
index 00000000000..02f1ea0725c
--- /dev/null
+++ b/libjava/javax/swing/plaf/IconUIResource.java
@@ -0,0 +1,25 @@
+package javax.swing.plaf;
+import java.awt.Component;
+import java.awt.Graphics;
+import java.io.Serializable;
+import javax.swing.Icon;
+/**
+ * STUBBED
+ */
+public class IconUIResource implements Icon, UIResource, Serializable
+{
+ public IconUIResource(Icon delegate)
+ {
+ }
+ public void paintIcon(Component c, Graphics g, int x, int y)
+ {
+ }
+ public int getIconWidth()
+ {
+ return 0;
+ }
+ public int getIconHeight()
+ {
+ return 0;
+ }
+} // class IconUIResource
diff --git a/libjava/javax/swing/plaf/InputMapUIResource.java b/libjava/javax/swing/plaf/InputMapUIResource.java
new file mode 100644
index 00000000000..4d6793bd0a8
--- /dev/null
+++ b/libjava/javax/swing/plaf/InputMapUIResource.java
@@ -0,0 +1,62 @@
+/* InputMapUIResource.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.plaf;
+
+// Imports
+import javax.swing.*;
+
+/**
+ * InputMapUIResource
+ * @author Andrew Selkirk
+ * @version 1.0
+ */
+public class InputMapUIResource extends InputMap implements UIResource {
+
+ //-------------------------------------------------------------
+ // Initialization ---------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * Constructor InputMapUIResource
+ */
+ public InputMapUIResource() {
+ // TODO
+ } // InputMapUIResource()
+
+
+} // InputMapUIResource
diff --git a/libjava/javax/swing/plaf/InsetsUIResource.java b/libjava/javax/swing/plaf/InsetsUIResource.java
new file mode 100644
index 00000000000..4c5e3183a7b
--- /dev/null
+++ b/libjava/javax/swing/plaf/InsetsUIResource.java
@@ -0,0 +1,12 @@
+package javax.swing.plaf;
+import java.awt.Insets;
+/**
+ * STUBBED
+ */
+public class InsetsUIResource extends Insets implements UIResource
+{
+ public InsetsUIResource(int top, int left, int bottom, int right)
+ {
+ super(top, left, bottom, right);
+ }
+} // class InsetsUIResource
diff --git a/libjava/javax/swing/plaf/InternalFrameUI.java b/libjava/javax/swing/plaf/InternalFrameUI.java
new file mode 100644
index 00000000000..3019460c74a
--- /dev/null
+++ b/libjava/javax/swing/plaf/InternalFrameUI.java
@@ -0,0 +1,59 @@
+/* InternalFrameUI.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.plaf;
+
+/**
+ * InternalFrameUI
+ * @author Andrew Selkirk
+ * @version 1.0
+ */
+public abstract class InternalFrameUI extends ComponentUI {
+
+ //-------------------------------------------------------------
+ // Initialization ---------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * Constructor InternalFrameUI
+ */
+ public InternalFrameUI() {
+ // TODO
+ } // InternalFrameUI()
+
+
+} // InternalFrameUI
diff --git a/libjava/javax/swing/plaf/LabelUI.java b/libjava/javax/swing/plaf/LabelUI.java
new file mode 100644
index 00000000000..759550abdf7
--- /dev/null
+++ b/libjava/javax/swing/plaf/LabelUI.java
@@ -0,0 +1,6 @@
+package javax.swing.plaf;
+
+
+public class LabelUI extends ComponentUI
+{
+}
diff --git a/libjava/javax/swing/plaf/ListUI.java b/libjava/javax/swing/plaf/ListUI.java
new file mode 100644
index 00000000000..69c2396d08a
--- /dev/null
+++ b/libjava/javax/swing/plaf/ListUI.java
@@ -0,0 +1,6 @@
+package javax.swing.plaf;
+
+
+public class ListUI extends ComponentUI
+{
+}
diff --git a/libjava/javax/swing/plaf/MenuBarUI.java b/libjava/javax/swing/plaf/MenuBarUI.java
new file mode 100644
index 00000000000..84c29d13ef5
--- /dev/null
+++ b/libjava/javax/swing/plaf/MenuBarUI.java
@@ -0,0 +1,59 @@
+/* MenuBarUI.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.plaf;
+
+/**
+ * MenuBarUI
+ * @author Andrew Selkirk
+ * @version 1.0
+ */
+public abstract class MenuBarUI extends ComponentUI {
+
+ //-------------------------------------------------------------
+ // Initialization ---------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * Constructor MenuBarUI
+ */
+ public MenuBarUI() {
+ // TODO
+ } // MenuBarUI()
+
+
+} // MenuBarUI
diff --git a/libjava/javax/swing/plaf/MenuItemUI.java b/libjava/javax/swing/plaf/MenuItemUI.java
new file mode 100644
index 00000000000..a9271219c83
--- /dev/null
+++ b/libjava/javax/swing/plaf/MenuItemUI.java
@@ -0,0 +1,59 @@
+/* MenuItemUI.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.plaf;
+
+/**
+ * MenuItemUI
+ * @author Andrew Selkirk
+ * @version 1.0
+ */
+public abstract class MenuItemUI extends ButtonUI {
+
+ //-------------------------------------------------------------
+ // Initialization ---------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * Constructor MenuItemUI
+ */
+ public MenuItemUI() {
+ // TODO
+ } // MenuItemUI()
+
+
+} // MenuItemUI
diff --git a/libjava/javax/swing/plaf/OptionPaneUI.java b/libjava/javax/swing/plaf/OptionPaneUI.java
new file mode 100644
index 00000000000..01a10d1f2f1
--- /dev/null
+++ b/libjava/javax/swing/plaf/OptionPaneUI.java
@@ -0,0 +1,6 @@
+package javax.swing.plaf;
+import javax.accessibility.*;
+
+public class OptionPaneUI extends ComponentUI
+{
+}
diff --git a/libjava/javax/swing/plaf/PanelUI.java b/libjava/javax/swing/plaf/PanelUI.java
new file mode 100644
index 00000000000..b884acec3d0
--- /dev/null
+++ b/libjava/javax/swing/plaf/PanelUI.java
@@ -0,0 +1,6 @@
+package javax.swing.plaf;
+
+
+public class PanelUI extends ComponentUI
+{
+}
diff --git a/libjava/javax/swing/plaf/PopupMenuUI.java b/libjava/javax/swing/plaf/PopupMenuUI.java
new file mode 100644
index 00000000000..d1faa78d146
--- /dev/null
+++ b/libjava/javax/swing/plaf/PopupMenuUI.java
@@ -0,0 +1,76 @@
+/* PopupMenuUI.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.plaf;
+
+// Imports
+import java.awt.event.*;
+
+/**
+ * PopupMenuUI
+ * @author Andrew Selkirk
+ * @version 1.0
+ */
+public abstract class PopupMenuUI extends ComponentUI {
+
+ //-------------------------------------------------------------
+ // Initialization ---------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * Constructor PopupMenuUI
+ */
+ public PopupMenuUI() {
+ // TODO
+ } // PopupMenuUI()
+
+
+ //-------------------------------------------------------------
+ // Methods ----------------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * isPopupTrigger
+ * @param event TODO
+ * @returns boolean
+ */
+ public boolean isPopupTrigger(MouseEvent event) {
+ return false; // TODO
+ } // isPopupTrigger()
+
+
+} // PopupMenuUI
diff --git a/libjava/javax/swing/plaf/ProgressBarUI.java b/libjava/javax/swing/plaf/ProgressBarUI.java
new file mode 100644
index 00000000000..c5f6466e7ab
--- /dev/null
+++ b/libjava/javax/swing/plaf/ProgressBarUI.java
@@ -0,0 +1,59 @@
+/* ProgressBarUI.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.plaf;
+
+/**
+ * ProgressBarUI
+ * @author Andrew Selkirk
+ * @version 1.0
+ */
+public abstract class ProgressBarUI extends ComponentUI {
+
+ //-------------------------------------------------------------
+ // Initialization ---------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * Constructor ProgressBarUI
+ */
+ public ProgressBarUI() {
+ // TODO
+ } // ProgressBarUI()
+
+
+} // ProgressBarUI
diff --git a/libjava/javax/swing/plaf/RootPaneUI.java b/libjava/javax/swing/plaf/RootPaneUI.java
new file mode 100644
index 00000000000..53529fa6e89
--- /dev/null
+++ b/libjava/javax/swing/plaf/RootPaneUI.java
@@ -0,0 +1,59 @@
+/* RootPaneUI.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.plaf;
+
+/**
+ * RootPaneUI
+ * @author Andrew Selkirk
+ * @version 1.0
+ */
+public abstract class RootPaneUI extends ComponentUI {
+
+ //-------------------------------------------------------------
+ // Initialization ---------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * Constructor RootPaneUI
+ */
+ public RootPaneUI() {
+ // TODO
+ } // RootPaneUI()
+
+
+} // RootPaneUI
diff --git a/libjava/javax/swing/plaf/ScrollBarUI.java b/libjava/javax/swing/plaf/ScrollBarUI.java
new file mode 100644
index 00000000000..0d778f3daa4
--- /dev/null
+++ b/libjava/javax/swing/plaf/ScrollBarUI.java
@@ -0,0 +1,59 @@
+/* ScrollBarUI.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.plaf;
+
+/**
+ * ScrollBarUI
+ * @author Andrew Selkirk
+ * @version 1.0
+ */
+public abstract class ScrollBarUI extends ComponentUI {
+
+ //-------------------------------------------------------------
+ // Initialization ---------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * Constructor ScrollBarUI
+ */
+ public ScrollBarUI() {
+ // TODO
+ } // ScrollBarUI()
+
+
+} // ScrollBarUI
diff --git a/libjava/javax/swing/plaf/ScrollPaneUI.java b/libjava/javax/swing/plaf/ScrollPaneUI.java
new file mode 100644
index 00000000000..3b36b08012b
--- /dev/null
+++ b/libjava/javax/swing/plaf/ScrollPaneUI.java
@@ -0,0 +1,59 @@
+/* ScrollPaneUI.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.plaf;
+
+/**
+ * ScrollPaneUI
+ * @author Andrew Selkirk
+ * @version 1.0
+ */
+public abstract class ScrollPaneUI extends ComponentUI {
+
+ //-------------------------------------------------------------
+ // Initialization ---------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * Constructor ScrollPaneUI
+ */
+ public ScrollPaneUI() {
+ // TODO
+ } // ScrollPaneUI()
+
+
+} // ScrollPaneUI
diff --git a/libjava/javax/swing/plaf/SeparatorUI.java b/libjava/javax/swing/plaf/SeparatorUI.java
new file mode 100644
index 00000000000..23622a06286
--- /dev/null
+++ b/libjava/javax/swing/plaf/SeparatorUI.java
@@ -0,0 +1,59 @@
+/* SeparatorUI.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.plaf;
+
+/**
+ * SeparatorUI
+ * @author Andrew Selkirk
+ * @version 1.0
+ */
+public abstract class SeparatorUI extends ComponentUI {
+
+ //-------------------------------------------------------------
+ // Initialization ---------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * Constructor SeparatorUI
+ */
+ public SeparatorUI() {
+ // TODO
+ } // SeparatorUI()
+
+
+} // SeparatorUI
diff --git a/libjava/javax/swing/plaf/SliderUI.java b/libjava/javax/swing/plaf/SliderUI.java
new file mode 100644
index 00000000000..59d51c10d51
--- /dev/null
+++ b/libjava/javax/swing/plaf/SliderUI.java
@@ -0,0 +1,59 @@
+/* SliderUI.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.plaf;
+
+/**
+ * SliderUI
+ * @author Andrew Selkirk
+ * @version 1.0
+ */
+public abstract class SliderUI extends ComponentUI {
+
+ //-------------------------------------------------------------
+ // Initialization ---------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * Constructor SliderUI
+ */
+ public SliderUI() {
+ // TODO
+ } // SliderUI()
+
+
+} // SliderUI
diff --git a/libjava/javax/swing/plaf/SplitPaneUI.java b/libjava/javax/swing/plaf/SplitPaneUI.java
new file mode 100644
index 00000000000..6448ba86653
--- /dev/null
+++ b/libjava/javax/swing/plaf/SplitPaneUI.java
@@ -0,0 +1,111 @@
+/* SplitPaneUI.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.plaf;
+
+// Imports
+import java.awt.*;
+import javax.swing.*;
+
+/**
+ * SplitPaneUI
+ * @author Andrew Selkirk
+ * @version 1.0
+ */
+public abstract class SplitPaneUI extends ComponentUI {
+
+ //-------------------------------------------------------------
+ // Initialization ---------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * Constructor SplitPaneUI
+ */
+ public SplitPaneUI() {
+ // TODO
+ } // SplitPaneUI()
+
+
+ //-------------------------------------------------------------
+ // Methods ----------------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * resetToPreferredSizes
+ * @param splitpane TODO
+ */
+ public abstract void resetToPreferredSizes(JSplitPane splitpane);
+
+ /**
+ * setDividerLocation
+ * @param splitpane TODO
+ * @param location TODO
+ */
+ public abstract void setDividerLocation(JSplitPane splitpane,
+ int location);
+
+ /**
+ * getDividerLocation
+ * @param splitpane TODO
+ * @returns int
+ */
+ public abstract int getDividerLocation(JSplitPane splitpane);
+
+ /**
+ * getMinimumDividerLocation
+ * @param splitpane TODO
+ * @returns int
+ */
+ public abstract int getMinimumDividerLocation(JSplitPane splitpane);
+
+ /**
+ * getMaximumDividerLocation
+ * @param splitpane TODO
+ * @returns int
+ */
+ public abstract int getMaximumDividerLocation(JSplitPane splitpane);
+
+ /**
+ * finishedPaintingChildren
+ * @param splitpane TODO
+ * @param graphics TODO
+ */
+ public abstract void finishedPaintingChildren(JSplitPane splitpane,
+ Graphics graphics);
+
+
+} // SplitPaneUI
diff --git a/libjava/javax/swing/plaf/TabbedPaneUI.java b/libjava/javax/swing/plaf/TabbedPaneUI.java
new file mode 100644
index 00000000000..748ab580224
--- /dev/null
+++ b/libjava/javax/swing/plaf/TabbedPaneUI.java
@@ -0,0 +1,23 @@
+package javax.swing.plaf;
+
+import java.awt.*;
+import javax.swing.*;
+
+public class TabbedPaneUI extends ComponentUI
+{
+ public Rectangle getTabBounds(JTabbedPane pane, int index)
+ {
+ return null;
+ }
+
+ public int getTabRunCount(JTabbedPane pane)
+ {
+ return 0;
+ }
+
+ public int tabForCoordinate(JTabbedPane pane, int x, int y)
+ {
+ return 0;
+ }
+}
+
diff --git a/libjava/javax/swing/plaf/TableHeaderUI.java b/libjava/javax/swing/plaf/TableHeaderUI.java
new file mode 100644
index 00000000000..4510be588ea
--- /dev/null
+++ b/libjava/javax/swing/plaf/TableHeaderUI.java
@@ -0,0 +1,59 @@
+/* TableHeaderUI.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.plaf;
+
+/**
+ * TableHeaderUI
+ * @author Andrew Selkirk
+ * @version 1.0
+ */
+public abstract class TableHeaderUI extends ComponentUI {
+
+ //-------------------------------------------------------------
+ // Initialization ---------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * Constructor TableHeaderUI
+ */
+ public TableHeaderUI() {
+ // TODO
+ } // TableHeaderUI()
+
+
+} // TableHeaderUI
diff --git a/libjava/javax/swing/plaf/TableUI.java b/libjava/javax/swing/plaf/TableUI.java
new file mode 100644
index 00000000000..473e04ebad4
--- /dev/null
+++ b/libjava/javax/swing/plaf/TableUI.java
@@ -0,0 +1,59 @@
+/* TableUI.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.plaf;
+
+/**
+ * TableUI
+ * @author Andrew Selkirk
+ * @version 1.0
+ */
+public abstract class TableUI extends ComponentUI {
+
+ //-------------------------------------------------------------
+ // Initialization ---------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * Constructor TableUI
+ */
+ public TableUI() {
+ // TODO
+ } // TableUI()
+
+
+} // TableUI
diff --git a/libjava/javax/swing/plaf/TextUI.java b/libjava/javax/swing/plaf/TextUI.java
new file mode 100644
index 00000000000..46fa2ca61b5
--- /dev/null
+++ b/libjava/javax/swing/plaf/TextUI.java
@@ -0,0 +1,26 @@
+package javax.swing.plaf;
+
+import javax.swing.text.*;
+import java.awt.*;
+
+public abstract class TextUI extends ComponentUI
+{
+ public TextUI()
+ {
+ }
+
+ public abstract void damageRange(JTextComponent t, int p0, int p1);
+ public abstract void damageRange(JTextComponent t, int p0, int p1, Position.Bias firstBias, Position.Bias secondBias);
+ public abstract EditorKit getEditorKit(JTextComponent t);
+ public abstract int getNextVisualPositionFrom(JTextComponent t,
+ int pos,
+ Position.Bias b,
+ int direction,
+ Position.Bias[] biasRet);
+ public abstract View getRootView(JTextComponent t);
+ public abstract Rectangle modelToView(JTextComponent t, int pos);
+ public abstract Rectangle modelToView(JTextComponent t, int pos, Position.Bias bias);
+ public abstract int viewToModel(JTextComponent t, Point pt);
+ public abstract int viewToModel(JTextComponent t, Point pt, Position.Bias[] biasReturn);
+
+}
diff --git a/libjava/javax/swing/plaf/ToolBarUI.java b/libjava/javax/swing/plaf/ToolBarUI.java
new file mode 100644
index 00000000000..80d0d1db317
--- /dev/null
+++ b/libjava/javax/swing/plaf/ToolBarUI.java
@@ -0,0 +1,59 @@
+/* ToolBarUI.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.plaf;
+
+/**
+ * ToolBarUI
+ * @author Andrew Selkirk
+ * @version 1.0
+ */
+public abstract class ToolBarUI extends ComponentUI {
+
+ //-------------------------------------------------------------
+ // Initialization ---------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * Constructor ToolBarUI
+ */
+ public ToolBarUI() {
+ // TODO
+ } // ToolBarUI()
+
+
+} // ToolBarUI
diff --git a/libjava/javax/swing/plaf/ToolTipUI.java b/libjava/javax/swing/plaf/ToolTipUI.java
new file mode 100644
index 00000000000..f325fd0f718
--- /dev/null
+++ b/libjava/javax/swing/plaf/ToolTipUI.java
@@ -0,0 +1,59 @@
+/* ToolTipUI.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.plaf;
+
+/**
+ * ToolTipUI
+ * @author Andrew Selkirk
+ * @version 1.0
+ */
+public abstract class ToolTipUI extends ComponentUI {
+
+ //-------------------------------------------------------------
+ // Initialization ---------------------------------------------
+ //-------------------------------------------------------------
+
+ /**
+ * Constructor ToolTipUI
+ */
+ public ToolTipUI() {
+ // TODO
+ } // ToolTipUI()
+
+
+} // ToolTipUI
diff --git a/libjava/javax/swing/plaf/TreeUI.java b/libjava/javax/swing/plaf/TreeUI.java
new file mode 100644
index 00000000000..48323750dc1
--- /dev/null
+++ b/libjava/javax/swing/plaf/TreeUI.java
@@ -0,0 +1,6 @@
+package javax.swing.plaf;
+
+
+public class TreeUI extends ComponentUI
+{
+}
diff --git a/libjava/javax/swing/plaf/UIResource.java b/libjava/javax/swing/plaf/UIResource.java
new file mode 100644
index 00000000000..8eca939a1da
--- /dev/null
+++ b/libjava/javax/swing/plaf/UIResource.java
@@ -0,0 +1,55 @@
+/* UIResource.java
+ Copyright (C) 1999 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.plaf;
+
+/**
+ * This interface is used to designate which objects were created by
+ * <code>ComponentUI</code> delegates. When uninstalling the user interface
+ * renderer with <code>ComponentUI.uninstallUI()</code> the renderer
+ * property is set to <code>null</code>.
+ * <br>
+ * A comparison against null can be used with all properties except for
+ * the <code>java.awt.Component</code> properties font, foreground, and
+ * background. The container can provide the value of the properties if
+ * they are initialized or set to <code>null</code>.
+ *
+ * @author Brian Jones
+ * @see java.lang.ComponentUI
+ */
+public interface UIResource { }
diff --git a/libjava/javax/swing/plaf/ViewportUI.java b/libjava/javax/swing/plaf/ViewportUI.java
new file mode 100644
index 00000000000..5562973910a
--- /dev/null
+++ b/libjava/javax/swing/plaf/ViewportUI.java
@@ -0,0 +1,6 @@
+package javax.swing.plaf;
+
+
+public class ViewportUI extends ComponentUI
+{
+}
diff --git a/libjava/javax/swing/plaf/basic/BasicBorders.java b/libjava/javax/swing/plaf/basic/BasicBorders.java
new file mode 100644
index 00000000000..80d66a72b80
--- /dev/null
+++ b/libjava/javax/swing/plaf/basic/BasicBorders.java
@@ -0,0 +1,42 @@
+package javax.swing.plaf.basic;
+import java.awt.Color;
+/**
+ * STUBBED
+ */
+public class BasicBorders
+{
+ public static class ButtonBorder
+ {
+ } // class ButtonBorder
+ public static class FieldBorder
+ {
+ public FieldBorder(Color shadow, Color darkShadow,
+ Color highlight, Color lightHighlight)
+ {
+ }
+ } // class FieldBorder
+ public static class MarginBorder
+ {
+ } // class MarginBorder
+ public static class MenuBarBorder
+ {
+ public MenuBarBorder(Color shadow, Color highlight)
+ {
+ }
+ } // class MenuBarBorder
+ public static class RadioButtonBorder
+ {
+ } // class RadioButtonBorder
+ public static class RolloverButtonBorder
+ {
+ } // class RolloverButtonBorder
+ public static class SplitPaneBorder
+ {
+ public SplitPaneBorder(Color highlight, Color shadow)
+ {
+ }
+ } // class SplitPaneBorder
+ public static class ToggleButtonBorder
+ {
+ } // class ToggleButtonBorder
+} // class BasicBorders
diff --git a/libjava/javax/swing/plaf/basic/BasicButtonUI.java b/libjava/javax/swing/plaf/basic/BasicButtonUI.java
new file mode 100644
index 00000000000..88ac6f25ae2
--- /dev/null
+++ b/libjava/javax/swing/plaf/basic/BasicButtonUI.java
@@ -0,0 +1,177 @@
+package javax.swing.plaf.basic;
+
+import javax.swing.*;
+import javax.swing.plaf.*;
+import java.awt.*;
+
+
+public class BasicButtonUI extends ButtonUI
+{
+ int gap = 3;
+ // int y_text_space = 2, x_text_space + 5;
+
+ Color textColor, disabledTextColor;
+ Color pressedBackgroundColor;
+ Color normalBackgroundColor;
+
+
+ public static ComponentUI createUI(final JComponent c)
+ {
+ return new BasicButtonUI();
+ }
+
+
+ public void installUI(final JComponent c)
+ {
+ super.installUI(c);
+
+ textColor = new Color(0,0,0);
+ disabledTextColor = new Color(130, 130, 130);
+ pressedBackgroundColor = new Color(150,150,150);
+ pressedBackgroundColor = new Color(150,150,150);
+ normalBackgroundColor = new Color(192,192,192);
+ }
+
+
+ public Dimension getPreferredSize(JComponent c)
+ {
+ AbstractButton b = (AbstractButton)c;
+ Dimension d = BasicGraphicsUtils.getPreferredSize(b,
+ gap,
+ b.getText(),
+ b.getIcon(),
+ b.getVerticalAlignment(),
+ b.getHorizontalAlignment(),
+ b.getHorizontalTextPosition(),
+ b.getVerticalTextPosition());
+ // System.out.println("^^^^^^^^^^^^^^^^^^^^^^ BASIC-PREF="+d + ",T="+b.text);
+ return d;
+ }
+
+
+ public void paint(Graphics g, JComponent c)
+ {
+ AbstractButton b = (AbstractButton) c;
+
+ Rectangle tr = new Rectangle();
+ Rectangle ir = new Rectangle();
+ Rectangle vr = new Rectangle();
+
+ Font f = c.getFont();
+
+ g.setFont(f);
+
+ FontMetrics fm = SwingUtilities.getFontMetrics(f);
+
+ Insets i = c.getInsets();
+
+ vr.x = i.left;
+ vr.y = i.top;
+ vr.width = b.getWidth() - (i.right + vr.x);
+ vr.height = b.getHeight() - (i.bottom + vr.y);
+
+ //System.out.println(" VIEW-RECT-BUTTON="+vr+", insets="+i+", FONTM="+fm);
+
+ String text = SwingUtilities.layoutCompoundLabel(c,
+ fm,
+ b.getText(),
+ b.getIcon(),
+ b.getVerticalAlignment(),
+ b.getHorizontalAlignment(),
+ b.getVerticalTextPosition(),
+ b.getHorizontalTextPosition(),
+ vr,
+ ir,
+ tr,
+ gap);
+
+ if (b.getModel().isPressed() ||
+ b.getModel().isSelected())
+ {
+ //System.out.println("paint pressed");
+ paintButtonPressed(g, c);
+ }
+ else
+ {
+ //System.out.println("paint normal");
+ paintButtonNormal(g, c);
+ }
+
+ paintIcon(g, c, ir);
+ paintText(g, c, tr, b.getText());
+ paintFocus(g, c, vr, tr, ir);
+ }
+
+
+ protected void paintFocus(Graphics g,
+ JComponent c,
+ Rectangle vr,
+ Rectangle tr,
+ Rectangle ir)
+ {
+ }
+
+ protected void paintIcon(Graphics g,
+ JComponent c,
+ Rectangle iconRect)
+ {
+ AbstractButton b = (AbstractButton) c;
+ if (b.getIcon() != null)
+ {
+ int x = iconRect.x;
+ int y = iconRect.y;
+
+ System.out.println("WE HAVE AN ICON: " + b.getIcon());
+
+ b.getIcon().paintIcon(c, g, x, y);
+ }
+ else
+ {
+ //System.out.println("NO ICON FOR BUTTON:" + b.text);
+ }
+ }
+
+ protected void paintButtonPressed(Graphics g,
+ JComponent b)
+ {
+ Dimension size = b.getSize();
+
+ g.setColor(pressedBackgroundColor);
+ g.fillRect(1,1,size.width-2, size.height-2);
+
+ }
+
+ protected void paintButtonNormal(Graphics g,
+ JComponent b)
+ {
+ Dimension size = b.getSize();
+
+ g.setColor(normalBackgroundColor);
+ g.fillRect(1,1,size.width-2, size.height-2);
+
+ }
+
+ protected void paintText(Graphics g,
+ JComponent c,
+ Rectangle textRect,
+ String text)
+ {
+ Font f = c.getFont();
+
+ g.setFont(f);
+
+ FontMetrics fm = SwingUtilities.getFontMetrics(f);
+
+ g.setColor(c.isEnabled() ? textColor : disabledTextColor);
+
+ BasicGraphicsUtils.drawString(g,
+ text,
+ 0,
+ textRect.x,
+ textRect.y + fm.getAscent()/2);
+ }
+}
+
+
+
+
diff --git a/libjava/javax/swing/plaf/basic/BasicCheckBoxUI.java b/libjava/javax/swing/plaf/basic/BasicCheckBoxUI.java
new file mode 100644
index 00000000000..1a84b1faa2c
--- /dev/null
+++ b/libjava/javax/swing/plaf/basic/BasicCheckBoxUI.java
@@ -0,0 +1,88 @@
+package javax.swing.plaf.basic;
+
+import javax.swing.*;
+import javax.swing.plaf.*;
+import java.awt.*;
+
+
+public class BasicCheckBoxUI extends BasicRadioButtonUI
+{
+ public static ComponentUI createUI(final JComponent c) {
+ return new BasicCheckBoxUI();
+ }
+
+
+ public void installUI(final JComponent c) {
+ super.installUI(c);
+ }
+
+ public Dimension getPreferredSize(JComponent c)
+ {
+ AbstractButton b = (AbstractButton)c;
+ Dimension d = BasicGraphicsUtils.getPreferredSize(b,
+ gap,
+ b.getText(),
+ b.getIcon(),
+ b.getVerticalAlignment(),
+ b.getHorizontalAlignment(),
+ b.getHorizontalTextPosition(),
+ b.getVerticalTextPosition());
+
+ //System.out.println("^^^^^^^^^^^^^^^^^^^^^^ BASIC-PREF="+d + ",T="+b.text);
+ return d;
+ }
+
+ protected void paintFocus(Graphics g,
+ JComponent c,
+ Rectangle vr,
+ Rectangle tr,
+ Rectangle ir)
+ {
+ }
+
+ protected void paintIcon(Graphics g,
+ JComponent c,
+ Rectangle iconRect)
+ {
+ }
+
+ protected void paintButtonPressed(Graphics g,
+ JComponent b)
+ {
+ Dimension size = b.getSize();
+
+ g.setColor(pressedBackgroundColor);
+ g.fillRect(1,1,size.width-2, size.height-2);
+
+ }
+
+ protected void paintButtonNormal(Graphics g,
+ JComponent b)
+ {
+ Dimension size = b.getSize();
+
+ g.setColor(normalBackgroundColor);
+ g.fillRect(1,1,size.width-2, size.height-2);
+
+ }
+ protected void paintText(Graphics g,
+ JComponent c,
+ Rectangle textRect,
+ String text)
+ {
+ // AbstractButton b = (AbstractButton) c;
+
+ // System.out.println("drawing string: " + text + ", at:" + textRect);
+
+ g.setColor(textColor);
+ BasicGraphicsUtils.drawString(g,
+ text,
+ 0,
+ textRect.x,
+ textRect.y);
+ }
+}
+
+
+
+
diff --git a/libjava/javax/swing/plaf/basic/BasicDefaults.java b/libjava/javax/swing/plaf/basic/BasicDefaults.java
new file mode 100644
index 00000000000..b3dd865ce8b
--- /dev/null
+++ b/libjava/javax/swing/plaf/basic/BasicDefaults.java
@@ -0,0 +1,82 @@
+package javax.swing.plaf.basic;
+
+import javax.swing.*;
+import java.awt.*;
+import javax.swing.border.*;
+
+class BasicBorder extends MatteBorder
+{
+ static Color BtnPointClr = new Color( 180, 180, 180);
+
+ BasicBorder()
+ {
+ super(5,5,5,5, null);
+ }
+
+ public void paintBorder(Component c,
+ Graphics g,
+ int x,
+ int y,
+ int width,
+ int height)
+ {
+ // System.out.println("PAINT-------------------------------------------BORDER");
+
+ if (g != null)
+ {
+ g.setColor( BtnPointClr);
+ g.draw3DRect( 0, 0, width-1, height-1, true);
+ }
+ }
+ }
+
+class PanelBorder extends MatteBorder
+{
+ PanelBorder()
+ {
+ super(5,5,5,5, null);
+ }
+
+ public void paintBorder(Component c,
+ Graphics g,
+ int x,
+ int y,
+ int width,
+ int height)
+ {
+ // System.out.println("PAINT-------------------------------------------BORDER");
+ super.paintBorder(c, g, x, y, width, height);
+ }
+ }
+
+public class BasicDefaults extends UIDefaults
+{
+ public BasicDefaults()
+ {
+ // System.out.println("BasicDefaults !!!!!!!!!!!!!!!!!!!!!!!!!");
+ put("JButton", new BasicButtonUI());
+ put("JLabel", new BasicLabelUI());
+
+ put("JPanel", new BasicPanelUI());
+ put("JCheckBox", new BasicCheckBoxUI());
+ put("JRadioButton", new BasicRadioButtonUI());
+ put("JToggleButton", new BasicToggleButtonUI());
+ put("JOptionPane", new BasicOptionPaneUI());
+ put("JList", new BasicListUI());
+ put("JTree", new BasicTreeUI());
+ put("JTextComponent", new BasicTextUI());
+ put("JTabbedPane", new BasicTabbedPaneUI());
+ put("JScrollPane", new BasicScrollPaneUI());
+ put("JViewport", new BasicViewportUI());
+
+ put("JButton.border", new BasicBorder());
+ put("JPanel.border", new PanelBorder());
+
+ put("JToggleButton.border", new PanelBorder());
+ put("JCheckBox.border", new PanelBorder());
+ put("JRadioButton.border", new PanelBorder());
+ }
+
+}
+
+
diff --git a/libjava/javax/swing/plaf/basic/BasicGraphicsUtils.java b/libjava/javax/swing/plaf/basic/BasicGraphicsUtils.java
new file mode 100644
index 00000000000..10b7209f5dd
--- /dev/null
+++ b/libjava/javax/swing/plaf/basic/BasicGraphicsUtils.java
@@ -0,0 +1,77 @@
+package javax.swing.plaf.basic;
+
+
+import java.awt.*;
+import javax.swing.*;
+
+
+public class BasicGraphicsUtils
+{
+ public static Dimension getPreferredSize(JComponent b,
+ int gap,
+ String text,
+ Icon icon,
+ int va,
+ int ha,
+ int htp,
+ int vtp)
+ {
+ JComponent c = b;
+ // this is a staight copy from BasicButtonUI.paint()
+ //
+ Rectangle tr = new Rectangle();
+ Rectangle ir = new Rectangle();
+ Rectangle vr = new Rectangle();
+
+ Font f = c.getFont();
+
+ FontMetrics fm = SwingUtilities.getFontMetrics(f);
+
+ Insets i = c.getInsets();
+
+ vr.x = i.left;
+ vr.y = i.top;
+ vr.width = b.getWidth() - (i.right + i.left);
+ vr.height = b.getHeight() - (i.bottom + i.top);
+
+ // System.out.println(" VIEW-RECT-BUTTON="+vr+", insets="+i);
+
+ String tt = SwingUtilities.layoutCompoundLabel(b,
+ fm,
+ text,
+ icon,
+ va,
+ ha,
+ vtp,
+ htp,
+ vr,
+ ir,
+ tr,
+ gap);
+
+ Rectangle r = ir.union(tr);
+
+ Insets insets = b.getInsets();
+ r.width += insets.left + insets.right;
+ r.height += insets.top + insets.bottom;
+
+ // System.out.println("COMPUTED SIZE FOR PREF_SIZE="+r);
+
+ return r.getSize();
+ }
+
+ public static void drawString(Graphics g,
+ String text,
+ int underlinedChar,
+ int x,
+ int y)
+ {
+ g.drawString(text, x, y);
+ }
+}
+
+
+
+
+
+
diff --git a/libjava/javax/swing/plaf/basic/BasicIconFactory.java b/libjava/javax/swing/plaf/basic/BasicIconFactory.java
new file mode 100644
index 00000000000..347a1cc8a8b
--- /dev/null
+++ b/libjava/javax/swing/plaf/basic/BasicIconFactory.java
@@ -0,0 +1,45 @@
+package javax.swing.plaf.basic;
+
+import java.io.Serializable;
+import javax.swing.Icon;
+/**
+ * STUBBED
+ */
+public class BasicIconFactory implements Serializable
+{
+ public BasicIconFactory()
+ {
+ }
+ public static Icon getMenuItemCheckIcon()
+ {
+ return null;
+ }
+ public static Icon getMenuItemArrowIcon()
+ {
+ return null;
+ }
+ public static Icon getMenuArrowIcon()
+ {
+ return null;
+ }
+ public static Icon getCheckBoxIcon()
+ {
+ return null;
+ }
+ public static Icon getRadioButtonIcon()
+ {
+ return null;
+ }
+ public static Icon getCheckBoxMenuItemIcon()
+ {
+ return null;
+ }
+ public static Icon getRadioButtonMenuItemIcon()
+ {
+ return null;
+ }
+ public static Icon createEmptyFrameIcon()
+ {
+ return null;
+ }
+} // class BasicIconFactory
diff --git a/libjava/javax/swing/plaf/basic/BasicLabelUI.java b/libjava/javax/swing/plaf/basic/BasicLabelUI.java
new file mode 100644
index 00000000000..22bdc54aaab
--- /dev/null
+++ b/libjava/javax/swing/plaf/basic/BasicLabelUI.java
@@ -0,0 +1,158 @@
+package javax.swing.plaf.basic;
+
+import javax.swing.*;
+import javax.swing.plaf.*;
+import java.awt.*;
+
+
+public class BasicLabelUI extends LabelUI
+{
+ int gap = 3;
+
+ Color foreground;
+
+
+ public static ComponentUI createUI(final JComponent c) {
+ return new BasicLabelUI();
+ }
+
+
+ public void installUI(final JComponent c) {
+ super.installUI(c);
+
+ foreground = new Color(0,0,250);
+ }
+
+
+ public Dimension getPreferredSize(JComponent c)
+ {
+ JLabel b = (JLabel)c;
+ Dimension d = BasicGraphicsUtils.getPreferredSize(b,
+ gap,
+ b.getText(),
+ b.getIcon(),
+ b.getVerticalAlignment(),
+ b.getHorizontalAlignment(),
+ b.getHorizontalTextPosition(),
+ b.getVerticalTextPosition());
+ System.out.println("JLABEL->^^^^^^^^^^^^^^^^^^^^^^ BASIC-PREF="+d + ",T="+b.getText());
+ return d;
+ }
+
+
+ public void paint(Graphics g, JComponent c)
+ {
+ JLabel b = (JLabel) c;
+
+ Rectangle tr = new Rectangle();
+ Rectangle ir = new Rectangle();
+ Rectangle vr = new Rectangle();
+
+ Font f = c.getFont();
+
+ g.setFont(f);
+
+ FontMetrics fm = SwingUtilities.getFontMetrics(f);
+
+ Insets i = c.getInsets();
+
+ Rectangle bound = c.getBounds();
+
+ System.out.println("BOUND=" + bound + ", insets = " + i + ", " + b.getText());
+
+ if (bound == null)
+ {
+ vr.x = i.left;
+ vr.y = i.top;
+ vr.width = b.getWidth() - (i.right + i.left);
+ vr.height = b.getHeight() - (i.bottom + i.top);
+ }
+ else
+ {
+ vr.x = bound.x + i.left;
+ vr.y = bound.y + i.top;
+ vr.width = bound.width - (i.right + i.left);
+ vr.height = bound.height - (i.bottom + i.top);
+ }
+
+ System.out.println(" VIEW-RECT-JLABEL="+vr+", insets="+i+", FONTM="+fm);
+
+ String text = SwingUtilities.layoutCompoundLabel(c,
+ fm,
+ b.getText(),
+ b.getIcon(),
+ b.getVerticalAlignment(),
+ b.getHorizontalAlignment(),
+ b.getVerticalTextPosition(),
+ b.getHorizontalTextPosition(),
+ vr,
+ ir,
+ tr,
+ gap);
+
+ paintIcon(g, c, ir);
+ paintText(g, c, tr, b.getText());
+ paintFocus(g, c, vr, tr, ir);
+ }
+
+
+ protected void paintFocus(Graphics g,
+ JComponent c,
+ Rectangle vr,
+ Rectangle tr,
+ Rectangle ir)
+ {
+ }
+
+ protected void paintIcon(Graphics g,
+ JComponent c,
+ Rectangle iconRect)
+ {
+ JLabel b = (JLabel) c;
+ if (b.getIcon() != null)
+ {
+ int x = iconRect.x;
+ int y = iconRect.y;
+
+ System.out.println("WE HAVE AN ICON: " + b.getIcon());
+
+ b.getIcon().paintIcon(c, g, x, y);
+ }
+ else
+ {
+ //System.out.println("NO ICON FOR BUTTON:" + b.text);
+ }
+ }
+
+
+ protected void paintText(Graphics g,
+ JComponent c,
+ Rectangle textRect,
+ String text)
+ {
+ // AbstractLabel b = (AbstractLabel) c;
+
+ System.out.println("JLabel: drawing string: " + text + ", at:" + textRect);
+
+ g.setColor(foreground);
+ //g.setBackColor(new Color(190,190,190));
+
+ g.drawLine(0,0,100,100);
+
+ BasicGraphicsUtils.drawString(g,
+ text,
+ 0,
+ 0,//textRect.x,
+ 0);//textRect.y);
+ }
+}
+
+
+
+
+
+
+
+
+
+
diff --git a/libjava/javax/swing/plaf/basic/BasicListUI.java b/libjava/javax/swing/plaf/basic/BasicListUI.java
new file mode 100644
index 00000000000..abac5045031
--- /dev/null
+++ b/libjava/javax/swing/plaf/basic/BasicListUI.java
@@ -0,0 +1,132 @@
+package javax.swing.plaf.basic;
+
+import javax.swing.plaf.*;
+import javax.swing.*;
+import java.awt.*;
+
+
+public class BasicListUI extends ListUI
+{
+ int gap_between_cells;
+ Color textColor, disabledTextColor, pressedBackgroundColor, normalBackgroundColor;
+
+
+ public static ComponentUI createUI(final JComponent c)
+ {
+ return new BasicButtonUI();
+ }
+
+
+ public void installUI(final JComponent c)
+ {
+ super.installUI(c);
+
+ textColor = new Color(0,0,0);
+ disabledTextColor = new Color(130, 130, 130);
+ pressedBackgroundColor = new Color(150,150,150);
+ normalBackgroundColor = new Color(192,192,192);
+ }
+
+ public Dimension getPreferredSize(JComponent c)
+ {
+ JList l = (JList) c;
+
+ System.out.println("XXXXXXXXXXXXXXXxx getPreferredSize------------> " + l);
+
+
+ int rows = l.getVisibleRowCount();
+
+ ListCellRenderer render = l.getCellRenderer();
+
+ int width = 200;
+ int height = rows * 16;
+
+ if (l.getModel().getSize() == 0)
+ {
+ return new Dimension(width, height);
+ }
+
+ System.out.println("BASIC_LIST_UI ====-> " + l.getModel().getElementAt(0));
+
+ Component elt = render.getListCellRendererComponent(l,
+ l.getModel().getElementAt(0),
+ 0,
+ false,
+ false);
+ Dimension a = elt.getPreferredSize();
+ if (a == null)
+ {
+ return new Dimension(width, height);
+ }
+
+ return new Dimension(a.width,
+ a.height * rows);
+ }
+
+ public void paintBackground(Graphics g,
+ JComponent c)
+ {
+ Dimension size = getPreferredSize(c);
+
+ g.setColor(normalBackgroundColor);
+ g.fillRect(0,0,size.width, size.height);
+ }
+
+ public void paint(Graphics g,
+ JComponent c)
+ {
+ JList l = (JList) c;
+
+ int rows = l.getVisibleRowCount();
+
+ ListCellRenderer render = l.getCellRenderer();
+
+ System.out.println("RENDER-JLIST: " + rows + ", " + l.getModel().getSize());
+
+ paintBackground(g, c);
+
+ if (l.getModel().getSize() == 0)
+ return;
+
+ // use element 0 to figure out how big we are:
+ Component elt = render.getListCellRendererComponent(l,
+ l.getModel().getElementAt(0),
+ 0,
+ false,
+ false);
+ Dimension dim = elt.getPreferredSize();
+
+ Rectangle a = new Rectangle(0,
+ 0,
+ dim.width,
+ dim.height);
+
+ for (int i=0;i<l.getModel().getSize();i++)
+ {
+ boolean is_sel = false;
+ boolean has_focus = false;
+
+ Component comp = render.getListCellRendererComponent(l,
+ l.getModel().getElementAt(i),
+ i,
+ is_sel,
+ has_focus);
+
+ //System.out.println("AAAAA=> " + a + ", " + comp + ", index = " + i);
+
+ comp.setBounds(a);
+
+ comp.paint(g);
+
+ a.y += dim.height + gap_between_cells;
+ }
+ }
+}
+
+
+
+
+
+
+
+
diff --git a/libjava/javax/swing/plaf/basic/BasicLookAndFeel.java b/libjava/javax/swing/plaf/basic/BasicLookAndFeel.java
new file mode 100644
index 00000000000..7655ea3b23a
--- /dev/null
+++ b/libjava/javax/swing/plaf/basic/BasicLookAndFeel.java
@@ -0,0 +1,927 @@
+/* BasicLookAndFeel.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.plaf.basic;
+
+import java.awt.Color;
+import java.awt.Dimension;
+import java.awt.Font;
+import java.awt.event.KeyEvent;
+import java.io.Serializable;
+import java.util.Enumeration;
+import java.util.ResourceBundle;
+import javax.swing.ImageIcon;
+import javax.swing.KeyStroke;
+import javax.swing.LookAndFeel;
+import javax.swing.UIDefaults;
+import javax.swing.plaf.BorderUIResource;
+import javax.swing.plaf.ColorUIResource;
+import javax.swing.plaf.DimensionUIResource;
+import javax.swing.plaf.FontUIResource;
+import javax.swing.plaf.IconUIResource;
+import javax.swing.plaf.InsetsUIResource;
+import javax.swing.text.JTextComponent;
+
+/**
+ * BasicLookAndFeel
+ * @author Andrew Selkirk
+ */
+public abstract class BasicLookAndFeel extends LookAndFeel
+ implements Serializable
+{
+ /**
+ * Constructor BasicLookAndFeel
+ */
+ public BasicLookAndFeel()
+ {
+ // TODO
+ }
+
+ /**
+ * getDefaults
+ * @return UIDefaults
+ */
+ public UIDefaults getDefaults()
+ {
+ // Variables
+ UIDefaults def = new UIDefaults();
+ // Initialize Class Defaults
+ initClassDefaults(def);
+ // Initialize System Colour Defaults
+ initSystemColorDefaults(def);
+ // Initialize Component Defaults
+ initComponentDefaults(def);
+ // Return UI Defaults
+ return def;
+ }
+
+ /**
+ * initClassDefaults
+ * @param value0 TODO
+ */
+ protected void initClassDefaults(UIDefaults defaults)
+ {
+ // Variables
+ Object[] uiDefaults;
+ // Initialize Class Defaults
+ uiDefaults = new Object[] {
+ "ButtonUI", "javax.swing.plaf.basic.BasicButtonUI",
+ "CheckBoxMenuItemUI", "javax.swing.plaf.basic.BasicCheckBoxMenuItemUI",
+ "CheckBoxUI", "javax.swing.plaf.basic.BasicCheckBoxUI",
+ "ColorChooserUI", "javax.swing.plaf.basic.BasicColorChooserUI",
+ "ComboBoxUI", "javax.swing.plaf.basic.BasicComboBoxUI",
+ "DesktopIconUI", "javax.swing.plaf.basic.BasicDesktopIconUI",
+ "DesktopPaneUI", "javax.swing.plaf.basic.BasicDesktopPaneUI",
+ "EditorPaneUI", "javax.swing.plaf.basic.BasicEditorPaneUI",
+ "InternalFrameUI", "javax.swing.plaf.basic.BasicInternalFrameUI",
+ "LabelUI", "javax.swing.plaf.basic.BasicLabelUI",
+ "ListUI", "javax.swing.plaf.basic.BasicListUI",
+ "MenuBarUI", "javax.swing.plaf.basic.BasicMenuBarUI",
+ "MenuItemUI", "javax.swing.plaf.basic.BasicMenuItemUI",
+ "MenuUI", "javax.swing.plaf.basic.BasicMenuUI",
+ "OptionPaneUI", "javax.swing.plaf.basic.BasicOptionPaneUI",
+ "PanelUI", "javax.swing.plaf.basic.BasicPanelUI",
+ "PasswordFieldUI", "javax.swing.plaf.basic.BasicPasswordFieldUI",
+ "PopupMenuSeparatorUI", "javax.swing.plaf.basic.BasicPopupMenuSeparatorUI",
+ "PopupMenuUI", "javax.swing.plaf.basic.BasicPopupMenuUI",
+ "ProgressBarUI", "javax.swing.plaf.basic.BasicProgressBarUI",
+ "RadioButtonMenuItemUI", "javax.swing.plaf.basic.BasicRadioButtonMenuItemUI",
+ "RadioButtonUI", "javax.swing.plaf.basic.BasicRadioButtonUI",
+ "RootPaneUI", "javax.swing.plaf.basic.BasicRootPaneUI",
+ "ScrollBarUI", "javax.swing.plaf.basic.BasicScrollBarUI",
+ "ScrollPaneUI", "javax.swing.plaf.basic.BasicScrollPaneUI",
+ "SeparatorUI", "javax.swing.plaf.basic.BasicSeparatorUI",
+ "SliderUI", "javax.swing.plaf.basic.BasicSliderUI",
+ "SplitPaneUI", "javax.swing.plaf.basic.BasicSplitPaneUI",
+ "StandardDialogUI", "javax.swing.plaf.basic.BasicStandardDialogUI",
+ "TabbedPaneUI", "javax.swing.plaf.basic.BasicTabbedPaneUI",
+ "TableHeaderUI", "javax.swing.plaf.basic.BasicTableHeaderUI",
+ "TableUI", "javax.swing.plaf.basic.BasicTableUI",
+ "TextAreaUI", "javax.swing.plaf.basic.BasicTextAreaUI",
+ "TextFieldUI", "javax.swing.plaf.basic.BasicTextFieldUI",
+ "TextPaneUI", "javax.swing.plaf.basic.BasicTextPaneUI",
+ "ToggleButtonUI", "javax.swing.plaf.basic.BasicToggleButtonUI",
+ "ToolBarSeparatorUI", "javax.swing.plaf.basic.BasicToolBarSeparatorUI",
+ "ToolBarUI", "javax.swing.plaf.basic.BasicToolBarUI",
+ "ToolTipUI", "javax.swing.plaf.basic.BasicToolTipUI",
+ "TreeUI", "javax.swing.plaf.basic.BasicTreeUI",
+ "ViewportUI", "javax.swing.plaf.basic.BasicViewportUI"
+ };
+ // Add Class Defaults to UI Defaults table
+ defaults.putDefaults(uiDefaults);
+ }
+
+ /**
+ * initSystemColorDefaults
+ * @param defaults TODO
+ */
+ protected void initSystemColorDefaults(UIDefaults defaults)
+ {
+ Object[] uiDefaults;
+ uiDefaults = new Object[] {
+ "activeCaption", new ColorUIResource(0, 0, 128),
+ "activeCaptionBorder", new ColorUIResource(Color.lightGray),
+ "activeCaptionText", new ColorUIResource(Color.white),
+ "control", new ColorUIResource(Color.lightGray),
+ "controlDkShadow", new ColorUIResource(Color.black),
+ "controlHighlight", new ColorUIResource(Color.lightGray),
+ "controlLtHighlight", new ColorUIResource(Color.white),
+ "controlShadow", new ColorUIResource(Color.gray),
+ "controlText", new ColorUIResource(Color.black),
+ "desktop", new ColorUIResource(0, 92, 92),
+ "inactiveCaption", new ColorUIResource(Color.gray),
+ "inactiveCaptionBorder", new ColorUIResource(Color.lightGray),
+ "inactiveCaptionText", new ColorUIResource(Color.lightGray),
+ "info", new ColorUIResource(Color.white),
+ "infoText", new ColorUIResource(Color.black),
+ "menu", new ColorUIResource(Color.lightGray),
+ "menuText", new ColorUIResource(Color.black),
+ "scrollbar", new ColorUIResource(224, 224, 224),
+ "text", new ColorUIResource(Color.lightGray),
+ "textHighlight", new ColorUIResource(0, 0, 128),
+ "textHighlightText", new ColorUIResource(Color.white),
+ "textInactiveText", new ColorUIResource(Color.gray),
+ "textText", new ColorUIResource(Color.black),
+ "window", new ColorUIResource(Color.white),
+ "windowBorder", new ColorUIResource(Color.black),
+ "windowText", new ColorUIResource(Color.black)
+ };
+ defaults.putDefaults(uiDefaults);
+ }
+
+ /**
+ * loadSystemColors
+ * @param defaults TODO
+ * @param value1 TODO
+ * @param value2 TODO
+ */
+ protected void loadSystemColors(UIDefaults defaults, String[] value1,
+ boolean value2)
+ {
+ // TODO
+ }
+
+ /**
+ * loadResourceBundle
+ * @param defaults TODO
+ */
+ private void loadResourceBundle(UIDefaults defaults)
+ {
+ ResourceBundle bundle;
+ Enumeration enum;
+ String key;
+ String value;
+ bundle = ResourceBundle.getBundle("resources/basic");
+ // Process Resources
+ enum = bundle.getKeys();
+ while (enum.hasMoreElements())
+ {
+ key = (String) enum.nextElement();
+ value = bundle.getString(key);
+ defaults.put(key, value);
+ }
+ }
+
+ /**
+ * initComponentDefaults
+ * @param defaults TODO
+ */
+ protected void initComponentDefaults(UIDefaults defaults)
+ {
+ Object[] uiDefaults;
+ uiDefaults = new Object[] {
+ "Button.background", new ColorUIResource(Color.lightGray),
+ "Button.border", new BorderUIResource.CompoundBorderUIResource(null,
+ null),
+ "Button.focusInputMap", new UIDefaults.LazyInputMap(new Object[] {
+ "SPACE", "pressed",
+ "released SPACE", "released"
+ }),
+ "Button.font", new FontUIResource("Dialog", Font.PLAIN, 12),
+ "Button.foreground", new ColorUIResource(Color.black),
+ "Button.margin", new InsetsUIResource(2, 14, 2, 14),
+ "Button.textIconGap", new Integer(4),
+ "Button.textShiftOffset", new Integer(0),
+ "CheckBox.background", new ColorUIResource(Color.lightGray),
+ "CheckBox.border", new BorderUIResource.CompoundBorderUIResource(null,
+ null),
+ "CheckBox.focusInputMap", new UIDefaults.LazyInputMap(new Object[] {
+ "SPACE", "pressed",
+ "released SPACE", "released"
+ }),
+ "CheckBox.font", new FontUIResource("Dialog", Font.PLAIN, 12),
+ "CheckBox.foreground", new ColorUIResource(Color.black),
+ "CheckBox.icon", BasicIconFactory.getCheckBoxIcon(),
+ "CheckBox.margin",new InsetsUIResource(2, 2, 2, 2),
+ "CheckBox.textIconGap", new Integer(4),
+ "CheckBox.textShiftOffset", new Integer(0),
+ "CheckBoxMenuItem.acceleratorFont", new FontUIResource("Dialog",
+ Font.PLAIN, 12),
+ "CheckBoxMenuItem.acceleratorForeground", new ColorUIResource(Color.black),
+ "CheckBoxMenuItem.acceleratorSelectionForeground", new ColorUIResource(Color.white),
+ "CheckBoxMenuItem.arrowIcon", BasicIconFactory.getMenuItemArrowIcon(),
+ "CheckBoxMenuItem.background", new ColorUIResource(Color.lightGray),
+ "CheckBoxMenuItem.border", new BasicBorders.MarginBorder(),
+ "CheckBoxMenuItem.borderPainted", Boolean.FALSE,
+ "CheckBoxMenuItem.checkIcon", BasicIconFactory.getCheckBoxMenuItemIcon(),
+ "CheckBoxMenuItem.font", new FontUIResource("Dialog", Font.PLAIN, 12),
+ "CheckBoxMenuItem.foreground", new ColorUIResource(Color.black),
+ "CheckBoxMenuItem.margin", new InsetsUIResource(2, 2, 2, 2),
+ "CheckBoxMenuItem.selectionBackground", new ColorUIResource(0, 0, 128),
+ "CheckBoxMenuItem.selectionForeground", new ColorUIResource(Color.white),
+ "ColorChooser.background", new ColorUIResource(Color.lightGray),
+ "ColorChooser.cancelText", "Cancel",
+ "ColorChooser.font", new FontUIResource("Dialog", Font.PLAIN, 12),
+ "ColorChooser.foreground", new ColorUIResource(Color.black),
+ "ColorChooser.hsbBlueText", "B",
+ "ColorChooser.hsbBrightnessText", "B",
+ "ColorChooser.hsbGreenText", "G",
+ "ColorChooser.hsbHueText", "H",
+ "ColorChooser.hsbNameText", "HSB",
+ "ColorChooser.hsbRedText", "R",
+ "ColorChooser.hsbSaturationText", "S",
+ "ColorChooser.okText", "OK",
+ "ColorChooser.previewText", "Preview",
+ "ColorChooser.resetText", "Reset",
+ "ColorChooser.rgbBlueMnemonic", new Integer(66),
+ "ColorChooser.rgbBlueText", "Blue",
+ "ColorChooser.rgbGreenMnemonic", new Integer(71),
+ "ColorChooser.rgbGreenText", "Green",
+ "ColorChooser.rgbNameText", "RGB",
+ "ColorChooser.rgbRedMnemonic", new Integer(82),
+ "ColorChooser.rgbRedText", "Red",
+ "ColorChooser.sampleText", "Sample Text Sample Text",
+ "ColorChooser.swatchesDefaultRecentColor", new ColorUIResource(Color.lightGray),
+ "ColorChooser.swatchesNameText", "Swatches",
+ "ColorChooser.swatchesRecentSwatchSize", new Dimension(10, 10),
+ "ColorChooser.swatchesRecentText", "Recent:",
+ "ColorChooser.swatchesSwatchSize", new Dimension(10, 10),
+ "ComboBox.ancestorInputMap", new UIDefaults.LazyInputMap(new Object[] {
+ "ESCAPE", "hidePopup",
+ "PAGE_UP", "pageUpPassThrough",
+ "PAGE_DOWN", "pageDownPassThrough",
+ "HOME", "homePassThrough",
+ "END", "endPassThrough"
+ }),
+ "ComboBox.background", new ColorUIResource(Color.white),
+ "ComboBox.disabledBackground", new ColorUIResource(Color.lightGray),
+ "ComboBox.disabledForeground", new ColorUIResource(Color.gray),
+ "ComboBox.font", new FontUIResource("SansSerif", Font.PLAIN, 12),
+ "ComboBox.foreground", new ColorUIResource(Color.black),
+ "ComboBox.selectionBackground", new ColorUIResource(0, 0, 128),
+ "ComboBox.selectionForeground", new ColorUIResource(Color.white),
+ "Desktop.ancestorInputMap", new UIDefaults.LazyInputMap(new Object[] {
+ "KP_LEFT", "left",
+ "KP_RIGHT", "right",
+ "ctrl F5", "restore",
+ "LEFT", "left",
+ "ctrl alt F6", "selectNextFrame",
+ "UP", "up",
+ "ctrl F6", "selectNextFrame",
+ "RIGHT", "right",
+ "DOWN", "down",
+ "ctrl F7", "move",
+ "ctrl F8", "resize",
+ "ESCAPE", "escape",
+ "ctrl TAB", "selectNextFrame",
+ "ctrl F9", "minimize",
+ "KP_UP", "up",
+ "ctrl F4", "close",
+ "KP_DOWN", "down",
+ "ctrl F10", "maximize",
+ "ctrl alt shift F6","selectPreviousFrame"
+ }),
+ "Desktop.background", new ColorUIResource(0, 92, 92),
+ "DesktopIcon.border", new BorderUIResource.CompoundBorderUIResource(null,
+ null),
+ "EditorPane.background", new ColorUIResource(Color.white),
+ "EditorPane.border", new BasicBorders.MarginBorder(),
+ "EditorPane.caretBlinkRate", new Integer(500),
+ "EditorPane.caretForeground", new ColorUIResource(Color.red),
+ "EditorPane.font", new FontUIResource("Serif", Font.PLAIN, 12),
+ "EditorPane.foreground", new ColorUIResource(Color.black),
+ "EditorPane.inactiveForeground", new ColorUIResource(Color.gray),
+ "EditorPane.keyBindings", new JTextComponent.KeyBinding[] {
+ new JTextComponent.KeyBinding(KeyStroke.getKeyStroke(KeyEvent.VK_UP,
+ 0), "caret-up"),
+ new JTextComponent.KeyBinding(KeyStroke.getKeyStroke(KeyEvent.VK_DOWN,
+ 0), "caret-down"),
+ new JTextComponent.KeyBinding(KeyStroke.getKeyStroke(KeyEvent.VK_PAGE_UP,
+ 0), "page-up"),
+ new JTextComponent.KeyBinding(KeyStroke.getKeyStroke(KeyEvent.VK_PAGE_DOWN,
+ 0), "page-down"),
+ new JTextComponent.KeyBinding(KeyStroke.getKeyStroke(KeyEvent.VK_ENTER,
+ 0), "insert-break"),
+ new JTextComponent.KeyBinding(KeyStroke.getKeyStroke(KeyEvent.VK_TAB,
+ 0), "insert-tab")
+ },
+ "EditorPane.margin", new InsetsUIResource(3, 3, 3, 3),
+ "EditorPane.selectionBackground", new ColorUIResource(Color.lightGray),
+ "EditorPane.selectionForeground", new ColorUIResource(Color.white),
+ "FileChooser.acceptAllFileFilterText", "All Files (*.*)",
+ "FileChooser.ancestorInputMap", new UIDefaults.LazyInputMap(new Object[] {
+ "ESCAPE", "cancelSelection"
+ }),
+ "FileChooser.cancelButtonMnemonic", new Integer(67),
+ "FileChooser.cancelButtonText", "Cancel",
+ "FileChooser.cancelButtonToolTipText", "Abort file chooser dialog",
+ // XXX Don't use gif
+ "FileChooser.detailsViewIcon", new IconUIResource(new ImageIcon("icons/DetailsView.gif")),
+ "FileChooser.directoryDescriptionText", "Directory",
+ "FileChooser.fileDescriptionText", "Generic File",
+ "FileChooser.helpButtonMnemonic", new Integer(72),
+ "FileChooser.helpButtonText", "Help",
+ "FileChooser.helpButtonToolTipText", "FileChooser help",
+ // XXX Don't use gif
+ "FileChooser.homeFolderIcon", new IconUIResource(new ImageIcon("icons/HomeFolder.gif")),
+ // XXX Don't use gif
+ "FileChooser.listViewIcon", new IconUIResource(new ImageIcon("icons/ListView.gif")),
+ "FileChooser.newFolderErrorSeparator", ":",
+ "FileChooser.newFolderErrorText", "Error creating new folder",
+ // XXX Don't use gif
+ "FileChooser.newFolderIcon", new IconUIResource(new ImageIcon("icons/NewFolder.gif")),
+ "FileChooser.openButtonMnemonic", new Integer(79),
+ "FileChooser.openButtonText", "Open",
+ "FileChooser.openButtonToolTipText", "Open selected file",
+ "FileChooser.saveButtonMnemonic", new Integer(83),
+ "FileChooser.saveButtonText", "Save",
+ "FileChooser.saveButtonToolTipText", "Save selected file",
+ // XXX Don't use gif
+ "FileChooser.upFolderIcon", new IconUIResource(new ImageIcon("icons/UpFolder.gif")),
+ "FileChooser.updateButtonMnemonic", new Integer(85),
+ "FileChooser.updateButtonText", "Update",
+ "FileChooser.updateButtonToolTipText", "Update directory listing",
+ // XXX Don't use gif
+ "FileView.computerIcon", new IconUIResource(new ImageIcon("icons/Computer.gif")),
+ // XXX Don't use gif
+ "FileView.directoryIcon", new IconUIResource(new ImageIcon("icons/Directory.gif")),
+ // XXX Don't use gif
+ "FileView.fileIcon", new IconUIResource(new ImageIcon("icons/File.gif")),
+ // XXX Don't use gif
+ "FileView.floppyDriveIcon", new IconUIResource(new ImageIcon("icons/Floppy.gif")),
+ // XXX Don't use gif
+ "FileView.hardDriveIcon", new IconUIResource(new ImageIcon("icons/HardDrive.gif")),
+ "FocusManagerClassName", "TODO",
+ "FormView.resetButtonText", "Reset",
+ "FormView.submitButtonText", "Submit Query",
+ "InternalFrame.activeTitleBackground", new ColorUIResource(0, 0, 128),
+ "InternalFrame.activeTitleForeground", new ColorUIResource(Color.white),
+ "InternalFrame.border", new BorderUIResource.CompoundBorderUIResource(null,
+ null),
+ "InternalFrame.closeIcon", BasicIconFactory.createEmptyFrameIcon(),
+ // XXX Don't use gif
+ "InternalFrame.icon", new IconUIResource(new ImageIcon("icons/JavaCup.gif")),
+ "InternalFrame.iconifyIcon", BasicIconFactory.createEmptyFrameIcon(),
+ "InternalFrame.inactiveTitleBackground", new ColorUIResource(Color.gray),
+ "InternalFrame.inactiveTitleForeground", new ColorUIResource(Color.lightGray),
+ "InternalFrame.maximizeIcon", BasicIconFactory.createEmptyFrameIcon(),
+ "InternalFrame.minimizeIcon", BasicIconFactory.createEmptyFrameIcon(),
+ "InternalFrame.titleFont", new FontUIResource("Dialog", Font.PLAIN, 12),
+ "InternalFrame.windowBindings", new Object[] {
+ "shift ESCAPE", "showSystemMenu",
+ "ctrl SPACE", "showSystemMenu",
+ "ESCAPE", "showSystemMenu"
+ },
+ "Label.background", new ColorUIResource(Color.lightGray),
+ "Label.disabledForeground", new ColorUIResource(Color.white),
+ "Label.disabledShadow", new ColorUIResource(Color.gray),
+ "Label.font", new FontUIResource("Dialog", Font.PLAIN, 12),
+ "List.focusInputMap", new UIDefaults.LazyInputMap(new Object[] {
+ "PAGE_UP", "scrollUp",
+ "ctrl \\", "clearSelection",
+ "PAGE_DOWN", "scrollDown",
+ "shift PAGE_DOWN","scrollDownExtendSelection",
+ "END", "selectLastRow",
+ "HOME", "selectFirstRow",
+ "shift END", "selectLastRowExtendSelection",
+ "shift HOME", "selectFirstRowExtendSelection",
+ "UP", "selectPreviousRow",
+ "ctrl /", "selectAll",
+ "ctrl A", "selectAll",
+ "DOWN", "selectNextRow",
+ "shift UP", "selectPreviousRowExtendSelection",
+ "ctrl SPACE", "selectNextRowExtendSelection",
+ "shift DOWN", "selectNextRowExtendSelection",
+ "KP_UP", "selectPreviousRow",
+ "shift PAGE_UP","scrollUpExtendSelection",
+ "KP_DOWN", "selectNextRow"
+ }),
+ "List.foreground", new ColorUIResource(Color.black),
+ "List.selectionBackground", new ColorUIResource(0, 0, 128),
+ "List.selectionForeground", new ColorUIResource(Color.white),
+ "Menu.acceleratorFont", new FontUIResource("Dialog", Font.PLAIN, 12),
+ "Menu.acceleratorForeground", new ColorUIResource(Color.black),
+ "Menu.acceleratorSelectionForeground", new ColorUIResource(Color.white),
+ "Menu.arrowIcon", BasicIconFactory.getMenuArrowIcon(),
+ "Menu.background", new ColorUIResource(Color.lightGray),
+ "Menu.border", new BasicBorders.MarginBorder(),
+ "Menu.borderPainted", Boolean.FALSE,
+ "Menu.checkIcon", BasicIconFactory.getMenuItemCheckIcon(),
+ "Menu.consumesTabs", Boolean.TRUE,
+ "Menu.font", new FontUIResource("Dialog", Font.PLAIN, 12),
+ "Menu.foreground", new ColorUIResource(Color.black),
+ "Menu.margin", new InsetsUIResource(2, 2, 2, 2),
+ "Menu.selectedWindowInputMapBindings", new Object[] {
+ "ESCAPE", "cancel",
+ "DOWN", "selectNext",
+ "KP_DOWN", "selectNext",
+ "UP", "selectPrevious",
+ "KP_UP", "selectPrevious",
+ "LEFT", "selectParent",
+ "KP_LEFT", "selectParent",
+ "RIGHT", "selectChild",
+ "KP_RIGHT", "selectChild",
+ "ENTER", "return",
+ "SPACE", "return"
+ },
+ "Menutext.selectionBackground", new ColorUIResource(0, 0, 128),
+ "Menu.selectionForeground", new ColorUIResource(Color.white),
+ "MenuBar.background", new ColorUIResource(Color.lightGray),
+ "MenuBar.border", new BasicBorders.MenuBarBorder(null, null),
+ "MenuBar.font", new FontUIResource("Dialog", Font.PLAIN, 12),
+ "MenuBar.foreground", new ColorUIResource(Color.black),
+ "MenuBar.windowBindings", new Object[] {
+ "F10", "takeFocus"
+ },
+ "MenuItem.acceleratorDelimiter", "+",
+ "MenuItem.acceleratorFont", new FontUIResource("Dialog", Font.PLAIN, 12),
+ "MenuItem.acceleratorForeground", new ColorUIResource(Color.black),
+ "MenuItem.acceleratorSelectionForeground", new ColorUIResource(Color.white),
+ "MenuItem.arrowIcon", BasicIconFactory.getMenuItemArrowIcon(),
+ "MenuItem.background", new ColorUIResource(Color.lightGray),
+ "MenuItem.border", new BasicBorders.MarginBorder(),
+ "MenuItem.borderPainted", Boolean.FALSE,
+ "MenuItem.checkIcon", BasicIconFactory.getMenuItemCheckIcon(),
+ "MenuItem.font", new FontUIResource("Dialog", Font.PLAIN, 12),
+ "MenuItem.foreground", new ColorUIResource(Color.black),
+ "MenuItem.margin", new InsetsUIResource(2, 2, 2, 2),
+ "MenuItem.selectionBackground", new ColorUIResource(0, 0, 128),
+ "MenuItem.selectionForeground", new ColorUIResource(Color.white),
+ "OptionPane.background", new ColorUIResource(Color.lightGray),
+ "OptionPane.border", new BorderUIResource.EmptyBorderUIResource(0, 0, 0, 0),
+ "OptionPane.buttonAreaBorder", new BorderUIResource.EmptyBorderUIResource(0, 0, 0, 0),
+ "OptionPane.cancelButtonText", "Cancel",
+ // XXX Don't use gif
+ "OptionPane.errorIcon", new IconUIResource(new ImageIcon("icons/Error.gif")),
+ "OptionPane.font", new FontUIResource("Dialog", Font.PLAIN, 12),
+ "OptionPane.foreground", new ColorUIResource(Color.black),
+ // XXX Don't use gif
+ "OptionPane.informationIcon", new IconUIResource(new ImageIcon("icons/Inform.gif")),
+ "OptionPane.messageAreaBorder", new BorderUIResource.EmptyBorderUIResource(0, 0, 0, 0),
+ "OptionPane.messageForeground", new ColorUIResource(Color.black),
+ "OptionPane.minimumSize", new DimensionUIResource(262, 90),
+ "OptionPane.noButtonText", "No",
+ "OptionPane.okButtonText", "OK",
+ // XXX Don't use gif
+ "OptionPane.questionIcon", new IconUIResource(new ImageIcon("icons/Question.gif")),
+ // XXX Don't use gif
+ "OptionPane.warningIcon", new IconUIResource(new ImageIcon("icons/Warn.gif")),
+ "OptionPane.windowBindings", new Object[] {
+ "ESCAPE", "close"
+ },
+ "OptionPane.yesButtonText", "Yes",
+ "Panel.background", new ColorUIResource(Color.lightGray),
+ "Panel.font", new FontUIResource("Dialog", Font.PLAIN, 12),
+ "Panel.foreground", new ColorUIResource(Color.black),
+ "PasswordField.background", new ColorUIResource(Color.white),
+ "PasswordField.border", new BasicBorders.FieldBorder(null, null,
+ null, null),
+ "PasswordField.caretBlinkRate", new Integer(500),
+ "PasswordField.caretForeground", new ColorUIResource(Color.black),
+ "PasswordField.font", new FontUIResource("MonoSpaced", Font.PLAIN, 12),
+ "PasswordField.foreground", new ColorUIResource(Color.black),
+ "PasswordField.inactiveForeground", new ColorUIResource(Color.gray),
+ "PasswordField.keyBindings", new JTextComponent.KeyBinding[] {
+ new JTextComponent.KeyBinding(KeyStroke.getKeyStroke(KeyEvent.VK_ENTER,
+ 0),
+ "notify-field-accept")},
+ "PasswordField.margin", new InsetsUIResource(0, 0, 0, 0),
+ "PasswordField.selectionBackground", new ColorUIResource(0, 0, 128),
+ "PasswordField.selectionForeground", new ColorUIResource(Color.white),
+ "PopupMenu.background", new ColorUIResource(Color.lightGray),
+ "PopupMenu.border", new BorderUIResource.BevelBorderUIResource(0),
+ "PopupMenu.font", new FontUIResource("Dialog", Font.PLAIN, 12),
+ "PopupMenu.foreground", new ColorUIResource(Color.black),
+ "ProgressBar.background", new ColorUIResource(Color.lightGray),
+ "ProgressBar.border", new BorderUIResource.LineBorderUIResource(null),
+ "ProgressBar.cellLength", new Integer(1),
+ "ProgressBar.cellSpacing", new Integer(0),
+ "ProgressBar.font", new FontUIResource("Dialog", Font.PLAIN, 12),
+ "ProgressBar.foreground", new ColorUIResource(0, 0, 128),
+ "ProgressBar.selectionBackground", new ColorUIResource(0, 0, 128),
+ "ProgressBar.selectionForeground", new ColorUIResource(Color.lightGray),
+ "RadioButton.background", new ColorUIResource(Color.lightGray),
+ "RadioButton.border", new BorderUIResource.CompoundBorderUIResource(null,
+ null),
+ "RadioButton.focusInputMap", new UIDefaults.LazyInputMap(new Object[] {
+ "SPACE", "pressed",
+ "released SPACE", "released"
+ }),
+ "RadioButton.font", new FontUIResource("Dialog", Font.PLAIN, 12),
+ "RadioButton.foreground", new ColorUIResource(Color.black),
+ "RadioButton.icon", BasicIconFactory.getRadioButtonIcon(),
+ "RadioButton.margin", new InsetsUIResource(2, 2, 2, 2),
+ "RadioButton.textIconGap", new Integer(4),
+ "RadioButton.textShiftOffset", new Integer(0),
+ "RadioButtonMenuItem.acceleratorFont", new FontUIResource("Dialog",
+ Font.PLAIN, 12),
+ "RadioButtonMenuItem.acceleratorForeground", new ColorUIResource(Color.black),
+ "RadioButtonMenuItem.acceleratorSelectionForeground", new ColorUIResource(Color.white),
+ "RadioButtonMenuItem.arrowIcon", BasicIconFactory.getMenuItemArrowIcon(),
+ "RadioButtonMenuItem.background", new ColorUIResource(Color.lightGray),
+ "RadioButtonMenuItem.border", new BasicBorders.MarginBorder(),
+ "RadioButtonMenuItem.borderPainted", Boolean.FALSE,
+ "RadioButtonMenuItem.checkIcon", BasicIconFactory.getRadioButtonMenuItemIcon(),
+ "RadioButtonMenuItem.font", new FontUIResource("Dialog", Font.PLAIN, 12),
+ "RadioButtonMenuItem.foreground", new ColorUIResource(Color.black),
+ "RadioButtonMenuItem.margin", new InsetsUIResource(2, 2, 2, 2),
+ "RadioButtonMenuItem.selectionBackground", new ColorUIResource(0, 0, 128),
+ "RadioButtonMenuItem.selectionForeground", new ColorUIResource(Color.white),
+ "RootPane.defaultButtonWindowKeyBindings", new Object[] {
+ "ENTER", "press",
+ "released ENTER", "release",
+ "ctrl ENTER", "press",
+ "ctrl released ENTER", "release"
+ },
+ "ScrollBar.background", new ColorUIResource(224, 224, 224),
+ "ScrollBar.focusInputMap", new UIDefaults.LazyInputMap(new Object[] {
+ "PAGE_UP", "negativeBlockIncrement",
+ "PAGE_DOWN", "positiveBlockIncrement",
+ "END", "maxScroll",
+ "HOME", "minScroll",
+ "LEFT", "positiveUnitIncrement",
+ "KP_UP", "negativeUnitIncrement",
+ "KP_DOWN", "positiveUnitIncrement",
+ "UP", "negativeUnitIncrement",
+ "RIGHT", "negativeUnitIncrement",
+ "KP_LEFT", "positiveUnitIncrement",
+ "DOWN", "positiveUnitIncrement",
+ "KP_RIGHT", "negativeUnitIncrement"
+ }),
+ "ScrollBar.foreground", new ColorUIResource(Color.lightGray),
+ "ScrollBar.maximumThumbSize", new DimensionUIResource(4096, 4096),
+ "ScrollBar.minimumThumbSize", new DimensionUIResource(8, 8),
+ "ScrollBar.thumb", new ColorUIResource(Color.lightGray),
+ "ScrollBar.thumbDarkShadow", new ColorUIResource(Color.black),
+ "ScrollBar.thumbHighlight", new ColorUIResource(Color.white),
+ "ScrollBar.thumbLightShadow", new ColorUIResource(Color.gray),
+ "ScrollBar.track", new ColorUIResource(224, 224, 224),
+ "ScrollBar.trackHighlight", new ColorUIResource(Color.black),
+ "ScrollPane.ancestorInputMap", new UIDefaults.LazyInputMap(new Object[] {
+ "PAGE_UP", "scrollUp",
+ "KP_LEFT", "unitScrollLeft",
+ "ctrl PAGE_DOWN","scrollRight",
+ "PAGE_DOWN", "scrollDown",
+ "KP_RIGHT", "unitScrollRight",
+ "LEFT", "unitScrollLeft",
+ "ctrl END", "scrollEnd",
+ "UP", "unitScrollUp",
+ "RIGHT", "unitScrollRight",
+ "DOWN", "unitScrollDown",
+ "ctrl HOME", "scrollHome",
+ "ctrl PAGE_UP", "scrollLeft",
+ "KP_UP", "unitScrollUp",
+ "KP_DOWN", "unitScrollDown"
+ }),
+ "ScrollPane.background", new ColorUIResource(Color.lightGray),
+ "ScrollPane.border", new BorderUIResource.EtchedBorderUIResource(),
+ "ScrollPane.font", new FontUIResource("Dialog", Font.PLAIN, 12),
+ "ScrollPane.foreground", new ColorUIResource(Color.black),
+ "Separator.background", new ColorUIResource(Color.white),
+ "Separator.foreground", new ColorUIResource(Color.gray),
+ "Separator.highlight", new ColorUIResource(Color.white),
+ "Separator.shadow", new ColorUIResource(Color.gray),
+ "Slider.background", new ColorUIResource(Color.lightGray),
+ "Slider.focus", new ColorUIResource(Color.black),
+ "Slider.focusInputMap", new UIDefaults.LazyInputMap(new Object[] {
+ "PAGE_UP", "positiveBlockIncrement",
+ "PAGE_DOWN", "negativeBlockIncrement",
+ "END", "maxScroll",
+ "HOME", "minScroll",
+ "LEFT", "negativeUnitIncrement",
+ "KP_UP", "positiveUnitIncrement",
+ "KP_DOWN", "negativeUnitIncrement",
+ "UP", "positiveUnitIncrement",
+ "RIGHT", "positiveUnitIncrement",
+ "KP_LEFT", "negativeUnitIncrement",
+ "DOWN", "negativeUnitIncrement",
+ "KP_RIGHT", "positiveUnitIncrement"
+ }),
+ "Slider.focusInsets", new InsetsUIResource(2, 2, 2, 2),
+ "Slider.foreground", new ColorUIResource(Color.lightGray),
+ "Slider.highlight", new ColorUIResource(Color.white),
+ "Slider.shadow", new ColorUIResource(Color.gray),
+ "SplitPane.ancestorInputMap", new UIDefaults.LazyInputMap(new Object[] {
+ "F6", "toggleFocus",
+ "F8", "startResize",
+ "END", "selectMax",
+ "HOME", "selectMin",
+ "LEFT", "negativeIncremnent",
+ "KP_UP", "negativeIncrement",
+ "KP_DOWN", "positiveIncrement",
+ "UP", "negativeIncrement",
+ "RIGHT", "positiveIncrement",
+ "KP_LEFT", "negativeIncrement",
+ "DOWN", "positiveIncrement",
+ "KP_RIGHT", "positiveIncrement"
+ }),
+ "SplitPane.background", new ColorUIResource(Color.lightGray),
+ "SplitPane.border", new BasicBorders.SplitPaneBorder(null, null),
+ "SplitPane.dividerSize", new Integer(7),
+ "SplitPane.highlight", new ColorUIResource(Color.white),
+ "SplitPane.shadow", new ColorUIResource(Color.gray),
+ "TabbedPane.ancestorInputMap", new UIDefaults.LazyInputMap(new Object[] {
+ "ctrl PAGE_DOWN","navigatePageDown",
+ "ctrl PAGE_UP", "navigatePageUp",
+ "ctrl UP", "requestFocus",
+ "ctrl KP_UP", "requestFocus"
+ }),
+ "TabbedPane.background", new ColorUIResource(Color.lightGray),
+ "TabbedPane.contentBorderInsets", new InsetsUIResource(2, 2, 3, 3),
+ "TabbedPane.darkShadow", new ColorUIResource(Color.black),
+ "TabbedPane.focus", new ColorUIResource(Color.black),
+ "TabbedPane.focusInputMap", new UIDefaults.LazyInputMap(new Object[] {
+ "LEFT", "navigateLeft",
+ "KP_UP", "navigateUp",
+ "ctrl DOWN", "requestFocusForVisibleComponent",
+ "UP", "navigateUp",
+ "KP_DOWN", "navigateDown",
+ "RIGHT", "navigateRight",
+ "KP_LEFT", "navigateLeft",
+ "ctrl KP_DOWN", "requestFocusForVisibleComponent",
+ "KP_RIGHT", "navigateRight",
+ "DOWN", "navigateDown"
+ }),
+ "TabbedPane.font", new FontUIResource("Dialog", Font.PLAIN, 12),
+ "TabbedPane.foreground", new ColorUIResource(Color.black),
+ "TabbedPane.highlight", new ColorUIResource(Color.lightGray),
+ "TabbedPane.lightHighlight", new ColorUIResource(Color.white),
+ "TabbedPane.selectedTabPadInsets", new InsetsUIResource(2, 2, 2, 1),
+ "TabbedPane.shadow", new ColorUIResource(Color.gray),
+ "TabbedPane.tabAreaInsets", new InsetsUIResource(3, 2, 0, 2),
+ "TabbedPane.tabInsets", new InsetsUIResource(0, 4, 1, 4),
+ "TabbedPane.tabRunOverlay", new Integer(2),
+ "TabbedPane.textIconGap", new Integer(4),
+ "Table.ancestorInputMap", new UIDefaults.LazyInputMap(new Object[] {
+ "shift PAGE_DOWN","scrollDownExtendSelection",
+ "PAGE_DOWN", "scrollDownChangeSelection",
+ "END", "selectLastColumn",
+ "shift END", "selectLastColumnExtendSelection",
+ "HOME", "selectFirstColumn",
+ "ctrl END", "selectLastRow",
+ "ctrl shift END","selectLastRowExtendSelection",
+ "LEFT", "selectPreviousColumn",
+ "shift HOME", "selectFirstColumnExtendSelection",
+ "UP", "selectPreviousRow",
+ "RIGHT", "selectNextColumn",
+ "ctrl HOME", "selectFirstRow",
+ "shift LEFT", "selectPreviousColumnExtendSelection",
+ "DOWN", "selectNextRow",
+ "ctrl shift HOME","selectFirstRowExtendSelection",
+ "shift UP", "selectPreviousRowExtendSelection",
+ "F2", "startEditing",
+ "shift RIGHT", "selectNextColumnExtendSelection",
+ "TAB", "selectNextColumnCell",
+ "shift DOWN", "selectNextRowExtendSelection",
+ "ENTER", "selectNextRowCell",
+ "KP_UP", "selectPreviousRow",
+ "KP_DOWN", "selectNextRow",
+ "KP_LEFT", "selectPreviousColumn",
+ "KP_RIGHT", "selectNextColumn",
+ "shift TAB", "selectPreviousColumnCell",
+ "ctrl A", "selectAll",
+ "shift ENTER", "selectPreviousRowCell",
+ "shift KP_DOWN", "selectNextRowExtendSelection",
+ "shift KP_LEFT", "selectPreviousColumnExtendSelection",
+ "ESCAPE", "cancel",
+ "ctrl shift PAGE_UP", "scrollRightExtendSelection",
+ "shift KP_RIGHT", " selectNextColumnExtendSelection",
+ "ctrl PAGE_UP", "scrollLeftChangeSelection",
+ "shift PAGE_UP", "scrollUpExtendSelection",
+ "ctrl shift PAGE_DOWN", "scrollLeftExtendSelection",
+ "ctrl PAGE_DOWN", "scrollRightChangeSelection",
+ "PAGE_UP", "scrollUpChangeSelection"
+ }),
+ "Table.background", new ColorUIResource(Color.white),
+ "Table.focusCellBackground", new ColorUIResource(Color.white),
+ "Table.focusCellForeground", new ColorUIResource(Color.black),
+ "Table.focusCellHighlightBorder", new BorderUIResource.LineBorderUIResource(null),
+ "Table.font", new FontUIResource("Dialog", Font.PLAIN, 12),
+ "Table.foreground", new ColorUIResource(Color.black),
+ "Table.gridColor", new ColorUIResource(Color.gray),
+ "Table.scrollPaneBorder", new BorderUIResource.BevelBorderUIResource(0),
+ "Table.selectionBackground", new ColorUIResource(0, 0, 128),
+ "Table.selectionForeground", new ColorUIResource(Color.white),
+ "TableHeader.background", new ColorUIResource(Color.lightGray),
+ "TableHeader.cellBorder", new BorderUIResource.BevelBorderUIResource(0),
+ "TableHeader.font", new FontUIResource("Dialog", Font.PLAIN, 12),
+ "TableHeader.foreground", new ColorUIResource(Color.black),
+ "TextArea.background", new ColorUIResource(Color.white),
+ "TextArea.border", new BasicBorders.MarginBorder(),
+ "TextArea.caretBlinkRate", new Integer(500),
+ "TextArea.caretForeground", new ColorUIResource(Color.black),
+ "TextArea.font", new FontUIResource("MonoSpaced", Font.PLAIN, 12),
+ "TextArea.foreground", new ColorUIResource(Color.black),
+ "TextArea.inactiveForeground", new ColorUIResource(Color.gray),
+ "TextArea.keyBindings", new JTextComponent.KeyBinding[] {
+ new JTextComponent.KeyBinding(KeyStroke.getKeyStroke(KeyEvent.VK_UP,
+ 0), "caret-up"),
+ new JTextComponent.KeyBinding(KeyStroke.getKeyStroke(KeyEvent.VK_DOWN,
+ 0), "caret-down"),
+ new JTextComponent.KeyBinding(KeyStroke.getKeyStroke(KeyEvent.VK_PAGE_UP,
+ 0), "page-up"),
+ new JTextComponent.KeyBinding(KeyStroke.getKeyStroke(KeyEvent.VK_PAGE_DOWN,
+ 0), "page-down"),
+ new JTextComponent.KeyBinding(KeyStroke.getKeyStroke(KeyEvent.VK_ENTER,
+ 0), "insert-break"),
+ new JTextComponent.KeyBinding(KeyStroke.getKeyStroke(KeyEvent.VK_TAB,
+ 0), "insert-tab")
+ },
+ "TextArea.margin", new InsetsUIResource(0, 0, 0, 0),
+ "TextArea.selectionBackground", new ColorUIResource(0, 0, 128),
+ "TextArea.selectionForeground", new ColorUIResource(Color.white),
+ "TextField.background", new ColorUIResource(Color.white),
+ "TextField.border", new BasicBorders.FieldBorder(null, null, null, null),
+ "TextField.caretBlinkRate", new Integer(500),
+ "TextField.caretForeground", new ColorUIResource(Color.black),
+ "TextField.font", new FontUIResource("SansSerif", Font.PLAIN, 12),
+ "TextField.foreground", new ColorUIResource(Color.black),
+ "TextField.inactiveForeground", new ColorUIResource(Color.gray),
+ "TextField.keyBindings", new JTextComponent.KeyBinding[] {
+ new JTextComponent.KeyBinding(KeyStroke.getKeyStroke(KeyEvent.VK_ENTER,
+ 0),
+ "notify-field-accept")},
+ "TextField.margin", new InsetsUIResource(0, 0, 0, 0),
+ "TextField.selectionBackground", new ColorUIResource(0, 0, 128),
+ "TextField.selectionForeground", new ColorUIResource(Color.white),
+ "TextPane.background", new ColorUIResource(Color.white),
+ "TextPane.border", new BasicBorders.MarginBorder(),
+ "TextPane.caretBlinkRate", new Integer(500),
+ "TextPane.caretForeground", new ColorUIResource(Color.black),
+ "TextPane.font", new FontUIResource("Serif", Font.PLAIN, 12),
+ "TextPane.foreground", new ColorUIResource(Color.black),
+ "TextPane.inactiveForeground", new ColorUIResource(Color.gray),
+ "TextPane.keyBindings", new JTextComponent.KeyBinding[] {
+ new JTextComponent.KeyBinding(KeyStroke.getKeyStroke(KeyEvent.VK_UP,
+ 0), "caret-up"),
+ new JTextComponent.KeyBinding(KeyStroke.getKeyStroke(KeyEvent.VK_DOWN,
+ 0), "caret-down"),
+ new JTextComponent.KeyBinding(KeyStroke.getKeyStroke(KeyEvent.VK_PAGE_UP,
+ 0), "page-up"),
+ new JTextComponent.KeyBinding(KeyStroke.getKeyStroke(KeyEvent.VK_PAGE_DOWN,
+ 0), "page-down"),
+ new JTextComponent.KeyBinding(KeyStroke.getKeyStroke(KeyEvent.VK_ENTER,
+ 0), "insert-break"),
+ new JTextComponent.KeyBinding(KeyStroke.getKeyStroke(KeyEvent.VK_TAB,
+ 0), "insert-tab")
+ },
+ "TextPane.margin", new InsetsUIResource(3, 3, 3, 3),
+ "TextPane.selectionBackground", new ColorUIResource(Color.lightGray),
+ "TextPane.selectionForeground", new ColorUIResource(Color.white),
+ "TitledBorder.border", new BorderUIResource.EtchedBorderUIResource(),
+ "TitledBorder.font", new FontUIResource("Dialog", Font.PLAIN, 12),
+ "TitledBorder.titleColor", new ColorUIResource(Color.black),
+ "ToggleButton.background", new ColorUIResource(Color.lightGray),
+ "ToggleButton.border", new BorderUIResource.CompoundBorderUIResource(null, null),
+ "ToggleButton.focusInputMap", new UIDefaults.LazyInputMap(new Object[] {
+ "SPACE", "pressed",
+ "released SPACE", "released"
+ }),
+ "ToggleButton.font", new FontUIResource("Dialog", Font.PLAIN, 12),
+ "ToggleButton.foreground", new ColorUIResource(Color.black),
+ "ToggleButton.margin", new InsetsUIResource(2, 14, 2, 14),
+ "ToggleButton.textIconGap", new Integer(4),
+ "ToggleButton.textShiftOffset", new Integer(0),
+ "ToolBar.ancestorInputMap", new UIDefaults.LazyInputMap(new Object[] {
+ "UP", "navigateUp",
+ "KP_UP", "navigateUp",
+ "DOWN", "navigateDown",
+ "KP_DOWN", "navigateDown",
+ "LEFT", "navigateLeft",
+ "KP_LEFT", "navigateLeft",
+ "RIGHT", "navigateRight",
+ "KP_RIGHT", "navigateRight"
+ }),
+ "ToolBar.background", new ColorUIResource(Color.lightGray),
+ "ToolBar.border", new BorderUIResource.EtchedBorderUIResource(),
+ "ToolBar.dockingBackground", new ColorUIResource(Color.lightGray),
+ "ToolBar.dockingForeground", new ColorUIResource(Color.red),
+ "ToolBar.floatingBackground", new ColorUIResource(Color.lightGray),
+ "ToolBar.floatingForeground", new ColorUIResource(Color.darkGray),
+ "ToolBar.font", new FontUIResource("Dialog", Font.PLAIN, 12),
+ "ToolBar.foreground", new ColorUIResource(Color.black),
+ "ToolBar.separatorSize", new DimensionUIResource(10, 10),
+ "ToolTip.background", new ColorUIResource(Color.white),
+ "ToolTip.border", new BorderUIResource.LineBorderUIResource(null),
+ "ToolTip.font", new FontUIResource("SansSerif", Font.PLAIN, 12),
+ "ToolTip.foreground", new ColorUIResource(Color.black),
+ "Tree.ancestorInputMap", new UIDefaults.LazyInputMap(new Object[] {
+ "ESCAPE", "cancel"
+ }),
+ "Tree.background", new ColorUIResource(Color.white),
+ "Tree.changeSelectionWithFocus", Boolean.TRUE,
+ // XXX Don't use gif
+ "Tree.closedIcon", new IconUIResource(new ImageIcon("icons/TreeClosed.gif")),
+ "Tree.drawsFocusBorderAroundIcon", Boolean.FALSE,
+ "Tree.editorBorder", new BorderUIResource.LineBorderUIResource(null),
+ "Tree.focusInputMap", new UIDefaults.LazyInputMap(new Object[] {
+ "shift PAGE_DOWN", "scrollDownExtendSelection",
+ "PAGE_DOWN", "scrollDownChangeSelection",
+ "END", "selectLast",
+ "ctrl KP_UP", "selectPreviousChangeLead",
+ "shift END", "selectLastExtendSelection",
+ "HOME", "selectFirst",
+ "ctrl END", "selectLastChangeLead",
+ "ctrl /", "selectAll",
+ "LEFT", "selectParent",
+ "shift HOME", "selectFirstExtendSelection",
+ "UP", "selectPrevious",
+ "ctrl KP_DOWN", "selectNextChangeLead",
+ "RIGHT", "selectChild",
+ "ctrl HOME", "selectFirstChangeLead",
+ "DOWN", "selectNext",
+ "ctrl KP_LEFT", "scrollLeft",
+ "shift UP", "selectPreviousExtendSelection",
+ "F2", "startEditing",
+ "ctrl LEFT", "scrollLeft",
+ "ctrl KP_RIGHT","scrollRight",
+ "ctrl UP", "selectPreviousChangeLead",
+ "shift DOWN", "selectNextExtendSelection",
+ "ENTER", "toggle",
+ "KP_UP", "selectPrevious",
+ "KP_DOWN", "selectNext",
+ "ctrl RIGHT", "scrollRight",
+ "KP_LEFT", "selectParent",
+ "KP_RIGHT", "selectChild",
+ "ctrl DOWN", "selectNextChangeLead",
+ "ctrl A", "selectAll",
+ "shift KP_UP", "selectPreviousExtendSelection",
+ "shift KP_DOWN","selectNextExtendSelection",
+ "ctrl SPACE", "toggleSelectionPreserveAnchor",
+ "ctrl shift PAGE_UP", "scrollUpExtendSelection",
+ "ctrl \\", "clearSelection",
+ "shift SPACE", "extendSelection",
+ "ctrl PAGE_UP", "scrollUpChangeLead",
+ "shift PAGE_UP","scrollUpExtendSelection",
+ "SPACE", "toggleSelectionPreserveAnchor",
+ "ctrl shift PAGE_DOWN", "scrollDownExtendSelection",
+ "PAGE_UP", "scrollUpChangeSelection",
+ "ctrl PAGE_DOWN", "scrollDownChangeLead"
+ }),
+ "Tree.font", new FontUIResource("Dialog", Font.PLAIN, 12),
+ "Tree.foreground", new ColorUIResource(Color.black),
+ "Tree.hash", new ColorUIResource(Color.gray),
+ // XXX Don't use gif
+ "Tree.leafIcon", new IconUIResource(new ImageIcon("icons/TreeLeaf.gif")),
+ "Tree.leftChildIndent", new Integer(7),
+ // XXX Don't use gif
+ "Tree.openIcon", new IconUIResource(new ImageIcon("icons/TreeOpen.gif")),
+ "Tree.rightChildIndent", new Integer(13),
+ "Tree.rowHeight", new Integer(16),
+ "Tree.scrollsOnExpand", Boolean.TRUE,
+ "Tree.selectionBackground", new ColorUIResource(0, 0, 128),
+ "Tree.selectionBorderColor", new ColorUIResource(Color.black),
+ "Tree.selectionForeground", new ColorUIResource(Color.white),
+ "Tree.textBackground", new ColorUIResource(Color.lightGray),
+ "Tree.textForeground", new ColorUIResource(Color.black),
+ "Viewport.background", new ColorUIResource(Color.lightGray),
+ "Viewport.font", new FontUIResource("Dialog", Font.PLAIN, 12),
+ };
+ defaults.putDefaults(uiDefaults);
+ }
+} // class BasicLookAndFeel
diff --git a/libjava/javax/swing/plaf/basic/BasicOptionPaneUI.java b/libjava/javax/swing/plaf/basic/BasicOptionPaneUI.java
new file mode 100644
index 00000000000..bfb6cbadfdc
--- /dev/null
+++ b/libjava/javax/swing/plaf/basic/BasicOptionPaneUI.java
@@ -0,0 +1,103 @@
+package javax.swing.plaf.basic;
+
+import java.awt.*;
+import java.awt.event.*;
+import javax.swing.*;
+import javax.swing.plaf.*;
+import javax.accessibility.*;
+
+public class BasicOptionPaneUI extends OptionPaneUI
+{
+ JOptionPane pane;
+
+ BasicOptionPaneUI()
+ {
+ }
+
+ public static ComponentUI createUI(JComponent x)
+ {
+ return new BasicOptionPaneUI();
+ }
+
+ public void installUI(JComponent c)
+ {
+ super.installUI(c);
+ pane = (JOptionPane)c;
+
+ System.out.println(" -------------: " + pane);
+
+ JLabel message = pane.msg != null ? new JLabel((String)pane.msg) : null;
+ JButton ok_button = new JButton("Ok");
+
+ ok_button.addActionListener(new ActionListener()
+ {
+ public void actionPerformed(ActionEvent a)
+ {
+ System.out.println("ACTION ---> " + a);
+ // pane.dialog.dispose();
+
+ if (pane.dialog.isModal())
+ {
+ System.out.println("modal dialog !!");
+ pane.dialog.setModal(false);
+ }
+ pane.dialog.setVisible(false);
+ }
+ });
+
+ if (pane.args != null)
+ {
+ for (int i=0; i<pane.args.length; i++)
+ {
+ Object o = pane.args[i];
+ if (o != null)
+ {
+ if (o instanceof String)
+ {
+ String s = (String) o;
+ JLabel m = new JLabel(s);
+ pane.add(m);
+ }
+ else if (o instanceof Component)
+ {
+ Component com = (Component) o;
+ pane.add(com);
+ }
+ else
+ {
+ System.out.println("UNRECOGNIZED ARG: " + o);
+ }
+ }
+ }
+ }
+
+ pane.add(message);
+ pane.add(ok_button);
+ }
+
+ Dimension getMinimumOptionPaneSize()
+ {
+ return new Dimension(300,100);
+ }
+
+ public Dimension getPreferredSize(JComponent c)
+ {
+ if (c == null)
+ return getMinimumOptionPaneSize();
+
+ if (c != pane)
+ return null;
+
+ LayoutManager l = c.getLayout();
+ if (l == null)
+ return getMinimumOptionPaneSize();
+
+ Dimension d1 = l.preferredLayoutSize(c);
+ Dimension d2 = getMinimumOptionPaneSize();
+
+ d1.width = Math.max(d1.width, d2.width);
+ d1.height = Math.max(d1.height, d2.height);
+
+ return d2;
+ }
+}
diff --git a/libjava/javax/swing/plaf/basic/BasicPanelUI.java b/libjava/javax/swing/plaf/basic/BasicPanelUI.java
new file mode 100644
index 00000000000..5976bd2a1f2
--- /dev/null
+++ b/libjava/javax/swing/plaf/basic/BasicPanelUI.java
@@ -0,0 +1,21 @@
+package javax.swing.plaf.basic;
+
+import javax.swing.*;
+import javax.swing.plaf.*;
+import java.awt.*;
+
+
+public class BasicPanelUI extends PanelUI
+{
+ int gap = 3;
+
+ public static ComponentUI createUI(JComponent x)
+ {
+ return new BasicPanelUI();
+ }
+
+ public void installUI(JComponent c)
+ {
+ super.installUI(c);
+ }
+}
diff --git a/libjava/javax/swing/plaf/basic/BasicRadioButtonUI.java b/libjava/javax/swing/plaf/basic/BasicRadioButtonUI.java
new file mode 100644
index 00000000000..4f8f9289828
--- /dev/null
+++ b/libjava/javax/swing/plaf/basic/BasicRadioButtonUI.java
@@ -0,0 +1,127 @@
+package javax.swing.plaf.basic;
+
+import javax.swing.*;
+import javax.swing.plaf.*;
+import java.awt.*;
+
+
+public class BasicRadioButtonUI extends BasicToggleButtonUI
+{
+ int large_circle_width = 20;
+ int circle_width = large_circle_width - 8; // FIXME: sun == ?
+
+ public static ComponentUI createUI(final JComponent c) {
+ return new BasicRadioButtonUI();
+ }
+
+
+ public void installUI(final JComponent c) {
+ super.installUI(c);
+ }
+
+ public Dimension getPreferredSize(JComponent c)
+ {
+ AbstractButton b = (AbstractButton)c;
+ Dimension d = BasicGraphicsUtils.getPreferredSize(b,
+ gap,
+ b.getText(),
+ b.getIcon(),
+ b.getVerticalAlignment(),
+ b.getHorizontalAlignment(),
+ b.getHorizontalTextPosition(),
+ b.getVerticalTextPosition());
+
+ // and add a little something for the circles:
+
+ d.width += large_circle_width;
+ d.height = Math.max(large_circle_width, d.height);
+
+ //System.out.println("^^^^^^^^^^^^^^^^^^^^^^ BASIC-PREF="+d + ",T="+b.text);
+ return d;
+ }
+
+ protected void paintFocus(Graphics g,
+ JComponent c,
+ Rectangle vr,
+ Rectangle tr,
+ Rectangle ir)
+ {
+ }
+
+ protected void paintIcon(Graphics g,
+ JComponent c,
+ Rectangle iconRect)
+ {
+ }
+
+ protected void paintButtonPressed(Graphics g,
+ JComponent b)
+ {
+ Dimension size = b.getSize();
+
+ paintButtonNormal(g, b);
+
+ int x = gap;
+ int y = gap;
+
+ int diffp = 2;
+ int diff = 3;
+
+ g.setColor(textColor);
+ g.fillArc(x+diffp, y+diffp,
+ circle_width-diff, circle_width-diff,
+ 0, 360);
+ }
+
+ protected void paintButtonNormal(Graphics g,
+ JComponent c)
+ {
+ AbstractButton b = (AbstractButton) c;
+
+ Dimension size = b.getSize();
+
+ g.setColor(normalBackgroundColor);
+ g.fillRect(1,1,size.width-2, size.height-2);
+
+ int x = gap;
+ int y = gap;
+
+ g.setColor(pressedBackgroundColor);
+ g.drawArc(x, y,
+ circle_width, circle_width,
+ 0, 360);
+
+ g.setColor(new Color(255,255,255));
+ g.drawArc(x, y,
+ circle_width+1, circle_width+1,
+ 145, 160);
+ }
+
+ protected void paintText(Graphics g,
+ JComponent c,
+ Rectangle textRect,
+ String text)
+ {
+ // AbstractButton b = (AbstractButton) c;
+
+ //System.out.println("drawing string: " + text + ", " + c.isEnabled());
+
+ g.setColor(c.isEnabled() ? textColor : disabledTextColor);
+
+ BasicGraphicsUtils.drawString(g,
+ text,
+ 0,
+ textRect.x + circle_width + gap,
+ textRect.y);
+ }
+}
+
+
+
+
+
+
+
+
+
+
diff --git a/libjava/javax/swing/plaf/basic/BasicScrollPaneUI.java b/libjava/javax/swing/plaf/basic/BasicScrollPaneUI.java
new file mode 100644
index 00000000000..8d50b046e2e
--- /dev/null
+++ b/libjava/javax/swing/plaf/basic/BasicScrollPaneUI.java
@@ -0,0 +1,66 @@
+package javax.swing.plaf.basic;
+
+
+import javax.swing.plaf.*;
+import javax.swing.*;
+import java.awt.*;
+
+
+
+public class BasicScrollPaneUI extends ScrollPaneUI
+{
+ int min_w = 50;
+ int min_h = 50;
+
+ public static ComponentUI createUI(final JComponent c)
+ {
+ return new BasicScrollPaneUI();
+ }
+
+
+ public void installUI(final JComponent c)
+ {
+ super.installUI(c);
+ }
+
+
+ public Dimension getPreferredSize(JComponent c)
+ {
+ JScrollPane p = (JScrollPane ) c;
+
+ Dimension d = new Dimension(min_w,
+ min_h);
+
+ Dimension a = p.getViewport().getPreferredSize();
+
+ if (a != null)
+ {
+ d.width = Math.max(d.width, a.width);
+ d.height = Math.max(d.height, a.height);
+ }
+
+
+ System.out.println("BasicScrollPaneUI->preff->"+d);
+ return d;
+ }
+
+ public void paint(Graphics g, JComponent c)
+ {
+ System.out.println("BasicScrollPaneUI->paint()->"+c);
+
+ JScrollPane p = (JScrollPane ) c;
+ p.getViewport().paint(g);
+ }
+}
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/libjava/javax/swing/plaf/basic/BasicTabbedPaneUI.java b/libjava/javax/swing/plaf/basic/BasicTabbedPaneUI.java
new file mode 100644
index 00000000000..49328d26740
--- /dev/null
+++ b/libjava/javax/swing/plaf/basic/BasicTabbedPaneUI.java
@@ -0,0 +1,64 @@
+package javax.swing.plaf.basic;
+
+import javax.swing.*;
+import java.awt.*;
+import javax.swing.plaf.*;
+
+public class BasicTabbedPaneUI extends TabbedPaneUI
+{
+ public static ComponentUI createUI(final JComponent c)
+ {
+ return new BasicTabbedPaneUI();
+ }
+
+ public void installUI(final JComponent c)
+ {
+ super.installUI(c);
+ }
+
+ public Dimension getPreferredSize(JComponent c)
+ {
+ JTabbedPane p = (JTabbedPane) c;
+
+ Dimension d = new Dimension(50,50);
+
+ for (int i=0;i<p.getTabCount();i++)
+ {
+ Component comp = p.getComponentAt(i);
+
+ Dimension pr = comp.getPreferredSize();
+
+ d.width = Math.max(d.width, comp.getWidth());
+ d.height = Math.max(d.height, comp.getHeight());
+ }
+
+ Insets i = p.getInsets();
+
+ d.width += i.left + i.right;
+ d.height += i.top + i.bottom;
+
+ int height_of_tabs = 25;
+
+ d.height += height_of_tabs;
+
+ // FIXME: should be max of panes in p
+ return d;
+ }
+
+
+ public Rectangle getTabBounds(JTabbedPane pane, int index)
+ {
+ return null;
+ }
+
+ public int getTabRunCount(JTabbedPane pane)
+ {
+ return 0;
+ }
+
+ public int tabForCoordinate(JTabbedPane pane, int x, int y)
+ {
+ return 0;
+ }
+}
+
diff --git a/libjava/javax/swing/plaf/basic/BasicTextUI.java b/libjava/javax/swing/plaf/basic/BasicTextUI.java
new file mode 100644
index 00000000000..bdb6e4c3a36
--- /dev/null
+++ b/libjava/javax/swing/plaf/basic/BasicTextUI.java
@@ -0,0 +1,126 @@
+package javax.swing.plaf.basic;
+
+import javax.swing.text.*;
+import javax.swing.plaf.*;
+import java.awt.*;
+import javax.swing.*;
+
+public class BasicTextUI extends TextUI
+{
+ int gap = 3;
+ View view = new RootView();
+ Color textColor, disabledTextColor, normalBackgroundColor;
+ EditorKit kit = new DefaultEditorKit();
+
+ class RootView extends View
+ {
+ RootView()
+ {
+ super(null);
+ }
+ public void paint(Graphics g, Shape s)
+ {
+ if (view != null)
+ {
+ Rectangle r = s.getBounds();
+
+ view.setSize((int)r.getWidth(),
+ (int)r.getHeight());
+ view.paint(g, s);
+ }
+ }
+ }
+
+ public BasicTextUI()
+ {
+ }
+
+ public static ComponentUI createUI(final JComponent c)
+ {
+ return new BasicTextUI();
+ }
+
+
+ public void installUI(final JComponent c)
+ {
+ super.installUI(c);
+
+ textColor = new Color(0,0,0);
+ disabledTextColor = new Color(130, 130, 130);
+ normalBackgroundColor = new Color(192,192,192);
+ }
+
+ public Dimension getPreferredSize(JComponent c)
+ {
+ JTextComponent b = (JTextComponent) c;
+
+ View v = getRootView(b);
+
+ float w = v.getPreferredSpan(View.X_AXIS);
+ float h = v.getPreferredSpan(View.Y_AXIS);
+
+ return new Dimension((int)w, (int) h);
+ }
+
+
+ public void paint(Graphics g, JComponent c)
+ {
+ // view.paint(
+ }
+
+ public void damageRange(JTextComponent t, int p0, int p1)
+ {
+ damageRange(t, p0, p1, null, null);
+ }
+
+ public void damageRange(JTextComponent t,
+ int p0, int p1,
+ Position.Bias firstBias,
+ Position.Bias secondBias)
+ {
+ }
+
+ public EditorKit getEditorKit(JTextComponent t)
+ {
+ return kit;
+ }
+
+ public int getNextVisualPositionFrom(JTextComponent t,
+ int pos,
+ Position.Bias b,
+ int direction,
+ Position.Bias[] biasRet)
+ {
+ return 0;
+ }
+
+ public View getRootView(JTextComponent t)
+ {
+ return view;
+ }
+
+ public Rectangle modelToView(JTextComponent t, int pos)
+ {
+ return modelToView(t, pos, null);
+ }
+
+ public Rectangle modelToView(JTextComponent t, int pos, Position.Bias bias)
+ {
+ return null;
+ }
+
+ public int viewToModel(JTextComponent t, Point pt)
+ {
+ return viewToModel(t, pt, null);
+ }
+
+ public int viewToModel(JTextComponent t, Point pt, Position.Bias[] biasReturn)
+ {
+ return 0;
+ }
+}
+
+
+
+
+
diff --git a/libjava/javax/swing/plaf/basic/BasicToggleButtonUI.java b/libjava/javax/swing/plaf/basic/BasicToggleButtonUI.java
new file mode 100644
index 00000000000..507d61732e4
--- /dev/null
+++ b/libjava/javax/swing/plaf/basic/BasicToggleButtonUI.java
@@ -0,0 +1,90 @@
+package javax.swing.plaf.basic;
+
+import javax.swing.*;
+import javax.swing.plaf.*;
+import java.awt.*;
+
+
+public class BasicToggleButtonUI extends BasicButtonUI
+{
+
+ public static ComponentUI createUI(final JComponent c) {
+ return new BasicToggleButtonUI();
+ }
+
+
+ public void installUI(final JComponent c) {
+ super.installUI(c);
+ }
+
+ public Dimension getPreferredSize(JComponent c)
+ {
+ AbstractButton b = (AbstractButton)c;
+ Dimension d = BasicGraphicsUtils.getPreferredSize(b,
+ gap,
+ b.getText(),
+ b.getIcon(),
+ b.getVerticalAlignment(),
+ b.getHorizontalAlignment(),
+ b.getHorizontalTextPosition(),
+ b.getVerticalTextPosition());
+
+ //System.out.println("^^^^^^^^^^^^^^^^^^^^^^ BASIC-PREF="+d + ",T="+b.text);
+ return d;
+ }
+
+ protected void paintFocus(Graphics g,
+ JComponent c,
+ Rectangle vr,
+ Rectangle tr,
+ Rectangle ir)
+ {
+ }
+
+ protected void paintIcon(Graphics g,
+ JComponent c,
+ Rectangle iconRect)
+ {
+ }
+
+ protected void paintButtonPressed(Graphics g,
+ JComponent b)
+ {
+ Dimension size = b.getSize();
+
+ g.setColor(pressedBackgroundColor);
+ g.fillRect(1,1,size.width-2, size.height-2);
+
+ }
+
+ protected void paintButtonNormal(Graphics g,
+ JComponent b)
+ {
+ Dimension size = b.getSize();
+
+ g.setColor(normalBackgroundColor);
+ g.fillRect(1,1,size.width-2, size.height-2);
+
+ }
+ protected void paintText(Graphics g,
+ JComponent c,
+ Rectangle textRect,
+ String text)
+ {
+ // AbstractButton b = (AbstractButton) c;
+
+ // System.out.println("drawing string: " + text + ", at:" + textRect);
+
+ g.setColor(textColor);
+
+ BasicGraphicsUtils.drawString(g,
+ text,
+ 0,
+ textRect.x,
+ textRect.y);
+ }
+}
+
+
+
+
diff --git a/libjava/javax/swing/plaf/basic/BasicTreeUI.java b/libjava/javax/swing/plaf/basic/BasicTreeUI.java
new file mode 100644
index 00000000000..1f4f2a8b2d4
--- /dev/null
+++ b/libjava/javax/swing/plaf/basic/BasicTreeUI.java
@@ -0,0 +1,7 @@
+package javax.swing.plaf.basic;
+
+import javax.swing.plaf.*;
+
+public class BasicTreeUI extends TreeUI
+{
+}
diff --git a/libjava/javax/swing/plaf/basic/BasicViewportUI.java b/libjava/javax/swing/plaf/basic/BasicViewportUI.java
new file mode 100644
index 00000000000..1e592003773
--- /dev/null
+++ b/libjava/javax/swing/plaf/basic/BasicViewportUI.java
@@ -0,0 +1,33 @@
+package javax.swing.plaf.basic;
+
+import javax.swing.plaf.*;
+import javax.swing.*;
+import java.awt.*;
+
+public class BasicViewportUI extends ViewportUI
+{
+
+ public static ComponentUI createUI(final JComponent c)
+ {
+ return new BasicViewportUI();
+ }
+
+
+ public void installUI(final JComponent c)
+ {
+ super.installUI(c);
+ }
+
+
+ public Dimension getPreferredSize(JComponent c)
+ {
+ Dimension d = new Dimension(100,100);
+ System.out.println("BasicViewportUI->preff->"+d);
+ return d;
+ }
+
+ public void paint(Graphics g, JComponent c)
+ {
+ System.out.println("BasicViewportUI->paint->"+c);
+ }
+}