F1 accelerator
[jalview.git] / src / jalview / jbgui / GDesktop.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 \r
24 import javax.swing.*;\r
25 \r
26 \r
27 /**\r
28  * DOCUMENT ME!\r
29  *\r
30  * @author $author$\r
31  * @version $Revision$\r
32  */\r
33 public class GDesktop extends JFrame\r
34 {\r
35     protected static JMenu windowMenu = new JMenu();\r
36     JMenuBar desktopMenubar = new JMenuBar();\r
37     JMenu FileMenu = new JMenu();\r
38     JMenu HelpMenu = new JMenu();\r
39     protected JMenu VamsasMenu = new JMenu();\r
40     JMenuItem inputLocalFileMenuItem = new JMenuItem();\r
41     JMenuItem inputURLMenuItem = new JMenuItem();\r
42     JMenuItem inputTextboxMenuItem = new JMenuItem();\r
43     JMenuItem quit = new JMenuItem();\r
44     JMenuItem aboutMenuItem = new JMenuItem();\r
45     JMenuItem documentationMenuItem = new JMenuItem();\r
46     FlowLayout flowLayout1 = new FlowLayout();\r
47     JMenu toolsMenu = new JMenu();\r
48     JMenuItem preferences = new JMenuItem();\r
49     JMenuItem saveState = new JMenuItem();\r
50     JMenuItem loadState = new JMenuItem();\r
51     JMenu inputMenu = new JMenu();\r
52   protected JMenuItem vamsasLoad = new JMenuItem();\r
53   JMenuItem inputSequence = new JMenuItem();\r
54   protected JMenuItem vamsasStop = new JMenuItem();\r
55   JMenuItem closeAll = new JMenuItem();\r
56   JMenuItem raiseRelated = new JMenuItem();\r
57   JMenuItem minimizeAssociated = new JMenuItem();\r
58 \r
59   /**\r
60      * Creates a new GDesktop object.\r
61      */\r
62     public GDesktop()\r
63     {\r
64         try\r
65         {\r
66             jbInit();\r
67             this.setJMenuBar(desktopMenubar);\r
68         }\r
69         catch (Exception e)\r
70         {\r
71             e.printStackTrace();\r
72         }\r
73 \r
74         if (!System.getProperty("os.name").startsWith("Mac"))\r
75         {\r
76           FileMenu.setMnemonic('F');\r
77           inputLocalFileMenuItem.setMnemonic('L');\r
78           VamsasMenu.setMnemonic('V');\r
79           inputURLMenuItem.setMnemonic('U');\r
80           inputTextboxMenuItem.setMnemonic('C');\r
81           quit.setMnemonic('Q');\r
82           saveState.setMnemonic('S');\r
83           loadState.setMnemonic('L');\r
84           inputMenu.setMnemonic('I');\r
85         }\r
86     }\r
87 \r
88     /**\r
89      * DOCUMENT ME!\r
90      *\r
91      * @throws Exception DOCUMENT ME!\r
92      */\r
93     private void jbInit() throws Exception\r
94     {\r
95         FileMenu.setText("File");\r
96         HelpMenu.setText("Help");\r
97         VamsasMenu.setText("Vamsas");\r
98         VamsasMenu.setToolTipText("Share data with other vamsas applications.");\r
99         inputLocalFileMenuItem.setText("from File");\r
100     inputLocalFileMenuItem.setAccelerator(javax.swing.KeyStroke.getKeyStroke(\r
101         java.awt.event.KeyEvent.VK_O, Toolkit.getDefaultToolkit().getMenuShortcutKeyMask(), false));\r
102     inputLocalFileMenuItem.addActionListener(new java.awt.event.ActionListener()\r
103             {\r
104                 public void actionPerformed(ActionEvent e)\r
105                 {\r
106                     inputLocalFileMenuItem_actionPerformed(null);\r
107                 }\r
108             });\r
109         inputURLMenuItem.setText("from URL");\r
110         inputURLMenuItem.addActionListener(new java.awt.event.ActionListener()\r
111             {\r
112                 public void actionPerformed(ActionEvent e)\r
113                 {\r
114                     inputURLMenuItem_actionPerformed(null);\r
115                 }\r
116             });\r
117         inputTextboxMenuItem.setText("from Textbox");\r
118         inputTextboxMenuItem.addActionListener(new java.awt.event.ActionListener()\r
119             {\r
120                 public void actionPerformed(ActionEvent e)\r
121                 {\r
122                     inputTextboxMenuItem_actionPerformed(null);\r
123                 }\r
124             });\r
125         quit.setText("Quit");\r
126         quit.addActionListener(new java.awt.event.ActionListener()\r
127             {\r
128                 public void actionPerformed(ActionEvent e)\r
129                 {\r
130                     quit();\r
131                 }\r
132             });\r
133         aboutMenuItem.setText("About");\r
134         aboutMenuItem.addActionListener(new java.awt.event.ActionListener()\r
135             {\r
136                 public void actionPerformed(ActionEvent e)\r
137                 {\r
138                     aboutMenuItem_actionPerformed(e);\r
139                 }\r
140             });\r
141         documentationMenuItem.setText("Documentation");\r
142     documentationMenuItem.setAccelerator(javax.swing.KeyStroke.getKeyStroke(\r
143         java.awt.event.KeyEvent.VK_F1, 0, false));\r
144     documentationMenuItem.addActionListener(new java.awt.event.ActionListener()\r
145             {\r
146                 public void actionPerformed(ActionEvent e)\r
147                 {\r
148                     documentationMenuItem_actionPerformed(e);\r
149                 }\r
150             });\r
151         this.getContentPane().setLayout(flowLayout1);\r
152         windowMenu.setText("Window");\r
153         preferences.setText("Preferences...");\r
154         preferences.addActionListener(new ActionListener()\r
155             {\r
156                 public void actionPerformed(ActionEvent e)\r
157                 {\r
158                     preferences_actionPerformed(e);\r
159                 }\r
160             });\r
161         toolsMenu.setText("Tools");\r
162         saveState.setText("Save Project");\r
163         saveState.addActionListener(new ActionListener()\r
164             {\r
165                 public void actionPerformed(ActionEvent e)\r
166                 {\r
167                     saveState_actionPerformed(e);\r
168                 }\r
169             });\r
170         loadState.setText("Load Project");\r
171         loadState.addActionListener(new ActionListener()\r
172             {\r
173                 public void actionPerformed(ActionEvent e)\r
174                 {\r
175                     loadState_actionPerformed(e);\r
176                 }\r
177             });\r
178         inputMenu.setText("Input Alignment");\r
179     vamsasLoad.setText("Start Vamsas Session...");\r
180     vamsasLoad.setVisible(false);\r
181     vamsasLoad.addActionListener(new ActionListener()\r
182     {\r
183       public void actionPerformed(ActionEvent e)\r
184       {\r
185         vamsasLoad_actionPerformed(e);\r
186       }\r
187     });\r
188     inputSequence.setText("Fetch Sequence(s)...");\r
189     inputSequence.addActionListener(new ActionListener()\r
190     {\r
191       public void actionPerformed(ActionEvent e)\r
192       {\r
193         inputSequence_actionPerformed(e);\r
194       }\r
195     });\r
196     vamsasStop.setText("Stop Vamsas Session");\r
197     vamsasStop.setVisible(false);\r
198     vamsasStop.addActionListener(new ActionListener()\r
199     {\r
200       public void actionPerformed(ActionEvent e)\r
201       {\r
202         vamsasStop_actionPerformed(e);\r
203       }\r
204     });\r
205     closeAll.setText("Close All");\r
206     closeAll.addActionListener(new ActionListener()\r
207     {\r
208       public void actionPerformed(ActionEvent e)\r
209       {\r
210         closeAll_actionPerformed(e);\r
211       }\r
212     });\r
213     raiseRelated.setText("Raise Associated Windows");\r
214     raiseRelated.addActionListener(new ActionListener()\r
215     {\r
216       public void actionPerformed(ActionEvent e)\r
217       {\r
218         raiseRelated_actionPerformed(e);\r
219       }\r
220     });\r
221     minimizeAssociated.setText("Minimize Associated Windows");\r
222     minimizeAssociated.addActionListener(new ActionListener()\r
223     {\r
224       public void actionPerformed(ActionEvent e)\r
225       {\r
226         minimizeAssociated_actionPerformed(e);\r
227       }\r
228     });\r
229     desktopMenubar.add(FileMenu);\r
230     desktopMenubar.add(toolsMenu);\r
231     VamsasMenu.setVisible(false);\r
232     desktopMenubar.add(VamsasMenu);\r
233     desktopMenubar.add(HelpMenu);\r
234     desktopMenubar.add(windowMenu);\r
235     FileMenu.add(inputMenu);\r
236     FileMenu.add(inputSequence);\r
237     FileMenu.addSeparator();\r
238     FileMenu.add(saveState);\r
239     FileMenu.add(loadState);\r
240     FileMenu.addSeparator();\r
241     FileMenu.add(quit);\r
242     HelpMenu.add(aboutMenuItem);\r
243     HelpMenu.add(documentationMenuItem);\r
244     VamsasMenu.add(vamsasLoad);\r
245     VamsasMenu.add(vamsasStop);\r
246     toolsMenu.add(preferences);\r
247     inputMenu.add(inputLocalFileMenuItem);\r
248     inputMenu.add(inputURLMenuItem);\r
249     inputMenu.add(inputTextboxMenuItem);\r
250     windowMenu.add(closeAll);\r
251     windowMenu.add(raiseRelated);\r
252     windowMenu.add(minimizeAssociated);\r
253     windowMenu.addSeparator();\r
254     //    inputMenu.add(vamsasLoad);\r
255   }\r
256 \r
257     /**\r
258      * DOCUMENT ME!\r
259      *\r
260      * @param e DOCUMENT ME!\r
261      */\r
262     protected void inputLocalFileMenuItem_actionPerformed(jalview.gui.AlignViewport av)\r
263     {\r
264     }\r
265 \r
266     /**\r
267      * DOCUMENT ME!\r
268      *\r
269      * @param e DOCUMENT ME!\r
270      */\r
271     protected void inputURLMenuItem_actionPerformed(jalview.gui.AlignViewport av)\r
272     {\r
273     }\r
274 \r
275     /**\r
276      * DOCUMENT ME!\r
277      *\r
278      * @param e DOCUMENT ME!\r
279      */\r
280     protected void inputTextboxMenuItem_actionPerformed(jalview.gui.AlignViewport av)\r
281     {\r
282     }\r
283 \r
284     /**\r
285      * DOCUMENT ME!\r
286      */\r
287     protected void quit()\r
288     {\r
289     }\r
290 \r
291     /**\r
292      * DOCUMENT ME!\r
293      *\r
294      * @param e DOCUMENT ME!\r
295      */\r
296     protected void aboutMenuItem_actionPerformed(ActionEvent e)\r
297     {\r
298     }\r
299 \r
300     /**\r
301      * DOCUMENT ME!\r
302      *\r
303      * @param e DOCUMENT ME!\r
304      */\r
305     protected void documentationMenuItem_actionPerformed(ActionEvent e)\r
306     {\r
307     }\r
308 \r
309     /**\r
310      * DOCUMENT ME!\r
311      *\r
312      * @param e DOCUMENT ME!\r
313      */\r
314     public void SaveState_actionPerformed(ActionEvent e)\r
315     {\r
316     }\r
317 \r
318     /**\r
319      * DOCUMENT ME!\r
320      *\r
321      * @param e DOCUMENT ME!\r
322      */\r
323     protected void preferences_actionPerformed(ActionEvent e)\r
324     {\r
325     }\r
326 \r
327     /**\r
328      * DOCUMENT ME!\r
329      *\r
330      * @param e DOCUMENT ME!\r
331      */\r
332     public void saveState_actionPerformed(ActionEvent e)\r
333     {\r
334     }\r
335 \r
336     /**\r
337      * DOCUMENT ME!\r
338      *\r
339      * @param e DOCUMENT ME!\r
340      */\r
341     public void loadState_actionPerformed(ActionEvent e)\r
342     {\r
343     }\r
344 \r
345     /**\r
346      * DOCUMENT ME!\r
347      *\r
348      * @param e DOCUMENT ME!\r
349      */\r
350     public void loadJalviewAlign_actionPerformed(ActionEvent e)\r
351     {\r
352     }\r
353 \r
354   public void vamsasLoad_actionPerformed(ActionEvent e)\r
355   {\r
356 \r
357   }\r
358 \r
359   public void inputSequence_actionPerformed(ActionEvent e)\r
360   {\r
361 \r
362   }\r
363   public void vamsasStop_actionPerformed(ActionEvent e)\r
364   {\r
365 \r
366   }\r
367 \r
368   public void closeAll_actionPerformed(ActionEvent e)\r
369   {\r
370 \r
371   }\r
372 \r
373   public void raiseRelated_actionPerformed(ActionEvent e)\r
374   {\r
375 \r
376   }\r
377 \r
378   public void minimizeAssociated_actionPerformed(ActionEvent e)\r
379   {\r
380 \r
381   }\r
382 }\r