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