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