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