Shortcuts
[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 \r
56   /**\r
57      * Creates a new GDesktop object.\r
58      */\r
59     public GDesktop()\r
60     {\r
61         try\r
62         {\r
63             jbInit();\r
64             this.setJMenuBar(desktopMenubar);\r
65         }\r
66         catch (Exception e)\r
67         {\r
68             e.printStackTrace();\r
69         }\r
70 \r
71         if (!System.getProperty("os.name").startsWith("Mac"))\r
72         {\r
73           FileMenu.setMnemonic('F');\r
74           inputLocalFileMenuItem.setMnemonic('L');\r
75           VamsasMenu.setMnemonic('V');\r
76           inputURLMenuItem.setMnemonic('U');\r
77           inputTextboxMenuItem.setMnemonic('C');\r
78           quit.setMnemonic('Q');\r
79           saveState.setMnemonic('S');\r
80           loadState.setMnemonic('L');\r
81           inputMenu.setMnemonic('I');\r
82         }\r
83     }\r
84 \r
85     /**\r
86      * DOCUMENT ME!\r
87      *\r
88      * @throws Exception DOCUMENT ME!\r
89      */\r
90     private void jbInit() throws Exception\r
91     {\r
92         FileMenu.setText("File");\r
93         HelpMenu.setText("Help");\r
94         VamsasMenu.setText("Vamsas");\r
95         VamsasMenu.setToolTipText("Share data with other vamsas applications.");\r
96         inputLocalFileMenuItem.setText("from File");\r
97     inputLocalFileMenuItem.setAccelerator(javax.swing.KeyStroke.getKeyStroke(\r
98         java.awt.event.KeyEvent.VK_O, Toolkit.getDefaultToolkit().getMenuShortcutKeyMask(), false));\r
99     inputLocalFileMenuItem.addActionListener(new java.awt.event.ActionListener()\r
100             {\r
101                 public void actionPerformed(ActionEvent e)\r
102                 {\r
103                     inputLocalFileMenuItem_actionPerformed(null);\r
104                 }\r
105             });\r
106         inputURLMenuItem.setText("from URL");\r
107         inputURLMenuItem.addActionListener(new java.awt.event.ActionListener()\r
108             {\r
109                 public void actionPerformed(ActionEvent e)\r
110                 {\r
111                     inputURLMenuItem_actionPerformed(null);\r
112                 }\r
113             });\r
114         inputTextboxMenuItem.setText("from Textbox");\r
115         inputTextboxMenuItem.addActionListener(new java.awt.event.ActionListener()\r
116             {\r
117                 public void actionPerformed(ActionEvent e)\r
118                 {\r
119                     inputTextboxMenuItem_actionPerformed(null);\r
120                 }\r
121             });\r
122         quit.setText("Quit");\r
123         quit.addActionListener(new java.awt.event.ActionListener()\r
124             {\r
125                 public void actionPerformed(ActionEvent e)\r
126                 {\r
127                     quit();\r
128                 }\r
129             });\r
130         aboutMenuItem.setText("About");\r
131         aboutMenuItem.addActionListener(new java.awt.event.ActionListener()\r
132             {\r
133                 public void actionPerformed(ActionEvent e)\r
134                 {\r
135                     aboutMenuItem_actionPerformed(e);\r
136                 }\r
137             });\r
138         documentationMenuItem.setText("Documentation");\r
139         documentationMenuItem.addActionListener(new java.awt.event.ActionListener()\r
140             {\r
141                 public void actionPerformed(ActionEvent e)\r
142                 {\r
143                     documentationMenuItem_actionPerformed(e);\r
144                 }\r
145             });\r
146         this.getContentPane().setLayout(flowLayout1);\r
147         windowMenu.setText("Window");\r
148         preferences.setText("Preferences...");\r
149         preferences.addActionListener(new ActionListener()\r
150             {\r
151                 public void actionPerformed(ActionEvent e)\r
152                 {\r
153                     preferences_actionPerformed(e);\r
154                 }\r
155             });\r
156         toolsMenu.setText("Tools");\r
157         saveState.setText("Save Project");\r
158         saveState.addActionListener(new ActionListener()\r
159             {\r
160                 public void actionPerformed(ActionEvent e)\r
161                 {\r
162                     saveState_actionPerformed(e);\r
163                 }\r
164             });\r
165         loadState.setText("Load Project");\r
166         loadState.addActionListener(new ActionListener()\r
167             {\r
168                 public void actionPerformed(ActionEvent e)\r
169                 {\r
170                     loadState_actionPerformed(e);\r
171                 }\r
172             });\r
173         inputMenu.setText("Input Alignment");\r
174     vamsasLoad.setText("Start Vamsas Session...");\r
175     vamsasLoad.setVisible(false);\r
176     vamsasLoad.addActionListener(new ActionListener()\r
177     {\r
178       public void actionPerformed(ActionEvent e)\r
179       {\r
180         vamsasLoad_actionPerformed(e);\r
181       }\r
182     });\r
183     inputSequence.setText("Fetch Sequence(s)...");\r
184     inputSequence.addActionListener(new ActionListener()\r
185     {\r
186       public void actionPerformed(ActionEvent e)\r
187       {\r
188         inputSequence_actionPerformed(e);\r
189       }\r
190     });\r
191     vamsasStop.setText("Stop Vamsas Session");\r
192     vamsasStop.setVisible(false);\r
193     vamsasStop.addActionListener(new ActionListener()\r
194     {\r
195       public void actionPerformed(ActionEvent e)\r
196       {\r
197         vamsasStop_actionPerformed(e);\r
198       }\r
199     });\r
200     desktopMenubar.add(FileMenu);\r
201     desktopMenubar.add(toolsMenu);\r
202     VamsasMenu.setVisible(false);\r
203     desktopMenubar.add(VamsasMenu);\r
204     desktopMenubar.add(HelpMenu);\r
205     desktopMenubar.add(windowMenu);\r
206     FileMenu.add(inputMenu);\r
207     FileMenu.add(inputSequence);\r
208     FileMenu.addSeparator();\r
209     FileMenu.add(saveState);\r
210     FileMenu.add(loadState);\r
211     FileMenu.addSeparator();\r
212     FileMenu.add(quit);\r
213     HelpMenu.add(aboutMenuItem);\r
214     HelpMenu.add(documentationMenuItem);\r
215     VamsasMenu.add(vamsasLoad);\r
216     VamsasMenu.add(vamsasStop);\r
217     toolsMenu.add(preferences);\r
218     inputMenu.add(inputLocalFileMenuItem);\r
219     inputMenu.add(inputURLMenuItem);\r
220     inputMenu.add(inputTextboxMenuItem);\r
221         //    inputMenu.add(vamsasLoad);\r
222   }\r
223 \r
224     /**\r
225      * DOCUMENT ME!\r
226      *\r
227      * @param e DOCUMENT ME!\r
228      */\r
229     protected void inputLocalFileMenuItem_actionPerformed(jalview.gui.AlignViewport av)\r
230     {\r
231     }\r
232 \r
233     /**\r
234      * DOCUMENT ME!\r
235      *\r
236      * @param e DOCUMENT ME!\r
237      */\r
238     protected void inputURLMenuItem_actionPerformed(jalview.gui.AlignViewport av)\r
239     {\r
240     }\r
241 \r
242     /**\r
243      * DOCUMENT ME!\r
244      *\r
245      * @param e DOCUMENT ME!\r
246      */\r
247     protected void inputTextboxMenuItem_actionPerformed(jalview.gui.AlignViewport av)\r
248     {\r
249     }\r
250 \r
251     /**\r
252      * DOCUMENT ME!\r
253      */\r
254     protected void quit()\r
255     {\r
256     }\r
257 \r
258     /**\r
259      * DOCUMENT ME!\r
260      *\r
261      * @param e DOCUMENT ME!\r
262      */\r
263     protected void aboutMenuItem_actionPerformed(ActionEvent e)\r
264     {\r
265     }\r
266 \r
267     /**\r
268      * DOCUMENT ME!\r
269      *\r
270      * @param e DOCUMENT ME!\r
271      */\r
272     protected void documentationMenuItem_actionPerformed(ActionEvent e)\r
273     {\r
274     }\r
275 \r
276     /**\r
277      * DOCUMENT ME!\r
278      *\r
279      * @param e DOCUMENT ME!\r
280      */\r
281     public void SaveState_actionPerformed(ActionEvent e)\r
282     {\r
283     }\r
284 \r
285     /**\r
286      * DOCUMENT ME!\r
287      *\r
288      * @param e DOCUMENT ME!\r
289      */\r
290     protected void preferences_actionPerformed(ActionEvent e)\r
291     {\r
292     }\r
293 \r
294     /**\r
295      * DOCUMENT ME!\r
296      *\r
297      * @param e DOCUMENT ME!\r
298      */\r
299     public void saveState_actionPerformed(ActionEvent e)\r
300     {\r
301     }\r
302 \r
303     /**\r
304      * DOCUMENT ME!\r
305      *\r
306      * @param e DOCUMENT ME!\r
307      */\r
308     public void loadState_actionPerformed(ActionEvent e)\r
309     {\r
310     }\r
311 \r
312     /**\r
313      * DOCUMENT ME!\r
314      *\r
315      * @param e DOCUMENT ME!\r
316      */\r
317     public void loadJalviewAlign_actionPerformed(ActionEvent e)\r
318     {\r
319     }\r
320 \r
321   public void vamsasLoad_actionPerformed(ActionEvent e)\r
322   {\r
323 \r
324   }\r
325 \r
326   public void inputSequence_actionPerformed(ActionEvent e)\r
327   {\r
328 \r
329   }\r
330   public void vamsasStop_actionPerformed(ActionEvent e)\r
331   {\r
332 \r
333         }\r
334 }\r