REmove excessive painting
[jalview.git] / src / jalview / appletgui / ScalePanel.java
index 07e83e7..a1d0bf7 100755 (executable)
@@ -80,7 +80,7 @@ public class ScalePanel
           {\r
             av.showColumn(reveal[0]);\r
             reveal = null;\r
-            ap.repaint();\r
+            ap.paintAlignment(true);\r
             if (ap.overviewPanel != null)\r
             {\r
               ap.overviewPanel.updateOverviewImage();\r
@@ -98,7 +98,7 @@ public class ScalePanel
             {\r
               av.showAllHiddenColumns();\r
               reveal = null;\r
-              ap.repaint();\r
+              ap.paintAlignment(true);\r
               if (ap.overviewPanel != null)\r
               {\r
                 ap.overviewPanel.updateOverviewImage();\r
@@ -125,7 +125,7 @@ public class ScalePanel
               av.setSelectionGroup(null);\r
             }\r
 \r
-            ap.repaint();\r
+            ap.paintAlignment(true);\r
             if (ap.overviewPanel != null)\r
             {\r
               ap.overviewPanel.updateOverviewImage();\r
@@ -168,7 +168,7 @@ public class ScalePanel
       }\r
     }\r
 \r
-    ap.repaint();\r
+    ap.paintAlignment(true);\r
   }\r
 \r
   public void mouseReleased(MouseEvent evt)\r
@@ -189,7 +189,7 @@ public class ScalePanel
 \r
     if (!stretchingGroup)\r
     {\r
-      ap.repaint();\r
+      ap.paintAlignment(false);\r
 \r
       return;\r
     }\r
@@ -206,7 +206,7 @@ public class ScalePanel
     }\r
 \r
     stretchingGroup = false;\r
-    ap.repaint();\r
+    ap.paintAlignment(false);\r
   }\r
 \r
   public void mouseDragged(MouseEvent evt)\r
@@ -259,19 +259,22 @@ public class ScalePanel
         sg.setStartRes(res);\r
       }\r
 \r
+      int col;\r
       for (int i = min; i <= max; i++)\r
       {\r
-        if ( (i < sg.getStartRes()) || (i > sg.getEndRes()))\r
+        col = av.getColumnSelection().adjustForHiddenColumns(i);\r
+\r
+        if ( (col < sg.getStartRes()) || (col > sg.getEndRes()))\r
         {\r
-          av.getColumnSelection().removeElement(i);\r
+          av.getColumnSelection().removeElement(col);\r
         }\r
         else\r
         {\r
-          av.getColumnSelection().addElement(i);\r
+          av.getColumnSelection().addElement(col);\r
         }\r
       }\r
 \r
-      ap.repaint();\r
+      ap.paintAlignment(false);\r
     }\r
   }\r
 \r