2 * Jalview - A Sequence Alignment Editor and Viewer
\r
3 * Copyright (C) 2005 AM Waterhouse, J Procter, G Barton, M Clamp, S Searle
\r
5 * This program is free software; you can redistribute it and/or
\r
6 * modify it under the terms of the GNU General Public License
\r
7 * as published by the Free Software Foundation; either version 2
\r
8 * of the License, or (at your option) any later version.
\r
10 * This program is distributed in the hope that it will be useful,
\r
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
\r
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
\r
13 * GNU General Public License for more details.
\r
15 * You should have received a copy of the GNU General Public License
\r
16 * along with this program; if not, write to the Free Software
\r
17 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
\r
19 package jalview.jbgui;
\r
22 import java.awt.event.*;
\r
23 import javax.swing.*;
\r
24 import javax.swing.event.*;
\r
26 import jalview.schemes.*;
\r
28 public class GAlignFrame
\r
29 extends JInternalFrame
\r
31 protected JMenuBar alignFrameMenuBar = new JMenuBar();
\r
32 protected JMenu fileMenu = new JMenu();
\r
33 protected JMenuItem closeMenuItem = new JMenuItem();
\r
34 protected JMenu editMenu = new JMenu();
\r
35 protected JMenu viewMenu = new JMenu();
\r
36 protected JMenu colourMenu = new JMenu();
\r
37 protected JMenu calculateMenu = new JMenu();
\r
38 protected JMenu webService = new JMenu();
\r
39 protected JMenuItem webServiceNoServices;
\r
40 protected JMenuItem selectAllSequenceMenuItem = new JMenuItem();
\r
41 protected JMenuItem deselectAllSequenceMenuItem = new JMenuItem();
\r
42 protected JMenuItem invertSequenceMenuItem = new JMenuItem();
\r
43 protected JMenuItem remove2LeftMenuItem = new JMenuItem();
\r
44 protected JMenuItem remove2RightMenuItem = new JMenuItem();
\r
45 protected JMenuItem removeGappedColumnMenuItem = new JMenuItem();
\r
46 protected JMenuItem removeAllGapsMenuItem = new JMenuItem();
\r
47 public JCheckBoxMenuItem viewBoxesMenuItem = new JCheckBoxMenuItem();
\r
48 public JCheckBoxMenuItem viewTextMenuItem = new JCheckBoxMenuItem();
\r
49 protected JMenuItem sortPairwiseMenuItem = new JMenuItem();
\r
50 protected JMenuItem sortIDMenuItem = new JMenuItem();
\r
51 protected JMenuItem sortGroupMenuItem = new JMenuItem();
\r
52 protected JMenuItem removeRedundancyMenuItem = new JMenuItem();
\r
53 protected JMenuItem pairwiseAlignmentMenuItem = new JMenuItem();
\r
54 protected JMenuItem PCAMenuItem = new JMenuItem();
\r
55 protected JMenuItem averageDistanceTreeMenuItem = new JMenuItem();
\r
56 protected JMenuItem neighbourTreeMenuItem = new JMenuItem();
\r
57 protected JMenuItem clustalAlignMenuItem = new JMenuItem();
\r
58 BorderLayout borderLayout1 = new BorderLayout();
\r
59 public JLabel statusBar = new JLabel();
\r
60 protected JMenuItem saveAlignmentMenu = new JMenuItem();
\r
61 protected JMenu outputTextboxMenu = new JMenu();
\r
62 protected JRadioButtonMenuItem clustalColour = new JRadioButtonMenuItem();
\r
63 protected JRadioButtonMenuItem zappoColour = new JRadioButtonMenuItem();
\r
64 protected JRadioButtonMenuItem taylorColour = new JRadioButtonMenuItem();
\r
65 protected JRadioButtonMenuItem hydrophobicityColour = new
\r
66 JRadioButtonMenuItem();
\r
67 protected JRadioButtonMenuItem helixColour = new JRadioButtonMenuItem();
\r
68 protected JRadioButtonMenuItem strandColour = new JRadioButtonMenuItem();
\r
69 protected JRadioButtonMenuItem turnColour = new JRadioButtonMenuItem();
\r
70 protected JRadioButtonMenuItem buriedColour = new JRadioButtonMenuItem();
\r
71 protected JRadioButtonMenuItem userDefinedColour = new JRadioButtonMenuItem();
\r
72 protected JRadioButtonMenuItem PIDColour = new JRadioButtonMenuItem();
\r
73 protected JRadioButtonMenuItem BLOSUM62Colour = new JRadioButtonMenuItem();
\r
74 JMenuItem njTreeBlosumMenuItem = new JMenuItem();
\r
75 JMenuItem avDistanceTreeBlosumMenuItem = new JMenuItem();
\r
76 public JCheckBoxMenuItem annotationPanelMenuItem = new JCheckBoxMenuItem();
\r
77 public JCheckBoxMenuItem colourTextMenuItem = new JCheckBoxMenuItem();
\r
78 JMenuItem htmlMenuItem = new JMenuItem();
\r
79 JMenuItem overviewMenuItem = new JMenuItem();
\r
80 protected JMenuItem undoMenuItem = new JMenuItem();
\r
81 protected JMenuItem redoMenuItem = new JMenuItem();
\r
82 public JCheckBoxMenuItem conservationMenuItem = new JCheckBoxMenuItem();
\r
83 JRadioButtonMenuItem noColourmenuItem = new JRadioButtonMenuItem();
\r
84 public JCheckBoxMenuItem wrapMenuItem = new JCheckBoxMenuItem();
\r
85 JMenuItem printMenuItem = new JMenuItem();
\r
86 public JCheckBoxMenuItem renderGapsMenuItem = new JCheckBoxMenuItem();
\r
87 JMenuItem findMenuItem = new JMenuItem();
\r
88 JMenu searchMenu = new JMenu();
\r
89 public JCheckBoxMenuItem abovePIDThreshold = new JCheckBoxMenuItem();
\r
90 public JCheckBoxMenuItem sequenceFeatures = new JCheckBoxMenuItem();
\r
91 protected JRadioButtonMenuItem nucleotideColour = new JRadioButtonMenuItem();
\r
92 JMenuItem deleteGroups = new JMenuItem();
\r
93 JMenuItem delete = new JMenuItem();
\r
94 JMenuItem copy = new JMenuItem();
\r
95 JMenuItem cut = new JMenuItem();
\r
96 JMenu jMenu1 = new JMenu();
\r
97 JMenuItem pasteNew = new JMenuItem();
\r
98 JMenuItem pasteThis = new JMenuItem();
\r
99 public JCheckBoxMenuItem applyToAllGroups = new JCheckBoxMenuItem();
\r
100 JMenuItem createPNG = new JMenuItem();
\r
101 protected JMenuItem font = new JMenuItem();
\r
102 public JCheckBoxMenuItem fullSeqId = new JCheckBoxMenuItem();
\r
103 JMenuItem epsFile = new JMenuItem();
\r
104 JMenuItem LoadtreeMenuItem = new JMenuItem();
\r
105 public JCheckBoxMenuItem scaleAbove = new JCheckBoxMenuItem();
\r
106 public JCheckBoxMenuItem scaleLeft = new JCheckBoxMenuItem();
\r
107 public JCheckBoxMenuItem scaleRight = new JCheckBoxMenuItem();
\r
108 protected JMenuItem modifyPID = new JMenuItem();
\r
109 protected JMenuItem modifyConservation = new JMenuItem();
\r
110 protected JMenu sortByTreeMenu = new JMenu();
\r
111 protected JMenu sort = new JMenu();
\r
112 JMenu calculate = new JMenu();
\r
113 JMenu jMenu2 = new JMenu();
\r
114 JMenuItem padGapsMenuitem = new JMenuItem();
\r
115 protected ButtonGroup colours = new ButtonGroup();
\r
117 public GAlignFrame()
\r
124 setJMenuBar(alignFrameMenuBar);
\r
126 // dynamically fill save as menu with available formats
\r
127 for (int i = 0; i < jalview.io.FormatAdapter.formats.size(); i++)
\r
129 JMenuItem item = new JMenuItem( (String) jalview.io.FormatAdapter.formats.
\r
132 item.addActionListener(new java.awt.event.ActionListener()
\r
134 public void actionPerformed(ActionEvent e)
\r
136 outputText_actionPerformed(e);
\r
140 outputTextboxMenu.add(item);
\r
143 catch (Exception e)
\r
148 if(jalview.gui.UserDefinedColours.getUserColourSchemes()!=null)
\r
150 java.util.Enumeration userColours = jalview.gui.UserDefinedColours.
\r
151 getUserColourSchemes().keys();
\r
153 while (userColours.hasMoreElements())
\r
155 final JRadioButtonMenuItem radioItem = new JRadioButtonMenuItem(userColours.
\r
156 nextElement().toString());
\r
157 radioItem.setName("USER_DEFINED");
\r
158 radioItem.addMouseListener(new MouseAdapter()
\r
160 public void mousePressed(MouseEvent evt)
\r
162 if(evt.isControlDown() || SwingUtilities.isRightMouseButton(evt))
\r
164 radioItem.removeActionListener(radioItem.getActionListeners()[0]);
\r
166 int option = JOptionPane.showInternalConfirmDialog(jalview.gui.Desktop.desktop,
\r
167 "Remove from default list?",
\r
168 "Remove user defined colour",
\r
169 JOptionPane.YES_NO_OPTION);
\r
170 if(option == JOptionPane.YES_OPTION)
\r
172 jalview.gui.UserDefinedColours.removeColourFromDefaults(radioItem.getText());
\r
173 colourMenu.remove(radioItem);
\r
176 radioItem.addActionListener(new ActionListener()
\r
178 public void actionPerformed(ActionEvent evt)
\r
180 userDefinedColour_actionPerformed(evt);
\r
186 radioItem.addActionListener(new ActionListener()
\r
188 public void actionPerformed(ActionEvent evt)
\r
190 userDefinedColour_actionPerformed(evt);
\r
193 colourMenu.insert(radioItem, 15);
\r
194 colours.add(radioItem);
\r
197 colours.add(noColourmenuItem);
\r
198 colours.add(clustalColour);
\r
199 colours.add(zappoColour);
\r
200 colours.add(taylorColour);
\r
201 colours.add(hydrophobicityColour);
\r
202 colours.add(helixColour);
\r
203 colours.add(strandColour);
\r
204 colours.add(turnColour);
\r
205 colours.add(buriedColour);
\r
206 colours.add(userDefinedColour);
\r
207 colours.add(PIDColour);
\r
208 colours.add(BLOSUM62Colour);
\r
209 colours.add(nucleotideColour);
\r
211 setColourSelected(jalview.bin.Cache.getDefault("DEFAULT_COLOUR", "None"));
\r
216 public void setColourSelected(String defaultColour)
\r
219 if (defaultColour != null)
\r
221 int index = ColourSchemeProperty.getColourIndexFromName(defaultColour);
\r
225 case ColourSchemeProperty.NONE:
\r
226 noColourmenuItem.setSelected(true);
\r
228 case ColourSchemeProperty.CLUSTAL:
\r
229 clustalColour.setSelected(true);
\r
233 case ColourSchemeProperty.BLOSUM:
\r
234 BLOSUM62Colour.setSelected(true);
\r
238 case ColourSchemeProperty.PID:
\r
239 PIDColour.setSelected(true);
\r
243 case ColourSchemeProperty.ZAPPO:
\r
244 zappoColour.setSelected(true);
\r
248 case ColourSchemeProperty.TAYLOR:
\r
249 taylorColour.setSelected(true);
\r
252 case ColourSchemeProperty.HYDROPHOBIC:
\r
253 hydrophobicityColour.setSelected(true);
\r
257 case ColourSchemeProperty.HELIX:
\r
258 helixColour.setSelected(true);
\r
262 case ColourSchemeProperty.STRAND:
\r
263 strandColour.setSelected(true);
\r
267 case ColourSchemeProperty.TURN:
\r
268 turnColour.setSelected(true);
\r
272 case ColourSchemeProperty.BURIED:
\r
273 buriedColour.setSelected(true);
\r
277 case ColourSchemeProperty.NUCLEOTIDE:
\r
278 nucleotideColour.setSelected(true);
\r
282 case ColourSchemeProperty.USER_DEFINED:
\r
283 userDefinedColour.setSelected(true);
\r
291 private void jbInit()
\r
294 fileMenu.setMnemonic('F');
\r
295 fileMenu.setText("File");
\r
296 saveAlignmentMenu.setMnemonic('L');
\r
297 saveAlignmentMenu.setText("Save As");
\r
298 saveAlignmentMenu.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.
\r
299 awt.event.KeyEvent.VK_S, java.awt.event.KeyEvent.CTRL_MASK, false));
\r
300 saveAlignmentMenu.addActionListener(new ActionListener()
\r
302 public void actionPerformed(ActionEvent e)
\r
304 saveAlignmentMenu_actionPerformed(e);
\r
307 closeMenuItem.setMnemonic('C');
\r
308 closeMenuItem.setText("Close");
\r
309 closeMenuItem.addActionListener(new java.awt.event.ActionListener()
\r
311 public void actionPerformed(ActionEvent e)
\r
313 closeMenuItem_actionPerformed(e);
\r
316 editMenu.setText("Edit");
\r
317 viewMenu.setText("View");
\r
318 colourMenu.setText("Colour");
\r
319 calculateMenu.setText("Calculate");
\r
320 webService.setText("Web Service");
\r
321 selectAllSequenceMenuItem.setText("Select all");
\r
322 selectAllSequenceMenuItem.setAccelerator(javax.swing.KeyStroke.getKeyStroke(
\r
323 java.awt.event.KeyEvent.VK_A,
\r
324 Toolkit.getDefaultToolkit().getMenuShortcutKeyMask(), false));
\r
325 selectAllSequenceMenuItem.addActionListener(new java.awt.event.
\r
328 public void actionPerformed(ActionEvent e)
\r
330 selectAllSequenceMenuItem_actionPerformed(e);
\r
333 deselectAllSequenceMenuItem.setText("Deselect All");
\r
334 deselectAllSequenceMenuItem.setAccelerator(javax.swing.KeyStroke.
\r
336 java.awt.event.KeyEvent.VK_ESCAPE, 0, false));
\r
337 deselectAllSequenceMenuItem.addActionListener(new java.awt.event.
\r
340 public void actionPerformed(ActionEvent e)
\r
342 deselectAllSequenceMenuItem_actionPerformed(e);
\r
345 invertSequenceMenuItem.setText("Invert Selection");
\r
346 invertSequenceMenuItem.addActionListener(new java.awt.event.ActionListener()
\r
348 public void actionPerformed(ActionEvent e)
\r
350 invertSequenceMenuItem_actionPerformed(e);
\r
353 remove2LeftMenuItem.setText("Remove Left");
\r
354 remove2LeftMenuItem.addActionListener(new java.awt.event.ActionListener()
\r
356 public void actionPerformed(ActionEvent e)
\r
358 remove2LeftMenuItem_actionPerformed(e);
\r
361 remove2RightMenuItem.setText("Remove Right");
\r
362 remove2RightMenuItem.addActionListener(new java.awt.event.ActionListener()
\r
364 public void actionPerformed(ActionEvent e)
\r
366 remove2RightMenuItem_actionPerformed(e);
\r
369 removeGappedColumnMenuItem.setText("Remove Empty Columns");
\r
370 removeGappedColumnMenuItem.addActionListener(new java.awt.event.
\r
373 public void actionPerformed(ActionEvent e)
\r
375 removeGappedColumnMenuItem_actionPerformed(e);
\r
378 removeAllGapsMenuItem.setText("Remove All Gaps");
\r
379 removeAllGapsMenuItem.addActionListener(new java.awt.event.ActionListener()
\r
381 public void actionPerformed(ActionEvent e)
\r
383 removeAllGapsMenuItem_actionPerformed(e);
\r
386 viewBoxesMenuItem.setText("Boxes");
\r
387 viewBoxesMenuItem.setState(true);
\r
388 viewBoxesMenuItem.addActionListener(new java.awt.event.ActionListener()
\r
390 public void actionPerformed(ActionEvent e)
\r
392 viewBoxesMenuItem_actionPerformed(e);
\r
395 viewTextMenuItem.setText("Text");
\r
396 viewTextMenuItem.setState(true);
\r
397 viewTextMenuItem.addActionListener(new java.awt.event.ActionListener()
\r
399 public void actionPerformed(ActionEvent e)
\r
401 viewTextMenuItem_actionPerformed(e);
\r
404 sortPairwiseMenuItem.setText("by Pairwise Identity");
\r
405 sortPairwiseMenuItem.addActionListener(new java.awt.event.ActionListener()
\r
407 public void actionPerformed(ActionEvent e)
\r
409 sortPairwiseMenuItem_actionPerformed(e);
\r
412 sortIDMenuItem.setText("by ID");
\r
413 sortIDMenuItem.addActionListener(new java.awt.event.ActionListener()
\r
415 public void actionPerformed(ActionEvent e)
\r
417 sortIDMenuItem_actionPerformed(e);
\r
420 sortGroupMenuItem.setText("by Group");
\r
421 sortGroupMenuItem.addActionListener(new java.awt.event.ActionListener()
\r
423 public void actionPerformed(ActionEvent e)
\r
425 sortGroupMenuItem_actionPerformed(e);
\r
428 removeRedundancyMenuItem.setText("Remove Redundancy...");
\r
429 removeRedundancyMenuItem.addActionListener(new java.awt.event.
\r
432 public void actionPerformed(ActionEvent e)
\r
434 removeRedundancyMenuItem_actionPerformed(e);
\r
437 pairwiseAlignmentMenuItem.setText("Pairwise Alignments...");
\r
438 pairwiseAlignmentMenuItem.addActionListener(new java.awt.event.
\r
441 public void actionPerformed(ActionEvent e)
\r
443 pairwiseAlignmentMenuItem_actionPerformed(e);
\r
446 PCAMenuItem.setText("Principal Component Analysis");
\r
447 PCAMenuItem.addActionListener(new java.awt.event.ActionListener()
\r
449 public void actionPerformed(ActionEvent e)
\r
451 PCAMenuItem_actionPerformed(e);
\r
454 averageDistanceTreeMenuItem.setText(
\r
455 "Average Distance Using % Identity");
\r
456 averageDistanceTreeMenuItem.addActionListener(new java.awt.event.
\r
459 public void actionPerformed(ActionEvent e)
\r
461 averageDistanceTreeMenuItem_actionPerformed(e);
\r
464 neighbourTreeMenuItem.setText("Neighbour Joining Using % Identity");
\r
465 neighbourTreeMenuItem.addActionListener(new java.awt.event.ActionListener()
\r
467 public void actionPerformed(ActionEvent e)
\r
469 neighbourTreeMenuItem_actionPerformed(e);
\r
472 this.getContentPane().setLayout(borderLayout1);
\r
473 alignFrameMenuBar.setFont(new java.awt.Font("Verdana", 0, 11));
\r
474 alignFrameMenuBar.addAncestorListener(new AncestorListener()
\r
476 public void ancestorAdded(AncestorEvent event)
\r
478 alignFrameMenuBar_ancestorAdded(event);
\r
481 public void ancestorRemoved(AncestorEvent event)
\r
485 public void ancestorMoved(AncestorEvent event)
\r
489 statusBar.setBackground(Color.white);
\r
490 statusBar.setFont(new java.awt.Font("Verdana", 0, 11));
\r
491 statusBar.setBorder(BorderFactory.createLineBorder(Color.black));
\r
492 statusBar.setText("Status bar");
\r
493 outputTextboxMenu.setMnemonic('T');
\r
494 outputTextboxMenu.setText("Output to Textbox");
\r
495 clustalColour.setText("Clustalx");
\r
497 clustalColour.addActionListener(new java.awt.event.ActionListener()
\r
499 public void actionPerformed(ActionEvent e)
\r
501 clustalColour_actionPerformed(e);
\r
504 zappoColour.setText("Zappo");
\r
505 zappoColour.addActionListener(new java.awt.event.ActionListener()
\r
507 public void actionPerformed(ActionEvent e)
\r
509 zappoColour_actionPerformed(e);
\r
512 taylorColour.setText("Taylor");
\r
513 taylorColour.addActionListener(new java.awt.event.ActionListener()
\r
515 public void actionPerformed(ActionEvent e)
\r
517 taylorColour_actionPerformed(e);
\r
520 hydrophobicityColour.setText("Hydrophobicity");
\r
521 hydrophobicityColour.addActionListener(new java.awt.event.ActionListener()
\r
523 public void actionPerformed(ActionEvent e)
\r
525 hydrophobicityColour_actionPerformed(e);
\r
528 helixColour.setText("Helix Propensity");
\r
529 helixColour.addActionListener(new java.awt.event.ActionListener()
\r
531 public void actionPerformed(ActionEvent e)
\r
533 helixColour_actionPerformed(e);
\r
536 strandColour.setText("Strand Propensity");
\r
537 strandColour.addActionListener(new java.awt.event.ActionListener()
\r
539 public void actionPerformed(ActionEvent e)
\r
541 strandColour_actionPerformed(e);
\r
544 turnColour.setText("Turn Propensity");
\r
545 turnColour.addActionListener(new java.awt.event.ActionListener()
\r
547 public void actionPerformed(ActionEvent e)
\r
549 turnColour_actionPerformed(e);
\r
552 buriedColour.setText("Buried Index");
\r
553 buriedColour.addActionListener(new java.awt.event.ActionListener()
\r
555 public void actionPerformed(ActionEvent e)
\r
557 buriedColour_actionPerformed(e);
\r
560 userDefinedColour.setText("User Defined...");
\r
561 userDefinedColour.addActionListener(new java.awt.event.ActionListener()
\r
563 public void actionPerformed(ActionEvent e)
\r
565 userDefinedColour_actionPerformed(e);
\r
568 PIDColour.setText("Percentage Identity");
\r
569 PIDColour.addActionListener(new java.awt.event.ActionListener()
\r
571 public void actionPerformed(ActionEvent e)
\r
573 PIDColour_actionPerformed(e);
\r
576 BLOSUM62Colour.setText("BLOSUM62 Score");
\r
577 BLOSUM62Colour.addActionListener(new java.awt.event.ActionListener()
\r
579 public void actionPerformed(ActionEvent e)
\r
581 BLOSUM62Colour_actionPerformed(e);
\r
584 avDistanceTreeBlosumMenuItem.setText(
\r
585 "Average Distance Using BLOSUM62");
\r
586 avDistanceTreeBlosumMenuItem.addActionListener(new java.awt.event.
\r
589 public void actionPerformed(ActionEvent e)
\r
591 avTreeBlosumMenuItem_actionPerformed(e);
\r
594 njTreeBlosumMenuItem.setText("Neighbour Joining using BLOSUM62");
\r
595 njTreeBlosumMenuItem.addActionListener(new java.awt.event.ActionListener()
\r
597 public void actionPerformed(ActionEvent e)
\r
599 njTreeBlosumMenuItem_actionPerformed(e);
\r
602 annotationPanelMenuItem.setActionCommand("");
\r
603 annotationPanelMenuItem.setText("Show Annotations");
\r
604 annotationPanelMenuItem.setState( jalview.bin.Cache.getDefault("SHOW_ANNOTATIONS",true));
\r
605 annotationPanelMenuItem.addActionListener(new java.awt.event.ActionListener()
\r
607 public void actionPerformed(ActionEvent e)
\r
609 annotationPanelMenuItem_actionPerformed(e);
\r
612 colourTextMenuItem.setText("Colour Text");
\r
613 colourTextMenuItem.addActionListener(new java.awt.event.ActionListener()
\r
615 public void actionPerformed(ActionEvent e)
\r
617 colourTextMenuItem_actionPerformed(e);
\r
620 htmlMenuItem.setText("HTML");
\r
621 htmlMenuItem.addActionListener(new java.awt.event.ActionListener()
\r
623 public void actionPerformed(ActionEvent e)
\r
625 htmlMenuItem_actionPerformed(e);
\r
628 overviewMenuItem.setText("Overview Window");
\r
629 overviewMenuItem.addActionListener(new java.awt.event.ActionListener()
\r
631 public void actionPerformed(ActionEvent e)
\r
633 overviewMenuItem_actionPerformed(e);
\r
636 undoMenuItem.setEnabled(false);
\r
637 undoMenuItem.setMnemonic('Z');
\r
638 undoMenuItem.setText("Undo");
\r
639 undoMenuItem.setAccelerator(javax.swing.KeyStroke.getKeyStroke(
\r
640 java.awt.event.KeyEvent.VK_Z,
\r
641 Toolkit.getDefaultToolkit().getMenuShortcutKeyMask(), false));
\r
642 undoMenuItem.addActionListener(new java.awt.event.ActionListener()
\r
644 public void actionPerformed(ActionEvent e)
\r
646 undoMenuItem_actionPerformed(e);
\r
649 redoMenuItem.setEnabled(false);
\r
650 redoMenuItem.setMnemonic('0');
\r
651 redoMenuItem.setText("Redo");
\r
652 redoMenuItem.addActionListener(new java.awt.event.ActionListener()
\r
654 public void actionPerformed(ActionEvent e)
\r
656 redoMenuItem_actionPerformed(e);
\r
659 conservationMenuItem.setText("By Conservation");
\r
660 conservationMenuItem.addActionListener(new java.awt.event.ActionListener()
\r
662 public void actionPerformed(ActionEvent e)
\r
664 conservationMenuItem_actionPerformed(e);
\r
667 noColourmenuItem.setText("None");
\r
668 noColourmenuItem.addActionListener(new java.awt.event.ActionListener()
\r
670 public void actionPerformed(ActionEvent e)
\r
672 noColourmenuItem_actionPerformed(e);
\r
675 wrapMenuItem.setText("Wrap");
\r
676 wrapMenuItem.addActionListener(new java.awt.event.ActionListener()
\r
678 public void actionPerformed(ActionEvent e)
\r
680 wrapMenuItem_actionPerformed(e);
\r
683 printMenuItem.setText("Print");
\r
684 printMenuItem.addActionListener(new java.awt.event.ActionListener()
\r
686 public void actionPerformed(ActionEvent e)
\r
688 printMenuItem_actionPerformed(e);
\r
691 renderGapsMenuItem.setText("Show Gaps");
\r
692 renderGapsMenuItem.setState(true);
\r
693 renderGapsMenuItem.addActionListener(new java.awt.event.ActionListener()
\r
695 public void actionPerformed(ActionEvent e)
\r
697 renderGapsMenuItem_actionPerformed(e);
\r
700 findMenuItem.setText("Find...");
\r
701 findMenuItem.setAccelerator(javax.swing.KeyStroke.getKeyStroke(
\r
702 java.awt.event.KeyEvent.VK_F,
\r
703 Toolkit.getDefaultToolkit().getMenuShortcutKeyMask(), false));
\r
704 findMenuItem.addActionListener(new java.awt.event.ActionListener()
\r
706 public void actionPerformed(ActionEvent e)
\r
708 findMenuItem_actionPerformed(e);
\r
711 searchMenu.setText("Search");
\r
713 abovePIDThreshold.setText("Above Identity Threshold");
\r
714 abovePIDThreshold.addActionListener(new java.awt.event.ActionListener()
\r
716 public void actionPerformed(ActionEvent e)
\r
718 abovePIDThreshold_actionPerformed(e);
\r
721 sequenceFeatures.setText("Sequence Features");
\r
722 sequenceFeatures.addActionListener(new ActionListener()
\r
724 public void actionPerformed(ActionEvent actionEvent)
\r
726 sequenceFeatures_actionPerformed(actionEvent);
\r
729 nucleotideColour.setText("Nucleotide");
\r
730 nucleotideColour.addActionListener(new java.awt.event.ActionListener()
\r
732 public void actionPerformed(ActionEvent e)
\r
734 nucleotideColour_actionPerformed(e);
\r
737 deleteGroups.setText("Undefine groups");
\r
738 deleteGroups.addActionListener(new java.awt.event.ActionListener()
\r
740 public void actionPerformed(ActionEvent e)
\r
742 deleteGroups_actionPerformed(e);
\r
745 copy.setText("Copy");
\r
746 copy.setAccelerator(javax.swing.KeyStroke.getKeyStroke(
\r
747 java.awt.event.KeyEvent.VK_C,
\r
748 Toolkit.getDefaultToolkit().getMenuShortcutKeyMask(), false));
\r
749 copy.setMnemonic(KeyEvent.VK_C);
\r
751 copy.addActionListener(new java.awt.event.ActionListener()
\r
753 public void actionPerformed(ActionEvent e)
\r
755 copy_actionPerformed(e);
\r
758 cut.setText("Cut");
\r
759 cut.setAccelerator(javax.swing.KeyStroke.getKeyStroke(
\r
760 java.awt.event.KeyEvent.VK_X,
\r
761 Toolkit.getDefaultToolkit().getMenuShortcutKeyMask(), false));
\r
762 cut.setMnemonic(KeyEvent.VK_X);
\r
763 cut.addActionListener(new java.awt.event.ActionListener()
\r
765 public void actionPerformed(ActionEvent e)
\r
767 cut_actionPerformed(e);
\r
770 delete.setText("Delete");
\r
771 delete.addActionListener(new java.awt.event.ActionListener()
\r
773 public void actionPerformed(ActionEvent e)
\r
775 delete_actionPerformed(e);
\r
778 jMenu1.setMnemonic('V');
\r
779 jMenu1.setText("Paste");
\r
780 pasteNew.setText("To New Alignment");
\r
781 pasteNew.setAccelerator(javax.swing.KeyStroke.getKeyStroke(
\r
782 java.awt.event.KeyEvent.VK_V,
\r
783 Toolkit.getDefaultToolkit().getMenuShortcutKeyMask(), false));
\r
784 pasteNew.addActionListener(new java.awt.event.ActionListener()
\r
786 public void actionPerformed(ActionEvent e)
\r
788 pasteNew_actionPerformed(e);
\r
791 pasteThis.setText("Add To This Alignment");
\r
792 pasteThis.addActionListener(new java.awt.event.ActionListener()
\r
794 public void actionPerformed(ActionEvent e)
\r
796 pasteThis_actionPerformed(e);
\r
799 applyToAllGroups.setText("Apply Colour To All Groups");
\r
800 applyToAllGroups.setState(true);
\r
801 applyToAllGroups.addActionListener(new java.awt.event.ActionListener()
\r
803 public void actionPerformed(ActionEvent e)
\r
805 applyToAllGroups_actionPerformed(e);
\r
808 createPNG.addActionListener(new java.awt.event.ActionListener()
\r
810 public void actionPerformed(ActionEvent e)
\r
815 createPNG.setActionCommand("Save As PNG Image");
\r
816 createPNG.setText("PNG");
\r
817 font.setText("Font...");
\r
818 font.addActionListener(new java.awt.event.ActionListener()
\r
820 public void actionPerformed(ActionEvent e)
\r
822 font_actionPerformed(e);
\r
825 fullSeqId.setText("Show Full Sequence ID");
\r
826 fullSeqId.setState(true);
\r
827 fullSeqId.addActionListener(new java.awt.event.ActionListener()
\r
829 public void actionPerformed(ActionEvent e)
\r
831 fullSeqId_actionPerformed(e);
\r
834 epsFile.setText("EPS");
\r
835 epsFile.addActionListener(new java.awt.event.ActionListener()
\r
837 public void actionPerformed(ActionEvent e)
\r
842 LoadtreeMenuItem.setActionCommand("Load a tree for this sequence set");
\r
843 LoadtreeMenuItem.setText("Load Assocated Tree");
\r
844 LoadtreeMenuItem.addActionListener(new java.awt.event.ActionListener()
\r
846 public void actionPerformed(ActionEvent e)
\r
848 LoadtreeMenuItem_actionPerformed(e);
\r
851 scaleAbove.setVisible(false);
\r
852 scaleAbove.setText("Scale Above");
\r
853 scaleAbove.addActionListener(new java.awt.event.ActionListener()
\r
855 public void actionPerformed(ActionEvent e)
\r
857 scaleAbove_actionPerformed(e);
\r
860 scaleLeft.setVisible(false);
\r
861 scaleLeft.setSelected(true);
\r
862 scaleLeft.setText("Scale Left");
\r
863 scaleLeft.addActionListener(new java.awt.event.ActionListener()
\r
865 public void actionPerformed(ActionEvent e)
\r
867 scaleLeft_actionPerformed(e);
\r
870 scaleRight.setVisible(false);
\r
871 scaleRight.setSelected(true);
\r
872 scaleRight.setText("Scale Right");
\r
873 scaleRight.addActionListener(new java.awt.event.ActionListener()
\r
875 public void actionPerformed(ActionEvent e)
\r
877 scaleRight_actionPerformed(e);
\r
880 modifyPID.setText("Modify Identity Threshold...");
\r
881 modifyPID.addActionListener(new java.awt.event.ActionListener()
\r
883 public void actionPerformed(ActionEvent e)
\r
885 modifyPID_actionPerformed(e);
\r
888 modifyConservation.setText("Modify Conservation Threshold...");
\r
889 modifyConservation.addActionListener(new java.awt.event.ActionListener()
\r
891 public void actionPerformed(ActionEvent e)
\r
893 modifyConservation_actionPerformed(e);
\r
896 sortByTreeMenu.setText("By Tree Order");
\r
897 sort.setText("Sort");
\r
898 calculate.setText("Calculate Tree");
\r
900 jMenu2.setText("Export");
\r
901 padGapsMenuitem.setText("Pad Gaps");
\r
902 padGapsMenuitem.addActionListener(new ActionListener()
\r
904 public void actionPerformed(ActionEvent e)
\r
906 padGapsMenuitem_actionPerformed(e);
\r
909 alignFrameMenuBar.add(fileMenu);
\r
910 alignFrameMenuBar.add(editMenu);
\r
911 alignFrameMenuBar.add(searchMenu);
\r
912 alignFrameMenuBar.add(viewMenu);
\r
913 alignFrameMenuBar.add(colourMenu);
\r
914 alignFrameMenuBar.add(calculateMenu);
\r
915 alignFrameMenuBar.add(webService);
\r
916 fileMenu.add(saveAlignmentMenu);
\r
917 fileMenu.add(jMenu2);
\r
918 fileMenu.add(outputTextboxMenu);
\r
919 fileMenu.add(printMenuItem);
\r
920 fileMenu.addSeparator();
\r
921 fileMenu.add(LoadtreeMenuItem);
\r
922 fileMenu.addSeparator();
\r
923 fileMenu.add(closeMenuItem);
\r
924 editMenu.add(undoMenuItem);
\r
925 editMenu.add(redoMenuItem);
\r
927 editMenu.add(copy);
\r
928 editMenu.add(jMenu1);
\r
929 editMenu.add(delete);
\r
930 editMenu.addSeparator();
\r
931 editMenu.add(selectAllSequenceMenuItem);
\r
932 editMenu.add(deselectAllSequenceMenuItem);
\r
933 editMenu.add(invertSequenceMenuItem);
\r
934 editMenu.add(deleteGroups);
\r
935 editMenu.addSeparator();
\r
936 editMenu.add(remove2LeftMenuItem);
\r
937 editMenu.add(remove2RightMenuItem);
\r
938 editMenu.add(removeGappedColumnMenuItem);
\r
939 editMenu.add(removeAllGapsMenuItem);
\r
940 editMenu.add(removeRedundancyMenuItem);
\r
941 editMenu.addSeparator();
\r
942 editMenu.add(padGapsMenuitem);
\r
943 searchMenu.add(findMenuItem);
\r
944 viewMenu.add(font);
\r
945 viewMenu.addSeparator();
\r
946 viewMenu.add(wrapMenuItem);
\r
947 viewMenu.add(fullSeqId);
\r
948 viewMenu.add(scaleAbove);
\r
949 viewMenu.add(scaleLeft);
\r
950 viewMenu.add(scaleRight);
\r
951 viewMenu.add(viewBoxesMenuItem);
\r
952 viewMenu.add(viewTextMenuItem);
\r
953 viewMenu.add(colourTextMenuItem);
\r
954 viewMenu.add(renderGapsMenuItem);
\r
955 viewMenu.add(annotationPanelMenuItem);
\r
956 viewMenu.add(sequenceFeatures);
\r
957 viewMenu.addSeparator();
\r
958 viewMenu.add(overviewMenuItem);
\r
959 colourMenu.add(applyToAllGroups);
\r
960 colourMenu.addSeparator();
\r
961 colourMenu.add(noColourmenuItem);
\r
962 colourMenu.add(clustalColour);
\r
963 colourMenu.add(BLOSUM62Colour);
\r
964 colourMenu.add(PIDColour);
\r
965 colourMenu.add(zappoColour);
\r
966 colourMenu.add(taylorColour);
\r
967 colourMenu.add(hydrophobicityColour);
\r
968 colourMenu.add(helixColour);
\r
969 colourMenu.add(strandColour);
\r
970 colourMenu.add(turnColour);
\r
971 colourMenu.add(buriedColour);
\r
972 colourMenu.add(nucleotideColour);
\r
973 colourMenu.add(userDefinedColour);
\r
974 colourMenu.addSeparator();
\r
975 colourMenu.add(conservationMenuItem);
\r
976 colourMenu.add(modifyConservation);
\r
977 colourMenu.add(abovePIDThreshold);
\r
978 colourMenu.add(modifyPID);
\r
979 calculateMenu.add(sort);
\r
980 calculateMenu.add(calculate);
\r
981 calculateMenu.addSeparator();
\r
982 calculateMenu.add(pairwiseAlignmentMenuItem);
\r
983 calculateMenu.add(PCAMenuItem);
\r
984 webServiceNoServices=new JMenuItem("<No Services>");
\r
985 webService.add(webServiceNoServices);
\r
986 this.getContentPane().add(statusBar, BorderLayout.SOUTH);
\r
987 jMenu1.add(pasteNew);
\r
988 jMenu1.add(pasteThis);
\r
989 sort.add(sortIDMenuItem);
\r
990 sort.add(sortGroupMenuItem);
\r
991 sort.add(sortPairwiseMenuItem);
\r
992 calculate.add(averageDistanceTreeMenuItem);
\r
993 calculate.add(neighbourTreeMenuItem);
\r
994 calculate.add(avDistanceTreeBlosumMenuItem);
\r
995 calculate.add(njTreeBlosumMenuItem);
\r
996 jMenu2.add(htmlMenuItem);
\r
997 jMenu2.add(epsFile);
\r
998 jMenu2.add(createPNG);
\r
1001 protected void outputText_actionPerformed(ActionEvent e)
\r
1005 protected void htmlMenuItem_actionPerformed(ActionEvent e)
\r
1009 protected void closeMenuItem_actionPerformed(ActionEvent e)
\r
1013 protected void redoMenuItem_actionPerformed(ActionEvent e)
\r
1017 protected void undoMenuItem_actionPerformed(ActionEvent e)
\r
1021 protected void selectAllSequenceMenuItem_actionPerformed(ActionEvent e)
\r
1025 protected void deselectAllSequenceMenuItem_actionPerformed(ActionEvent e)
\r
1029 protected void invertSequenceMenuItem_actionPerformed(ActionEvent e)
\r
1033 protected void remove2LeftMenuItem_actionPerformed(ActionEvent e)
\r
1037 protected void remove2RightMenuItem_actionPerformed(ActionEvent e)
\r
1041 protected void removeGappedColumnMenuItem_actionPerformed(ActionEvent e)
\r
1045 protected void removeAllGapsMenuItem_actionPerformed(ActionEvent e)
\r
1049 protected void wrapMenuItem_actionPerformed(ActionEvent e)
\r
1053 protected void viewBoxesMenuItem_actionPerformed(ActionEvent e)
\r
1057 protected void viewTextMenuItem_actionPerformed(ActionEvent e)
\r
1061 protected void colourTextMenuItem_actionPerformed(ActionEvent e)
\r
1065 protected void annotationPanelMenuItem_actionPerformed(ActionEvent e)
\r
1069 protected void overviewMenuItem_actionPerformed(ActionEvent e)
\r
1073 protected void sortPairwiseMenuItem_actionPerformed(ActionEvent e)
\r
1077 protected void sortIDMenuItem_actionPerformed(ActionEvent e)
\r
1081 protected void sortGroupMenuItem_actionPerformed(ActionEvent e)
\r
1085 protected void removeRedundancyMenuItem_actionPerformed(ActionEvent e)
\r
1089 protected void pairwiseAlignmentMenuItem_actionPerformed(ActionEvent e)
\r
1093 protected void PCAMenuItem_actionPerformed(ActionEvent e)
\r
1097 protected void averageDistanceTreeMenuItem_actionPerformed(ActionEvent e)
\r
1101 protected void neighbourTreeMenuItem_actionPerformed(ActionEvent e)
\r
1105 protected void njTreeBlosumMenuItem_actionPerformed(ActionEvent e)
\r
1109 protected void avTreeBlosumMenuItem_actionPerformed(ActionEvent e)
\r
1113 protected void clustalAlignMenuItem_actionPerformed(ActionEvent e)
\r
1117 protected void clustalColour_actionPerformed(ActionEvent e)
\r
1121 protected void zappoColour_actionPerformed(ActionEvent e)
\r
1125 protected void taylorColour_actionPerformed(ActionEvent e)
\r
1129 protected void hydrophobicityColour_actionPerformed(ActionEvent e)
\r
1133 protected void helixColour_actionPerformed(ActionEvent e)
\r
1137 protected void strandColour_actionPerformed(ActionEvent e)
\r
1141 protected void turnColour_actionPerformed(ActionEvent e)
\r
1145 protected void buriedColour_actionPerformed(ActionEvent e)
\r
1149 protected void userDefinedColour_actionPerformed(ActionEvent e)
\r
1153 protected void PIDColour_actionPerformed(ActionEvent e)
\r
1157 protected void BLOSUM62Colour_actionPerformed(ActionEvent e)
\r
1161 protected void noColourmenuItem_actionPerformed(ActionEvent e)
\r
1165 protected void conservationMenuItem_actionPerformed(ActionEvent e)
\r
1169 protected void printMenuItem_actionPerformed(ActionEvent e)
\r
1173 protected void renderGapsMenuItem_actionPerformed(ActionEvent e)
\r
1177 protected void findMenuItem_actionPerformed(ActionEvent e)
\r
1181 protected void abovePIDThreshold_actionPerformed(ActionEvent e)
\r
1185 public void sequenceFeatures_actionPerformed(ActionEvent actionEvent)
\r
1189 protected void nucleotideColour_actionPerformed(ActionEvent e)
\r
1193 protected void deleteGroups_actionPerformed(ActionEvent e)
\r
1197 protected void copy_actionPerformed(ActionEvent e)
\r
1201 protected void cut_actionPerformed(ActionEvent e)
\r
1205 protected void delete_actionPerformed(ActionEvent e)
\r
1209 protected void pasteNew_actionPerformed(ActionEvent e)
\r
1213 protected void pasteThis_actionPerformed(ActionEvent e)
\r
1217 protected void applyToAllGroups_actionPerformed(ActionEvent e)
\r
1221 public void createPNG(java.io.File f)
\r
1225 protected void font_actionPerformed(ActionEvent e)
\r
1229 protected void fullSeqId_actionPerformed(ActionEvent e)
\r
1233 public void createEPS(java.io.File f)
\r
1237 protected void LoadtreeMenuItem_actionPerformed(ActionEvent e)
\r
1241 protected void jpred_actionPerformed(ActionEvent e)
\r
1245 protected void scaleAbove_actionPerformed(ActionEvent e)
\r
1249 protected void scaleLeft_actionPerformed(ActionEvent e)
\r
1253 protected void scaleRight_actionPerformed(ActionEvent e)
\r
1257 protected void modifyPID_actionPerformed(ActionEvent e)
\r
1261 protected void modifyConservation_actionPerformed(ActionEvent e)
\r
1265 protected void preferences_actionPerformed(ActionEvent e)
\r
1269 protected void msaAlignMenuItem_actionPerformed(ActionEvent e)
\r
1273 protected void alignFrameMenuBar_ancestorAdded(AncestorEvent event)
\r
1277 protected void saveAlignmentMenu_actionPerformed(ActionEvent e)
\r
1281 protected void padGapsMenuitem_actionPerformed(ActionEvent e)
\r
1285 protected void ClustalRealign_actionPerformed(ActionEvent e)
\r