import jalview.schemes.NucleotideColourScheme;
import jalview.schemes.PIDColourScheme;
import jalview.schemes.PurinePyrimidineColourScheme;
+import jalview.schemes.RNAHelicesColour;
import jalview.schemes.RNAHelicesColourChooser;
+import jalview.schemes.ResidueColourScheme;
import jalview.schemes.ResidueProperties;
import jalview.schemes.StrandColourScheme;
import jalview.schemes.TCoffeeColourScheme;
conservationMenuItem.setEnabled(!nucleotide);
modifyConservation.setEnabled(!nucleotide);
showGroupConservation.setEnabled(!nucleotide);
+
+ /*
+ * enable / disable colour schemes
+ * - the old, simple way (based on the nucleotide flag), or
+ * - the new, generic way (interrogate the colour scheme)
+ */
+ AlignmentI al = getViewport().getAlignment();
clustalColour.setEnabled(!nucleotide);
zappoColour.setEnabled(!nucleotide);
taylorColour.setEnabled(!nucleotide);
helixColour.setEnabled(!nucleotide);
strandColour.setEnabled(!nucleotide);
turnColour.setEnabled(!nucleotide);
- buriedColour.setEnabled(!nucleotide);
+ // buriedColour.setEnabled(!nucleotide);
+ // TODO make isApplicableTo static in ColourSchemeI in Java 8
+ buriedColour.setEnabled(new BuriedColourScheme().isApplicableTo(al));
rnahelicesColour.setEnabled(nucleotide);
nucleotideColour.setEnabled(nucleotide);
- purinePyrimidineColour.setEnabled(nucleotide);
+ // purinePyrimidineColour.setEnabled(nucleotide);
+ purinePyrimidineColour.setEnabled(new PurinePyrimidineColourScheme()
+ .isApplicableTo(al));
+ tcoffeeColour
+ .setEnabled(new TCoffeeColourScheme(al).isApplicableTo(al));
RNAInteractionColour.setEnabled(nucleotide);
showComplementMenuItem.setText(nucleotide ? MessageManager
.getString("label.protein") : MessageManager
.getString("label.nucleotide"));
+
String selectedColourScheme = Cache.getDefault(
nucleotide ? Preferences.DEFAULT_COLOUR_NUC
- : Preferences.DEFAULT_COLOUR_PROT, "None");
+ : Preferences.DEFAULT_COLOUR_PROT,
+ ResidueColourScheme.NONE);
setColourSelected(selectedColourScheme);
}
autoCalculate.setSelected(av.autoCalculateConsensus);
sortByTree.setSelected(av.sortByTree);
listenToViewSelections.setSelected(av.followSelection);
- rnahelicesColour.setEnabled(av.getAlignment().hasRNAStructure());
+ // rnahelicesColour.setEnabled(av.getAlignment().hasRNAStructure());
+ rnahelicesColour.setEnabled(new RNAHelicesColour(av.getAlignment())
+ .isApplicableTo(av.getAlignment()));
rnahelicesColour
.setSelected(av.getGlobalColourScheme() instanceof jalview.schemes.RNAHelicesColour);