# HG changeset patch # User rupashka # Date 1352203457 -14400 # Node ID ac55f56db9ab0280853c4a6bfbdc2c578027f9f2 # Parent 6deb10c2d5d0c8925fd2012d9fc3b9325c997f21 7200491: Tighten up JTable layout code Reviewed-by: art, skoivu diff --git a/src/share/classes/com/sun/java/swing/plaf/nimbus/NimbusLookAndFeel.java b/src/share/classes/com/sun/java/swing/plaf/nimbus/NimbusLookAndFeel.java --- jdk/src/share/classes/com/sun/java/swing/plaf/nimbus/NimbusLookAndFeel.java +++ jdk/src/share/classes/com/sun/java/swing/plaf/nimbus/NimbusLookAndFeel.java @@ -159,7 +159,12 @@ public class NimbusLookAndFeel extends S // Store Table ScrollPane Corner Component uiDefaults.put("Table.scrollPaneCornerComponent", - TableScrollPaneCorner.class); + new UIDefaults.ActiveValue() { + @Override + public Object createValue(UIDefaults table) { + return new TableScrollPaneCorner(); + } + }); // Setup the settings for ToolBarSeparator which is custom // installed for Nimbus diff --git a/src/share/classes/javax/swing/JTable.java b/src/share/classes/javax/swing/JTable.java --- jdk/src/share/classes/javax/swing/JTable.java +++ jdk/src/share/classes/javax/swing/JTable.java @@ -777,15 +777,11 @@ public class JTable extends JComponent i scrollPane.getCorner(JScrollPane.UPPER_TRAILING_CORNER); if (corner == null || corner instanceof UIResource){ corner = null; - Object componentClass = UIManager.get( - "Table.scrollPaneCornerComponent"); - if (componentClass instanceof Class){ - try { - corner = (Component) - ((Class)componentClass).newInstance(); - } catch (Exception e) { - // just ignore and don't set corner - } + try { + corner = (Component) UIManager.get( + "Table.scrollPaneCornerComponent"); + } catch (Exception e) { + // just ignore and don't set corner } scrollPane.setCorner(JScrollPane.UPPER_TRAILING_CORNER, corner);