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