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