Cut and paste implemented
[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   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     fontMenu.setText("Font");\r
164     viewMenu.setText("View");\r
165     colourMenu.setText("Colour");\r
166     calculateMenu.setText("Calculate");\r
167     alignMenu.setText("Web Service");\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     fontNameMenuItem.addActionListener(new java.awt.event.ActionListener()\r
249     {\r
250       public void actionPerformed(ActionEvent e)\r
251       {\r
252         fontNameMenuItem_actionPerformed(e);\r
253       }\r
254     });\r
255     fontSizeMenuItem.setText("10");\r
256     fontSizeMenuItem.addActionListener(new java.awt.event.ActionListener()\r
257     {\r
258       public void actionPerformed(ActionEvent e)\r
259       {\r
260         fontSizeMenuItem_actionPerformed(e);\r
261       }\r
262     });\r
263     fontStyleMenuItem.setText("Plain");\r
264     fontStyleMenuItem.addActionListener(new java.awt.event.ActionListener()\r
265     {\r
266       public void actionPerformed(ActionEvent e)\r
267       {\r
268         fontStyleMenuItem_actionPerformed(e);\r
269       }\r
270     });\r
271     viewBoxesMenuItem.setText("Boxes");\r
272     viewBoxesMenuItem.setState(true);\r
273     viewBoxesMenuItem.addActionListener(new java.awt.event.ActionListener()\r
274     {\r
275       public void actionPerformed(ActionEvent e)\r
276       {\r
277         viewBoxesMenuItem_actionPerformed(e);\r
278       }\r
279     });\r
280     viewTextMenuItem.setText("Text");\r
281     viewTextMenuItem.setState(true);\r
282     viewTextMenuItem.addActionListener(new java.awt.event.ActionListener()\r
283     {\r
284       public void actionPerformed(ActionEvent e)\r
285       {\r
286         viewTextMenuItem_actionPerformed(e);\r
287       }\r
288     });\r
289     sortPairwiseMenuItem.setText("Sort by pairwise identity");\r
290     sortPairwiseMenuItem.addActionListener(new java.awt.event.ActionListener()\r
291     {\r
292       public void actionPerformed(ActionEvent e)\r
293       {\r
294         sortPairwiseMenuItem_actionPerformed(e);\r
295       }\r
296     });\r
297     sortIDMenuItem.setText("Sort by ID");\r
298     sortIDMenuItem.addActionListener(new java.awt.event.ActionListener()\r
299     {\r
300       public void actionPerformed(ActionEvent e)\r
301       {\r
302         sortIDMenuItem_actionPerformed(e);\r
303       }\r
304     });\r
305     sortGroupMenuItem.setText("Sort by group");\r
306     sortGroupMenuItem.addActionListener(new java.awt.event.ActionListener()\r
307     {\r
308       public void actionPerformed(ActionEvent e)\r
309       {\r
310         sortGroupMenuItem_actionPerformed(e);\r
311       }\r
312     });\r
313     sortTreeOrderMenuItem.setText("Sort by tree order");\r
314     sortTreeOrderMenuItem.addActionListener(new java.awt.event.ActionListener()\r
315     {\r
316       public void actionPerformed(ActionEvent e)\r
317       {\r
318         sortTreeOrderMenuItem_actionPerformed(e);\r
319       }\r
320     });\r
321     removeRedundancyMenuItem.setText("Remove redundancy");\r
322     removeRedundancyMenuItem.addActionListener(new java.awt.event.ActionListener()\r
323     {\r
324       public void actionPerformed(ActionEvent e)\r
325       {\r
326         removeRedundancyMenuItem_actionPerformed(e);\r
327       }\r
328     });\r
329     pairwiseAlignmentMenuItem.setText("Pairwise alignments");\r
330     pairwiseAlignmentMenuItem.addActionListener(new java.awt.event.ActionListener()\r
331     {\r
332       public void actionPerformed(ActionEvent e)\r
333       {\r
334         pairwiseAlignmentMenuItem_actionPerformed(e);\r
335       }\r
336     });\r
337     PCAMenuItem.setText("Principal component analysis");\r
338     PCAMenuItem.addActionListener(new java.awt.event.ActionListener()\r
339     {\r
340       public void actionPerformed(ActionEvent e)\r
341       {\r
342         PCAMenuItem_actionPerformed(e);\r
343       }\r
344     });\r
345     averageDistanceTreeMenuItem.setText("Average distance tree using PID");\r
346     averageDistanceTreeMenuItem.addActionListener(new java.awt.event.ActionListener()\r
347     {\r
348       public void actionPerformed(ActionEvent e)\r
349       {\r
350         averageDistanceTreeMenuItem_actionPerformed(e);\r
351       }\r
352     });\r
353     neighbourTreeMenuItem.setText("Neighbour joining tree using PID");\r
354     neighbourTreeMenuItem.addActionListener(new java.awt.event.ActionListener()\r
355     {\r
356       public void actionPerformed(ActionEvent e)\r
357       {\r
358         neighbourTreeMenuItem_actionPerformed(e);\r
359       }\r
360     });\r
361     clustalAlignMenuItem.setText("Clustal alignment");\r
362     clustalAlignMenuItem.addActionListener(new java.awt.event.ActionListener()\r
363     {\r
364       public void actionPerformed(ActionEvent e)\r
365       {\r
366         clustalAlignMenuItem_actionPerformed(e);\r
367       }\r
368     });\r
369     this.getContentPane().setLayout(borderLayout1);\r
370     alignFrameMenuBar.setFont(new java.awt.Font("Verdana", 0, 11));\r
371     statusBar.setBackground(Color.white);\r
372     statusBar.setFont(new java.awt.Font("Verdana", 0, 11));\r
373     statusBar.setBorder(BorderFactory.createLineBorder(Color.black));\r
374     statusBar.setText("Status bar");\r
375     outputTextboxMenu.setMnemonic('T');\r
376     outputTextboxMenu.setText("Output alignment via textbox");\r
377     clustalColour.setSelected(false);\r
378     clustalColour.setText("Clustalx colours");\r
379     clustalColour.addActionListener(new java.awt.event.ActionListener()\r
380     {\r
381       public void actionPerformed(ActionEvent e)\r
382       {\r
383         clustalColour_actionPerformed(e);\r
384       }\r
385     });\r
386     zappoColour.setText("Zappo colour scheme");\r
387     zappoColour.addActionListener(new java.awt.event.ActionListener()\r
388     {\r
389       public void actionPerformed(ActionEvent e)\r
390       {\r
391         zappoColour_actionPerformed(e);\r
392       }\r
393     });\r
394     taylorColour.setText("Taylor colour scheme");\r
395     taylorColour.addActionListener(new java.awt.event.ActionListener()\r
396     {\r
397       public void actionPerformed(ActionEvent e)\r
398       {\r
399         taylorColour_actionPerformed(e);\r
400       }\r
401     });\r
402     hydrophobicityColour.setText("By hydrophobicity");\r
403     hydrophobicityColour.addActionListener(new java.awt.event.ActionListener()\r
404     {\r
405       public void actionPerformed(ActionEvent e)\r
406       {\r
407         hydrophobicityColour_actionPerformed(e);\r
408       }\r
409     });\r
410     helixColour.setText("Helix propensity");\r
411     helixColour.addActionListener(new java.awt.event.ActionListener()\r
412     {\r
413       public void actionPerformed(ActionEvent e)\r
414       {\r
415         helixColour_actionPerformed(e);\r
416       }\r
417     });\r
418     strandColour.setText("Strand propensity");\r
419     strandColour.addActionListener(new java.awt.event.ActionListener()\r
420     {\r
421       public void actionPerformed(ActionEvent e)\r
422       {\r
423         strandColour_actionPerformed(e);\r
424       }\r
425     });\r
426     turnColour.setText("Turn propensity");\r
427     turnColour.addActionListener(new java.awt.event.ActionListener()\r
428     {\r
429       public void actionPerformed(ActionEvent e)\r
430       {\r
431         turnColour_actionPerformed(e);\r
432       }\r
433     });\r
434     buriedColour.setText("Buried index");\r
435     buriedColour.addActionListener(new java.awt.event.ActionListener()\r
436     {\r
437       public void actionPerformed(ActionEvent e)\r
438       {\r
439         buriedColour_actionPerformed(e);\r
440       }\r
441     });\r
442     userDefinedColour.setText("User defined colours");\r
443     userDefinedColour.addActionListener(new java.awt.event.ActionListener()\r
444     {\r
445       public void actionPerformed(ActionEvent e)\r
446       {\r
447         userDefinedColour_actionPerformed(e);\r
448       }\r
449     });\r
450     PIDColour.setText("Percentage Identity");\r
451     PIDColour.addActionListener(new java.awt.event.ActionListener()\r
452     {\r
453       public void actionPerformed(ActionEvent e)\r
454       {\r
455         PIDColour_actionPerformed(e);\r
456       }\r
457     });\r
458     BLOSUM62Colour.setText("BLOSUM62 score");\r
459     BLOSUM62Colour.addActionListener(new java.awt.event.ActionListener()\r
460     {\r
461       public void actionPerformed(ActionEvent e)\r
462       {\r
463         BLOSUM62Colour_actionPerformed(e);\r
464       }\r
465     });\r
466     avDistanceTreeBlosumMenuItem.setText("Average distance tree using BLOSUM62");\r
467     avDistanceTreeBlosumMenuItem.addActionListener(new java.awt.event.ActionListener()\r
468     {\r
469       public void actionPerformed(ActionEvent e)\r
470       {\r
471         avTreeBlosumMenuItem_actionPerformed(e);\r
472       }\r
473     });\r
474     njTreeBlosumMenuItem.setText("Neighbour joining tree using BLOSUM62");\r
475     njTreeBlosumMenuItem.addActionListener(new java.awt.event.ActionListener()\r
476     {\r
477       public void actionPerformed(ActionEvent e)\r
478       {\r
479         njTreeBlosumMenuItem_actionPerformed(e);\r
480       }\r
481     });\r
482     consensusGraphMenuItem.setActionCommand("");\r
483     consensusGraphMenuItem.setText("Consensus graph");\r
484     consensusGraphMenuItem.setState(true);\r
485     consensusGraphMenuItem.addActionListener(new java.awt.event.ActionListener()\r
486     {\r
487       public void actionPerformed(ActionEvent e)\r
488       {\r
489         consensusGraphMenuItem_actionPerformed(e);\r
490       }\r
491     });\r
492     colourTextMenuItem.setText("Colour text");\r
493     colourTextMenuItem.addActionListener(new java.awt.event.ActionListener()\r
494     {\r
495       public void actionPerformed(ActionEvent e)\r
496       {\r
497         colourTextMenuItem_actionPerformed(e);\r
498       }\r
499     });\r
500     htmlMenuItem.setText("Output as HTML");\r
501     htmlMenuItem.addActionListener(new java.awt.event.ActionListener()\r
502     {\r
503       public void actionPerformed(ActionEvent e)\r
504       {\r
505         htmlMenuItem_actionPerformed(e);\r
506       }\r
507     });\r
508     overviewMenuItem.setText("Overview window");\r
509     overviewMenuItem.addActionListener(new java.awt.event.ActionListener()\r
510     {\r
511       public void actionPerformed(ActionEvent e)\r
512       {\r
513         overviewMenuItem_actionPerformed(e);\r
514       }\r
515     });\r
516     undoMenuItem.setEnabled(false);\r
517     undoMenuItem.setMnemonic('Z');\r
518     undoMenuItem.setText("Undo");\r
519     undoMenuItem.addActionListener(new java.awt.event.ActionListener()\r
520     {\r
521       public void actionPerformed(ActionEvent e)\r
522       {\r
523         undoMenuItem_actionPerformed(e);\r
524       }\r
525     });\r
526     redoMenuItem.setEnabled(false);\r
527     redoMenuItem.setMnemonic('0');\r
528     redoMenuItem.setText("Redo");\r
529     redoMenuItem.addActionListener(new java.awt.event.ActionListener()\r
530     {\r
531       public void actionPerformed(ActionEvent e)\r
532       {\r
533         redoMenuItem_actionPerformed(e);\r
534       }\r
535     });\r
536     conservationMenuItem.setText("By conservation");\r
537     conservationMenuItem.addActionListener(new java.awt.event.ActionListener()\r
538     {\r
539       public void actionPerformed(ActionEvent e)\r
540       {\r
541         conservationMenuItem_actionPerformed(e);\r
542       }\r
543     });\r
544     noColourmenuItem.setText("None");\r
545     noColourmenuItem.setSelected(true);\r
546     noColourmenuItem.addActionListener(new java.awt.event.ActionListener()\r
547     {\r
548       public void actionPerformed(ActionEvent e)\r
549       {\r
550         noColourmenuItem_actionPerformed(e);\r
551       }\r
552     });\r
553     wrapMenuItem.setText("Wrap alignment");\r
554     wrapMenuItem.addActionListener(new java.awt.event.ActionListener()\r
555     {\r
556       public void actionPerformed(ActionEvent e)\r
557       {\r
558         wrapMenuItem_actionPerformed(e);\r
559       }\r
560     });\r
561     pdbTest.setText("PDB Test Viewer");\r
562     pdbTest.addActionListener(new java.awt.event.ActionListener()\r
563     {\r
564       public void actionPerformed(ActionEvent e)\r
565       {\r
566         pdbTest_actionPerformed(e);\r
567       }\r
568     });\r
569     printMenuItem.setText("Print");\r
570     printMenuItem.addActionListener(new java.awt.event.ActionListener()\r
571     {\r
572       public void actionPerformed(ActionEvent e)\r
573       {\r
574         printMenuItem_actionPerformed(e);\r
575       }\r
576     });\r
577     renderGapsMenuItem.setText("Render gaps");\r
578     renderGapsMenuItem.setState(true);\r
579     renderGapsMenuItem.addActionListener(new java.awt.event.ActionListener()\r
580     {\r
581       public void actionPerformed(ActionEvent e)\r
582       {\r
583         renderGapsMenuItem_actionPerformed(e);\r
584       }\r
585     });\r
586     findMenuItem.setText("Find");\r
587     findMenuItem.addActionListener(new java.awt.event.ActionListener()\r
588     {\r
589       public void actionPerformed(ActionEvent e)\r
590       {\r
591         findMenuItem_actionPerformed(e);\r
592       }\r
593     });\r
594     searchMenu.setText("Search");\r
595 \r
596     abovePIDThreshold.setText("Above PID threshold");\r
597     abovePIDThreshold.addActionListener(new java.awt.event.ActionListener() {\r
598       public void actionPerformed(ActionEvent e) {\r
599         abovePIDThreshold_actionPerformed(e);\r
600       }\r
601     });\r
602     sequenceFeatures.setSelected(true);\r
603     sequenceFeatures.setText("Sequence Features");\r
604     sequenceFeatures.addActionListener(new ActionListener()\r
605     {\r
606       public void actionPerformed(ActionEvent actionEvent)\r
607       {\r
608         sequenceFeatures_actionPerformed(actionEvent);\r
609       }\r
610     });\r
611     nucleotideColour.setText("Nucleotide colours");\r
612     nucleotideColour.addActionListener(new java.awt.event.ActionListener()\r
613     {\r
614       public void actionPerformed(ActionEvent e)\r
615       {\r
616         nucleotideColour_actionPerformed(e);\r
617       }\r
618     });\r
619     deleteGroups.setSelected(false);\r
620     deleteGroups.setText("Delete all groups");\r
621     deleteGroups.addActionListener(new java.awt.event.ActionListener()\r
622     {\r
623       public void actionPerformed(ActionEvent e)\r
624       {\r
625         deleteGroups_actionPerformed(e);\r
626       }\r
627     });\r
628     copy.setText("Copy");\r
629     copy.setMnemonic(KeyEvent.VK_C);\r
630 \r
631     copy.addActionListener(new java.awt.event.ActionListener()\r
632     {\r
633       public void actionPerformed(ActionEvent e)\r
634       {\r
635         copy_actionPerformed(e);\r
636       }\r
637     });\r
638    // pasteNew.setText("Paste (as new alignment)");\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("as 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     alignFrameMenuBar.add(fileMenu);\r
675     alignFrameMenuBar.add(editMenu);\r
676     alignFrameMenuBar.add(searchMenu);\r
677     alignFrameMenuBar.add(fontMenu);\r
678     alignFrameMenuBar.add(viewMenu);\r
679     alignFrameMenuBar.add(colourMenu);\r
680     alignFrameMenuBar.add(calculateMenu);\r
681     alignFrameMenuBar.add(alignMenu);\r
682     fileMenu.add(saveAlignmentMenu);\r
683     fileMenu.add(outputTextboxMenu);\r
684     fileMenu.add(htmlMenuItem);\r
685     fileMenu.add(printMenuItem);\r
686     fileMenu.addSeparator();\r
687     fileMenu.add(closeMenuItem);\r
688     editMenu.add(copy);\r
689     editMenu.add(jMenu1);\r
690     editMenu.add(cut);\r
691     editMenu.add(delete);\r
692     editMenu.addSeparator();\r
693     editMenu.add(undoMenuItem);\r
694     editMenu.add(redoMenuItem);\r
695     editMenu.addSeparator();\r
696     editMenu.add(deselectAllSequenceMenuItem);\r
697     editMenu.add(selectAllSequenceMenuItem);\r
698     editMenu.add(invertSequenceMenuItem);\r
699     editMenu.add(deleteGroups);\r
700     editMenu.add(groupsMenuItem);\r
701     editMenu.addSeparator();\r
702     editMenu.add(deselectAllColumnsMenuItem);\r
703     editMenu.add(remove2LeftMenuItem);\r
704     editMenu.add(remove2RightMenuItem);\r
705     editMenu.addSeparator();\r
706     editMenu.add(removeGappedColumnMenuItem);\r
707     editMenu.add(removeAllGapsMenuItem);\r
708     editMenu.add(setGapCharMenuItem);\r
709     searchMenu.add(findMenuItem);\r
710     fontMenu.add(fontNameMenuItem);\r
711     fontMenu.add(fontSizeMenuItem);\r
712     fontMenu.add(fontStyleMenuItem);\r
713     viewMenu.add(wrapMenuItem);\r
714     viewMenu.add(viewBoxesMenuItem);\r
715     viewMenu.add(viewTextMenuItem);\r
716     viewMenu.add(colourTextMenuItem);\r
717     viewMenu.add(renderGapsMenuItem);\r
718     viewMenu.add(consensusGraphMenuItem);\r
719     viewMenu.add(overviewMenuItem);\r
720     viewMenu.add(sequenceFeatures);\r
721     colourMenu.add(noColourmenuItem);\r
722     colourMenu.add(clustalColour);\r
723     colourMenu.add(zappoColour);\r
724     colourMenu.add(taylorColour);\r
725     colourMenu.add(hydrophobicityColour);\r
726     colourMenu.add(helixColour);\r
727     colourMenu.add(strandColour);\r
728     colourMenu.add(turnColour);\r
729     colourMenu.add(buriedColour);\r
730     colourMenu.add(nucleotideColour);\r
731     colourMenu.add(userDefinedColour);\r
732     colourMenu.add(PIDColour);\r
733     colourMenu.add(BLOSUM62Colour);\r
734     colourMenu.addSeparator();\r
735     colourMenu.add(abovePIDThreshold);\r
736     colourMenu.add(conservationMenuItem);\r
737     calculateMenu.add(sortPairwiseMenuItem);\r
738     calculateMenu.add(sortIDMenuItem);\r
739     calculateMenu.add(sortGroupMenuItem);\r
740     calculateMenu.add(sortTreeOrderMenuItem);\r
741     calculateMenu.add(removeRedundancyMenuItem);\r
742     calculateMenu.addSeparator();\r
743     calculateMenu.add(pairwiseAlignmentMenuItem);\r
744     calculateMenu.add(PCAMenuItem);\r
745     calculateMenu.addSeparator();\r
746     calculateMenu.add(averageDistanceTreeMenuItem);\r
747     calculateMenu.add(neighbourTreeMenuItem);\r
748     calculateMenu.add(avDistanceTreeBlosumMenuItem);\r
749     calculateMenu.add(njTreeBlosumMenuItem);\r
750     alignMenu.add(clustalAlignMenuItem);\r
751     alignMenu.add(pdbTest);\r
752     this.getContentPane().add(statusBar, BorderLayout.SOUTH);\r
753     jMenu1.add(pasteNew);\r
754     jMenu1.add(pasteThis);\r
755   }\r
756 \r
757   protected void saveAs_actionPerformed(ActionEvent e)\r
758   {\r
759 \r
760   }\r
761 \r
762   protected void outputText_actionPerformed(ActionEvent e)\r
763   {\r
764 \r
765   }\r
766 \r
767   protected void htmlMenuItem_actionPerformed(ActionEvent e)\r
768   {\r
769 \r
770   }\r
771 \r
772 \r
773 \r
774 \r
775 \r
776   protected void closeMenuItem_actionPerformed(ActionEvent e)\r
777   {\r
778 \r
779   }\r
780 \r
781   protected void redoMenuItem_actionPerformed(ActionEvent e)\r
782   {\r
783 \r
784   }\r
785 \r
786   protected void undoMenuItem_actionPerformed(ActionEvent e)\r
787   {\r
788 \r
789   }\r
790 \r
791 \r
792   protected void groupsMenuItem_actionPerformed(ActionEvent e)\r
793   {\r
794 \r
795   }\r
796 \r
797 \r
798   protected void selectAllSequenceMenuItem_actionPerformed(ActionEvent e)\r
799   {\r
800 \r
801   }\r
802 \r
803   protected void deselectAllSequenceMenuItem_actionPerformed(ActionEvent e)\r
804   {\r
805 \r
806   }\r
807 \r
808   protected void invertSequenceMenuItem_actionPerformed(ActionEvent e)\r
809   {\r
810 \r
811   }\r
812 \r
813 \r
814   protected void deselectAllColumnsMenuItem_actionPerformed(ActionEvent e)\r
815   {\r
816 \r
817   }\r
818 \r
819   protected void remove2LeftMenuItem_actionPerformed(ActionEvent e)\r
820   {\r
821 \r
822   }\r
823 \r
824   protected void remove2RightMenuItem_actionPerformed(ActionEvent e)\r
825   {\r
826 \r
827   }\r
828 \r
829   protected void removeGappedColumnMenuItem_actionPerformed(ActionEvent e)\r
830   {\r
831 \r
832   }\r
833 \r
834   protected void removeAllGapsMenuItem_actionPerformed(ActionEvent e)\r
835   {\r
836 \r
837   }\r
838 \r
839   protected void setGapCharMenuItem_actionPerformed(ActionEvent e)\r
840   {\r
841 \r
842   }\r
843 \r
844 \r
845   protected void fontNameMenuItem_actionPerformed(ActionEvent e)\r
846   {\r
847 \r
848   }\r
849 \r
850   protected void fontSizeMenuItem_actionPerformed(ActionEvent e)\r
851   {\r
852 \r
853   }\r
854 \r
855   protected void fontStyleMenuItem_actionPerformed(ActionEvent e)\r
856   {\r
857 \r
858   }\r
859 \r
860   protected void wrapMenuItem_actionPerformed(ActionEvent e)\r
861   {\r
862 \r
863   }\r
864 \r
865 \r
866   protected void viewBoxesMenuItem_actionPerformed(ActionEvent e)\r
867   {\r
868 \r
869   }\r
870 \r
871   protected void viewTextMenuItem_actionPerformed(ActionEvent e)\r
872   {\r
873 \r
874   }\r
875 \r
876 \r
877   protected void colourTextMenuItem_actionPerformed(ActionEvent e)\r
878   {\r
879 \r
880   }\r
881 \r
882 \r
883 \r
884   protected void consensusGraphMenuItem_actionPerformed(ActionEvent e)\r
885   {\r
886 \r
887   }\r
888 \r
889   protected void overviewMenuItem_actionPerformed(ActionEvent e)\r
890   {\r
891 \r
892   }\r
893 \r
894   protected void sortPairwiseMenuItem_actionPerformed(ActionEvent e)\r
895   {\r
896 \r
897   }\r
898 \r
899   protected void sortIDMenuItem_actionPerformed(ActionEvent e)\r
900   {\r
901 \r
902   }\r
903 \r
904   protected void sortGroupMenuItem_actionPerformed(ActionEvent e)\r
905   {\r
906 \r
907   }\r
908 \r
909   protected void sortTreeOrderMenuItem_actionPerformed(ActionEvent e)\r
910   {\r
911 \r
912   }\r
913 \r
914   protected void removeRedundancyMenuItem_actionPerformed(ActionEvent e)\r
915   {\r
916 \r
917   }\r
918 \r
919   protected void pairwiseAlignmentMenuItem_actionPerformed(ActionEvent e)\r
920   {\r
921 \r
922   }\r
923 \r
924   protected void PCAMenuItem_actionPerformed(ActionEvent e)\r
925   {\r
926 \r
927   }\r
928 \r
929   protected void averageDistanceTreeMenuItem_actionPerformed(ActionEvent e)\r
930   {\r
931 \r
932   }\r
933 \r
934   protected void neighbourTreeMenuItem_actionPerformed(ActionEvent e)\r
935   {\r
936 \r
937   }\r
938 \r
939 \r
940   protected void njTreeBlosumMenuItem_actionPerformed(ActionEvent e)\r
941   {\r
942 \r
943   }\r
944 \r
945   protected void avTreeBlosumMenuItem_actionPerformed(ActionEvent e)\r
946   {\r
947 \r
948   }\r
949 \r
950 \r
951 \r
952   protected void clustalAlignMenuItem_actionPerformed(ActionEvent e)\r
953   {\r
954 \r
955   }\r
956 \r
957 \r
958 \r
959 \r
960   protected void clustalColour_actionPerformed(ActionEvent e)\r
961   {\r
962 \r
963   }\r
964 \r
965   protected void zappoColour_actionPerformed(ActionEvent e)\r
966   {\r
967 \r
968   }\r
969 \r
970   protected void taylorColour_actionPerformed(ActionEvent e)\r
971   {\r
972 \r
973   }\r
974 \r
975 \r
976   protected void hydrophobicityColour_actionPerformed(ActionEvent e)\r
977   {\r
978 \r
979   }\r
980 \r
981   protected void helixColour_actionPerformed(ActionEvent e)\r
982   {\r
983 \r
984   }\r
985 \r
986   protected void strandColour_actionPerformed(ActionEvent e)\r
987   {\r
988 \r
989   }\r
990 \r
991   protected void turnColour_actionPerformed(ActionEvent e)\r
992   {\r
993 \r
994   }\r
995 \r
996   protected void buriedColour_actionPerformed(ActionEvent e)\r
997   {\r
998 \r
999   }\r
1000 \r
1001 \r
1002 \r
1003   protected void userDefinedColour_actionPerformed(ActionEvent e)\r
1004   {\r
1005 \r
1006   }\r
1007 \r
1008   protected void PIDColour_actionPerformed(ActionEvent e)\r
1009   {\r
1010 \r
1011   }\r
1012 \r
1013   protected void BLOSUM62Colour_actionPerformed(ActionEvent e)\r
1014   {\r
1015 \r
1016   }\r
1017 \r
1018 \r
1019   protected void noColourmenuItem_actionPerformed(ActionEvent e)\r
1020   {\r
1021 \r
1022   }\r
1023 \r
1024   protected  void conservationMenuItem_actionPerformed(ActionEvent e)\r
1025   {\r
1026 \r
1027   }\r
1028 \r
1029   protected void pdbTest_actionPerformed(ActionEvent e)\r
1030   {\r
1031 \r
1032   }\r
1033 \r
1034   protected void printMenuItem_actionPerformed(ActionEvent e)\r
1035   {\r
1036 \r
1037   }\r
1038 \r
1039   protected void renderGapsMenuItem_actionPerformed(ActionEvent e)\r
1040   {\r
1041 \r
1042   }\r
1043 \r
1044   protected void findMenuItem_actionPerformed(ActionEvent e)\r
1045   {\r
1046 \r
1047   }\r
1048 \r
1049 \r
1050   protected void abovePIDThreshold_actionPerformed(ActionEvent e) {\r
1051 \r
1052   }\r
1053 \r
1054   public void sequenceFeatures_actionPerformed(ActionEvent actionEvent)\r
1055   {\r
1056 \r
1057   }\r
1058 \r
1059   protected void nucleotideColour_actionPerformed(ActionEvent e)\r
1060   {\r
1061 \r
1062   }\r
1063 \r
1064   protected void deleteGroups_actionPerformed(ActionEvent e)\r
1065   {\r
1066 \r
1067   }\r
1068 \r
1069  protected void copy_actionPerformed(ActionEvent e)\r
1070   {\r
1071 \r
1072   }\r
1073 \r
1074 \r
1075   protected void cut_actionPerformed(ActionEvent e)\r
1076   {\r
1077 \r
1078   }\r
1079 \r
1080   protected void delete_actionPerformed(ActionEvent e)\r
1081   {\r
1082 \r
1083   }\r
1084 \r
1085   protected void pasteNew_actionPerformed(ActionEvent e)\r
1086   {\r
1087 \r
1088   }\r
1089 \r
1090   protected void pasteThis_actionPerformed(ActionEvent e)\r
1091   {\r
1092 \r
1093   }\r
1094 \r
1095 \r
1096 \r
1097 }\r