X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fjbgui%2FGAlignFrame.java;h=304134cde86262ea031de344461a4c522cae2fb7;hb=0b23947e2cdcd704d3f313b23ba271e43d097344;hp=83bea2356735b8a1ac8b07607d64e76ad71d3ed7;hpb=2ac5b6423fe366e093c8f12b0935aefc9aafbe5f;p=jalview.git diff --git a/src/jalview/jbgui/GAlignFrame.java b/src/jalview/jbgui/GAlignFrame.java index 83bea23..304134c 100755 --- a/src/jalview/jbgui/GAlignFrame.java +++ b/src/jalview/jbgui/GAlignFrame.java @@ -1,6 +1,6 @@ /* * Jalview - A Sequence Alignment Editor and Viewer - * Copyright (C) 2005 AM Waterhouse, J Procter, G Barton, M Clamp, S Searle + * Copyright (C) 2006 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 @@ -21,10 +21,14 @@ package jalview.jbgui; import java.awt.*; import java.awt.event.*; import javax.swing.*; +import javax.swing.event.*; import jalview.schemes.*; import java.awt.BorderLayout; + + + public class GAlignFrame extends JInternalFrame { @@ -57,7 +61,7 @@ public class GAlignFrame protected JMenuItem clustalAlignMenuItem = new JMenuItem(); BorderLayout borderLayout1 = new BorderLayout(); public JLabel statusBar = new JLabel(); - protected JMenuItem saveAlignmentMenu = new JMenuItem(); + protected JMenuItem saveAs = new JMenuItem(); protected JMenu outputTextboxMenu = new JMenu(); protected JRadioButtonMenuItem clustalColour = new JRadioButtonMenuItem(); protected JRadioButtonMenuItem zappoColour = new JRadioButtonMenuItem(); @@ -132,27 +136,25 @@ public class GAlignFrame JMenu jMenu3 = new JMenu(); JMenuItem showAllSeqs = new JMenuItem(); JMenuItem showAllColumns = new JMenuItem(); - JMenu jMenu4 = new JMenu(); + JMenu hideMenu = new JMenu(); JMenuItem hideSelSequences = new JMenuItem(); JMenuItem hideSelColumns = new JMenuItem(); protected JCheckBoxMenuItem hiddenMarkers = new JCheckBoxMenuItem(); - JMenu jMenu5 = new JMenu(); - + JMenuItem invertColSel = new JMenuItem(); + protected JTabbedPane tabbedPane = new JTabbedPane(); + JMenuItem save = new JMenuItem(); public GAlignFrame() { - - try { jbInit(); setJMenuBar(alignFrameMenuBar); // dynamically fill save as menu with available formats - for (int i = 0; i < jalview.io.FormatAdapter.formats.size(); i++) + for (int i = 0; i < jalview.io.FormatAdapter.WRITEABLE_FORMATS.length; i++) { - JMenuItem item = new JMenuItem( (String) jalview.io.FormatAdapter.formats. - elementAt( - i)); + JMenuItem item = new JMenuItem( jalview.io.FormatAdapter.WRITEABLE_FORMATS[i] ); + item.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(ActionEvent e) @@ -315,21 +317,21 @@ public class GAlignFrame private void jbInit() throws Exception { - fileMenu.setMnemonic('F'); fileMenu.setText("File"); - saveAlignmentMenu.setMnemonic('L'); - saveAlignmentMenu.setText("Save As"); - saveAlignmentMenu.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java. - awt.event.KeyEvent.VK_S, java.awt.event.KeyEvent.CTRL_MASK, false)); - saveAlignmentMenu.addActionListener(new ActionListener() + saveAs.setText("Save As ..."); + saveAs.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event. + KeyEvent.VK_S, java.awt.event.KeyEvent.ALT_MASK, false)); + saveAs.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { - saveAlignmentMenu_actionPerformed(e); + saveAs_actionPerformed(e); } }); closeMenuItem.setMnemonic('C'); closeMenuItem.setText("Close"); + closeMenuItem.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt. + event.KeyEvent.VK_W, java.awt.event.KeyEvent.CTRL_MASK, false)); closeMenuItem.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(ActionEvent e) @@ -366,7 +368,10 @@ public class GAlignFrame deselectAllSequenceMenuItem_actionPerformed(e); } }); - invertSequenceMenuItem.setText("Invert Selection"); + invertSequenceMenuItem.setText("Invert Sequence Selection"); + invertSequenceMenuItem.setAccelerator(javax.swing.KeyStroke.getKeyStroke( + java.awt.event.KeyEvent.VK_I, + java.awt.event.KeyEvent.SHIFT_MASK, false)); invertSequenceMenuItem.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(ActionEvent e) @@ -375,6 +380,8 @@ public class GAlignFrame } }); remove2LeftMenuItem.setText("Remove Left"); + remove2LeftMenuItem.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java. + awt.event.KeyEvent.VK_L, java.awt.event.KeyEvent.CTRL_MASK, false)); remove2LeftMenuItem.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(ActionEvent e) @@ -383,6 +390,8 @@ public class GAlignFrame } }); remove2RightMenuItem.setText("Remove Right"); + remove2RightMenuItem.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java. + awt.event.KeyEvent.VK_R, java.awt.event.KeyEvent.CTRL_MASK, false)); remove2RightMenuItem.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(ActionEvent e) @@ -391,6 +400,9 @@ public class GAlignFrame } }); removeGappedColumnMenuItem.setText("Remove Empty Columns"); + removeGappedColumnMenuItem.setAccelerator(javax.swing.KeyStroke. + getKeyStroke(java.awt.event. + KeyEvent.VK_E, java.awt.event.KeyEvent.CTRL_MASK, false)); removeGappedColumnMenuItem.addActionListener(new java.awt.event. ActionListener() { @@ -400,6 +412,8 @@ public class GAlignFrame } }); removeAllGapsMenuItem.setText("Remove All Gaps"); + removeAllGapsMenuItem.setAccelerator(javax.swing.KeyStroke.getKeyStroke( + java.awt.event.KeyEvent.VK_G, java.awt.event.KeyEvent.CTRL_MASK, false)); removeAllGapsMenuItem.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(ActionEvent e) @@ -450,6 +464,8 @@ public class GAlignFrame } }); removeRedundancyMenuItem.setText("Remove Redundancy..."); + removeRedundancyMenuItem.setAccelerator(javax.swing.KeyStroke.getKeyStroke( + java.awt.event.KeyEvent.VK_R, java.awt.event.KeyEvent.CTRL_MASK, false)); removeRedundancyMenuItem.addActionListener(new java.awt.event. ActionListener() { @@ -658,6 +674,8 @@ public class GAlignFrame redoMenuItem.setEnabled(false); redoMenuItem.setMnemonic('0'); redoMenuItem.setText("Redo"); + redoMenuItem.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt. + event.KeyEvent.VK_Y, java.awt.event.KeyEvent.CTRL_MASK, false)); redoMenuItem.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(ActionEvent e) @@ -690,6 +708,8 @@ public class GAlignFrame } }); printMenuItem.setText("Print"); + printMenuItem.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt. + event.KeyEvent.VK_P, java.awt.event.KeyEvent.CTRL_MASK, false)); printMenuItem.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(ActionEvent e) @@ -744,6 +764,8 @@ public class GAlignFrame } }); deleteGroups.setText("Undefine groups"); + deleteGroups.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt. + event.KeyEvent.VK_U, java.awt.event.KeyEvent.CTRL_MASK, false)); deleteGroups.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(ActionEvent e) @@ -806,7 +828,6 @@ public class GAlignFrame } }); applyToAllGroups.setText("Apply Colour To All Groups"); - applyToAllGroups.setState(true); applyToAllGroups.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(ActionEvent e) @@ -907,7 +928,7 @@ public class GAlignFrame sort.setText("Sort"); calculate.setText("Calculate Tree"); - jMenu2.setText("Export"); + jMenu2.setText("Export Image"); padGapsMenuitem.setText("Pad Gaps"); padGapsMenuitem.setState( jalview.bin.Cache.getDefault("PAD_GAPS", false)); padGapsMenuitem.addActionListener(new ActionListener() @@ -935,14 +956,7 @@ public class GAlignFrame } }); - /* tabbedPane.addChangeListener(new ChangeListener() - { - public void stateChanged(ChangeEvent ece) - { - tabSelected(); - } - });*/ featureSettings.setText("Feature Settings..."); featureSettings.addActionListener(new ActionListener() { @@ -967,7 +981,7 @@ public class GAlignFrame smoothFont_actionPerformed(e); } }); - smoothFont.setState( jalview.bin.Cache.getDefault("ANTI_ALIAS",false)); + annotationColour.setText("By Annotation..."); annotationColour.addActionListener(new ActionListener() { @@ -1052,7 +1066,7 @@ public class GAlignFrame showAllColumns_actionPerformed(e); } }); - jMenu4.setText("Hide"); + hideMenu.setText("Hide"); hideSelSequences.setText("Selected Sequences"); hideSelSequences.addActionListener(new ActionListener() { @@ -1070,7 +1084,6 @@ public class GAlignFrame } }); hiddenMarkers.setText("Hidden Markers"); - hiddenMarkers.setState(true); hiddenMarkers.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) @@ -1078,7 +1091,49 @@ public class GAlignFrame hiddenMarkers_actionPerformed(e); } }); - jMenu5.setText("Associate Structure With Sequence"); + invertColSel.setText("Invert Column Selection"); + invertColSel.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt. + event.KeyEvent.VK_I, java.awt.event.KeyEvent.CTRL_MASK, false)); + invertColSel.addActionListener(new ActionListener() + { + public void actionPerformed(ActionEvent e) + { + invertColSel_actionPerformed(e); + } + }); + tabbedPane.addChangeListener(new javax.swing.event.ChangeListener() + { + public void stateChanged(ChangeEvent evt) + { + JTabbedPane pane = (JTabbedPane)evt.getSource(); + int sel = pane.getSelectedIndex(); + tabSelectionChanged(sel); + } + }); + tabbedPane.addMouseListener(new MouseAdapter() + { + public void mousePressed(MouseEvent e) + { + tabbedPane_mousePressed(e); + } + }); + tabbedPane.addFocusListener(new FocusAdapter() + { + public void focusGained(FocusEvent e) + { + tabbedPane_focusGained(e); + } + }); + save.setText("Save"); + save.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event. + KeyEvent.VK_S, java.awt.event.KeyEvent.CTRL_MASK, false)); + save.addActionListener(new ActionListener() + { + public void actionPerformed(ActionEvent e) + { + save_actionPerformed(e); + } + }); alignFrameMenuBar.add(fileMenu); alignFrameMenuBar.add(editMenu); @@ -1091,13 +1146,12 @@ public class GAlignFrame fileMenu.add(fetchSequence); fileMenu.addSeparator(); fileMenu.add(vamsasStore); - fileMenu.add(saveAlignmentMenu); - fileMenu.add(jMenu2); + fileMenu.add(save); + fileMenu.add(saveAs); fileMenu.add(outputTextboxMenu); fileMenu.add(printMenuItem); fileMenu.addSeparator(); - fileMenu.add(jMenu5); - fileMenu.addSeparator(); + fileMenu.add(jMenu2); fileMenu.add(exportFeatures); fileMenu.add(exportAnnotations); fileMenu.add(LoadtreeMenuItem); @@ -1114,6 +1168,7 @@ public class GAlignFrame editMenu.add(selectAllSequenceMenuItem); editMenu.add(deselectAllSequenceMenuItem); editMenu.add(invertSequenceMenuItem); + editMenu.add(invertColSel); editMenu.add(deleteGroups); editMenu.addSeparator(); editMenu.add(remove2LeftMenuItem); @@ -1128,7 +1183,7 @@ public class GAlignFrame viewMenu.add(smoothFont); viewMenu.addSeparator(); viewMenu.add(jMenu3); - viewMenu.add(jMenu4); + viewMenu.add(hideMenu); viewMenu.add(hiddenMarkers); viewMenu.addSeparator(); viewMenu.add(wrapMenuItem); @@ -1193,10 +1248,11 @@ public class GAlignFrame addSequenceMenu.add(addFromURL); this.getContentPane().add(statusPanel, java.awt.BorderLayout.SOUTH); statusPanel.add(statusBar, null); + this.getContentPane().add(tabbedPane, java.awt.BorderLayout.CENTER); jMenu3.add(showAllColumns); jMenu3.add(showAllSeqs); - jMenu4.add(hideSelColumns); - jMenu4.add(hideSelSequences); + hideMenu.add(hideSelColumns); + hideMenu.add(hideSelSequences); } protected void outputText_actionPerformed(ActionEvent e) @@ -1492,7 +1548,7 @@ public class GAlignFrame - protected void saveAlignmentMenu_actionPerformed(ActionEvent e) + protected void saveAs_actionPerformed(ActionEvent e) { } @@ -1586,4 +1642,29 @@ public class GAlignFrame { } + + public void invertColSel_actionPerformed(ActionEvent e) + { + + } + + public void tabSelectionChanged(int sel) + { + + } + + public void tabbedPane_mousePressed(MouseEvent e) + { + + } + + public void tabbedPane_focusGained(FocusEvent e) + { + requestFocus(); + } + + public void save_actionPerformed(ActionEvent e) + { + + } }