/*\r
* Jalview - A Sequence Alignment Editor and Viewer\r
- * Copyright (C) 2005 AM Waterhouse, J Procter, G Barton, M Clamp, S Searle\r
+ * Copyright (C) 2006 AM Waterhouse, J Procter, G Barton, M Clamp, S Searle\r
*\r
* This program is free software; you can redistribute it and/or\r
* modify it under the terms of the GNU General Public License\r
import java.awt.*;\r
import java.awt.event.*;\r
import javax.swing.*;\r
+import javax.swing.event.*;\r
\r
import jalview.schemes.*;\r
+import java.awt.BorderLayout;\r
+\r
+\r
+\r
\r
public class GAlignFrame\r
extends JInternalFrame\r
protected JMenuItem PCAMenuItem = new JMenuItem();\r
protected JMenuItem averageDistanceTreeMenuItem = new JMenuItem();\r
protected JMenuItem neighbourTreeMenuItem = new JMenuItem();\r
- protected JMenuItem clustalAlignMenuItem = new JMenuItem();\r
BorderLayout borderLayout1 = new BorderLayout();\r
public JLabel statusBar = new JLabel();\r
- protected JMenuItem saveAlignmentMenu = new JMenuItem();\r
+ protected JMenuItem saveAs = new JMenuItem();\r
protected JMenu outputTextboxMenu = new JMenu();\r
protected JRadioButtonMenuItem clustalColour = new JRadioButtonMenuItem();\r
protected JRadioButtonMenuItem zappoColour = new JRadioButtonMenuItem();\r
protected JCheckBoxMenuItem padGapsMenuitem = new JCheckBoxMenuItem();\r
protected ButtonGroup colours = new ButtonGroup();\r
JMenuItem vamsasStore = new JMenuItem();\r
- protected JCheckBoxMenuItem showTranslation = new JCheckBoxMenuItem();\r
- //protected JTabbedPane tabbedPane = new JTabbedPane();\r
+ protected JMenuItem showTranslation = new JMenuItem();\r
public JMenuItem featureSettings = new JMenuItem();\r
JMenuItem fetchSequence = new JMenuItem();\r
protected JCheckBoxMenuItem smoothFont = new JCheckBoxMenuItem();\r
JMenuItem annotationColour = new JMenuItem();\r
- JMenuItem fetchSeqFeatures = new JMenuItem();\r
-\r
-\r
-\r
JMenuItem associatedData = new JMenuItem();\r
protected JCheckBoxMenuItem autoCalculate = new JCheckBoxMenuItem();\r
JMenu addSequenceMenu = new JMenu();\r
JMenuItem addFromFile = new JMenuItem();\r
JMenuItem addFromText = new JMenuItem();\r
JMenuItem addFromURL = new JMenuItem();\r
+ JMenuItem exportAnnotations = new JMenuItem();\r
+ JMenuItem exportFeatures = new JMenuItem();\r
+ protected JPanel statusPanel = new JPanel();\r
+ GridLayout gridLayout1 = new GridLayout();\r
+ JMenu jMenu3 = new JMenu();\r
+ JMenuItem showAllSeqs = new JMenuItem();\r
+ JMenuItem showAllColumns = new JMenuItem();\r
+ JMenu hideMenu = new JMenu();\r
+ JMenuItem hideSelSequences = new JMenuItem();\r
+ JMenuItem hideSelColumns = new JMenuItem();\r
+ protected JCheckBoxMenuItem hiddenMarkers = new JCheckBoxMenuItem();\r
+ JMenuItem invertColSel = new JMenuItem();\r
+ protected JTabbedPane tabbedPane = new JTabbedPane();\r
+ JMenuItem save = new JMenuItem();\r
+ JMenuItem jMenuItem1 = new JMenuItem();\r
+ JMenuItem reload = new JMenuItem();\r
public GAlignFrame()\r
{\r
-\r
-\r
try\r
{\r
jbInit();\r
setJMenuBar(alignFrameMenuBar);\r
\r
// dynamically fill save as menu with available formats\r
- for (int i = 0; i < jalview.io.FormatAdapter.formats.size(); i++)\r
+ for (int i = 0; i < jalview.io.FormatAdapter.WRITEABLE_FORMATS.length; i++)\r
{\r
- JMenuItem item = new JMenuItem( (String) jalview.io.FormatAdapter.formats.\r
- elementAt(\r
- i));\r
+ JMenuItem item = new JMenuItem( jalview.io.FormatAdapter.WRITEABLE_FORMATS[i] );\r
+\r
item.addActionListener(new java.awt.event.ActionListener()\r
{\r
public void actionPerformed(ActionEvent e)\r
private void jbInit()\r
throws Exception\r
{\r
- fileMenu.setMnemonic('F');\r
fileMenu.setText("File");\r
- saveAlignmentMenu.setMnemonic('L');\r
- saveAlignmentMenu.setText("Save As");\r
- saveAlignmentMenu.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.\r
- awt.event.KeyEvent.VK_S, java.awt.event.KeyEvent.CTRL_MASK, false));\r
- saveAlignmentMenu.addActionListener(new ActionListener()\r
+ saveAs.setText("Save As ...");\r
+ saveAs.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.\r
+ KeyEvent.VK_S, java.awt.event.KeyEvent.ALT_MASK, false));\r
+ saveAs.addActionListener(new ActionListener()\r
{\r
public void actionPerformed(ActionEvent e)\r
{\r
- saveAlignmentMenu_actionPerformed(e);\r
+ saveAs_actionPerformed(e);\r
}\r
});\r
closeMenuItem.setMnemonic('C');\r
closeMenuItem.setText("Close");\r
+ closeMenuItem.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.\r
+ event.KeyEvent.VK_W, Toolkit.getDefaultToolkit().getMenuShortcutKeyMask(), false));\r
closeMenuItem.addActionListener(new java.awt.event.ActionListener()\r
{\r
public void actionPerformed(ActionEvent e)\r
deselectAllSequenceMenuItem_actionPerformed(e);\r
}\r
});\r
- invertSequenceMenuItem.setText("Invert Selection");\r
+ invertSequenceMenuItem.setText("Invert Sequence Selection");\r
+ invertSequenceMenuItem.setAccelerator(javax.swing.KeyStroke.getKeyStroke(\r
+ java.awt.event.KeyEvent.VK_I,\r
+ java.awt.event.KeyEvent.SHIFT_MASK, false));\r
invertSequenceMenuItem.addActionListener(new java.awt.event.ActionListener()\r
{\r
public void actionPerformed(ActionEvent e)\r
}\r
});\r
remove2LeftMenuItem.setText("Remove Left");\r
+ remove2LeftMenuItem.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.\r
+ awt.event.KeyEvent.VK_L, Toolkit.getDefaultToolkit().getMenuShortcutKeyMask(), false));\r
remove2LeftMenuItem.addActionListener(new java.awt.event.ActionListener()\r
{\r
public void actionPerformed(ActionEvent e)\r
}\r
});\r
remove2RightMenuItem.setText("Remove Right");\r
+ remove2RightMenuItem.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.\r
+ awt.event.KeyEvent.VK_R, Toolkit.getDefaultToolkit().getMenuShortcutKeyMask(), false));\r
remove2RightMenuItem.addActionListener(new java.awt.event.ActionListener()\r
{\r
public void actionPerformed(ActionEvent e)\r
}\r
});\r
removeGappedColumnMenuItem.setText("Remove Empty Columns");\r
+ removeGappedColumnMenuItem.setAccelerator(javax.swing.KeyStroke.\r
+ getKeyStroke(java.awt.event.\r
+ KeyEvent.VK_E, Toolkit.getDefaultToolkit().getMenuShortcutKeyMask(), false));\r
removeGappedColumnMenuItem.addActionListener(new java.awt.event.\r
ActionListener()\r
{\r
}\r
});\r
removeAllGapsMenuItem.setText("Remove All Gaps");\r
+ removeAllGapsMenuItem.setAccelerator(javax.swing.KeyStroke.getKeyStroke(\r
+ java.awt.event.KeyEvent.VK_G, Toolkit.getDefaultToolkit().getMenuShortcutKeyMask(), false));\r
removeAllGapsMenuItem.addActionListener(new java.awt.event.ActionListener()\r
{\r
public void actionPerformed(ActionEvent e)\r
}\r
});\r
removeRedundancyMenuItem.setText("Remove Redundancy...");\r
+ removeRedundancyMenuItem.setAccelerator(javax.swing.KeyStroke.getKeyStroke(\r
+ java.awt.event.KeyEvent.VK_D, Toolkit.getDefaultToolkit().getMenuShortcutKeyMask(), false));\r
removeRedundancyMenuItem.addActionListener(new java.awt.event.\r
ActionListener()\r
{\r
redoMenuItem.setEnabled(false);\r
redoMenuItem.setMnemonic('0');\r
redoMenuItem.setText("Redo");\r
+ redoMenuItem.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.\r
+ event.KeyEvent.VK_Y, Toolkit.getDefaultToolkit().getMenuShortcutKeyMask(), false));\r
redoMenuItem.addActionListener(new java.awt.event.ActionListener()\r
{\r
public void actionPerformed(ActionEvent e)\r
}\r
});\r
printMenuItem.setText("Print");\r
+ printMenuItem.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.\r
+ event.KeyEvent.VK_P, Toolkit.getDefaultToolkit().getMenuShortcutKeyMask(), false));\r
printMenuItem.addActionListener(new java.awt.event.ActionListener()\r
{\r
public void actionPerformed(ActionEvent e)\r
}\r
});\r
deleteGroups.setText("Undefine groups");\r
+ deleteGroups.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.\r
+ event.KeyEvent.VK_U, Toolkit.getDefaultToolkit().getMenuShortcutKeyMask(), false));\r
deleteGroups.addActionListener(new java.awt.event.ActionListener()\r
{\r
public void actionPerformed(ActionEvent e)\r
}\r
});\r
delete.setText("Delete");\r
+ delete.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.\r
+ KeyEvent.VK_BACK_SPACE, 0, false));\r
delete.addActionListener(new java.awt.event.ActionListener()\r
{\r
public void actionPerformed(ActionEvent e)\r
}\r
});\r
applyToAllGroups.setText("Apply Colour To All Groups");\r
- applyToAllGroups.setState(true);\r
applyToAllGroups.addActionListener(new java.awt.event.ActionListener()\r
{\r
public void actionPerformed(ActionEvent e)\r
sort.setText("Sort");\r
calculate.setText("Calculate Tree");\r
\r
- jMenu2.setText("Export");\r
+ jMenu2.setText("Export Image");\r
padGapsMenuitem.setText("Pad Gaps");\r
padGapsMenuitem.setState( jalview.bin.Cache.getDefault("PAD_GAPS", false));\r
padGapsMenuitem.addActionListener(new ActionListener()\r
}\r
});\r
\r
- /* tabbedPane.addChangeListener(new ChangeListener()\r
- {\r
- public void stateChanged(ChangeEvent ece)\r
- {\r
\r
- tabSelected();\r
- }\r
- });*/\r
featureSettings.setText("Feature Settings...");\r
featureSettings.addActionListener(new ActionListener()\r
{\r
smoothFont_actionPerformed(e);\r
}\r
});\r
- smoothFont.setState( jalview.bin.Cache.getDefault("ANTI_ALIAS",false));\r
+\r
annotationColour.setText("By Annotation...");\r
annotationColour.addActionListener(new ActionListener()\r
{\r
annotationColour_actionPerformed(e);\r
}\r
});\r
- fetchSeqFeatures.setText("Fetch Sequence Features");\r
- fetchSeqFeatures.addActionListener(new ActionListener()\r
- {\r
- public void actionPerformed(ActionEvent e)\r
- {\r
- fetchSeqFeatures_actionPerformed(e);\r
- }\r
- });\r
associatedData.setText("Load Features / Annotations");\r
associatedData.addActionListener(new ActionListener()\r
{\r
addFromURL_actionPerformed(e);\r
}\r
});\r
+ exportFeatures.setText("Export Features...");\r
+ exportFeatures.addActionListener(new ActionListener()\r
+ {\r
+ public void actionPerformed(ActionEvent e)\r
+ {\r
+ exportFeatures_actionPerformed(e);\r
+ }\r
+ });\r
+ exportAnnotations.setText("Export Annotations...");\r
+ exportAnnotations.addActionListener(new ActionListener()\r
+ {\r
+ public void actionPerformed(ActionEvent e)\r
+ {\r
+ exportAnnotations_actionPerformed(e);\r
+ }\r
+ });\r
+ statusPanel.setLayout(gridLayout1);\r
+ jMenu3.setText("Show");\r
+ showAllSeqs.setText("All Sequences");\r
+ showAllSeqs.addActionListener(new ActionListener()\r
+ {\r
+ public void actionPerformed(ActionEvent e)\r
+ {\r
+ showAllSeqs_actionPerformed(e);\r
+ }\r
+ });\r
+ showAllColumns.setText("All Columns");\r
+ showAllColumns.addActionListener(new ActionListener()\r
+ {\r
+ public void actionPerformed(ActionEvent e)\r
+ {\r
+ showAllColumns_actionPerformed(e);\r
+ }\r
+ });\r
+ hideMenu.setText("Hide");\r
+ hideSelSequences.setText("Selected Sequences");\r
+ hideSelSequences.addActionListener(new ActionListener()\r
+ {\r
+ public void actionPerformed(ActionEvent e)\r
+ {\r
+ hideSelSequences_actionPerformed(e);\r
+ }\r
+ });\r
+ hideSelColumns.setText("Selected Columns");\r
+ hideSelColumns.addActionListener(new ActionListener()\r
+ {\r
+ public void actionPerformed(ActionEvent e)\r
+ {\r
+ hideSelColumns_actionPerformed(e);\r
+ }\r
+ });\r
+ hiddenMarkers.setText("Hidden Markers");\r
+ hiddenMarkers.addActionListener(new ActionListener()\r
+ {\r
+ public void actionPerformed(ActionEvent e)\r
+ {\r
+ hiddenMarkers_actionPerformed(e);\r
+ }\r
+ });\r
+ invertColSel.setText("Invert Column Selection");\r
+ invertColSel.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.\r
+ event.KeyEvent.VK_I, Toolkit.getDefaultToolkit().getMenuShortcutKeyMask(), false));\r
+ invertColSel.addActionListener(new ActionListener()\r
+ {\r
+ public void actionPerformed(ActionEvent e)\r
+ {\r
+ invertColSel_actionPerformed(e);\r
+ }\r
+ });\r
+ tabbedPane.addChangeListener(new javax.swing.event.ChangeListener()\r
+ {\r
+ public void stateChanged(ChangeEvent evt)\r
+ {\r
+ JTabbedPane pane = (JTabbedPane)evt.getSource();\r
+ int sel = pane.getSelectedIndex();\r
+ tabSelectionChanged(sel);\r
+ }\r
+ });\r
+ tabbedPane.addMouseListener(new MouseAdapter()\r
+ {\r
+ public void mousePressed(MouseEvent e)\r
+ {\r
+ tabbedPane_mousePressed(e);\r
+ }\r
+ });\r
+ tabbedPane.addFocusListener(new FocusAdapter()\r
+ {\r
+ public void focusGained(FocusEvent e)\r
+ {\r
+ tabbedPane_focusGained(e);\r
+ }\r
+ });\r
+ save.setText("Save");\r
+ save.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.\r
+ KeyEvent.VK_S, Toolkit.getDefaultToolkit().getMenuShortcutKeyMask(), false));\r
+ save.addActionListener(new ActionListener()\r
+ {\r
+ public void actionPerformed(ActionEvent e)\r
+ {\r
+ save_actionPerformed(e);\r
+ }\r
+ });\r
+ reload.setMnemonic('R');\r
+ reload.setText("Reload");\r
+ // reload.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.\r
+ // KeyEvent.VK_R, Toolkit.getDefaultToolkit().getMenuShortcutKeyMask(), false));\r
+ reload.addActionListener(new ActionListener()\r
+ {\r
+ public void actionPerformed(ActionEvent e)\r
+ {\r
+ reload_actionPerformed(e);\r
+ }\r
+ });\r
+\r
alignFrameMenuBar.add(fileMenu);\r
alignFrameMenuBar.add(editMenu);\r
alignFrameMenuBar.add(searchMenu);\r
alignFrameMenuBar.add(colourMenu);\r
alignFrameMenuBar.add(calculateMenu);\r
alignFrameMenuBar.add(webService);\r
- fileMenu.add(addSequenceMenu);\r
fileMenu.add(fetchSequence);\r
+ fileMenu.add(addSequenceMenu);\r
+ fileMenu.add(reload);\r
fileMenu.addSeparator();\r
fileMenu.add(vamsasStore);\r
- fileMenu.add(saveAlignmentMenu);\r
- fileMenu.add(jMenu2);\r
+ fileMenu.add(save);\r
+ fileMenu.add(saveAs);\r
fileMenu.add(outputTextboxMenu);\r
fileMenu.add(printMenuItem);\r
fileMenu.addSeparator();\r
+ fileMenu.add(jMenu2);\r
+ fileMenu.add(exportFeatures);\r
+ fileMenu.add(exportAnnotations);\r
fileMenu.add(LoadtreeMenuItem);\r
fileMenu.add(associatedData);\r
fileMenu.addSeparator();\r
editMenu.add(selectAllSequenceMenuItem);\r
editMenu.add(deselectAllSequenceMenuItem);\r
editMenu.add(invertSequenceMenuItem);\r
+ editMenu.add(invertColSel);\r
editMenu.add(deleteGroups);\r
editMenu.addSeparator();\r
editMenu.add(remove2LeftMenuItem);\r
viewMenu.add(font);\r
viewMenu.add(smoothFont);\r
viewMenu.addSeparator();\r
+ viewMenu.add(jMenu3);\r
+ viewMenu.add(hideMenu);\r
+ viewMenu.add(hiddenMarkers);\r
+ viewMenu.addSeparator();\r
viewMenu.add(wrapMenuItem);\r
viewMenu.add(seqLimits);\r
viewMenu.add(scaleAbove);\r
viewMenu.add(renderGapsMenuItem);\r
viewMenu.add(annotationPanelMenuItem);\r
viewMenu.addSeparator();\r
- viewMenu.add(fetchSeqFeatures);\r
viewMenu.add(showSeqFeatures);\r
viewMenu.add(featureSettings);\r
viewMenu.addSeparator();\r
calculateMenu.add(showTranslation);\r
calculateMenu.add(autoCalculate);\r
webServiceNoServices=new JMenuItem("<No Services>");\r
- webService.add(webServiceNoServices);\r
- this.getContentPane().add(statusBar, BorderLayout.SOUTH);\r
- // this.getContentPane().add(tabbedPane, java.awt.BorderLayout.CENTER);\r
- jMenu1.add(pasteNew);\r
+ webService.add(webServiceNoServices);jMenu1.add(pasteNew);\r
jMenu1.add(pasteThis);\r
sort.add(sortIDMenuItem);\r
sort.add(sortGroupMenuItem);\r
addSequenceMenu.add(addFromFile);\r
addSequenceMenu.add(addFromText);\r
addSequenceMenu.add(addFromURL);\r
+ this.getContentPane().add(statusPanel, java.awt.BorderLayout.SOUTH);\r
+ statusPanel.add(statusBar, null);\r
+ this.getContentPane().add(tabbedPane, java.awt.BorderLayout.CENTER);\r
+ jMenu3.add(showAllColumns);\r
+ jMenu3.add(showAllSeqs);\r
+ hideMenu.add(hideSelColumns);\r
+ hideMenu.add(hideSelSequences);\r
}\r
\r
protected void outputText_actionPerformed(ActionEvent e)\r
{\r
}\r
\r
+ public void addFromFile_actionPerformed(ActionEvent e)\r
+ {\r
+\r
+ }\r
+\r
+ public void addFromText_actionPerformed(ActionEvent e)\r
+ {\r
+\r
+ }\r
+\r
+ public void addFromURL_actionPerformed(ActionEvent e)\r
+ {\r
+\r
+ }\r
+\r
+ public void exportFeatures_actionPerformed(ActionEvent e)\r
+ {\r
+\r
+ }\r
+\r
+ public void exportAnnotations_actionPerformed(ActionEvent e)\r
+ {\r
+\r
+ }\r
+\r
protected void htmlMenuItem_actionPerformed(ActionEvent e)\r
{\r
}\r
\r
\r
\r
- protected void saveAlignmentMenu_actionPerformed(ActionEvent e)\r
+ protected void saveAs_actionPerformed(ActionEvent e)\r
{\r
}\r
\r
\r
}\r
\r
- public void fetchSeqFeatures_actionPerformed(ActionEvent e)\r
+\r
+ public void associatedData_actionPerformed(ActionEvent e)\r
{\r
\r
}\r
\r
- public void associatedData_actionPerformed(ActionEvent e)\r
+ public void autoCalculate_actionPerformed(ActionEvent e)\r
{\r
\r
}\r
\r
- public void autoCalculate_actionPerformed(ActionEvent e)\r
+ public void showAllSeqs_actionPerformed(ActionEvent e)\r
{\r
\r
}\r
\r
- public void addFromFile_actionPerformed(ActionEvent e)\r
+ public void showAllColumns_actionPerformed(ActionEvent e)\r
{\r
\r
}\r
\r
- public void addFromText_actionPerformed(ActionEvent e)\r
+ public void hideSelSequences_actionPerformed(ActionEvent e)\r
{\r
\r
}\r
\r
- public void addFromURL_actionPerformed(ActionEvent e)\r
+ public void hideSelColumns_actionPerformed(ActionEvent e)\r
+ {\r
+\r
+ }\r
+\r
+ public void hiddenMarkers_actionPerformed(ActionEvent e)\r
+ {\r
+\r
+ }\r
+\r
+ public void findPdbId_actionPerformed(ActionEvent e)\r
+ {\r
+\r
+ }\r
+\r
+ public void enterPdbId_actionPerformed(ActionEvent e)\r
+ {\r
+\r
+ }\r
+\r
+ public void pdbFile_actionPerformed(ActionEvent e)\r
+ {\r
+\r
+ }\r
+\r
+ public void invertColSel_actionPerformed(ActionEvent e)\r
+ {\r
+\r
+ }\r
+\r
+ public void tabSelectionChanged(int sel)\r
+ {\r
+\r
+ }\r
+\r
+ public void tabbedPane_mousePressed(MouseEvent e)\r
+ {\r
+\r
+ }\r
+\r
+ public void tabbedPane_focusGained(FocusEvent e)\r
+ {\r
+ requestFocus();\r
+ }\r
+\r
+ public void save_actionPerformed(ActionEvent e)\r
+ {\r
+\r
+ }\r
+\r
+ public void reload_actionPerformed(ActionEvent e)\r
{\r
\r
}\r