jalview 2.5 release banner
[jalview.git] / src / jalview / jbgui / GDesktop.java
1 /*
2  * Jalview - A Sequence Alignment Editor and Viewer (Version 2.5)
3  * Copyright (C) 2010 J Procter, AM Waterhouse, G Barton, M Clamp, S Searle
4  * 
5  * This file is part of Jalview.
6  * 
7  * Jalview is free software: you can redistribute it and/or
8  * modify it under the terms of the GNU General Public License 
9  * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
10  * 
11  * Jalview is distributed in the hope that it will be useful, but 
12  * WITHOUT ANY WARRANTY; without even the implied warranty 
13  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
14  * PURPOSE.  See the GNU General Public License for more details.
15  * 
16  * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
17  */
18 package jalview.jbgui;
19
20 import java.awt.*;
21 import java.awt.event.*;
22
23 import javax.swing.*;
24
25 /**
26  * DOCUMENT ME!
27  * 
28  * @author $author$
29  * @version $Revision$
30  */
31 public class GDesktop extends JFrame
32 {
33   protected static JMenu windowMenu = new JMenu();
34
35   JMenuBar desktopMenubar = new JMenuBar();
36
37   JMenu FileMenu = new JMenu();
38
39   JMenu HelpMenu = new JMenu();
40
41   protected JMenu VamsasMenu = new JMenu();
42
43   protected JMenu VamsasStMenu = new JMenu();
44
45   JMenuItem inputLocalFileMenuItem = new JMenuItem();
46
47   JMenuItem inputURLMenuItem = new JMenuItem();
48
49   JMenuItem inputTextboxMenuItem = new JMenuItem();
50
51   JMenuItem quit = new JMenuItem();
52
53   JMenuItem aboutMenuItem = new JMenuItem();
54
55   JMenuItem documentationMenuItem = new JMenuItem();
56
57   FlowLayout flowLayout1 = new FlowLayout();
58
59   protected JMenu toolsMenu = new JMenu();
60
61   JMenuItem preferences = new JMenuItem();
62
63   JMenuItem saveState = new JMenuItem();
64
65   JMenuItem loadState = new JMenuItem();
66
67   JMenu inputMenu = new JMenu();
68
69   protected JMenuItem vamsasStart = new JMenuItem();
70
71   protected JMenuItem vamsasImport = new JMenuItem();
72
73   protected JMenuItem vamsasSave = new JMenuItem();
74
75   JMenuItem inputSequence = new JMenuItem();
76
77   protected JMenuItem vamsasStop = new JMenuItem();
78
79   JMenuItem closeAll = new JMenuItem();
80
81   JMenuItem raiseRelated = new JMenuItem();
82
83   JMenuItem minimizeAssociated = new JMenuItem();
84
85   protected JCheckBoxMenuItem showMemusage = new JCheckBoxMenuItem();
86
87   JMenuItem garbageCollect = new JMenuItem();
88
89   protected JCheckBoxMenuItem showConsole = new JCheckBoxMenuItem();
90
91   /**
92    * Creates a new GDesktop object.
93    */
94   public GDesktop()
95   {
96     try
97     {
98       jbInit();
99       this.setJMenuBar(desktopMenubar);
100     } catch (Exception e)
101     {
102       e.printStackTrace();
103     }
104
105     if (!new jalview.util.Platform().isAMac())
106     {
107       FileMenu.setMnemonic('F');
108       inputLocalFileMenuItem.setMnemonic('L');
109       VamsasMenu.setMnemonic('V');
110       inputURLMenuItem.setMnemonic('U');
111       inputTextboxMenuItem.setMnemonic('C');
112       quit.setMnemonic('Q');
113       saveState.setMnemonic('S');
114       loadState.setMnemonic('L');
115       inputMenu.setMnemonic('I');
116     }
117   }
118
119   /**
120    * DOCUMENT ME!
121    * 
122    * @throws Exception
123    *           DOCUMENT ME!
124    */
125   private void jbInit() throws Exception
126   {
127     FileMenu.setText("File");
128     HelpMenu.setText("Help");
129     VamsasMenu.setText("Vamsas");
130     VamsasMenu.setToolTipText("Share data with other vamsas applications.");
131     VamsasStMenu.setText("Connect to");
132     VamsasStMenu.setToolTipText("Join an existing vamsas session");
133     inputLocalFileMenuItem.setText("from File");
134     inputLocalFileMenuItem.setAccelerator(javax.swing.KeyStroke
135             .getKeyStroke(java.awt.event.KeyEvent.VK_O, Toolkit
136                     .getDefaultToolkit().getMenuShortcutKeyMask(), false));
137     inputLocalFileMenuItem
138             .addActionListener(new java.awt.event.ActionListener()
139             {
140               public void actionPerformed(ActionEvent e)
141               {
142                 inputLocalFileMenuItem_actionPerformed(null);
143               }
144             });
145     inputURLMenuItem.setText("from URL");
146     inputURLMenuItem.addActionListener(new java.awt.event.ActionListener()
147     {
148       public void actionPerformed(ActionEvent e)
149       {
150         inputURLMenuItem_actionPerformed(null);
151       }
152     });
153     inputTextboxMenuItem.setText("from Textbox");
154     inputTextboxMenuItem
155             .addActionListener(new java.awt.event.ActionListener()
156             {
157               public void actionPerformed(ActionEvent e)
158               {
159                 inputTextboxMenuItem_actionPerformed(null);
160               }
161             });
162     quit.setText("Quit");
163     quit.addActionListener(new java.awt.event.ActionListener()
164     {
165       public void actionPerformed(ActionEvent e)
166       {
167         quit();
168       }
169     });
170     aboutMenuItem.setText("About");
171     aboutMenuItem.addActionListener(new java.awt.event.ActionListener()
172     {
173       public void actionPerformed(ActionEvent e)
174       {
175         aboutMenuItem_actionPerformed(e);
176       }
177     });
178     documentationMenuItem.setText("Documentation");
179     documentationMenuItem.setAccelerator(javax.swing.KeyStroke
180             .getKeyStroke(java.awt.event.KeyEvent.VK_F1, 0, false));
181     documentationMenuItem
182             .addActionListener(new java.awt.event.ActionListener()
183             {
184               public void actionPerformed(ActionEvent e)
185               {
186                 documentationMenuItem_actionPerformed(e);
187               }
188             });
189     this.getContentPane().setLayout(flowLayout1);
190     windowMenu.setText("Window");
191     preferences.setText("Preferences...");
192     preferences.addActionListener(new ActionListener()
193     {
194       public void actionPerformed(ActionEvent e)
195       {
196         preferences_actionPerformed(e);
197       }
198     });
199     toolsMenu.setText("Tools");
200     saveState.setText("Save Project");
201     saveState.addActionListener(new ActionListener()
202     {
203       public void actionPerformed(ActionEvent e)
204       {
205         saveState_actionPerformed(e);
206       }
207     });
208     loadState.setText("Load Project");
209     loadState.addActionListener(new ActionListener()
210     {
211       public void actionPerformed(ActionEvent e)
212       {
213         loadState_actionPerformed(e);
214       }
215     });
216     inputMenu.setText("Input Alignment");
217     vamsasStart.setText("New Vamsas Session...");
218     vamsasStart.setVisible(false);
219     vamsasStart.addActionListener(new ActionListener()
220     {
221       public void actionPerformed(ActionEvent e)
222       {
223         vamsasStart_actionPerformed(e);
224       }
225     });
226     vamsasImport.setText("Load Vamsas Session...");
227     vamsasImport.setVisible(false);
228     vamsasImport.addActionListener(new ActionListener()
229     {
230       public void actionPerformed(ActionEvent e)
231       {
232         vamsasImport_actionPerformed(e);
233       }
234     });
235     vamsasSave.setText("Save Vamsas Session...");
236     vamsasSave.setVisible(false);
237     vamsasSave.addActionListener(new ActionListener()
238     {
239       public void actionPerformed(ActionEvent e)
240       {
241         vamsasSave_actionPerformed(e);
242       }
243     });
244     inputSequence.setText("Fetch Sequence(s)...");
245     inputSequence.addActionListener(new ActionListener()
246     {
247       public void actionPerformed(ActionEvent e)
248       {
249         inputSequence_actionPerformed(e);
250       }
251     });
252     vamsasStop.setText("Stop Vamsas Session");
253     vamsasStop.setVisible(false);
254     vamsasStop.addActionListener(new ActionListener()
255     {
256       public void actionPerformed(ActionEvent e)
257       {
258         vamsasStop_actionPerformed(e);
259       }
260     });
261     closeAll.setText("Close All");
262     closeAll.addActionListener(new ActionListener()
263     {
264       public void actionPerformed(ActionEvent e)
265       {
266         closeAll_actionPerformed(e);
267       }
268     });
269     raiseRelated.setText("Raise Associated Windows");
270     raiseRelated.addActionListener(new ActionListener()
271     {
272       public void actionPerformed(ActionEvent e)
273       {
274         raiseRelated_actionPerformed(e);
275       }
276     });
277     minimizeAssociated.setText("Minimize Associated Windows");
278     minimizeAssociated.addActionListener(new ActionListener()
279     {
280       public void actionPerformed(ActionEvent e)
281       {
282         minimizeAssociated_actionPerformed(e);
283       }
284     });
285     garbageCollect.setText("Collect Garbage");
286     garbageCollect.addActionListener(new ActionListener()
287     {
288       public void actionPerformed(ActionEvent e)
289       {
290         garbageCollect_actionPerformed(e);
291       }
292     });
293     showMemusage.setText("Show Memory Usage");
294     showMemusage.addActionListener(new ActionListener()
295     {
296       public void actionPerformed(ActionEvent e)
297       {
298         showMemusage_actionPerformed(e);
299       }
300     });
301     showConsole.setText("Show Java Console");
302     showConsole.addActionListener(new ActionListener()
303     {
304       public void actionPerformed(ActionEvent e)
305       {
306         showConsole_actionPerformed(e);
307       }
308     });
309     desktopMenubar.add(FileMenu);
310     desktopMenubar.add(toolsMenu);
311     VamsasMenu.setVisible(false);
312     desktopMenubar.add(VamsasMenu);
313     desktopMenubar.add(HelpMenu);
314     desktopMenubar.add(windowMenu);
315     FileMenu.add(inputMenu);
316     FileMenu.add(inputSequence);
317     FileMenu.addSeparator();
318     FileMenu.add(saveState);
319     FileMenu.add(loadState);
320     FileMenu.addSeparator();
321     FileMenu.add(quit);
322     HelpMenu.add(aboutMenuItem);
323     HelpMenu.add(documentationMenuItem);
324     VamsasMenu.add(VamsasStMenu);
325     VamsasStMenu.setVisible(false);
326     VamsasMenu.add(vamsasStart);
327     VamsasMenu.add(vamsasImport);
328     VamsasMenu.add(vamsasSave);
329     VamsasMenu.add(vamsasStop);
330     toolsMenu.add(preferences);
331     toolsMenu.add(showMemusage);
332     toolsMenu.add(showConsole);
333     toolsMenu.add(garbageCollect);
334     inputMenu.add(inputLocalFileMenuItem);
335     inputMenu.add(inputURLMenuItem);
336     inputMenu.add(inputTextboxMenuItem);
337     windowMenu.add(closeAll);
338     windowMenu.add(raiseRelated);
339     windowMenu.add(minimizeAssociated);
340     windowMenu.addSeparator();
341     // inputMenu.add(vamsasLoad);
342   }
343
344   protected void showConsole_actionPerformed(ActionEvent e)
345   {
346     // TODO Auto-generated method stub
347
348   }
349
350   protected void showMemusage_actionPerformed(ActionEvent e)
351   {
352     // TODO Auto-generated method stub
353
354   }
355
356   protected void garbageCollect_actionPerformed(ActionEvent e)
357   {
358     // TODO Auto-generated method stub
359
360   }
361
362   protected void vamsasStMenu_actionPerformed()
363   {
364   }
365
366   public void vamsasSave_actionPerformed(ActionEvent e)
367   {
368   }
369
370   /**
371    * DOCUMENT ME!
372    * 
373    * @param e
374    *          DOCUMENT ME!
375    */
376   protected void inputLocalFileMenuItem_actionPerformed(
377           jalview.gui.AlignViewport av)
378   {
379   }
380
381   /**
382    * DOCUMENT ME!
383    * 
384    * @param e
385    *          DOCUMENT ME!
386    */
387   protected void inputURLMenuItem_actionPerformed(
388           jalview.gui.AlignViewport av)
389   {
390   }
391
392   /**
393    * DOCUMENT ME!
394    * 
395    * @param e
396    *          DOCUMENT ME!
397    */
398   protected void inputTextboxMenuItem_actionPerformed(
399           jalview.gui.AlignViewport av)
400   {
401   }
402
403   /**
404    * DOCUMENT ME!
405    */
406   protected void quit()
407   {
408   }
409
410   /**
411    * DOCUMENT ME!
412    * 
413    * @param e
414    *          DOCUMENT ME!
415    */
416   protected void aboutMenuItem_actionPerformed(ActionEvent e)
417   {
418   }
419
420   /**
421    * DOCUMENT ME!
422    * 
423    * @param e
424    *          DOCUMENT ME!
425    */
426   protected void documentationMenuItem_actionPerformed(ActionEvent e)
427   {
428   }
429
430   /**
431    * DOCUMENT ME!
432    * 
433    * @param e
434    *          DOCUMENT ME!
435    */
436   public void SaveState_actionPerformed(ActionEvent e)
437   {
438   }
439
440   /**
441    * DOCUMENT ME!
442    * 
443    * @param e
444    *          DOCUMENT ME!
445    */
446   protected void preferences_actionPerformed(ActionEvent e)
447   {
448   }
449
450   /**
451    * DOCUMENT ME!
452    * 
453    * @param e
454    *          DOCUMENT ME!
455    */
456   public void saveState_actionPerformed(ActionEvent e)
457   {
458   }
459
460   /**
461    * DOCUMENT ME!
462    * 
463    * @param e
464    *          DOCUMENT ME!
465    */
466   public void loadState_actionPerformed(ActionEvent e)
467   {
468   }
469
470   /**
471    * DOCUMENT ME!
472    * 
473    * @param e
474    *          DOCUMENT ME!
475    */
476   public void loadJalviewAlign_actionPerformed(ActionEvent e)
477   {
478   }
479
480   public void vamsasStart_actionPerformed(ActionEvent e)
481   {
482
483   }
484
485   public void inputSequence_actionPerformed(ActionEvent e)
486   {
487
488   }
489
490   public void vamsasStop_actionPerformed(ActionEvent e)
491   {
492
493   }
494
495   public void closeAll_actionPerformed(ActionEvent e)
496   {
497
498   }
499
500   public void raiseRelated_actionPerformed(ActionEvent e)
501   {
502
503   }
504
505   public void minimizeAssociated_actionPerformed(ActionEvent e)
506   {
507
508   }
509
510   public void vamsasImport_actionPerformed(ActionEvent e)
511   {
512   }
513 }