/*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.5)
- * Copyright (C) 2010 J Procter, AM Waterhouse, G Barton, M Clamp, S Searle
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.7)
+ * Copyright (C) 2011 J Procter, AM Waterhouse, J Engelhardt, LM Lui, G Barton, M Clamp, S Searle
*
* This file is part of Jalview.
*
*/
package jalview.jbgui;
-import java.awt.*;
-import java.awt.event.*;
-
-import javax.swing.*;
-import javax.swing.event.*;
-
-import jalview.schemes.*;
+import jalview.schemes.ColourSchemeProperty;
+
+import java.awt.BorderLayout;
+import java.awt.Color;
+import java.awt.GridLayout;
+import java.awt.Toolkit;
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
+import java.awt.event.FocusAdapter;
+import java.awt.event.FocusEvent;
+import java.awt.event.MouseAdapter;
+import java.awt.event.MouseEvent;
+
+import javax.swing.BorderFactory;
+import javax.swing.ButtonGroup;
+import javax.swing.JCheckBoxMenuItem;
+import javax.swing.JInternalFrame;
+import javax.swing.JLabel;
+import javax.swing.JMenu;
+import javax.swing.JMenuBar;
+import javax.swing.JMenuItem;
+import javax.swing.JOptionPane;
+import javax.swing.JPanel;
+import javax.swing.JRadioButtonMenuItem;
+import javax.swing.JTabbedPane;
+import javax.swing.SwingUtilities;
+import javax.swing.event.ChangeEvent;
+import javax.swing.event.MenuEvent;
+import javax.swing.event.MenuListener;
public class GAlignFrame extends JInternalFrame
{
protected JRadioButtonMenuItem BLOSUM62Colour = new JRadioButtonMenuItem();
+ protected JRadioButtonMenuItem nucleotideColour = new JRadioButtonMenuItem();
+
+ protected JRadioButtonMenuItem purinePyrimidineColour = new JRadioButtonMenuItem();
+
+ // protected JRadioButtonMenuItem covariationColour = new
+ // JRadioButtonMenuItem();
+
+ protected JRadioButtonMenuItem tcoffeeColour = new JRadioButtonMenuItem();
+
+
JMenuItem njTreeBlosumMenuItem = new JMenuItem();
JMenuItem avDistanceTreeBlosumMenuItem = new JMenuItem();
public JCheckBoxMenuItem colourTextMenuItem = new JCheckBoxMenuItem();
- public JCheckBoxMenuItem showUnconservedMenuItem = new JCheckBoxMenuItem();
+ public JCheckBoxMenuItem showNonconservedMenuItem = new JCheckBoxMenuItem();
JMenuItem htmlMenuItem = new JMenuItem();
public JCheckBoxMenuItem showSeqFeaturesHeight = new JCheckBoxMenuItem();
- protected JRadioButtonMenuItem nucleotideColour = new JRadioButtonMenuItem();
-
JMenuItem deleteGroups = new JMenuItem();
JMenuItem delete = new JMenuItem();
JMenuItem epsFile = new JMenuItem();
JMenuItem LoadtreeMenuItem = new JMenuItem();
+
+ JMenuItem loadScoresMenuItem = new JMenuItem();
public JCheckBoxMenuItem scaleAbove = new JCheckBoxMenuItem();
protected JMenu showProducts = new JMenu();
- public JMenuItem featureSettings = new JMenuItem();
+ public JMenuItem openFeatureSettings = new JMenuItem();
JMenuItem fetchSequence = new JMenuItem();
JMenuItem annotationColour = new JMenuItem();
+ protected JMenuItem rnahelicesColour = new JMenuItem();
+
JMenuItem associatedData = new JMenuItem();
protected JCheckBoxMenuItem autoCalculate = new JCheckBoxMenuItem();
+ protected JCheckBoxMenuItem sortByTree = new JCheckBoxMenuItem();
+
+ protected JCheckBoxMenuItem listenToViewSelections = new JCheckBoxMenuItem();
+
JMenu addSequenceMenu = new JMenu();
JMenuItem addFromFile = new JMenuItem();
protected JCheckBoxMenuItem showSequenceLogo = new JCheckBoxMenuItem();
+ protected JCheckBoxMenuItem normaliseSequenceLogo = new JCheckBoxMenuItem();
+
protected JCheckBoxMenuItem applyAutoAnnotationSettings = new JCheckBoxMenuItem();
private JMenuItem grpsFromSelection = new JMenuItem();
if (evt.isControlDown()
|| SwingUtilities.isRightMouseButton(evt))
{
- radioItem
- .removeActionListener(radioItem.getActionListeners()[0]);
+ radioItem.removeActionListener(radioItem.getActionListeners()[0]);
int option = JOptionPane.showInternalConfirmDialog(
jalview.gui.Desktop.desktop,
colours.add(PIDColour);
colours.add(BLOSUM62Colour);
colours.add(nucleotideColour);
+ colours.add(purinePyrimidineColour);
+ // colours.add(covariationColour);
+ colours.add(tcoffeeColour);
setColourSelected(jalview.bin.Cache
.getDefault("DEFAULT_COLOUR", "None"));
switch (index)
{
- case ColourSchemeProperty.NONE:
- noColourmenuItem.setSelected(true);
- break;
case ColourSchemeProperty.CLUSTAL:
clustalColour.setSelected(true);
nucleotideColour.setSelected(true);
break;
+
+ case ColourSchemeProperty.TCOFFEE:
+ tcoffeeColour.setSelected(true);
+ break;
+ case ColourSchemeProperty.PURINEPYRIMIDINE:
+ purinePyrimidineColour.setSelected(true);
+
+ break;
+ /*
+ * case ColourSchemeProperty.COVARIATION:
+ * covariationColour.setSelected(true);
+ *
+ * break;
+ */
case ColourSchemeProperty.USER_DEFINED:
userDefinedColour.setSelected(true);
break;
+ case ColourSchemeProperty.NONE:
+ default:
+ noColourmenuItem.setSelected(true);
+ break;
+
}
}
viewTextMenuItem_actionPerformed(e);
}
});
- showUnconservedMenuItem.setText("Show Unconserved");
- showUnconservedMenuItem.setState(false);
- showUnconservedMenuItem
+ showNonconservedMenuItem.setText("Show nonconserved");
+ showNonconservedMenuItem.setState(false);
+ showNonconservedMenuItem
.addActionListener(new java.awt.event.ActionListener()
{
public void actionPerformed(ActionEvent e)
BLOSUM62Colour_actionPerformed(e);
}
});
+ nucleotideColour.setText("Nucleotide");
+ nucleotideColour.addActionListener(new java.awt.event.ActionListener()
+ {
+ public void actionPerformed(ActionEvent e)
+ {
+ nucleotideColour_actionPerformed(e);
+ }
+ });
+
+ purinePyrimidineColour.setText("Purine/Pyrimidine");
+ purinePyrimidineColour
+ .addActionListener(new java.awt.event.ActionListener()
+ {
+ public void actionPerformed(ActionEvent e)
+ {
+ purinePyrimidineColour_actionPerformed(e);
+ }
+ });
+ /*
+ * covariationColour.setText("Covariation");
+ * covariationColour.addActionListener(new java.awt.event.ActionListener() {
+ * public void actionPerformed(ActionEvent e) {
+ * covariationColour_actionPerformed(e); } });
+ */
+
avDistanceTreeBlosumMenuItem.setText("Average Distance Using BLOSUM62");
avDistanceTreeBlosumMenuItem
.addActionListener(new java.awt.event.ActionListener()
}
});
+ normaliseSequenceLogo.setText("Normalise Consensus Logo");
+ normaliseSequenceLogo.addActionListener(new ActionListener()
+ {
+
+ public void actionPerformed(ActionEvent e)
+ {
+ normaliseSequenceLogo_actionPerformed(e);
+ }
+
+ });
applyAutoAnnotationSettings.setText("Apply to all groups");
applyAutoAnnotationSettings.setState(false);
applyAutoAnnotationSettings.setVisible(true);
nucleotideColour_actionPerformed(e);
}
});
+
+ tcoffeeColour.setText("T-Coffee scores");
+ tcoffeeColour.setEnabled(false);
+ tcoffeeColour.addActionListener( new ActionListener() {
+
+ @Override
+ public void actionPerformed(ActionEvent e) {
+ tcoffeeColorScheme_actionPerformed(e);
+ }
+ } );
+
+
deleteGroups.setText("Undefine groups");
deleteGroups.setAccelerator(javax.swing.KeyStroke.getKeyStroke(
java.awt.event.KeyEvent.VK_U, Toolkit.getDefaultToolkit()
}
});
LoadtreeMenuItem.setActionCommand("Load a tree for this sequence set");
- LoadtreeMenuItem.setText("Load Associated Tree");
+ LoadtreeMenuItem.setText("Load Associated Tree");
LoadtreeMenuItem.addActionListener(new java.awt.event.ActionListener()
{
public void actionPerformed(ActionEvent e)
LoadtreeMenuItem_actionPerformed(e);
}
});
+
+ loadScoresMenuItem.setActionCommand("Load T-Coffee scores");
+ loadScoresMenuItem.setText("Load T-Coffee scores");
+ loadScoresMenuItem.addActionListener(new ActionListener() {
+
+ @Override
+ public void actionPerformed(ActionEvent e) {
+ loadScores_actionPerformed(e);
+ }
+ });
+
scaleAbove.setVisible(false);
scaleAbove.setText("Scale Above");
scaleAbove.addActionListener(new java.awt.event.ActionListener()
* public void actionPerformed(ActionEvent e) {
* showProducts_actionPerformed(e); } });
*/
- featureSettings.setText("Feature Settings...");
- featureSettings.addActionListener(new ActionListener()
+ openFeatureSettings.setText("Feature Settings...");
+ openFeatureSettings.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
annotationColour_actionPerformed(e);
}
});
+
+ rnahelicesColour.setText("By RNA helices");
+ rnahelicesColour.addActionListener(new ActionListener()
+ {
+ public void actionPerformed(ActionEvent e)
+ {
+ rnahelicesColour_actionPerformed(e);
+ }
+ });
+
associatedData.setText("Load Features / Annotations");
associatedData.addActionListener(new ActionListener()
{
autoCalculate_actionPerformed(e);
}
});
+ sortByTree.setText("Sort Alignment With New Tree");
+ sortByTree.setToolTipText("<html>Enable this to automatically sort<br>the alignment when you open<br> a new tree.");
+ sortByTree.setState(jalview.bin.Cache.getDefault(
+ "SORT_BY_TREE", false));
+ sortByTree.addActionListener(new ActionListener()
+ {
+ public void actionPerformed(ActionEvent e)
+ {
+ sortByTreeOption_actionPerformed(e);
+ }
+ });
+
+ listenToViewSelections.setText("Listen for selections");
+ listenToViewSelections.setToolTipText("<html>When selected, selections in this view will mirror<br>selections made on the same sequences in other views.");
+ listenToViewSelections.setState(false);
+ listenToViewSelections.addActionListener(new ActionListener()
+ {
+ public void actionPerformed(ActionEvent e)
+ {
+ listenToViewSelections_actionPerformed(e);
+ }
+ });
+
addSequenceMenu.setText("Add Sequences");
addFromFile.setText("From File");
addFromFile.addActionListener(new ActionListener()
fileMenu.add(exportAnnotations);
fileMenu.add(LoadtreeMenuItem);
fileMenu.add(associatedData);
+ fileMenu.add(loadScoresMenuItem);
fileMenu.addSeparator();
fileMenu.add(closeMenuItem);
editMenu.add(undoMenuItem);
autoAnnMenu.add(applyAutoAnnotationSettings);
autoAnnMenu.add(showConsensusHistogram);
autoAnnMenu.add(showSequenceLogo);
+ autoAnnMenu.add(normaliseSequenceLogo);
autoAnnMenu.addSeparator();
autoAnnMenu.add(showGroupConservation);
autoAnnMenu.add(showGroupConsensus);
viewMenu.add(showSeqFeatures);
// viewMenu.add(showSeqFeaturesHeight);
- viewMenu.add(featureSettings);
+ viewMenu.add(openFeatureSettings);
tooltipSettingsMenu.add(showDbRefsMenuitem);
tooltipSettingsMenu.add(showNpFeatsMenuitem);
viewMenu.add(tooltipSettingsMenu);
colourMenu.add(turnColour);
colourMenu.add(buriedColour);
colourMenu.add(nucleotideColour);
+ colourMenu.add(purinePyrimidineColour);
+ // colourMenu.add(covariationColour);
+ colourMenu.add(tcoffeeColour);
colourMenu.add(userDefinedColour);
colourMenu.addSeparator();
colourMenu.add(conservationMenuItem);
colourMenu.add(abovePIDThreshold);
colourMenu.add(modifyPID);
colourMenu.add(annotationColour);
+ colourMenu.add(rnahelicesColour);
calculateMenu.add(sort);
calculateMenu.add(calculateTree);
calculateMenu.addSeparator();
calculateMenu.add(showTranslation);
calculateMenu.add(showProducts);
calculateMenu.add(autoCalculate);
+ calculateMenu.add(sortByTree);
calculateMenu.addSeparator();
calculateMenu.add(extractScores);
webServiceNoServices = new JMenuItem("<No Services>");
formatMenu.add(colourTextMenuItem);
formatMenu.add(renderGapsMenuItem);
formatMenu.add(centreColumnLabelsMenuItem);
- formatMenu.add(showUnconservedMenuItem);
+ formatMenu.add(showNonconservedMenuItem);
selectMenu.add(findMenuItem);
selectMenu.addSeparator();
selectMenu.add(selectAllSequenceMenuItem);
selectMenu.add(invertColSel);
selectMenu.add(deleteGroups);
selectMenu.add(grpsFromSelection);
+ // TODO - determine if the listenToViewSelections button is needed : see bug JAL-574
+ //selectMenu.addSeparator();
+ //selectMenu.add(listenToViewSelections);
+ }
+
+ protected void normaliseSequenceLogo_actionPerformed(ActionEvent e)
+ {
+ // TODO Auto-generated method stub
+
+ }
+
+ protected void listenToViewSelections_actionPerformed(ActionEvent e)
+ {
+ // TODO Auto-generated method stub
+
}
protected void showAllhidden_actionPerformed(ActionEvent e)
{
}
+ protected void purinePyrimidineColour_actionPerformed(ActionEvent e)
+ {
+ }
+
+ /*
+ * protected void covariationColour_actionPerformed(ActionEvent e) { }
+ */
+
protected void noColourmenuItem_actionPerformed(ActionEvent e)
{
}
protected void LoadtreeMenuItem_actionPerformed(ActionEvent e)
{
+
}
+
+ /**
+ * Template method to handle the 'load T-Coffee scores' menu event.
+ * <p>
+ * Subclasses override this method to provide a custom action.
+ *
+ * @param event The raised event
+ */
+ protected void loadScores_actionPerformed(ActionEvent event) {
+
+ }
+
+
+ /**
+ * Template method to handle the 'Color T-Coffee scores' menu event.
+ * <p>
+ * Subclasses override this method to provide a custom action.
+ *
+ * @param event The raised event
+ */
+ protected void tcoffeeColorScheme_actionPerformed(ActionEvent event) {
+
+ }
+
protected void jpred_actionPerformed(ActionEvent e)
{
}
+ public void rnahelicesColour_actionPerformed(ActionEvent e)
+ {
+
+ }
+
public void associatedData_actionPerformed(ActionEvent e)
{
}
+ public void sortByTreeOption_actionPerformed(ActionEvent e)
+ {
+
+ }
+
public void showAllSeqs_actionPerformed(ActionEvent e)
{