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