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