Wrapped, getWidth > vconsensus
[jalview.git] / src / jalview / appletgui / AlignFrame.java
index dc8f72b..bed10a1 100755 (executable)
@@ -172,6 +172,7 @@ public class AlignFrame
     redoList.push(new HistoryItem(hi.getDescription(), viewport.alignment,\r
                                   HistoryItem.HIDE));\r
     restoreHistoryItem(hi);\r
+    resetAllColourSchemes();\r
   }\r
 \r
   protected void redoMenuItem_actionPerformed(ActionEvent e)\r
@@ -180,6 +181,7 @@ public class AlignFrame
     restoreHistoryItem(hi);\r
     updateEditMenuBar();\r
     viewport.updateConsensus();\r
+    resetAllColourSchemes();\r
     alignPanel.repaint();\r
     alignPanel.repaint();\r
   }\r
@@ -420,6 +422,7 @@ public class AlignFrame
         viewport.alignment.getWidth();\r
         viewport.updateConservation();\r
         viewport.updateConsensus();\r
+        resetAllColourSchemes();\r
         alignPanel.repaint();\r
       }\r
 \r
@@ -488,6 +491,7 @@ public class AlignFrame
     }\r
     viewport.updateConservation();\r
     viewport.updateConsensus();\r
+    resetAllColourSchemes();\r
     alignPanel.repaint();\r
 \r
   }\r
@@ -557,7 +561,7 @@ public class AlignFrame
           viewport.alignment.deleteGroup(sg);\r
         }\r
       }\r
-\r
+      resetAllColourSchemes();\r
       alignPanel.repaint();\r
     }\r
   }\r
@@ -585,7 +589,7 @@ public class AlignFrame
           viewport.alignment.deleteGroup(sg);\r
         }\r
       }\r
-\r
+      resetAllColourSchemes();\r
       alignPanel.repaint();\r
     }\r
 \r
@@ -608,7 +612,7 @@ public class AlignFrame
 \r
     viewport.updateConservation();\r
     viewport.updateConsensus();\r
-    resetAllClustalSchemes();\r
+    resetAllColourSchemes();\r
     alignPanel.repaint();\r
   }\r
 \r
@@ -660,14 +664,32 @@ public class AlignFrame
     }\r
 \r
     viewport.setStartRes(seq.findIndex(startRes)-1);\r
-    resetAllClustalSchemes();\r
     viewport.updateConservation();\r
     viewport.updateConsensus();\r
+    resetAllColourSchemes();\r
     alignPanel.repaint();\r
   }\r
 \r
-  void resetAllClustalSchemes()\r
+  void resetAllColourSchemes()\r
   {\r
+    ColourSchemeI cs = viewport.globalColourScheme;\r
+    if(cs!=null)\r
+    {\r
+        cs.setConsensus(viewport.vconsensus);\r
+        if(cs.conservationApplied())\r
+        {\r
+          Alignment al = (Alignment) viewport.alignment;\r
+          Conservation c = new Conservation("All",\r
+                                            ResidueProperties.propHash, 3,\r
+                                            al.getSequences(), 0,\r
+                                            al.getWidth() - 1);\r
+          c.calculate();\r
+          c.verdict(false, viewport.ConsPercGaps);\r
+\r
+          cs.setConservation(c);\r
+        }\r
+    }\r
+\r
     if(viewport.getGlobalColourScheme()!=null\r
        && viewport.getGlobalColourScheme() instanceof ClustalxColourScheme)\r
     {\r
@@ -680,10 +702,13 @@ public class AlignFrame
     for(s=0; s<sSize; s++)\r
     {\r
       SequenceGroup sg = (SequenceGroup)viewport.alignment.getGroups().elementAt(s);\r
-      if(sg.cs instanceof ClustalxColourScheme)\r
+      if(sg.cs!=null && sg.cs instanceof ClustalxColourScheme)\r
       {\r
         ((ClustalxColourScheme)sg.cs).resetClustalX(sg.sequences, sg.getWidth());\r
       }\r
+\r
+      sg.recalcConservation();\r
+\r
     }\r
   }\r
 \r