dba77dd2f09eb25c6ef8daf5b1d164721735cfee
[jalview.git] / src / jalview / jbgui / GAlignFrame.java
1 /*
2  * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
3  * Copyright (C) 2014 The Jalview Authors
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
10  * of the License, or (at your option) any later version.
11  *  
12  * Jalview is distributed in the hope that it will be useful, but 
13  * WITHOUT ANY WARRANTY; without even the implied warranty 
14  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
15  * PURPOSE.  See the GNU General Public License for more details.
16  * 
17  * You should have received a copy of the GNU General Public License
18  * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
19  * The Jalview Authors are detailed in the 'AUTHORS' file.
20  */
21 package jalview.jbgui;
22
23 import jalview.analysis.AnnotationSorter.SequenceAnnotationOrder;
24 import jalview.bin.Cache;
25 import jalview.gui.JvSwingUtils;
26 import jalview.schemes.ColourSchemeProperty;
27 import jalview.util.MessageManager;
28
29 import java.awt.BorderLayout;
30 import java.awt.Color;
31 import java.awt.GridLayout;
32 import java.awt.Toolkit;
33 import java.awt.event.ActionEvent;
34 import java.awt.event.ActionListener;
35 import java.awt.event.FocusAdapter;
36 import java.awt.event.FocusEvent;
37 import java.awt.event.MouseAdapter;
38 import java.awt.event.MouseEvent;
39
40 import javax.swing.BorderFactory;
41 import javax.swing.ButtonGroup;
42 import javax.swing.JCheckBoxMenuItem;
43 import javax.swing.JInternalFrame;
44 import javax.swing.JLabel;
45 import javax.swing.JMenu;
46 import javax.swing.JMenuBar;
47 import javax.swing.JMenuItem;
48 import javax.swing.JOptionPane;
49 import javax.swing.JPanel;
50 import javax.swing.JRadioButtonMenuItem;
51 import javax.swing.JTabbedPane;
52 import javax.swing.SwingUtilities;
53 import javax.swing.event.ChangeEvent;
54 import javax.swing.event.MenuEvent;
55 import javax.swing.event.MenuListener;
56
57 public class GAlignFrame extends JInternalFrame
58 {
59   protected JMenuBar alignFrameMenuBar = new JMenuBar();
60
61   protected JMenu fileMenu = new JMenu();
62
63   protected JMenuItem closeMenuItem = new JMenuItem();
64
65   protected JMenu editMenu = new JMenu();
66
67   protected JMenu viewMenu = new JMenu();
68
69   protected JMenu annotationsMenu = new JMenu();
70
71   protected JMenu colourMenu = new JMenu();
72
73   protected JMenu calculateMenu = new JMenu();
74
75   protected JMenu webService = new JMenu();
76
77   protected JMenuItem webServiceNoServices;
78
79   protected JMenuItem selectAllSequenceMenuItem = new JMenuItem();
80
81   protected JMenuItem deselectAllSequenceMenuItem = new JMenuItem();
82
83   protected JMenuItem invertSequenceMenuItem = new JMenuItem();
84
85   protected JMenuItem remove2LeftMenuItem = new JMenuItem();
86
87   protected JMenuItem remove2RightMenuItem = new JMenuItem();
88
89   protected JMenuItem removeGappedColumnMenuItem = new JMenuItem();
90
91   protected JMenuItem removeAllGapsMenuItem = new JMenuItem();
92
93   public JCheckBoxMenuItem viewBoxesMenuItem = new JCheckBoxMenuItem();
94
95   public JCheckBoxMenuItem viewTextMenuItem = new JCheckBoxMenuItem();
96
97   protected JMenuItem sortPairwiseMenuItem = new JMenuItem();
98
99   protected JMenuItem sortIDMenuItem = new JMenuItem();
100
101   protected JMenuItem sortLengthMenuItem = new JMenuItem();
102
103   protected JMenuItem sortGroupMenuItem = new JMenuItem();
104
105   protected JMenu sortByAnnotScore = new JMenu();
106
107   protected JMenuItem removeRedundancyMenuItem = new JMenuItem();
108
109   protected JMenuItem pairwiseAlignmentMenuItem = new JMenuItem();
110
111   protected JMenuItem PCAMenuItem = new JMenuItem();
112
113   protected JMenuItem averageDistanceTreeMenuItem = new JMenuItem();
114
115   protected JMenuItem neighbourTreeMenuItem = new JMenuItem();
116
117   BorderLayout borderLayout1 = new BorderLayout();
118
119   public JLabel statusBar = new JLabel();
120
121   protected JMenuItem saveAs = new JMenuItem();
122
123   protected JMenu outputTextboxMenu = new JMenu();
124
125   protected JRadioButtonMenuItem clustalColour = new JRadioButtonMenuItem();
126
127   protected JRadioButtonMenuItem zappoColour = new JRadioButtonMenuItem();
128
129   protected JRadioButtonMenuItem taylorColour = new JRadioButtonMenuItem();
130
131   protected JRadioButtonMenuItem hydrophobicityColour = new JRadioButtonMenuItem();
132
133   protected JRadioButtonMenuItem helixColour = new JRadioButtonMenuItem();
134
135   protected JRadioButtonMenuItem strandColour = new JRadioButtonMenuItem();
136
137   protected JRadioButtonMenuItem turnColour = new JRadioButtonMenuItem();
138
139   protected JRadioButtonMenuItem buriedColour = new JRadioButtonMenuItem();
140
141   protected JRadioButtonMenuItem userDefinedColour = new JRadioButtonMenuItem();
142
143   protected JRadioButtonMenuItem PIDColour = new JRadioButtonMenuItem();
144
145   protected JRadioButtonMenuItem BLOSUM62Colour = new JRadioButtonMenuItem();
146
147   protected JRadioButtonMenuItem nucleotideColour = new JRadioButtonMenuItem();
148
149   protected JRadioButtonMenuItem purinePyrimidineColour = new JRadioButtonMenuItem();
150
151   protected JRadioButtonMenuItem RNAInteractionColour = new JRadioButtonMenuItem();
152
153   // protected JRadioButtonMenuItem covariationColour = new
154   // JRadioButtonMenuItem();
155
156   protected JRadioButtonMenuItem tcoffeeColour = new JRadioButtonMenuItem();
157
158   JMenuItem njTreeBlosumMenuItem = new JMenuItem();
159
160   JMenuItem avDistanceTreeBlosumMenuItem = new JMenuItem();
161
162   public JCheckBoxMenuItem annotationPanelMenuItem = new JCheckBoxMenuItem();
163
164   public JCheckBoxMenuItem colourTextMenuItem = new JCheckBoxMenuItem();
165
166   public JCheckBoxMenuItem showNonconservedMenuItem = new JCheckBoxMenuItem();
167
168   JMenuItem htmlMenuItem = new JMenuItem();
169
170   JMenuItem overviewMenuItem = new JMenuItem();
171
172   protected JMenuItem undoMenuItem = new JMenuItem();
173
174   protected JMenuItem redoMenuItem = new JMenuItem();
175
176   public JCheckBoxMenuItem conservationMenuItem = new JCheckBoxMenuItem();
177
178   JRadioButtonMenuItem noColourmenuItem = new JRadioButtonMenuItem();
179
180   public JCheckBoxMenuItem wrapMenuItem = new JCheckBoxMenuItem();
181
182   JMenuItem printMenuItem = new JMenuItem();
183
184   public JCheckBoxMenuItem renderGapsMenuItem = new JCheckBoxMenuItem();
185
186   JMenuItem findMenuItem = new JMenuItem();
187
188   public JCheckBoxMenuItem abovePIDThreshold = new JCheckBoxMenuItem();
189
190   public JCheckBoxMenuItem showSeqFeatures = new JCheckBoxMenuItem();
191
192   public JCheckBoxMenuItem showSeqFeaturesHeight = new JCheckBoxMenuItem();
193
194   JMenuItem deleteGroups = new JMenuItem();
195
196   JMenuItem createGroup = new JMenuItem();
197
198   JMenuItem unGroup = new JMenuItem();
199
200   JMenuItem delete = new JMenuItem();
201
202   JMenuItem copy = new JMenuItem();
203
204   JMenuItem cut = new JMenuItem();
205
206   JMenu pasteMenu = new JMenu();
207
208   JMenuItem pasteNew = new JMenuItem();
209
210   JMenuItem pasteThis = new JMenuItem();
211
212   public JCheckBoxMenuItem applyToAllGroups = new JCheckBoxMenuItem();
213
214   JMenuItem createPNG = new JMenuItem();
215
216   protected JMenuItem font = new JMenuItem();
217
218   public JCheckBoxMenuItem seqLimits = new JCheckBoxMenuItem();
219
220   JMenuItem epsFile = new JMenuItem();
221
222   JMenuItem LoadtreeMenuItem = new JMenuItem();
223
224   public JCheckBoxMenuItem scaleAbove = new JCheckBoxMenuItem();
225
226   public JCheckBoxMenuItem scaleLeft = new JCheckBoxMenuItem();
227
228   public JCheckBoxMenuItem scaleRight = new JCheckBoxMenuItem();
229
230   protected JMenuItem modifyPID = new JMenuItem();
231
232   protected JMenuItem modifyConservation = new JMenuItem();
233
234   protected JMenu sortByTreeMenu = new JMenu();
235
236   protected JMenu sort = new JMenu();
237
238   protected JMenu calculateTree = new JMenu();
239
240   JMenu jMenu2 = new JMenu();
241
242   protected JCheckBoxMenuItem padGapsMenuitem = new JCheckBoxMenuItem();
243
244   protected JCheckBoxMenuItem showNpFeatsMenuitem = new JCheckBoxMenuItem();
245
246   protected JCheckBoxMenuItem showDbRefsMenuitem = new JCheckBoxMenuItem();
247
248   protected ButtonGroup colours = new ButtonGroup();
249
250   JMenuItem vamsasStore = new JMenuItem();
251
252   protected JMenuItem showTranslation = new JMenuItem();
253
254   protected JMenuItem extractScores = new JMenuItem();
255
256   protected JMenuItem expandAlignment = new JMenuItem();
257
258   protected JMenu showProducts = new JMenu();
259
260   public JMenuItem openFeatureSettings = new JMenuItem();
261
262   JMenuItem fetchSequence = new JMenuItem();
263
264   JMenuItem annotationColour = new JMenuItem();
265
266   protected JMenuItem rnahelicesColour = new JMenuItem();
267
268   JMenuItem associatedData = new JMenuItem();
269
270   protected JCheckBoxMenuItem autoCalculate = new JCheckBoxMenuItem();
271
272   protected JCheckBoxMenuItem sortByTree = new JCheckBoxMenuItem();
273
274   protected JCheckBoxMenuItem listenToViewSelections = new JCheckBoxMenuItem();
275
276   JMenu addSequenceMenu = new JMenu();
277
278   JMenuItem addFromFile = new JMenuItem();
279
280   JMenuItem addFromText = new JMenuItem();
281
282   JMenuItem addFromURL = new JMenuItem();
283
284   JMenuItem exportAnnotations = new JMenuItem();
285
286   JMenuItem exportFeatures = new JMenuItem();
287
288   protected JPanel statusPanel = new JPanel();
289
290   GridLayout gridLayout1 = new GridLayout();
291
292   JMenu jMenu3 = new JMenu();
293
294   JMenuItem showAllSeqs = new JMenuItem();
295
296   JMenuItem showAllColumns = new JMenuItem();
297
298   JMenu hideMenu = new JMenu();
299
300   JMenuItem hideSelSequences = new JMenuItem();
301
302   JMenuItem hideSelColumns = new JMenuItem();
303
304   JMenuItem hideAllButSelection = new JMenuItem();
305
306   JMenuItem hideAllSelection = new JMenuItem();
307
308   JMenuItem showAllhidden = new JMenuItem();
309
310   protected JMenuItem showAllSeqAnnotations = new JMenuItem();
311
312   protected JMenuItem hideAllSeqAnnotations = new JMenuItem();
313
314   protected JMenuItem showAllAlAnnotations = new JMenuItem();
315
316   protected JMenuItem hideAllAlAnnotations = new JMenuItem();
317
318   protected JCheckBoxMenuItem sortAnnBySequence = new JCheckBoxMenuItem();
319
320   protected JCheckBoxMenuItem sortAnnByLabel = new JCheckBoxMenuItem();
321
322   protected JCheckBoxMenuItem hiddenMarkers = new JCheckBoxMenuItem();
323
324   JMenuItem invertColSel = new JMenuItem();
325
326   protected JTabbedPane tabbedPane = new JTabbedPane();
327
328   JMenuItem save = new JMenuItem();
329
330   protected JMenuItem reload = new JMenuItem();
331
332   JMenuItem newView = new JMenuItem();
333
334   JMenuItem textColour = new JMenuItem();
335
336   JMenu formatMenu = new JMenu();
337
338   JMenu selectMenu = new JMenu();
339
340   protected JCheckBoxMenuItem idRightAlign = new JCheckBoxMenuItem();
341
342   protected JCheckBoxMenuItem centreColumnLabelsMenuItem = new JCheckBoxMenuItem();
343
344   protected JCheckBoxMenuItem followHighlightMenuItem = new JCheckBoxMenuItem();
345
346   protected JMenuItem gatherViews = new JMenuItem();
347
348   protected JMenuItem expandViews = new JMenuItem();
349
350   JMenuItem pageSetup = new JMenuItem();
351
352   JMenuItem alignmentProperties = new JMenuItem();
353
354   JMenu tooltipSettingsMenu = new JMenu();
355
356   private JMenuItem justifyLeftMenuItem = new JMenuItem();
357
358   private JMenuItem justifyRightMenuItem = new JMenuItem();
359
360   JMenu autoAnnMenu = new JMenu();
361
362   protected JCheckBoxMenuItem showGroupConsensus = new JCheckBoxMenuItem();
363
364   protected JCheckBoxMenuItem showGroupConservation = new JCheckBoxMenuItem();
365
366   protected JCheckBoxMenuItem showConsensusHistogram = new JCheckBoxMenuItem();
367
368   protected JCheckBoxMenuItem showSequenceLogo = new JCheckBoxMenuItem();
369
370   protected JCheckBoxMenuItem normaliseSequenceLogo = new JCheckBoxMenuItem();
371
372   protected JCheckBoxMenuItem applyAutoAnnotationSettings = new JCheckBoxMenuItem();
373
374   protected JCheckBoxMenuItem showAutoFirst = new JCheckBoxMenuItem();
375
376   protected JCheckBoxMenuItem showAutoLast = new JCheckBoxMenuItem();
377
378   private JMenuItem grpsFromSelection = new JMenuItem();
379
380   private SequenceAnnotationOrder annotationSortOrder;
381
382   private boolean showAutoCalculatedAbove = false;
383
384   public GAlignFrame()
385   {
386     try
387     {
388       jbInit();
389       setJMenuBar(alignFrameMenuBar);
390
391       // dynamically fill save as menu with available formats
392       for (int i = 0; i < jalview.io.FormatAdapter.WRITEABLE_FORMATS.length; i++)
393       {
394         JMenuItem item = new JMenuItem(
395                 jalview.io.FormatAdapter.WRITEABLE_FORMATS[i]);
396
397         item.addActionListener(new java.awt.event.ActionListener()
398         {
399           @Override
400           public void actionPerformed(ActionEvent e)
401           {
402             outputText_actionPerformed(e);
403           }
404         });
405
406         outputTextboxMenu.add(item);
407       }
408     } catch (Exception e)
409     {
410       System.err.println(e.toString());
411     }
412
413     if (!new jalview.util.Platform().isAMac())
414     {
415       closeMenuItem.setMnemonic('C');
416       outputTextboxMenu.setMnemonic('T');
417       undoMenuItem.setMnemonic('Z');
418       redoMenuItem.setMnemonic('0');
419       copy.setMnemonic('C');
420       cut.setMnemonic('U');
421       pasteMenu.setMnemonic('P');
422       reload.setMnemonic('R');
423     }
424
425     if (jalview.gui.UserDefinedColours.getUserColourSchemes() != null)
426     {
427       java.util.Enumeration userColours = jalview.gui.UserDefinedColours
428               .getUserColourSchemes().keys();
429
430       while (userColours.hasMoreElements())
431       {
432         final JRadioButtonMenuItem radioItem = new JRadioButtonMenuItem(
433                 userColours.nextElement().toString());
434         radioItem.setName("USER_DEFINED");
435         radioItem.addMouseListener(new MouseAdapter()
436         {
437           @Override
438           public void mousePressed(MouseEvent evt)
439           {
440             if (evt.isControlDown()
441                     || SwingUtilities.isRightMouseButton(evt))
442             {
443               radioItem.removeActionListener(radioItem.getActionListeners()[0]);
444
445               int option = JOptionPane.showInternalConfirmDialog(
446                       jalview.gui.Desktop.desktop,
447                       MessageManager
448                               .getString("label.remove_from_default_list"),
449                       MessageManager
450                               .getString("label.remove_user_defined_colour"),
451                       JOptionPane.YES_NO_OPTION);
452               if (option == JOptionPane.YES_OPTION)
453               {
454                 jalview.gui.UserDefinedColours
455                         .removeColourFromDefaults(radioItem.getText());
456                 colourMenu.remove(radioItem);
457               }
458               else
459               {
460                 radioItem.addActionListener(new ActionListener()
461                 {
462                   @Override
463                   public void actionPerformed(ActionEvent evt)
464                   {
465                     userDefinedColour_actionPerformed(evt);
466                   }
467                 });
468               }
469             }
470           }
471         });
472         radioItem.addActionListener(new ActionListener()
473         {
474           @Override
475           public void actionPerformed(ActionEvent evt)
476           {
477             userDefinedColour_actionPerformed(evt);
478           }
479         });
480         colourMenu.insert(radioItem, 15);
481         colours.add(radioItem);
482       }
483     }
484     colours.add(noColourmenuItem);
485     colours.add(clustalColour);
486     colours.add(zappoColour);
487     colours.add(taylorColour);
488     colours.add(hydrophobicityColour);
489     colours.add(helixColour);
490     colours.add(strandColour);
491     colours.add(turnColour);
492     colours.add(buriedColour);
493     colours.add(userDefinedColour);
494     colours.add(PIDColour);
495     colours.add(BLOSUM62Colour);
496     colours.add(nucleotideColour);
497     colours.add(purinePyrimidineColour);
498     // colours.add(covariationColour);
499     colours.add(tcoffeeColour);
500     colours.add(RNAInteractionColour);
501     setColourSelected(jalview.bin.Cache
502             .getDefault("DEFAULT_COLOUR", "None"));
503
504   }
505
506   public void setColourSelected(String defaultColour)
507   {
508
509     if (defaultColour != null)
510     {
511       int index = ColourSchemeProperty
512               .getColourIndexFromName(defaultColour);
513
514       switch (index)
515       {
516       case ColourSchemeProperty.CLUSTAL:
517         clustalColour.setSelected(true);
518
519         break;
520
521       case ColourSchemeProperty.BLOSUM:
522         BLOSUM62Colour.setSelected(true);
523
524         break;
525
526       case ColourSchemeProperty.PID:
527         PIDColour.setSelected(true);
528
529         break;
530
531       case ColourSchemeProperty.ZAPPO:
532         zappoColour.setSelected(true);
533
534         break;
535
536       case ColourSchemeProperty.TAYLOR:
537         taylorColour.setSelected(true);
538         break;
539
540       case ColourSchemeProperty.HYDROPHOBIC:
541         hydrophobicityColour.setSelected(true);
542
543         break;
544
545       case ColourSchemeProperty.HELIX:
546         helixColour.setSelected(true);
547
548         break;
549
550       case ColourSchemeProperty.STRAND:
551         strandColour.setSelected(true);
552
553         break;
554
555       case ColourSchemeProperty.TURN:
556         turnColour.setSelected(true);
557
558         break;
559
560       case ColourSchemeProperty.BURIED:
561         buriedColour.setSelected(true);
562
563         break;
564
565       case ColourSchemeProperty.NUCLEOTIDE:
566         nucleotideColour.setSelected(true);
567
568         break;
569
570       case ColourSchemeProperty.TCOFFEE:
571         tcoffeeColour.setSelected(true);
572         break;
573
574       case ColourSchemeProperty.PURINEPYRIMIDINE:
575         purinePyrimidineColour.setSelected(true);
576
577         break;
578
579       case ColourSchemeProperty.RNAINTERACTION:
580         RNAInteractionColour.setSelected(true);
581
582         break;
583       /*
584        * case ColourSchemeProperty.COVARIATION:
585        * covariationColour.setSelected(true);
586        * 
587        * break;
588        */
589       case ColourSchemeProperty.USER_DEFINED:
590         userDefinedColour.setSelected(true);
591
592         break;
593       case ColourSchemeProperty.NONE:
594       default:
595         noColourmenuItem.setSelected(true);
596         break;
597
598       }
599     }
600
601   }
602
603   private void jbInit() throws Exception
604   {
605     fileMenu.setText(MessageManager.getString("action.file"));
606     saveAs.setText(MessageManager.getString("action.save_as") + "...");
607     saveAs.setAccelerator(javax.swing.KeyStroke.getKeyStroke(
608             java.awt.event.KeyEvent.VK_S, Toolkit.getDefaultToolkit()
609                     .getMenuShortcutKeyMask()
610                     | java.awt.event.KeyEvent.SHIFT_MASK, false));
611     saveAs.addActionListener(new ActionListener()
612     {
613       @Override
614       public void actionPerformed(ActionEvent e)
615       {
616         saveAs_actionPerformed(e);
617       }
618     });
619     closeMenuItem.setText(MessageManager.getString("action.close"));
620     closeMenuItem.setAccelerator(javax.swing.KeyStroke.getKeyStroke(
621             java.awt.event.KeyEvent.VK_W, Toolkit.getDefaultToolkit()
622                     .getMenuShortcutKeyMask(), false));
623     closeMenuItem.addActionListener(new java.awt.event.ActionListener()
624     {
625       @Override
626       public void actionPerformed(ActionEvent e)
627       {
628         closeMenuItem_actionPerformed(false);
629       }
630     });
631     editMenu.setText(MessageManager.getString("action.edit"));
632     viewMenu.setText(MessageManager.getString("action.view"));
633     annotationsMenu.setText(MessageManager.getString("action.annotations"));
634     colourMenu.setText(MessageManager.getString("action.colour"));
635     calculateMenu.setText(MessageManager.getString("action.calculate"));
636     webService.setText(MessageManager.getString("action.web_service"));
637     selectAllSequenceMenuItem.setText(MessageManager
638             .getString("action.select_all"));
639     selectAllSequenceMenuItem.setAccelerator(javax.swing.KeyStroke
640             .getKeyStroke(java.awt.event.KeyEvent.VK_A, Toolkit
641                     .getDefaultToolkit().getMenuShortcutKeyMask(), false));
642     selectAllSequenceMenuItem
643             .addActionListener(new java.awt.event.ActionListener()
644             {
645               @Override
646               public void actionPerformed(ActionEvent e)
647               {
648                 selectAllSequenceMenuItem_actionPerformed(e);
649               }
650             });
651     deselectAllSequenceMenuItem.setText(MessageManager
652             .getString("action.deselect_all"));
653     deselectAllSequenceMenuItem.setAccelerator(javax.swing.KeyStroke
654             .getKeyStroke(java.awt.event.KeyEvent.VK_ESCAPE, 0, false));
655     deselectAllSequenceMenuItem
656             .addActionListener(new java.awt.event.ActionListener()
657             {
658               @Override
659               public void actionPerformed(ActionEvent e)
660               {
661                 deselectAllSequenceMenuItem_actionPerformed(e);
662               }
663             });
664     invertSequenceMenuItem.setText(MessageManager
665             .getString("action.invert_sequence_selection"));
666     invertSequenceMenuItem.setAccelerator(javax.swing.KeyStroke
667             .getKeyStroke(java.awt.event.KeyEvent.VK_I, Toolkit
668                     .getDefaultToolkit().getMenuShortcutKeyMask(), false));
669     invertSequenceMenuItem
670             .addActionListener(new java.awt.event.ActionListener()
671             {
672               @Override
673               public void actionPerformed(ActionEvent e)
674               {
675                 invertSequenceMenuItem_actionPerformed(e);
676               }
677             });
678     grpsFromSelection.setText(MessageManager
679             .getString("action.make_groups_selection"));
680     grpsFromSelection.addActionListener(new java.awt.event.ActionListener()
681     {
682       @Override
683       public void actionPerformed(ActionEvent e)
684       {
685         makeGrpsFromSelection_actionPerformed(e);
686       }
687     });
688     expandAlignment.setText(MessageManager
689             .getString("action.view_flanking_regions"));
690     expandAlignment.setToolTipText(MessageManager
691             .getString("label.view_flanking_regions"));
692     expandAlignment.addActionListener(new java.awt.event.ActionListener()
693     {
694       @Override
695       public void actionPerformed(ActionEvent e)
696       {
697         expand_newalign(e);
698       }
699     });
700     remove2LeftMenuItem.setText(MessageManager
701             .getString("action.remove_left"));
702     remove2LeftMenuItem.setAccelerator(javax.swing.KeyStroke.getKeyStroke(
703             java.awt.event.KeyEvent.VK_L, Toolkit.getDefaultToolkit()
704                     .getMenuShortcutKeyMask(), false));
705     remove2LeftMenuItem
706             .addActionListener(new java.awt.event.ActionListener()
707             {
708               @Override
709               public void actionPerformed(ActionEvent e)
710               {
711                 remove2LeftMenuItem_actionPerformed(e);
712               }
713             });
714     remove2RightMenuItem.setText(MessageManager
715             .getString("action.remove_right"));
716     remove2RightMenuItem.setAccelerator(javax.swing.KeyStroke.getKeyStroke(
717             java.awt.event.KeyEvent.VK_R, Toolkit.getDefaultToolkit()
718                     .getMenuShortcutKeyMask(), false));
719     remove2RightMenuItem
720             .addActionListener(new java.awt.event.ActionListener()
721             {
722               @Override
723               public void actionPerformed(ActionEvent e)
724               {
725                 remove2RightMenuItem_actionPerformed(e);
726               }
727             });
728     removeGappedColumnMenuItem.setText(MessageManager
729             .getString("action.remove_empty_columns"));
730     removeGappedColumnMenuItem.setAccelerator(javax.swing.KeyStroke
731             .getKeyStroke(java.awt.event.KeyEvent.VK_E, Toolkit
732                     .getDefaultToolkit().getMenuShortcutKeyMask(), false));
733     removeGappedColumnMenuItem
734             .addActionListener(new java.awt.event.ActionListener()
735             {
736               @Override
737               public void actionPerformed(ActionEvent e)
738               {
739                 removeGappedColumnMenuItem_actionPerformed(e);
740               }
741             });
742     removeAllGapsMenuItem.setText(MessageManager
743             .getString("action.remove_all_gaps"));
744     removeAllGapsMenuItem.setAccelerator(javax.swing.KeyStroke
745             .getKeyStroke(java.awt.event.KeyEvent.VK_E, Toolkit
746                     .getDefaultToolkit().getMenuShortcutKeyMask()
747                     | java.awt.event.KeyEvent.SHIFT_MASK, false));
748     removeAllGapsMenuItem
749             .addActionListener(new java.awt.event.ActionListener()
750             {
751               @Override
752               public void actionPerformed(ActionEvent e)
753               {
754                 removeAllGapsMenuItem_actionPerformed(e);
755               }
756             });
757     justifyLeftMenuItem.setText(MessageManager
758             .getString("action.left_justify_alignment"));
759     justifyLeftMenuItem
760             .addActionListener(new java.awt.event.ActionListener()
761             {
762               @Override
763               public void actionPerformed(ActionEvent e)
764               {
765                 justifyLeftMenuItem_actionPerformed(e);
766               }
767             });
768     justifyRightMenuItem.setText(MessageManager
769             .getString("action.right_justify_alignment"));
770     justifyRightMenuItem
771             .addActionListener(new java.awt.event.ActionListener()
772             {
773               @Override
774               public void actionPerformed(ActionEvent e)
775               {
776                 justifyRightMenuItem_actionPerformed(e);
777               }
778             });
779     viewBoxesMenuItem.setText(MessageManager.getString("action.boxes"));
780     viewBoxesMenuItem.setState(true);
781     viewBoxesMenuItem.addActionListener(new java.awt.event.ActionListener()
782     {
783       @Override
784       public void actionPerformed(ActionEvent e)
785       {
786         viewBoxesMenuItem_actionPerformed(e);
787       }
788     });
789     viewTextMenuItem.setText(MessageManager.getString("action.text"));
790     viewTextMenuItem.setState(true);
791     viewTextMenuItem.addActionListener(new java.awt.event.ActionListener()
792     {
793       @Override
794       public void actionPerformed(ActionEvent e)
795       {
796         viewTextMenuItem_actionPerformed(e);
797       }
798     });
799     showNonconservedMenuItem.setText(MessageManager
800             .getString("label.show_non_conversed"));
801     showNonconservedMenuItem.setState(false);
802     showNonconservedMenuItem
803             .addActionListener(new java.awt.event.ActionListener()
804             {
805               @Override
806               public void actionPerformed(ActionEvent e)
807               {
808                 showUnconservedMenuItem_actionPerformed(e);
809               }
810             });
811     sortPairwiseMenuItem.setText(MessageManager
812             .getString("action.by_pairwise_id"));
813     sortPairwiseMenuItem
814             .addActionListener(new java.awt.event.ActionListener()
815             {
816               @Override
817               public void actionPerformed(ActionEvent e)
818               {
819                 sortPairwiseMenuItem_actionPerformed(e);
820               }
821             });
822     sortIDMenuItem.setText(MessageManager.getString("action.by_id"));
823     sortIDMenuItem.addActionListener(new java.awt.event.ActionListener()
824     {
825       @Override
826       public void actionPerformed(ActionEvent e)
827       {
828         sortIDMenuItem_actionPerformed(e);
829       }
830     });
831     sortLengthMenuItem
832             .setText(MessageManager.getString("action.by_length"));
833     sortLengthMenuItem
834             .addActionListener(new java.awt.event.ActionListener()
835             {
836               @Override
837               public void actionPerformed(ActionEvent e)
838               {
839                 sortLengthMenuItem_actionPerformed(e);
840               }
841             });
842     sortGroupMenuItem.setText(MessageManager.getString("action.by_group"));
843     sortGroupMenuItem.addActionListener(new java.awt.event.ActionListener()
844     {
845       @Override
846       public void actionPerformed(ActionEvent e)
847       {
848         sortGroupMenuItem_actionPerformed(e);
849       }
850     });
851     removeRedundancyMenuItem.setText(MessageManager
852             .getString("action.remove_redundancy").concat("..."));
853     removeRedundancyMenuItem.setAccelerator(javax.swing.KeyStroke
854             .getKeyStroke(java.awt.event.KeyEvent.VK_D, Toolkit
855                     .getDefaultToolkit().getMenuShortcutKeyMask(), false));
856     removeRedundancyMenuItem
857             .addActionListener(new java.awt.event.ActionListener()
858             {
859               @Override
860               public void actionPerformed(ActionEvent e)
861               {
862                 removeRedundancyMenuItem_actionPerformed(e);
863               }
864             });
865     pairwiseAlignmentMenuItem.setText(MessageManager
866             .getString("action.pairwise_alignment"));
867     pairwiseAlignmentMenuItem
868             .addActionListener(new java.awt.event.ActionListener()
869             {
870               @Override
871               public void actionPerformed(ActionEvent e)
872               {
873                 pairwiseAlignmentMenuItem_actionPerformed(e);
874               }
875             });
876     PCAMenuItem.setText(MessageManager
877             .getString("label.principal_component_analysis"));
878     PCAMenuItem.addActionListener(new java.awt.event.ActionListener()
879     {
880       @Override
881       public void actionPerformed(ActionEvent e)
882       {
883         PCAMenuItem_actionPerformed(e);
884       }
885     });
886     averageDistanceTreeMenuItem.setText(MessageManager
887             .getString("label.average_distance_identity"));
888     averageDistanceTreeMenuItem
889             .addActionListener(new java.awt.event.ActionListener()
890             {
891               @Override
892               public void actionPerformed(ActionEvent e)
893               {
894                 averageDistanceTreeMenuItem_actionPerformed(e);
895               }
896             });
897     neighbourTreeMenuItem.setText(MessageManager
898             .getString("label.neighbour_joining_identity"));
899     neighbourTreeMenuItem
900             .addActionListener(new java.awt.event.ActionListener()
901             {
902               @Override
903               public void actionPerformed(ActionEvent e)
904               {
905                 neighbourTreeMenuItem_actionPerformed(e);
906               }
907             });
908     this.getContentPane().setLayout(borderLayout1);
909     alignFrameMenuBar.setFont(new java.awt.Font("Verdana", 0, 11));
910     statusBar.setBackground(Color.white);
911     statusBar.setFont(new java.awt.Font("Verdana", 0, 11));
912     statusBar.setBorder(BorderFactory.createLineBorder(Color.black));
913     statusBar.setText(MessageManager.getString("label.status_bar"));
914     outputTextboxMenu.setText(MessageManager
915             .getString("label.out_to_textbox"));
916     clustalColour.setText(MessageManager.getString("label.clustalx"));
917
918     clustalColour.addActionListener(new java.awt.event.ActionListener()
919     {
920       @Override
921       public void actionPerformed(ActionEvent e)
922       {
923         clustalColour_actionPerformed(e);
924       }
925     });
926     zappoColour.setText(MessageManager.getString("label.zappo"));
927     zappoColour.addActionListener(new java.awt.event.ActionListener()
928     {
929       @Override
930       public void actionPerformed(ActionEvent e)
931       {
932         zappoColour_actionPerformed(e);
933       }
934     });
935     taylorColour.setText(MessageManager.getString("label.taylor"));
936     taylorColour.addActionListener(new java.awt.event.ActionListener()
937     {
938       @Override
939       public void actionPerformed(ActionEvent e)
940       {
941         taylorColour_actionPerformed(e);
942       }
943     });
944     hydrophobicityColour.setText(MessageManager
945             .getString("label.hydrophobicity"));
946     hydrophobicityColour
947             .addActionListener(new java.awt.event.ActionListener()
948             {
949               @Override
950               public void actionPerformed(ActionEvent e)
951               {
952                 hydrophobicityColour_actionPerformed(e);
953               }
954             });
955     helixColour.setText(MessageManager.getString("label.helix_propensity"));
956     helixColour.addActionListener(new java.awt.event.ActionListener()
957     {
958       @Override
959       public void actionPerformed(ActionEvent e)
960       {
961         helixColour_actionPerformed(e);
962       }
963     });
964     strandColour.setText(MessageManager
965             .getString("label.strand_propensity"));
966     strandColour.addActionListener(new java.awt.event.ActionListener()
967     {
968       @Override
969       public void actionPerformed(ActionEvent e)
970       {
971         strandColour_actionPerformed(e);
972       }
973     });
974     turnColour.setText(MessageManager.getString("label.turn_propensity"));
975     turnColour.addActionListener(new java.awt.event.ActionListener()
976     {
977       @Override
978       public void actionPerformed(ActionEvent e)
979       {
980         turnColour_actionPerformed(e);
981       }
982     });
983     buriedColour.setText(MessageManager.getString("label.buried_index"));
984     buriedColour.addActionListener(new java.awt.event.ActionListener()
985     {
986       @Override
987       public void actionPerformed(ActionEvent e)
988       {
989         buriedColour_actionPerformed(e);
990       }
991     });
992     userDefinedColour.setText(MessageManager
993             .getString("action.user_defined"));
994     userDefinedColour.addActionListener(new java.awt.event.ActionListener()
995     {
996       @Override
997       public void actionPerformed(ActionEvent e)
998       {
999         userDefinedColour_actionPerformed(e);
1000       }
1001     });
1002     PIDColour
1003             .setText(MessageManager.getString("label.percentage_identity"));
1004     PIDColour.addActionListener(new java.awt.event.ActionListener()
1005     {
1006       @Override
1007       public void actionPerformed(ActionEvent e)
1008       {
1009         PIDColour_actionPerformed(e);
1010       }
1011     });
1012     BLOSUM62Colour
1013             .setText(MessageManager.getString("label.blosum62_score"));
1014     BLOSUM62Colour.addActionListener(new java.awt.event.ActionListener()
1015     {
1016       @Override
1017       public void actionPerformed(ActionEvent e)
1018       {
1019         BLOSUM62Colour_actionPerformed(e);
1020       }
1021     });
1022     nucleotideColour.setText(MessageManager.getString("label.nucleotide"));
1023     nucleotideColour.addActionListener(new java.awt.event.ActionListener()
1024     {
1025       @Override
1026       public void actionPerformed(ActionEvent e)
1027       {
1028         nucleotideColour_actionPerformed(e);
1029       }
1030     });
1031
1032     purinePyrimidineColour.setText(MessageManager
1033             .getString("label.purine_pyrimidine"));
1034     purinePyrimidineColour
1035             .addActionListener(new java.awt.event.ActionListener()
1036             {
1037               @Override
1038               public void actionPerformed(ActionEvent e)
1039               {
1040                 purinePyrimidineColour_actionPerformed(e);
1041               }
1042             });
1043
1044     RNAInteractionColour.setText("RNA Interaction type");
1045     RNAInteractionColour
1046             .addActionListener(new java.awt.event.ActionListener()
1047             {
1048               @Override
1049               public void actionPerformed(ActionEvent e)
1050               {
1051                 RNAInteractionColour_actionPerformed(e);
1052               }
1053             });
1054     /*
1055      * covariationColour.setText("Covariation");
1056      * covariationColour.addActionListener(new java.awt.event.ActionListener() {
1057      * public void actionPerformed(ActionEvent e) {
1058      * covariationColour_actionPerformed(e); } });
1059      */
1060
1061     avDistanceTreeBlosumMenuItem.setText(MessageManager
1062             .getString("label.average_distance_bloslum62"));
1063     avDistanceTreeBlosumMenuItem
1064             .addActionListener(new java.awt.event.ActionListener()
1065             {
1066               @Override
1067               public void actionPerformed(ActionEvent e)
1068               {
1069                 avTreeBlosumMenuItem_actionPerformed(e);
1070               }
1071             });
1072     njTreeBlosumMenuItem.setText(MessageManager
1073             .getString("label.neighbour_blosum62"));
1074     njTreeBlosumMenuItem
1075             .addActionListener(new java.awt.event.ActionListener()
1076             {
1077               @Override
1078               public void actionPerformed(ActionEvent e)
1079               {
1080                 njTreeBlosumMenuItem_actionPerformed(e);
1081               }
1082             });
1083     annotationPanelMenuItem.setActionCommand("");
1084     annotationPanelMenuItem.setText(MessageManager
1085             .getString("label.show_annotations"));
1086     annotationPanelMenuItem.setState(Cache.getDefault("SHOW_ANNOTATIONS",
1087             true));
1088     annotationPanelMenuItem.addActionListener(new ActionListener()
1089     {
1090       @Override
1091       public void actionPerformed(ActionEvent e)
1092       {
1093         annotationPanelMenuItem_actionPerformed(e);
1094       }
1095     });
1096     showAllAlAnnotations.setText(MessageManager
1097             .getString("label.show_all_al_annotations"));
1098     final boolean isAnnotationPanelShown = annotationPanelMenuItem
1099             .getState();
1100     showAllAlAnnotations.setEnabled(isAnnotationPanelShown);
1101     showAllAlAnnotations.addActionListener(new ActionListener()
1102     {
1103       @Override
1104       public void actionPerformed(ActionEvent e)
1105       {
1106         showAllAnnotations_actionPerformed(false, true);
1107       }
1108     });
1109     hideAllAlAnnotations.setText(MessageManager
1110             .getString("label.hide_all_al_annotations"));
1111     hideAllAlAnnotations.setEnabled(isAnnotationPanelShown);
1112     hideAllAlAnnotations.addActionListener(new ActionListener()
1113     {
1114       @Override
1115       public void actionPerformed(ActionEvent e)
1116       {
1117         hideAllAnnotations_actionPerformed(false, true);
1118       }
1119     });
1120     showAllSeqAnnotations.setText(MessageManager
1121             .getString("label.show_all_seq_annotations"));
1122     showAllSeqAnnotations.setEnabled(isAnnotationPanelShown);
1123     showAllSeqAnnotations.addActionListener(new ActionListener()
1124     {
1125       @Override
1126       public void actionPerformed(ActionEvent e)
1127       {
1128         showAllAnnotations_actionPerformed(true, false);
1129       }
1130     });
1131     hideAllSeqAnnotations.setText(MessageManager
1132             .getString("label.hide_all_seq_annotations"));
1133     hideAllSeqAnnotations.setEnabled(isAnnotationPanelShown);
1134     hideAllSeqAnnotations.addActionListener(new ActionListener()
1135     {
1136       @Override
1137       public void actionPerformed(ActionEvent e)
1138       {
1139         hideAllAnnotations_actionPerformed(true, false);
1140       }
1141     });
1142     sortAnnBySequence.setText(MessageManager
1143             .getString("label.sort_annotations_by_sequence"));
1144     sortAnnBySequence.addActionListener(new ActionListener()
1145     {
1146       @Override
1147       public void actionPerformed(ActionEvent e)
1148       {
1149         boolean newState = sortAnnBySequence.getState();
1150         sortAnnByLabel.setState(false);
1151         setAnnotationSortOrder(newState ? SequenceAnnotationOrder.SEQUENCE_AND_LABEL
1152                 : SequenceAnnotationOrder.NONE);
1153         sortAnnotations_actionPerformed();
1154       }
1155     });
1156     sortAnnByLabel.setText(MessageManager
1157             .getString("label.sort_annotations_by_label"));
1158     sortAnnByLabel.addActionListener(new ActionListener()
1159     {
1160       @Override
1161       public void actionPerformed(ActionEvent e)
1162       {
1163         boolean newState = sortAnnByLabel.getState();
1164         sortAnnBySequence.setState(false);
1165         setAnnotationSortOrder(newState ? SequenceAnnotationOrder.LABEL_AND_SEQUENCE
1166                 : SequenceAnnotationOrder.NONE);
1167         sortAnnotations_actionPerformed();
1168       }
1169     });
1170     colourTextMenuItem.setText(MessageManager
1171             .getString("label.colour_text"));
1172     colourTextMenuItem
1173             .addActionListener(new java.awt.event.ActionListener()
1174             {
1175               @Override
1176               public void actionPerformed(ActionEvent e)
1177               {
1178                 colourTextMenuItem_actionPerformed(e);
1179               }
1180             });
1181     htmlMenuItem.setText(MessageManager.getString("label.html"));
1182     htmlMenuItem.addActionListener(new java.awt.event.ActionListener()
1183     {
1184       @Override
1185       public void actionPerformed(ActionEvent e)
1186       {
1187         htmlMenuItem_actionPerformed(e);
1188       }
1189     });
1190     overviewMenuItem.setText(MessageManager
1191             .getString("label.overview_window"));
1192     overviewMenuItem.addActionListener(new java.awt.event.ActionListener()
1193     {
1194       @Override
1195       public void actionPerformed(ActionEvent e)
1196       {
1197         overviewMenuItem_actionPerformed(e);
1198       }
1199     });
1200     undoMenuItem.setEnabled(false);
1201     undoMenuItem.setText(MessageManager.getString("action.undo"));
1202     undoMenuItem.setAccelerator(javax.swing.KeyStroke.getKeyStroke(
1203             java.awt.event.KeyEvent.VK_Z, Toolkit.getDefaultToolkit()
1204                     .getMenuShortcutKeyMask(), false));
1205     undoMenuItem.addActionListener(new java.awt.event.ActionListener()
1206     {
1207       @Override
1208       public void actionPerformed(ActionEvent e)
1209       {
1210         undoMenuItem_actionPerformed(e);
1211       }
1212     });
1213     redoMenuItem.setEnabled(false);
1214     redoMenuItem.setText(MessageManager.getString("action.redo"));
1215     redoMenuItem.setAccelerator(javax.swing.KeyStroke.getKeyStroke(
1216             java.awt.event.KeyEvent.VK_Y, Toolkit.getDefaultToolkit()
1217                     .getMenuShortcutKeyMask(), false));
1218     redoMenuItem.addActionListener(new java.awt.event.ActionListener()
1219     {
1220       @Override
1221       public void actionPerformed(ActionEvent e)
1222       {
1223         redoMenuItem_actionPerformed(e);
1224       }
1225     });
1226     conservationMenuItem.setText(MessageManager
1227             .getString("action.by_conservation"));
1228     conservationMenuItem
1229             .addActionListener(new java.awt.event.ActionListener()
1230             {
1231               @Override
1232               public void actionPerformed(ActionEvent e)
1233               {
1234                 conservationMenuItem_actionPerformed(e);
1235               }
1236             });
1237     noColourmenuItem.setText(MessageManager.getString("label.none"));
1238     noColourmenuItem.addActionListener(new java.awt.event.ActionListener()
1239     {
1240       @Override
1241       public void actionPerformed(ActionEvent e)
1242       {
1243         noColourmenuItem_actionPerformed(e);
1244       }
1245     });
1246     wrapMenuItem.setText(MessageManager.getString("label.wrap"));
1247     wrapMenuItem.addActionListener(new java.awt.event.ActionListener()
1248     {
1249       @Override
1250       public void actionPerformed(ActionEvent e)
1251       {
1252         wrapMenuItem_actionPerformed(e);
1253       }
1254     });
1255     printMenuItem.setText(MessageManager.getString("action.print") + "...");
1256     printMenuItem.setAccelerator(javax.swing.KeyStroke.getKeyStroke(
1257             java.awt.event.KeyEvent.VK_P, Toolkit.getDefaultToolkit()
1258                     .getMenuShortcutKeyMask(), false));
1259     printMenuItem.addActionListener(new java.awt.event.ActionListener()
1260     {
1261       @Override
1262       public void actionPerformed(ActionEvent e)
1263       {
1264         printMenuItem_actionPerformed(e);
1265       }
1266     });
1267     renderGapsMenuItem
1268             .setText(MessageManager.getString("action.show_gaps"));
1269     renderGapsMenuItem.setState(true);
1270     renderGapsMenuItem
1271             .addActionListener(new java.awt.event.ActionListener()
1272             {
1273               @Override
1274               public void actionPerformed(ActionEvent e)
1275               {
1276                 renderGapsMenuItem_actionPerformed(e);
1277               }
1278             });
1279     findMenuItem.setText(MessageManager.getString("action.find"));
1280     findMenuItem.setAccelerator(javax.swing.KeyStroke.getKeyStroke(
1281             java.awt.event.KeyEvent.VK_F, Toolkit.getDefaultToolkit()
1282                     .getMenuShortcutKeyMask(), false));
1283     findMenuItem.setToolTipText(JvSwingUtils.wrapTooltip(true,
1284             MessageManager.getString("label.find_tip")));
1285     findMenuItem.addActionListener(new java.awt.event.ActionListener()
1286     {
1287       @Override
1288       public void actionPerformed(ActionEvent e)
1289       {
1290         findMenuItem_actionPerformed(e);
1291       }
1292     });
1293     abovePIDThreshold.setText(MessageManager
1294             .getString("label.above_identity_threshold"));
1295     abovePIDThreshold.addActionListener(new java.awt.event.ActionListener()
1296     {
1297       @Override
1298       public void actionPerformed(ActionEvent e)
1299       {
1300         abovePIDThreshold_actionPerformed(e);
1301       }
1302     });
1303     showSeqFeatures.setText(MessageManager
1304             .getString("label.show_sequence_features"));
1305     showSeqFeatures.addActionListener(new ActionListener()
1306     {
1307       @Override
1308       public void actionPerformed(ActionEvent actionEvent)
1309       {
1310         showSeqFeatures_actionPerformed(actionEvent);
1311       }
1312     });
1313     /*
1314      * showSeqFeaturesHeight.setText("Vary Sequence Feature Height");
1315      * showSeqFeaturesHeight.addActionListener(new ActionListener() { public
1316      * void actionPerformed(ActionEvent actionEvent) {
1317      * showSeqFeaturesHeight_actionPerformed(actionEvent); } });
1318      */
1319     showDbRefsMenuitem.setText(MessageManager
1320             .getString("label.show_database_refs"));
1321     showDbRefsMenuitem.addActionListener(new ActionListener()
1322     {
1323
1324       @Override
1325       public void actionPerformed(ActionEvent e)
1326       {
1327         showDbRefs_actionPerformed(e);
1328       }
1329
1330     });
1331     showNpFeatsMenuitem.setText(MessageManager
1332             .getString("label.show_non_positional_features"));
1333     showNpFeatsMenuitem.addActionListener(new ActionListener()
1334     {
1335
1336       @Override
1337       public void actionPerformed(ActionEvent e)
1338       {
1339         showNpFeats_actionPerformed(e);
1340       }
1341
1342     });
1343     showGroupConservation.setText(MessageManager
1344             .getString("label.group_conservation"));
1345     showGroupConservation.addActionListener(new ActionListener()
1346     {
1347
1348       @Override
1349       public void actionPerformed(ActionEvent e)
1350       {
1351         showGroupConservation_actionPerformed(e);
1352       }
1353
1354     });
1355
1356     showGroupConsensus.setText(MessageManager
1357             .getString("label.group_consensus"));
1358     showGroupConsensus.addActionListener(new ActionListener()
1359     {
1360
1361       @Override
1362       public void actionPerformed(ActionEvent e)
1363       {
1364         showGroupConsensus_actionPerformed(e);
1365       }
1366
1367     });
1368     showConsensusHistogram.setText(MessageManager
1369             .getString("label.show_consensus_histogram"));
1370     showConsensusHistogram.addActionListener(new ActionListener()
1371     {
1372
1373       @Override
1374       public void actionPerformed(ActionEvent e)
1375       {
1376         showConsensusHistogram_actionPerformed(e);
1377       }
1378
1379     });
1380     showSequenceLogo.setText(MessageManager
1381             .getString("label.show_consensus_logo"));
1382     showSequenceLogo.addActionListener(new ActionListener()
1383     {
1384
1385       @Override
1386       public void actionPerformed(ActionEvent e)
1387       {
1388         showSequenceLogo_actionPerformed(e);
1389       }
1390
1391     });
1392     normaliseSequenceLogo.setText(MessageManager
1393             .getString("label.norm_consensus_logo"));
1394     normaliseSequenceLogo.addActionListener(new ActionListener()
1395     {
1396
1397       @Override
1398       public void actionPerformed(ActionEvent e)
1399       {
1400         normaliseSequenceLogo_actionPerformed(e);
1401       }
1402
1403     });
1404     applyAutoAnnotationSettings.setText(MessageManager
1405             .getString("label.apply_all_groups"));
1406     applyAutoAnnotationSettings.setState(false);
1407     applyAutoAnnotationSettings.setVisible(true);
1408     applyAutoAnnotationSettings.addActionListener(new ActionListener()
1409     {
1410       @Override
1411       public void actionPerformed(ActionEvent e)
1412       {
1413         applyAutoAnnotationSettings_actionPerformed(e);
1414       }
1415     });
1416
1417     showAutoFirst.setText(MessageManager.getString("label.show_first"));
1418     showAutoFirst.setState(Cache.getDefault("SHOW_AUTOCALC_ABOVE", false));
1419     showAutoFirst.addActionListener(new ActionListener()
1420     {
1421       @Override
1422       public void actionPerformed(ActionEvent e)
1423       {
1424         boolean sortFirst = showAutoFirst.getState();
1425         setShowAutoCalculatedAbove(sortFirst);
1426         showAutoLast.setState(!sortFirst);
1427         sortAnnotations_actionPerformed();
1428       }
1429     });
1430     showAutoLast.setText(MessageManager.getString("label.show_last"));
1431     showAutoLast.setState(!showAutoFirst.getState());
1432     showAutoLast.addActionListener(new ActionListener()
1433     {
1434       @Override
1435       public void actionPerformed(ActionEvent e)
1436       {
1437         boolean sortLast = showAutoLast.getState();
1438         setShowAutoCalculatedAbove(!sortLast);
1439         showAutoFirst.setState(!sortLast);
1440         sortAnnotations_actionPerformed();
1441       }
1442     });
1443
1444     nucleotideColour.setText(MessageManager.getString("label.nucleotide"));
1445     nucleotideColour.addActionListener(new java.awt.event.ActionListener()
1446     {
1447       @Override
1448       public void actionPerformed(ActionEvent e)
1449       {
1450         nucleotideColour_actionPerformed(e);
1451       }
1452     });
1453
1454     tcoffeeColour.setText(MessageManager.getString("label.tcoffee_scores"));
1455     tcoffeeColour.setEnabled(false);
1456     tcoffeeColour.addActionListener(new ActionListener()
1457     {
1458
1459       @Override
1460       public void actionPerformed(ActionEvent e)
1461       {
1462         tcoffeeColorScheme_actionPerformed(e);
1463       }
1464     });
1465
1466     deleteGroups
1467             .setText(MessageManager.getString("action.undefine_groups"));
1468     deleteGroups.setAccelerator(javax.swing.KeyStroke.getKeyStroke(
1469             java.awt.event.KeyEvent.VK_U, Toolkit.getDefaultToolkit()
1470                     .getMenuShortcutKeyMask(), false));
1471     deleteGroups.addActionListener(new java.awt.event.ActionListener()
1472     {
1473       @Override
1474       public void actionPerformed(ActionEvent e)
1475       {
1476         deleteGroups_actionPerformed(e);
1477       }
1478     });
1479     createGroup.setText(MessageManager.getString("action.create_groups"));
1480     createGroup.setAccelerator(javax.swing.KeyStroke.getKeyStroke(
1481             java.awt.event.KeyEvent.VK_G, Toolkit.getDefaultToolkit()
1482                     .getMenuShortcutKeyMask(), false));
1483     createGroup.addActionListener(new java.awt.event.ActionListener()
1484     {
1485       @Override
1486       public void actionPerformed(ActionEvent e)
1487       {
1488         createGroup_actionPerformed(e);
1489       }
1490     });
1491     unGroup.setText(MessageManager.getString("action.remove_group"));
1492     unGroup.setAccelerator(javax.swing.KeyStroke.getKeyStroke(
1493             java.awt.event.KeyEvent.VK_G, Toolkit.getDefaultToolkit()
1494                     .getMenuShortcutKeyMask()
1495                     | java.awt.event.KeyEvent.SHIFT_MASK, false));
1496     unGroup.addActionListener(new java.awt.event.ActionListener()
1497     {
1498       @Override
1499       public void actionPerformed(ActionEvent e)
1500       {
1501         unGroup_actionPerformed(e);
1502       }
1503     });
1504     copy.setText(MessageManager.getString("action.copy"));
1505     copy.setAccelerator(javax.swing.KeyStroke.getKeyStroke(
1506             java.awt.event.KeyEvent.VK_C, Toolkit.getDefaultToolkit()
1507                     .getMenuShortcutKeyMask(), false));
1508
1509     copy.addActionListener(new java.awt.event.ActionListener()
1510     {
1511       @Override
1512       public void actionPerformed(ActionEvent e)
1513       {
1514         copy_actionPerformed(e);
1515       }
1516     });
1517     cut.setText(MessageManager.getString("action.cut"));
1518     cut.setAccelerator(javax.swing.KeyStroke.getKeyStroke(
1519             java.awt.event.KeyEvent.VK_X, Toolkit.getDefaultToolkit()
1520                     .getMenuShortcutKeyMask(), false));
1521     cut.addActionListener(new java.awt.event.ActionListener()
1522     {
1523       @Override
1524       public void actionPerformed(ActionEvent e)
1525       {
1526         cut_actionPerformed(e);
1527       }
1528     });
1529     delete.setText(MessageManager.getString("action.delete"));
1530     delete.addActionListener(new java.awt.event.ActionListener()
1531     {
1532       @Override
1533       public void actionPerformed(ActionEvent e)
1534       {
1535         delete_actionPerformed(e);
1536       }
1537     });
1538     pasteMenu.setText(MessageManager.getString("action.paste"));
1539     pasteNew.setText(MessageManager.getString("label.to_new_alignment"));
1540     pasteNew.setAccelerator(javax.swing.KeyStroke.getKeyStroke(
1541             java.awt.event.KeyEvent.VK_V, Toolkit.getDefaultToolkit()
1542                     .getMenuShortcutKeyMask()
1543                     | java.awt.event.KeyEvent.SHIFT_MASK, false));
1544     pasteNew.addActionListener(new java.awt.event.ActionListener()
1545     {
1546       @Override
1547       public void actionPerformed(ActionEvent e)
1548       {
1549         pasteNew_actionPerformed(e);
1550       }
1551     });
1552     pasteThis.setText(MessageManager.getString("label.to_this_alignment"));
1553     pasteThis.setAccelerator(javax.swing.KeyStroke.getKeyStroke(
1554             java.awt.event.KeyEvent.VK_V, Toolkit.getDefaultToolkit()
1555                     .getMenuShortcutKeyMask(), false));
1556     pasteThis.addActionListener(new java.awt.event.ActionListener()
1557     {
1558       @Override
1559       public void actionPerformed(ActionEvent e)
1560       {
1561         pasteThis_actionPerformed(e);
1562       }
1563     });
1564     applyToAllGroups.setText(MessageManager
1565             .getString("label.apply_colour_to_all_groups"));
1566     applyToAllGroups.addActionListener(new java.awt.event.ActionListener()
1567     {
1568       @Override
1569       public void actionPerformed(ActionEvent e)
1570       {
1571         applyToAllGroups_actionPerformed(e);
1572       }
1573     });
1574     createPNG.addActionListener(new java.awt.event.ActionListener()
1575     {
1576       @Override
1577       public void actionPerformed(ActionEvent e)
1578       {
1579         createPNG(null);
1580       }
1581     });
1582     createPNG.setActionCommand(MessageManager
1583             .getString("label.save_png_image"));
1584     createPNG.setText("PNG");
1585     font.setText(MessageManager.getString("action.font"));
1586     font.addActionListener(new java.awt.event.ActionListener()
1587     {
1588       @Override
1589       public void actionPerformed(ActionEvent e)
1590       {
1591         font_actionPerformed(e);
1592       }
1593     });
1594
1595     seqLimits.setText(MessageManager
1596             .getString("label.show_sequence_limits"));
1597     seqLimits.setState(jalview.bin.Cache.getDefault("SHOW_JVSUFFIX", true));
1598     seqLimits.addActionListener(new java.awt.event.ActionListener()
1599     {
1600       @Override
1601       public void actionPerformed(ActionEvent e)
1602       {
1603         seqLimit_actionPerformed(e);
1604       }
1605     });
1606     epsFile.setText("EPS");
1607     epsFile.addActionListener(new java.awt.event.ActionListener()
1608     {
1609       @Override
1610       public void actionPerformed(ActionEvent e)
1611       {
1612         createEPS(null);
1613       }
1614     });
1615     LoadtreeMenuItem.setActionCommand(MessageManager
1616             .getString("label.load_tree_for_sequence_set"));
1617     LoadtreeMenuItem.setText(MessageManager
1618             .getString("label.load_associated_tree"));
1619     LoadtreeMenuItem.addActionListener(new java.awt.event.ActionListener()
1620     {
1621       @Override
1622       public void actionPerformed(ActionEvent e)
1623       {
1624         LoadtreeMenuItem_actionPerformed(e);
1625       }
1626     });
1627
1628     scaleAbove.setVisible(false);
1629     scaleAbove.setText(MessageManager.getString("action.scale_above"));
1630     scaleAbove.addActionListener(new java.awt.event.ActionListener()
1631     {
1632       @Override
1633       public void actionPerformed(ActionEvent e)
1634       {
1635         scaleAbove_actionPerformed(e);
1636       }
1637     });
1638     scaleLeft.setVisible(false);
1639     scaleLeft.setSelected(true);
1640     scaleLeft.setText(MessageManager.getString("action.scale_left"));
1641     scaleLeft.addActionListener(new java.awt.event.ActionListener()
1642     {
1643       @Override
1644       public void actionPerformed(ActionEvent e)
1645       {
1646         scaleLeft_actionPerformed(e);
1647       }
1648     });
1649     scaleRight.setVisible(false);
1650     scaleRight.setSelected(true);
1651     scaleRight.setText(MessageManager.getString("action.scale_right"));
1652     scaleRight.addActionListener(new java.awt.event.ActionListener()
1653     {
1654       @Override
1655       public void actionPerformed(ActionEvent e)
1656       {
1657         scaleRight_actionPerformed(e);
1658       }
1659     });
1660     centreColumnLabelsMenuItem.setVisible(true);
1661     centreColumnLabelsMenuItem.setState(false);
1662     centreColumnLabelsMenuItem.setText(MessageManager
1663             .getString("label.centre_column_labels"));
1664     centreColumnLabelsMenuItem
1665             .addActionListener(new java.awt.event.ActionListener()
1666             {
1667               @Override
1668               public void actionPerformed(ActionEvent e)
1669               {
1670                 centreColumnLabels_actionPerformed(e);
1671               }
1672             });
1673     followHighlightMenuItem.setVisible(true);
1674     followHighlightMenuItem.setState(true);
1675     followHighlightMenuItem.setText(MessageManager
1676             .getString("label.automatic_scrolling"));
1677     followHighlightMenuItem.addActionListener(new ActionListener()
1678     {
1679
1680       @Override
1681       public void actionPerformed(ActionEvent e)
1682       {
1683         followHighlight_actionPerformed();
1684       }
1685
1686     });
1687
1688     modifyPID.setText(MessageManager
1689             .getString("label.modify_identity_thereshold"));
1690     modifyPID.addActionListener(new java.awt.event.ActionListener()
1691     {
1692       @Override
1693       public void actionPerformed(ActionEvent e)
1694       {
1695         modifyPID_actionPerformed(e);
1696       }
1697     });
1698     modifyConservation.setText(MessageManager
1699             .getString("label.modify_conservation_thereshold"));
1700     modifyConservation
1701             .addActionListener(new java.awt.event.ActionListener()
1702             {
1703               @Override
1704               public void actionPerformed(ActionEvent e)
1705               {
1706                 modifyConservation_actionPerformed(e);
1707               }
1708             });
1709     sortByTreeMenu
1710             .setText(MessageManager.getString("action.by_tree_order"));
1711     sort.setText(MessageManager.getString("action.sort"));
1712     sort.addMenuListener(new MenuListener()
1713     {
1714       @Override
1715       public void menuSelected(MenuEvent e)
1716       {
1717         buildTreeMenu();
1718       }
1719
1720       @Override
1721       public void menuDeselected(MenuEvent e)
1722       {
1723       }
1724
1725       @Override
1726       public void menuCanceled(MenuEvent e)
1727       {
1728       }
1729     });
1730     sortByAnnotScore.setText(MessageManager
1731             .getString("label.sort_by_score"));
1732     sort.add(sortByAnnotScore);
1733     sortByAnnotScore.addMenuListener(new javax.swing.event.MenuListener()
1734     {
1735
1736       @Override
1737       public void menuCanceled(MenuEvent e)
1738       {
1739       }
1740
1741       @Override
1742       public void menuDeselected(MenuEvent e)
1743       {
1744       }
1745
1746       @Override
1747       public void menuSelected(MenuEvent e)
1748       {
1749         buildSortByAnnotationScoresMenu();
1750       }
1751     });
1752     sortByAnnotScore.setVisible(false);
1753
1754     calculateTree
1755             .setText(MessageManager.getString("action.calculate_tree"));
1756
1757     jMenu2.setText(MessageManager.getString("label.export_image"));
1758     padGapsMenuitem.setText(MessageManager.getString("label.pad_gaps"));
1759     padGapsMenuitem.setState(jalview.bin.Cache
1760             .getDefault("PAD_GAPS", false));
1761     padGapsMenuitem.addActionListener(new ActionListener()
1762     {
1763       @Override
1764       public void actionPerformed(ActionEvent e)
1765       {
1766         padGapsMenuitem_actionPerformed(e);
1767       }
1768     });
1769     vamsasStore.setVisible(false);
1770     vamsasStore.setText(MessageManager.getString("label.vamsas_store"));
1771     vamsasStore.addActionListener(new ActionListener()
1772     {
1773       @Override
1774       public void actionPerformed(ActionEvent e)
1775       {
1776         vamsasStore_actionPerformed(e);
1777       }
1778     });
1779     showTranslation.setText(MessageManager
1780             .getString("label.translate_cDNA"));
1781     showTranslation.addActionListener(new ActionListener()
1782     {
1783       @Override
1784       public void actionPerformed(ActionEvent e)
1785       {
1786         showTranslation_actionPerformed(e);
1787       }
1788     });
1789     extractScores.setText(MessageManager.getString("label.extract_scores")
1790             + "...");
1791     extractScores.addActionListener(new ActionListener()
1792     {
1793       @Override
1794       public void actionPerformed(ActionEvent e)
1795       {
1796         extractScores_actionPerformed(e);
1797       }
1798     });
1799     extractScores.setVisible(true); // JBPNote: TODO: make gui for regex based
1800     // score extraction
1801     showProducts.setText(MessageManager.getString("label.get_cross_refs"));
1802     /*
1803      * showProducts.addActionListener(new ActionListener() {
1804      * 
1805      * public void actionPerformed(ActionEvent e) {
1806      * showProducts_actionPerformed(e); } });
1807      */
1808     openFeatureSettings.setText(MessageManager
1809             .getString("label.feature_settings"));
1810     openFeatureSettings.addActionListener(new ActionListener()
1811     {
1812       @Override
1813       public void actionPerformed(ActionEvent e)
1814       {
1815         featureSettings_actionPerformed(e);
1816       }
1817     });
1818     fetchSequence
1819             .setText(MessageManager.getString("label.fetch_sequences"));
1820     fetchSequence.addActionListener(new ActionListener()
1821     {
1822       @Override
1823       public void actionPerformed(ActionEvent e)
1824       {
1825         fetchSequence_actionPerformed(e);
1826       }
1827     });
1828
1829     annotationColour.setText(MessageManager
1830             .getString("action.by_annotation"));
1831     annotationColour.addActionListener(new ActionListener()
1832     {
1833       @Override
1834       public void actionPerformed(ActionEvent e)
1835       {
1836         annotationColour_actionPerformed(e);
1837       }
1838     });
1839
1840     rnahelicesColour.setText(MessageManager
1841             .getString("action.by_rna_helixes"));
1842     rnahelicesColour.addActionListener(new ActionListener()
1843     {
1844       @Override
1845       public void actionPerformed(ActionEvent e)
1846       {
1847         rnahelicesColour_actionPerformed(e);
1848       }
1849     });
1850
1851     associatedData.setText(MessageManager
1852             .getString("label.load_features_annotations"));
1853     associatedData.addActionListener(new ActionListener()
1854     {
1855       @Override
1856       public void actionPerformed(ActionEvent e)
1857       {
1858         associatedData_actionPerformed(e);
1859       }
1860     });
1861     autoCalculate.setText(MessageManager
1862             .getString("label.autocalculate_consensus"));
1863     autoCalculate.setState(jalview.bin.Cache.getDefault(
1864             "AUTO_CALC_CONSENSUS", true));
1865     autoCalculate.addActionListener(new ActionListener()
1866     {
1867       @Override
1868       public void actionPerformed(ActionEvent e)
1869       {
1870         autoCalculate_actionPerformed(e);
1871       }
1872     });
1873     sortByTree.setText(MessageManager
1874             .getString("label.sort_alignment_new_tree"));
1875     sortByTree
1876             .setToolTipText("<html>"
1877                     + MessageManager
1878                             .getString("label.enable_automatically_sort_alignment_when_open_new_tree"));
1879     sortByTree
1880             .setState(jalview.bin.Cache.getDefault("SORT_BY_TREE", false));
1881     sortByTree.addActionListener(new ActionListener()
1882     {
1883       @Override
1884       public void actionPerformed(ActionEvent e)
1885       {
1886         sortByTreeOption_actionPerformed(e);
1887       }
1888     });
1889
1890     listenToViewSelections.setText(MessageManager
1891             .getString("label.listen_for_selections"));
1892     listenToViewSelections
1893             .setToolTipText("<html>"
1894                     + MessageManager
1895                             .getString("label.selections_mirror_selections_made_same_sequences_other_views"));
1896     listenToViewSelections.setState(false);
1897     listenToViewSelections.addActionListener(new ActionListener()
1898     {
1899       @Override
1900       public void actionPerformed(ActionEvent e)
1901       {
1902         listenToViewSelections_actionPerformed(e);
1903       }
1904     });
1905
1906     addSequenceMenu
1907             .setText(MessageManager.getString("label.add_sequences"));
1908     addFromFile.setText(MessageManager.getString("label.from_file"));
1909     addFromFile.addActionListener(new ActionListener()
1910     {
1911       @Override
1912       public void actionPerformed(ActionEvent e)
1913       {
1914         addFromFile_actionPerformed(e);
1915       }
1916     });
1917     addFromText.setText(MessageManager.getString("label.from_textbox"));
1918     addFromText.addActionListener(new ActionListener()
1919     {
1920       @Override
1921       public void actionPerformed(ActionEvent e)
1922       {
1923         addFromText_actionPerformed(e);
1924       }
1925     });
1926     addFromURL.setText(MessageManager.getString("label.from_url"));
1927     addFromURL.addActionListener(new ActionListener()
1928     {
1929       @Override
1930       public void actionPerformed(ActionEvent e)
1931       {
1932         addFromURL_actionPerformed(e);
1933       }
1934     });
1935     exportFeatures.setText(MessageManager
1936             .getString("label.export_features"));
1937     exportFeatures.addActionListener(new ActionListener()
1938     {
1939       @Override
1940       public void actionPerformed(ActionEvent e)
1941       {
1942         exportFeatures_actionPerformed(e);
1943       }
1944     });
1945     exportAnnotations.setText(MessageManager
1946             .getString("label.export_annotations"));
1947     exportAnnotations.addActionListener(new ActionListener()
1948     {
1949       @Override
1950       public void actionPerformed(ActionEvent e)
1951       {
1952         exportAnnotations_actionPerformed(e);
1953       }
1954     });
1955     statusPanel.setLayout(gridLayout1);
1956     jMenu3.setText(MessageManager.getString("action.show"));
1957     showAllSeqs.setText(MessageManager.getString("label.all_sequences"));
1958     showAllSeqs.setToolTipText(MessageManager
1959             .getString("label.toggle_sequence_visibility"));
1960     showAllSeqs.addActionListener(new ActionListener()
1961     {
1962       @Override
1963       public void actionPerformed(ActionEvent e)
1964       {
1965         showAllSeqs_actionPerformed(e);
1966       }
1967     });
1968     showAllColumns.setText(MessageManager.getString("label.all_columns"));
1969     showAllColumns.setToolTipText(MessageManager
1970             .getString("label.toggle_columns_visibility"));
1971     showAllColumns.addActionListener(new ActionListener()
1972     {
1973       @Override
1974       public void actionPerformed(ActionEvent e)
1975       {
1976         showAllColumns_actionPerformed(e);
1977       }
1978     });
1979     hideMenu.setText(MessageManager.getString("action.hide"));
1980     hideSelSequences.setText(MessageManager
1981             .getString("label.selected_sequences"));
1982     hideSelSequences.setToolTipText(MessageManager
1983             .getString("label.toggle_sequence_visibility"));
1984     hideSelSequences.addActionListener(new ActionListener()
1985     {
1986       @Override
1987       public void actionPerformed(ActionEvent e)
1988       {
1989         hideSelSequences_actionPerformed(e);
1990       }
1991     });
1992     hideSelColumns.setText(MessageManager
1993             .getString("label.selected_columns"));
1994     hideSelColumns.setToolTipText(MessageManager
1995             .getString("label.toggle_columns_visibility"));
1996     hideSelColumns.addActionListener(new ActionListener()
1997     {
1998       @Override
1999       public void actionPerformed(ActionEvent e)
2000       {
2001         hideSelColumns_actionPerformed(e);
2002       }
2003     });
2004     hideAllSelection.setText(MessageManager
2005             .getString("label.selected_region"));
2006     hideAllSelection.addActionListener(new ActionListener()
2007     {
2008       @Override
2009       public void actionPerformed(ActionEvent e)
2010       {
2011         hideAllSelection_actionPerformed(e);
2012       }
2013     });
2014     // TODO: should be hidden if no selection exists.
2015     hideAllButSelection.setText(MessageManager
2016             .getString("label.all_but_selected_region"));
2017     hideAllButSelection.addActionListener(new ActionListener()
2018     {
2019       @Override
2020       public void actionPerformed(ActionEvent e)
2021       {
2022         hideAllButSelection_actionPerformed(e);
2023       }
2024     });
2025     showAllhidden.setText(MessageManager
2026             .getString("label.all_sequences_columns"));
2027     showAllhidden.setToolTipText(MessageManager
2028             .getString("label.toggles_visibility_hidden_selected_regions"));
2029     showAllhidden.addActionListener(new ActionListener()
2030     {
2031       @Override
2032       public void actionPerformed(ActionEvent e)
2033       {
2034         showAllhidden_actionPerformed(e);
2035       }
2036     });
2037     hiddenMarkers.setText(MessageManager
2038             .getString("action.show_hidden_markers"));
2039     hiddenMarkers.addActionListener(new ActionListener()
2040     {
2041       @Override
2042       public void actionPerformed(ActionEvent e)
2043       {
2044         hiddenMarkers_actionPerformed(e);
2045       }
2046     });
2047     invertColSel.setText(MessageManager
2048             .getString("action.invert_column_selection"));
2049     invertColSel.setAccelerator(javax.swing.KeyStroke.getKeyStroke(
2050             java.awt.event.KeyEvent.VK_I, Toolkit.getDefaultToolkit()
2051                     .getMenuShortcutKeyMask()
2052                     | java.awt.event.KeyEvent.ALT_MASK, false));
2053     invertColSel.addActionListener(new ActionListener()
2054     {
2055       @Override
2056       public void actionPerformed(ActionEvent e)
2057       {
2058         invertColSel_actionPerformed(e);
2059       }
2060     });
2061     tabbedPane.addChangeListener(new javax.swing.event.ChangeListener()
2062     {
2063       @Override
2064       public void stateChanged(ChangeEvent evt)
2065       {
2066         JTabbedPane pane = (JTabbedPane) evt.getSource();
2067         int sel = pane.getSelectedIndex();
2068         tabSelectionChanged(sel);
2069       }
2070     });
2071     tabbedPane.addMouseListener(new MouseAdapter()
2072     {
2073       @Override
2074       public void mousePressed(MouseEvent e)
2075       {
2076         tabbedPane_mousePressed(e);
2077       }
2078     });
2079     tabbedPane.addFocusListener(new FocusAdapter()
2080     {
2081       @Override
2082       public void focusGained(FocusEvent e)
2083       {
2084         tabbedPane_focusGained(e);
2085       }
2086     });
2087     save.setText(MessageManager.getString("action.save"));
2088     save.setAccelerator(javax.swing.KeyStroke.getKeyStroke(
2089             java.awt.event.KeyEvent.VK_S, Toolkit.getDefaultToolkit()
2090                     .getMenuShortcutKeyMask(), false));
2091     save.addActionListener(new ActionListener()
2092     {
2093       @Override
2094       public void actionPerformed(ActionEvent e)
2095       {
2096         save_actionPerformed(e);
2097       }
2098     });
2099     reload.setEnabled(false);
2100     reload.setText(MessageManager.getString("action.reload"));
2101     reload.addActionListener(new ActionListener()
2102     {
2103       @Override
2104       public void actionPerformed(ActionEvent e)
2105       {
2106         reload_actionPerformed(e);
2107       }
2108     });
2109     newView.setText(MessageManager.getString("action.new_view"));
2110     newView.setAccelerator(javax.swing.KeyStroke.getKeyStroke(
2111             java.awt.event.KeyEvent.VK_T, Toolkit.getDefaultToolkit()
2112                     .getMenuShortcutKeyMask(), false));
2113     newView.addActionListener(new ActionListener()
2114     {
2115       @Override
2116       public void actionPerformed(ActionEvent e)
2117       {
2118         newView_actionPerformed(e);
2119       }
2120     });
2121     tabbedPane.setToolTipText("<html><i>"
2122             + MessageManager.getString("label.rename_tab_eXpand_reGroup")
2123             + "</i></html>");
2124     textColour.setText(MessageManager.getString("label.colour_text")
2125             + "...");
2126     textColour.addActionListener(new ActionListener()
2127     {
2128       @Override
2129       public void actionPerformed(ActionEvent e)
2130       {
2131         textColour_actionPerformed(e);
2132       }
2133     });
2134     formatMenu.setText(MessageManager.getString("action.format"));
2135     selectMenu.setText(MessageManager.getString("action.select"));
2136     idRightAlign.setText(MessageManager
2137             .getString("label.right_align_sequence_id"));
2138     idRightAlign.addActionListener(new ActionListener()
2139     {
2140       @Override
2141       public void actionPerformed(ActionEvent e)
2142       {
2143         idRightAlign_actionPerformed(e);
2144       }
2145     });
2146     gatherViews.setEnabled(false);
2147     gatherViews.setText(MessageManager.getString("action.gather_views"));
2148     gatherViews.setAccelerator(javax.swing.KeyStroke.getKeyStroke(
2149             java.awt.event.KeyEvent.VK_G, 0, false));
2150     gatherViews.addActionListener(new ActionListener()
2151     {
2152       @Override
2153       public void actionPerformed(ActionEvent e)
2154       {
2155         gatherViews_actionPerformed(e);
2156       }
2157     });
2158     expandViews.setEnabled(false);
2159     expandViews.setText(MessageManager.getString("action.expand_views"));
2160     expandViews.setAccelerator(javax.swing.KeyStroke.getKeyStroke(
2161             java.awt.event.KeyEvent.VK_X, 0, false));
2162     expandViews.addActionListener(new ActionListener()
2163     {
2164       @Override
2165       public void actionPerformed(ActionEvent e)
2166       {
2167         expandViews_actionPerformed(e);
2168       }
2169     });
2170     pageSetup
2171             .setText(MessageManager.getString("action.page_setup") + "...");
2172     pageSetup.addActionListener(new ActionListener()
2173     {
2174       @Override
2175       public void actionPerformed(ActionEvent e)
2176       {
2177         pageSetup_actionPerformed(e);
2178       }
2179     });
2180     alignmentProperties.setText(MessageManager
2181             .getString("label.alignment_props") + "...");
2182     alignmentProperties.addActionListener(new ActionListener()
2183     {
2184       @Override
2185       public void actionPerformed(ActionEvent actionEvent)
2186       {
2187         alignmentProperties();
2188       }
2189     });
2190     tooltipSettingsMenu.setText(MessageManager
2191             .getString("label.sequence_id_tooltip"));
2192     autoAnnMenu.setText(MessageManager
2193             .getString("label.autocalculated_annotation"));
2194     alignFrameMenuBar.add(fileMenu);
2195     alignFrameMenuBar.add(editMenu);
2196     alignFrameMenuBar.add(selectMenu);
2197     alignFrameMenuBar.add(viewMenu);
2198     alignFrameMenuBar.add(annotationsMenu);
2199     alignFrameMenuBar.add(formatMenu);
2200     alignFrameMenuBar.add(colourMenu);
2201     alignFrameMenuBar.add(calculateMenu);
2202     alignFrameMenuBar.add(webService);
2203     fileMenu.add(fetchSequence);
2204     fileMenu.add(addSequenceMenu);
2205     fileMenu.add(reload);
2206     fileMenu.addSeparator();
2207     fileMenu.add(vamsasStore);
2208     fileMenu.add(save);
2209     fileMenu.add(saveAs);
2210     fileMenu.add(outputTextboxMenu);
2211     fileMenu.add(pageSetup);
2212     fileMenu.add(printMenuItem);
2213     fileMenu.addSeparator();
2214     fileMenu.add(jMenu2);
2215     fileMenu.add(exportFeatures);
2216     fileMenu.add(exportAnnotations);
2217     fileMenu.add(LoadtreeMenuItem);
2218     fileMenu.add(associatedData);
2219     fileMenu.addSeparator();
2220     fileMenu.add(closeMenuItem);
2221     editMenu.add(undoMenuItem);
2222     editMenu.add(redoMenuItem);
2223     editMenu.add(cut);
2224     editMenu.add(copy);
2225     editMenu.add(pasteMenu);
2226     editMenu.add(delete);
2227     editMenu.addSeparator();
2228     editMenu.add(remove2LeftMenuItem);
2229     editMenu.add(remove2RightMenuItem);
2230     editMenu.add(removeGappedColumnMenuItem);
2231     editMenu.add(removeAllGapsMenuItem);
2232     editMenu.add(removeRedundancyMenuItem);
2233     editMenu.addSeparator();
2234     // dont add these yet in the CVS build - they cannot be undone!
2235     // Excluded from Jalview 2.5 release - undo needs to be implemented.
2236     // editMenu.add(justifyLeftMenuItem);
2237     // editMenu.add(justifyRightMenuItem);
2238     // editMenu.addSeparator();
2239     editMenu.add(padGapsMenuitem);
2240     viewMenu.add(newView);
2241     viewMenu.add(expandViews);
2242     viewMenu.add(gatherViews);
2243     viewMenu.addSeparator();
2244     viewMenu.add(jMenu3);
2245     viewMenu.add(hideMenu);
2246     viewMenu.addSeparator();
2247     viewMenu.add(followHighlightMenuItem);
2248     annotationsMenu.add(annotationPanelMenuItem);
2249     annotationsMenu.addSeparator();
2250     annotationsMenu.add(showAllAlAnnotations);
2251     annotationsMenu.add(hideAllAlAnnotations);
2252     annotationsMenu.addSeparator();
2253     annotationsMenu.add(showAllSeqAnnotations);
2254     annotationsMenu.add(hideAllSeqAnnotations);
2255     annotationsMenu.add(sortAnnBySequence);
2256     annotationsMenu.add(sortAnnByLabel);
2257     annotationsMenu.addSeparator();
2258     autoAnnMenu.add(showAutoFirst);
2259     autoAnnMenu.add(showAutoLast);
2260     autoAnnMenu.addSeparator();
2261     autoAnnMenu.add(applyAutoAnnotationSettings);
2262     autoAnnMenu.add(showConsensusHistogram);
2263     autoAnnMenu.add(showSequenceLogo);
2264     autoAnnMenu.add(normaliseSequenceLogo);
2265     autoAnnMenu.addSeparator();
2266     autoAnnMenu.add(showGroupConservation);
2267     autoAnnMenu.add(showGroupConsensus);
2268     annotationsMenu.add(autoAnnMenu);
2269     viewMenu.addSeparator();
2270     viewMenu.add(showSeqFeatures);
2271     // viewMenu.add(showSeqFeaturesHeight);
2272
2273     viewMenu.add(openFeatureSettings);
2274     tooltipSettingsMenu.add(showDbRefsMenuitem);
2275     tooltipSettingsMenu.add(showNpFeatsMenuitem);
2276     viewMenu.add(tooltipSettingsMenu);
2277     viewMenu.addSeparator();
2278     viewMenu.add(alignmentProperties);
2279     viewMenu.addSeparator();
2280     viewMenu.add(overviewMenuItem);
2281     colourMenu.add(applyToAllGroups);
2282     colourMenu.add(textColour);
2283     colourMenu.addSeparator();
2284     colourMenu.add(noColourmenuItem);
2285     colourMenu.add(clustalColour);
2286     colourMenu.add(BLOSUM62Colour);
2287     colourMenu.add(PIDColour);
2288     colourMenu.add(zappoColour);
2289     colourMenu.add(taylorColour);
2290     colourMenu.add(hydrophobicityColour);
2291     colourMenu.add(helixColour);
2292     colourMenu.add(strandColour);
2293     colourMenu.add(turnColour);
2294     colourMenu.add(buriedColour);
2295     colourMenu.add(nucleotideColour);
2296     colourMenu.add(purinePyrimidineColour);
2297     colourMenu.add(RNAInteractionColour);
2298     // colourMenu.add(covariationColour);
2299     colourMenu.add(tcoffeeColour);
2300     colourMenu.add(userDefinedColour);
2301     colourMenu.addSeparator();
2302     colourMenu.add(conservationMenuItem);
2303     colourMenu.add(modifyConservation);
2304     colourMenu.add(abovePIDThreshold);
2305     colourMenu.add(modifyPID);
2306     colourMenu.add(annotationColour);
2307     colourMenu.add(rnahelicesColour);
2308     calculateMenu.add(sort);
2309     calculateMenu.add(calculateTree);
2310     calculateMenu.addSeparator();
2311     calculateMenu.add(pairwiseAlignmentMenuItem);
2312     calculateMenu.add(PCAMenuItem);
2313     calculateMenu.addSeparator();
2314     calculateMenu.add(showTranslation);
2315     calculateMenu.add(showProducts);
2316     calculateMenu.add(autoCalculate);
2317     calculateMenu.add(sortByTree);
2318     calculateMenu.addSeparator();
2319     calculateMenu.add(extractScores);
2320     webServiceNoServices = new JMenuItem(
2321             MessageManager.getString("label.no_services"));
2322     webService.add(webServiceNoServices);
2323     pasteMenu.add(pasteNew);
2324     pasteMenu.add(pasteThis);
2325     sort.add(sortIDMenuItem);
2326     sort.add(sortLengthMenuItem);
2327     sort.add(sortGroupMenuItem);
2328     sort.add(sortPairwiseMenuItem);
2329     sort.add(sortByTreeMenu);
2330     jMenu2.add(htmlMenuItem);
2331     jMenu2.add(epsFile);
2332     jMenu2.add(createPNG);
2333     addSequenceMenu.add(addFromFile);
2334     addSequenceMenu.add(addFromText);
2335     addSequenceMenu.add(addFromURL);
2336     this.getContentPane().add(statusPanel, java.awt.BorderLayout.SOUTH);
2337     statusPanel.add(statusBar, null);
2338     this.getContentPane().add(tabbedPane, java.awt.BorderLayout.CENTER);
2339     jMenu3.add(showAllColumns);
2340     jMenu3.add(showAllSeqs);
2341     jMenu3.add(showAllhidden);
2342     hideMenu.add(hideSelColumns);
2343     hideMenu.add(hideSelSequences);
2344     hideMenu.add(hideAllSelection);
2345     hideMenu.add(hideAllButSelection);
2346
2347     formatMenu.add(font);
2348     formatMenu.addSeparator();
2349     formatMenu.add(wrapMenuItem);
2350     formatMenu.add(scaleAbove);
2351     formatMenu.add(scaleLeft);
2352     formatMenu.add(scaleRight);
2353     formatMenu.add(seqLimits);
2354     formatMenu.add(idRightAlign);
2355     formatMenu.add(hiddenMarkers);
2356     formatMenu.add(viewBoxesMenuItem);
2357     formatMenu.add(viewTextMenuItem);
2358     formatMenu.add(colourTextMenuItem);
2359     formatMenu.add(renderGapsMenuItem);
2360     formatMenu.add(centreColumnLabelsMenuItem);
2361     formatMenu.add(showNonconservedMenuItem);
2362     selectMenu.add(findMenuItem);
2363     selectMenu.addSeparator();
2364     selectMenu.add(selectAllSequenceMenuItem);
2365     selectMenu.add(deselectAllSequenceMenuItem);
2366     selectMenu.add(invertSequenceMenuItem);
2367     selectMenu.add(invertColSel);
2368     selectMenu.add(createGroup);
2369     selectMenu.add(unGroup);
2370     selectMenu.add(grpsFromSelection);
2371     selectMenu.add(deleteGroups);
2372     calculateMenu.add(expandAlignment);
2373     // TODO - determine if the listenToViewSelections button is needed : see bug
2374     // JAL-574
2375     // selectMenu.addSeparator();
2376     // selectMenu.add(listenToViewSelections);
2377   }
2378
2379   /**
2380    * Action on clicking sort annotations by type.
2381    * 
2382    * @param sortOrder
2383    */
2384   protected void sortAnnotations_actionPerformed()
2385   {
2386   }
2387
2388   /**
2389    * Action on clicking Show all annotations.
2390    * 
2391    * @param forSequences
2392    *          update sequence-related annotations
2393    * @param forAlignment
2394    *          update non-sequence-related annotations
2395    */
2396   protected void showAllAnnotations_actionPerformed(boolean forSequences,
2397           boolean forAlignment)
2398   {
2399     setAnnotationsVisibility(true, forSequences, forAlignment);
2400   }
2401
2402   /**
2403    * Action on clicking Hide all annotations.
2404    * 
2405    * @param forSequences
2406    *          update sequence-related annotations
2407    * @param forAlignment
2408    *          update non-sequence-related annotations
2409    */
2410   protected void hideAllAnnotations_actionPerformed(boolean forSequences,
2411           boolean forAlignment)
2412   {
2413     setAnnotationsVisibility(false, forSequences, forAlignment);
2414   }
2415
2416   /**
2417    * Set the visibility of annotations to true or false. Can act on
2418    * sequence-related annotations, or alignment-related, or both.
2419    * 
2420    * @param visible
2421    * @param forSequences
2422    *          update sequence-related annotations
2423    * @param forAlignment
2424    *          update non-sequence-related annotations
2425    */
2426   protected void setAnnotationsVisibility(boolean visible,
2427           boolean forSequences, boolean forAlignment)
2428   {
2429
2430   }
2431
2432   protected void normaliseSequenceLogo_actionPerformed(ActionEvent e)
2433   {
2434     // TODO Auto-generated method stub
2435
2436   }
2437
2438   protected void listenToViewSelections_actionPerformed(ActionEvent e)
2439   {
2440     // TODO Auto-generated method stub
2441
2442   }
2443
2444   protected void showAllhidden_actionPerformed(ActionEvent e)
2445   {
2446     // TODO Auto-generated method stub
2447
2448   }
2449
2450   protected void hideAllButSelection_actionPerformed(ActionEvent e)
2451   {
2452     // TODO Auto-generated method stub
2453
2454   }
2455
2456   protected void hideAllSelection_actionPerformed(ActionEvent e)
2457   {
2458     // TODO Auto-generated method stub
2459
2460   }
2461
2462   protected void applyAutoAnnotationSettings_actionPerformed(ActionEvent e)
2463   {
2464     // TODO Auto-generated method stub
2465
2466   }
2467
2468   protected void showConsensusHistogram_actionPerformed(ActionEvent e)
2469   {
2470     // TODO Auto-generated method stub
2471
2472   }
2473
2474   protected void showSequenceLogo_actionPerformed(ActionEvent e)
2475   {
2476     // TODO Auto-generated method stub
2477
2478   }
2479
2480   protected void makeGrpsFromSelection_actionPerformed(ActionEvent e)
2481   {
2482     // TODO Auto-generated method stub
2483
2484   }
2485
2486   protected void showGroupConsensus_actionPerformed(ActionEvent e)
2487   {
2488     // TODO Auto-generated method stub
2489
2490   }
2491
2492   protected void showGroupConservation_actionPerformed(ActionEvent e)
2493   {
2494     // TODO Auto-generated method stub
2495
2496   }
2497
2498   protected void showUnconservedMenuItem_actionPerformed(ActionEvent e)
2499   {
2500     // TODO Auto-generated method stub
2501
2502   }
2503
2504   protected void showSeqFeaturesHeight_actionPerformed(
2505           ActionEvent actionEvent)
2506   {
2507     // TODO Auto-generated method stub
2508
2509   }
2510
2511   protected void justifyRightMenuItem_actionPerformed(ActionEvent e)
2512   {
2513     // TODO Auto-generated method stub
2514
2515   }
2516
2517   protected void justifyLeftMenuItem_actionPerformed(ActionEvent e)
2518   {
2519     // TODO Auto-generated method stub
2520
2521   }
2522
2523   protected void followHighlight_actionPerformed()
2524   {
2525     // TODO Auto-generated method stub
2526
2527   }
2528
2529   protected void showNpFeats_actionPerformed(ActionEvent e)
2530   {
2531     // TODO Auto-generated method stub
2532
2533   }
2534
2535   protected void showDbRefs_actionPerformed(ActionEvent e)
2536   {
2537     // TODO Auto-generated method stub
2538
2539   }
2540
2541   protected void centreColumnLabels_actionPerformed(ActionEvent e)
2542   {
2543   }
2544
2545   protected void showProducts_actionPerformed(ActionEvent e)
2546   {
2547   }
2548
2549   protected void buildSortByAnnotationScoresMenu()
2550   {
2551   }
2552
2553   protected void extractScores_actionPerformed(ActionEvent e)
2554   {
2555   }
2556
2557   protected void outputText_actionPerformed(ActionEvent e)
2558   {
2559   }
2560
2561   public void addFromFile_actionPerformed(ActionEvent e)
2562   {
2563
2564   }
2565
2566   public void addFromText_actionPerformed(ActionEvent e)
2567   {
2568
2569   }
2570
2571   public void addFromURL_actionPerformed(ActionEvent e)
2572   {
2573
2574   }
2575
2576   public void exportFeatures_actionPerformed(ActionEvent e)
2577   {
2578
2579   }
2580
2581   public void exportAnnotations_actionPerformed(ActionEvent e)
2582   {
2583
2584   }
2585
2586   protected void htmlMenuItem_actionPerformed(ActionEvent e)
2587   {
2588   }
2589
2590   protected void closeMenuItem_actionPerformed(boolean b)
2591   {
2592   }
2593
2594   protected void redoMenuItem_actionPerformed(ActionEvent e)
2595   {
2596   }
2597
2598   protected void undoMenuItem_actionPerformed(ActionEvent e)
2599   {
2600   }
2601
2602   protected void selectAllSequenceMenuItem_actionPerformed(ActionEvent e)
2603   {
2604   }
2605
2606   protected void deselectAllSequenceMenuItem_actionPerformed(ActionEvent e)
2607   {
2608   }
2609
2610   protected void invertSequenceMenuItem_actionPerformed(ActionEvent e)
2611   {
2612   }
2613
2614   protected void remove2LeftMenuItem_actionPerformed(ActionEvent e)
2615   {
2616   }
2617
2618   protected void remove2RightMenuItem_actionPerformed(ActionEvent e)
2619   {
2620   }
2621
2622   protected void removeGappedColumnMenuItem_actionPerformed(ActionEvent e)
2623   {
2624   }
2625
2626   protected void removeAllGapsMenuItem_actionPerformed(ActionEvent e)
2627   {
2628   }
2629
2630   protected void wrapMenuItem_actionPerformed(ActionEvent e)
2631   {
2632   }
2633
2634   protected void viewBoxesMenuItem_actionPerformed(ActionEvent e)
2635   {
2636   }
2637
2638   protected void viewTextMenuItem_actionPerformed(ActionEvent e)
2639   {
2640   }
2641
2642   protected void colourTextMenuItem_actionPerformed(ActionEvent e)
2643   {
2644   }
2645
2646   protected void annotationPanelMenuItem_actionPerformed(ActionEvent e)
2647   {
2648   }
2649
2650   protected void overviewMenuItem_actionPerformed(ActionEvent e)
2651   {
2652   }
2653
2654   protected void sortPairwiseMenuItem_actionPerformed(ActionEvent e)
2655   {
2656   }
2657
2658   protected void sortIDMenuItem_actionPerformed(ActionEvent e)
2659   {
2660   }
2661
2662   protected void sortLengthMenuItem_actionPerformed(ActionEvent e)
2663   {
2664   }
2665
2666   protected void sortGroupMenuItem_actionPerformed(ActionEvent e)
2667   {
2668   }
2669
2670   protected void removeRedundancyMenuItem_actionPerformed(ActionEvent e)
2671   {
2672   }
2673
2674   protected void pairwiseAlignmentMenuItem_actionPerformed(ActionEvent e)
2675   {
2676   }
2677
2678   protected void PCAMenuItem_actionPerformed(ActionEvent e)
2679   {
2680   }
2681
2682   protected void averageDistanceTreeMenuItem_actionPerformed(ActionEvent e)
2683   {
2684   }
2685
2686   protected void neighbourTreeMenuItem_actionPerformed(ActionEvent e)
2687   {
2688   }
2689
2690   protected void njTreeBlosumMenuItem_actionPerformed(ActionEvent e)
2691   {
2692   }
2693
2694   protected void avTreeBlosumMenuItem_actionPerformed(ActionEvent e)
2695   {
2696   }
2697
2698   protected void clustalColour_actionPerformed(ActionEvent e)
2699   {
2700   }
2701
2702   protected void zappoColour_actionPerformed(ActionEvent e)
2703   {
2704   }
2705
2706   protected void taylorColour_actionPerformed(ActionEvent e)
2707   {
2708   }
2709
2710   protected void hydrophobicityColour_actionPerformed(ActionEvent e)
2711   {
2712   }
2713
2714   protected void helixColour_actionPerformed(ActionEvent e)
2715   {
2716   }
2717
2718   protected void strandColour_actionPerformed(ActionEvent e)
2719   {
2720   }
2721
2722   protected void turnColour_actionPerformed(ActionEvent e)
2723   {
2724   }
2725
2726   protected void buriedColour_actionPerformed(ActionEvent e)
2727   {
2728   }
2729
2730   protected void userDefinedColour_actionPerformed(ActionEvent e)
2731   {
2732   }
2733
2734   protected void PIDColour_actionPerformed(ActionEvent e)
2735   {
2736   }
2737
2738   protected void BLOSUM62Colour_actionPerformed(ActionEvent e)
2739   {
2740   }
2741
2742   protected void purinePyrimidineColour_actionPerformed(ActionEvent e)
2743   {
2744   }
2745
2746   protected void RNAInteractionColour_actionPerformed(ActionEvent e)
2747   {
2748   }
2749
2750   /*
2751    * protected void covariationColour_actionPerformed(ActionEvent e) { }
2752    */
2753
2754   protected void noColourmenuItem_actionPerformed(ActionEvent e)
2755   {
2756   }
2757
2758   protected void conservationMenuItem_actionPerformed(ActionEvent e)
2759   {
2760   }
2761
2762   protected void printMenuItem_actionPerformed(ActionEvent e)
2763   {
2764   }
2765
2766   protected void renderGapsMenuItem_actionPerformed(ActionEvent e)
2767   {
2768   }
2769
2770   protected void findMenuItem_actionPerformed(ActionEvent e)
2771   {
2772   }
2773
2774   protected void abovePIDThreshold_actionPerformed(ActionEvent e)
2775   {
2776   }
2777
2778   public void showSeqFeatures_actionPerformed(ActionEvent actionEvent)
2779   {
2780   }
2781
2782   protected void nucleotideColour_actionPerformed(ActionEvent e)
2783   {
2784   }
2785
2786   protected void deleteGroups_actionPerformed(ActionEvent e)
2787   {
2788   }
2789
2790   protected void createGroup_actionPerformed(ActionEvent e)
2791   {
2792   }
2793
2794   protected void unGroup_actionPerformed(ActionEvent e)
2795   {
2796   }
2797
2798   protected void copy_actionPerformed(ActionEvent e)
2799   {
2800   }
2801
2802   protected void cut_actionPerformed(ActionEvent e)
2803   {
2804   }
2805
2806   protected void delete_actionPerformed(ActionEvent e)
2807   {
2808   }
2809
2810   protected void pasteNew_actionPerformed(ActionEvent e)
2811   {
2812   }
2813
2814   protected void pasteThis_actionPerformed(ActionEvent e)
2815   {
2816   }
2817
2818   protected void applyToAllGroups_actionPerformed(ActionEvent e)
2819   {
2820   }
2821
2822   public void createPNG(java.io.File f)
2823   {
2824   }
2825
2826   protected void font_actionPerformed(ActionEvent e)
2827   {
2828   }
2829
2830   protected void seqLimit_actionPerformed(ActionEvent e)
2831   {
2832   }
2833
2834   public void seqDBRef_actionPerformed(ActionEvent e)
2835   {
2836
2837   }
2838
2839   public void createEPS(java.io.File f)
2840   {
2841   }
2842
2843   protected void LoadtreeMenuItem_actionPerformed(ActionEvent e)
2844   {
2845
2846   }
2847
2848   /**
2849    * Template method to handle the 'load T-Coffee scores' menu event.
2850    * <p>
2851    * Subclasses override this method to provide a custom action.
2852    * 
2853    * @param event
2854    *          The raised event
2855    */
2856   protected void loadScores_actionPerformed(ActionEvent event)
2857   {
2858
2859   }
2860
2861   /**
2862    * Template method to handle the 'Color T-Coffee scores' menu event.
2863    * <p>
2864    * Subclasses override this method to provide a custom action.
2865    * 
2866    * @param event
2867    *          The raised event
2868    */
2869   protected void tcoffeeColorScheme_actionPerformed(ActionEvent event)
2870   {
2871
2872   }
2873
2874   protected void jpred_actionPerformed(ActionEvent e)
2875   {
2876   }
2877
2878   protected void scaleAbove_actionPerformed(ActionEvent e)
2879   {
2880   }
2881
2882   protected void scaleLeft_actionPerformed(ActionEvent e)
2883   {
2884   }
2885
2886   protected void scaleRight_actionPerformed(ActionEvent e)
2887   {
2888   }
2889
2890   protected void modifyPID_actionPerformed(ActionEvent e)
2891   {
2892   }
2893
2894   protected void modifyConservation_actionPerformed(ActionEvent e)
2895   {
2896   }
2897
2898   protected void saveAs_actionPerformed(ActionEvent e)
2899   {
2900   }
2901
2902   protected void padGapsMenuitem_actionPerformed(ActionEvent e)
2903   {
2904   }
2905
2906   public void vamsasStore_actionPerformed(ActionEvent e)
2907   {
2908
2909   }
2910
2911   public void vamsasLoad_actionPerformed(ActionEvent e)
2912   {
2913
2914   }
2915
2916   public void showTranslation_actionPerformed(ActionEvent e)
2917   {
2918
2919   }
2920
2921   public void featureSettings_actionPerformed(ActionEvent e)
2922   {
2923
2924   }
2925
2926   public void fetchSequence_actionPerformed(ActionEvent e)
2927   {
2928
2929   }
2930
2931   public void smoothFont_actionPerformed(ActionEvent e)
2932   {
2933
2934   }
2935
2936   public void annotationColour_actionPerformed(ActionEvent e)
2937   {
2938
2939   }
2940
2941   public void rnahelicesColour_actionPerformed(ActionEvent e)
2942   {
2943
2944   }
2945
2946   public void associatedData_actionPerformed(ActionEvent e)
2947   {
2948
2949   }
2950
2951   public void autoCalculate_actionPerformed(ActionEvent e)
2952   {
2953
2954   }
2955
2956   public void sortByTreeOption_actionPerformed(ActionEvent e)
2957   {
2958
2959   }
2960
2961   public void showAllSeqs_actionPerformed(ActionEvent e)
2962   {
2963
2964   }
2965
2966   public void showAllColumns_actionPerformed(ActionEvent e)
2967   {
2968
2969   }
2970
2971   public void hideSelSequences_actionPerformed(ActionEvent e)
2972   {
2973
2974   }
2975
2976   public void hideSelColumns_actionPerformed(ActionEvent e)
2977   {
2978
2979   }
2980
2981   public void hiddenMarkers_actionPerformed(ActionEvent e)
2982   {
2983
2984   }
2985
2986   public void findPdbId_actionPerformed(ActionEvent e)
2987   {
2988
2989   }
2990
2991   public void enterPdbId_actionPerformed(ActionEvent e)
2992   {
2993
2994   }
2995
2996   public void pdbFile_actionPerformed(ActionEvent e)
2997   {
2998
2999   }
3000
3001   public void invertColSel_actionPerformed(ActionEvent e)
3002   {
3003
3004   }
3005
3006   public void tabSelectionChanged(int sel)
3007   {
3008
3009   }
3010
3011   public void tabbedPane_mousePressed(MouseEvent e)
3012   {
3013
3014   }
3015
3016   public void tabbedPane_focusGained(FocusEvent e)
3017   {
3018     requestFocus();
3019   }
3020
3021   public void save_actionPerformed(ActionEvent e)
3022   {
3023
3024   }
3025
3026   public void reload_actionPerformed(ActionEvent e)
3027   {
3028
3029   }
3030
3031   public void newView_actionPerformed(ActionEvent e)
3032   {
3033
3034   }
3035
3036   public void textColour_actionPerformed(ActionEvent e)
3037   {
3038
3039   }
3040
3041   public void idRightAlign_actionPerformed(ActionEvent e)
3042   {
3043
3044   }
3045
3046   public void expandViews_actionPerformed(ActionEvent e)
3047   {
3048
3049   }
3050
3051   public void gatherViews_actionPerformed(ActionEvent e)
3052   {
3053
3054   }
3055
3056   public void buildTreeMenu()
3057   {
3058
3059   }
3060
3061   public void pageSetup_actionPerformed(ActionEvent e)
3062   {
3063
3064   }
3065
3066   public void alignmentProperties()
3067   {
3068
3069   }
3070
3071   protected void expand_newalign(ActionEvent e)
3072   {
3073     // TODO Auto-generated method stub
3074
3075   }
3076
3077   protected boolean isShowAutoCalculatedAbove()
3078   {
3079     return showAutoCalculatedAbove;
3080   }
3081
3082   protected void setShowAutoCalculatedAbove(boolean showAutoCalculatedAbove)
3083   {
3084     this.showAutoCalculatedAbove = showAutoCalculatedAbove;
3085   }
3086
3087   protected SequenceAnnotationOrder getAnnotationSortOrder()
3088   {
3089     return annotationSortOrder;
3090   }
3091
3092   protected void setAnnotationSortOrder(SequenceAnnotationOrder annotationSortOrder)
3093   {
3094     this.annotationSortOrder = annotationSortOrder;
3095   }
3096 }