I've extended the JViewport, so that it recognizes a system property
gnu.javax.swing.JViewport.scrollMode=SIMPLE/BACKINGSTORE/BLIT to
globally set the scrollmode that should be used by all JViewports as
default setting. This is especially useful when testing out Graphics2D
which does not have a very usable copyArea implementation atm. In such
case simply add -Dgnu.javax.swing.JViewport.scrollMode=SIMPLE to avoid
copyArea calls.

2005-11-15  Roman Kennke  <[EMAIL PROTECTED]>

        * javax/swing/JViewport.java
        (JViewport): Recognize setting of a system property
        gnu.javax.swing.JViewport for the scrollMode.


/Roman
Index: javax/swing/JViewport.java
===================================================================
RCS file: /cvsroot/classpath/classpath/javax/swing/JViewport.java,v
retrieving revision 1.34
diff -u -r1.34 JViewport.java
--- javax/swing/JViewport.java	27 Oct 2005 17:20:22 -0000	1.34
+++ javax/swing/JViewport.java	15 Nov 2005 14:12:41 -0000
@@ -246,7 +246,18 @@
   public JViewport()
   {
     setOpaque(true);
-    setScrollMode(BLIT_SCROLL_MODE);
+    String scrollModeProp =
+      System.getProperty("gnu.javax.swing.JViewport.scrollMode",
+                         "BLIT");
+    int myScrollMode;
+    if (scrollModeProp.equalsIgnoreCase("simple"))
+      myScrollMode = SIMPLE_SCROLL_MODE;
+    else if (scrollModeProp.equalsIgnoreCase("backingstore"))
+      myScrollMode = BACKINGSTORE_SCROLL_MODE;
+    else
+      myScrollMode = BLIT_SCROLL_MODE;
+    setScrollMode(myScrollMode);
+
     updateUI();
     setLayout(createLayoutManager());
     lastPaintPosition = new Point();
_______________________________________________
Classpath-patches mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/classpath-patches

Reply via email to