X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fjbgui%2FGAlignFrame.java;h=6253e36d4b4b434eec97d3ae53c8edb3e0f35e04;hb=a45774ee31d9f35d4eff46d54d7deab719afb092;hp=b37e4c1bbde5b5d56eecae101737002bfbe7aea4;hpb=975e82267a8969335a8119aa9fccf238634a68d0;p=jalview.git diff --git a/src/jalview/jbgui/GAlignFrame.java b/src/jalview/jbgui/GAlignFrame.java index b37e4c1..6253e36 100755 --- a/src/jalview/jbgui/GAlignFrame.java +++ b/src/jalview/jbgui/GAlignFrame.java @@ -1,20 +1,19 @@ /* - * Jalview - A Sequence Alignment Editor and Viewer - * Copyright (C) 2007 AM Waterhouse, J Procter, G Barton, M Clamp, S Searle - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License - * as published by the Free Software Foundation; either version 2 - * of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA + * Jalview - A Sequence Alignment Editor and Viewer (Version 2.7) + * Copyright (C) 2011 J Procter, AM Waterhouse, G Barton, M Clamp, S Searle + * + * This file is part of Jalview. + * + * Jalview is free software: you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. + * + * Jalview is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty + * of MERCHANTABILITY or FITNESS FOR A PARTICULAR + * PURPOSE. See the GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License along with Jalview. If not, see . */ package jalview.jbgui; @@ -26,129 +25,292 @@ import javax.swing.event.*; import jalview.schemes.*; -public class GAlignFrame - extends JInternalFrame +public class GAlignFrame extends JInternalFrame { protected JMenuBar alignFrameMenuBar = new JMenuBar(); + protected JMenu fileMenu = new JMenu(); + protected JMenuItem closeMenuItem = new JMenuItem(); + protected JMenu editMenu = new JMenu(); + protected JMenu viewMenu = new JMenu(); + protected JMenu colourMenu = new JMenu(); + protected JMenu calculateMenu = new JMenu(); + protected JMenu webService = new JMenu(); + protected JMenuItem webServiceNoServices; + protected JMenuItem selectAllSequenceMenuItem = new JMenuItem(); + protected JMenuItem deselectAllSequenceMenuItem = new JMenuItem(); + protected JMenuItem invertSequenceMenuItem = new JMenuItem(); + protected JMenuItem remove2LeftMenuItem = new JMenuItem(); + protected JMenuItem remove2RightMenuItem = new JMenuItem(); + protected JMenuItem removeGappedColumnMenuItem = new JMenuItem(); + protected JMenuItem removeAllGapsMenuItem = new JMenuItem(); + public JCheckBoxMenuItem viewBoxesMenuItem = new JCheckBoxMenuItem(); + public JCheckBoxMenuItem viewTextMenuItem = new JCheckBoxMenuItem(); + protected JMenuItem sortPairwiseMenuItem = new JMenuItem(); + protected JMenuItem sortIDMenuItem = new JMenuItem(); + + protected JMenuItem sortLengthMenuItem = new JMenuItem(); + protected JMenuItem sortGroupMenuItem = new JMenuItem(); + protected JMenu sortByAnnotScore = new JMenu(); + protected JMenuItem removeRedundancyMenuItem = new JMenuItem(); + protected JMenuItem pairwiseAlignmentMenuItem = new JMenuItem(); + protected JMenuItem PCAMenuItem = new JMenuItem(); + protected JMenuItem averageDistanceTreeMenuItem = new JMenuItem(); + protected JMenuItem neighbourTreeMenuItem = new JMenuItem(); + BorderLayout borderLayout1 = new BorderLayout(); + public JLabel statusBar = new JLabel(); + protected JMenuItem saveAs = new JMenuItem(); + protected JMenu outputTextboxMenu = new JMenu(); + protected JRadioButtonMenuItem clustalColour = new JRadioButtonMenuItem(); + protected JRadioButtonMenuItem zappoColour = new JRadioButtonMenuItem(); + protected JRadioButtonMenuItem taylorColour = new JRadioButtonMenuItem(); - protected JRadioButtonMenuItem hydrophobicityColour = new - JRadioButtonMenuItem(); + + protected JRadioButtonMenuItem hydrophobicityColour = new JRadioButtonMenuItem(); + protected JRadioButtonMenuItem helixColour = new JRadioButtonMenuItem(); + protected JRadioButtonMenuItem strandColour = new JRadioButtonMenuItem(); + protected JRadioButtonMenuItem turnColour = new JRadioButtonMenuItem(); + protected JRadioButtonMenuItem buriedColour = new JRadioButtonMenuItem(); + protected JRadioButtonMenuItem userDefinedColour = new JRadioButtonMenuItem(); + protected JRadioButtonMenuItem PIDColour = new JRadioButtonMenuItem(); + protected JRadioButtonMenuItem BLOSUM62Colour = new JRadioButtonMenuItem(); + JMenuItem njTreeBlosumMenuItem = new JMenuItem(); + JMenuItem avDistanceTreeBlosumMenuItem = new JMenuItem(); + public JCheckBoxMenuItem annotationPanelMenuItem = new JCheckBoxMenuItem(); + public JCheckBoxMenuItem colourTextMenuItem = new JCheckBoxMenuItem(); + + public JCheckBoxMenuItem showNonconservedMenuItem = new JCheckBoxMenuItem(); + JMenuItem htmlMenuItem = new JMenuItem(); + JMenuItem overviewMenuItem = new JMenuItem(); + protected JMenuItem undoMenuItem = new JMenuItem(); + protected JMenuItem redoMenuItem = new JMenuItem(); + public JCheckBoxMenuItem conservationMenuItem = new JCheckBoxMenuItem(); + JRadioButtonMenuItem noColourmenuItem = new JRadioButtonMenuItem(); + public JCheckBoxMenuItem wrapMenuItem = new JCheckBoxMenuItem(); + JMenuItem printMenuItem = new JMenuItem(); + public JCheckBoxMenuItem renderGapsMenuItem = new JCheckBoxMenuItem(); + JMenuItem findMenuItem = new JMenuItem(); + public JCheckBoxMenuItem abovePIDThreshold = new JCheckBoxMenuItem(); + public JCheckBoxMenuItem showSeqFeatures = new JCheckBoxMenuItem(); + + public JCheckBoxMenuItem showSeqFeaturesHeight = new JCheckBoxMenuItem(); + protected JRadioButtonMenuItem nucleotideColour = new JRadioButtonMenuItem(); + JMenuItem deleteGroups = new JMenuItem(); + JMenuItem delete = new JMenuItem(); + JMenuItem copy = new JMenuItem(); + JMenuItem cut = new JMenuItem(); + JMenu pasteMenu = new JMenu(); + JMenuItem pasteNew = new JMenuItem(); + JMenuItem pasteThis = new JMenuItem(); + public JCheckBoxMenuItem applyToAllGroups = new JCheckBoxMenuItem(); + JMenuItem createPNG = new JMenuItem(); + protected JMenuItem font = new JMenuItem(); + public JCheckBoxMenuItem seqLimits = new JCheckBoxMenuItem(); + JMenuItem epsFile = new JMenuItem(); + JMenuItem LoadtreeMenuItem = new JMenuItem(); + public JCheckBoxMenuItem scaleAbove = new JCheckBoxMenuItem(); + public JCheckBoxMenuItem scaleLeft = new JCheckBoxMenuItem(); + public JCheckBoxMenuItem scaleRight = new JCheckBoxMenuItem(); + protected JMenuItem modifyPID = new JMenuItem(); + protected JMenuItem modifyConservation = new JMenuItem(); + protected JMenu sortByTreeMenu = new JMenu(); + protected JMenu sort = new JMenu(); - JMenu calculate = new JMenu(); + + protected JMenu calculateTree = new JMenu(); + JMenu jMenu2 = new JMenu(); + protected JCheckBoxMenuItem padGapsMenuitem = new JCheckBoxMenuItem(); + + protected JCheckBoxMenuItem showNpFeatsMenuitem = new JCheckBoxMenuItem(); + + protected JCheckBoxMenuItem showDbRefsMenuitem = new JCheckBoxMenuItem(); + protected ButtonGroup colours = new ButtonGroup(); + JMenuItem vamsasStore = new JMenuItem(); + protected JMenuItem showTranslation = new JMenuItem(); + protected JMenuItem extractScores = new JMenuItem(); + + protected JMenu showProducts = new JMenu(); + public JMenuItem featureSettings = new JMenuItem(); + JMenuItem fetchSequence = new JMenuItem(); + JMenuItem annotationColour = 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(); + JMenuItem addFromText = new JMenuItem(); + JMenuItem addFromURL = new JMenuItem(); + JMenuItem exportAnnotations = new JMenuItem(); + JMenuItem exportFeatures = new JMenuItem(); + protected JPanel statusPanel = new JPanel(); + GridLayout gridLayout1 = new GridLayout(); + JMenu jMenu3 = new JMenu(); + JMenuItem showAllSeqs = new JMenuItem(); + JMenuItem showAllColumns = new JMenuItem(); + JMenu hideMenu = new JMenu(); + JMenuItem hideSelSequences = new JMenuItem(); + JMenuItem hideSelColumns = new JMenuItem(); + + JMenuItem hideAllButSelection = new JMenuItem(); + + JMenuItem hideAllSelection = new JMenuItem(); + + JMenuItem showAllhidden = new JMenuItem(); + protected JCheckBoxMenuItem hiddenMarkers = new JCheckBoxMenuItem(); + JMenuItem invertColSel = new JMenuItem(); + protected JTabbedPane tabbedPane = new JTabbedPane(); + JMenuItem save = new JMenuItem(); + protected JMenuItem reload = new JMenuItem(); + JMenuItem newView = new JMenuItem(); + JMenuItem textColour = new JMenuItem(); + JMenu formatMenu = new JMenu(); + JMenu selectMenu = new JMenu(); + protected JCheckBoxMenuItem idRightAlign = new JCheckBoxMenuItem(); + + protected JCheckBoxMenuItem centreColumnLabelsMenuItem = new JCheckBoxMenuItem(); + + protected JCheckBoxMenuItem followHighlightMenuItem = new JCheckBoxMenuItem(); + protected JMenuItem gatherViews = new JMenuItem(); + protected JMenuItem expandViews = new JMenuItem(); + JMenuItem pageSetup = new JMenuItem(); + JMenuItem alignmentProperties = new JMenuItem(); + + JMenu tooltipSettingsMenu = new JMenu(); + + private JMenuItem justifyLeftMenuItem = new JMenuItem(); + + private JMenuItem justifyRightMenuItem = new JMenuItem(); + + JMenu autoAnnMenu = new JMenu(); + + protected JCheckBoxMenuItem showGroupConsensus = new JCheckBoxMenuItem(); + + protected JCheckBoxMenuItem showGroupConservation = new JCheckBoxMenuItem(); + + protected JCheckBoxMenuItem showConsensusHistogram = new JCheckBoxMenuItem(); + + protected JCheckBoxMenuItem showSequenceLogo = new JCheckBoxMenuItem(); + + protected JCheckBoxMenuItem applyAutoAnnotationSettings = new JCheckBoxMenuItem(); + + private JMenuItem grpsFromSelection = new JMenuItem(); + public GAlignFrame() { try @@ -159,8 +321,8 @@ public class GAlignFrame // dynamically fill save as menu with available formats for (int i = 0; i < jalview.io.FormatAdapter.WRITEABLE_FORMATS.length; i++) { - JMenuItem item = new JMenuItem(jalview.io.FormatAdapter. - WRITEABLE_FORMATS[i]); + JMenuItem item = new JMenuItem( + jalview.io.FormatAdapter.WRITEABLE_FORMATS[i]); item.addActionListener(new java.awt.event.ActionListener() { @@ -172,12 +334,11 @@ public class GAlignFrame outputTextboxMenu.add(item); } - } - catch (Exception e) + } catch (Exception e) { } - if (!System.getProperty("os.name").startsWith("Mac")) + if (!new jalview.util.Platform().isAMac()) { closeMenuItem.setMnemonic('C'); outputTextboxMenu.setMnemonic('T'); @@ -191,32 +352,32 @@ public class GAlignFrame if (jalview.gui.UserDefinedColours.getUserColourSchemes() != null) { - java.util.Enumeration userColours = jalview.gui.UserDefinedColours. - getUserColourSchemes().keys(); + java.util.Enumeration userColours = jalview.gui.UserDefinedColours + .getUserColourSchemes().keys(); while (userColours.hasMoreElements()) { final JRadioButtonMenuItem radioItem = new JRadioButtonMenuItem( - userColours. - nextElement().toString()); + userColours.nextElement().toString()); radioItem.setName("USER_DEFINED"); radioItem.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent evt) { - if (evt.isControlDown() || SwingUtilities.isRightMouseButton(evt)) + if (evt.isControlDown() + || SwingUtilities.isRightMouseButton(evt)) { radioItem.removeActionListener(radioItem.getActionListeners()[0]); - int option = JOptionPane.showInternalConfirmDialog(jalview.gui. - Desktop.desktop, - "Remove from default list?", - "Remove user defined colour", - JOptionPane.YES_NO_OPTION); + int option = JOptionPane.showInternalConfirmDialog( + jalview.gui.Desktop.desktop, + "Remove from default list?", + "Remove user defined colour", + JOptionPane.YES_NO_OPTION); if (option == JOptionPane.YES_OPTION) { - jalview.gui.UserDefinedColours.removeColourFromDefaults( - radioItem.getText()); + jalview.gui.UserDefinedColours + .removeColourFromDefaults(radioItem.getText()); colourMenu.remove(radioItem); } else @@ -257,7 +418,8 @@ public class GAlignFrame colours.add(BLOSUM62Colour); colours.add(nucleotideColour); - setColourSelected(jalview.bin.Cache.getDefault("DEFAULT_COLOUR", "None")); + setColourSelected(jalview.bin.Cache + .getDefault("DEFAULT_COLOUR", "None")); } @@ -266,85 +428,87 @@ public class GAlignFrame if (defaultColour != null) { - int index = ColourSchemeProperty.getColourIndexFromName(defaultColour); + int index = ColourSchemeProperty + .getColourIndexFromName(defaultColour); switch (index) { - case ColourSchemeProperty.NONE: - noColourmenuItem.setSelected(true); - break; - case ColourSchemeProperty.CLUSTAL: - clustalColour.setSelected(true); + case ColourSchemeProperty.CLUSTAL: + clustalColour.setSelected(true); + + break; - break; + case ColourSchemeProperty.BLOSUM: + BLOSUM62Colour.setSelected(true); - case ColourSchemeProperty.BLOSUM: - BLOSUM62Colour.setSelected(true); + break; - break; + case ColourSchemeProperty.PID: + PIDColour.setSelected(true); - case ColourSchemeProperty.PID: - PIDColour.setSelected(true); + break; - break; + case ColourSchemeProperty.ZAPPO: + zappoColour.setSelected(true); - case ColourSchemeProperty.ZAPPO: - zappoColour.setSelected(true); + break; - break; + case ColourSchemeProperty.TAYLOR: + taylorColour.setSelected(true); + break; - case ColourSchemeProperty.TAYLOR: - taylorColour.setSelected(true); - break; + case ColourSchemeProperty.HYDROPHOBIC: + hydrophobicityColour.setSelected(true); - case ColourSchemeProperty.HYDROPHOBIC: - hydrophobicityColour.setSelected(true); + break; - break; + case ColourSchemeProperty.HELIX: + helixColour.setSelected(true); - case ColourSchemeProperty.HELIX: - helixColour.setSelected(true); + break; - break; + case ColourSchemeProperty.STRAND: + strandColour.setSelected(true); - case ColourSchemeProperty.STRAND: - strandColour.setSelected(true); + break; - break; + case ColourSchemeProperty.TURN: + turnColour.setSelected(true); - case ColourSchemeProperty.TURN: - turnColour.setSelected(true); + break; - break; + case ColourSchemeProperty.BURIED: + buriedColour.setSelected(true); - case ColourSchemeProperty.BURIED: - buriedColour.setSelected(true); + break; - break; + case ColourSchemeProperty.NUCLEOTIDE: + nucleotideColour.setSelected(true); - case ColourSchemeProperty.NUCLEOTIDE: - nucleotideColour.setSelected(true); + break; - break; + case ColourSchemeProperty.USER_DEFINED: + userDefinedColour.setSelected(true); - case ColourSchemeProperty.USER_DEFINED: - userDefinedColour.setSelected(true); + break; + case ColourSchemeProperty.NONE: + default: + noColourmenuItem.setSelected(true); + break; - break; } } } - private void jbInit() - throws Exception + private void jbInit() throws Exception { fileMenu.setText("File"); saveAs.setText("Save As..."); - saveAs.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event. - KeyEvent.VK_S, - Toolkit.getDefaultToolkit().getMenuShortcutKeyMask() | - java.awt.event.KeyEvent.SHIFT_MASK, false)); + saveAs.setAccelerator(javax.swing.KeyStroke.getKeyStroke( + java.awt.event.KeyEvent.VK_S, Toolkit.getDefaultToolkit() + .getMenuShortcutKeyMask() + | java.awt.event.KeyEvent.SHIFT_MASK, false)); saveAs.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) @@ -353,8 +517,9 @@ public class GAlignFrame } }); closeMenuItem.setText("Close"); - closeMenuItem.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt. - event.KeyEvent.VK_W, Toolkit.getDefaultToolkit().getMenuShortcutKeyMask(), false)); + closeMenuItem.setAccelerator(javax.swing.KeyStroke.getKeyStroke( + java.awt.event.KeyEvent.VK_W, Toolkit.getDefaultToolkit() + .getMenuShortcutKeyMask(), false)); closeMenuItem.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(ActionEvent e) @@ -368,86 +533,116 @@ public class GAlignFrame calculateMenu.setText("Calculate"); webService.setText("Web Service"); selectAllSequenceMenuItem.setText("Select All"); - selectAllSequenceMenuItem.setAccelerator(javax.swing.KeyStroke.getKeyStroke( - java.awt.event.KeyEvent.VK_A, - Toolkit.getDefaultToolkit().getMenuShortcutKeyMask(), false)); - selectAllSequenceMenuItem.addActionListener(new java.awt.event. - ActionListener() - { - public void actionPerformed(ActionEvent e) - { - selectAllSequenceMenuItem_actionPerformed(e); - } - }); + selectAllSequenceMenuItem.setAccelerator(javax.swing.KeyStroke + .getKeyStroke(java.awt.event.KeyEvent.VK_A, Toolkit + .getDefaultToolkit().getMenuShortcutKeyMask(), false)); + selectAllSequenceMenuItem + .addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(ActionEvent e) + { + selectAllSequenceMenuItem_actionPerformed(e); + } + }); deselectAllSequenceMenuItem.setText("Deselect All"); - deselectAllSequenceMenuItem.setAccelerator(javax.swing.KeyStroke. - getKeyStroke( - java.awt.event.KeyEvent.VK_ESCAPE, 0, false)); - deselectAllSequenceMenuItem.addActionListener(new java.awt.event. - ActionListener() - { - public void actionPerformed(ActionEvent e) - { - deselectAllSequenceMenuItem_actionPerformed(e); - } - }); + deselectAllSequenceMenuItem.setAccelerator(javax.swing.KeyStroke + .getKeyStroke(java.awt.event.KeyEvent.VK_ESCAPE, 0, false)); + deselectAllSequenceMenuItem + .addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(ActionEvent e) + { + deselectAllSequenceMenuItem_actionPerformed(e); + } + }); invertSequenceMenuItem.setText("Invert Sequence Selection"); - invertSequenceMenuItem.setAccelerator(javax.swing.KeyStroke.getKeyStroke( - java.awt.event.KeyEvent.VK_I, - Toolkit.getDefaultToolkit().getMenuShortcutKeyMask(), false)); - invertSequenceMenuItem.addActionListener(new java.awt.event.ActionListener() + invertSequenceMenuItem.setAccelerator(javax.swing.KeyStroke + .getKeyStroke(java.awt.event.KeyEvent.VK_I, Toolkit + .getDefaultToolkit().getMenuShortcutKeyMask(), false)); + invertSequenceMenuItem + .addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(ActionEvent e) + { + invertSequenceMenuItem_actionPerformed(e); + } + }); + grpsFromSelection.setText("Make Groups for selection"); + grpsFromSelection.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(ActionEvent e) { - invertSequenceMenuItem_actionPerformed(e); + makeGrpsFromSelection_actionPerformed(e); } }); + remove2LeftMenuItem.setText("Remove Left"); - remove2LeftMenuItem.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java. - awt.event.KeyEvent.VK_L, - Toolkit.getDefaultToolkit().getMenuShortcutKeyMask(), false)); - remove2LeftMenuItem.addActionListener(new java.awt.event.ActionListener() - { - public void actionPerformed(ActionEvent e) - { - remove2LeftMenuItem_actionPerformed(e); - } - }); + remove2LeftMenuItem.setAccelerator(javax.swing.KeyStroke.getKeyStroke( + java.awt.event.KeyEvent.VK_L, Toolkit.getDefaultToolkit() + .getMenuShortcutKeyMask(), false)); + remove2LeftMenuItem + .addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(ActionEvent e) + { + remove2LeftMenuItem_actionPerformed(e); + } + }); remove2RightMenuItem.setText("Remove Right"); - remove2RightMenuItem.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java. - awt.event.KeyEvent.VK_R, - Toolkit.getDefaultToolkit().getMenuShortcutKeyMask(), false)); - remove2RightMenuItem.addActionListener(new java.awt.event.ActionListener() - { - public void actionPerformed(ActionEvent e) - { - remove2RightMenuItem_actionPerformed(e); - } - }); + remove2RightMenuItem.setAccelerator(javax.swing.KeyStroke.getKeyStroke( + java.awt.event.KeyEvent.VK_R, Toolkit.getDefaultToolkit() + .getMenuShortcutKeyMask(), false)); + remove2RightMenuItem + .addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(ActionEvent e) + { + remove2RightMenuItem_actionPerformed(e); + } + }); removeGappedColumnMenuItem.setText("Remove Empty Columns"); - removeGappedColumnMenuItem.setAccelerator(javax.swing.KeyStroke. - getKeyStroke(java.awt.event. - KeyEvent.VK_E, Toolkit.getDefaultToolkit().getMenuShortcutKeyMask(), false)); - removeGappedColumnMenuItem.addActionListener(new java.awt.event. - ActionListener() - { - public void actionPerformed(ActionEvent e) - { - removeGappedColumnMenuItem_actionPerformed(e); - } - }); + removeGappedColumnMenuItem.setAccelerator(javax.swing.KeyStroke + .getKeyStroke(java.awt.event.KeyEvent.VK_E, Toolkit + .getDefaultToolkit().getMenuShortcutKeyMask(), false)); + removeGappedColumnMenuItem + .addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(ActionEvent e) + { + removeGappedColumnMenuItem_actionPerformed(e); + } + }); removeAllGapsMenuItem.setText("Remove All Gaps"); - removeAllGapsMenuItem.setAccelerator(javax.swing.KeyStroke.getKeyStroke( - java.awt.event.KeyEvent.VK_E, - Toolkit.getDefaultToolkit().getMenuShortcutKeyMask() | - java.awt.event.KeyEvent.SHIFT_MASK, false)); - removeAllGapsMenuItem.addActionListener(new java.awt.event.ActionListener() - { - public void actionPerformed(ActionEvent e) - { - removeAllGapsMenuItem_actionPerformed(e); - } - }); + removeAllGapsMenuItem.setAccelerator(javax.swing.KeyStroke + .getKeyStroke(java.awt.event.KeyEvent.VK_E, Toolkit + .getDefaultToolkit().getMenuShortcutKeyMask() + | java.awt.event.KeyEvent.SHIFT_MASK, false)); + removeAllGapsMenuItem + .addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(ActionEvent e) + { + removeAllGapsMenuItem_actionPerformed(e); + } + }); + justifyLeftMenuItem.setText("Left Justify Alignment"); + justifyLeftMenuItem + .addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(ActionEvent e) + { + justifyLeftMenuItem_actionPerformed(e); + } + }); + justifyRightMenuItem.setText("Right Justify Alignment"); + justifyRightMenuItem + .addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(ActionEvent e) + { + justifyRightMenuItem_actionPerformed(e); + } + }); viewBoxesMenuItem.setText("Boxes"); viewBoxesMenuItem.setState(true); viewBoxesMenuItem.addActionListener(new java.awt.event.ActionListener() @@ -466,14 +661,25 @@ public class GAlignFrame viewTextMenuItem_actionPerformed(e); } }); + showNonconservedMenuItem.setText("Show nonconserved"); + showNonconservedMenuItem.setState(false); + showNonconservedMenuItem + .addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(ActionEvent e) + { + showUnconservedMenuItem_actionPerformed(e); + } + }); sortPairwiseMenuItem.setText("by Pairwise Identity"); - sortPairwiseMenuItem.addActionListener(new java.awt.event.ActionListener() - { - public void actionPerformed(ActionEvent e) - { - sortPairwiseMenuItem_actionPerformed(e); - } - }); + sortPairwiseMenuItem + .addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(ActionEvent e) + { + sortPairwiseMenuItem_actionPerformed(e); + } + }); sortIDMenuItem.setText("by ID"); sortIDMenuItem.addActionListener(new java.awt.event.ActionListener() { @@ -482,6 +688,15 @@ public class GAlignFrame sortIDMenuItem_actionPerformed(e); } }); + sortLengthMenuItem.setText("By Length"); + sortLengthMenuItem + .addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(ActionEvent e) + { + sortLengthMenuItem_actionPerformed(e); + } + }); sortGroupMenuItem.setText("by Group"); sortGroupMenuItem.addActionListener(new java.awt.event.ActionListener() { @@ -491,26 +706,26 @@ public class GAlignFrame } }); removeRedundancyMenuItem.setText("Remove Redundancy..."); - removeRedundancyMenuItem.setAccelerator(javax.swing.KeyStroke.getKeyStroke( - java.awt.event.KeyEvent.VK_D, - Toolkit.getDefaultToolkit().getMenuShortcutKeyMask(), false)); - removeRedundancyMenuItem.addActionListener(new java.awt.event. - ActionListener() - { - public void actionPerformed(ActionEvent e) - { - removeRedundancyMenuItem_actionPerformed(e); - } - }); + removeRedundancyMenuItem.setAccelerator(javax.swing.KeyStroke + .getKeyStroke(java.awt.event.KeyEvent.VK_D, Toolkit + .getDefaultToolkit().getMenuShortcutKeyMask(), false)); + removeRedundancyMenuItem + .addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(ActionEvent e) + { + removeRedundancyMenuItem_actionPerformed(e); + } + }); pairwiseAlignmentMenuItem.setText("Pairwise Alignments..."); - pairwiseAlignmentMenuItem.addActionListener(new java.awt.event. - ActionListener() - { - public void actionPerformed(ActionEvent e) - { - pairwiseAlignmentMenuItem_actionPerformed(e); - } - }); + pairwiseAlignmentMenuItem + .addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(ActionEvent e) + { + pairwiseAlignmentMenuItem_actionPerformed(e); + } + }); PCAMenuItem.setText("Principal Component Analysis"); PCAMenuItem.addActionListener(new java.awt.event.ActionListener() { @@ -519,24 +734,25 @@ public class GAlignFrame PCAMenuItem_actionPerformed(e); } }); - averageDistanceTreeMenuItem.setText( - "Average Distance Using % Identity"); - averageDistanceTreeMenuItem.addActionListener(new java.awt.event. - ActionListener() - { - public void actionPerformed(ActionEvent e) - { - averageDistanceTreeMenuItem_actionPerformed(e); - } - }); + averageDistanceTreeMenuItem + .setText("Average Distance Using % Identity"); + averageDistanceTreeMenuItem + .addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(ActionEvent e) + { + averageDistanceTreeMenuItem_actionPerformed(e); + } + }); neighbourTreeMenuItem.setText("Neighbour Joining Using % Identity"); - neighbourTreeMenuItem.addActionListener(new java.awt.event.ActionListener() - { - public void actionPerformed(ActionEvent e) - { - neighbourTreeMenuItem_actionPerformed(e); - } - }); + neighbourTreeMenuItem + .addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(ActionEvent e) + { + neighbourTreeMenuItem_actionPerformed(e); + } + }); this.getContentPane().setLayout(borderLayout1); alignFrameMenuBar.setFont(new java.awt.Font("Verdana", 0, 11)); statusBar.setBackground(Color.white); @@ -570,13 +786,14 @@ public class GAlignFrame } }); hydrophobicityColour.setText("Hydrophobicity"); - hydrophobicityColour.addActionListener(new java.awt.event.ActionListener() - { - public void actionPerformed(ActionEvent e) - { - hydrophobicityColour_actionPerformed(e); - } - }); + hydrophobicityColour + .addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(ActionEvent e) + { + hydrophobicityColour_actionPerformed(e); + } + }); helixColour.setText("Helix Propensity"); helixColour.addActionListener(new java.awt.event.ActionListener() { @@ -633,43 +850,45 @@ public class GAlignFrame BLOSUM62Colour_actionPerformed(e); } }); - avDistanceTreeBlosumMenuItem.setText( - "Average Distance Using BLOSUM62"); - avDistanceTreeBlosumMenuItem.addActionListener(new java.awt.event. - ActionListener() - { - public void actionPerformed(ActionEvent e) - { - avTreeBlosumMenuItem_actionPerformed(e); - } - }); + avDistanceTreeBlosumMenuItem.setText("Average Distance Using BLOSUM62"); + avDistanceTreeBlosumMenuItem + .addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(ActionEvent e) + { + avTreeBlosumMenuItem_actionPerformed(e); + } + }); njTreeBlosumMenuItem.setText("Neighbour Joining using BLOSUM62"); - njTreeBlosumMenuItem.addActionListener(new java.awt.event.ActionListener() - { - public void actionPerformed(ActionEvent e) - { - njTreeBlosumMenuItem_actionPerformed(e); - } - }); + njTreeBlosumMenuItem + .addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(ActionEvent e) + { + njTreeBlosumMenuItem_actionPerformed(e); + } + }); annotationPanelMenuItem.setActionCommand(""); annotationPanelMenuItem.setText("Show Annotations"); annotationPanelMenuItem.setState(jalview.bin.Cache.getDefault( - "SHOW_ANNOTATIONS", true)); - annotationPanelMenuItem.addActionListener(new java.awt.event.ActionListener() - { - public void actionPerformed(ActionEvent e) - { - annotationPanelMenuItem_actionPerformed(e); - } - }); + "SHOW_ANNOTATIONS", true)); + annotationPanelMenuItem + .addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(ActionEvent e) + { + annotationPanelMenuItem_actionPerformed(e); + } + }); colourTextMenuItem.setText("Colour Text"); - colourTextMenuItem.addActionListener(new java.awt.event.ActionListener() - { - public void actionPerformed(ActionEvent e) - { - colourTextMenuItem_actionPerformed(e); - } - }); + colourTextMenuItem + .addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(ActionEvent e) + { + colourTextMenuItem_actionPerformed(e); + } + }); htmlMenuItem.setText("HTML"); htmlMenuItem.addActionListener(new java.awt.event.ActionListener() { @@ -689,8 +908,8 @@ public class GAlignFrame undoMenuItem.setEnabled(false); undoMenuItem.setText("Undo"); undoMenuItem.setAccelerator(javax.swing.KeyStroke.getKeyStroke( - java.awt.event.KeyEvent.VK_Z, - Toolkit.getDefaultToolkit().getMenuShortcutKeyMask(), false)); + java.awt.event.KeyEvent.VK_Z, Toolkit.getDefaultToolkit() + .getMenuShortcutKeyMask(), false)); undoMenuItem.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(ActionEvent e) @@ -700,8 +919,9 @@ public class GAlignFrame }); redoMenuItem.setEnabled(false); redoMenuItem.setText("Redo"); - redoMenuItem.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt. - event.KeyEvent.VK_Y, Toolkit.getDefaultToolkit().getMenuShortcutKeyMask(), false)); + redoMenuItem.setAccelerator(javax.swing.KeyStroke.getKeyStroke( + java.awt.event.KeyEvent.VK_Y, Toolkit.getDefaultToolkit() + .getMenuShortcutKeyMask(), false)); redoMenuItem.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(ActionEvent e) @@ -710,13 +930,14 @@ public class GAlignFrame } }); conservationMenuItem.setText("By Conservation"); - conservationMenuItem.addActionListener(new java.awt.event.ActionListener() - { - public void actionPerformed(ActionEvent e) - { - conservationMenuItem_actionPerformed(e); - } - }); + conservationMenuItem + .addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(ActionEvent e) + { + conservationMenuItem_actionPerformed(e); + } + }); noColourmenuItem.setText("None"); noColourmenuItem.addActionListener(new java.awt.event.ActionListener() { @@ -734,8 +955,9 @@ public class GAlignFrame } }); printMenuItem.setText("Print ..."); - printMenuItem.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt. - event.KeyEvent.VK_P, Toolkit.getDefaultToolkit().getMenuShortcutKeyMask(), false)); + printMenuItem.setAccelerator(javax.swing.KeyStroke.getKeyStroke( + java.awt.event.KeyEvent.VK_P, Toolkit.getDefaultToolkit() + .getMenuShortcutKeyMask(), false)); printMenuItem.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(ActionEvent e) @@ -745,17 +967,18 @@ public class GAlignFrame }); renderGapsMenuItem.setText("Show Gaps"); renderGapsMenuItem.setState(true); - renderGapsMenuItem.addActionListener(new java.awt.event.ActionListener() - { - public void actionPerformed(ActionEvent e) - { - renderGapsMenuItem_actionPerformed(e); - } - }); + renderGapsMenuItem + .addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(ActionEvent e) + { + renderGapsMenuItem_actionPerformed(e); + } + }); findMenuItem.setText("Find..."); findMenuItem.setAccelerator(javax.swing.KeyStroke.getKeyStroke( - java.awt.event.KeyEvent.VK_F, - Toolkit.getDefaultToolkit().getMenuShortcutKeyMask(), false)); + java.awt.event.KeyEvent.VK_F, Toolkit.getDefaultToolkit() + .getMenuShortcutKeyMask(), false)); findMenuItem.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(ActionEvent e) @@ -779,6 +1002,86 @@ public class GAlignFrame showSeqFeatures_actionPerformed(actionEvent); } }); + /* + * showSeqFeaturesHeight.setText("Vary Sequence Feature Height"); + * showSeqFeaturesHeight.addActionListener(new ActionListener() { public + * void actionPerformed(ActionEvent actionEvent) { + * showSeqFeaturesHeight_actionPerformed(actionEvent); } }); + */ + showDbRefsMenuitem.setText("Show Database Refs"); + showDbRefsMenuitem.addActionListener(new ActionListener() + { + + public void actionPerformed(ActionEvent e) + { + showDbRefs_actionPerformed(e); + } + + }); + showNpFeatsMenuitem.setText("Show Non-Positional Features"); + showNpFeatsMenuitem.addActionListener(new ActionListener() + { + + public void actionPerformed(ActionEvent e) + { + showNpFeats_actionPerformed(e); + } + + }); + showGroupConservation.setText("Group Conservation"); + showGroupConservation.addActionListener(new ActionListener() + { + + public void actionPerformed(ActionEvent e) + { + showGroupConservation_actionPerformed(e); + } + + }); + + showGroupConsensus.setText("Group Consensus"); + showGroupConsensus.addActionListener(new ActionListener() + { + + public void actionPerformed(ActionEvent e) + { + showGroupConsensus_actionPerformed(e); + } + + }); + showConsensusHistogram.setText("Show Consensus Histogram"); + showConsensusHistogram.addActionListener(new ActionListener() + { + + public void actionPerformed(ActionEvent e) + { + showConsensusHistogram_actionPerformed(e); + } + + }); + showSequenceLogo.setText("Show Consensus Logo"); + showSequenceLogo.addActionListener(new ActionListener() + { + + public void actionPerformed(ActionEvent e) + { + showSequenceLogo_actionPerformed(e); + } + + }); + applyAutoAnnotationSettings.setText("Apply to all groups"); + applyAutoAnnotationSettings.setState(false); + applyAutoAnnotationSettings.setVisible(true); + applyAutoAnnotationSettings.addActionListener(new ActionListener() + { + + public void actionPerformed(ActionEvent e) + { + applyAutoAnnotationSettings_actionPerformed(e); + } + + }); + nucleotideColour.setText("Nucleotide"); nucleotideColour.addActionListener(new java.awt.event.ActionListener() { @@ -788,8 +1091,9 @@ public class GAlignFrame } }); deleteGroups.setText("Undefine groups"); - deleteGroups.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt. - event.KeyEvent.VK_U, Toolkit.getDefaultToolkit().getMenuShortcutKeyMask(), false)); + deleteGroups.setAccelerator(javax.swing.KeyStroke.getKeyStroke( + java.awt.event.KeyEvent.VK_U, Toolkit.getDefaultToolkit() + .getMenuShortcutKeyMask(), false)); deleteGroups.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(ActionEvent e) @@ -799,8 +1103,8 @@ public class GAlignFrame }); copy.setText("Copy"); copy.setAccelerator(javax.swing.KeyStroke.getKeyStroke( - java.awt.event.KeyEvent.VK_C, - Toolkit.getDefaultToolkit().getMenuShortcutKeyMask(), false)); + java.awt.event.KeyEvent.VK_C, Toolkit.getDefaultToolkit() + .getMenuShortcutKeyMask(), false)); copy.addActionListener(new java.awt.event.ActionListener() { @@ -811,8 +1115,8 @@ public class GAlignFrame }); cut.setText("Cut"); cut.setAccelerator(javax.swing.KeyStroke.getKeyStroke( - java.awt.event.KeyEvent.VK_X, - Toolkit.getDefaultToolkit().getMenuShortcutKeyMask(), false)); + java.awt.event.KeyEvent.VK_X, Toolkit.getDefaultToolkit() + .getMenuShortcutKeyMask(), false)); cut.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(ActionEvent e) @@ -821,8 +1125,8 @@ public class GAlignFrame } }); delete.setText("Delete"); - delete.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event. - KeyEvent.VK_BACK_SPACE, 0, false)); + delete.setAccelerator(javax.swing.KeyStroke.getKeyStroke( + java.awt.event.KeyEvent.VK_BACK_SPACE, 0, false)); delete.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(ActionEvent e) @@ -833,9 +1137,9 @@ public class GAlignFrame pasteMenu.setText("Paste"); pasteNew.setText("To New Alignment"); pasteNew.setAccelerator(javax.swing.KeyStroke.getKeyStroke( - java.awt.event.KeyEvent.VK_V, - Toolkit.getDefaultToolkit().getMenuShortcutKeyMask() | - java.awt.event.KeyEvent.SHIFT_MASK, false)); + java.awt.event.KeyEvent.VK_V, Toolkit.getDefaultToolkit() + .getMenuShortcutKeyMask() + | java.awt.event.KeyEvent.SHIFT_MASK, false)); pasteNew.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(ActionEvent e) @@ -845,8 +1149,8 @@ public class GAlignFrame }); pasteThis.setText("Add To This Alignment"); pasteThis.setAccelerator(javax.swing.KeyStroke.getKeyStroke( - java.awt.event.KeyEvent.VK_V, - Toolkit.getDefaultToolkit().getMenuShortcutKeyMask(), false)); + java.awt.event.KeyEvent.VK_V, Toolkit.getDefaultToolkit() + .getMenuShortcutKeyMask(), false)); pasteThis.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(ActionEvent e) @@ -935,22 +1239,47 @@ public class GAlignFrame scaleRight_actionPerformed(e); } }); - modifyPID.setText("Modify Identity Threshold..."); - modifyPID.addActionListener(new java.awt.event.ActionListener() + centreColumnLabelsMenuItem.setVisible(true); + centreColumnLabelsMenuItem.setState(false); + centreColumnLabelsMenuItem.setText("Centre Column Labels"); + centreColumnLabelsMenuItem + .addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(ActionEvent e) + { + centreColumnLabels_actionPerformed(e); + } + }); + followHighlightMenuItem.setVisible(true); + followHighlightMenuItem.setState(true); + followHighlightMenuItem.setText("Automatic Scrolling"); + followHighlightMenuItem.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent e) { - modifyPID_actionPerformed(e); + followHighlight_actionPerformed(); } + }); - modifyConservation.setText("Modify Conservation Threshold..."); - modifyConservation.addActionListener(new java.awt.event.ActionListener() + + modifyPID.setText("Modify Identity Threshold..."); + modifyPID.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(ActionEvent e) { - modifyConservation_actionPerformed(e); + modifyPID_actionPerformed(e); } }); + modifyConservation.setText("Modify Conservation Threshold..."); + modifyConservation + .addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(ActionEvent e) + { + modifyConservation_actionPerformed(e); + } + }); sortByTreeMenu.setText("By Tree Order"); sort.setText("Sort"); sort.addMenuListener(new MenuListener() @@ -970,30 +1299,30 @@ public class GAlignFrame }); sortByAnnotScore.setText("by Score"); sort.add(sortByAnnotScore); - sortByAnnotScore.addMenuListener( - new javax.swing.event.MenuListener() { - - public void menuCanceled(MenuEvent e) - { - } + sortByAnnotScore.addMenuListener(new javax.swing.event.MenuListener() + { - public void menuDeselected(MenuEvent e) - { - } + public void menuCanceled(MenuEvent e) + { + } - public void menuSelected(MenuEvent e) - { - buildSortByAnnotationScoresMenu(); - } - } - ); + public void menuDeselected(MenuEvent e) + { + } + + public void menuSelected(MenuEvent e) + { + buildSortByAnnotationScoresMenu(); + } + }); sortByAnnotScore.setVisible(false); - - calculate.setText("Calculate Tree"); + + calculateTree.setText("Calculate Tree"); jMenu2.setText("Export Image"); padGapsMenuitem.setText("Pad Gaps"); - padGapsMenuitem.setState(jalview.bin.Cache.getDefault("PAD_GAPS", false)); + padGapsMenuitem.setState(jalview.bin.Cache + .getDefault("PAD_GAPS", false)); padGapsMenuitem.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) @@ -1026,7 +1355,15 @@ public class GAlignFrame extractScores_actionPerformed(e); } }); - extractScores.setVisible(false); // JBPNote: TODO: make gui for regex based score extraction + extractScores.setVisible(true); // JBPNote: TODO: make gui for regex based + // score extraction + showProducts.setText("Get Cross References"); + /* + * showProducts.addActionListener(new ActionListener() { + * + * public void actionPerformed(ActionEvent e) { + * showProducts_actionPerformed(e); } }); + */ featureSettings.setText("Feature Settings..."); featureSettings.addActionListener(new ActionListener() { @@ -1061,7 +1398,8 @@ public class GAlignFrame } }); autoCalculate.setText("Autocalculate Consensus"); - autoCalculate.setState(jalview.bin.Cache.getDefault("AUTO_CALC_CONSENSUS", true)); + autoCalculate.setState(jalview.bin.Cache.getDefault( + "AUTO_CALC_CONSENSUS", true)); autoCalculate.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) @@ -1069,6 +1407,29 @@ public class GAlignFrame autoCalculate_actionPerformed(e); } }); + sortByTree.setText("Sort Alignment With New Tree"); + sortByTree.setToolTipText("Enable this to automatically sort
the alignment when you open
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("When selected, selections in this view will mirror
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() @@ -1113,6 +1474,7 @@ public class GAlignFrame statusPanel.setLayout(gridLayout1); jMenu3.setText("Show"); showAllSeqs.setText("All Sequences"); + showAllSeqs.setToolTipText("Shift+H toggles sequence visiblity."); showAllSeqs.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) @@ -1121,6 +1483,7 @@ public class GAlignFrame } }); showAllColumns.setText("All Columns"); + showAllColumns.setToolTipText("Ctrl+H toggles column visiblity."); showAllColumns.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) @@ -1130,6 +1493,7 @@ public class GAlignFrame }); hideMenu.setText("Hide"); hideSelSequences.setText("Selected Sequences"); + hideSelSequences.setToolTipText("Shift+H toggles sequence visiblity."); hideSelSequences.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) @@ -1138,6 +1502,7 @@ public class GAlignFrame } }); hideSelColumns.setText("Selected Columns"); + hideSelColumns.setToolTipText("Ctrl+H toggles column visiblity."); hideSelColumns.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) @@ -1145,6 +1510,34 @@ public class GAlignFrame hideSelColumns_actionPerformed(e); } }); + hideAllSelection.setText("Selected Region"); + hideAllSelection.addActionListener(new ActionListener() + { + public void actionPerformed(ActionEvent e) + { + hideAllSelection_actionPerformed(e); + } + }); + // TODO: should be hidden if no selection exists. + hideAllButSelection.setText("All but Selected Region (Shift+Ctrl+H)"); + hideAllButSelection.addActionListener(new ActionListener() + { + public void actionPerformed(ActionEvent e) + { + hideAllButSelection_actionPerformed(e); + } + }); + showAllhidden.setText("All Sequences and Columns"); + showAllhidden + .setToolTipText("H toggles visibility of hidden or selected regions."); + showAllhidden.addActionListener(new ActionListener() + { + public void actionPerformed(ActionEvent e) + { + showAllhidden_actionPerformed(e); + } + }); + hiddenMarkers.setText("Show Hidden Markers"); hiddenMarkers.addActionListener(new ActionListener() { @@ -1154,11 +1547,10 @@ public class GAlignFrame } }); invertColSel.setText("Invert Column Selection"); - invertColSel.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt. - event.KeyEvent.VK_I, - Toolkit.getDefaultToolkit().getMenuShortcutKeyMask() - | java.awt.event.KeyEvent.ALT_MASK, - false)); + invertColSel.setAccelerator(javax.swing.KeyStroke.getKeyStroke( + java.awt.event.KeyEvent.VK_I, Toolkit.getDefaultToolkit() + .getMenuShortcutKeyMask() + | java.awt.event.KeyEvent.ALT_MASK, false)); invertColSel.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) @@ -1190,8 +1582,9 @@ public class GAlignFrame } }); save.setText("Save"); - save.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event. - KeyEvent.VK_S, Toolkit.getDefaultToolkit().getMenuShortcutKeyMask(), false)); + save.setAccelerator(javax.swing.KeyStroke.getKeyStroke( + java.awt.event.KeyEvent.VK_S, Toolkit.getDefaultToolkit() + .getMenuShortcutKeyMask(), false)); save.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) @@ -1209,8 +1602,9 @@ public class GAlignFrame } }); newView.setText("New View"); - newView.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event. - KeyEvent.VK_T, Toolkit.getDefaultToolkit().getMenuShortcutKeyMask(), false)); + newView.setAccelerator(javax.swing.KeyStroke.getKeyStroke( + java.awt.event.KeyEvent.VK_T, Toolkit.getDefaultToolkit() + .getMenuShortcutKeyMask(), false)); newView.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) @@ -1219,8 +1613,7 @@ public class GAlignFrame } }); tabbedPane.setToolTipText(" Right-click to rename tab" - + - "
Press X to eXpand tabs, G to reGroup.
"); + + "
Press X to eXpand tabs, G to reGroup."); textColour.setText("Colour Text ..."); textColour.addActionListener(new ActionListener() { @@ -1241,8 +1634,8 @@ public class GAlignFrame }); gatherViews.setEnabled(false); gatherViews.setText("Gather Views"); - gatherViews.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt. - event.KeyEvent.VK_G, 0, false)); + gatherViews.setAccelerator(javax.swing.KeyStroke.getKeyStroke( + java.awt.event.KeyEvent.VK_G, 0, false)); gatherViews.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) @@ -1252,8 +1645,8 @@ public class GAlignFrame }); expandViews.setEnabled(false); expandViews.setText("Expand Views"); - expandViews.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt. - event.KeyEvent.VK_X, 0, false)); + expandViews.setAccelerator(javax.swing.KeyStroke.getKeyStroke( + java.awt.event.KeyEvent.VK_X, 0, false)); expandViews.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) @@ -1277,7 +1670,8 @@ public class GAlignFrame alignmentProperties(); } }); - + tooltipSettingsMenu.setText("Sequence ID Tooltip"); + autoAnnMenu.setText("Autocalculated Annotation"); alignFrameMenuBar.add(fileMenu); alignFrameMenuBar.add(editMenu); alignFrameMenuBar.add(selectMenu); @@ -1317,6 +1711,11 @@ public class GAlignFrame editMenu.add(removeAllGapsMenuItem); editMenu.add(removeRedundancyMenuItem); editMenu.addSeparator(); + // dont add these yet in the CVS build - they cannot be undone! + // Excluded from Jalview 2.5 release - undo needs to be implemented. + // editMenu.add(justifyLeftMenuItem); + // editMenu.add(justifyRightMenuItem); + // editMenu.addSeparator(); editMenu.add(padGapsMenuitem); viewMenu.add(newView); viewMenu.add(expandViews); @@ -1325,10 +1724,23 @@ public class GAlignFrame viewMenu.add(jMenu3); viewMenu.add(hideMenu); viewMenu.addSeparator(); + viewMenu.add(followHighlightMenuItem); viewMenu.add(annotationPanelMenuItem); + autoAnnMenu.add(applyAutoAnnotationSettings); + autoAnnMenu.add(showConsensusHistogram); + autoAnnMenu.add(showSequenceLogo); + autoAnnMenu.addSeparator(); + autoAnnMenu.add(showGroupConservation); + autoAnnMenu.add(showGroupConsensus); + viewMenu.add(autoAnnMenu); viewMenu.addSeparator(); viewMenu.add(showSeqFeatures); + // viewMenu.add(showSeqFeaturesHeight); + viewMenu.add(featureSettings); + tooltipSettingsMenu.add(showDbRefsMenuitem); + tooltipSettingsMenu.add(showNpFeatsMenuitem); + viewMenu.add(tooltipSettingsMenu); viewMenu.addSeparator(); viewMenu.add(alignmentProperties); viewMenu.addSeparator(); @@ -1356,13 +1768,15 @@ public class GAlignFrame colourMenu.add(modifyPID); colourMenu.add(annotationColour); calculateMenu.add(sort); - calculateMenu.add(calculate); + calculateMenu.add(calculateTree); calculateMenu.addSeparator(); calculateMenu.add(pairwiseAlignmentMenuItem); calculateMenu.add(PCAMenuItem); calculateMenu.addSeparator(); calculateMenu.add(showTranslation); + calculateMenu.add(showProducts); calculateMenu.add(autoCalculate); + calculateMenu.add(sortByTree); calculateMenu.addSeparator(); calculateMenu.add(extractScores); webServiceNoServices = new JMenuItem(""); @@ -1370,13 +1784,14 @@ public class GAlignFrame pasteMenu.add(pasteNew); pasteMenu.add(pasteThis); sort.add(sortIDMenuItem); + sort.add(sortLengthMenuItem); sort.add(sortGroupMenuItem); sort.add(sortPairwiseMenuItem); sort.add(sortByTreeMenu); - calculate.add(averageDistanceTreeMenuItem); - calculate.add(neighbourTreeMenuItem); - calculate.add(avDistanceTreeBlosumMenuItem); - calculate.add(njTreeBlosumMenuItem); + calculateTree.add(averageDistanceTreeMenuItem); + calculateTree.add(neighbourTreeMenuItem); + calculateTree.add(avDistanceTreeBlosumMenuItem); + calculateTree.add(njTreeBlosumMenuItem); jMenu2.add(htmlMenuItem); jMenu2.add(epsFile); jMenu2.add(createPNG); @@ -1388,8 +1803,12 @@ public class GAlignFrame this.getContentPane().add(tabbedPane, java.awt.BorderLayout.CENTER); jMenu3.add(showAllColumns); jMenu3.add(showAllSeqs); + jMenu3.add(showAllhidden); hideMenu.add(hideSelColumns); hideMenu.add(hideSelSequences); + hideMenu.add(hideAllSelection); + hideMenu.add(hideAllButSelection); + formatMenu.add(font); formatMenu.addSeparator(); formatMenu.add(wrapMenuItem); @@ -1403,6 +1822,8 @@ public class GAlignFrame formatMenu.add(viewTextMenuItem); formatMenu.add(colourTextMenuItem); formatMenu.add(renderGapsMenuItem); + formatMenu.add(centreColumnLabelsMenuItem); + formatMenu.add(showNonconservedMenuItem); selectMenu.add(findMenuItem); selectMenu.addSeparator(); selectMenu.add(selectAllSequenceMenuItem); @@ -1410,6 +1831,121 @@ public class GAlignFrame selectMenu.add(invertSequenceMenuItem); 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 listenToViewSelections_actionPerformed(ActionEvent e) + { + // TODO Auto-generated method stub + + } + + protected void showAllhidden_actionPerformed(ActionEvent e) + { + // TODO Auto-generated method stub + + } + + protected void hideAllButSelection_actionPerformed(ActionEvent e) + { + // TODO Auto-generated method stub + + } + + protected void hideAllSelection_actionPerformed(ActionEvent e) + { + // TODO Auto-generated method stub + + } + + protected void applyAutoAnnotationSettings_actionPerformed(ActionEvent e) + { + // TODO Auto-generated method stub + + } + + protected void showConsensusHistogram_actionPerformed(ActionEvent e) + { + // TODO Auto-generated method stub + + } + + protected void showSequenceLogo_actionPerformed(ActionEvent e) + { + // TODO Auto-generated method stub + + } + + protected void makeGrpsFromSelection_actionPerformed(ActionEvent e) + { + // TODO Auto-generated method stub + + } + + protected void showGroupConsensus_actionPerformed(ActionEvent e) + { + // TODO Auto-generated method stub + + } + + protected void showGroupConservation_actionPerformed(ActionEvent e) + { + // TODO Auto-generated method stub + + } + + protected void showUnconservedMenuItem_actionPerformed(ActionEvent e) + { + // TODO Auto-generated method stub + + } + + protected void showSeqFeaturesHeight_actionPerformed( + ActionEvent actionEvent) + { + // TODO Auto-generated method stub + + } + + protected void justifyRightMenuItem_actionPerformed(ActionEvent e) + { + // TODO Auto-generated method stub + + } + + protected void justifyLeftMenuItem_actionPerformed(ActionEvent e) + { + // TODO Auto-generated method stub + + } + + protected void followHighlight_actionPerformed() + { + // TODO Auto-generated method stub + + } + + protected void showNpFeats_actionPerformed(ActionEvent e) + { + // TODO Auto-generated method stub + + } + + protected void showDbRefs_actionPerformed(ActionEvent e) + { + // TODO Auto-generated method stub + + } + + protected void centreColumnLabels_actionPerformed(ActionEvent e) + { + } + + protected void showProducts_actionPerformed(ActionEvent e) + { } protected void buildSortByAnnotationScoresMenu() @@ -1525,6 +2061,10 @@ public class GAlignFrame { } + protected void sortLengthMenuItem_actionPerformed(ActionEvent e) + { + } + protected void sortGroupMenuItem_actionPerformed(ActionEvent e) { } @@ -1763,6 +2303,11 @@ public class GAlignFrame } + public void sortByTreeOption_actionPerformed(ActionEvent e) + { + + } + public void showAllSeqs_actionPerformed(ActionEvent e) { @@ -1862,7 +2407,7 @@ public class GAlignFrame { } - + public void pageSetup_actionPerformed(ActionEvent e) {