summaryrefslogtreecommitdiffstats
path: root/libjava/classpath/javax/swing/plaf/basic/BasicComboBoxRenderer.java
diff options
context:
space:
mode:
authormark <mark@138bc75d-0d04-0410-961f-82ee72b054a4>2006-05-18 17:29:21 +0000
committermark <mark@138bc75d-0d04-0410-961f-82ee72b054a4>2006-05-18 17:29:21 +0000
commit64089cc9f030d8ef7972adb5d117e0b23f47d62b (patch)
tree9f9c470de62ee62fba1331a396450d728d2b1fad /libjava/classpath/javax/swing/plaf/basic/BasicComboBoxRenderer.java
parent96034e28360d660d7a7708807fcbc4b519574d8e (diff)
downloadppe42-gcc-64089cc9f030d8ef7972adb5d117e0b23f47d62b.tar.gz
ppe42-gcc-64089cc9f030d8ef7972adb5d117e0b23f47d62b.zip
Imported GNU Classpath 0.90
* scripts/makemake.tcl: LocaleData.java moved to gnu/java/locale. * sources.am: Regenerated. * gcj/javaprims.h: Regenerated. * Makefile.in: Regenerated. * gcj/Makefile.in: Regenerated. * include/Makefile.in: Regenerated. * testsuite/Makefile.in: Regenerated. * gnu/java/lang/VMInstrumentationImpl.java: New override. * gnu/java/net/local/LocalSocketImpl.java: Likewise. * gnu/classpath/jdwp/VMMethod.java: Likewise. * gnu/classpath/jdwp/VMVirtualMachine.java: Update to latest interface. * java/lang/Thread.java: Add UncaughtExceptionHandler. * java/lang/reflect/Method.java: Implements GenericDeclaration and isSynthetic(), * java/lang/reflect/Field.java: Likewise. * java/lang/reflect/Constructor.java * java/lang/Class.java: Implements Type, GenericDeclaration, getSimpleName() and getEnclosing*() methods. * java/lang/Class.h: Add new public methods. * java/lang/Math.java: Add signum(), ulp() and log10(). * java/lang/natMath.cc (log10): New function. * java/security/VMSecureRandom.java: New override. * java/util/logging/Logger.java: Updated to latest classpath version. * java/util/logging/LogManager.java: New override. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@113887 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libjava/classpath/javax/swing/plaf/basic/BasicComboBoxRenderer.java')
-rw-r--r--libjava/classpath/javax/swing/plaf/basic/BasicComboBoxRenderer.java43
1 files changed, 10 insertions, 33 deletions
diff --git a/libjava/classpath/javax/swing/plaf/basic/BasicComboBoxRenderer.java b/libjava/classpath/javax/swing/plaf/basic/BasicComboBoxRenderer.java
index 8115605b77a..48195ff293b 100644
--- a/libjava/classpath/javax/swing/plaf/basic/BasicComboBoxRenderer.java
+++ b/libjava/classpath/javax/swing/plaf/basic/BasicComboBoxRenderer.java
@@ -40,15 +40,13 @@ package javax.swing.plaf.basic;
import java.awt.Component;
import java.awt.Dimension;
-import java.awt.FontMetrics;
import java.io.Serializable;
+import javax.swing.Icon;
import javax.swing.JComboBox;
import javax.swing.JLabel;
import javax.swing.JList;
import javax.swing.ListCellRenderer;
-import javax.swing.SwingConstants;
-import javax.swing.SwingUtilities;
import javax.swing.border.Border;
import javax.swing.border.EmptyBorder;
@@ -64,14 +62,14 @@ public class BasicComboBoxRenderer
/**
* A shared border instance for all renderers.
*/
- protected static Border noFocusBorder = new EmptyBorder(0, 0, 0, 0);
+ protected static Border noFocusBorder = new EmptyBorder(1, 1, 1, 1);
/**
* Creates a new <code>BasicComboBoxRenderer</code> object.
*/
public BasicComboBoxRenderer()
{
- setHorizontalAlignment(SwingConstants.LEFT);
+ setOpaque(true);
setBorder(noFocusBorder);
}
@@ -103,32 +101,7 @@ public class BasicComboBoxRenderer
int index, boolean isSelected,
boolean cellHasFocus)
{
- String s = value.toString();
-
- // String maybe larger than comboBox.
- FontMetrics fm = getToolkit().getFontMetrics(list.getFont());
- int strWidth = SwingUtilities.computeStringWidth(fm, s);
- int cbWidth = getSize().width;
- if (cbWidth != 0 && strWidth > cbWidth)
- {
- char[] str = s.toCharArray();
- int currWidth = 0;
- int i = 0;
- String postStr = "... ";
- cbWidth -= SwingUtilities.computeStringWidth(fm, postStr);
- while (i < str.length && currWidth < cbWidth)
- {
- ++i;
- currWidth = SwingUtilities.computeStringWidth(fm, new String(str, 0, i));
- }
- setText(new String(str, 0, i) + postStr);
- }
- else
- setText(s);
-
- setOpaque(true);
-
- if (isSelected || cellHasFocus)
+ if (isSelected)
{
setBackground(list.getSelectionBackground());
setForeground(list.getSelectionForeground());
@@ -138,9 +111,13 @@ public class BasicComboBoxRenderer
setBackground(list.getBackground());
setForeground(list.getForeground());
}
-
- setEnabled(list.isEnabled());
setFont(list.getFont());
+
+ if (value instanceof Icon)
+ setIcon((Icon) value);
+ else
+ setText(value == null ? "" : value.toString());
+
return this;
}
OpenPOWER on IntegriCloud