X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fjbgui%2FGAlignFrame.java;h=9260b231b758c73c82b27989efa63aed7019e440;hb=c4027fa79112cfc5b2049de2af0dd2e5ac602112;hp=23062e30932ef1b7bc6f0bbb9d3b6ea6f25971e2;hpb=ad0fe6750bb104d1dd26b397aed79b692ca4da8d;p=jalview.git diff --git a/src/jalview/jbgui/GAlignFrame.java b/src/jalview/jbgui/GAlignFrame.java index 23062e3..9260b23 100755 --- a/src/jalview/jbgui/GAlignFrame.java +++ b/src/jalview/jbgui/GAlignFrame.java @@ -1,20 +1,19 @@ /* - * Jalview - A Sequence Alignment Editor and Viewer (Development Version 2.4.1) - * Copyright (C) 2009 AM Waterhouse, J Procter, G Barton, M Clamp, S Searle + * Jalview - A Sequence Alignment Editor and Viewer (Version 2.6) + * Copyright (C) 2010 J Procter, AM Waterhouse, 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 file is part of Jalview. * - * 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. + * 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. * - * 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 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; @@ -122,7 +121,7 @@ public class GAlignFrame extends JInternalFrame public JCheckBoxMenuItem colourTextMenuItem = new JCheckBoxMenuItem(); - public JCheckBoxMenuItem showUnconservedMenuItem = new JCheckBoxMenuItem(); + public JCheckBoxMenuItem showNonconservedMenuItem = new JCheckBoxMenuItem(); JMenuItem htmlMenuItem = new JMenuItem(); @@ -147,6 +146,7 @@ public class GAlignFrame extends JInternalFrame public JCheckBoxMenuItem abovePIDThreshold = new JCheckBoxMenuItem(); public JCheckBoxMenuItem showSeqFeatures = new JCheckBoxMenuItem(); + public JCheckBoxMenuItem showSeqFeaturesHeight = new JCheckBoxMenuItem(); protected JRadioButtonMenuItem nucleotideColour = new JRadioButtonMenuItem(); @@ -196,7 +196,9 @@ public class GAlignFrame extends JInternalFrame JMenu jMenu2 = new JMenu(); protected JCheckBoxMenuItem padGapsMenuitem = new JCheckBoxMenuItem(); + protected JCheckBoxMenuItem showNpFeatsMenuitem = new JCheckBoxMenuItem(); + protected JCheckBoxMenuItem showDbRefsMenuitem = new JCheckBoxMenuItem(); protected ButtonGroup colours = new ButtonGroup(); @@ -236,7 +238,7 @@ public class GAlignFrame extends JInternalFrame GridLayout gridLayout1 = new GridLayout(); JMenu jMenu3 = new JMenu(); - + JMenuItem showAllSeqs = new JMenuItem(); JMenuItem showAllColumns = new JMenuItem(); @@ -247,6 +249,12 @@ public class GAlignFrame extends JInternalFrame 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(); @@ -270,7 +278,7 @@ public class GAlignFrame extends JInternalFrame protected JCheckBoxMenuItem centreColumnLabelsMenuItem = new JCheckBoxMenuItem(); protected JCheckBoxMenuItem followHighlightMenuItem = new JCheckBoxMenuItem(); - + protected JMenuItem gatherViews = new JMenuItem(); protected JMenuItem expandViews = new JMenuItem(); @@ -278,16 +286,27 @@ public class GAlignFrame extends JInternalFrame JMenuItem pageSetup = new JMenuItem(); JMenuItem alignmentProperties = new JMenuItem(); - + JMenu tooltipSettingsMenu = new JMenu(); - private JMenuItem justifyLeftMenuItem=new JMenuItem(); + 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(); - private JMenuItem justifyRightMenuItem=new JMenuItem(); - - protected JCheckBoxMenuItem showGroupConsensus=new JCheckBoxMenuItem(); - protected JCheckBoxMenuItem showGroupConservation=new JCheckBoxMenuItem(); - public GAlignFrame() { try @@ -344,8 +363,7 @@ public class GAlignFrame extends JInternalFrame if (evt.isControlDown() || SwingUtilities.isRightMouseButton(evt)) { - radioItem - .removeActionListener(radioItem.getActionListeners()[0]); + radioItem.removeActionListener(radioItem.getActionListeners()[0]); int option = JOptionPane.showInternalConfirmDialog( jalview.gui.Desktop.desktop, @@ -411,9 +429,6 @@ public class GAlignFrame extends JInternalFrame switch (index) { - case ColourSchemeProperty.NONE: - noColourmenuItem.setSelected(true); - break; case ColourSchemeProperty.CLUSTAL: clustalColour.setSelected(true); @@ -472,6 +487,11 @@ public class GAlignFrame extends JInternalFrame userDefinedColour.setSelected(true); break; + case ColourSchemeProperty.NONE: + default: + noColourmenuItem.setSelected(true); + break; + } } @@ -543,6 +563,15 @@ public class GAlignFrame extends JInternalFrame invertSequenceMenuItem_actionPerformed(e); } }); + grpsFromSelection.setText("Make Groups for selection"); + grpsFromSelection.addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(ActionEvent e) + { + makeGrpsFromSelection_actionPerformed(e); + } + }); + remove2LeftMenuItem.setText("Remove Left"); remove2LeftMenuItem.setAccelerator(javax.swing.KeyStroke.getKeyStroke( java.awt.event.KeyEvent.VK_L, Toolkit.getDefaultToolkit() @@ -593,21 +622,23 @@ public class GAlignFrame extends JInternalFrame } }); justifyLeftMenuItem.setText("Left Justify Alignment"); - justifyLeftMenuItem.addActionListener(new java.awt.event.ActionListener() - { - public void actionPerformed(ActionEvent e) - { - justifyLeftMenuItem_actionPerformed(e); - } - }); + 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); - } - }); + 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() @@ -626,15 +657,16 @@ public class GAlignFrame extends JInternalFrame viewTextMenuItem_actionPerformed(e); } }); - showUnconservedMenuItem.setText("Show Unconserved"); - showUnconservedMenuItem.setState(false); - showUnconservedMenuItem.addActionListener(new java.awt.event.ActionListener() - { - public void actionPerformed(ActionEvent e) - { - showUnconservedMenuItem_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() @@ -653,13 +685,14 @@ public class GAlignFrame extends JInternalFrame } }); sortLengthMenuItem.setText("By Length"); - sortLengthMenuItem.addActionListener(new java.awt.event.ActionListener() - { - public void actionPerformed(ActionEvent e) - { - sortLengthMenuItem_actionPerformed(e); - } - }); + 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() { @@ -965,14 +998,12 @@ public class GAlignFrame extends JInternalFrame showSeqFeatures_actionPerformed(actionEvent); } }); - showSeqFeaturesHeight.setText("Vary Sequence Feature Height"); - showSeqFeaturesHeight.addActionListener(new ActionListener() - { - public void actionPerformed(ActionEvent actionEvent) - { - showSeqFeaturesHeight_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() { @@ -981,7 +1012,7 @@ public class GAlignFrame extends JInternalFrame { showDbRefs_actionPerformed(e); } - + }); showNpFeatsMenuitem.setText("Show Non-Positional Features"); showNpFeatsMenuitem.addActionListener(new ActionListener() @@ -991,7 +1022,7 @@ public class GAlignFrame extends JInternalFrame { showNpFeats_actionPerformed(e); } - + }); showGroupConservation.setText("Group Conservation"); showGroupConservation.addActionListener(new ActionListener() @@ -1001,7 +1032,7 @@ public class GAlignFrame extends JInternalFrame { showGroupConservation_actionPerformed(e); } - + }); showGroupConsensus.setText("Group Consensus"); @@ -1012,7 +1043,39 @@ public class GAlignFrame extends JInternalFrame { 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"); @@ -1193,9 +1256,9 @@ public class GAlignFrame extends JInternalFrame { followHighlight_actionPerformed(); } - + }); - + modifyPID.setText("Modify Identity Threshold..."); modifyPID.addActionListener(new java.awt.event.ActionListener() { @@ -1289,7 +1352,7 @@ public class GAlignFrame extends JInternalFrame } }); extractScores.setVisible(true); // JBPNote: TODO: make gui for regex based - // score extraction + // score extraction showProducts.setText("Get Cross References"); /* * showProducts.addActionListener(new ActionListener() { @@ -1384,6 +1447,7 @@ public class GAlignFrame extends JInternalFrame 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) @@ -1392,6 +1456,7 @@ public class GAlignFrame extends JInternalFrame } }); showAllColumns.setText("All Columns"); + showAllColumns.setToolTipText("Ctrl+H toggles column visiblity."); showAllColumns.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) @@ -1401,6 +1466,7 @@ public class GAlignFrame extends JInternalFrame }); hideMenu.setText("Hide"); hideSelSequences.setText("Selected Sequences"); + hideSelSequences.setToolTipText("Shift+H toggles sequence visiblity."); hideSelSequences.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) @@ -1409,6 +1475,7 @@ public class GAlignFrame extends JInternalFrame } }); hideSelColumns.setText("Selected Columns"); + hideSelColumns.setToolTipText("Ctrl+H toggles column visiblity."); hideSelColumns.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) @@ -1416,6 +1483,34 @@ public class GAlignFrame extends JInternalFrame 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() { @@ -1549,6 +1644,7 @@ public class GAlignFrame extends JInternalFrame } }); tooltipSettingsMenu.setText("Sequence ID Tooltip"); + autoAnnMenu.setText("Autocalculated Annotation"); alignFrameMenuBar.add(fileMenu); alignFrameMenuBar.add(editMenu); alignFrameMenuBar.add(selectMenu); @@ -1589,9 +1685,10 @@ public class GAlignFrame extends JInternalFrame editMenu.add(removeRedundancyMenuItem); editMenu.addSeparator(); // dont add these yet in the CVS build - they cannot be undone! - editMenu.add(justifyLeftMenuItem); - editMenu.add(justifyRightMenuItem); - editMenu.addSeparator(); + // 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); @@ -1602,12 +1699,17 @@ public class GAlignFrame extends JInternalFrame viewMenu.addSeparator(); viewMenu.add(followHighlightMenuItem); viewMenu.add(annotationPanelMenuItem); - viewMenu.add(showGroupConservation); - viewMenu.add(showGroupConsensus); + 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(showSeqFeaturesHeight); + viewMenu.add(featureSettings); tooltipSettingsMenu.add(showDbRefsMenuitem); tooltipSettingsMenu.add(showNpFeatsMenuitem); @@ -1673,8 +1775,12 @@ public class GAlignFrame extends JInternalFrame 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); @@ -1689,7 +1795,7 @@ public class GAlignFrame extends JInternalFrame formatMenu.add(colourTextMenuItem); formatMenu.add(renderGapsMenuItem); formatMenu.add(centreColumnLabelsMenuItem); - formatMenu.add(showUnconservedMenuItem); + formatMenu.add(showNonconservedMenuItem); selectMenu.add(findMenuItem); selectMenu.addSeparator(); selectMenu.add(selectAllSequenceMenuItem); @@ -1697,61 +1803,104 @@ public class GAlignFrame extends JInternalFrame selectMenu.add(invertSequenceMenuItem); selectMenu.add(invertColSel); selectMenu.add(deleteGroups); + selectMenu.add(grpsFromSelection); + } + + 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)