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