import java.awt.BorderLayout;
import java.awt.Color;
+import java.awt.Component;
import java.awt.GridLayout;
import java.awt.Toolkit;
import java.awt.event.ActionEvent;
public class GAlignFrame extends JInternalFrame
{
- protected static final String USER_DEFINED_COLOUR_SCHEME = "USER_DEFINED";
-
protected JMenuBar alignFrameMenuBar = new JMenuBar();
protected JMenuItem closeMenuItem = new JMenuItem();
}
}
- public void setColourSelected(String defaultColour)
+ /**
+ * Marks as selected the colour menu item matching the given name, or the
+ * first item ('None') if no match is found
+ *
+ * @param colourName
+ */
+ protected void setColourSelected(String colourName)
{
- JalviewColourScheme scheme = JalviewColourScheme.forName(defaultColour);
- if (scheme == null)
+ noColourmenuItem.setSelected(true);
+ if (colourName == null)
{
- noColourmenuItem.setSelected(true);
return;
}
- switch (scheme)
- {
-
- case Clustal:
- clustalColour.setSelected(true);
- break;
- case Blosum62:
- BLOSUM62Colour.setSelected(true);
- break;
- case PID:
- PIDColour.setSelected(true);
- break;
- case Zappo:
- zappoColour.setSelected(true);
- break;
- case Taylor:
- taylorColour.setSelected(true);
- break;
- case Hydrophobic:
- hydrophobicityColour.setSelected(true);
- break;
- case Helix:
- helixColour.setSelected(true);
- break;
- case Strand:
- strandColour.setSelected(true);
- break;
- case Turn:
- turnColour.setSelected(true);
- break;
- case Buried:
- buriedColour.setSelected(true);
- break;
- case Nucleotide:
- nucleotideColour.setSelected(true);
- break;
- case TCoffee:
- tcoffeeColour.setSelected(true);
- break;
- case PurinePyrimidine:
- purinePyrimidineColour.setSelected(true);
- break;
- // case RNAInteraction:
- // RNAInteractionColour.setSelected(true);
- // break;
- case RNAHelices:
- rnahelicesColour.setSelected(true);
- break;
- case UserDefined:
- userDefinedColour.setSelected(true);
- break;
- default:
- noColourmenuItem.setSelected(true);
- break;
+
+ /*
+ * look for a radio button with a name that matches the colour name
+ * (note the button text may not as it may be internationalised)
+ */
+ for (Component menuItem : colourMenu.getMenuComponents())
+ {
+ if (menuItem instanceof JRadioButtonMenuItem)
+ {
+ if (colourName.equals(((JRadioButtonMenuItem) menuItem).getName()))
+ {
+ ((JRadioButtonMenuItem) menuItem).setSelected(true);
+ return;
+ }
}
+ }
}
private void jbInit() throws Exception
{
final JRadioButtonMenuItem radioItem = new JRadioButtonMenuItem(
userColour);
- radioItem.setName(USER_DEFINED_COLOUR_SCHEME);
+ radioItem.setName(userColour);
radioItem.addMouseListener(new MouseAdapter()
{
@Override
colours.add(purinePyrimidineColour);
// colours.add(covariationColour);
colours.add(tcoffeeColour);
- colours.add(RNAInteractionColour);
+ // colours.add(RNAInteractionColour);
setColourSelected(Cache.getDefault(Preferences.DEFAULT_COLOUR,
ResidueColourScheme.NONE));
/**
* Constructs the entries on the Colour menu (but does not add them to the
- * menu)
+ * menu). The 'name' property of each item is set to the canonical name of the
+ * corresponding colour scheme (may not match the display name), to allow
+ * selection of items by colour scheme name.
*/
protected void initColourMenu()
{
});
clustalColour = new JRadioButtonMenuItem(
MessageManager.getString("label.clustalx"));
+ clustalColour.setName(JalviewColourScheme.Clustal.toString());
clustalColour.addActionListener(new ActionListener()
{
@Override
});
zappoColour = new JRadioButtonMenuItem(
MessageManager.getString("label.zappo"));
+ zappoColour.setName(JalviewColourScheme.Zappo.toString());
zappoColour.addActionListener(new ActionListener()
{
@Override
});
taylorColour = new JRadioButtonMenuItem(
MessageManager.getString("label.taylor"));
+ taylorColour.setName(JalviewColourScheme.Taylor.toString());
taylorColour.addActionListener(new ActionListener()
{
@Override
hydrophobicityColour = new JRadioButtonMenuItem(
MessageManager
.getString("label.hydrophobicity"));
+ hydrophobicityColour
+ .setName(JalviewColourScheme.Hydrophobic.toString());
hydrophobicityColour.addActionListener(new ActionListener()
{
@Override
});
helixColour = new JRadioButtonMenuItem(
MessageManager.getString("label.helix_propensity"));
+ helixColour.setName(JalviewColourScheme.Helix.toString());
helixColour.addActionListener(new ActionListener()
{
@Override
strandColour = new JRadioButtonMenuItem(
MessageManager
.getString("label.strand_propensity"));
+ strandColour.setName(JalviewColourScheme.Strand.toString());
strandColour.addActionListener(new ActionListener()
{
@Override
});
turnColour = new JRadioButtonMenuItem(
MessageManager.getString("label.turn_propensity"));
+ turnColour.setName(JalviewColourScheme.Turn.toString());
turnColour.addActionListener(new ActionListener()
{
@Override
});
buriedColour = new JRadioButtonMenuItem(
MessageManager.getString("label.buried_index"));
+ buriedColour.setName(JalviewColourScheme.Buried.toString());
buriedColour.addActionListener(new ActionListener()
{
@Override
userDefinedColour = new JRadioButtonMenuItem(
MessageManager
.getString("action.user_defined"));
+ userDefinedColour.setName(JalviewColourScheme.UserDefined.toString());
userDefinedColour.addActionListener(new ActionListener()
{
@Override
});
PIDColour = new JRadioButtonMenuItem(
MessageManager.getString("label.percentage_identity"));
+ PIDColour.setName(JalviewColourScheme.PID.toString());
PIDColour.addActionListener(new ActionListener()
{
@Override
});
BLOSUM62Colour = new JRadioButtonMenuItem(
MessageManager.getString("label.blosum62_score"));
+ BLOSUM62Colour.setName(JalviewColourScheme.Blosum62.toString());
BLOSUM62Colour.addActionListener(new ActionListener()
{
@Override
});
nucleotideColour = new JRadioButtonMenuItem(
MessageManager.getString("label.nucleotide"));
+ nucleotideColour.setName(JalviewColourScheme.Nucleotide.toString());
nucleotideColour.addActionListener(new ActionListener()
{
@Override
});
purinePyrimidineColour = new JRadioButtonMenuItem(
MessageManager.getString("label.purine_pyrimidine"));
+ purinePyrimidineColour.setName(JalviewColourScheme.PurinePyrimidine.toString());
purinePyrimidineColour.addActionListener(new ActionListener()
{
@Override
tcoffeeColour = new JRadioButtonMenuItem(
MessageManager.getString("label.tcoffee_scores"));
+ tcoffeeColour.setName(JalviewColourScheme.TCoffee.toString());
tcoffeeColour.setEnabled(false);
tcoffeeColour.addActionListener(new ActionListener()
{
}
});
- RNAInteractionColour = new JRadioButtonMenuItem("RNA Interaction type");
- RNAInteractionColour.addActionListener(new ActionListener()
- {
- @Override
- public void actionPerformed(ActionEvent e)
- {
- RNAInteractionColour_actionPerformed();
- }
- });
+ // RNAInteractionColour = new JRadioButtonMenuItem("RNA Interaction type");
+ // RNAInteractionColour.setName("RNA Interaction");
+ // RNAInteractionColour.addActionListener(new ActionListener()
+ // {
+ // @Override
+ // public void actionPerformed(ActionEvent e)
+ // {
+ // RNAInteractionColour_actionPerformed();
+ // }
+ // });
/*
* covariationColour = new JRadioButtonMenuItem("Covariation");
* covariationColour.addActionListener(new ActionListener() { public void
});
noColourmenuItem = new JRadioButtonMenuItem(
MessageManager.getString("label.none"));
+ noColourmenuItem.setName("None");
noColourmenuItem.addActionListener(new ActionListener()
{
@Override