tidied up system.out messages and moved many to stderr.
[jalview.git] / src / jalview / gui / RotatableCanvas.java
index 90688d0..9dc5754 100755 (executable)
@@ -284,23 +284,24 @@ public class RotatableCanvas extends JPanel implements MouseListener,
       int x = (int)((float)(sp.coord[0] - centre[0])*scale) + halfwidth;\r
       int y = (int)((float)(sp.coord[1] - centre[1])*scale) + halfheight;\r
       float z = sp.coord[1] - centre[2];\r
-      if (sp.sequence instanceof DrawableSequence) {\r
-        if (((DrawableSequence)sp.sequence).color == Color.black) {\r
+\r
+\r
+\r
+\r
+      if (sp.sequence.getColor() == Color.black)\r
           g.setColor(Color.white);\r
-        } else {\r
-          g.setColor(((DrawableSequence)sp.sequence).color);\r
-        }\r
-      } else {\r
-        g.setColor(Color.red);\r
-      }\r
-      if (av != null) {\r
-        if (av.getSelection().contains(((SequencePoint)points.elementAt(i)).sequence)) {\r
+      else\r
+          g.setColor(sp.sequence.getColor());\r
+\r
+\r
+      if (av.getSelectionGroup() != null)\r
+      {\r
+        if (av.getSelectionGroup().sequences.contains(((SequencePoint)points.elementAt(i)).sequence))\r
           g.setColor(Color.gray);\r
-        }\r
       }\r
-      if (z < 0) {\r
+      if (z < 0)\r
         g.setColor(g.getColor().darker());\r
-      }\r
+\r
 \r
       g.fillRect(x-3,y-3,6,6);\r
       g.setColor(Color.red);\r
@@ -333,7 +334,7 @@ public class RotatableCanvas extends JPanel implements MouseListener,
       scalefactor = (float)(scalefactor * 0.9);\r
       scale = findScale();\r
     } else if (evt.getKeyChar() == 's') {\r
-      System.out.println("Rectangle selection");\r
+      System.err.println("DEBUG: Rectangle selection"); // log.debug\r
       if (rectx2 != -1 && recty2 != -1) {\r
         rectSelect(rectx1,recty1,rectx2,recty2);\r
 \r
@@ -379,16 +380,20 @@ public class RotatableCanvas extends JPanel implements MouseListener,
 \r
     SequenceI found = findPoint(x,y);\r
 \r
-    if (found != null) {\r
-      if (av != null) {\r
-\r
-        if (av.getSelection().contains(found)) {\r
-          av.getSelection().removeElement(found);\r
-        } else {\r
-          av.getSelection().addElement(found);\r
-        }\r
+    if (found != null)\r
+    {\r
+      if (av.getSelectionGroup() != null)\r
+      {\r
+        av.getSelectionGroup().addOrRemove(found);\r
         PaintRefresher.Refresh(this);\r
       }\r
+      else\r
+      {\r
+          av.setSelectionGroup(new SequenceGroup());\r
+          av.getSelectionGroup().addOrRemove(found);\r
+          av.getSelectionGroup().setEndRes(av.alignment.getWidth());\r
+\r
+      }\r
     }\r
     repaint();\r
   }\r
@@ -454,9 +459,10 @@ public class RotatableCanvas extends JPanel implements MouseListener,
 \r
       if (tmp1 > x1 && tmp1 < x2 && tmp2 > y1 && tmp2 < y2) {\r
         if (av != null) {\r
-          if (!av.getSelection().contains(sp.sequence)) {\r
+          if (!av.getSelectionGroup().sequences.contains(sp.sequence))\r
+          {\r
             changedSel = true;\r
-            av.getSelection().addElement(sp.sequence);\r
+            av.getSelectionGroup().addSequence(sp.sequence);\r
           }\r
         }\r
       }\r