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