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