classpath-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[cp-patches] FYI: MetalScrollPaneUI


From: David Gilbert
Subject: [cp-patches] FYI: MetalScrollPaneUI
Date: Wed, 23 Nov 2005 21:26:18 +0000
User-agent: Mozilla Thunderbird 1.0.7 (X11/20051026)

This patch (committed) sets a client property on the scroll bars for the JScrollPane to make use of a custom rendering supported by the MetalLookAndFeel:

2005-11-23  David Gilbert  <address@hidden>

        * javax/swing/plaf/metal/MetalScrollPaneUI.java
        (installUI): Set free-standing client property on scrollbars to false,
        (uninstallUI): Set free-standing client property on scrollbars to null.

Regards,

Dave
Index: javax/swing/plaf/metal/MetalScrollPaneUI.java
===================================================================
RCS file: 
/cvsroot/classpath/classpath/javax/swing/plaf/metal/MetalScrollPaneUI.java,v
retrieving revision 1.6
diff -u -r1.6 MetalScrollPaneUI.java
--- javax/swing/plaf/metal/MetalScrollPaneUI.java       22 Nov 2005 19:54:47 
-0000      1.6
+++ javax/swing/plaf/metal/MetalScrollPaneUI.java       23 Nov 2005 21:05:56 
-0000
@@ -41,6 +41,7 @@
 import java.beans.PropertyChangeListener;
 
 import javax.swing.JComponent;
+import javax.swing.JScrollBar;
 import javax.swing.JScrollPane;
 import javax.swing.plaf.ComponentUI;
 import javax.swing.plaf.basic.BasicScrollPaneUI;
@@ -93,6 +94,10 @@
   public void installUI(JComponent c)
   {
     super.installUI(c);
+    JScrollBar hsb = scrollpane.getHorizontalScrollBar();
+    hsb.putClientProperty(MetalScrollBarUI.FREE_STANDING_PROP, Boolean.FALSE);
+    JScrollBar vsb = scrollpane.getVerticalScrollBar();
+    vsb.putClientProperty(MetalScrollBarUI.FREE_STANDING_PROP, Boolean.FALSE);
   }
 
   /**
@@ -114,6 +119,10 @@
    */
   public void uninstallUI(JComponent c)
   {
+    JScrollBar hsb = scrollpane.getHorizontalScrollBar();
+    hsb.putClientProperty(MetalScrollBarUI.FREE_STANDING_PROP, null);
+    JScrollBar vsb = scrollpane.getVerticalScrollBar();
+    vsb.putClientProperty(MetalScrollBarUI.FREE_STANDING_PROP, null);
     super.uninstallUI(c);
   }
 

reply via email to

[Prev in Thread] Current Thread [Next in Thread]