Merge remote-tracking branch 'origin/Tcoffee_JAL-1065' into develop
[jalview.git] / src / jalview / jbgui / GAlignFrame.java
1 /*
2  * Jalview - A Sequence Alignment Editor and Viewer (Version 2.7)
3  * Copyright (C) 2011 J Procter, AM Waterhouse, J Engelhardt, LM Lui, G Barton, M Clamp, S Searle
4  * 
5  * This file is part of Jalview.
6  * 
7  * Jalview is free software: you can redistribute it and/or
8  * modify it under the terms of the GNU General Public License 
9  * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
10  * 
11  * Jalview is distributed in the hope that it will be useful, but 
12  * WITHOUT ANY WARRANTY; without even the implied warranty 
13  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
14  * PURPOSE.  See the GNU General Public License for more details.
15  * 
16  * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
17  */
18 package jalview.jbgui;
19
20 import jalview.schemes.ColourSchemeProperty;
21
22 import java.awt.BorderLayout;
23 import java.awt.Color;
24 import java.awt.GridLayout;
25 import java.awt.Toolkit;
26 import java.awt.event.ActionEvent;
27 import java.awt.event.ActionListener;
28 import java.awt.event.FocusAdapter;
29 import java.awt.event.FocusEvent;
30 import java.awt.event.MouseAdapter;
31 import java.awt.event.MouseEvent;
32
33 import javax.swing.BorderFactory;
34 import javax.swing.ButtonGroup;
35 import javax.swing.JCheckBoxMenuItem;
36 import javax.swing.JInternalFrame;
37 import javax.swing.JLabel;
38 import javax.swing.JMenu;
39 import javax.swing.JMenuBar;
40 import javax.swing.JMenuItem;
41 import javax.swing.JOptionPane;
42 import javax.swing.JPanel;
43 import javax.swing.JRadioButtonMenuItem;
44 import javax.swing.JTabbedPane;
45 import javax.swing.SwingUtilities;
46 import javax.swing.event.ChangeEvent;
47 import javax.swing.event.MenuEvent;
48 import javax.swing.event.MenuListener;
49
50 public class GAlignFrame extends JInternalFrame
51 {
52   protected JMenuBar alignFrameMenuBar = new JMenuBar();
53
54   protected JMenu fileMenu = new JMenu();
55
56   protected JMenuItem closeMenuItem = new JMenuItem();
57
58   protected JMenu editMenu = new JMenu();
59
60   protected JMenu viewMenu = new JMenu();
61
62   protected JMenu colourMenu = new JMenu();
63
64   protected JMenu calculateMenu = new JMenu();
65
66   protected JMenu webService = new JMenu();
67
68   protected JMenuItem webServiceNoServices;
69
70   protected JMenuItem selectAllSequenceMenuItem = new JMenuItem();
71
72   protected JMenuItem deselectAllSequenceMenuItem = new JMenuItem();
73
74   protected JMenuItem invertSequenceMenuItem = new JMenuItem();
75
76   protected JMenuItem remove2LeftMenuItem = new JMenuItem();
77
78   protected JMenuItem remove2RightMenuItem = new JMenuItem();
79
80   protected JMenuItem removeGappedColumnMenuItem = new JMenuItem();
81
82   protected JMenuItem removeAllGapsMenuItem = new JMenuItem();
83
84   public JCheckBoxMenuItem viewBoxesMenuItem = new JCheckBoxMenuItem();
85
86   public JCheckBoxMenuItem viewTextMenuItem = new JCheckBoxMenuItem();
87
88   protected JMenuItem sortPairwiseMenuItem = new JMenuItem();
89
90   protected JMenuItem sortIDMenuItem = new JMenuItem();
91
92   protected JMenuItem sortLengthMenuItem = new JMenuItem();
93
94   protected JMenuItem sortGroupMenuItem = new JMenuItem();
95
96   protected JMenu sortByAnnotScore = new JMenu();
97
98   protected JMenuItem removeRedundancyMenuItem = new JMenuItem();
99
100   protected JMenuItem pairwiseAlignmentMenuItem = new JMenuItem();
101
102   protected JMenuItem PCAMenuItem = new JMenuItem();
103
104   protected JMenuItem averageDistanceTreeMenuItem = new JMenuItem();
105
106   protected JMenuItem neighbourTreeMenuItem = new JMenuItem();
107
108   BorderLayout borderLayout1 = new BorderLayout();
109
110   public JLabel statusBar = new JLabel();
111
112   protected JMenuItem saveAs = new JMenuItem();
113
114   protected JMenu outputTextboxMenu = new JMenu();
115
116   protected JRadioButtonMenuItem clustalColour = new JRadioButtonMenuItem();
117
118   protected JRadioButtonMenuItem zappoColour = new JRadioButtonMenuItem();
119
120   protected JRadioButtonMenuItem taylorColour = new JRadioButtonMenuItem();
121
122   protected JRadioButtonMenuItem hydrophobicityColour = new JRadioButtonMenuItem();
123
124   protected JRadioButtonMenuItem helixColour = new JRadioButtonMenuItem();
125
126   protected JRadioButtonMenuItem strandColour = new JRadioButtonMenuItem();
127
128   protected JRadioButtonMenuItem turnColour = new JRadioButtonMenuItem();
129
130   protected JRadioButtonMenuItem buriedColour = new JRadioButtonMenuItem();
131
132   protected JRadioButtonMenuItem userDefinedColour = new JRadioButtonMenuItem();
133
134   protected JRadioButtonMenuItem PIDColour = new JRadioButtonMenuItem();
135
136   protected JRadioButtonMenuItem BLOSUM62Colour = new JRadioButtonMenuItem();
137
138   protected JRadioButtonMenuItem nucleotideColour = new JRadioButtonMenuItem();
139
140   protected JRadioButtonMenuItem purinePyrimidineColour = new JRadioButtonMenuItem();
141
142   // protected JRadioButtonMenuItem covariationColour = new
143   // JRadioButtonMenuItem();
144
145   protected JRadioButtonMenuItem tcoffeeColour = new JRadioButtonMenuItem();
146  
147   
148   JMenuItem njTreeBlosumMenuItem = new JMenuItem();
149
150   JMenuItem avDistanceTreeBlosumMenuItem = new JMenuItem();
151
152   public JCheckBoxMenuItem annotationPanelMenuItem = new JCheckBoxMenuItem();
153
154   public JCheckBoxMenuItem colourTextMenuItem = new JCheckBoxMenuItem();
155
156   public JCheckBoxMenuItem showNonconservedMenuItem = new JCheckBoxMenuItem();
157
158   JMenuItem htmlMenuItem = new JMenuItem();
159
160   JMenuItem overviewMenuItem = new JMenuItem();
161
162   protected JMenuItem undoMenuItem = new JMenuItem();
163
164   protected JMenuItem redoMenuItem = new JMenuItem();
165
166   public JCheckBoxMenuItem conservationMenuItem = new JCheckBoxMenuItem();
167
168   JRadioButtonMenuItem noColourmenuItem = new JRadioButtonMenuItem();
169
170   public JCheckBoxMenuItem wrapMenuItem = new JCheckBoxMenuItem();
171
172   JMenuItem printMenuItem = new JMenuItem();
173
174   public JCheckBoxMenuItem renderGapsMenuItem = new JCheckBoxMenuItem();
175
176   JMenuItem findMenuItem = new JMenuItem();
177
178   public JCheckBoxMenuItem abovePIDThreshold = new JCheckBoxMenuItem();
179
180   public JCheckBoxMenuItem showSeqFeatures = new JCheckBoxMenuItem();
181
182   public JCheckBoxMenuItem showSeqFeaturesHeight = new JCheckBoxMenuItem();
183
184   JMenuItem deleteGroups = new JMenuItem();
185
186   JMenuItem delete = new JMenuItem();
187
188   JMenuItem copy = new JMenuItem();
189
190   JMenuItem cut = new JMenuItem();
191
192   JMenu pasteMenu = new JMenu();
193
194   JMenuItem pasteNew = new JMenuItem();
195
196   JMenuItem pasteThis = new JMenuItem();
197
198   public JCheckBoxMenuItem applyToAllGroups = new JCheckBoxMenuItem();
199
200   JMenuItem createPNG = new JMenuItem();
201
202   protected JMenuItem font = new JMenuItem();
203
204   public JCheckBoxMenuItem seqLimits = new JCheckBoxMenuItem();
205
206   JMenuItem epsFile = new JMenuItem();
207
208   JMenuItem LoadtreeMenuItem = new JMenuItem();
209   
210   JMenuItem loadScoresMenuItem = new JMenuItem();
211
212   public JCheckBoxMenuItem scaleAbove = new JCheckBoxMenuItem();
213
214   public JCheckBoxMenuItem scaleLeft = new JCheckBoxMenuItem();
215
216   public JCheckBoxMenuItem scaleRight = new JCheckBoxMenuItem();
217
218   protected JMenuItem modifyPID = new JMenuItem();
219
220   protected JMenuItem modifyConservation = new JMenuItem();
221
222   protected JMenu sortByTreeMenu = new JMenu();
223
224   protected JMenu sort = new JMenu();
225
226   protected JMenu calculateTree = new JMenu();
227
228   JMenu jMenu2 = new JMenu();
229
230   protected JCheckBoxMenuItem padGapsMenuitem = new JCheckBoxMenuItem();
231
232   protected JCheckBoxMenuItem showNpFeatsMenuitem = new JCheckBoxMenuItem();
233
234   protected JCheckBoxMenuItem showDbRefsMenuitem = new JCheckBoxMenuItem();
235
236   protected ButtonGroup colours = new ButtonGroup();
237
238   JMenuItem vamsasStore = new JMenuItem();
239
240   protected JMenuItem showTranslation = new JMenuItem();
241
242   protected JMenuItem extractScores = new JMenuItem();
243
244   protected JMenu showProducts = new JMenu();
245
246   public JMenuItem openFeatureSettings = new JMenuItem();
247
248   JMenuItem fetchSequence = new JMenuItem();
249
250   JMenuItem annotationColour = new JMenuItem();
251
252   protected JMenuItem rnahelicesColour = new JMenuItem();
253
254   JMenuItem associatedData = new JMenuItem();
255
256   protected JCheckBoxMenuItem autoCalculate = new JCheckBoxMenuItem();
257
258   protected JCheckBoxMenuItem sortByTree = new JCheckBoxMenuItem();
259
260   protected JCheckBoxMenuItem listenToViewSelections = new JCheckBoxMenuItem();
261
262   JMenu addSequenceMenu = new JMenu();
263
264   JMenuItem addFromFile = new JMenuItem();
265
266   JMenuItem addFromText = new JMenuItem();
267
268   JMenuItem addFromURL = new JMenuItem();
269
270   JMenuItem exportAnnotations = new JMenuItem();
271
272   JMenuItem exportFeatures = new JMenuItem();
273
274   protected JPanel statusPanel = new JPanel();
275
276   GridLayout gridLayout1 = new GridLayout();
277
278   JMenu jMenu3 = new JMenu();
279
280   JMenuItem showAllSeqs = new JMenuItem();
281
282   JMenuItem showAllColumns = new JMenuItem();
283
284   JMenu hideMenu = new JMenu();
285
286   JMenuItem hideSelSequences = new JMenuItem();
287
288   JMenuItem hideSelColumns = new JMenuItem();
289
290   JMenuItem hideAllButSelection = new JMenuItem();
291
292   JMenuItem hideAllSelection = new JMenuItem();
293
294   JMenuItem showAllhidden = new JMenuItem();
295
296   protected JCheckBoxMenuItem hiddenMarkers = new JCheckBoxMenuItem();
297
298   JMenuItem invertColSel = new JMenuItem();
299
300   protected JTabbedPane tabbedPane = new JTabbedPane();
301
302   JMenuItem save = new JMenuItem();
303
304   protected JMenuItem reload = new JMenuItem();
305
306   JMenuItem newView = new JMenuItem();
307
308   JMenuItem textColour = new JMenuItem();
309
310   JMenu formatMenu = new JMenu();
311
312   JMenu selectMenu = new JMenu();
313
314   protected JCheckBoxMenuItem idRightAlign = new JCheckBoxMenuItem();
315
316   protected JCheckBoxMenuItem centreColumnLabelsMenuItem = new JCheckBoxMenuItem();
317
318   protected JCheckBoxMenuItem followHighlightMenuItem = new JCheckBoxMenuItem();
319
320   protected JMenuItem gatherViews = new JMenuItem();
321
322   protected JMenuItem expandViews = new JMenuItem();
323
324   JMenuItem pageSetup = new JMenuItem();
325
326   JMenuItem alignmentProperties = new JMenuItem();
327
328   JMenu tooltipSettingsMenu = new JMenu();
329
330   private JMenuItem justifyLeftMenuItem = new JMenuItem();
331
332   private JMenuItem justifyRightMenuItem = new JMenuItem();
333
334   JMenu autoAnnMenu = new JMenu();
335
336   protected JCheckBoxMenuItem showGroupConsensus = new JCheckBoxMenuItem();
337
338   protected JCheckBoxMenuItem showGroupConservation = new JCheckBoxMenuItem();
339
340   protected JCheckBoxMenuItem showConsensusHistogram = new JCheckBoxMenuItem();
341
342   protected JCheckBoxMenuItem showSequenceLogo = new JCheckBoxMenuItem();
343
344   protected JCheckBoxMenuItem normaliseSequenceLogo = new JCheckBoxMenuItem();
345
346   protected JCheckBoxMenuItem applyAutoAnnotationSettings = new JCheckBoxMenuItem();
347
348   private JMenuItem grpsFromSelection = new JMenuItem();
349
350   public GAlignFrame()
351   {
352     try
353     {
354       jbInit();
355       setJMenuBar(alignFrameMenuBar);
356
357       // dynamically fill save as menu with available formats
358       for (int i = 0; i < jalview.io.FormatAdapter.WRITEABLE_FORMATS.length; i++)
359       {
360         JMenuItem item = new JMenuItem(
361                 jalview.io.FormatAdapter.WRITEABLE_FORMATS[i]);
362
363         item.addActionListener(new java.awt.event.ActionListener()
364         {
365           public void actionPerformed(ActionEvent e)
366           {
367             outputText_actionPerformed(e);
368           }
369         });
370
371         outputTextboxMenu.add(item);
372       }
373     } catch (Exception e)
374     {
375     }
376
377     if (!new jalview.util.Platform().isAMac())
378     {
379       closeMenuItem.setMnemonic('C');
380       outputTextboxMenu.setMnemonic('T');
381       undoMenuItem.setMnemonic('Z');
382       redoMenuItem.setMnemonic('0');
383       copy.setMnemonic('C');
384       cut.setMnemonic('U');
385       pasteMenu.setMnemonic('P');
386       reload.setMnemonic('R');
387     }
388
389     if (jalview.gui.UserDefinedColours.getUserColourSchemes() != null)
390     {
391       java.util.Enumeration userColours = jalview.gui.UserDefinedColours
392               .getUserColourSchemes().keys();
393
394       while (userColours.hasMoreElements())
395       {
396         final JRadioButtonMenuItem radioItem = new JRadioButtonMenuItem(
397                 userColours.nextElement().toString());
398         radioItem.setName("USER_DEFINED");
399         radioItem.addMouseListener(new MouseAdapter()
400         {
401           public void mousePressed(MouseEvent evt)
402           {
403             if (evt.isControlDown()
404                     || SwingUtilities.isRightMouseButton(evt))
405             {
406               radioItem.removeActionListener(radioItem.getActionListeners()[0]);
407
408               int option = JOptionPane.showInternalConfirmDialog(
409                       jalview.gui.Desktop.desktop,
410                       "Remove from default list?",
411                       "Remove user defined colour",
412                       JOptionPane.YES_NO_OPTION);
413               if (option == JOptionPane.YES_OPTION)
414               {
415                 jalview.gui.UserDefinedColours
416                         .removeColourFromDefaults(radioItem.getText());
417                 colourMenu.remove(radioItem);
418               }
419               else
420               {
421                 radioItem.addActionListener(new ActionListener()
422                 {
423                   public void actionPerformed(ActionEvent evt)
424                   {
425                     userDefinedColour_actionPerformed(evt);
426                   }
427                 });
428               }
429             }
430           }
431         });
432         radioItem.addActionListener(new ActionListener()
433         {
434           public void actionPerformed(ActionEvent evt)
435           {
436             userDefinedColour_actionPerformed(evt);
437           }
438         });
439         colourMenu.insert(radioItem, 15);
440         colours.add(radioItem);
441       }
442     }
443     colours.add(noColourmenuItem);
444     colours.add(clustalColour);
445     colours.add(zappoColour);
446     colours.add(taylorColour);
447     colours.add(hydrophobicityColour);
448     colours.add(helixColour);
449     colours.add(strandColour);
450     colours.add(turnColour);
451     colours.add(buriedColour);
452     colours.add(userDefinedColour);
453     colours.add(PIDColour);
454     colours.add(BLOSUM62Colour);
455     colours.add(nucleotideColour);
456     colours.add(purinePyrimidineColour);
457     // colours.add(covariationColour);
458     colours.add(tcoffeeColour);
459
460     setColourSelected(jalview.bin.Cache
461             .getDefault("DEFAULT_COLOUR", "None"));
462
463   }
464
465   public void setColourSelected(String defaultColour)
466   {
467
468     if (defaultColour != null)
469     {
470       int index = ColourSchemeProperty
471               .getColourIndexFromName(defaultColour);
472
473       switch (index)
474       {
475       case ColourSchemeProperty.CLUSTAL:
476         clustalColour.setSelected(true);
477
478         break;
479
480       case ColourSchemeProperty.BLOSUM:
481         BLOSUM62Colour.setSelected(true);
482
483         break;
484
485       case ColourSchemeProperty.PID:
486         PIDColour.setSelected(true);
487
488         break;
489
490       case ColourSchemeProperty.ZAPPO:
491         zappoColour.setSelected(true);
492
493         break;
494
495       case ColourSchemeProperty.TAYLOR:
496         taylorColour.setSelected(true);
497         break;
498
499       case ColourSchemeProperty.HYDROPHOBIC:
500         hydrophobicityColour.setSelected(true);
501
502         break;
503
504       case ColourSchemeProperty.HELIX:
505         helixColour.setSelected(true);
506
507         break;
508
509       case ColourSchemeProperty.STRAND:
510         strandColour.setSelected(true);
511
512         break;
513
514       case ColourSchemeProperty.TURN:
515         turnColour.setSelected(true);
516
517         break;
518
519       case ColourSchemeProperty.BURIED:
520         buriedColour.setSelected(true);
521
522         break;
523
524       case ColourSchemeProperty.NUCLEOTIDE:
525         nucleotideColour.setSelected(true);
526
527         break;
528         
529       case ColourSchemeProperty.TCOFFEE:
530         tcoffeeColour.setSelected(true);
531         break;
532
533       case ColourSchemeProperty.PURINEPYRIMIDINE:
534         purinePyrimidineColour.setSelected(true);
535
536         break;
537       /*
538        * case ColourSchemeProperty.COVARIATION:
539        * covariationColour.setSelected(true);
540        * 
541        * break;
542        */
543       case ColourSchemeProperty.USER_DEFINED:
544         userDefinedColour.setSelected(true);
545
546         break;
547       case ColourSchemeProperty.NONE:
548       default:
549         noColourmenuItem.setSelected(true);
550         break;
551
552       }
553     }
554
555   }
556
557   private void jbInit() throws Exception
558   {
559     fileMenu.setText("File");
560     saveAs.setText("Save As...");
561     saveAs.setAccelerator(javax.swing.KeyStroke.getKeyStroke(
562             java.awt.event.KeyEvent.VK_S, Toolkit.getDefaultToolkit()
563                     .getMenuShortcutKeyMask()
564                     | java.awt.event.KeyEvent.SHIFT_MASK, false));
565     saveAs.addActionListener(new ActionListener()
566     {
567       public void actionPerformed(ActionEvent e)
568       {
569         saveAs_actionPerformed(e);
570       }
571     });
572     closeMenuItem.setText("Close");
573     closeMenuItem.setAccelerator(javax.swing.KeyStroke.getKeyStroke(
574             java.awt.event.KeyEvent.VK_W, Toolkit.getDefaultToolkit()
575                     .getMenuShortcutKeyMask(), false));
576     closeMenuItem.addActionListener(new java.awt.event.ActionListener()
577     {
578       public void actionPerformed(ActionEvent e)
579       {
580         closeMenuItem_actionPerformed(false);
581       }
582     });
583     editMenu.setText("Edit");
584     viewMenu.setText("View");
585     colourMenu.setText("Colour");
586     calculateMenu.setText("Calculate");
587     webService.setText("Web Service");
588     selectAllSequenceMenuItem.setText("Select All");
589     selectAllSequenceMenuItem.setAccelerator(javax.swing.KeyStroke
590             .getKeyStroke(java.awt.event.KeyEvent.VK_A, Toolkit
591                     .getDefaultToolkit().getMenuShortcutKeyMask(), false));
592     selectAllSequenceMenuItem
593             .addActionListener(new java.awt.event.ActionListener()
594             {
595               public void actionPerformed(ActionEvent e)
596               {
597                 selectAllSequenceMenuItem_actionPerformed(e);
598               }
599             });
600     deselectAllSequenceMenuItem.setText("Deselect All");
601     deselectAllSequenceMenuItem.setAccelerator(javax.swing.KeyStroke
602             .getKeyStroke(java.awt.event.KeyEvent.VK_ESCAPE, 0, false));
603     deselectAllSequenceMenuItem
604             .addActionListener(new java.awt.event.ActionListener()
605             {
606               public void actionPerformed(ActionEvent e)
607               {
608                 deselectAllSequenceMenuItem_actionPerformed(e);
609               }
610             });
611     invertSequenceMenuItem.setText("Invert Sequence Selection");
612     invertSequenceMenuItem.setAccelerator(javax.swing.KeyStroke
613             .getKeyStroke(java.awt.event.KeyEvent.VK_I, Toolkit
614                     .getDefaultToolkit().getMenuShortcutKeyMask(), false));
615     invertSequenceMenuItem
616             .addActionListener(new java.awt.event.ActionListener()
617             {
618               public void actionPerformed(ActionEvent e)
619               {
620                 invertSequenceMenuItem_actionPerformed(e);
621               }
622             });
623     grpsFromSelection.setText("Make Groups for selection");
624     grpsFromSelection.addActionListener(new java.awt.event.ActionListener()
625     {
626       public void actionPerformed(ActionEvent e)
627       {
628         makeGrpsFromSelection_actionPerformed(e);
629       }
630     });
631
632     remove2LeftMenuItem.setText("Remove Left");
633     remove2LeftMenuItem.setAccelerator(javax.swing.KeyStroke.getKeyStroke(
634             java.awt.event.KeyEvent.VK_L, Toolkit.getDefaultToolkit()
635                     .getMenuShortcutKeyMask(), false));
636     remove2LeftMenuItem
637             .addActionListener(new java.awt.event.ActionListener()
638             {
639               public void actionPerformed(ActionEvent e)
640               {
641                 remove2LeftMenuItem_actionPerformed(e);
642               }
643             });
644     remove2RightMenuItem.setText("Remove Right");
645     remove2RightMenuItem.setAccelerator(javax.swing.KeyStroke.getKeyStroke(
646             java.awt.event.KeyEvent.VK_R, Toolkit.getDefaultToolkit()
647                     .getMenuShortcutKeyMask(), false));
648     remove2RightMenuItem
649             .addActionListener(new java.awt.event.ActionListener()
650             {
651               public void actionPerformed(ActionEvent e)
652               {
653                 remove2RightMenuItem_actionPerformed(e);
654               }
655             });
656     removeGappedColumnMenuItem.setText("Remove Empty Columns");
657     removeGappedColumnMenuItem.setAccelerator(javax.swing.KeyStroke
658             .getKeyStroke(java.awt.event.KeyEvent.VK_E, Toolkit
659                     .getDefaultToolkit().getMenuShortcutKeyMask(), false));
660     removeGappedColumnMenuItem
661             .addActionListener(new java.awt.event.ActionListener()
662             {
663               public void actionPerformed(ActionEvent e)
664               {
665                 removeGappedColumnMenuItem_actionPerformed(e);
666               }
667             });
668     removeAllGapsMenuItem.setText("Remove All Gaps");
669     removeAllGapsMenuItem.setAccelerator(javax.swing.KeyStroke
670             .getKeyStroke(java.awt.event.KeyEvent.VK_E, Toolkit
671                     .getDefaultToolkit().getMenuShortcutKeyMask()
672                     | java.awt.event.KeyEvent.SHIFT_MASK, false));
673     removeAllGapsMenuItem
674             .addActionListener(new java.awt.event.ActionListener()
675             {
676               public void actionPerformed(ActionEvent e)
677               {
678                 removeAllGapsMenuItem_actionPerformed(e);
679               }
680             });
681     justifyLeftMenuItem.setText("Left Justify Alignment");
682     justifyLeftMenuItem
683             .addActionListener(new java.awt.event.ActionListener()
684             {
685               public void actionPerformed(ActionEvent e)
686               {
687                 justifyLeftMenuItem_actionPerformed(e);
688               }
689             });
690     justifyRightMenuItem.setText("Right Justify Alignment");
691     justifyRightMenuItem
692             .addActionListener(new java.awt.event.ActionListener()
693             {
694               public void actionPerformed(ActionEvent e)
695               {
696                 justifyRightMenuItem_actionPerformed(e);
697               }
698             });
699     viewBoxesMenuItem.setText("Boxes");
700     viewBoxesMenuItem.setState(true);
701     viewBoxesMenuItem.addActionListener(new java.awt.event.ActionListener()
702     {
703       public void actionPerformed(ActionEvent e)
704       {
705         viewBoxesMenuItem_actionPerformed(e);
706       }
707     });
708     viewTextMenuItem.setText("Text");
709     viewTextMenuItem.setState(true);
710     viewTextMenuItem.addActionListener(new java.awt.event.ActionListener()
711     {
712       public void actionPerformed(ActionEvent e)
713       {
714         viewTextMenuItem_actionPerformed(e);
715       }
716     });
717     showNonconservedMenuItem.setText("Show nonconserved");
718     showNonconservedMenuItem.setState(false);
719     showNonconservedMenuItem
720             .addActionListener(new java.awt.event.ActionListener()
721             {
722               public void actionPerformed(ActionEvent e)
723               {
724                 showUnconservedMenuItem_actionPerformed(e);
725               }
726             });
727     sortPairwiseMenuItem.setText("by Pairwise Identity");
728     sortPairwiseMenuItem
729             .addActionListener(new java.awt.event.ActionListener()
730             {
731               public void actionPerformed(ActionEvent e)
732               {
733                 sortPairwiseMenuItem_actionPerformed(e);
734               }
735             });
736     sortIDMenuItem.setText("by ID");
737     sortIDMenuItem.addActionListener(new java.awt.event.ActionListener()
738     {
739       public void actionPerformed(ActionEvent e)
740       {
741         sortIDMenuItem_actionPerformed(e);
742       }
743     });
744     sortLengthMenuItem.setText("By Length");
745     sortLengthMenuItem
746             .addActionListener(new java.awt.event.ActionListener()
747             {
748               public void actionPerformed(ActionEvent e)
749               {
750                 sortLengthMenuItem_actionPerformed(e);
751               }
752             });
753     sortGroupMenuItem.setText("by Group");
754     sortGroupMenuItem.addActionListener(new java.awt.event.ActionListener()
755     {
756       public void actionPerformed(ActionEvent e)
757       {
758         sortGroupMenuItem_actionPerformed(e);
759       }
760     });
761     removeRedundancyMenuItem.setText("Remove Redundancy...");
762     removeRedundancyMenuItem.setAccelerator(javax.swing.KeyStroke
763             .getKeyStroke(java.awt.event.KeyEvent.VK_D, Toolkit
764                     .getDefaultToolkit().getMenuShortcutKeyMask(), false));
765     removeRedundancyMenuItem
766             .addActionListener(new java.awt.event.ActionListener()
767             {
768               public void actionPerformed(ActionEvent e)
769               {
770                 removeRedundancyMenuItem_actionPerformed(e);
771               }
772             });
773     pairwiseAlignmentMenuItem.setText("Pairwise Alignments...");
774     pairwiseAlignmentMenuItem
775             .addActionListener(new java.awt.event.ActionListener()
776             {
777               public void actionPerformed(ActionEvent e)
778               {
779                 pairwiseAlignmentMenuItem_actionPerformed(e);
780               }
781             });
782     PCAMenuItem.setText("Principal Component Analysis");
783     PCAMenuItem.addActionListener(new java.awt.event.ActionListener()
784     {
785       public void actionPerformed(ActionEvent e)
786       {
787         PCAMenuItem_actionPerformed(e);
788       }
789     });
790     averageDistanceTreeMenuItem
791             .setText("Average Distance Using % Identity");
792     averageDistanceTreeMenuItem
793             .addActionListener(new java.awt.event.ActionListener()
794             {
795               public void actionPerformed(ActionEvent e)
796               {
797                 averageDistanceTreeMenuItem_actionPerformed(e);
798               }
799             });
800     neighbourTreeMenuItem.setText("Neighbour Joining Using % Identity");
801     neighbourTreeMenuItem
802             .addActionListener(new java.awt.event.ActionListener()
803             {
804               public void actionPerformed(ActionEvent e)
805               {
806                 neighbourTreeMenuItem_actionPerformed(e);
807               }
808             });
809     this.getContentPane().setLayout(borderLayout1);
810     alignFrameMenuBar.setFont(new java.awt.Font("Verdana", 0, 11));
811     statusBar.setBackground(Color.white);
812     statusBar.setFont(new java.awt.Font("Verdana", 0, 11));
813     statusBar.setBorder(BorderFactory.createLineBorder(Color.black));
814     statusBar.setText("Status bar");
815     outputTextboxMenu.setText("Output to Textbox");
816     clustalColour.setText("Clustalx");
817
818     clustalColour.addActionListener(new java.awt.event.ActionListener()
819     {
820       public void actionPerformed(ActionEvent e)
821       {
822         clustalColour_actionPerformed(e);
823       }
824     });
825     zappoColour.setText("Zappo");
826     zappoColour.addActionListener(new java.awt.event.ActionListener()
827     {
828       public void actionPerformed(ActionEvent e)
829       {
830         zappoColour_actionPerformed(e);
831       }
832     });
833     taylorColour.setText("Taylor");
834     taylorColour.addActionListener(new java.awt.event.ActionListener()
835     {
836       public void actionPerformed(ActionEvent e)
837       {
838         taylorColour_actionPerformed(e);
839       }
840     });
841     hydrophobicityColour.setText("Hydrophobicity");
842     hydrophobicityColour
843             .addActionListener(new java.awt.event.ActionListener()
844             {
845               public void actionPerformed(ActionEvent e)
846               {
847                 hydrophobicityColour_actionPerformed(e);
848               }
849             });
850     helixColour.setText("Helix Propensity");
851     helixColour.addActionListener(new java.awt.event.ActionListener()
852     {
853       public void actionPerformed(ActionEvent e)
854       {
855         helixColour_actionPerformed(e);
856       }
857     });
858     strandColour.setText("Strand Propensity");
859     strandColour.addActionListener(new java.awt.event.ActionListener()
860     {
861       public void actionPerformed(ActionEvent e)
862       {
863         strandColour_actionPerformed(e);
864       }
865     });
866     turnColour.setText("Turn Propensity");
867     turnColour.addActionListener(new java.awt.event.ActionListener()
868     {
869       public void actionPerformed(ActionEvent e)
870       {
871         turnColour_actionPerformed(e);
872       }
873     });
874     buriedColour.setText("Buried Index");
875     buriedColour.addActionListener(new java.awt.event.ActionListener()
876     {
877       public void actionPerformed(ActionEvent e)
878       {
879         buriedColour_actionPerformed(e);
880       }
881     });
882     userDefinedColour.setText("User Defined...");
883     userDefinedColour.addActionListener(new java.awt.event.ActionListener()
884     {
885       public void actionPerformed(ActionEvent e)
886       {
887         userDefinedColour_actionPerformed(e);
888       }
889     });
890     PIDColour.setText("Percentage Identity");
891     PIDColour.addActionListener(new java.awt.event.ActionListener()
892     {
893       public void actionPerformed(ActionEvent e)
894       {
895         PIDColour_actionPerformed(e);
896       }
897     });
898     BLOSUM62Colour.setText("BLOSUM62 Score");
899     BLOSUM62Colour.addActionListener(new java.awt.event.ActionListener()
900     {
901       public void actionPerformed(ActionEvent e)
902       {
903         BLOSUM62Colour_actionPerformed(e);
904       }
905     });
906     nucleotideColour.setText("Nucleotide");
907     nucleotideColour.addActionListener(new java.awt.event.ActionListener()
908     {
909       public void actionPerformed(ActionEvent e)
910       {
911         nucleotideColour_actionPerformed(e);
912       }
913     });
914
915     purinePyrimidineColour.setText("Purine/Pyrimidine");
916     purinePyrimidineColour
917             .addActionListener(new java.awt.event.ActionListener()
918             {
919               public void actionPerformed(ActionEvent e)
920               {
921                 purinePyrimidineColour_actionPerformed(e);
922               }
923             });
924     /*
925      * covariationColour.setText("Covariation");
926      * covariationColour.addActionListener(new java.awt.event.ActionListener() {
927      * public void actionPerformed(ActionEvent e) {
928      * covariationColour_actionPerformed(e); } });
929      */
930
931     avDistanceTreeBlosumMenuItem.setText("Average Distance Using BLOSUM62");
932     avDistanceTreeBlosumMenuItem
933             .addActionListener(new java.awt.event.ActionListener()
934             {
935               public void actionPerformed(ActionEvent e)
936               {
937                 avTreeBlosumMenuItem_actionPerformed(e);
938               }
939             });
940     njTreeBlosumMenuItem.setText("Neighbour Joining using BLOSUM62");
941     njTreeBlosumMenuItem
942             .addActionListener(new java.awt.event.ActionListener()
943             {
944               public void actionPerformed(ActionEvent e)
945               {
946                 njTreeBlosumMenuItem_actionPerformed(e);
947               }
948             });
949     annotationPanelMenuItem.setActionCommand("");
950     annotationPanelMenuItem.setText("Show Annotations");
951     annotationPanelMenuItem.setState(jalview.bin.Cache.getDefault(
952             "SHOW_ANNOTATIONS", true));
953     annotationPanelMenuItem
954             .addActionListener(new java.awt.event.ActionListener()
955             {
956               public void actionPerformed(ActionEvent e)
957               {
958                 annotationPanelMenuItem_actionPerformed(e);
959               }
960             });
961     colourTextMenuItem.setText("Colour Text");
962     colourTextMenuItem
963             .addActionListener(new java.awt.event.ActionListener()
964             {
965               public void actionPerformed(ActionEvent e)
966               {
967                 colourTextMenuItem_actionPerformed(e);
968               }
969             });
970     htmlMenuItem.setText("HTML");
971     htmlMenuItem.addActionListener(new java.awt.event.ActionListener()
972     {
973       public void actionPerformed(ActionEvent e)
974       {
975         htmlMenuItem_actionPerformed(e);
976       }
977     });
978     overviewMenuItem.setText("Overview Window");
979     overviewMenuItem.addActionListener(new java.awt.event.ActionListener()
980     {
981       public void actionPerformed(ActionEvent e)
982       {
983         overviewMenuItem_actionPerformed(e);
984       }
985     });
986     undoMenuItem.setEnabled(false);
987     undoMenuItem.setText("Undo");
988     undoMenuItem.setAccelerator(javax.swing.KeyStroke.getKeyStroke(
989             java.awt.event.KeyEvent.VK_Z, Toolkit.getDefaultToolkit()
990                     .getMenuShortcutKeyMask(), false));
991     undoMenuItem.addActionListener(new java.awt.event.ActionListener()
992     {
993       public void actionPerformed(ActionEvent e)
994       {
995         undoMenuItem_actionPerformed(e);
996       }
997     });
998     redoMenuItem.setEnabled(false);
999     redoMenuItem.setText("Redo");
1000     redoMenuItem.setAccelerator(javax.swing.KeyStroke.getKeyStroke(
1001             java.awt.event.KeyEvent.VK_Y, Toolkit.getDefaultToolkit()
1002                     .getMenuShortcutKeyMask(), false));
1003     redoMenuItem.addActionListener(new java.awt.event.ActionListener()
1004     {
1005       public void actionPerformed(ActionEvent e)
1006       {
1007         redoMenuItem_actionPerformed(e);
1008       }
1009     });
1010     conservationMenuItem.setText("By Conservation");
1011     conservationMenuItem
1012             .addActionListener(new java.awt.event.ActionListener()
1013             {
1014               public void actionPerformed(ActionEvent e)
1015               {
1016                 conservationMenuItem_actionPerformed(e);
1017               }
1018             });
1019     noColourmenuItem.setText("None");
1020     noColourmenuItem.addActionListener(new java.awt.event.ActionListener()
1021     {
1022       public void actionPerformed(ActionEvent e)
1023       {
1024         noColourmenuItem_actionPerformed(e);
1025       }
1026     });
1027     wrapMenuItem.setText("Wrap");
1028     wrapMenuItem.addActionListener(new java.awt.event.ActionListener()
1029     {
1030       public void actionPerformed(ActionEvent e)
1031       {
1032         wrapMenuItem_actionPerformed(e);
1033       }
1034     });
1035     printMenuItem.setText("Print ...");
1036     printMenuItem.setAccelerator(javax.swing.KeyStroke.getKeyStroke(
1037             java.awt.event.KeyEvent.VK_P, Toolkit.getDefaultToolkit()
1038                     .getMenuShortcutKeyMask(), false));
1039     printMenuItem.addActionListener(new java.awt.event.ActionListener()
1040     {
1041       public void actionPerformed(ActionEvent e)
1042       {
1043         printMenuItem_actionPerformed(e);
1044       }
1045     });
1046     renderGapsMenuItem.setText("Show Gaps");
1047     renderGapsMenuItem.setState(true);
1048     renderGapsMenuItem
1049             .addActionListener(new java.awt.event.ActionListener()
1050             {
1051               public void actionPerformed(ActionEvent e)
1052               {
1053                 renderGapsMenuItem_actionPerformed(e);
1054               }
1055             });
1056     findMenuItem.setText("Find...");
1057     findMenuItem.setAccelerator(javax.swing.KeyStroke.getKeyStroke(
1058             java.awt.event.KeyEvent.VK_F, Toolkit.getDefaultToolkit()
1059                     .getMenuShortcutKeyMask(), false));
1060     findMenuItem.addActionListener(new java.awt.event.ActionListener()
1061     {
1062       public void actionPerformed(ActionEvent e)
1063       {
1064         findMenuItem_actionPerformed(e);
1065       }
1066     });
1067     abovePIDThreshold.setText("Above Identity Threshold");
1068     abovePIDThreshold.addActionListener(new java.awt.event.ActionListener()
1069     {
1070       public void actionPerformed(ActionEvent e)
1071       {
1072         abovePIDThreshold_actionPerformed(e);
1073       }
1074     });
1075     showSeqFeatures.setText("Show Sequence Features");
1076     showSeqFeatures.addActionListener(new ActionListener()
1077     {
1078       public void actionPerformed(ActionEvent actionEvent)
1079       {
1080         showSeqFeatures_actionPerformed(actionEvent);
1081       }
1082     });
1083     /*
1084      * showSeqFeaturesHeight.setText("Vary Sequence Feature Height");
1085      * showSeqFeaturesHeight.addActionListener(new ActionListener() { public
1086      * void actionPerformed(ActionEvent actionEvent) {
1087      * showSeqFeaturesHeight_actionPerformed(actionEvent); } });
1088      */
1089     showDbRefsMenuitem.setText("Show Database Refs");
1090     showDbRefsMenuitem.addActionListener(new ActionListener()
1091     {
1092
1093       public void actionPerformed(ActionEvent e)
1094       {
1095         showDbRefs_actionPerformed(e);
1096       }
1097
1098     });
1099     showNpFeatsMenuitem.setText("Show Non-Positional Features");
1100     showNpFeatsMenuitem.addActionListener(new ActionListener()
1101     {
1102
1103       public void actionPerformed(ActionEvent e)
1104       {
1105         showNpFeats_actionPerformed(e);
1106       }
1107
1108     });
1109     showGroupConservation.setText("Group Conservation");
1110     showGroupConservation.addActionListener(new ActionListener()
1111     {
1112
1113       public void actionPerformed(ActionEvent e)
1114       {
1115         showGroupConservation_actionPerformed(e);
1116       }
1117
1118     });
1119
1120     showGroupConsensus.setText("Group Consensus");
1121     showGroupConsensus.addActionListener(new ActionListener()
1122     {
1123
1124       public void actionPerformed(ActionEvent e)
1125       {
1126         showGroupConsensus_actionPerformed(e);
1127       }
1128
1129     });
1130     showConsensusHistogram.setText("Show Consensus Histogram");
1131     showConsensusHistogram.addActionListener(new ActionListener()
1132     {
1133
1134       public void actionPerformed(ActionEvent e)
1135       {
1136         showConsensusHistogram_actionPerformed(e);
1137       }
1138
1139     });
1140     showSequenceLogo.setText("Show Consensus Logo");
1141     showSequenceLogo.addActionListener(new ActionListener()
1142     {
1143
1144       public void actionPerformed(ActionEvent e)
1145       {
1146         showSequenceLogo_actionPerformed(e);
1147       }
1148
1149     });
1150     normaliseSequenceLogo.setText("Normalise Consensus Logo");
1151     normaliseSequenceLogo.addActionListener(new ActionListener()
1152     {
1153
1154       public void actionPerformed(ActionEvent e)
1155       {
1156         normaliseSequenceLogo_actionPerformed(e);
1157       }
1158
1159     });
1160     applyAutoAnnotationSettings.setText("Apply to all groups");
1161     applyAutoAnnotationSettings.setState(false);
1162     applyAutoAnnotationSettings.setVisible(true);
1163     applyAutoAnnotationSettings.addActionListener(new ActionListener()
1164     {
1165
1166       public void actionPerformed(ActionEvent e)
1167       {
1168         applyAutoAnnotationSettings_actionPerformed(e);
1169       }
1170
1171     });
1172
1173     nucleotideColour.setText("Nucleotide");
1174     nucleotideColour.addActionListener(new java.awt.event.ActionListener()
1175     {
1176       public void actionPerformed(ActionEvent e)
1177       {
1178         nucleotideColour_actionPerformed(e);
1179       }
1180     });
1181     
1182     tcoffeeColour.setText("T-Coffee scores");
1183     tcoffeeColour.setEnabled(false);
1184     tcoffeeColour.addActionListener( new ActionListener() {
1185                 
1186                 @Override
1187                 public void actionPerformed(ActionEvent e) {
1188                         tcoffeeColorScheme_actionPerformed(e);
1189                 }
1190         } );
1191     
1192     
1193     deleteGroups.setText("Undefine groups");
1194     deleteGroups.setAccelerator(javax.swing.KeyStroke.getKeyStroke(
1195             java.awt.event.KeyEvent.VK_U, Toolkit.getDefaultToolkit()
1196                     .getMenuShortcutKeyMask(), false));
1197     deleteGroups.addActionListener(new java.awt.event.ActionListener()
1198     {
1199       public void actionPerformed(ActionEvent e)
1200       {
1201         deleteGroups_actionPerformed(e);
1202       }
1203     });
1204     copy.setText("Copy");
1205     copy.setAccelerator(javax.swing.KeyStroke.getKeyStroke(
1206             java.awt.event.KeyEvent.VK_C, Toolkit.getDefaultToolkit()
1207                     .getMenuShortcutKeyMask(), false));
1208
1209     copy.addActionListener(new java.awt.event.ActionListener()
1210     {
1211       public void actionPerformed(ActionEvent e)
1212       {
1213         copy_actionPerformed(e);
1214       }
1215     });
1216     cut.setText("Cut");
1217     cut.setAccelerator(javax.swing.KeyStroke.getKeyStroke(
1218             java.awt.event.KeyEvent.VK_X, Toolkit.getDefaultToolkit()
1219                     .getMenuShortcutKeyMask(), false));
1220     cut.addActionListener(new java.awt.event.ActionListener()
1221     {
1222       public void actionPerformed(ActionEvent e)
1223       {
1224         cut_actionPerformed(e);
1225       }
1226     });
1227     delete.setText("Delete");
1228     delete.setAccelerator(javax.swing.KeyStroke.getKeyStroke(
1229             java.awt.event.KeyEvent.VK_BACK_SPACE, 0, false));
1230     delete.addActionListener(new java.awt.event.ActionListener()
1231     {
1232       public void actionPerformed(ActionEvent e)
1233       {
1234         delete_actionPerformed(e);
1235       }
1236     });
1237     pasteMenu.setText("Paste");
1238     pasteNew.setText("To New Alignment");
1239     pasteNew.setAccelerator(javax.swing.KeyStroke.getKeyStroke(
1240             java.awt.event.KeyEvent.VK_V, Toolkit.getDefaultToolkit()
1241                     .getMenuShortcutKeyMask()
1242                     | java.awt.event.KeyEvent.SHIFT_MASK, false));
1243     pasteNew.addActionListener(new java.awt.event.ActionListener()
1244     {
1245       public void actionPerformed(ActionEvent e)
1246       {
1247         pasteNew_actionPerformed(e);
1248       }
1249     });
1250     pasteThis.setText("Add To This Alignment");
1251     pasteThis.setAccelerator(javax.swing.KeyStroke.getKeyStroke(
1252             java.awt.event.KeyEvent.VK_V, Toolkit.getDefaultToolkit()
1253                     .getMenuShortcutKeyMask(), false));
1254     pasteThis.addActionListener(new java.awt.event.ActionListener()
1255     {
1256       public void actionPerformed(ActionEvent e)
1257       {
1258         pasteThis_actionPerformed(e);
1259       }
1260     });
1261     applyToAllGroups.setText("Apply Colour To All Groups");
1262     applyToAllGroups.addActionListener(new java.awt.event.ActionListener()
1263     {
1264       public void actionPerformed(ActionEvent e)
1265       {
1266         applyToAllGroups_actionPerformed(e);
1267       }
1268     });
1269     createPNG.addActionListener(new java.awt.event.ActionListener()
1270     {
1271       public void actionPerformed(ActionEvent e)
1272       {
1273         createPNG(null);
1274       }
1275     });
1276     createPNG.setActionCommand("Save As PNG Image");
1277     createPNG.setText("PNG");
1278     font.setText("Font...");
1279     font.addActionListener(new java.awt.event.ActionListener()
1280     {
1281       public void actionPerformed(ActionEvent e)
1282       {
1283         font_actionPerformed(e);
1284       }
1285     });
1286
1287     seqLimits.setText("Show Sequence Limits");
1288     seqLimits.setState(jalview.bin.Cache.getDefault("SHOW_JVSUFFIX", true));
1289     seqLimits.addActionListener(new java.awt.event.ActionListener()
1290     {
1291       public void actionPerformed(ActionEvent e)
1292       {
1293         seqLimit_actionPerformed(e);
1294       }
1295     });
1296     epsFile.setText("EPS");
1297     epsFile.addActionListener(new java.awt.event.ActionListener()
1298     {
1299       public void actionPerformed(ActionEvent e)
1300       {
1301         createEPS(null);
1302       }
1303     });
1304     LoadtreeMenuItem.setActionCommand("Load a tree for this sequence set");
1305     LoadtreeMenuItem.setText("Load Associated Tree"); 
1306     LoadtreeMenuItem.addActionListener(new java.awt.event.ActionListener()
1307     {
1308       public void actionPerformed(ActionEvent e)
1309       {
1310         LoadtreeMenuItem_actionPerformed(e);
1311       }
1312     });
1313     
1314     loadScoresMenuItem.setActionCommand("Load T-Coffee scores");
1315     loadScoresMenuItem.setText("Load T-Coffee scores");
1316     loadScoresMenuItem.addActionListener(new ActionListener() {
1317                 
1318                 @Override
1319                 public void actionPerformed(ActionEvent e) {
1320                         loadScores_actionPerformed(e);
1321                 }
1322         });
1323     
1324     scaleAbove.setVisible(false);
1325     scaleAbove.setText("Scale Above");
1326     scaleAbove.addActionListener(new java.awt.event.ActionListener()
1327     {
1328       public void actionPerformed(ActionEvent e)
1329       {
1330         scaleAbove_actionPerformed(e);
1331       }
1332     });
1333     scaleLeft.setVisible(false);
1334     scaleLeft.setSelected(true);
1335     scaleLeft.setText("Scale Left");
1336     scaleLeft.addActionListener(new java.awt.event.ActionListener()
1337     {
1338       public void actionPerformed(ActionEvent e)
1339       {
1340         scaleLeft_actionPerformed(e);
1341       }
1342     });
1343     scaleRight.setVisible(false);
1344     scaleRight.setSelected(true);
1345     scaleRight.setText("Scale Right");
1346     scaleRight.addActionListener(new java.awt.event.ActionListener()
1347     {
1348       public void actionPerformed(ActionEvent e)
1349       {
1350         scaleRight_actionPerformed(e);
1351       }
1352     });
1353     centreColumnLabelsMenuItem.setVisible(true);
1354     centreColumnLabelsMenuItem.setState(false);
1355     centreColumnLabelsMenuItem.setText("Centre Column Labels");
1356     centreColumnLabelsMenuItem
1357             .addActionListener(new java.awt.event.ActionListener()
1358             {
1359               public void actionPerformed(ActionEvent e)
1360               {
1361                 centreColumnLabels_actionPerformed(e);
1362               }
1363             });
1364     followHighlightMenuItem.setVisible(true);
1365     followHighlightMenuItem.setState(true);
1366     followHighlightMenuItem.setText("Automatic Scrolling");
1367     followHighlightMenuItem.addActionListener(new ActionListener()
1368     {
1369
1370       public void actionPerformed(ActionEvent e)
1371       {
1372         followHighlight_actionPerformed();
1373       }
1374
1375     });
1376
1377     modifyPID.setText("Modify Identity Threshold...");
1378     modifyPID.addActionListener(new java.awt.event.ActionListener()
1379     {
1380       public void actionPerformed(ActionEvent e)
1381       {
1382         modifyPID_actionPerformed(e);
1383       }
1384     });
1385     modifyConservation.setText("Modify Conservation Threshold...");
1386     modifyConservation
1387             .addActionListener(new java.awt.event.ActionListener()
1388             {
1389               public void actionPerformed(ActionEvent e)
1390               {
1391                 modifyConservation_actionPerformed(e);
1392               }
1393             });
1394     sortByTreeMenu.setText("By Tree Order");
1395     sort.setText("Sort");
1396     sort.addMenuListener(new MenuListener()
1397     {
1398       public void menuSelected(MenuEvent e)
1399       {
1400         buildTreeMenu();
1401       }
1402
1403       public void menuDeselected(MenuEvent e)
1404       {
1405       }
1406
1407       public void menuCanceled(MenuEvent e)
1408       {
1409       }
1410     });
1411     sortByAnnotScore.setText("by Score");
1412     sort.add(sortByAnnotScore);
1413     sortByAnnotScore.addMenuListener(new javax.swing.event.MenuListener()
1414     {
1415
1416       public void menuCanceled(MenuEvent e)
1417       {
1418       }
1419
1420       public void menuDeselected(MenuEvent e)
1421       {
1422       }
1423
1424       public void menuSelected(MenuEvent e)
1425       {
1426         buildSortByAnnotationScoresMenu();
1427       }
1428     });
1429     sortByAnnotScore.setVisible(false);
1430
1431     calculateTree.setText("Calculate Tree");
1432
1433     jMenu2.setText("Export Image");
1434     padGapsMenuitem.setText("Pad Gaps");
1435     padGapsMenuitem.setState(jalview.bin.Cache
1436             .getDefault("PAD_GAPS", false));
1437     padGapsMenuitem.addActionListener(new ActionListener()
1438     {
1439       public void actionPerformed(ActionEvent e)
1440       {
1441         padGapsMenuitem_actionPerformed(e);
1442       }
1443     });
1444     vamsasStore.setVisible(false);
1445     vamsasStore.setText("VAMSAS store");
1446     vamsasStore.addActionListener(new ActionListener()
1447     {
1448       public void actionPerformed(ActionEvent e)
1449       {
1450         vamsasStore_actionPerformed(e);
1451       }
1452     });
1453     showTranslation.setText("Translate cDNA");
1454     showTranslation.addActionListener(new ActionListener()
1455     {
1456       public void actionPerformed(ActionEvent e)
1457       {
1458         showTranslation_actionPerformed(e);
1459       }
1460     });
1461     extractScores.setText("Extract Scores...");
1462     extractScores.addActionListener(new ActionListener()
1463     {
1464       public void actionPerformed(ActionEvent e)
1465       {
1466         extractScores_actionPerformed(e);
1467       }
1468     });
1469     extractScores.setVisible(true); // JBPNote: TODO: make gui for regex based
1470     // score extraction
1471     showProducts.setText("Get Cross References");
1472     /*
1473      * showProducts.addActionListener(new ActionListener() {
1474      * 
1475      * public void actionPerformed(ActionEvent e) {
1476      * showProducts_actionPerformed(e); } });
1477      */
1478     openFeatureSettings.setText("Feature Settings...");
1479     openFeatureSettings.addActionListener(new ActionListener()
1480     {
1481       public void actionPerformed(ActionEvent e)
1482       {
1483         featureSettings_actionPerformed(e);
1484       }
1485     });
1486     fetchSequence.setText("Fetch Sequence(s)...");
1487     fetchSequence.addActionListener(new ActionListener()
1488     {
1489       public void actionPerformed(ActionEvent e)
1490       {
1491         fetchSequence_actionPerformed(e);
1492       }
1493     });
1494
1495     annotationColour.setText("By Annotation...");
1496     annotationColour.addActionListener(new ActionListener()
1497     {
1498       public void actionPerformed(ActionEvent e)
1499       {
1500         annotationColour_actionPerformed(e);
1501       }
1502     });
1503
1504     rnahelicesColour.setText("By RNA helices");
1505     rnahelicesColour.addActionListener(new ActionListener()
1506     {
1507       public void actionPerformed(ActionEvent e)
1508       {
1509         rnahelicesColour_actionPerformed(e);
1510       }
1511     });
1512
1513     associatedData.setText("Load Features / Annotations");
1514     associatedData.addActionListener(new ActionListener()
1515     {
1516       public void actionPerformed(ActionEvent e)
1517       {
1518         associatedData_actionPerformed(e);
1519       }
1520     });
1521     autoCalculate.setText("Autocalculate Consensus");
1522     autoCalculate.setState(jalview.bin.Cache.getDefault(
1523             "AUTO_CALC_CONSENSUS", true));
1524     autoCalculate.addActionListener(new ActionListener()
1525     {
1526       public void actionPerformed(ActionEvent e)
1527       {
1528         autoCalculate_actionPerformed(e);
1529       }
1530     });
1531     sortByTree.setText("Sort Alignment With New Tree");
1532     sortByTree.setToolTipText("<html>Enable this to automatically sort<br>the alignment when you open<br> a new tree.");
1533     sortByTree.setState(jalview.bin.Cache.getDefault(
1534             "SORT_BY_TREE", false));
1535     sortByTree.addActionListener(new ActionListener()
1536     {
1537       public void actionPerformed(ActionEvent e)
1538       {
1539         sortByTreeOption_actionPerformed(e);
1540       }
1541     });
1542
1543     listenToViewSelections.setText("Listen for selections");
1544     listenToViewSelections.setToolTipText("<html>When selected, selections in this view will mirror<br>selections made on the same sequences in other views.");
1545     listenToViewSelections.setState(false); 
1546     listenToViewSelections.addActionListener(new ActionListener()
1547     {
1548       public void actionPerformed(ActionEvent e)
1549       {
1550         listenToViewSelections_actionPerformed(e);
1551       }
1552     });
1553
1554     addSequenceMenu.setText("Add Sequences");
1555     addFromFile.setText("From File");
1556     addFromFile.addActionListener(new ActionListener()
1557     {
1558       public void actionPerformed(ActionEvent e)
1559       {
1560         addFromFile_actionPerformed(e);
1561       }
1562     });
1563     addFromText.setText("From Textbox");
1564     addFromText.addActionListener(new ActionListener()
1565     {
1566       public void actionPerformed(ActionEvent e)
1567       {
1568         addFromText_actionPerformed(e);
1569       }
1570     });
1571     addFromURL.setText("From URL");
1572     addFromURL.addActionListener(new ActionListener()
1573     {
1574       public void actionPerformed(ActionEvent e)
1575       {
1576         addFromURL_actionPerformed(e);
1577       }
1578     });
1579     exportFeatures.setText("Export Features...");
1580     exportFeatures.addActionListener(new ActionListener()
1581     {
1582       public void actionPerformed(ActionEvent e)
1583       {
1584         exportFeatures_actionPerformed(e);
1585       }
1586     });
1587     exportAnnotations.setText("Export Annotations...");
1588     exportAnnotations.addActionListener(new ActionListener()
1589     {
1590       public void actionPerformed(ActionEvent e)
1591       {
1592         exportAnnotations_actionPerformed(e);
1593       }
1594     });
1595     statusPanel.setLayout(gridLayout1);
1596     jMenu3.setText("Show");
1597     showAllSeqs.setText("All Sequences");
1598     showAllSeqs.setToolTipText("Shift+H toggles sequence visiblity.");
1599     showAllSeqs.addActionListener(new ActionListener()
1600     {
1601       public void actionPerformed(ActionEvent e)
1602       {
1603         showAllSeqs_actionPerformed(e);
1604       }
1605     });
1606     showAllColumns.setText("All Columns");
1607     showAllColumns.setToolTipText("Ctrl+H toggles column visiblity.");
1608     showAllColumns.addActionListener(new ActionListener()
1609     {
1610       public void actionPerformed(ActionEvent e)
1611       {
1612         showAllColumns_actionPerformed(e);
1613       }
1614     });
1615     hideMenu.setText("Hide");
1616     hideSelSequences.setText("Selected Sequences");
1617     hideSelSequences.setToolTipText("Shift+H toggles sequence visiblity.");
1618     hideSelSequences.addActionListener(new ActionListener()
1619     {
1620       public void actionPerformed(ActionEvent e)
1621       {
1622         hideSelSequences_actionPerformed(e);
1623       }
1624     });
1625     hideSelColumns.setText("Selected Columns");
1626     hideSelColumns.setToolTipText("Ctrl+H toggles column visiblity.");
1627     hideSelColumns.addActionListener(new ActionListener()
1628     {
1629       public void actionPerformed(ActionEvent e)
1630       {
1631         hideSelColumns_actionPerformed(e);
1632       }
1633     });
1634     hideAllSelection.setText("Selected Region");
1635     hideAllSelection.addActionListener(new ActionListener()
1636     {
1637       public void actionPerformed(ActionEvent e)
1638       {
1639         hideAllSelection_actionPerformed(e);
1640       }
1641     });
1642     // TODO: should be hidden if no selection exists.
1643     hideAllButSelection.setText("All but Selected Region (Shift+Ctrl+H)");
1644     hideAllButSelection.addActionListener(new ActionListener()
1645     {
1646       public void actionPerformed(ActionEvent e)
1647       {
1648         hideAllButSelection_actionPerformed(e);
1649       }
1650     });
1651     showAllhidden.setText("All Sequences and Columns");
1652     showAllhidden
1653             .setToolTipText("H toggles visibility of hidden or selected regions.");
1654     showAllhidden.addActionListener(new ActionListener()
1655     {
1656       public void actionPerformed(ActionEvent e)
1657       {
1658         showAllhidden_actionPerformed(e);
1659       }
1660     });
1661
1662     hiddenMarkers.setText("Show Hidden Markers");
1663     hiddenMarkers.addActionListener(new ActionListener()
1664     {
1665       public void actionPerformed(ActionEvent e)
1666       {
1667         hiddenMarkers_actionPerformed(e);
1668       }
1669     });
1670     invertColSel.setText("Invert Column Selection");
1671     invertColSel.setAccelerator(javax.swing.KeyStroke.getKeyStroke(
1672             java.awt.event.KeyEvent.VK_I, Toolkit.getDefaultToolkit()
1673                     .getMenuShortcutKeyMask()
1674                     | java.awt.event.KeyEvent.ALT_MASK, false));
1675     invertColSel.addActionListener(new ActionListener()
1676     {
1677       public void actionPerformed(ActionEvent e)
1678       {
1679         invertColSel_actionPerformed(e);
1680       }
1681     });
1682     tabbedPane.addChangeListener(new javax.swing.event.ChangeListener()
1683     {
1684       public void stateChanged(ChangeEvent evt)
1685       {
1686         JTabbedPane pane = (JTabbedPane) evt.getSource();
1687         int sel = pane.getSelectedIndex();
1688         tabSelectionChanged(sel);
1689       }
1690     });
1691     tabbedPane.addMouseListener(new MouseAdapter()
1692     {
1693       public void mousePressed(MouseEvent e)
1694       {
1695         tabbedPane_mousePressed(e);
1696       }
1697     });
1698     tabbedPane.addFocusListener(new FocusAdapter()
1699     {
1700       public void focusGained(FocusEvent e)
1701       {
1702         tabbedPane_focusGained(e);
1703       }
1704     });
1705     save.setText("Save");
1706     save.setAccelerator(javax.swing.KeyStroke.getKeyStroke(
1707             java.awt.event.KeyEvent.VK_S, Toolkit.getDefaultToolkit()
1708                     .getMenuShortcutKeyMask(), false));
1709     save.addActionListener(new ActionListener()
1710     {
1711       public void actionPerformed(ActionEvent e)
1712       {
1713         save_actionPerformed(e);
1714       }
1715     });
1716     reload.setEnabled(false);
1717     reload.setText("Reload");
1718     reload.addActionListener(new ActionListener()
1719     {
1720       public void actionPerformed(ActionEvent e)
1721       {
1722         reload_actionPerformed(e);
1723       }
1724     });
1725     newView.setText("New View");
1726     newView.setAccelerator(javax.swing.KeyStroke.getKeyStroke(
1727             java.awt.event.KeyEvent.VK_T, Toolkit.getDefaultToolkit()
1728                     .getMenuShortcutKeyMask(), false));
1729     newView.addActionListener(new ActionListener()
1730     {
1731       public void actionPerformed(ActionEvent e)
1732       {
1733         newView_actionPerformed(e);
1734       }
1735     });
1736     tabbedPane.setToolTipText("<html><i> Right-click to rename tab"
1737             + "<br> Press X to eXpand tabs, G to reGroup.</i></html>");
1738     textColour.setText("Colour Text ...");
1739     textColour.addActionListener(new ActionListener()
1740     {
1741       public void actionPerformed(ActionEvent e)
1742       {
1743         textColour_actionPerformed(e);
1744       }
1745     });
1746     formatMenu.setText("Format");
1747     selectMenu.setText("Select");
1748     idRightAlign.setText("Right Align Sequence Id");
1749     idRightAlign.addActionListener(new ActionListener()
1750     {
1751       public void actionPerformed(ActionEvent e)
1752       {
1753         idRightAlign_actionPerformed(e);
1754       }
1755     });
1756     gatherViews.setEnabled(false);
1757     gatherViews.setText("Gather Views");
1758     gatherViews.setAccelerator(javax.swing.KeyStroke.getKeyStroke(
1759             java.awt.event.KeyEvent.VK_G, 0, false));
1760     gatherViews.addActionListener(new ActionListener()
1761     {
1762       public void actionPerformed(ActionEvent e)
1763       {
1764         gatherViews_actionPerformed(e);
1765       }
1766     });
1767     expandViews.setEnabled(false);
1768     expandViews.setText("Expand Views");
1769     expandViews.setAccelerator(javax.swing.KeyStroke.getKeyStroke(
1770             java.awt.event.KeyEvent.VK_X, 0, false));
1771     expandViews.addActionListener(new ActionListener()
1772     {
1773       public void actionPerformed(ActionEvent e)
1774       {
1775         expandViews_actionPerformed(e);
1776       }
1777     });
1778     pageSetup.setText("Page Setup ...");
1779     pageSetup.addActionListener(new ActionListener()
1780     {
1781       public void actionPerformed(ActionEvent e)
1782       {
1783         pageSetup_actionPerformed(e);
1784       }
1785     });
1786     alignmentProperties.setText("Alignment Properties...");
1787     alignmentProperties.addActionListener(new ActionListener()
1788     {
1789       public void actionPerformed(ActionEvent actionEvent)
1790       {
1791         alignmentProperties();
1792       }
1793     });
1794     tooltipSettingsMenu.setText("Sequence ID Tooltip");
1795     autoAnnMenu.setText("Autocalculated Annotation");
1796     alignFrameMenuBar.add(fileMenu);
1797     alignFrameMenuBar.add(editMenu);
1798     alignFrameMenuBar.add(selectMenu);
1799     alignFrameMenuBar.add(viewMenu);
1800     alignFrameMenuBar.add(formatMenu);
1801     alignFrameMenuBar.add(colourMenu);
1802     alignFrameMenuBar.add(calculateMenu);
1803     alignFrameMenuBar.add(webService);
1804     fileMenu.add(fetchSequence);
1805     fileMenu.add(addSequenceMenu);
1806     fileMenu.add(reload);
1807     fileMenu.addSeparator();
1808     fileMenu.add(vamsasStore);
1809     fileMenu.add(save);
1810     fileMenu.add(saveAs);
1811     fileMenu.add(outputTextboxMenu);
1812     fileMenu.add(pageSetup);
1813     fileMenu.add(printMenuItem);
1814     fileMenu.addSeparator();
1815     fileMenu.add(jMenu2);
1816     fileMenu.add(exportFeatures);
1817     fileMenu.add(exportAnnotations);
1818     fileMenu.add(LoadtreeMenuItem);
1819     fileMenu.add(associatedData);
1820     fileMenu.add(loadScoresMenuItem);
1821     fileMenu.addSeparator();
1822     fileMenu.add(closeMenuItem);
1823     editMenu.add(undoMenuItem);
1824     editMenu.add(redoMenuItem);
1825     editMenu.add(cut);
1826     editMenu.add(copy);
1827     editMenu.add(pasteMenu);
1828     editMenu.add(delete);
1829     editMenu.addSeparator();
1830     editMenu.add(remove2LeftMenuItem);
1831     editMenu.add(remove2RightMenuItem);
1832     editMenu.add(removeGappedColumnMenuItem);
1833     editMenu.add(removeAllGapsMenuItem);
1834     editMenu.add(removeRedundancyMenuItem);
1835     editMenu.addSeparator();
1836     // dont add these yet in the CVS build - they cannot be undone!
1837     // Excluded from Jalview 2.5 release - undo needs to be implemented.
1838     // editMenu.add(justifyLeftMenuItem);
1839     // editMenu.add(justifyRightMenuItem);
1840     // editMenu.addSeparator();
1841     editMenu.add(padGapsMenuitem);
1842     viewMenu.add(newView);
1843     viewMenu.add(expandViews);
1844     viewMenu.add(gatherViews);
1845     viewMenu.addSeparator();
1846     viewMenu.add(jMenu3);
1847     viewMenu.add(hideMenu);
1848     viewMenu.addSeparator();
1849     viewMenu.add(followHighlightMenuItem);
1850     viewMenu.add(annotationPanelMenuItem);
1851     autoAnnMenu.add(applyAutoAnnotationSettings);
1852     autoAnnMenu.add(showConsensusHistogram);
1853     autoAnnMenu.add(showSequenceLogo);
1854     autoAnnMenu.add(normaliseSequenceLogo);
1855     autoAnnMenu.addSeparator();
1856     autoAnnMenu.add(showGroupConservation);
1857     autoAnnMenu.add(showGroupConsensus);
1858     viewMenu.add(autoAnnMenu);
1859     viewMenu.addSeparator();
1860     viewMenu.add(showSeqFeatures);
1861     // viewMenu.add(showSeqFeaturesHeight);
1862
1863     viewMenu.add(openFeatureSettings);
1864     tooltipSettingsMenu.add(showDbRefsMenuitem);
1865     tooltipSettingsMenu.add(showNpFeatsMenuitem);
1866     viewMenu.add(tooltipSettingsMenu);
1867     viewMenu.addSeparator();
1868     viewMenu.add(alignmentProperties);
1869     viewMenu.addSeparator();
1870     viewMenu.add(overviewMenuItem);
1871     colourMenu.add(applyToAllGroups);
1872     colourMenu.add(textColour);
1873     colourMenu.addSeparator();
1874     colourMenu.add(noColourmenuItem);
1875     colourMenu.add(clustalColour);
1876     colourMenu.add(BLOSUM62Colour);
1877     colourMenu.add(PIDColour);
1878     colourMenu.add(zappoColour);
1879     colourMenu.add(taylorColour);
1880     colourMenu.add(hydrophobicityColour);
1881     colourMenu.add(helixColour);
1882     colourMenu.add(strandColour);
1883     colourMenu.add(turnColour);
1884     colourMenu.add(buriedColour);
1885     colourMenu.add(nucleotideColour);
1886     colourMenu.add(purinePyrimidineColour);
1887     // colourMenu.add(covariationColour);
1888     colourMenu.add(tcoffeeColour);
1889     colourMenu.add(userDefinedColour);
1890     colourMenu.addSeparator();
1891     colourMenu.add(conservationMenuItem);
1892     colourMenu.add(modifyConservation);
1893     colourMenu.add(abovePIDThreshold);
1894     colourMenu.add(modifyPID);
1895     colourMenu.add(annotationColour);
1896     colourMenu.add(rnahelicesColour);
1897     calculateMenu.add(sort);
1898     calculateMenu.add(calculateTree);
1899     calculateMenu.addSeparator();
1900     calculateMenu.add(pairwiseAlignmentMenuItem);
1901     calculateMenu.add(PCAMenuItem);
1902     calculateMenu.addSeparator();
1903     calculateMenu.add(showTranslation);
1904     calculateMenu.add(showProducts);
1905     calculateMenu.add(autoCalculate);
1906     calculateMenu.add(sortByTree);
1907     calculateMenu.addSeparator();
1908     calculateMenu.add(extractScores);
1909     webServiceNoServices = new JMenuItem("<No Services>");
1910     webService.add(webServiceNoServices);
1911     pasteMenu.add(pasteNew);
1912     pasteMenu.add(pasteThis);
1913     sort.add(sortIDMenuItem);
1914     sort.add(sortLengthMenuItem);
1915     sort.add(sortGroupMenuItem);
1916     sort.add(sortPairwiseMenuItem);
1917     sort.add(sortByTreeMenu);
1918     calculateTree.add(averageDistanceTreeMenuItem);
1919     calculateTree.add(neighbourTreeMenuItem);
1920     calculateTree.add(avDistanceTreeBlosumMenuItem);
1921     calculateTree.add(njTreeBlosumMenuItem);
1922     jMenu2.add(htmlMenuItem);
1923     jMenu2.add(epsFile);
1924     jMenu2.add(createPNG);
1925     addSequenceMenu.add(addFromFile);
1926     addSequenceMenu.add(addFromText);
1927     addSequenceMenu.add(addFromURL);
1928     this.getContentPane().add(statusPanel, java.awt.BorderLayout.SOUTH);
1929     statusPanel.add(statusBar, null);
1930     this.getContentPane().add(tabbedPane, java.awt.BorderLayout.CENTER);
1931     jMenu3.add(showAllColumns);
1932     jMenu3.add(showAllSeqs);
1933     jMenu3.add(showAllhidden);
1934     hideMenu.add(hideSelColumns);
1935     hideMenu.add(hideSelSequences);
1936     hideMenu.add(hideAllSelection);
1937     hideMenu.add(hideAllButSelection);
1938
1939     formatMenu.add(font);
1940     formatMenu.addSeparator();
1941     formatMenu.add(wrapMenuItem);
1942     formatMenu.add(scaleAbove);
1943     formatMenu.add(scaleLeft);
1944     formatMenu.add(scaleRight);
1945     formatMenu.add(seqLimits);
1946     formatMenu.add(idRightAlign);
1947     formatMenu.add(hiddenMarkers);
1948     formatMenu.add(viewBoxesMenuItem);
1949     formatMenu.add(viewTextMenuItem);
1950     formatMenu.add(colourTextMenuItem);
1951     formatMenu.add(renderGapsMenuItem);
1952     formatMenu.add(centreColumnLabelsMenuItem);
1953     formatMenu.add(showNonconservedMenuItem);
1954     selectMenu.add(findMenuItem);
1955     selectMenu.addSeparator();
1956     selectMenu.add(selectAllSequenceMenuItem);
1957     selectMenu.add(deselectAllSequenceMenuItem);
1958     selectMenu.add(invertSequenceMenuItem);
1959     selectMenu.add(invertColSel);
1960     selectMenu.add(deleteGroups);
1961     selectMenu.add(grpsFromSelection);
1962     // TODO - determine if the listenToViewSelections button is needed : see bug JAL-574
1963     //selectMenu.addSeparator();
1964     //selectMenu.add(listenToViewSelections);
1965   }
1966
1967   protected void normaliseSequenceLogo_actionPerformed(ActionEvent e)
1968   {
1969     // TODO Auto-generated method stub
1970     
1971   }
1972
1973   protected void listenToViewSelections_actionPerformed(ActionEvent e)
1974   {
1975     // TODO Auto-generated method stub
1976     
1977   }
1978
1979   protected void showAllhidden_actionPerformed(ActionEvent e)
1980   {
1981     // TODO Auto-generated method stub
1982
1983   }
1984
1985   protected void hideAllButSelection_actionPerformed(ActionEvent e)
1986   {
1987     // TODO Auto-generated method stub
1988
1989   }
1990
1991   protected void hideAllSelection_actionPerformed(ActionEvent e)
1992   {
1993     // TODO Auto-generated method stub
1994
1995   }
1996
1997   protected void applyAutoAnnotationSettings_actionPerformed(ActionEvent e)
1998   {
1999     // TODO Auto-generated method stub
2000
2001   }
2002
2003   protected void showConsensusHistogram_actionPerformed(ActionEvent e)
2004   {
2005     // TODO Auto-generated method stub
2006
2007   }
2008
2009   protected void showSequenceLogo_actionPerformed(ActionEvent e)
2010   {
2011     // TODO Auto-generated method stub
2012
2013   }
2014
2015   protected void makeGrpsFromSelection_actionPerformed(ActionEvent e)
2016   {
2017     // TODO Auto-generated method stub
2018
2019   }
2020
2021   protected void showGroupConsensus_actionPerformed(ActionEvent e)
2022   {
2023     // TODO Auto-generated method stub
2024
2025   }
2026
2027   protected void showGroupConservation_actionPerformed(ActionEvent e)
2028   {
2029     // TODO Auto-generated method stub
2030
2031   }
2032
2033   protected void showUnconservedMenuItem_actionPerformed(ActionEvent e)
2034   {
2035     // TODO Auto-generated method stub
2036
2037   }
2038
2039   protected void showSeqFeaturesHeight_actionPerformed(
2040           ActionEvent actionEvent)
2041   {
2042     // TODO Auto-generated method stub
2043
2044   }
2045
2046   protected void justifyRightMenuItem_actionPerformed(ActionEvent e)
2047   {
2048     // TODO Auto-generated method stub
2049
2050   }
2051
2052   protected void justifyLeftMenuItem_actionPerformed(ActionEvent e)
2053   {
2054     // TODO Auto-generated method stub
2055
2056   }
2057
2058   protected void followHighlight_actionPerformed()
2059   {
2060     // TODO Auto-generated method stub
2061
2062   }
2063
2064   protected void showNpFeats_actionPerformed(ActionEvent e)
2065   {
2066     // TODO Auto-generated method stub
2067
2068   }
2069
2070   protected void showDbRefs_actionPerformed(ActionEvent e)
2071   {
2072     // TODO Auto-generated method stub
2073
2074   }
2075
2076   protected void centreColumnLabels_actionPerformed(ActionEvent e)
2077   {
2078   }
2079
2080   protected void showProducts_actionPerformed(ActionEvent e)
2081   {
2082   }
2083
2084   protected void buildSortByAnnotationScoresMenu()
2085   {
2086   }
2087
2088   protected void extractScores_actionPerformed(ActionEvent e)
2089   {
2090   }
2091
2092   protected void outputText_actionPerformed(ActionEvent e)
2093   {
2094   }
2095
2096   public void addFromFile_actionPerformed(ActionEvent e)
2097   {
2098
2099   }
2100
2101   public void addFromText_actionPerformed(ActionEvent e)
2102   {
2103
2104   }
2105
2106   public void addFromURL_actionPerformed(ActionEvent e)
2107   {
2108
2109   }
2110
2111   public void exportFeatures_actionPerformed(ActionEvent e)
2112   {
2113
2114   }
2115
2116   public void exportAnnotations_actionPerformed(ActionEvent e)
2117   {
2118
2119   }
2120
2121   protected void htmlMenuItem_actionPerformed(ActionEvent e)
2122   {
2123   }
2124
2125   protected void closeMenuItem_actionPerformed(boolean b)
2126   {
2127   }
2128
2129   protected void redoMenuItem_actionPerformed(ActionEvent e)
2130   {
2131   }
2132
2133   protected void undoMenuItem_actionPerformed(ActionEvent e)
2134   {
2135   }
2136
2137   protected void selectAllSequenceMenuItem_actionPerformed(ActionEvent e)
2138   {
2139   }
2140
2141   protected void deselectAllSequenceMenuItem_actionPerformed(ActionEvent e)
2142   {
2143   }
2144
2145   protected void invertSequenceMenuItem_actionPerformed(ActionEvent e)
2146   {
2147   }
2148
2149   protected void remove2LeftMenuItem_actionPerformed(ActionEvent e)
2150   {
2151   }
2152
2153   protected void remove2RightMenuItem_actionPerformed(ActionEvent e)
2154   {
2155   }
2156
2157   protected void removeGappedColumnMenuItem_actionPerformed(ActionEvent e)
2158   {
2159   }
2160
2161   protected void removeAllGapsMenuItem_actionPerformed(ActionEvent e)
2162   {
2163   }
2164
2165   protected void wrapMenuItem_actionPerformed(ActionEvent e)
2166   {
2167   }
2168
2169   protected void viewBoxesMenuItem_actionPerformed(ActionEvent e)
2170   {
2171   }
2172
2173   protected void viewTextMenuItem_actionPerformed(ActionEvent e)
2174   {
2175   }
2176
2177   protected void colourTextMenuItem_actionPerformed(ActionEvent e)
2178   {
2179   }
2180
2181   protected void annotationPanelMenuItem_actionPerformed(ActionEvent e)
2182   {
2183   }
2184
2185   protected void overviewMenuItem_actionPerformed(ActionEvent e)
2186   {
2187   }
2188
2189   protected void sortPairwiseMenuItem_actionPerformed(ActionEvent e)
2190   {
2191   }
2192
2193   protected void sortIDMenuItem_actionPerformed(ActionEvent e)
2194   {
2195   }
2196
2197   protected void sortLengthMenuItem_actionPerformed(ActionEvent e)
2198   {
2199   }
2200
2201   protected void sortGroupMenuItem_actionPerformed(ActionEvent e)
2202   {
2203   }
2204
2205   protected void removeRedundancyMenuItem_actionPerformed(ActionEvent e)
2206   {
2207   }
2208
2209   protected void pairwiseAlignmentMenuItem_actionPerformed(ActionEvent e)
2210   {
2211   }
2212
2213   protected void PCAMenuItem_actionPerformed(ActionEvent e)
2214   {
2215   }
2216
2217   protected void averageDistanceTreeMenuItem_actionPerformed(ActionEvent e)
2218   {
2219   }
2220
2221   protected void neighbourTreeMenuItem_actionPerformed(ActionEvent e)
2222   {
2223   }
2224
2225   protected void njTreeBlosumMenuItem_actionPerformed(ActionEvent e)
2226   {
2227   }
2228
2229   protected void avTreeBlosumMenuItem_actionPerformed(ActionEvent e)
2230   {
2231   }
2232
2233   protected void clustalColour_actionPerformed(ActionEvent e)
2234   {
2235   }
2236
2237   protected void zappoColour_actionPerformed(ActionEvent e)
2238   {
2239   }
2240
2241   protected void taylorColour_actionPerformed(ActionEvent e)
2242   {
2243   }
2244
2245   protected void hydrophobicityColour_actionPerformed(ActionEvent e)
2246   {
2247   }
2248
2249   protected void helixColour_actionPerformed(ActionEvent e)
2250   {
2251   }
2252
2253   protected void strandColour_actionPerformed(ActionEvent e)
2254   {
2255   }
2256
2257   protected void turnColour_actionPerformed(ActionEvent e)
2258   {
2259   }
2260
2261   protected void buriedColour_actionPerformed(ActionEvent e)
2262   {
2263   }
2264
2265   protected void userDefinedColour_actionPerformed(ActionEvent e)
2266   {
2267   }
2268
2269   protected void PIDColour_actionPerformed(ActionEvent e)
2270   {
2271   }
2272
2273   protected void BLOSUM62Colour_actionPerformed(ActionEvent e)
2274   {
2275   }
2276
2277   protected void purinePyrimidineColour_actionPerformed(ActionEvent e)
2278   {
2279   }
2280
2281   /*
2282    * protected void covariationColour_actionPerformed(ActionEvent e) { }
2283    */
2284
2285   protected void noColourmenuItem_actionPerformed(ActionEvent e)
2286   {
2287   }
2288
2289   protected void conservationMenuItem_actionPerformed(ActionEvent e)
2290   {
2291   }
2292
2293   protected void printMenuItem_actionPerformed(ActionEvent e)
2294   {
2295   }
2296
2297   protected void renderGapsMenuItem_actionPerformed(ActionEvent e)
2298   {
2299   }
2300
2301   protected void findMenuItem_actionPerformed(ActionEvent e)
2302   {
2303   }
2304
2305   protected void abovePIDThreshold_actionPerformed(ActionEvent e)
2306   {
2307   }
2308
2309   public void showSeqFeatures_actionPerformed(ActionEvent actionEvent)
2310   {
2311   }
2312
2313   protected void nucleotideColour_actionPerformed(ActionEvent e)
2314   {
2315   }
2316
2317   protected void deleteGroups_actionPerformed(ActionEvent e)
2318   {
2319   }
2320
2321   protected void copy_actionPerformed(ActionEvent e)
2322   {
2323   }
2324
2325   protected void cut_actionPerformed(ActionEvent e)
2326   {
2327   }
2328
2329   protected void delete_actionPerformed(ActionEvent e)
2330   {
2331   }
2332
2333   protected void pasteNew_actionPerformed(ActionEvent e)
2334   {
2335   }
2336
2337   protected void pasteThis_actionPerformed(ActionEvent e)
2338   {
2339   }
2340
2341   protected void applyToAllGroups_actionPerformed(ActionEvent e)
2342   {
2343   }
2344
2345   public void createPNG(java.io.File f)
2346   {
2347   }
2348
2349   protected void font_actionPerformed(ActionEvent e)
2350   {
2351   }
2352
2353   protected void seqLimit_actionPerformed(ActionEvent e)
2354   {
2355   }
2356
2357   public void seqDBRef_actionPerformed(ActionEvent e)
2358   {
2359
2360   }
2361
2362   public void createEPS(java.io.File f)
2363   {
2364   }
2365
2366   protected void LoadtreeMenuItem_actionPerformed(ActionEvent e)
2367   {
2368
2369   }
2370   
2371   /**
2372    * Template method to handle the 'load T-Coffee scores' menu event. 
2373    * <p>
2374    * Subclasses override this method to provide a custom action.
2375    *  
2376    * @param event The raised event
2377    */
2378   protected void loadScores_actionPerformed(ActionEvent event) {
2379            
2380   }
2381   
2382
2383   /**
2384    * Template method to handle the 'Color T-Coffee scores' menu event. 
2385    * <p>
2386    * Subclasses override this method to provide a custom action.
2387    *  
2388    * @param event The raised event
2389    */
2390   protected void tcoffeeColorScheme_actionPerformed(ActionEvent event) {
2391           
2392   }
2393   
2394
2395   protected void jpred_actionPerformed(ActionEvent e)
2396   {
2397   }
2398
2399   protected void scaleAbove_actionPerformed(ActionEvent e)
2400   {
2401   }
2402
2403   protected void scaleLeft_actionPerformed(ActionEvent e)
2404   {
2405   }
2406
2407   protected void scaleRight_actionPerformed(ActionEvent e)
2408   {
2409   }
2410
2411   protected void modifyPID_actionPerformed(ActionEvent e)
2412   {
2413   }
2414
2415   protected void modifyConservation_actionPerformed(ActionEvent e)
2416   {
2417   }
2418
2419   protected void saveAs_actionPerformed(ActionEvent e)
2420   {
2421   }
2422
2423   protected void padGapsMenuitem_actionPerformed(ActionEvent e)
2424   {
2425   }
2426
2427   public void vamsasStore_actionPerformed(ActionEvent e)
2428   {
2429
2430   }
2431
2432   public void vamsasLoad_actionPerformed(ActionEvent e)
2433   {
2434
2435   }
2436
2437   public void showTranslation_actionPerformed(ActionEvent e)
2438   {
2439
2440   }
2441
2442   public void featureSettings_actionPerformed(ActionEvent e)
2443   {
2444
2445   }
2446
2447   public void fetchSequence_actionPerformed(ActionEvent e)
2448   {
2449
2450   }
2451
2452   public void smoothFont_actionPerformed(ActionEvent e)
2453   {
2454
2455   }
2456
2457   public void annotationColour_actionPerformed(ActionEvent e)
2458   {
2459
2460   }
2461
2462   public void rnahelicesColour_actionPerformed(ActionEvent e)
2463   {
2464
2465   }
2466
2467   public void associatedData_actionPerformed(ActionEvent e)
2468   {
2469
2470   }
2471
2472   public void autoCalculate_actionPerformed(ActionEvent e)
2473   {
2474
2475   }
2476
2477   public void sortByTreeOption_actionPerformed(ActionEvent e)
2478   {
2479
2480   }
2481
2482   public void showAllSeqs_actionPerformed(ActionEvent e)
2483   {
2484
2485   }
2486
2487   public void showAllColumns_actionPerformed(ActionEvent e)
2488   {
2489
2490   }
2491
2492   public void hideSelSequences_actionPerformed(ActionEvent e)
2493   {
2494
2495   }
2496
2497   public void hideSelColumns_actionPerformed(ActionEvent e)
2498   {
2499
2500   }
2501
2502   public void hiddenMarkers_actionPerformed(ActionEvent e)
2503   {
2504
2505   }
2506
2507   public void findPdbId_actionPerformed(ActionEvent e)
2508   {
2509
2510   }
2511
2512   public void enterPdbId_actionPerformed(ActionEvent e)
2513   {
2514
2515   }
2516
2517   public void pdbFile_actionPerformed(ActionEvent e)
2518   {
2519
2520   }
2521
2522   public void invertColSel_actionPerformed(ActionEvent e)
2523   {
2524
2525   }
2526
2527   public void tabSelectionChanged(int sel)
2528   {
2529
2530   }
2531
2532   public void tabbedPane_mousePressed(MouseEvent e)
2533   {
2534
2535   }
2536
2537   public void tabbedPane_focusGained(FocusEvent e)
2538   {
2539     requestFocus();
2540   }
2541
2542   public void save_actionPerformed(ActionEvent e)
2543   {
2544
2545   }
2546
2547   public void reload_actionPerformed(ActionEvent e)
2548   {
2549
2550   }
2551
2552   public void newView_actionPerformed(ActionEvent e)
2553   {
2554
2555   }
2556
2557   public void textColour_actionPerformed(ActionEvent e)
2558   {
2559
2560   }
2561
2562   public void idRightAlign_actionPerformed(ActionEvent e)
2563   {
2564
2565   }
2566
2567   public void expandViews_actionPerformed(ActionEvent e)
2568   {
2569
2570   }
2571
2572   public void gatherViews_actionPerformed(ActionEvent e)
2573   {
2574
2575   }
2576
2577   public void buildTreeMenu()
2578   {
2579
2580   }
2581
2582   public void pageSetup_actionPerformed(ActionEvent e)
2583   {
2584
2585   }
2586
2587   public void alignmentProperties()
2588   {
2589
2590   }
2591 }