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