Merge branch 'features/JAL-2360colourSchemeApplicability' into
[jalview.git] / src / jalview / gui / PopupMenu.java
index 310266e..e186145 100644 (file)
@@ -45,6 +45,7 @@ import jalview.io.FormatAdapter;
 import jalview.io.SequenceAnnotationReport;
 import jalview.schemes.AnnotationColourGradient;
 import jalview.schemes.Blosum62ColourScheme;
+import jalview.schemes.ColourSchemeI;
 import jalview.schemes.ColourSchemes;
 import jalview.schemes.PIDColourScheme;
 import jalview.schemes.ResidueColourScheme;
@@ -425,7 +426,7 @@ public class PopupMenu extends JPopupMenu implements ColourChangeListener
       groupName.setText(MessageManager
               .getString("label.edit_name_and_description_current_group"));
 
-      ColourMenuHelper.setColourSelected(colourMenu, sg.cs);
+      ColourMenuHelper.setColourSelected(colourMenu, sg.getColourScheme());
 
       if (sg.cs != null)
       {
@@ -1545,7 +1546,8 @@ public class PopupMenu extends JPopupMenu implements ColourChangeListener
               sg.getSequences(ap.av.getHiddenRepSequences()),
               sg.getStartRes(), sg.getEndRes() + 1));
 
-      int threshold = SliderPanel.setPIDSliderSource(ap, sg.cs, getGroup()
+      int threshold = SliderPanel.setPIDSliderSource(ap,
+              sg.getGroupColourScheme(), getGroup()
               .getName());
 
       sg.cs.setThreshold(threshold, ap.av.isIgnoreGapsConsensus());
@@ -1599,10 +1601,10 @@ public class PopupMenu extends JPopupMenu implements ColourChangeListener
 
       c.calculate();
       c.verdict(false, ap.av.getConsPercGaps());
-
       sg.cs.setConservation(c);
 
-      SliderPanel.setConservationSlider(ap, sg.cs, sg.getName());
+      SliderPanel.setConservationSlider(ap, sg.getGroupColourScheme(),
+              sg.getName());
       SliderPanel.showConservationSlider();
     }
     else
@@ -1629,7 +1631,7 @@ public class PopupMenu extends JPopupMenu implements ColourChangeListener
             AnnotationColourGradient.NO_THRESHOLD);
 
     acg.setPredefinedColours(true);
-    sg.cs = acg;
+    sg.setColourScheme(acg);
 
     refresh();
   }
@@ -2014,10 +2016,11 @@ public class PopupMenu extends JPopupMenu implements ColourChangeListener
       /*
        * switch to the chosen colour scheme (or null for None)
        */
-      sg.cs = ColourSchemes.getInstance().getColourScheme(colourSchemeName,
-              sg, ap.av.getHiddenRepSequences());
-      if (sg.cs instanceof Blosum62ColourScheme
-              || sg.cs instanceof PIDColourScheme)
+      ColourSchemeI colourScheme = ColourSchemes.getInstance().getColourScheme(
+              colourSchemeName, sg, ap.av.getHiddenRepSequences());
+      sg.setColourScheme(colourScheme);
+      if (colourScheme instanceof Blosum62ColourScheme
+              || colourScheme instanceof PIDColourScheme)
       {
         sg.cs.setConsensus(AAFrequency.calculate(
                 sg.getSequences(ap.av.getHiddenRepSequences()),