X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fjbgui%2FGAlignFrame.java;h=579da08af93b7079751411284f6aac887fca1786;hb=933e28e48b4f3bf98851cedd99ef345d45bf25a3;hp=bc7156602f83594228870e46897b48b8fa8fb592;hpb=61b3b004768ba36031bd26f5f3515decffd1fb74;p=jalview.git diff --git a/src/jalview/jbgui/GAlignFrame.java b/src/jalview/jbgui/GAlignFrame.java index bc71566..579da08 100755 --- a/src/jalview/jbgui/GAlignFrame.java +++ b/src/jalview/jbgui/GAlignFrame.java @@ -21,6 +21,8 @@ package jalview.jbgui; import jalview.analysis.AnnotationSorter.SequenceAnnotationOrder; +import jalview.analysis.GeneticCodeI; +import jalview.analysis.GeneticCodes; import jalview.api.SplitContainerI; import jalview.bin.Cache; import jalview.gui.JvSwingUtils; @@ -28,13 +30,13 @@ import jalview.gui.Preferences; import jalview.hmmer.HmmerCommand; import jalview.io.FileFormatException; import jalview.io.FileFormats; +import jalview.schemes.ResidueColourScheme; import jalview.util.MessageManager; import jalview.util.Platform; 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; @@ -80,7 +82,7 @@ public class GAlignFrame extends JInternalFrame protected JMenu sortByAnnotScore = new JMenu(); - public JLabel statusBar = new JLabel(); + protected JLabel statusBar = new JLabel(); protected JMenu outputTextboxMenu = new JMenu(); @@ -128,7 +130,7 @@ public class GAlignFrame extends JInternalFrame protected JMenuItem modifyPID; - protected JMenuItem annotationColour; + protected JRadioButtonMenuItem annotationColour; protected JMenu sortByTreeMenu = new JMenu(); @@ -142,7 +144,7 @@ public class GAlignFrame extends JInternalFrame protected JCheckBoxMenuItem showDbRefsMenuitem = new JCheckBoxMenuItem(); - protected JMenuItem showTranslation = new JMenuItem(); + protected JMenu showTranslation = new JMenu(); protected JMenuItem showReverse = new JMenuItem(); @@ -274,14 +276,14 @@ public class GAlignFrame extends JInternalFrame // FIXME getDefaultToolkit throws an exception in Headless mode KeyStroke keyStroke = KeyStroke.getKeyStroke(KeyEvent.VK_S, - Toolkit.getDefaultToolkit().getMenuShortcutKeyMask() - | KeyEvent.SHIFT_MASK, + jalview.util.ShortcutKeyMaskExWrapper.getMenuShortcutKeyMaskEx() + | jalview.util.ShortcutKeyMaskExWrapper.SHIFT_DOWN_MASK, false); addMenuActionAndAccelerator(keyStroke, saveAs, al); closeMenuItem.setText(MessageManager.getString("action.close")); keyStroke = KeyStroke.getKeyStroke(KeyEvent.VK_W, - Toolkit.getDefaultToolkit().getMenuShortcutKeyMask(), false); + jalview.util.ShortcutKeyMaskExWrapper.getMenuShortcutKeyMaskEx(), false); al = new ActionListener() { @Override @@ -307,7 +309,7 @@ public class GAlignFrame extends JInternalFrame JMenuItem selectAllSequenceMenuItem = new JMenuItem( MessageManager.getString("action.select_all")); keyStroke = KeyStroke.getKeyStroke(KeyEvent.VK_A, - Toolkit.getDefaultToolkit().getMenuShortcutKeyMask(), false); + jalview.util.ShortcutKeyMaskExWrapper.getMenuShortcutKeyMaskEx(), false); al = new ActionListener() { @Override @@ -334,7 +336,7 @@ public class GAlignFrame extends JInternalFrame JMenuItem invertSequenceMenuItem = new JMenuItem( MessageManager.getString("action.invert_sequence_selection")); keyStroke = KeyStroke.getKeyStroke(KeyEvent.VK_I, - Toolkit.getDefaultToolkit().getMenuShortcutKeyMask(), false); + jalview.util.ShortcutKeyMaskExWrapper.getMenuShortcutKeyMaskEx(), false); al = new ActionListener() { @Override @@ -370,7 +372,7 @@ public class GAlignFrame extends JInternalFrame JMenuItem remove2LeftMenuItem = new JMenuItem( MessageManager.getString("action.remove_left")); keyStroke = KeyStroke.getKeyStroke(KeyEvent.VK_L, - Toolkit.getDefaultToolkit().getMenuShortcutKeyMask(), false); + jalview.util.ShortcutKeyMaskExWrapper.getMenuShortcutKeyMaskEx(), false); al = new ActionListener() { @Override @@ -384,7 +386,7 @@ public class GAlignFrame extends JInternalFrame JMenuItem remove2RightMenuItem = new JMenuItem( MessageManager.getString("action.remove_right")); keyStroke = KeyStroke.getKeyStroke(KeyEvent.VK_R, - Toolkit.getDefaultToolkit().getMenuShortcutKeyMask(), false); + jalview.util.ShortcutKeyMaskExWrapper.getMenuShortcutKeyMaskEx(), false); al = new ActionListener() { @Override @@ -398,7 +400,7 @@ public class GAlignFrame extends JInternalFrame JMenuItem removeGappedColumnMenuItem = new JMenuItem( MessageManager.getString("action.remove_empty_columns")); keyStroke = KeyStroke.getKeyStroke(KeyEvent.VK_E, - Toolkit.getDefaultToolkit().getMenuShortcutKeyMask(), false); + jalview.util.ShortcutKeyMaskExWrapper.getMenuShortcutKeyMaskEx(), false); al = new ActionListener() { @Override @@ -412,8 +414,8 @@ public class GAlignFrame extends JInternalFrame JMenuItem removeAllGapsMenuItem = new JMenuItem( MessageManager.getString("action.remove_all_gaps")); keyStroke = KeyStroke.getKeyStroke(KeyEvent.VK_E, - Toolkit.getDefaultToolkit().getMenuShortcutKeyMask() - | KeyEvent.SHIFT_MASK, + jalview.util.ShortcutKeyMaskExWrapper.getMenuShortcutKeyMaskEx() + | jalview.util.ShortcutKeyMaskExWrapper.SHIFT_DOWN_MASK, false); al = new ActionListener() { @@ -516,11 +518,31 @@ public class GAlignFrame extends JInternalFrame sortGroupMenuItem_actionPerformed(e); } }); + JMenuItem sortEValueMenuItem = new JMenuItem( + MessageManager.getString("action.by_evalue")); + sortEValueMenuItem.addActionListener(new ActionListener() + { + @Override + public void actionPerformed(ActionEvent e) + { + sortEValueMenuItem_actionPerformed(e); + } + }); + JMenuItem sortBitScoreMenuItem = new JMenuItem( + MessageManager.getString("action.by_bit_score")); + sortBitScoreMenuItem.addActionListener(new ActionListener() + { + @Override + public void actionPerformed(ActionEvent e) + { + sortBitScoreMenuItem_actionPerformed(e); + } + }); JMenuItem removeRedundancyMenuItem = new JMenuItem( MessageManager.getString("action.remove_redundancy")); keyStroke = KeyStroke.getKeyStroke(KeyEvent.VK_D, - Toolkit.getDefaultToolkit().getMenuShortcutKeyMask(), false); + jalview.util.ShortcutKeyMaskExWrapper.getMenuShortcutKeyMaskEx(), false); al = new ActionListener() { @Override @@ -530,6 +552,30 @@ public class GAlignFrame extends JInternalFrame } }; addMenuActionAndAccelerator(keyStroke, removeRedundancyMenuItem, al); + + JMenuItem filterByEValue = new JMenuItem( + MessageManager.getString("action.filter_by_evalue")); + filterByEValue.addActionListener(new ActionListener() + { + @Override + public void actionPerformed(ActionEvent e) + { + filterByEValue_actionPerformed(); + } + + }); + + JMenuItem filterByScore = new JMenuItem( + MessageManager.getString("action.filter_by_score")); + filterByScore.addActionListener(new ActionListener() + { + @Override + public void actionPerformed(ActionEvent e) + { + filterByScore_actionPerformed(); + } + + }); JMenuItem pairwiseAlignmentMenuItem = new JMenuItem( MessageManager.getString("action.pairwise_alignment")); @@ -698,7 +744,7 @@ public class GAlignFrame extends JInternalFrame undoMenuItem.setEnabled(false); undoMenuItem.setText(MessageManager.getString("action.undo")); keyStroke = KeyStroke.getKeyStroke(KeyEvent.VK_Z, - Toolkit.getDefaultToolkit().getMenuShortcutKeyMask(), false); + jalview.util.ShortcutKeyMaskExWrapper.getMenuShortcutKeyMaskEx(), false); al = new ActionListener() { @Override @@ -712,7 +758,7 @@ public class GAlignFrame extends JInternalFrame redoMenuItem.setEnabled(false); redoMenuItem.setText(MessageManager.getString("action.redo")); keyStroke = KeyStroke.getKeyStroke(KeyEvent.VK_Y, - Toolkit.getDefaultToolkit().getMenuShortcutKeyMask(), false); + jalview.util.ShortcutKeyMaskExWrapper.getMenuShortcutKeyMaskEx(), false); al = new ActionListener() { @Override @@ -736,7 +782,7 @@ public class GAlignFrame extends JInternalFrame JMenuItem printMenuItem = new JMenuItem( MessageManager.getString("action.print")); keyStroke = KeyStroke.getKeyStroke(KeyEvent.VK_P, - Toolkit.getDefaultToolkit().getMenuShortcutKeyMask(), false); + jalview.util.ShortcutKeyMaskExWrapper.getMenuShortcutKeyMaskEx(), false); al = new ActionListener() { @Override @@ -762,7 +808,7 @@ public class GAlignFrame extends JInternalFrame JMenuItem findMenuItem = new JMenuItem( MessageManager.getString("action.find")); keyStroke = KeyStroke.getKeyStroke(KeyEvent.VK_F, - Toolkit.getDefaultToolkit().getMenuShortcutKeyMask(), false); + jalview.util.ShortcutKeyMaskExWrapper.getMenuShortcutKeyMaskEx(), false); findMenuItem.setToolTipText(JvSwingUtils.wrapTooltip(true, MessageManager.getString("label.find_tip"))); al = new ActionListener() @@ -924,7 +970,7 @@ public class GAlignFrame extends JInternalFrame JMenuItem deleteGroups = new JMenuItem( MessageManager.getString("action.undefine_groups")); keyStroke = KeyStroke.getKeyStroke(KeyEvent.VK_U, - Toolkit.getDefaultToolkit().getMenuShortcutKeyMask(), false); + jalview.util.ShortcutKeyMaskExWrapper.getMenuShortcutKeyMaskEx(), false); al = new ActionListener() { @Override @@ -949,7 +995,7 @@ public class GAlignFrame extends JInternalFrame JMenuItem createGroup = new JMenuItem( MessageManager.getString("action.create_group")); keyStroke = KeyStroke.getKeyStroke(KeyEvent.VK_G, - Toolkit.getDefaultToolkit().getMenuShortcutKeyMask(), false); + jalview.util.ShortcutKeyMaskExWrapper.getMenuShortcutKeyMaskEx(), false); al = new ActionListener() { @Override @@ -963,8 +1009,8 @@ public class GAlignFrame extends JInternalFrame JMenuItem unGroup = new JMenuItem( MessageManager.getString("action.remove_group")); keyStroke = KeyStroke.getKeyStroke(KeyEvent.VK_G, - Toolkit.getDefaultToolkit().getMenuShortcutKeyMask() - | KeyEvent.SHIFT_MASK, + jalview.util.ShortcutKeyMaskExWrapper.getMenuShortcutKeyMaskEx() + | jalview.util.ShortcutKeyMaskExWrapper.SHIFT_DOWN_MASK, false); al = new ActionListener() { @@ -978,7 +1024,7 @@ public class GAlignFrame extends JInternalFrame copy.setText(MessageManager.getString("action.copy")); keyStroke = KeyStroke.getKeyStroke(KeyEvent.VK_C, - Toolkit.getDefaultToolkit().getMenuShortcutKeyMask(), false); + jalview.util.ShortcutKeyMaskExWrapper.getMenuShortcutKeyMaskEx(), false); al = new ActionListener() { @@ -992,7 +1038,7 @@ public class GAlignFrame extends JInternalFrame cut.setText(MessageManager.getString("action.cut")); keyStroke = KeyStroke.getKeyStroke(KeyEvent.VK_X, - Toolkit.getDefaultToolkit().getMenuShortcutKeyMask(), false); + jalview.util.ShortcutKeyMaskExWrapper.getMenuShortcutKeyMaskEx(), false); al = new ActionListener() { @Override @@ -1018,8 +1064,8 @@ public class GAlignFrame extends JInternalFrame JMenuItem pasteNew = new JMenuItem( MessageManager.getString("label.to_new_alignment")); keyStroke = KeyStroke.getKeyStroke(KeyEvent.VK_V, - Toolkit.getDefaultToolkit().getMenuShortcutKeyMask() - | KeyEvent.SHIFT_MASK, + jalview.util.ShortcutKeyMaskExWrapper.getMenuShortcutKeyMaskEx() + | jalview.util.ShortcutKeyMaskExWrapper.SHIFT_DOWN_MASK, false); al = new ActionListener() { @@ -1041,7 +1087,7 @@ public class GAlignFrame extends JInternalFrame JMenuItem pasteThis = new JMenuItem( MessageManager.getString("label.to_this_alignment")); keyStroke = KeyStroke.getKeyStroke(KeyEvent.VK_V, - Toolkit.getDefaultToolkit().getMenuShortcutKeyMask(), false); + jalview.util.ShortcutKeyMaskExWrapper.getMenuShortcutKeyMaskEx(), false); al = new ActionListener() { @Override @@ -1252,16 +1298,33 @@ public class GAlignFrame extends JInternalFrame vamsasStore_actionPerformed(e); } }); - showTranslation - .setText(MessageManager.getString("label.translate_cDNA")); - showTranslation.addActionListener(new ActionListener() - { - @Override - public void actionPerformed(ActionEvent e) + + /* + * Translate as cDNA with sub-menu of translation tables + */ + showTranslation.setText(MessageManager + .getString("label.translate_cDNA")); + boolean first = true; + for (final GeneticCodeI table : GeneticCodes.getInstance() + .getCodeTables()) + { + JMenuItem item = new JMenuItem(table.getId() + " " + table.getName()); + showTranslation.add(item); + item.addActionListener(new ActionListener() + { + @Override + public void actionPerformed(ActionEvent e) + { + showTranslation_actionPerformed(table); + } + }); + if (first) { - showTranslation_actionPerformed(e); + showTranslation.addSeparator(); } - }); + first = false; + } + showReverse.setText(MessageManager.getString("label.reverse")); showReverse.addActionListener(new ActionListener() { @@ -1549,8 +1612,8 @@ public class GAlignFrame extends JInternalFrame JMenuItem invertColSel = new JMenuItem( MessageManager.getString("action.invert_column_selection")); keyStroke = KeyStroke.getKeyStroke(KeyEvent.VK_I, - Toolkit.getDefaultToolkit().getMenuShortcutKeyMask() - | KeyEvent.ALT_MASK, + jalview.util.ShortcutKeyMaskExWrapper.getMenuShortcutKeyMaskEx() + | jalview.util.ShortcutKeyMaskExWrapper.ALT_DOWN_MASK, false); al = new ActionListener() { @@ -1613,7 +1676,7 @@ public class GAlignFrame extends JInternalFrame JMenuItem save = new JMenuItem(MessageManager.getString("action.save")); keyStroke = KeyStroke.getKeyStroke(KeyEvent.VK_S, - Toolkit.getDefaultToolkit().getMenuShortcutKeyMask(), false); + jalview.util.ShortcutKeyMaskExWrapper.getMenuShortcutKeyMaskEx(), false); al = new ActionListener() { @Override @@ -1638,7 +1701,7 @@ public class GAlignFrame extends JInternalFrame JMenuItem newView = new JMenuItem( MessageManager.getString("action.new_view")); keyStroke = KeyStroke.getKeyStroke(KeyEvent.VK_T, - Toolkit.getDefaultToolkit().getMenuShortcutKeyMask(), false); + jalview.util.ShortcutKeyMaskExWrapper.getMenuShortcutKeyMaskEx(), false); al = new ActionListener() { @Override @@ -1725,6 +1788,18 @@ public class GAlignFrame extends JInternalFrame selectHighlightedColumns_actionPerformed(actionEvent); } }; + JMenuItem Filter = new JMenuItem( + MessageManager.getString("action.select_highlighted_columns")); + selectHighlighted.setToolTipText( + MessageManager.getString("tooltip.select_highlighted_columns")); + al = new ActionListener() + { + @Override + public void actionPerformed(ActionEvent actionEvent) + { + selectHighlightedColumns_actionPerformed(actionEvent); + } + }; selectHighlighted.addActionListener(al); JMenu tooltipSettingsMenu = new JMenu( MessageManager.getString("label.sequence_id_tooltip")); @@ -1786,6 +1861,9 @@ public class GAlignFrame extends JInternalFrame // editMenu.add(justifyRightMenuItem); // editMenu.addSeparator(); editMenu.add(padGapsMenuitem); + editMenu.addSeparator(); + editMenu.add(filterByEValue); + editMenu.add(filterByScore); showMenu.add(showAllColumns); showMenu.add(showAllSeqs); @@ -1841,6 +1919,8 @@ public class GAlignFrame extends JInternalFrame sort.add(sortLengthMenuItem); sort.add(sortGroupMenuItem); sort.add(sortPairwiseMenuItem); + sort.add(sortEValueMenuItem); + sort.add(sortBitScoreMenuItem); sort.add(sortByTreeMenu); calculateMenu.add(sort); calculateMenu.add(calculateTree); @@ -2007,9 +2087,57 @@ public class GAlignFrame extends JInternalFrame } } }); - hmmSearch.add(hmmSearchSettings); hmmSearch.add(hmmSearchRun); - hmmSearch.add(addDatabase); + hmmSearch.add(hmmSearchSettings); + // hmmSearch.add(addDatabase); + + /* + * jackhmmer + */ + JMenu jackhmmer = new JMenu( + MessageManager.getString("label.jackhmmer")); + JMenuItem jackhmmerSettings = new JMenuItem( + MessageManager.getString("label.edit_settings_and_run")); + jackhmmerSettings.addActionListener(new ActionListener() + { + @Override + public void actionPerformed(ActionEvent e) + { + jackhmmer_actionPerformed(false); + } + }); + JMenuItem jackhmmerRun = new JMenuItem(MessageManager.formatMessage( + "label.action_with_default_settings", "jackhmmer")); + jackhmmerRun.addActionListener(new ActionListener() + { + @Override + public void actionPerformed(ActionEvent e) + { + jackhmmer_actionPerformed(true); + } + + }); + /* + JMenuItem addDatabase = new JMenuItem( + MessageManager.getString("label.add_database")); + addDatabase.addActionListener(new ActionListener() + { + @Override + public void actionPerformed(ActionEvent e) + { + try + { + addDatabase_actionPerformed(); + } catch (IOException e1) + { + e1.printStackTrace(); + } + } + }); + */ + jackhmmer.add(jackhmmerRun); + jackhmmer.add(jackhmmerSettings); + // hmmSearch.add(addDatabase); /* * top level menu @@ -2019,6 +2147,7 @@ public class GAlignFrame extends JInternalFrame hmmerMenu.add(hmmBuild); hmmerMenu.add(hmmAlign); hmmerMenu.add(hmmSearch); + hmmerMenu.add(jackhmmer); } @@ -2097,8 +2226,9 @@ public class GAlignFrame extends JInternalFrame } }); - annotationColour = new JMenuItem( + annotationColour = new JRadioButtonMenuItem( MessageManager.getString("action.by_annotation")); + annotationColour.setName(ResidueColourScheme.ANNOTATION_COLOUR); annotationColour.addActionListener(new ActionListener() { @Override @@ -2436,6 +2566,14 @@ public class GAlignFrame extends JInternalFrame { } + protected void sortEValueMenuItem_actionPerformed(ActionEvent e) + { + } + + protected void sortBitScoreMenuItem_actionPerformed(ActionEvent e) + { + } + protected void removeRedundancyMenuItem_actionPerformed(ActionEvent e) { } @@ -2518,6 +2656,10 @@ public class GAlignFrame extends JInternalFrame { } + protected void jackhmmer_actionPerformed(boolean b) + { + } + protected void addDatabase_actionPerformed() throws FileFormatException, IOException { @@ -2583,6 +2725,14 @@ public class GAlignFrame extends JInternalFrame { } + protected void filterByEValue_actionPerformed() + { + } + + protected void filterByScore_actionPerformed() + { + } + protected void scaleRight_actionPerformed(ActionEvent e) { } @@ -2613,7 +2763,7 @@ public class GAlignFrame extends JInternalFrame } - public void showTranslation_actionPerformed(ActionEvent e) + public void showTranslation_actionPerformed(GeneticCodeI codeTable) { }