X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;ds=sidebyside;f=src%2Fjalview%2Fschemes%2FJalviewColourScheme.java;h=185d2b422c2cf5580ccadec1d6b93e0548d2cdf6;hb=94379c810f9115b8564ee7bac46ed119218d5fd2;hp=7044a10fb722f9b115e6447df5f467eb211ef5a8;hpb=8e2d11189e14700f721dc0cf17c462352883ef97;p=jalview.git diff --git a/src/jalview/schemes/JalviewColourScheme.java b/src/jalview/schemes/JalviewColourScheme.java index 7044a10..185d2b4 100644 --- a/src/jalview/schemes/JalviewColourScheme.java +++ b/src/jalview/schemes/JalviewColourScheme.java @@ -1,167 +1,33 @@ package jalview.schemes; -import jalview.datamodel.AnnotatedCollectionI; - -import java.util.HashMap; -import java.util.Map; /** * An enum with the colour schemes supported by Jalview. */ public enum JalviewColourScheme { - Clustal("Clustal") - { - @Override - public ColourSchemeI getColourScheme(AnnotatedCollectionI coll) - { - return new ClustalxColourScheme(coll, null); - } - }, - Blosum62("Blosum62") - { - @Override - public ColourSchemeI getColourScheme(AnnotatedCollectionI coll) - { - return new Blosum62ColourScheme(); - } - }, - PID("% Identity") - { - @Override - public ColourSchemeI getColourScheme(AnnotatedCollectionI coll) - { - return new PIDColourScheme(); - } - }, - Zappo("Zappo") - { - @Override - public ColourSchemeI getColourScheme(AnnotatedCollectionI coll) - { - return new ZappoColourScheme(); - } - }, - Taylor("Taylor") - { - @Override - public ColourSchemeI getColourScheme(AnnotatedCollectionI coll) - { - return new TaylorColourScheme(); - } - }, - Hydrophobic("Hydrophobic") - { - @Override - public ColourSchemeI getColourScheme(AnnotatedCollectionI coll) - { - return new HydrophobicColourScheme(); - } - }, - Helix("Helix Propensity") - { - @Override - public ColourSchemeI getColourScheme(AnnotatedCollectionI coll) - { - return new HelixColourScheme(); - } - }, - Strand("Strand Propensity") - { - @Override - public ColourSchemeI getColourScheme(AnnotatedCollectionI coll) - { - return new StrandColourScheme(); - } - }, - Turn("Turn Propensity") - { - @Override - public ColourSchemeI getColourScheme(AnnotatedCollectionI coll) - { - return new TurnColourScheme(); - } - }, - Buried("Buried Index") - { - @Override - public ColourSchemeI getColourScheme(AnnotatedCollectionI coll) - { - return new BuriedColourScheme(); - } - }, - Nucleotide("Nucleotide") - { - @Override - public ColourSchemeI getColourScheme(AnnotatedCollectionI coll) - { - return new NucleotideColourScheme(); - } - }, - PurinePyrimidine("Purine/Pyrimidine") - { - @Override - public ColourSchemeI getColourScheme(AnnotatedCollectionI coll) - { - return new PurinePyrimidineColourScheme(); - } - }, - TCoffee("T-Coffee Scores") - { - @Override - public ColourSchemeI getColourScheme(AnnotatedCollectionI coll) - { - return new TCoffeeColourScheme(coll); - } - }, - RNAHelices("RNA Helices") - { - @Override - public ColourSchemeI getColourScheme(AnnotatedCollectionI coll) - { - return new RNAHelicesColour(coll); - } - }, - // RNAInteraction("RNA Interaction type") - // { - // @Override - // public ColourSchemeI getColourScheme(AnnotatedCollectionI coll) - // { - // return new RNAInteractionColourScheme(); - // } - // }, - UserDefined("User Defined") - { - @Override - public ColourSchemeI getColourScheme(AnnotatedCollectionI coll) - { - return new UserColourScheme("white"); - } - }; - - static Map names = new HashMap(); + /* + * the order of declaration is the default order in which + * items are added to Colour menus + */ + Clustal("Clustal", ClustalxColourScheme.class), Blosum62("Blosum62", + Blosum62ColourScheme.class), PID("% Identity", + PIDColourScheme.class), Zappo("Zappo", ZappoColourScheme.class), + Taylor("Taylor", TaylorColourScheme.class), Hydrophobic("Hydrophobic", + HydrophobicColourScheme.class), Helix("Helix Propensity", + HelixColourScheme.class), Strand("Strand Propensity", + StrandColourScheme.class), Turn("Turn Propensity", + TurnColourScheme.class), Buried("Buried Index", + BuriedColourScheme.class), Nucleotide("Nucleotide", + NucleotideColourScheme.class), PurinePyrimidine( + "Purine/Pyrimidine", PurinePyrimidineColourScheme.class), + RNAHelices("RNA Helices", RNAHelicesColour.class), TCoffee( + "T-Coffee Scores", TCoffeeColourScheme.class); + // RNAInteraction("RNA Interaction type", RNAInteractionColourScheme.class) private String name; - static - { - for (JalviewColourScheme scheme : values()) - { - names.put(scheme.name.toLowerCase(), scheme); - } - } - - /** - * Answers the colour scheme with the 'given name', or null if name is invalid - * or null. The name is not case-sensitive. - * - * @param name - * @return - */ - public static JalviewColourScheme forName(String name) - { - return name == null ? null : names.get(name.toLowerCase()); - } + private Class myClass; /** * Constructor given the name of the colour scheme (as used in Jalview @@ -170,19 +36,21 @@ public enum JalviewColourScheme * * @param s */ - JalviewColourScheme(String s) + JalviewColourScheme(String s, Class cl) { name = s; + myClass = cl; } /** - * Returns an instance of the colour scheme with which to colour the given - * data + * Returns the class of the colour scheme * - * @param coll * @return */ - public abstract ColourSchemeI getColourScheme(AnnotatedCollectionI coll); + public Class getSchemeClass() + { + return myClass; + } /** * Returns the 'official' name of this colour scheme. This is the name that