615e9bbde6646ced9d0c25abb09e0009cc64e29a
[jalview.git] / src / jalview / jbgui / GAlignFrame.java
1 /*\r
2  * Jalview - A Sequence Alignment Editor and Viewer\r
3  * Copyright (C) 2006 AM Waterhouse, J Procter, G Barton, M Clamp, S Searle\r
4  *\r
5  * This program is free software; you can redistribute it and/or\r
6  * modify it under the terms of the GNU General Public License\r
7  * as published by the Free Software Foundation; either version 2\r
8  * of the License, or (at your option) any later version.\r
9  *\r
10  * This program is distributed in the hope that it will be useful,\r
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of\r
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\r
13  * GNU General Public License for more details.\r
14  *\r
15  * You should have received a copy of the GNU General Public License\r
16  * along with this program; if not, write to the Free Software\r
17  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA\r
18  */\r
19 package jalview.jbgui;\r
20 \r
21 import java.awt.*;\r
22 import java.awt.event.*;\r
23 import javax.swing.*;\r
24 import javax.swing.event.*;\r
25 \r
26 import jalview.schemes.*;\r
27 import java.awt.BorderLayout;\r
28 \r
29 \r
30 \r
31 \r
32 public class GAlignFrame\r
33     extends JInternalFrame\r
34 {\r
35   protected JMenuBar alignFrameMenuBar = new JMenuBar();\r
36   protected JMenu fileMenu = new JMenu();\r
37   protected JMenuItem closeMenuItem = new JMenuItem();\r
38   protected JMenu editMenu = new JMenu();\r
39   protected JMenu viewMenu = new JMenu();\r
40   protected JMenu colourMenu = new JMenu();\r
41   protected JMenu calculateMenu = new JMenu();\r
42   protected JMenu webService = new JMenu();\r
43   protected JMenuItem webServiceNoServices;\r
44   protected JMenuItem selectAllSequenceMenuItem = new JMenuItem();\r
45   protected JMenuItem deselectAllSequenceMenuItem = new JMenuItem();\r
46   protected JMenuItem invertSequenceMenuItem = new JMenuItem();\r
47   protected JMenuItem remove2LeftMenuItem = new JMenuItem();\r
48   protected JMenuItem remove2RightMenuItem = new JMenuItem();\r
49   protected JMenuItem removeGappedColumnMenuItem = new JMenuItem();\r
50   protected JMenuItem removeAllGapsMenuItem = new JMenuItem();\r
51   public JCheckBoxMenuItem viewBoxesMenuItem = new JCheckBoxMenuItem();\r
52   public JCheckBoxMenuItem viewTextMenuItem = new JCheckBoxMenuItem();\r
53   protected JMenuItem sortPairwiseMenuItem = new JMenuItem();\r
54   protected JMenuItem sortIDMenuItem = new JMenuItem();\r
55   protected JMenuItem sortGroupMenuItem = new JMenuItem();\r
56   protected JMenuItem removeRedundancyMenuItem = new JMenuItem();\r
57   protected JMenuItem pairwiseAlignmentMenuItem = new JMenuItem();\r
58   protected JMenuItem PCAMenuItem = new JMenuItem();\r
59   protected JMenuItem averageDistanceTreeMenuItem = new JMenuItem();\r
60   protected JMenuItem neighbourTreeMenuItem = new JMenuItem();\r
61   BorderLayout borderLayout1 = new BorderLayout();\r
62   public JLabel statusBar = new JLabel();\r
63   protected JMenuItem saveAs = new JMenuItem();\r
64   protected JMenu outputTextboxMenu = new JMenu();\r
65   protected JRadioButtonMenuItem clustalColour = new JRadioButtonMenuItem();\r
66   protected JRadioButtonMenuItem zappoColour = new JRadioButtonMenuItem();\r
67   protected JRadioButtonMenuItem taylorColour = new JRadioButtonMenuItem();\r
68   protected JRadioButtonMenuItem hydrophobicityColour = new\r
69       JRadioButtonMenuItem();\r
70   protected JRadioButtonMenuItem helixColour = new JRadioButtonMenuItem();\r
71   protected JRadioButtonMenuItem strandColour = new JRadioButtonMenuItem();\r
72   protected JRadioButtonMenuItem turnColour = new JRadioButtonMenuItem();\r
73   protected JRadioButtonMenuItem buriedColour = new JRadioButtonMenuItem();\r
74   protected JRadioButtonMenuItem userDefinedColour = new JRadioButtonMenuItem();\r
75   protected JRadioButtonMenuItem PIDColour = new JRadioButtonMenuItem();\r
76   protected JRadioButtonMenuItem BLOSUM62Colour = new JRadioButtonMenuItem();\r
77   JMenuItem njTreeBlosumMenuItem = new JMenuItem();\r
78   JMenuItem avDistanceTreeBlosumMenuItem = new JMenuItem();\r
79   public JCheckBoxMenuItem annotationPanelMenuItem = new JCheckBoxMenuItem();\r
80   public JCheckBoxMenuItem colourTextMenuItem = new JCheckBoxMenuItem();\r
81   JMenuItem htmlMenuItem = new JMenuItem();\r
82   JMenuItem overviewMenuItem = new JMenuItem();\r
83   protected JMenuItem undoMenuItem = new JMenuItem();\r
84   protected JMenuItem redoMenuItem = new JMenuItem();\r
85   public JCheckBoxMenuItem conservationMenuItem = new JCheckBoxMenuItem();\r
86   JRadioButtonMenuItem noColourmenuItem = new JRadioButtonMenuItem();\r
87   public JCheckBoxMenuItem wrapMenuItem = new JCheckBoxMenuItem();\r
88   JMenuItem printMenuItem = new JMenuItem();\r
89   public JCheckBoxMenuItem renderGapsMenuItem = new JCheckBoxMenuItem();\r
90   JMenuItem findMenuItem = new JMenuItem();\r
91   public JCheckBoxMenuItem abovePIDThreshold = new JCheckBoxMenuItem();\r
92   public JCheckBoxMenuItem showSeqFeatures = new JCheckBoxMenuItem();\r
93   protected JRadioButtonMenuItem nucleotideColour = new JRadioButtonMenuItem();\r
94   JMenuItem deleteGroups = new JMenuItem();\r
95   JMenuItem delete = new JMenuItem();\r
96   JMenuItem copy = new JMenuItem();\r
97   JMenuItem cut = new JMenuItem();\r
98   JMenu pasteMenu = new JMenu();\r
99   JMenuItem pasteNew = new JMenuItem();\r
100   JMenuItem pasteThis = new JMenuItem();\r
101   public JCheckBoxMenuItem applyToAllGroups = new JCheckBoxMenuItem();\r
102   JMenuItem createPNG = new JMenuItem();\r
103   protected JMenuItem font = new JMenuItem();\r
104   public JCheckBoxMenuItem seqLimits = new JCheckBoxMenuItem();\r
105   JMenuItem epsFile = new JMenuItem();\r
106   JMenuItem LoadtreeMenuItem = new JMenuItem();\r
107   public JCheckBoxMenuItem scaleAbove = new JCheckBoxMenuItem();\r
108   public JCheckBoxMenuItem scaleLeft = new JCheckBoxMenuItem();\r
109   public JCheckBoxMenuItem scaleRight = new JCheckBoxMenuItem();\r
110   protected JMenuItem modifyPID = new JMenuItem();\r
111   protected JMenuItem modifyConservation = new JMenuItem();\r
112   protected JMenu sortByTreeMenu = new JMenu();\r
113   protected JMenu sort = new JMenu();\r
114   JMenu calculate = new JMenu();\r
115   JMenu jMenu2 = new JMenu();\r
116   protected JCheckBoxMenuItem padGapsMenuitem = new JCheckBoxMenuItem();\r
117   protected ButtonGroup colours = new ButtonGroup();\r
118   JMenuItem vamsasStore = new JMenuItem();\r
119   protected JMenuItem showTranslation = new JMenuItem();\r
120   public JMenuItem featureSettings = new JMenuItem();\r
121   JMenuItem fetchSequence = new JMenuItem();\r
122   JMenuItem annotationColour = new JMenuItem();\r
123   JMenuItem associatedData = new JMenuItem();\r
124   protected JCheckBoxMenuItem autoCalculate = new JCheckBoxMenuItem();\r
125   JMenu addSequenceMenu = new JMenu();\r
126   JMenuItem addFromFile = new JMenuItem();\r
127   JMenuItem addFromText = new JMenuItem();\r
128   JMenuItem addFromURL = new JMenuItem();\r
129   JMenuItem exportAnnotations = new JMenuItem();\r
130   JMenuItem exportFeatures = new JMenuItem();\r
131   protected JPanel statusPanel = new JPanel();\r
132   GridLayout gridLayout1 = new GridLayout();\r
133   JMenu jMenu3 = new JMenu();\r
134   JMenuItem showAllSeqs = new JMenuItem();\r
135   JMenuItem showAllColumns = new JMenuItem();\r
136   JMenu hideMenu = new JMenu();\r
137   JMenuItem hideSelSequences = new JMenuItem();\r
138   JMenuItem hideSelColumns = new JMenuItem();\r
139   protected JCheckBoxMenuItem hiddenMarkers = new JCheckBoxMenuItem();\r
140   JMenuItem invertColSel = new JMenuItem();\r
141   protected JTabbedPane tabbedPane = new JTabbedPane();\r
142   JMenuItem save = new JMenuItem();\r
143   JMenuItem jMenuItem1 = new JMenuItem();\r
144   protected JMenuItem reload = new JMenuItem();\r
145   JMenuItem newView = new JMenuItem();\r
146   JMenuItem textColour = new JMenuItem();\r
147   JMenu jMenu1 = new JMenu();\r
148   JCheckBoxMenuItem jCheckBoxMenuItem1 = new JCheckBoxMenuItem();\r
149   JMenu jMenu4 = new JMenu();\r
150   public GAlignFrame()\r
151   {\r
152     try\r
153     {\r
154       jbInit();\r
155       setJMenuBar(alignFrameMenuBar);\r
156 \r
157       // dynamically fill save as menu with available formats\r
158       for (int i = 0; i < jalview.io.FormatAdapter.WRITEABLE_FORMATS.length; i++)\r
159       {\r
160         JMenuItem item = new JMenuItem( jalview.io.FormatAdapter.WRITEABLE_FORMATS[i] );\r
161 \r
162         item.addActionListener(new java.awt.event.ActionListener()\r
163         {\r
164           public void actionPerformed(ActionEvent e)\r
165           {\r
166             outputText_actionPerformed(e);\r
167           }\r
168         });\r
169 \r
170         outputTextboxMenu.add(item);\r
171       }\r
172     }\r
173     catch (Exception e)\r
174     {\r
175     }\r
176 \r
177     if (!System.getProperty("os.name").startsWith("Mac"))\r
178     {\r
179       closeMenuItem.setMnemonic('C');\r
180       outputTextboxMenu.setMnemonic('T');\r
181       undoMenuItem.setMnemonic('Z');\r
182       redoMenuItem.setMnemonic('0');\r
183       copy.setMnemonic('C');\r
184       cut.setMnemonic('U');\r
185       pasteMenu.setMnemonic('P');\r
186       reload.setMnemonic('R');\r
187     }\r
188 \r
189 \r
190     if(jalview.gui.UserDefinedColours.getUserColourSchemes()!=null)\r
191     {\r
192       java.util.Enumeration userColours = jalview.gui.UserDefinedColours.\r
193           getUserColourSchemes().keys();\r
194 \r
195       while (userColours.hasMoreElements())\r
196       {\r
197         final JRadioButtonMenuItem radioItem = new JRadioButtonMenuItem(userColours.\r
198             nextElement().toString());\r
199         radioItem.setName("USER_DEFINED");\r
200         radioItem.addMouseListener(new MouseAdapter()\r
201             {\r
202               public void mousePressed(MouseEvent evt)\r
203               {\r
204                 if(evt.isControlDown() || SwingUtilities.isRightMouseButton(evt))\r
205                 {\r
206                   radioItem.removeActionListener(radioItem.getActionListeners()[0]);\r
207 \r
208                   int option = JOptionPane.showInternalConfirmDialog(jalview.gui.Desktop.desktop,\r
209                       "Remove from default list?",\r
210                       "Remove user defined colour",\r
211                       JOptionPane.YES_NO_OPTION);\r
212                   if(option == JOptionPane.YES_OPTION)\r
213                   {\r
214                     jalview.gui.UserDefinedColours.removeColourFromDefaults(radioItem.getText());\r
215                     colourMenu.remove(radioItem);\r
216                   }\r
217                   else\r
218                     radioItem.addActionListener(new ActionListener()\r
219                     {\r
220                       public void actionPerformed(ActionEvent evt)\r
221                       {\r
222                         userDefinedColour_actionPerformed(evt);\r
223                       }\r
224                     });\r
225                 }\r
226               }\r
227             });\r
228         radioItem.addActionListener(new ActionListener()\r
229         {\r
230           public void actionPerformed(ActionEvent evt)\r
231           {\r
232             userDefinedColour_actionPerformed(evt);\r
233           }\r
234         });\r
235         colourMenu.insert(radioItem, 15);\r
236         colours.add(radioItem);\r
237       }\r
238     }\r
239     colours.add(noColourmenuItem);\r
240     colours.add(clustalColour);\r
241     colours.add(zappoColour);\r
242     colours.add(taylorColour);\r
243     colours.add(hydrophobicityColour);\r
244     colours.add(helixColour);\r
245     colours.add(strandColour);\r
246     colours.add(turnColour);\r
247     colours.add(buriedColour);\r
248     colours.add(userDefinedColour);\r
249     colours.add(PIDColour);\r
250     colours.add(BLOSUM62Colour);\r
251     colours.add(nucleotideColour);\r
252 \r
253     setColourSelected(jalview.bin.Cache.getDefault("DEFAULT_COLOUR", "None"));\r
254 \r
255 \r
256   }\r
257 \r
258   public void setColourSelected(String defaultColour)\r
259   {\r
260 \r
261     if (defaultColour != null)\r
262     {\r
263       int index = ColourSchemeProperty.getColourIndexFromName(defaultColour);\r
264 \r
265       switch (index)\r
266       {\r
267         case ColourSchemeProperty.NONE:\r
268               noColourmenuItem.setSelected(true);\r
269               break;\r
270         case ColourSchemeProperty.CLUSTAL:\r
271           clustalColour.setSelected(true);\r
272 \r
273           break;\r
274 \r
275         case ColourSchemeProperty.BLOSUM:\r
276           BLOSUM62Colour.setSelected(true);\r
277 \r
278           break;\r
279 \r
280         case ColourSchemeProperty.PID:\r
281           PIDColour.setSelected(true);\r
282 \r
283           break;\r
284 \r
285         case ColourSchemeProperty.ZAPPO:\r
286           zappoColour.setSelected(true);\r
287 \r
288           break;\r
289 \r
290         case ColourSchemeProperty.TAYLOR:\r
291           taylorColour.setSelected(true);\r
292           break;\r
293 \r
294         case ColourSchemeProperty.HYDROPHOBIC:\r
295           hydrophobicityColour.setSelected(true);\r
296 \r
297           break;\r
298 \r
299         case ColourSchemeProperty.HELIX:\r
300           helixColour.setSelected(true);\r
301 \r
302           break;\r
303 \r
304         case ColourSchemeProperty.STRAND:\r
305           strandColour.setSelected(true);\r
306 \r
307           break;\r
308 \r
309         case ColourSchemeProperty.TURN:\r
310           turnColour.setSelected(true);\r
311 \r
312           break;\r
313 \r
314         case ColourSchemeProperty.BURIED:\r
315           buriedColour.setSelected(true);\r
316 \r
317           break;\r
318 \r
319         case ColourSchemeProperty.NUCLEOTIDE:\r
320           nucleotideColour.setSelected(true);\r
321 \r
322           break;\r
323 \r
324         case ColourSchemeProperty.USER_DEFINED:\r
325           userDefinedColour.setSelected(true);\r
326 \r
327           break;\r
328       }\r
329     }\r
330 \r
331   }\r
332 \r
333   private void jbInit()\r
334       throws Exception\r
335   {\r
336     fileMenu.setText("File");\r
337     saveAs.setText("Save As...");\r
338     saveAs.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.\r
339         KeyEvent.VK_S,\r
340         Toolkit.getDefaultToolkit().getMenuShortcutKeyMask()| java.awt.event.KeyEvent.SHIFT_MASK, false));\r
341     saveAs.addActionListener(new ActionListener()\r
342     {\r
343       public void actionPerformed(ActionEvent e)\r
344       {\r
345         saveAs_actionPerformed(e);\r
346       }\r
347     });\r
348     closeMenuItem.setText("Close");\r
349     closeMenuItem.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.\r
350         event.KeyEvent.VK_W, Toolkit.getDefaultToolkit().getMenuShortcutKeyMask(), false));\r
351     closeMenuItem.addActionListener(new java.awt.event.ActionListener()\r
352     {\r
353       public void actionPerformed(ActionEvent e)\r
354       {\r
355         closeMenuItem_actionPerformed(false);\r
356       }\r
357     });\r
358     editMenu.setText("Edit");\r
359     viewMenu.setText("View");\r
360     colourMenu.setText("Colour");\r
361     calculateMenu.setText("Calculate");\r
362     webService.setText("Web Service");\r
363     selectAllSequenceMenuItem.setText("Select All");\r
364     selectAllSequenceMenuItem.setAccelerator(javax.swing.KeyStroke.getKeyStroke(\r
365         java.awt.event.KeyEvent.VK_A,\r
366         Toolkit.getDefaultToolkit().getMenuShortcutKeyMask(), false));\r
367     selectAllSequenceMenuItem.addActionListener(new java.awt.event.\r
368                                                 ActionListener()\r
369     {\r
370       public void actionPerformed(ActionEvent e)\r
371       {\r
372         selectAllSequenceMenuItem_actionPerformed(e);\r
373       }\r
374     });\r
375     deselectAllSequenceMenuItem.setText("Deselect All");\r
376     deselectAllSequenceMenuItem.setAccelerator(javax.swing.KeyStroke.\r
377                                                getKeyStroke(\r
378         java.awt.event.KeyEvent.VK_ESCAPE, 0, false));\r
379     deselectAllSequenceMenuItem.addActionListener(new java.awt.event.\r
380                                                   ActionListener()\r
381     {\r
382       public void actionPerformed(ActionEvent e)\r
383       {\r
384         deselectAllSequenceMenuItem_actionPerformed(e);\r
385       }\r
386     });\r
387     invertSequenceMenuItem.setText("Invert Sequence Selection");\r
388     invertSequenceMenuItem.setAccelerator(javax.swing.KeyStroke.getKeyStroke(\r
389         java.awt.event.KeyEvent.VK_I,\r
390         Toolkit.getDefaultToolkit().getMenuShortcutKeyMask()|java.awt.event.KeyEvent.SHIFT_MASK, false));\r
391     invertSequenceMenuItem.addActionListener(new java.awt.event.ActionListener()\r
392     {\r
393       public void actionPerformed(ActionEvent e)\r
394       {\r
395         invertSequenceMenuItem_actionPerformed(e);\r
396       }\r
397     });\r
398     remove2LeftMenuItem.setText("Remove Left");\r
399     remove2LeftMenuItem.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.\r
400         awt.event.KeyEvent.VK_L, Toolkit.getDefaultToolkit().getMenuShortcutKeyMask(), false));\r
401     remove2LeftMenuItem.addActionListener(new java.awt.event.ActionListener()\r
402     {\r
403       public void actionPerformed(ActionEvent e)\r
404       {\r
405         remove2LeftMenuItem_actionPerformed(e);\r
406       }\r
407     });\r
408     remove2RightMenuItem.setText("Remove Right");\r
409     remove2RightMenuItem.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.\r
410         awt.event.KeyEvent.VK_R, Toolkit.getDefaultToolkit().getMenuShortcutKeyMask(), false));\r
411     remove2RightMenuItem.addActionListener(new java.awt.event.ActionListener()\r
412     {\r
413       public void actionPerformed(ActionEvent e)\r
414       {\r
415         remove2RightMenuItem_actionPerformed(e);\r
416       }\r
417     });\r
418     removeGappedColumnMenuItem.setText("Remove Empty Columns");\r
419     removeGappedColumnMenuItem.setAccelerator(javax.swing.KeyStroke.\r
420                                               getKeyStroke(java.awt.event.\r
421         KeyEvent.VK_E, Toolkit.getDefaultToolkit().getMenuShortcutKeyMask(), false));\r
422     removeGappedColumnMenuItem.addActionListener(new java.awt.event.\r
423                                                  ActionListener()\r
424     {\r
425       public void actionPerformed(ActionEvent e)\r
426       {\r
427         removeGappedColumnMenuItem_actionPerformed(e);\r
428       }\r
429     });\r
430     removeAllGapsMenuItem.setText("Remove All Gaps");\r
431     removeAllGapsMenuItem.setAccelerator(javax.swing.KeyStroke.getKeyStroke(\r
432         java.awt.event.KeyEvent.VK_E,\r
433         Toolkit.getDefaultToolkit().getMenuShortcutKeyMask() | java.awt.event.KeyEvent.SHIFT_MASK, false));\r
434     removeAllGapsMenuItem.addActionListener(new java.awt.event.ActionListener()\r
435     {\r
436       public void actionPerformed(ActionEvent e)\r
437       {\r
438         removeAllGapsMenuItem_actionPerformed(e);\r
439       }\r
440     });\r
441     viewBoxesMenuItem.setText("Boxes");\r
442     viewBoxesMenuItem.setState(true);\r
443     viewBoxesMenuItem.addActionListener(new java.awt.event.ActionListener()\r
444     {\r
445       public void actionPerformed(ActionEvent e)\r
446       {\r
447         viewBoxesMenuItem_actionPerformed(e);\r
448       }\r
449     });\r
450     viewTextMenuItem.setText("Text");\r
451     viewTextMenuItem.setState(true);\r
452     viewTextMenuItem.addActionListener(new java.awt.event.ActionListener()\r
453     {\r
454       public void actionPerformed(ActionEvent e)\r
455       {\r
456         viewTextMenuItem_actionPerformed(e);\r
457       }\r
458     });\r
459     sortPairwiseMenuItem.setText("by Pairwise Identity");\r
460     sortPairwiseMenuItem.addActionListener(new java.awt.event.ActionListener()\r
461     {\r
462       public void actionPerformed(ActionEvent e)\r
463       {\r
464         sortPairwiseMenuItem_actionPerformed(e);\r
465       }\r
466     });\r
467     sortIDMenuItem.setText("by ID");\r
468     sortIDMenuItem.addActionListener(new java.awt.event.ActionListener()\r
469     {\r
470       public void actionPerformed(ActionEvent e)\r
471       {\r
472         sortIDMenuItem_actionPerformed(e);\r
473       }\r
474     });\r
475     sortGroupMenuItem.setText("by Group");\r
476     sortGroupMenuItem.addActionListener(new java.awt.event.ActionListener()\r
477     {\r
478       public void actionPerformed(ActionEvent e)\r
479       {\r
480         sortGroupMenuItem_actionPerformed(e);\r
481       }\r
482     });\r
483     removeRedundancyMenuItem.setText("Remove Redundancy...");\r
484     removeRedundancyMenuItem.setAccelerator(javax.swing.KeyStroke.getKeyStroke(\r
485         java.awt.event.KeyEvent.VK_D, Toolkit.getDefaultToolkit().getMenuShortcutKeyMask(), false));\r
486     removeRedundancyMenuItem.addActionListener(new java.awt.event.\r
487                                                ActionListener()\r
488     {\r
489       public void actionPerformed(ActionEvent e)\r
490       {\r
491         removeRedundancyMenuItem_actionPerformed(e);\r
492       }\r
493     });\r
494     pairwiseAlignmentMenuItem.setText("Pairwise Alignments...");\r
495     pairwiseAlignmentMenuItem.addActionListener(new java.awt.event.\r
496                                                 ActionListener()\r
497     {\r
498       public void actionPerformed(ActionEvent e)\r
499       {\r
500         pairwiseAlignmentMenuItem_actionPerformed(e);\r
501       }\r
502     });\r
503     PCAMenuItem.setText("Principal Component Analysis");\r
504     PCAMenuItem.addActionListener(new java.awt.event.ActionListener()\r
505     {\r
506       public void actionPerformed(ActionEvent e)\r
507       {\r
508         PCAMenuItem_actionPerformed(e);\r
509       }\r
510     });\r
511     averageDistanceTreeMenuItem.setText(\r
512         "Average Distance Using % Identity");\r
513     averageDistanceTreeMenuItem.addActionListener(new java.awt.event.\r
514                                                   ActionListener()\r
515     {\r
516       public void actionPerformed(ActionEvent e)\r
517       {\r
518         averageDistanceTreeMenuItem_actionPerformed(e);\r
519       }\r
520     });\r
521     neighbourTreeMenuItem.setText("Neighbour Joining Using % Identity");\r
522     neighbourTreeMenuItem.addActionListener(new java.awt.event.ActionListener()\r
523     {\r
524       public void actionPerformed(ActionEvent e)\r
525       {\r
526         neighbourTreeMenuItem_actionPerformed(e);\r
527       }\r
528     });\r
529     this.getContentPane().setLayout(borderLayout1);\r
530     alignFrameMenuBar.setFont(new java.awt.Font("Verdana", 0, 11));\r
531     statusBar.setBackground(Color.white);\r
532     statusBar.setFont(new java.awt.Font("Verdana", 0, 11));\r
533     statusBar.setBorder(BorderFactory.createLineBorder(Color.black));\r
534     statusBar.setText("Status bar");\r
535     outputTextboxMenu.setText("Output to Textbox");\r
536     clustalColour.setText("Clustalx");\r
537 \r
538     clustalColour.addActionListener(new java.awt.event.ActionListener()\r
539     {\r
540       public void actionPerformed(ActionEvent e)\r
541       {\r
542         clustalColour_actionPerformed(e);\r
543       }\r
544     });\r
545     zappoColour.setText("Zappo");\r
546     zappoColour.addActionListener(new java.awt.event.ActionListener()\r
547     {\r
548       public void actionPerformed(ActionEvent e)\r
549       {\r
550         zappoColour_actionPerformed(e);\r
551       }\r
552     });\r
553     taylorColour.setText("Taylor");\r
554     taylorColour.addActionListener(new java.awt.event.ActionListener()\r
555     {\r
556       public void actionPerformed(ActionEvent e)\r
557       {\r
558         taylorColour_actionPerformed(e);\r
559       }\r
560     });\r
561     hydrophobicityColour.setText("Hydrophobicity");\r
562     hydrophobicityColour.addActionListener(new java.awt.event.ActionListener()\r
563     {\r
564       public void actionPerformed(ActionEvent e)\r
565       {\r
566         hydrophobicityColour_actionPerformed(e);\r
567       }\r
568     });\r
569     helixColour.setText("Helix Propensity");\r
570     helixColour.addActionListener(new java.awt.event.ActionListener()\r
571     {\r
572       public void actionPerformed(ActionEvent e)\r
573       {\r
574         helixColour_actionPerformed(e);\r
575       }\r
576     });\r
577     strandColour.setText("Strand Propensity");\r
578     strandColour.addActionListener(new java.awt.event.ActionListener()\r
579     {\r
580       public void actionPerformed(ActionEvent e)\r
581       {\r
582         strandColour_actionPerformed(e);\r
583       }\r
584     });\r
585     turnColour.setText("Turn Propensity");\r
586     turnColour.addActionListener(new java.awt.event.ActionListener()\r
587     {\r
588       public void actionPerformed(ActionEvent e)\r
589       {\r
590         turnColour_actionPerformed(e);\r
591       }\r
592     });\r
593     buriedColour.setText("Buried Index");\r
594     buriedColour.addActionListener(new java.awt.event.ActionListener()\r
595     {\r
596       public void actionPerformed(ActionEvent e)\r
597       {\r
598         buriedColour_actionPerformed(e);\r
599       }\r
600     });\r
601     userDefinedColour.setText("User Defined...");\r
602     userDefinedColour.addActionListener(new java.awt.event.ActionListener()\r
603     {\r
604       public void actionPerformed(ActionEvent e)\r
605       {\r
606         userDefinedColour_actionPerformed(e);\r
607       }\r
608     });\r
609     PIDColour.setText("Percentage Identity");\r
610     PIDColour.addActionListener(new java.awt.event.ActionListener()\r
611     {\r
612       public void actionPerformed(ActionEvent e)\r
613       {\r
614         PIDColour_actionPerformed(e);\r
615       }\r
616     });\r
617     BLOSUM62Colour.setText("BLOSUM62 Score");\r
618     BLOSUM62Colour.addActionListener(new java.awt.event.ActionListener()\r
619     {\r
620       public void actionPerformed(ActionEvent e)\r
621       {\r
622         BLOSUM62Colour_actionPerformed(e);\r
623       }\r
624     });\r
625     avDistanceTreeBlosumMenuItem.setText(\r
626         "Average Distance Using BLOSUM62");\r
627     avDistanceTreeBlosumMenuItem.addActionListener(new java.awt.event.\r
628         ActionListener()\r
629     {\r
630       public void actionPerformed(ActionEvent e)\r
631       {\r
632         avTreeBlosumMenuItem_actionPerformed(e);\r
633       }\r
634     });\r
635     njTreeBlosumMenuItem.setText("Neighbour Joining using BLOSUM62");\r
636     njTreeBlosumMenuItem.addActionListener(new java.awt.event.ActionListener()\r
637     {\r
638       public void actionPerformed(ActionEvent e)\r
639       {\r
640         njTreeBlosumMenuItem_actionPerformed(e);\r
641       }\r
642     });\r
643     annotationPanelMenuItem.setActionCommand("");\r
644     annotationPanelMenuItem.setText("Show Annotations");\r
645     annotationPanelMenuItem.setState( jalview.bin.Cache.getDefault("SHOW_ANNOTATIONS",true));\r
646     annotationPanelMenuItem.addActionListener(new java.awt.event.ActionListener()\r
647     {\r
648       public void actionPerformed(ActionEvent e)\r
649       {\r
650         annotationPanelMenuItem_actionPerformed(e);\r
651       }\r
652     });\r
653     colourTextMenuItem.setText("Colour Text");\r
654     colourTextMenuItem.addActionListener(new java.awt.event.ActionListener()\r
655     {\r
656       public void actionPerformed(ActionEvent e)\r
657       {\r
658         colourTextMenuItem_actionPerformed(e);\r
659       }\r
660     });\r
661     htmlMenuItem.setText("HTML");\r
662     htmlMenuItem.addActionListener(new java.awt.event.ActionListener()\r
663     {\r
664       public void actionPerformed(ActionEvent e)\r
665       {\r
666         htmlMenuItem_actionPerformed(e);\r
667       }\r
668     });\r
669     overviewMenuItem.setText("Overview Window");\r
670     overviewMenuItem.addActionListener(new java.awt.event.ActionListener()\r
671     {\r
672       public void actionPerformed(ActionEvent e)\r
673       {\r
674         overviewMenuItem_actionPerformed(e);\r
675       }\r
676     });\r
677     undoMenuItem.setEnabled(false);\r
678     undoMenuItem.setText("Undo");\r
679     undoMenuItem.setAccelerator(javax.swing.KeyStroke.getKeyStroke(\r
680         java.awt.event.KeyEvent.VK_Z,\r
681         Toolkit.getDefaultToolkit().getMenuShortcutKeyMask(), false));\r
682     undoMenuItem.addActionListener(new java.awt.event.ActionListener()\r
683     {\r
684       public void actionPerformed(ActionEvent e)\r
685       {\r
686         undoMenuItem_actionPerformed(e);\r
687       }\r
688     });\r
689     redoMenuItem.setEnabled(false);\r
690     redoMenuItem.setText("Redo");\r
691     redoMenuItem.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.\r
692         event.KeyEvent.VK_Y, Toolkit.getDefaultToolkit().getMenuShortcutKeyMask(), false));\r
693     redoMenuItem.addActionListener(new java.awt.event.ActionListener()\r
694     {\r
695       public void actionPerformed(ActionEvent e)\r
696       {\r
697         redoMenuItem_actionPerformed(e);\r
698       }\r
699     });\r
700     conservationMenuItem.setText("By Conservation");\r
701     conservationMenuItem.addActionListener(new java.awt.event.ActionListener()\r
702     {\r
703       public void actionPerformed(ActionEvent e)\r
704       {\r
705         conservationMenuItem_actionPerformed(e);\r
706       }\r
707     });\r
708     noColourmenuItem.setText("None");\r
709     noColourmenuItem.addActionListener(new java.awt.event.ActionListener()\r
710     {\r
711       public void actionPerformed(ActionEvent e)\r
712       {\r
713         noColourmenuItem_actionPerformed(e);\r
714       }\r
715     });\r
716     wrapMenuItem.setText("Wrap");\r
717     wrapMenuItem.addActionListener(new java.awt.event.ActionListener()\r
718     {\r
719       public void actionPerformed(ActionEvent e)\r
720       {\r
721         wrapMenuItem_actionPerformed(e);\r
722       }\r
723     });\r
724     printMenuItem.setText("Print");\r
725     printMenuItem.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.\r
726         event.KeyEvent.VK_P, Toolkit.getDefaultToolkit().getMenuShortcutKeyMask(), false));\r
727     printMenuItem.addActionListener(new java.awt.event.ActionListener()\r
728     {\r
729       public void actionPerformed(ActionEvent e)\r
730       {\r
731         printMenuItem_actionPerformed(e);\r
732       }\r
733     });\r
734     renderGapsMenuItem.setText("Show Gaps");\r
735     renderGapsMenuItem.setState(true);\r
736     renderGapsMenuItem.addActionListener(new java.awt.event.ActionListener()\r
737     {\r
738       public void actionPerformed(ActionEvent e)\r
739       {\r
740         renderGapsMenuItem_actionPerformed(e);\r
741       }\r
742     });\r
743     findMenuItem.setText("Find...");\r
744     findMenuItem.setAccelerator(javax.swing.KeyStroke.getKeyStroke(\r
745         java.awt.event.KeyEvent.VK_F,\r
746         Toolkit.getDefaultToolkit().getMenuShortcutKeyMask(), false));\r
747     findMenuItem.addActionListener(new java.awt.event.ActionListener()\r
748     {\r
749       public void actionPerformed(ActionEvent e)\r
750       {\r
751         findMenuItem_actionPerformed(e);\r
752       }\r
753     });\r
754     abovePIDThreshold.setText("Above Identity Threshold");\r
755     abovePIDThreshold.addActionListener(new java.awt.event.ActionListener()\r
756     {\r
757       public void actionPerformed(ActionEvent e)\r
758       {\r
759         abovePIDThreshold_actionPerformed(e);\r
760       }\r
761     });\r
762     showSeqFeatures.setText("Show Sequence Features");\r
763     showSeqFeatures.addActionListener(new ActionListener()\r
764     {\r
765       public void actionPerformed(ActionEvent actionEvent)\r
766       {\r
767         showSeqFeatures_actionPerformed(actionEvent);\r
768       }\r
769     });\r
770     nucleotideColour.setText("Nucleotide");\r
771     nucleotideColour.addActionListener(new java.awt.event.ActionListener()\r
772     {\r
773       public void actionPerformed(ActionEvent e)\r
774       {\r
775         nucleotideColour_actionPerformed(e);\r
776       }\r
777     });\r
778     deleteGroups.setText("Undefine groups");\r
779     deleteGroups.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.\r
780         event.KeyEvent.VK_U, Toolkit.getDefaultToolkit().getMenuShortcutKeyMask(), false));\r
781     deleteGroups.addActionListener(new java.awt.event.ActionListener()\r
782     {\r
783       public void actionPerformed(ActionEvent e)\r
784       {\r
785         deleteGroups_actionPerformed(e);\r
786       }\r
787     });\r
788     copy.setText("Copy");\r
789     copy.setAccelerator(javax.swing.KeyStroke.getKeyStroke(\r
790         java.awt.event.KeyEvent.VK_C,\r
791         Toolkit.getDefaultToolkit().getMenuShortcutKeyMask(), false));\r
792 \r
793     copy.addActionListener(new java.awt.event.ActionListener()\r
794     {\r
795       public void actionPerformed(ActionEvent e)\r
796       {\r
797         copy_actionPerformed(e);\r
798       }\r
799     });\r
800     cut.setText("Cut");\r
801     cut.setAccelerator(javax.swing.KeyStroke.getKeyStroke(\r
802         java.awt.event.KeyEvent.VK_X,\r
803         Toolkit.getDefaultToolkit().getMenuShortcutKeyMask(), false));\r
804     cut.addActionListener(new java.awt.event.ActionListener()\r
805     {\r
806       public void actionPerformed(ActionEvent e)\r
807       {\r
808         cut_actionPerformed(e);\r
809       }\r
810     });\r
811     delete.setText("Delete");\r
812     delete.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.\r
813         KeyEvent.VK_BACK_SPACE, 0, false));\r
814     delete.addActionListener(new java.awt.event.ActionListener()\r
815     {\r
816       public void actionPerformed(ActionEvent e)\r
817       {\r
818         delete_actionPerformed(e);\r
819       }\r
820     });\r
821     pasteMenu.setText("Paste");\r
822     pasteNew.setText("To New Alignment");\r
823     pasteNew.setAccelerator(javax.swing.KeyStroke.getKeyStroke(\r
824         java.awt.event.KeyEvent.VK_V,\r
825         Toolkit.getDefaultToolkit().getMenuShortcutKeyMask()|java.awt.event.KeyEvent.ALT_MASK, false));\r
826     pasteNew.addActionListener(new java.awt.event.ActionListener()\r
827     {\r
828       public void actionPerformed(ActionEvent e)\r
829       {\r
830         pasteNew_actionPerformed(e);\r
831       }\r
832     });\r
833     pasteThis.setText("Add To This Alignment");\r
834     pasteThis.setAccelerator(javax.swing.KeyStroke.getKeyStroke(\r
835         java.awt.event.KeyEvent.VK_V,\r
836         Toolkit.getDefaultToolkit().getMenuShortcutKeyMask(), false));\r
837     pasteThis.addActionListener(new java.awt.event.ActionListener()\r
838     {\r
839       public void actionPerformed(ActionEvent e)\r
840       {\r
841         pasteThis_actionPerformed(e);\r
842       }\r
843     });\r
844     applyToAllGroups.setText("Apply Colour To All Groups");\r
845     applyToAllGroups.addActionListener(new java.awt.event.ActionListener()\r
846     {\r
847       public void actionPerformed(ActionEvent e)\r
848       {\r
849         applyToAllGroups_actionPerformed(e);\r
850       }\r
851     });\r
852     createPNG.addActionListener(new java.awt.event.ActionListener()\r
853     {\r
854       public void actionPerformed(ActionEvent e)\r
855       {\r
856         createPNG(null);\r
857       }\r
858     });\r
859     createPNG.setActionCommand("Save As PNG Image");\r
860     createPNG.setText("PNG");\r
861     font.setText("Font...");\r
862     font.addActionListener(new java.awt.event.ActionListener()\r
863     {\r
864       public void actionPerformed(ActionEvent e)\r
865       {\r
866         font_actionPerformed(e);\r
867       }\r
868     });\r
869 \r
870     seqLimits.setText("Show Sequence Limits");\r
871     seqLimits.setState( jalview.bin.Cache.getDefault("SHOW_JVSUFFIX",true));\r
872     seqLimits.addActionListener(new java.awt.event.ActionListener()\r
873     {\r
874       public void actionPerformed(ActionEvent e)\r
875       {\r
876         seqLimit_actionPerformed(e);\r
877       }\r
878     });\r
879     epsFile.setText("EPS");\r
880     epsFile.addActionListener(new java.awt.event.ActionListener()\r
881     {\r
882       public void actionPerformed(ActionEvent e)\r
883       {\r
884         createEPS(null);\r
885       }\r
886     });\r
887     LoadtreeMenuItem.setActionCommand("Load a tree for this sequence set");\r
888     LoadtreeMenuItem.setText("Load Associated Tree");\r
889     LoadtreeMenuItem.addActionListener(new java.awt.event.ActionListener()\r
890     {\r
891       public void actionPerformed(ActionEvent e)\r
892       {\r
893         LoadtreeMenuItem_actionPerformed(e);\r
894       }\r
895     });\r
896     scaleAbove.setVisible(false);\r
897     scaleAbove.setText("Scale Above");\r
898     scaleAbove.addActionListener(new java.awt.event.ActionListener()\r
899     {\r
900       public void actionPerformed(ActionEvent e)\r
901       {\r
902         scaleAbove_actionPerformed(e);\r
903       }\r
904     });\r
905     scaleLeft.setVisible(false);\r
906     scaleLeft.setSelected(true);\r
907     scaleLeft.setText("Scale Left");\r
908     scaleLeft.addActionListener(new java.awt.event.ActionListener()\r
909     {\r
910       public void actionPerformed(ActionEvent e)\r
911       {\r
912         scaleLeft_actionPerformed(e);\r
913       }\r
914     });\r
915     scaleRight.setVisible(false);\r
916     scaleRight.setSelected(true);\r
917     scaleRight.setText("Scale Right");\r
918     scaleRight.addActionListener(new java.awt.event.ActionListener()\r
919     {\r
920       public void actionPerformed(ActionEvent e)\r
921       {\r
922         scaleRight_actionPerformed(e);\r
923       }\r
924     });\r
925     modifyPID.setText("Modify Identity Threshold...");\r
926     modifyPID.addActionListener(new java.awt.event.ActionListener()\r
927     {\r
928       public void actionPerformed(ActionEvent e)\r
929       {\r
930         modifyPID_actionPerformed(e);\r
931       }\r
932     });\r
933     modifyConservation.setText("Modify Conservation Threshold...");\r
934     modifyConservation.addActionListener(new java.awt.event.ActionListener()\r
935     {\r
936       public void actionPerformed(ActionEvent e)\r
937       {\r
938         modifyConservation_actionPerformed(e);\r
939       }\r
940     });\r
941     sortByTreeMenu.setText("By Tree Order");\r
942     sort.setText("Sort");\r
943     calculate.setText("Calculate Tree");\r
944 \r
945     jMenu2.setText("Export Image");\r
946     padGapsMenuitem.setText("Pad Gaps");\r
947     padGapsMenuitem.setState( jalview.bin.Cache.getDefault("PAD_GAPS", false));\r
948     padGapsMenuitem.addActionListener(new ActionListener()\r
949     {\r
950       public void actionPerformed(ActionEvent e)\r
951       {\r
952         padGapsMenuitem_actionPerformed(e);\r
953       }\r
954     });\r
955     vamsasStore.setVisible(false);\r
956     vamsasStore.setText("VAMSAS store");\r
957     vamsasStore.addActionListener(new ActionListener()\r
958     {\r
959       public void actionPerformed(ActionEvent e)\r
960       {\r
961         vamsasStore_actionPerformed(e);\r
962       }\r
963     });\r
964     showTranslation.setText("Translate cDNA");\r
965     showTranslation.addActionListener(new ActionListener()\r
966     {\r
967       public void actionPerformed(ActionEvent e)\r
968       {\r
969         showTranslation_actionPerformed(e);\r
970       }\r
971     });\r
972 \r
973 \r
974     featureSettings.setText("Feature Settings...");\r
975     featureSettings.addActionListener(new ActionListener()\r
976     {\r
977       public void actionPerformed(ActionEvent e)\r
978       {\r
979         featureSettings_actionPerformed(e);\r
980       }\r
981     });\r
982     fetchSequence.setText("Fetch Sequence(s)...");\r
983     fetchSequence.addActionListener(new ActionListener()\r
984     {\r
985       public void actionPerformed(ActionEvent e)\r
986       {\r
987         fetchSequence_actionPerformed(e);\r
988       }\r
989     });\r
990 \r
991     annotationColour.setText("By Annotation...");\r
992     annotationColour.addActionListener(new ActionListener()\r
993     {\r
994       public void actionPerformed(ActionEvent e)\r
995       {\r
996         annotationColour_actionPerformed(e);\r
997       }\r
998     });\r
999     associatedData.setText("Load Features / Annotations");\r
1000     associatedData.addActionListener(new ActionListener()\r
1001     {\r
1002       public void actionPerformed(ActionEvent e)\r
1003       {\r
1004         associatedData_actionPerformed(e);\r
1005       }\r
1006     });\r
1007     autoCalculate.setText("Autocalculate Consensus");\r
1008     autoCalculate.setState( jalview.bin.Cache.getDefault("AUTO_CALC_CONSENSUS", true));\r
1009     autoCalculate.addActionListener(new ActionListener()\r
1010     {\r
1011       public void actionPerformed(ActionEvent e)\r
1012       {\r
1013         autoCalculate_actionPerformed(e);\r
1014       }\r
1015     });\r
1016     addSequenceMenu.setText("Add Sequences");\r
1017     addFromFile.setText("From File");\r
1018     addFromFile.addActionListener(new ActionListener()\r
1019     {\r
1020       public void actionPerformed(ActionEvent e)\r
1021       {\r
1022         addFromFile_actionPerformed(e);\r
1023       }\r
1024     });\r
1025     addFromText.setText("From Textbox");\r
1026     addFromText.addActionListener(new ActionListener()\r
1027     {\r
1028       public void actionPerformed(ActionEvent e)\r
1029       {\r
1030         addFromText_actionPerformed(e);\r
1031       }\r
1032     });\r
1033     addFromURL.setText("From URL");\r
1034     addFromURL.addActionListener(new ActionListener()\r
1035     {\r
1036       public void actionPerformed(ActionEvent e)\r
1037       {\r
1038         addFromURL_actionPerformed(e);\r
1039       }\r
1040     });\r
1041     exportFeatures.setText("Export Features...");\r
1042     exportFeatures.addActionListener(new ActionListener()\r
1043     {\r
1044       public void actionPerformed(ActionEvent e)\r
1045       {\r
1046         exportFeatures_actionPerformed(e);\r
1047       }\r
1048     });\r
1049     exportAnnotations.setText("Export Annotations...");\r
1050     exportAnnotations.addActionListener(new ActionListener()\r
1051     {\r
1052       public void actionPerformed(ActionEvent e)\r
1053       {\r
1054         exportAnnotations_actionPerformed(e);\r
1055       }\r
1056     });\r
1057     statusPanel.setLayout(gridLayout1);\r
1058     jMenu3.setText("Show");\r
1059     showAllSeqs.setText("All Sequences");\r
1060     showAllSeqs.addActionListener(new ActionListener()\r
1061     {\r
1062       public void actionPerformed(ActionEvent e)\r
1063       {\r
1064         showAllSeqs_actionPerformed(e);\r
1065       }\r
1066     });\r
1067     showAllColumns.setText("All Columns");\r
1068     showAllColumns.addActionListener(new ActionListener()\r
1069     {\r
1070       public void actionPerformed(ActionEvent e)\r
1071       {\r
1072         showAllColumns_actionPerformed(e);\r
1073       }\r
1074     });\r
1075     hideMenu.setText("Hide");\r
1076     hideSelSequences.setText("Selected Sequences");\r
1077     hideSelSequences.addActionListener(new ActionListener()\r
1078     {\r
1079       public void actionPerformed(ActionEvent e)\r
1080       {\r
1081         hideSelSequences_actionPerformed(e);\r
1082       }\r
1083     });\r
1084     hideSelColumns.setText("Selected Columns");\r
1085     hideSelColumns.addActionListener(new ActionListener()\r
1086     {\r
1087       public void actionPerformed(ActionEvent e)\r
1088       {\r
1089         hideSelColumns_actionPerformed(e);\r
1090       }\r
1091     });\r
1092     hiddenMarkers.setText("Show Hidden Markers");\r
1093     hiddenMarkers.addActionListener(new ActionListener()\r
1094     {\r
1095       public void actionPerformed(ActionEvent e)\r
1096       {\r
1097         hiddenMarkers_actionPerformed(e);\r
1098       }\r
1099     });\r
1100     invertColSel.setText("Invert Column Selection");\r
1101     invertColSel.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.\r
1102         event.KeyEvent.VK_I, Toolkit.getDefaultToolkit().getMenuShortcutKeyMask(), false));\r
1103     invertColSel.addActionListener(new ActionListener()\r
1104     {\r
1105       public void actionPerformed(ActionEvent e)\r
1106       {\r
1107         invertColSel_actionPerformed(e);\r
1108       }\r
1109     });\r
1110     tabbedPane.addChangeListener(new javax.swing.event.ChangeListener()\r
1111     {\r
1112         public void stateChanged(ChangeEvent evt)\r
1113         {\r
1114             JTabbedPane pane = (JTabbedPane)evt.getSource();\r
1115             int sel = pane.getSelectedIndex();\r
1116             tabSelectionChanged(sel);\r
1117         }\r
1118     });\r
1119     tabbedPane.addMouseListener(new MouseAdapter()\r
1120     {\r
1121       public void mousePressed(MouseEvent e)\r
1122       {\r
1123         tabbedPane_mousePressed(e);\r
1124       }\r
1125     });\r
1126     tabbedPane.addFocusListener(new FocusAdapter()\r
1127     {\r
1128       public void focusGained(FocusEvent e)\r
1129       {\r
1130         tabbedPane_focusGained(e);\r
1131       }\r
1132     });\r
1133     save.setText("Save");\r
1134     save.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.\r
1135         KeyEvent.VK_S, Toolkit.getDefaultToolkit().getMenuShortcutKeyMask(), false));\r
1136     save.addActionListener(new ActionListener()\r
1137     {\r
1138       public void actionPerformed(ActionEvent e)\r
1139       {\r
1140         save_actionPerformed(e);\r
1141       }\r
1142     });\r
1143     reload.setEnabled(false);\r
1144     reload.setText("Reload");\r
1145     reload.addActionListener(new ActionListener()\r
1146     {\r
1147       public void actionPerformed(ActionEvent e)\r
1148       {\r
1149         reload_actionPerformed(e);\r
1150       }\r
1151     });\r
1152     newView.setText("New View");\r
1153     newView.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.\r
1154         KeyEvent.VK_T, Toolkit.getDefaultToolkit().getMenuShortcutKeyMask(), false));\r
1155     newView.addActionListener(new ActionListener()\r
1156     {\r
1157       public void actionPerformed(ActionEvent e)\r
1158       {\r
1159         newView_actionPerformed(e);\r
1160       }\r
1161     });\r
1162     tabbedPane.setToolTipText("<html><i> Right-click to rename tab"\r
1163                               +"<br> Press X to eXpand tabs, G to reGroup.</i></html>");\r
1164     textColour.setText("Text Colour");\r
1165     textColour.addActionListener(new ActionListener()\r
1166     {\r
1167       public void actionPerformed(ActionEvent e)\r
1168       {\r
1169         textColour_actionPerformed(e);\r
1170       }\r
1171     });\r
1172     jMenu1.setText("Format");\r
1173     jCheckBoxMenuItem1.setText("Right Align Ids");\r
1174     jMenu4.setText("Select");\r
1175 \r
1176     alignFrameMenuBar.add(fileMenu);\r
1177     alignFrameMenuBar.add(editMenu);\r
1178     alignFrameMenuBar.add(jMenu4);\r
1179     alignFrameMenuBar.add(viewMenu);\r
1180     alignFrameMenuBar.add(jMenu1);\r
1181     alignFrameMenuBar.add(colourMenu);\r
1182     alignFrameMenuBar.add(calculateMenu);\r
1183     alignFrameMenuBar.add(webService);\r
1184     fileMenu.add(fetchSequence);\r
1185     fileMenu.add(addSequenceMenu);\r
1186     fileMenu.add(reload);\r
1187     fileMenu.addSeparator();\r
1188     fileMenu.add(vamsasStore);\r
1189     fileMenu.add(save);\r
1190     fileMenu.add(saveAs);\r
1191     fileMenu.add(outputTextboxMenu);\r
1192     fileMenu.add(printMenuItem);\r
1193     fileMenu.addSeparator();\r
1194     fileMenu.add(jMenu2);\r
1195     fileMenu.add(exportFeatures);\r
1196     fileMenu.add(exportAnnotations);\r
1197     fileMenu.add(LoadtreeMenuItem);\r
1198     fileMenu.add(associatedData);\r
1199     fileMenu.addSeparator();\r
1200     fileMenu.add(closeMenuItem);\r
1201     editMenu.add(undoMenuItem);\r
1202     editMenu.add(redoMenuItem);\r
1203     editMenu.add(cut);\r
1204     editMenu.add(copy);\r
1205     editMenu.add(pasteMenu);\r
1206     editMenu.add(delete);\r
1207     editMenu.addSeparator();\r
1208     editMenu.add(remove2LeftMenuItem);\r
1209     editMenu.add(remove2RightMenuItem);\r
1210     editMenu.add(removeGappedColumnMenuItem);\r
1211     editMenu.add(removeAllGapsMenuItem);\r
1212     editMenu.add(removeRedundancyMenuItem);\r
1213     editMenu.addSeparator();\r
1214     editMenu.add(padGapsMenuitem);\r
1215     viewMenu.add(newView);\r
1216     viewMenu.addSeparator();\r
1217     viewMenu.add(jMenu3);\r
1218     viewMenu.add(hideMenu);\r
1219     viewMenu.addSeparator();\r
1220     viewMenu.add(annotationPanelMenuItem);\r
1221     viewMenu.addSeparator();\r
1222     viewMenu.add(showSeqFeatures);\r
1223     viewMenu.add(featureSettings);\r
1224     viewMenu.addSeparator();\r
1225     viewMenu.add(overviewMenuItem);\r
1226     colourMenu.add(applyToAllGroups);\r
1227     colourMenu.add(textColour);\r
1228     colourMenu.addSeparator();\r
1229     colourMenu.add(noColourmenuItem);\r
1230     colourMenu.add(clustalColour);\r
1231     colourMenu.add(BLOSUM62Colour);\r
1232     colourMenu.add(PIDColour);\r
1233     colourMenu.add(zappoColour);\r
1234     colourMenu.add(taylorColour);\r
1235     colourMenu.add(hydrophobicityColour);\r
1236     colourMenu.add(helixColour);\r
1237     colourMenu.add(strandColour);\r
1238     colourMenu.add(turnColour);\r
1239     colourMenu.add(buriedColour);\r
1240     colourMenu.add(nucleotideColour);\r
1241     colourMenu.add(userDefinedColour);\r
1242     colourMenu.addSeparator();\r
1243     colourMenu.add(conservationMenuItem);\r
1244     colourMenu.add(modifyConservation);\r
1245     colourMenu.add(abovePIDThreshold);\r
1246     colourMenu.add(modifyPID);\r
1247     colourMenu.add(annotationColour);\r
1248     calculateMenu.add(sort);\r
1249     calculateMenu.add(calculate);\r
1250     calculateMenu.addSeparator();\r
1251     calculateMenu.add(pairwiseAlignmentMenuItem);\r
1252     calculateMenu.add(PCAMenuItem);\r
1253     calculateMenu.addSeparator();\r
1254     calculateMenu.add(showTranslation);\r
1255     calculateMenu.add(autoCalculate);\r
1256     webServiceNoServices=new JMenuItem("<No Services>");\r
1257     webService.add(webServiceNoServices);pasteMenu.add(pasteNew);\r
1258     pasteMenu.add(pasteThis);\r
1259     sort.add(sortIDMenuItem);\r
1260     sort.add(sortGroupMenuItem);\r
1261     sort.add(sortPairwiseMenuItem);\r
1262     calculate.add(averageDistanceTreeMenuItem);\r
1263     calculate.add(neighbourTreeMenuItem);\r
1264     calculate.add(avDistanceTreeBlosumMenuItem);\r
1265     calculate.add(njTreeBlosumMenuItem);\r
1266     jMenu2.add(htmlMenuItem);\r
1267     jMenu2.add(epsFile);\r
1268     jMenu2.add(createPNG);\r
1269     addSequenceMenu.add(addFromFile);\r
1270     addSequenceMenu.add(addFromText);\r
1271     addSequenceMenu.add(addFromURL);\r
1272     this.getContentPane().add(statusPanel, java.awt.BorderLayout.SOUTH);\r
1273     statusPanel.add(statusBar, null);\r
1274     this.getContentPane().add(tabbedPane, java.awt.BorderLayout.CENTER);\r
1275     jMenu3.add(showAllColumns);\r
1276     jMenu3.add(showAllSeqs);\r
1277     hideMenu.add(hideSelColumns);\r
1278     hideMenu.add(hideSelSequences);\r
1279     jMenu1.add(font);\r
1280     jMenu1.addSeparator();\r
1281     jMenu1.add(seqLimits);\r
1282     jMenu1.add(wrapMenuItem);\r
1283     jMenu1.add(scaleAbove);\r
1284     jMenu1.add(scaleLeft);\r
1285     jMenu1.add(scaleRight);\r
1286     jMenu1.add(hiddenMarkers);\r
1287     jMenu1.add(viewBoxesMenuItem);\r
1288     jMenu1.add(viewTextMenuItem);\r
1289     jMenu1.add(colourTextMenuItem);\r
1290     jMenu1.add(renderGapsMenuItem);\r
1291     jMenu4.add(findMenuItem);\r
1292     jMenu4.addSeparator();\r
1293     jMenu4.add(selectAllSequenceMenuItem);\r
1294     jMenu4.add(deselectAllSequenceMenuItem);\r
1295     jMenu4.add(invertSequenceMenuItem);\r
1296     jMenu4.add(invertColSel);\r
1297     jMenu4.add(deleteGroups);\r
1298   }\r
1299 \r
1300   protected void outputText_actionPerformed(ActionEvent e)\r
1301   {\r
1302   }\r
1303 \r
1304   public void addFromFile_actionPerformed(ActionEvent e)\r
1305   {\r
1306 \r
1307   }\r
1308 \r
1309   public void addFromText_actionPerformed(ActionEvent e)\r
1310   {\r
1311 \r
1312   }\r
1313 \r
1314   public void addFromURL_actionPerformed(ActionEvent e)\r
1315   {\r
1316 \r
1317   }\r
1318 \r
1319   public void exportFeatures_actionPerformed(ActionEvent e)\r
1320   {\r
1321 \r
1322   }\r
1323 \r
1324   public void exportAnnotations_actionPerformed(ActionEvent e)\r
1325   {\r
1326 \r
1327   }\r
1328 \r
1329   protected void htmlMenuItem_actionPerformed(ActionEvent e)\r
1330   {\r
1331   }\r
1332 \r
1333   protected void closeMenuItem_actionPerformed(boolean b)\r
1334   {\r
1335   }\r
1336 \r
1337   protected void redoMenuItem_actionPerformed(ActionEvent e)\r
1338   {\r
1339   }\r
1340 \r
1341   protected void undoMenuItem_actionPerformed(ActionEvent e)\r
1342   {\r
1343   }\r
1344 \r
1345   protected void selectAllSequenceMenuItem_actionPerformed(ActionEvent e)\r
1346   {\r
1347   }\r
1348 \r
1349   protected void deselectAllSequenceMenuItem_actionPerformed(ActionEvent e)\r
1350   {\r
1351   }\r
1352 \r
1353   protected void invertSequenceMenuItem_actionPerformed(ActionEvent e)\r
1354   {\r
1355   }\r
1356 \r
1357   protected void remove2LeftMenuItem_actionPerformed(ActionEvent e)\r
1358   {\r
1359   }\r
1360 \r
1361   protected void remove2RightMenuItem_actionPerformed(ActionEvent e)\r
1362   {\r
1363   }\r
1364 \r
1365   protected void removeGappedColumnMenuItem_actionPerformed(ActionEvent e)\r
1366   {\r
1367   }\r
1368 \r
1369   protected void removeAllGapsMenuItem_actionPerformed(ActionEvent e)\r
1370   {\r
1371   }\r
1372 \r
1373   protected void wrapMenuItem_actionPerformed(ActionEvent e)\r
1374   {\r
1375   }\r
1376 \r
1377   protected void viewBoxesMenuItem_actionPerformed(ActionEvent e)\r
1378   {\r
1379   }\r
1380 \r
1381   protected void viewTextMenuItem_actionPerformed(ActionEvent e)\r
1382   {\r
1383   }\r
1384 \r
1385   protected void colourTextMenuItem_actionPerformed(ActionEvent e)\r
1386   {\r
1387   }\r
1388 \r
1389   protected void annotationPanelMenuItem_actionPerformed(ActionEvent e)\r
1390   {\r
1391   }\r
1392 \r
1393   protected void overviewMenuItem_actionPerformed(ActionEvent e)\r
1394   {\r
1395   }\r
1396 \r
1397   protected void sortPairwiseMenuItem_actionPerformed(ActionEvent e)\r
1398   {\r
1399   }\r
1400 \r
1401   protected void sortIDMenuItem_actionPerformed(ActionEvent e)\r
1402   {\r
1403   }\r
1404 \r
1405   protected void sortGroupMenuItem_actionPerformed(ActionEvent e)\r
1406   {\r
1407   }\r
1408 \r
1409   protected void removeRedundancyMenuItem_actionPerformed(ActionEvent e)\r
1410   {\r
1411   }\r
1412 \r
1413   protected void pairwiseAlignmentMenuItem_actionPerformed(ActionEvent e)\r
1414   {\r
1415   }\r
1416 \r
1417   protected void PCAMenuItem_actionPerformed(ActionEvent e)\r
1418   {\r
1419   }\r
1420 \r
1421   protected void averageDistanceTreeMenuItem_actionPerformed(ActionEvent e)\r
1422   {\r
1423   }\r
1424 \r
1425   protected void neighbourTreeMenuItem_actionPerformed(ActionEvent e)\r
1426   {\r
1427   }\r
1428 \r
1429   protected void njTreeBlosumMenuItem_actionPerformed(ActionEvent e)\r
1430   {\r
1431   }\r
1432 \r
1433   protected void avTreeBlosumMenuItem_actionPerformed(ActionEvent e)\r
1434   {\r
1435   }\r
1436 \r
1437   protected void clustalColour_actionPerformed(ActionEvent e)\r
1438   {\r
1439   }\r
1440 \r
1441   protected void zappoColour_actionPerformed(ActionEvent e)\r
1442   {\r
1443   }\r
1444 \r
1445   protected void taylorColour_actionPerformed(ActionEvent e)\r
1446   {\r
1447   }\r
1448 \r
1449   protected void hydrophobicityColour_actionPerformed(ActionEvent e)\r
1450   {\r
1451   }\r
1452 \r
1453   protected void helixColour_actionPerformed(ActionEvent e)\r
1454   {\r
1455   }\r
1456 \r
1457   protected void strandColour_actionPerformed(ActionEvent e)\r
1458   {\r
1459   }\r
1460 \r
1461   protected void turnColour_actionPerformed(ActionEvent e)\r
1462   {\r
1463   }\r
1464 \r
1465   protected void buriedColour_actionPerformed(ActionEvent e)\r
1466   {\r
1467   }\r
1468 \r
1469   protected void userDefinedColour_actionPerformed(ActionEvent e)\r
1470   {\r
1471   }\r
1472 \r
1473   protected void PIDColour_actionPerformed(ActionEvent e)\r
1474   {\r
1475   }\r
1476 \r
1477   protected void BLOSUM62Colour_actionPerformed(ActionEvent e)\r
1478   {\r
1479   }\r
1480 \r
1481   protected void noColourmenuItem_actionPerformed(ActionEvent e)\r
1482   {\r
1483   }\r
1484 \r
1485   protected void conservationMenuItem_actionPerformed(ActionEvent e)\r
1486   {\r
1487   }\r
1488 \r
1489   protected void printMenuItem_actionPerformed(ActionEvent e)\r
1490   {\r
1491   }\r
1492 \r
1493   protected void renderGapsMenuItem_actionPerformed(ActionEvent e)\r
1494   {\r
1495   }\r
1496 \r
1497   protected void findMenuItem_actionPerformed(ActionEvent e)\r
1498   {\r
1499   }\r
1500 \r
1501   protected void abovePIDThreshold_actionPerformed(ActionEvent e)\r
1502   {\r
1503   }\r
1504 \r
1505   public void showSeqFeatures_actionPerformed(ActionEvent actionEvent)\r
1506   {\r
1507   }\r
1508 \r
1509   protected void nucleotideColour_actionPerformed(ActionEvent e)\r
1510   {\r
1511   }\r
1512 \r
1513   protected void deleteGroups_actionPerformed(ActionEvent e)\r
1514   {\r
1515   }\r
1516 \r
1517   protected void copy_actionPerformed(ActionEvent e)\r
1518   {\r
1519   }\r
1520 \r
1521   protected void cut_actionPerformed(ActionEvent e)\r
1522   {\r
1523   }\r
1524 \r
1525   protected void delete_actionPerformed(ActionEvent e)\r
1526   {\r
1527   }\r
1528 \r
1529   protected void pasteNew_actionPerformed(ActionEvent e)\r
1530   {\r
1531   }\r
1532 \r
1533   protected void pasteThis_actionPerformed(ActionEvent e)\r
1534   {\r
1535   }\r
1536 \r
1537   protected void applyToAllGroups_actionPerformed(ActionEvent e)\r
1538   {\r
1539   }\r
1540 \r
1541   public void createPNG(java.io.File f)\r
1542   {\r
1543   }\r
1544 \r
1545   protected void font_actionPerformed(ActionEvent e)\r
1546   {\r
1547   }\r
1548 \r
1549   protected void seqLimit_actionPerformed(ActionEvent e)\r
1550   {\r
1551   }\r
1552 \r
1553   public void seqDBRef_actionPerformed(ActionEvent e)\r
1554   {\r
1555 \r
1556   }\r
1557 \r
1558 \r
1559   public void createEPS(java.io.File f)\r
1560   {\r
1561   }\r
1562 \r
1563   protected void LoadtreeMenuItem_actionPerformed(ActionEvent e)\r
1564   {\r
1565   }\r
1566 \r
1567   protected void jpred_actionPerformed(ActionEvent e)\r
1568   {\r
1569   }\r
1570 \r
1571   protected void scaleAbove_actionPerformed(ActionEvent e)\r
1572   {\r
1573   }\r
1574 \r
1575   protected void scaleLeft_actionPerformed(ActionEvent e)\r
1576   {\r
1577   }\r
1578 \r
1579   protected void scaleRight_actionPerformed(ActionEvent e)\r
1580   {\r
1581   }\r
1582 \r
1583   protected void modifyPID_actionPerformed(ActionEvent e)\r
1584   {\r
1585   }\r
1586 \r
1587   protected void modifyConservation_actionPerformed(ActionEvent e)\r
1588   {\r
1589   }\r
1590 \r
1591 \r
1592 \r
1593   protected void saveAs_actionPerformed(ActionEvent e)\r
1594   {\r
1595   }\r
1596 \r
1597   protected void padGapsMenuitem_actionPerformed(ActionEvent e)\r
1598   {\r
1599   }\r
1600 \r
1601 \r
1602   public void vamsasStore_actionPerformed(ActionEvent e)\r
1603   {\r
1604 \r
1605   }\r
1606 \r
1607   public void vamsasLoad_actionPerformed(ActionEvent e)\r
1608   {\r
1609 \r
1610   }\r
1611 \r
1612   public void showTranslation_actionPerformed(ActionEvent e)\r
1613   {\r
1614 \r
1615   }\r
1616 \r
1617   public void featureSettings_actionPerformed(ActionEvent e)\r
1618   {\r
1619 \r
1620   }\r
1621 \r
1622   public void fetchSequence_actionPerformed(ActionEvent e)\r
1623   {\r
1624 \r
1625   }\r
1626 \r
1627   public void smoothFont_actionPerformed(ActionEvent e)\r
1628   {\r
1629 \r
1630   }\r
1631 \r
1632   public void annotationColour_actionPerformed(ActionEvent e)\r
1633   {\r
1634 \r
1635   }\r
1636 \r
1637 \r
1638   public void associatedData_actionPerformed(ActionEvent e)\r
1639   {\r
1640 \r
1641   }\r
1642 \r
1643   public void autoCalculate_actionPerformed(ActionEvent e)\r
1644   {\r
1645 \r
1646   }\r
1647 \r
1648   public void showAllSeqs_actionPerformed(ActionEvent e)\r
1649   {\r
1650 \r
1651   }\r
1652 \r
1653   public void showAllColumns_actionPerformed(ActionEvent e)\r
1654   {\r
1655 \r
1656   }\r
1657 \r
1658   public void hideSelSequences_actionPerformed(ActionEvent e)\r
1659   {\r
1660 \r
1661   }\r
1662 \r
1663   public void hideSelColumns_actionPerformed(ActionEvent e)\r
1664   {\r
1665 \r
1666   }\r
1667 \r
1668   public void hiddenMarkers_actionPerformed(ActionEvent e)\r
1669   {\r
1670 \r
1671   }\r
1672 \r
1673   public void findPdbId_actionPerformed(ActionEvent e)\r
1674   {\r
1675 \r
1676   }\r
1677 \r
1678   public void enterPdbId_actionPerformed(ActionEvent e)\r
1679   {\r
1680 \r
1681   }\r
1682 \r
1683   public void pdbFile_actionPerformed(ActionEvent e)\r
1684   {\r
1685 \r
1686   }\r
1687 \r
1688   public void invertColSel_actionPerformed(ActionEvent e)\r
1689   {\r
1690 \r
1691   }\r
1692 \r
1693   public void tabSelectionChanged(int sel)\r
1694   {\r
1695 \r
1696   }\r
1697 \r
1698   public void tabbedPane_mousePressed(MouseEvent e)\r
1699   {\r
1700 \r
1701   }\r
1702 \r
1703   public void tabbedPane_focusGained(FocusEvent e)\r
1704   {\r
1705     requestFocus();\r
1706   }\r
1707 \r
1708   public void save_actionPerformed(ActionEvent e)\r
1709   {\r
1710 \r
1711   }\r
1712 \r
1713   public void reload_actionPerformed(ActionEvent e)\r
1714   {\r
1715 \r
1716   }\r
1717 \r
1718   public void newView_actionPerformed(ActionEvent e)\r
1719   {\r
1720 \r
1721   }\r
1722 \r
1723   public void textColour_actionPerformed(ActionEvent e)\r
1724   {\r
1725 \r
1726   }\r
1727 }\r