dont add sequence twice to new group
[jalview.git] / src / jalview / gui / SeqPanel.java
index c729554..2718ddb 100755 (executable)
@@ -59,6 +59,9 @@ public class SeqPanel
 \r
   public SeqPanel(AlignViewport avp, AlignmentPanel p)\r
   {\r
+    ToolTipManager.sharedInstance().registerComponent(this);\r
+    ToolTipManager.sharedInstance().setInitialDelay(0);\r
+    ToolTipManager.sharedInstance().setDismissDelay(10000);\r
     this.av = avp;\r
     setBackground(Color.white);\r
 \r
@@ -177,7 +180,7 @@ public class SeqPanel
     editingSeqs = false;\r
     groupEditing = false;\r
 \r
-    seqCanvas.repaint();\r
+    ap.repaint();\r
   }\r
 \r
   public void doMousePressed(MouseEvent evt)\r
@@ -297,7 +300,6 @@ public class SeqPanel
         }\r
       }\r
 \r
-      ToolTipManager.sharedInstance().registerComponent(this);\r
       this.setToolTipText(sbuffer.toString());\r
     }\r
   }\r
@@ -483,18 +485,22 @@ public class SeqPanel
     // Y O Y CLUSTALX\r
     ColourSchemeI cs = av.getGlobalColourScheme();\r
 \r
+    if(av.getSelectionGroup()!=null)\r
+      av.getSelectionGroup().recalcConservation();\r
+\r
+\r
     if (cs instanceof ConservationColourScheme)\r
     {\r
       ConservationColourScheme ccs = (ConservationColourScheme) cs;\r
+      Conservation c = new Conservation("All",\r
+                                        ResidueProperties.propHash, 3,\r
+                                        av.alignment.getSequences(), 0,\r
+                                        av.alignment.getWidth() - 1);\r
+      c.calculate();\r
+      c.verdict(false, av.ConsPercGaps);\r
 \r
       if (ccs.cs instanceof ClustalxColourScheme)\r
       {\r
-        Conservation c = new Conservation("All",\r
-                                          ResidueProperties.propHash, 3,\r
-                                          av.alignment.getSequences(), 0,\r
-                                          av.alignment.getWidth() - 1);\r
-        c.calculate();\r
-        c.verdict(false, av.ConsPercGaps);\r
 \r
         ClustalxColourScheme cxs = (ClustalxColourScheme) ccs.cs;\r
         cxs.resetClustalX(av.alignment.getSequences(),\r
@@ -502,6 +508,11 @@ public class SeqPanel
         ccs = new ConservationColourScheme(c, cxs);\r
         av.setGlobalColourScheme(ccs);\r
       }\r
+      else\r
+      {\r
+        ccs = new ConservationColourScheme(c, ccs.cs);\r
+        av.setGlobalColourScheme(ccs);\r
+      }\r
     }\r
 \r
     if (cs instanceof ClustalxColourScheme)\r
@@ -648,8 +659,7 @@ public class SeqPanel
     changeEndRes = false;\r
     changeStartRes = false;\r
     stretchGroup = null;\r
-    seqCanvas.repaint();\r
-    ap.idPanel.repaint();\r
+    PaintRefresher.Refresh(av.alignment);\r
   }\r
 \r
   public void doMouseDraggedDefineMode(MouseEvent evt)\r
@@ -725,8 +735,7 @@ public class SeqPanel
 \r
       if (stretchGroup.sequences.contains(nextSeq))\r
       {\r
-        stretchGroup.deleteSequence(seq, false);\r
-        stretchGroup.deleteSequence(nextSeq, false);\r
+          stretchGroup.deleteSequence(seq, false);\r
       }\r
       else\r
       {\r
@@ -734,7 +743,6 @@ public class SeqPanel
         {\r
           stretchGroup.addSequence(seq, false);\r
         }\r
-\r
         stretchGroup.addSequence(nextSeq, false);\r
       }\r
     }\r