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