fullid is optional
[jalview.git] / src / jalview / jbgui / GAlignFrame.java
1 /********************\r
2  * 2004 Jalview Reengineered\r
3  * Barton Group\r
4  * Dundee University\r
5  *\r
6  * AM Waterhouse\r
7  *******************/\r
8 \r
9 package jalview.jbgui;\r
10 \r
11 import javax.swing.*;\r
12 import java.awt.event.*;\r
13 import java.awt.*;\r
14 \r
15 public class GAlignFrame extends JInternalFrame\r
16 {\r
17   protected JMenuBar alignFrameMenuBar = new JMenuBar();\r
18   protected JMenu fileMenu = new JMenu();\r
19   protected JMenuItem closeMenuItem = new JMenuItem();\r
20   protected JMenu editMenu = new JMenu();\r
21   protected JMenu viewMenu = new JMenu();\r
22   protected JMenu colourMenu = new JMenu();\r
23   protected JMenu calculateMenu = new JMenu();\r
24   protected JMenu alignMenu = new JMenu();\r
25   protected JMenuItem groupsMenuItem = new JMenuItem();\r
26   protected JMenuItem selectAllSequenceMenuItem = new JMenuItem();\r
27   protected JMenuItem deselectAllSequenceMenuItem = new JMenuItem();\r
28   protected JMenuItem invertSequenceMenuItem = new JMenuItem();\r
29   protected JMenuItem deselectAllColumnsMenuItem = new JMenuItem();\r
30   protected JMenuItem remove2LeftMenuItem = new JMenuItem();\r
31   protected JMenuItem remove2RightMenuItem = new JMenuItem();\r
32   protected JMenuItem removeGappedColumnMenuItem = new JMenuItem();\r
33   protected JMenuItem removeAllGapsMenuItem = new JMenuItem();\r
34   protected JMenuItem setGapCharMenuItem = new JMenuItem();\r
35   protected JCheckBoxMenuItem viewBoxesMenuItem = new JCheckBoxMenuItem();\r
36   protected JCheckBoxMenuItem viewTextMenuItem = new JCheckBoxMenuItem();\r
37   protected JMenuItem sortPairwiseMenuItem = new JMenuItem();\r
38   protected JMenuItem sortIDMenuItem = new JMenuItem();\r
39   protected JMenuItem sortGroupMenuItem = new JMenuItem();\r
40   protected JMenuItem sortTreeOrderMenuItem = new JMenuItem();\r
41   protected JMenuItem removeRedundancyMenuItem = new JMenuItem();\r
42   protected JMenuItem pairwiseAlignmentMenuItem = new JMenuItem();\r
43   protected JMenuItem PCAMenuItem = new JMenuItem();\r
44   protected JMenuItem averageDistanceTreeMenuItem = new JMenuItem();\r
45   protected JMenuItem neighbourTreeMenuItem = new JMenuItem();\r
46   protected JMenuItem clustalAlignMenuItem = new JMenuItem();\r
47   BorderLayout borderLayout1 = new BorderLayout();\r
48   public JLabel statusBar = new JLabel();\r
49   protected JMenu saveAlignmentMenu = new JMenu();\r
50   protected JMenu outputTextboxMenu = new JMenu();\r
51   protected JRadioButtonMenuItem clustalColour = new JRadioButtonMenuItem();\r
52   protected JRadioButtonMenuItem zappoColour = new JRadioButtonMenuItem();\r
53   protected JRadioButtonMenuItem taylorColour = new JRadioButtonMenuItem();\r
54   protected JRadioButtonMenuItem hydrophobicityColour = new JRadioButtonMenuItem();\r
55   protected JRadioButtonMenuItem helixColour = new JRadioButtonMenuItem();\r
56   protected JRadioButtonMenuItem strandColour = new JRadioButtonMenuItem();\r
57   protected JRadioButtonMenuItem turnColour = new JRadioButtonMenuItem();\r
58   protected JRadioButtonMenuItem buriedColour = new JRadioButtonMenuItem();\r
59   protected JRadioButtonMenuItem userDefinedColour = new JRadioButtonMenuItem();\r
60   protected JRadioButtonMenuItem PIDColour = new JRadioButtonMenuItem();\r
61   protected JRadioButtonMenuItem BLOSUM62Colour = new JRadioButtonMenuItem();\r
62   JMenuItem njTreeBlosumMenuItem = new JMenuItem();\r
63   JMenuItem avDistanceTreeBlosumMenuItem = new JMenuItem();\r
64   protected JCheckBoxMenuItem consensusGraphMenuItem = new JCheckBoxMenuItem();\r
65   protected JCheckBoxMenuItem colourTextMenuItem = new JCheckBoxMenuItem();\r
66   JMenuItem htmlMenuItem = new JMenuItem();\r
67   JMenuItem overviewMenuItem = new JMenuItem();\r
68   protected JMenuItem undoMenuItem = new JMenuItem();\r
69   protected JMenuItem redoMenuItem = new JMenuItem();\r
70   protected JCheckBoxMenuItem conservationMenuItem = new JCheckBoxMenuItem();\r
71   JRadioButtonMenuItem noColourmenuItem = new JRadioButtonMenuItem();\r
72   protected JCheckBoxMenuItem wrapMenuItem = new JCheckBoxMenuItem();\r
73   JMenuItem printMenuItem = new JMenuItem();\r
74   protected JCheckBoxMenuItem renderGapsMenuItem = new JCheckBoxMenuItem();\r
75   JMenuItem findMenuItem = new JMenuItem();\r
76   JMenu searchMenu = new JMenu();\r
77   protected JCheckBoxMenuItem abovePIDThreshold = new JCheckBoxMenuItem();\r
78   protected JCheckBoxMenuItem sequenceFeatures = new JCheckBoxMenuItem();\r
79   protected JRadioButtonMenuItem nucleotideColour = new JRadioButtonMenuItem();\r
80   JMenuItem deleteGroups = new JMenuItem();\r
81   JMenuItem delete = new JMenuItem();\r
82   JMenuItem copy = new JMenuItem();\r
83   JMenuItem cut = new JMenuItem();\r
84   JMenu jMenu1 = new JMenu();\r
85   JMenuItem pasteNew = new JMenuItem();\r
86   JMenuItem pasteThis = new JMenuItem();\r
87   protected JCheckBoxMenuItem applyToAllGroups = new JCheckBoxMenuItem();\r
88   JMenuItem createJPG = new JMenuItem();\r
89   protected JMenuItem font = new JMenuItem();\r
90   protected JCheckBoxMenuItem fullSeqId = new JCheckBoxMenuItem();\r
91   public GAlignFrame()\r
92   {\r
93 \r
94 \r
95     try\r
96     {\r
97       jbInit();\r
98       setJMenuBar(alignFrameMenuBar);\r
99 \r
100       JMenuItem item;\r
101       // dynamically fill save as menu with available formats\r
102       for (int i = 0; i < jalview.io.FormatProperties.getFormats().size(); i++) {\r
103         item = new JMenuItem((String) jalview.io.FormatProperties.getFormats().elementAt(i));\r
104         saveAlignmentMenu.add( item );\r
105         item.addActionListener(new java.awt.event.ActionListener()\r
106         {\r
107           public void actionPerformed(ActionEvent e)\r
108           {\r
109             saveAs_actionPerformed(e);\r
110           }\r
111         });\r
112 \r
113         item = new JMenuItem((String) jalview.io.FormatProperties.getFormats().elementAt(i));\r
114         item.addActionListener(new java.awt.event.ActionListener()\r
115         {\r
116           public void actionPerformed(ActionEvent e)\r
117           {\r
118             outputText_actionPerformed(e);\r
119           }\r
120         });\r
121 \r
122         outputTextboxMenu.add( item );\r
123       }\r
124 \r
125     }\r
126     catch(Exception e)\r
127     {\r
128       e.printStackTrace();\r
129     }\r
130 \r
131     ButtonGroup colours = new ButtonGroup();\r
132     colours.add(noColourmenuItem);\r
133     colours.add(clustalColour);\r
134     colours.add(zappoColour);\r
135     colours.add(taylorColour);\r
136     colours.add(hydrophobicityColour);\r
137     colours.add(helixColour);\r
138     colours.add(strandColour);\r
139     colours.add(turnColour);\r
140     colours.add(buriedColour);\r
141     colours.add(userDefinedColour);\r
142     colours.add(PIDColour);\r
143     colours.add(BLOSUM62Colour);\r
144     colours.add(nucleotideColour);\r
145   }\r
146   private void jbInit() throws Exception\r
147   {\r
148     fileMenu.setMnemonic('F');\r
149     fileMenu.setText("File");\r
150     saveAlignmentMenu.setMnemonic('L');\r
151     saveAlignmentMenu.setText("Save alignment to local file");\r
152     closeMenuItem.setMnemonic('C');\r
153     closeMenuItem.setText("Close");\r
154     closeMenuItem.addActionListener(new java.awt.event.ActionListener()\r
155     {\r
156       public void actionPerformed(ActionEvent e)\r
157       {\r
158         closeMenuItem_actionPerformed(e);\r
159       }\r
160     });\r
161     editMenu.setText("Edit");\r
162     viewMenu.setText("View");\r
163     colourMenu.setText("Colour");\r
164     calculateMenu.setText("Calculate");\r
165     alignMenu.setText("Web Service");\r
166     groupsMenuItem.setVisible(false);\r
167     groupsMenuItem.setText("Groups");\r
168     groupsMenuItem.addActionListener(new java.awt.event.ActionListener()\r
169     {\r
170       public void actionPerformed(ActionEvent e)\r
171       {\r
172         groupsMenuItem_actionPerformed(e);\r
173       }\r
174     });\r
175     selectAllSequenceMenuItem.setText("Select all");\r
176     selectAllSequenceMenuItem.addActionListener(new java.awt.event.ActionListener()\r
177     {\r
178       public void actionPerformed(ActionEvent e)\r
179       {\r
180         selectAllSequenceMenuItem_actionPerformed(e);\r
181       }\r
182     });\r
183     deselectAllSequenceMenuItem.setText("Clear selection");\r
184     deselectAllSequenceMenuItem.addActionListener(new java.awt.event.ActionListener()\r
185     {\r
186       public void actionPerformed(ActionEvent e)\r
187       {\r
188         deselectAllSequenceMenuItem_actionPerformed(e);\r
189       }\r
190     });\r
191     invertSequenceMenuItem.setText("Invert sequence selection");\r
192     invertSequenceMenuItem.addActionListener(new java.awt.event.ActionListener()\r
193     {\r
194       public void actionPerformed(ActionEvent e)\r
195       {\r
196         invertSequenceMenuItem_actionPerformed(e);\r
197       }\r
198     });\r
199     deselectAllColumnsMenuItem.setText("Deselect all columns");\r
200     deselectAllColumnsMenuItem.addActionListener(new java.awt.event.ActionListener()\r
201     {\r
202       public void actionPerformed(ActionEvent e)\r
203       {\r
204         deselectAllColumnsMenuItem_actionPerformed(e);\r
205       }\r
206     });\r
207     remove2LeftMenuItem.setText("Remove sequence <- left of selected column");\r
208     remove2LeftMenuItem.addActionListener(new java.awt.event.ActionListener()\r
209     {\r
210       public void actionPerformed(ActionEvent e)\r
211       {\r
212         remove2LeftMenuItem_actionPerformed(e);\r
213       }\r
214     });\r
215     remove2RightMenuItem.setText("Remove sequence -> right of selected column");\r
216     remove2RightMenuItem.addActionListener(new java.awt.event.ActionListener()\r
217     {\r
218       public void actionPerformed(ActionEvent e)\r
219       {\r
220         remove2RightMenuItem_actionPerformed(e);\r
221       }\r
222     });\r
223     removeGappedColumnMenuItem.setText("Remove gapped columns");\r
224     removeGappedColumnMenuItem.addActionListener(new java.awt.event.ActionListener()\r
225     {\r
226       public void actionPerformed(ActionEvent e)\r
227       {\r
228         removeGappedColumnMenuItem_actionPerformed(e);\r
229       }\r
230     });\r
231     removeAllGapsMenuItem.setText("Remove all gaps");\r
232     removeAllGapsMenuItem.addActionListener(new java.awt.event.ActionListener()\r
233     {\r
234       public void actionPerformed(ActionEvent e)\r
235       {\r
236         removeAllGapsMenuItem_actionPerformed(e);\r
237       }\r
238     });\r
239     setGapCharMenuItem.setText("Set gap character to \".\"");\r
240     setGapCharMenuItem.addActionListener(new java.awt.event.ActionListener()\r
241     {\r
242       public void actionPerformed(ActionEvent e)\r
243       {\r
244         setGapCharMenuItem_actionPerformed(e);\r
245       }\r
246     });\r
247     viewBoxesMenuItem.setText("Boxes");\r
248     viewBoxesMenuItem.setState(true);\r
249     viewBoxesMenuItem.addActionListener(new java.awt.event.ActionListener()\r
250     {\r
251       public void actionPerformed(ActionEvent e)\r
252       {\r
253         viewBoxesMenuItem_actionPerformed(e);\r
254       }\r
255     });\r
256     viewTextMenuItem.setText("Text");\r
257     viewTextMenuItem.setState(true);\r
258     viewTextMenuItem.addActionListener(new java.awt.event.ActionListener()\r
259     {\r
260       public void actionPerformed(ActionEvent e)\r
261       {\r
262         viewTextMenuItem_actionPerformed(e);\r
263       }\r
264     });\r
265     sortPairwiseMenuItem.setText("Sort by pairwise identity");\r
266     sortPairwiseMenuItem.addActionListener(new java.awt.event.ActionListener()\r
267     {\r
268       public void actionPerformed(ActionEvent e)\r
269       {\r
270         sortPairwiseMenuItem_actionPerformed(e);\r
271       }\r
272     });\r
273     sortIDMenuItem.setText("Sort by ID");\r
274     sortIDMenuItem.addActionListener(new java.awt.event.ActionListener()\r
275     {\r
276       public void actionPerformed(ActionEvent e)\r
277       {\r
278         sortIDMenuItem_actionPerformed(e);\r
279       }\r
280     });\r
281     sortGroupMenuItem.setText("Sort by group");\r
282     sortGroupMenuItem.addActionListener(new java.awt.event.ActionListener()\r
283     {\r
284       public void actionPerformed(ActionEvent e)\r
285       {\r
286         sortGroupMenuItem_actionPerformed(e);\r
287       }\r
288     });\r
289     sortTreeOrderMenuItem.setText("Sort by tree order");\r
290     sortTreeOrderMenuItem.addActionListener(new java.awt.event.ActionListener()\r
291     {\r
292       public void actionPerformed(ActionEvent e)\r
293       {\r
294         sortTreeOrderMenuItem_actionPerformed(e);\r
295       }\r
296     });\r
297     removeRedundancyMenuItem.setText("Remove redundancy");\r
298     removeRedundancyMenuItem.addActionListener(new java.awt.event.ActionListener()\r
299     {\r
300       public void actionPerformed(ActionEvent e)\r
301       {\r
302         removeRedundancyMenuItem_actionPerformed(e);\r
303       }\r
304     });\r
305     pairwiseAlignmentMenuItem.setText("Pairwise alignments");\r
306     pairwiseAlignmentMenuItem.addActionListener(new java.awt.event.ActionListener()\r
307     {\r
308       public void actionPerformed(ActionEvent e)\r
309       {\r
310         pairwiseAlignmentMenuItem_actionPerformed(e);\r
311       }\r
312     });\r
313     PCAMenuItem.setText("Principal component analysis");\r
314     PCAMenuItem.addActionListener(new java.awt.event.ActionListener()\r
315     {\r
316       public void actionPerformed(ActionEvent e)\r
317       {\r
318         PCAMenuItem_actionPerformed(e);\r
319       }\r
320     });\r
321     averageDistanceTreeMenuItem.setText("Average distance tree using PID");\r
322     averageDistanceTreeMenuItem.addActionListener(new java.awt.event.ActionListener()\r
323     {\r
324       public void actionPerformed(ActionEvent e)\r
325       {\r
326         averageDistanceTreeMenuItem_actionPerformed(e);\r
327       }\r
328     });\r
329     neighbourTreeMenuItem.setText("Neighbour joining tree using PID");\r
330     neighbourTreeMenuItem.addActionListener(new java.awt.event.ActionListener()\r
331     {\r
332       public void actionPerformed(ActionEvent e)\r
333       {\r
334         neighbourTreeMenuItem_actionPerformed(e);\r
335       }\r
336     });\r
337     clustalAlignMenuItem.setText("Clustal alignment");\r
338     clustalAlignMenuItem.addActionListener(new java.awt.event.ActionListener()\r
339     {\r
340       public void actionPerformed(ActionEvent e)\r
341       {\r
342         clustalAlignMenuItem_actionPerformed(e);\r
343       }\r
344     });\r
345     this.getContentPane().setLayout(borderLayout1);\r
346     alignFrameMenuBar.setFont(new java.awt.Font("Verdana", 0, 11));\r
347     statusBar.setBackground(Color.white);\r
348     statusBar.setFont(new java.awt.Font("Verdana", 0, 11));\r
349     statusBar.setBorder(BorderFactory.createLineBorder(Color.black));\r
350     statusBar.setText("Status bar");\r
351     outputTextboxMenu.setMnemonic('T');\r
352     outputTextboxMenu.setText("Output alignment via textbox");\r
353     clustalColour.setSelected(false);\r
354     clustalColour.setText("Clustalx colours");\r
355     clustalColour.addActionListener(new java.awt.event.ActionListener()\r
356     {\r
357       public void actionPerformed(ActionEvent e)\r
358       {\r
359         clustalColour_actionPerformed(e);\r
360       }\r
361     });\r
362     zappoColour.setText("Zappo colour scheme");\r
363     zappoColour.addActionListener(new java.awt.event.ActionListener()\r
364     {\r
365       public void actionPerformed(ActionEvent e)\r
366       {\r
367         zappoColour_actionPerformed(e);\r
368       }\r
369     });\r
370     taylorColour.setText("Taylor colour scheme");\r
371     taylorColour.addActionListener(new java.awt.event.ActionListener()\r
372     {\r
373       public void actionPerformed(ActionEvent e)\r
374       {\r
375         taylorColour_actionPerformed(e);\r
376       }\r
377     });\r
378     hydrophobicityColour.setText("By hydrophobicity");\r
379     hydrophobicityColour.addActionListener(new java.awt.event.ActionListener()\r
380     {\r
381       public void actionPerformed(ActionEvent e)\r
382       {\r
383         hydrophobicityColour_actionPerformed(e);\r
384       }\r
385     });\r
386     helixColour.setText("Helix propensity");\r
387     helixColour.addActionListener(new java.awt.event.ActionListener()\r
388     {\r
389       public void actionPerformed(ActionEvent e)\r
390       {\r
391         helixColour_actionPerformed(e);\r
392       }\r
393     });\r
394     strandColour.setText("Strand propensity");\r
395     strandColour.addActionListener(new java.awt.event.ActionListener()\r
396     {\r
397       public void actionPerformed(ActionEvent e)\r
398       {\r
399         strandColour_actionPerformed(e);\r
400       }\r
401     });\r
402     turnColour.setText("Turn propensity");\r
403     turnColour.addActionListener(new java.awt.event.ActionListener()\r
404     {\r
405       public void actionPerformed(ActionEvent e)\r
406       {\r
407         turnColour_actionPerformed(e);\r
408       }\r
409     });\r
410     buriedColour.setText("Buried index");\r
411     buriedColour.addActionListener(new java.awt.event.ActionListener()\r
412     {\r
413       public void actionPerformed(ActionEvent e)\r
414       {\r
415         buriedColour_actionPerformed(e);\r
416       }\r
417     });\r
418     userDefinedColour.setText("User defined colours");\r
419     userDefinedColour.addActionListener(new java.awt.event.ActionListener()\r
420     {\r
421       public void actionPerformed(ActionEvent e)\r
422       {\r
423         userDefinedColour_actionPerformed(e);\r
424       }\r
425     });\r
426     PIDColour.setText("Percentage Identity");\r
427     PIDColour.addActionListener(new java.awt.event.ActionListener()\r
428     {\r
429       public void actionPerformed(ActionEvent e)\r
430       {\r
431         PIDColour_actionPerformed(e);\r
432       }\r
433     });\r
434     BLOSUM62Colour.setText("BLOSUM62 score");\r
435     BLOSUM62Colour.addActionListener(new java.awt.event.ActionListener()\r
436     {\r
437       public void actionPerformed(ActionEvent e)\r
438       {\r
439         BLOSUM62Colour_actionPerformed(e);\r
440       }\r
441     });\r
442     avDistanceTreeBlosumMenuItem.setText("Average distance tree using BLOSUM62");\r
443     avDistanceTreeBlosumMenuItem.addActionListener(new java.awt.event.ActionListener()\r
444     {\r
445       public void actionPerformed(ActionEvent e)\r
446       {\r
447         avTreeBlosumMenuItem_actionPerformed(e);\r
448       }\r
449     });\r
450     njTreeBlosumMenuItem.setText("Neighbour joining tree using BLOSUM62");\r
451     njTreeBlosumMenuItem.addActionListener(new java.awt.event.ActionListener()\r
452     {\r
453       public void actionPerformed(ActionEvent e)\r
454       {\r
455         njTreeBlosumMenuItem_actionPerformed(e);\r
456       }\r
457     });\r
458     consensusGraphMenuItem.setActionCommand("");\r
459     consensusGraphMenuItem.setText("Consensus graph");\r
460     consensusGraphMenuItem.setState(true);\r
461     consensusGraphMenuItem.addActionListener(new java.awt.event.ActionListener()\r
462     {\r
463       public void actionPerformed(ActionEvent e)\r
464       {\r
465         consensusGraphMenuItem_actionPerformed(e);\r
466       }\r
467     });\r
468     colourTextMenuItem.setText("Colour text");\r
469     colourTextMenuItem.addActionListener(new java.awt.event.ActionListener()\r
470     {\r
471       public void actionPerformed(ActionEvent e)\r
472       {\r
473         colourTextMenuItem_actionPerformed(e);\r
474       }\r
475     });\r
476     htmlMenuItem.setText("Output as HTML");\r
477     htmlMenuItem.addActionListener(new java.awt.event.ActionListener()\r
478     {\r
479       public void actionPerformed(ActionEvent e)\r
480       {\r
481         htmlMenuItem_actionPerformed(e);\r
482       }\r
483     });\r
484     overviewMenuItem.setText("Overview window");\r
485     overviewMenuItem.addActionListener(new java.awt.event.ActionListener()\r
486     {\r
487       public void actionPerformed(ActionEvent e)\r
488       {\r
489         overviewMenuItem_actionPerformed(e);\r
490       }\r
491     });\r
492     undoMenuItem.setEnabled(false);\r
493     undoMenuItem.setMnemonic('Z');\r
494     undoMenuItem.setText("Undo");\r
495     undoMenuItem.addActionListener(new java.awt.event.ActionListener()\r
496     {\r
497       public void actionPerformed(ActionEvent e)\r
498       {\r
499         undoMenuItem_actionPerformed(e);\r
500       }\r
501     });\r
502     redoMenuItem.setEnabled(false);\r
503     redoMenuItem.setMnemonic('0');\r
504     redoMenuItem.setText("Redo");\r
505     redoMenuItem.addActionListener(new java.awt.event.ActionListener()\r
506     {\r
507       public void actionPerformed(ActionEvent e)\r
508       {\r
509         redoMenuItem_actionPerformed(e);\r
510       }\r
511     });\r
512     conservationMenuItem.setText("By conservation");\r
513     conservationMenuItem.addActionListener(new java.awt.event.ActionListener()\r
514     {\r
515       public void actionPerformed(ActionEvent e)\r
516       {\r
517         conservationMenuItem_actionPerformed(e);\r
518       }\r
519     });\r
520     noColourmenuItem.setText("None");\r
521     noColourmenuItem.setSelected(true);\r
522     noColourmenuItem.addActionListener(new java.awt.event.ActionListener()\r
523     {\r
524       public void actionPerformed(ActionEvent e)\r
525       {\r
526         noColourmenuItem_actionPerformed(e);\r
527       }\r
528     });\r
529     wrapMenuItem.setText("Wrap alignment");\r
530     wrapMenuItem.addActionListener(new java.awt.event.ActionListener()\r
531     {\r
532       public void actionPerformed(ActionEvent e)\r
533       {\r
534         wrapMenuItem_actionPerformed(e);\r
535       }\r
536     });\r
537     printMenuItem.setText("Print");\r
538     printMenuItem.addActionListener(new java.awt.event.ActionListener()\r
539     {\r
540       public void actionPerformed(ActionEvent e)\r
541       {\r
542         printMenuItem_actionPerformed(e);\r
543       }\r
544     });\r
545     renderGapsMenuItem.setText("Render gaps");\r
546     renderGapsMenuItem.setState(true);\r
547     renderGapsMenuItem.addActionListener(new java.awt.event.ActionListener()\r
548     {\r
549       public void actionPerformed(ActionEvent e)\r
550       {\r
551         renderGapsMenuItem_actionPerformed(e);\r
552       }\r
553     });\r
554     findMenuItem.setText("Find");\r
555     findMenuItem.addActionListener(new java.awt.event.ActionListener()\r
556     {\r
557       public void actionPerformed(ActionEvent e)\r
558       {\r
559         findMenuItem_actionPerformed(e);\r
560       }\r
561     });\r
562     searchMenu.setText("Search");\r
563 \r
564     abovePIDThreshold.setText("Above PID threshold");\r
565     abovePIDThreshold.addActionListener(new java.awt.event.ActionListener() {\r
566       public void actionPerformed(ActionEvent e) {\r
567         abovePIDThreshold_actionPerformed(e);\r
568       }\r
569     });\r
570     sequenceFeatures.setText("Sequence Features");\r
571     sequenceFeatures.addActionListener(new ActionListener()\r
572     {\r
573       public void actionPerformed(ActionEvent actionEvent)\r
574       {\r
575         sequenceFeatures_actionPerformed(actionEvent);\r
576       }\r
577     });\r
578     nucleotideColour.setText("Nucleotide colours");\r
579     nucleotideColour.addActionListener(new java.awt.event.ActionListener()\r
580     {\r
581       public void actionPerformed(ActionEvent e)\r
582       {\r
583         nucleotideColour_actionPerformed(e);\r
584       }\r
585     });\r
586     deleteGroups.setSelected(false);\r
587     deleteGroups.setText("Delete all groups");\r
588     deleteGroups.addActionListener(new java.awt.event.ActionListener()\r
589     {\r
590       public void actionPerformed(ActionEvent e)\r
591       {\r
592         deleteGroups_actionPerformed(e);\r
593       }\r
594     });\r
595     copy.setText("Copy");\r
596     copy.setMnemonic(KeyEvent.VK_C);\r
597 \r
598     copy.addActionListener(new java.awt.event.ActionListener()\r
599     {\r
600       public void actionPerformed(ActionEvent e)\r
601       {\r
602         copy_actionPerformed(e);\r
603       }\r
604     });\r
605     cut.setText("Cut");\r
606     cut.setMnemonic(KeyEvent.VK_X);\r
607     cut.addActionListener(new java.awt.event.ActionListener()\r
608     {\r
609       public void actionPerformed(ActionEvent e)\r
610       {\r
611         cut_actionPerformed(e);\r
612       }\r
613     });\r
614     delete.setText("Delete");\r
615     delete.addActionListener(new java.awt.event.ActionListener()\r
616     {\r
617       public void actionPerformed(ActionEvent e)\r
618       {\r
619         delete_actionPerformed(e);\r
620       }\r
621     });\r
622     jMenu1.setMnemonic('V');\r
623     jMenu1.setText("Paste");\r
624     pasteNew.setText("to new alignment");\r
625     pasteNew.addActionListener(new java.awt.event.ActionListener()\r
626     {\r
627       public void actionPerformed(ActionEvent e)\r
628       {\r
629         pasteNew_actionPerformed(e);\r
630       }\r
631     });\r
632     pasteThis.setText("add to this alignment");\r
633     pasteThis.addActionListener(new java.awt.event.ActionListener()\r
634     {\r
635       public void actionPerformed(ActionEvent e)\r
636       {\r
637         pasteThis_actionPerformed(e);\r
638       }\r
639     });\r
640     applyToAllGroups.setText("Apply colour to all groups");\r
641     applyToAllGroups.setState(true);\r
642     applyToAllGroups.addActionListener(new java.awt.event.ActionListener()\r
643     {\r
644       public void actionPerformed(ActionEvent e)\r
645       {\r
646         applyToAllGroups_actionPerformed(e);\r
647       }\r
648     });\r
649     createJPG.addActionListener(new java.awt.event.ActionListener()\r
650     {\r
651       public void actionPerformed(ActionEvent e)\r
652       {\r
653         createJPG_actionPerformed(e);\r
654       }\r
655     });\r
656     createJPG.setText("Save as JPG Image");\r
657     font.setText("Change Font");\r
658     font.addActionListener(new java.awt.event.ActionListener()\r
659     {\r
660       public void actionPerformed(ActionEvent e)\r
661       {\r
662         font_actionPerformed(e);\r
663       }\r
664     });\r
665     fullSeqId.setText("Show full sequence id");\r
666     fullSeqId.addActionListener(new java.awt.event.ActionListener()\r
667     {\r
668       public void actionPerformed(ActionEvent e)\r
669       {\r
670         fullSeqId_actionPerformed(e);\r
671       }\r
672     });\r
673     alignFrameMenuBar.add(fileMenu);\r
674     alignFrameMenuBar.add(editMenu);\r
675     alignFrameMenuBar.add(searchMenu);\r
676     alignFrameMenuBar.add(viewMenu);\r
677     alignFrameMenuBar.add(colourMenu);\r
678     alignFrameMenuBar.add(calculateMenu);\r
679     alignFrameMenuBar.add(alignMenu);\r
680     fileMenu.add(saveAlignmentMenu);\r
681     fileMenu.add(outputTextboxMenu);\r
682     fileMenu.add(htmlMenuItem);\r
683     fileMenu.add(createJPG);\r
684     fileMenu.add(printMenuItem);\r
685     fileMenu.addSeparator();\r
686     fileMenu.add(closeMenuItem);\r
687     editMenu.add(copy);\r
688     editMenu.add(jMenu1);\r
689     editMenu.add(cut);\r
690     editMenu.add(delete);\r
691     editMenu.addSeparator();\r
692     editMenu.add(undoMenuItem);\r
693     editMenu.add(redoMenuItem);\r
694     editMenu.addSeparator();\r
695     editMenu.add(deselectAllSequenceMenuItem);\r
696     editMenu.add(selectAllSequenceMenuItem);\r
697     editMenu.add(invertSequenceMenuItem);\r
698     editMenu.add(deleteGroups);\r
699     editMenu.add(groupsMenuItem);\r
700     editMenu.addSeparator();\r
701     editMenu.add(deselectAllColumnsMenuItem);\r
702     editMenu.add(remove2LeftMenuItem);\r
703     editMenu.add(remove2RightMenuItem);\r
704     editMenu.addSeparator();\r
705     editMenu.add(removeGappedColumnMenuItem);\r
706     editMenu.add(removeAllGapsMenuItem);\r
707     editMenu.add(setGapCharMenuItem);\r
708     searchMenu.add(findMenuItem);\r
709     viewMenu.add(font);\r
710     viewMenu.add(fullSeqId);\r
711     viewMenu.add(wrapMenuItem);\r
712     viewMenu.add(viewBoxesMenuItem);\r
713     viewMenu.add(viewTextMenuItem);\r
714     viewMenu.add(colourTextMenuItem);\r
715     viewMenu.add(renderGapsMenuItem);\r
716     viewMenu.add(consensusGraphMenuItem);\r
717     viewMenu.add(overviewMenuItem);\r
718     viewMenu.add(sequenceFeatures);\r
719     colourMenu.add(applyToAllGroups);\r
720     colourMenu.add(noColourmenuItem);\r
721     colourMenu.add(clustalColour);\r
722     colourMenu.add(zappoColour);\r
723     colourMenu.add(taylorColour);\r
724     colourMenu.add(hydrophobicityColour);\r
725     colourMenu.add(helixColour);\r
726     colourMenu.add(strandColour);\r
727     colourMenu.add(turnColour);\r
728     colourMenu.add(buriedColour);\r
729     colourMenu.add(nucleotideColour);\r
730     colourMenu.add(userDefinedColour);\r
731     colourMenu.add(PIDColour);\r
732     colourMenu.add(BLOSUM62Colour);\r
733     colourMenu.addSeparator();\r
734     colourMenu.add(abovePIDThreshold);\r
735     colourMenu.add(conservationMenuItem);\r
736     calculateMenu.add(sortPairwiseMenuItem);\r
737     calculateMenu.add(sortIDMenuItem);\r
738     calculateMenu.add(sortGroupMenuItem);\r
739     calculateMenu.add(sortTreeOrderMenuItem);\r
740     calculateMenu.add(removeRedundancyMenuItem);\r
741     calculateMenu.addSeparator();\r
742     calculateMenu.add(pairwiseAlignmentMenuItem);\r
743     calculateMenu.add(PCAMenuItem);\r
744     calculateMenu.addSeparator();\r
745     calculateMenu.add(averageDistanceTreeMenuItem);\r
746     calculateMenu.add(neighbourTreeMenuItem);\r
747     calculateMenu.add(avDistanceTreeBlosumMenuItem);\r
748     calculateMenu.add(njTreeBlosumMenuItem);\r
749     alignMenu.add(clustalAlignMenuItem);\r
750     this.getContentPane().add(statusBar, BorderLayout.SOUTH);\r
751     jMenu1.add(pasteNew);\r
752     jMenu1.add(pasteThis);\r
753   }\r
754 \r
755   protected void saveAs_actionPerformed(ActionEvent e)\r
756   {\r
757 \r
758   }\r
759 \r
760   protected void outputText_actionPerformed(ActionEvent e)\r
761   {\r
762 \r
763   }\r
764 \r
765   protected void htmlMenuItem_actionPerformed(ActionEvent e)\r
766   {\r
767 \r
768   }\r
769 \r
770 \r
771 \r
772 \r
773 \r
774   protected void closeMenuItem_actionPerformed(ActionEvent e)\r
775   {\r
776 \r
777   }\r
778 \r
779   protected void redoMenuItem_actionPerformed(ActionEvent e)\r
780   {\r
781 \r
782   }\r
783 \r
784   protected void undoMenuItem_actionPerformed(ActionEvent e)\r
785   {\r
786 \r
787   }\r
788 \r
789 \r
790   protected void groupsMenuItem_actionPerformed(ActionEvent e)\r
791   {\r
792 \r
793   }\r
794 \r
795 \r
796   protected void selectAllSequenceMenuItem_actionPerformed(ActionEvent e)\r
797   {\r
798 \r
799   }\r
800 \r
801   protected void deselectAllSequenceMenuItem_actionPerformed(ActionEvent e)\r
802   {\r
803 \r
804   }\r
805 \r
806   protected void invertSequenceMenuItem_actionPerformed(ActionEvent e)\r
807   {\r
808 \r
809   }\r
810 \r
811 \r
812   protected void deselectAllColumnsMenuItem_actionPerformed(ActionEvent e)\r
813   {\r
814 \r
815   }\r
816 \r
817   protected void remove2LeftMenuItem_actionPerformed(ActionEvent e)\r
818   {\r
819 \r
820   }\r
821 \r
822   protected void remove2RightMenuItem_actionPerformed(ActionEvent e)\r
823   {\r
824 \r
825   }\r
826 \r
827   protected void removeGappedColumnMenuItem_actionPerformed(ActionEvent e)\r
828   {\r
829 \r
830   }\r
831 \r
832   protected void removeAllGapsMenuItem_actionPerformed(ActionEvent e)\r
833   {\r
834 \r
835   }\r
836 \r
837   protected void setGapCharMenuItem_actionPerformed(ActionEvent e)\r
838   {\r
839 \r
840   }\r
841 \r
842 \r
843 \r
844 \r
845 \r
846   protected void wrapMenuItem_actionPerformed(ActionEvent e)\r
847   {\r
848 \r
849   }\r
850 \r
851 \r
852   protected void viewBoxesMenuItem_actionPerformed(ActionEvent e)\r
853   {\r
854 \r
855   }\r
856 \r
857   protected void viewTextMenuItem_actionPerformed(ActionEvent e)\r
858   {\r
859 \r
860   }\r
861 \r
862 \r
863   protected void colourTextMenuItem_actionPerformed(ActionEvent e)\r
864   {\r
865 \r
866   }\r
867 \r
868 \r
869 \r
870   protected void consensusGraphMenuItem_actionPerformed(ActionEvent e)\r
871   {\r
872 \r
873   }\r
874 \r
875   protected void overviewMenuItem_actionPerformed(ActionEvent e)\r
876   {\r
877 \r
878   }\r
879 \r
880   protected void sortPairwiseMenuItem_actionPerformed(ActionEvent e)\r
881   {\r
882 \r
883   }\r
884 \r
885   protected void sortIDMenuItem_actionPerformed(ActionEvent e)\r
886   {\r
887 \r
888   }\r
889 \r
890   protected void sortGroupMenuItem_actionPerformed(ActionEvent e)\r
891   {\r
892 \r
893   }\r
894 \r
895   protected void sortTreeOrderMenuItem_actionPerformed(ActionEvent e)\r
896   {\r
897 \r
898   }\r
899 \r
900   protected void removeRedundancyMenuItem_actionPerformed(ActionEvent e)\r
901   {\r
902 \r
903   }\r
904 \r
905   protected void pairwiseAlignmentMenuItem_actionPerformed(ActionEvent e)\r
906   {\r
907 \r
908   }\r
909 \r
910   protected void PCAMenuItem_actionPerformed(ActionEvent e)\r
911   {\r
912 \r
913   }\r
914 \r
915   protected void averageDistanceTreeMenuItem_actionPerformed(ActionEvent e)\r
916   {\r
917 \r
918   }\r
919 \r
920   protected void neighbourTreeMenuItem_actionPerformed(ActionEvent e)\r
921   {\r
922 \r
923   }\r
924 \r
925 \r
926   protected void njTreeBlosumMenuItem_actionPerformed(ActionEvent e)\r
927   {\r
928 \r
929   }\r
930 \r
931   protected void avTreeBlosumMenuItem_actionPerformed(ActionEvent e)\r
932   {\r
933 \r
934   }\r
935 \r
936 \r
937 \r
938   protected void clustalAlignMenuItem_actionPerformed(ActionEvent e)\r
939   {\r
940 \r
941   }\r
942 \r
943 \r
944 \r
945 \r
946   protected void clustalColour_actionPerformed(ActionEvent e)\r
947   {\r
948 \r
949   }\r
950 \r
951   protected void zappoColour_actionPerformed(ActionEvent e)\r
952   {\r
953 \r
954   }\r
955 \r
956   protected void taylorColour_actionPerformed(ActionEvent e)\r
957   {\r
958 \r
959   }\r
960 \r
961 \r
962   protected void hydrophobicityColour_actionPerformed(ActionEvent e)\r
963   {\r
964 \r
965   }\r
966 \r
967   protected void helixColour_actionPerformed(ActionEvent e)\r
968   {\r
969 \r
970   }\r
971 \r
972   protected void strandColour_actionPerformed(ActionEvent e)\r
973   {\r
974 \r
975   }\r
976 \r
977   protected void turnColour_actionPerformed(ActionEvent e)\r
978   {\r
979 \r
980   }\r
981 \r
982   protected void buriedColour_actionPerformed(ActionEvent e)\r
983   {\r
984 \r
985   }\r
986 \r
987 \r
988 \r
989   protected void userDefinedColour_actionPerformed(ActionEvent e)\r
990   {\r
991 \r
992   }\r
993 \r
994   protected void PIDColour_actionPerformed(ActionEvent e)\r
995   {\r
996 \r
997   }\r
998 \r
999   protected void BLOSUM62Colour_actionPerformed(ActionEvent e)\r
1000   {\r
1001 \r
1002   }\r
1003 \r
1004 \r
1005   protected void noColourmenuItem_actionPerformed(ActionEvent e)\r
1006   {\r
1007 \r
1008   }\r
1009 \r
1010   protected  void conservationMenuItem_actionPerformed(ActionEvent e)\r
1011   {\r
1012 \r
1013   }\r
1014 \r
1015 \r
1016   protected void printMenuItem_actionPerformed(ActionEvent e)\r
1017   {\r
1018 \r
1019   }\r
1020 \r
1021   protected void renderGapsMenuItem_actionPerformed(ActionEvent e)\r
1022   {\r
1023 \r
1024   }\r
1025 \r
1026   protected void findMenuItem_actionPerformed(ActionEvent e)\r
1027   {\r
1028 \r
1029   }\r
1030 \r
1031 \r
1032   protected void abovePIDThreshold_actionPerformed(ActionEvent e) {\r
1033 \r
1034   }\r
1035 \r
1036   public void sequenceFeatures_actionPerformed(ActionEvent actionEvent)\r
1037   {\r
1038 \r
1039   }\r
1040 \r
1041   protected void nucleotideColour_actionPerformed(ActionEvent e)\r
1042   {\r
1043 \r
1044   }\r
1045 \r
1046   protected void deleteGroups_actionPerformed(ActionEvent e)\r
1047   {\r
1048 \r
1049   }\r
1050 \r
1051  protected void copy_actionPerformed(ActionEvent e)\r
1052   {\r
1053 \r
1054   }\r
1055 \r
1056 \r
1057   protected void cut_actionPerformed(ActionEvent e)\r
1058   {\r
1059 \r
1060   }\r
1061 \r
1062   protected void delete_actionPerformed(ActionEvent e)\r
1063   {\r
1064 \r
1065   }\r
1066 \r
1067   protected void pasteNew_actionPerformed(ActionEvent e)\r
1068   {\r
1069 \r
1070   }\r
1071 \r
1072   protected void pasteThis_actionPerformed(ActionEvent e)\r
1073   {\r
1074 \r
1075   }\r
1076 \r
1077   protected void applyToAllGroups_actionPerformed(ActionEvent e)\r
1078   {\r
1079 \r
1080   }\r
1081 \r
1082   protected void createJPG_actionPerformed(ActionEvent e)\r
1083   {\r
1084 \r
1085   }\r
1086 \r
1087   protected void font_actionPerformed(ActionEvent e)\r
1088   {\r
1089 \r
1090   }\r
1091 \r
1092   protected void fullSeqId_actionPerformed(ActionEvent e)\r
1093   {\r
1094 \r
1095   }\r
1096 \r
1097 \r
1098 \r
1099 }\r