X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fjbgui%2FGDesktop.java;h=9e15eeaf0054992e3a3030a3c946f81397fa6af3;hb=b87512d6e28a2a93ea2f08dcfbee320856c5c8de;hp=e4a5905798e587d7aa0faba7e4ec0f7f9d5abc18;hpb=ab0e5f2223a993371761baf240d815abdfcbb950;p=jalview.git diff --git a/src/jalview/jbgui/GDesktop.java b/src/jalview/jbgui/GDesktop.java index e4a5905..9e15eea 100755 --- a/src/jalview/jbgui/GDesktop.java +++ b/src/jalview/jbgui/GDesktop.java @@ -21,11 +21,13 @@ package jalview.jbgui; import jalview.api.AlignmentViewPanel; +import jalview.bin.Jalview; import jalview.io.FileFormatException; import jalview.util.MessageManager; import jalview.util.Platform; import java.awt.FlowLayout; +import java.awt.Toolkit; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; @@ -36,16 +38,15 @@ import javax.swing.JMenuBar; import javax.swing.JMenuItem; /** - * DOCUMENT ME! + * abstract class super to jalview.gui.Desktop * - * @author $author$ - * @version $Revision$ */ @SuppressWarnings("serial") -public class GDesktop extends JFrame +// BH made abstract +public abstract class GDesktop extends JFrame { - protected static JMenu windowMenu = new JMenu(); + protected JMenu windowMenu = new JMenu(); // BH 2019.05.07 was static JMenuBar desktopMenubar = new JMenuBar(); @@ -53,6 +54,10 @@ public class GDesktop extends JFrame JMenu HelpMenu = new JMenu(); + protected JMenu VamsasMenu = new JMenu(); + + protected JMenu VamsasStMenu = new JMenu(); + JMenuItem inputLocalFileMenuItem = new JMenuItem(); JMenuItem inputURLMenuItem = new JMenuItem(); @@ -79,6 +84,15 @@ public class GDesktop extends JFrame JMenu inputMenu = new JMenu(); + // in JalviewJS + protected JMenuItem vamsasStart = new JMenuItem(); + + protected JMenuItem vamsasImport = new JMenuItem(); + + protected JMenuItem vamsasSave = new JMenuItem(); + + protected JMenuItem vamsasStop = new JMenuItem(); + JMenuItem inputSequence = new JMenuItem(); JMenuItem closeAll = new JMenuItem(); @@ -97,7 +111,8 @@ public class GDesktop extends JFrame protected JCheckBoxMenuItem showConsole = new JCheckBoxMenuItem(); - protected JCheckBoxMenuItem showNews = new JCheckBoxMenuItem(); + // BH public for Runnable + public JCheckBoxMenuItem showNews = new JCheckBoxMenuItem(); protected JMenuItem snapShotWindow = new JMenuItem(); @@ -106,7 +121,6 @@ public class GDesktop extends JFrame */ public GDesktop() { - super(); try { jbInit(); @@ -122,6 +136,7 @@ public class GDesktop extends JFrame // but here we want just not a Mac, period, right? FileMenu.setMnemonic('F'); inputLocalFileMenuItem.setMnemonic('L'); + VamsasMenu.setMnemonic('V'); inputURLMenuItem.setMnemonic('U'); inputTextboxMenuItem.setMnemonic('C'); quit.setMnemonic('Q'); @@ -139,14 +154,20 @@ public class GDesktop extends JFrame */ private void jbInit() throws Exception { - setName("jalview-desktop"); + setName(Jalview.getAppID("desktop")); FileMenu.setText(MessageManager.getString("action.file")); HelpMenu.setText(MessageManager.getString("action.help")); + VamsasMenu.setText("Vamsas"); + VamsasMenu.setToolTipText(MessageManager + .getString("label.share_data_vamsas_applications")); + VamsasStMenu.setText(MessageManager.getString("label.connect_to")); + VamsasStMenu.setToolTipText( + MessageManager.getString("label.join_existing_vamsas_session")); inputLocalFileMenuItem .setText(MessageManager.getString("label.load_tree_from_file")); inputLocalFileMenuItem.setAccelerator( javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_O, - jalview.util.ShortcutKeyMaskExWrapper.getMenuShortcutKeyMaskEx(), + Toolkit.getDefaultToolkit().getMenuShortcutKeyMask(), false)); inputLocalFileMenuItem .addActionListener(new java.awt.event.ActionListener() @@ -254,6 +275,39 @@ public class GDesktop extends JFrame } }); inputMenu.setText(MessageManager.getString("label.input_alignment")); + vamsasStart + .setText(MessageManager.getString("label.new_vamsas_session")); + vamsasStart.setVisible(false); + vamsasStart.addActionListener(new ActionListener() + { + @Override + public void actionPerformed(ActionEvent e) + { + vamsasStart_actionPerformed(e); + } + }); + vamsasImport.setText( + MessageManager.getString("action.load_vamsas_session")); + vamsasImport.setVisible(false); + vamsasImport.addActionListener(new ActionListener() + { + @Override + public void actionPerformed(ActionEvent e) + { + vamsasImport_actionPerformed(e); + } + }); + vamsasSave.setText( + MessageManager.getString("action.save_vamsas_session")); + vamsasSave.setVisible(false); + vamsasSave.addActionListener(new ActionListener() + { + @Override + public void actionPerformed(ActionEvent e) + { + vamsasSave_actionPerformed(e); + } + }); inputSequence .setText(MessageManager.getString("action.fetch_sequences")); inputSequence.addActionListener(new ActionListener() @@ -264,6 +318,17 @@ public class GDesktop extends JFrame inputSequence_actionPerformed(e); } }); + vamsasStop + .setText(MessageManager.getString("label.stop_vamsas_session")); + vamsasStop.setVisible(false); + vamsasStop.addActionListener(new ActionListener() + { + @Override + public void actionPerformed(ActionEvent e) + { + vamsasStop_actionPerformed(e); + } + }); closeAll.setText(MessageManager.getString("action.close_all")); closeAll.addActionListener(new ActionListener() { @@ -366,32 +431,36 @@ public class GDesktop extends JFrame } }); - Float specversion = Platform.isJS() ? Float.valueOf(8) - : Float.parseFloat( - System.getProperty("java.specification.version")); - desktopMenubar.add(FileMenu); desktopMenubar.add(toolsMenu); + VamsasMenu.setVisible(false); + desktopMenubar.add(VamsasMenu); desktopMenubar.add(HelpMenu); desktopMenubar.add(windowMenu); FileMenu.add(inputMenu); FileMenu.add(inputSequence); FileMenu.addSeparator(); - //FileMenu.add(saveState); + FileMenu.add(saveState); FileMenu.add(saveAsState); FileMenu.add(loadState); FileMenu.addSeparator(); FileMenu.add(quit); HelpMenu.add(aboutMenuItem); HelpMenu.add(documentationMenuItem); - if (!Platform.isAMacAndNotJS() || specversion < 11) - { - toolsMenu.add(preferences); - } + VamsasMenu.add(VamsasStMenu); + VamsasStMenu.setVisible(false); + VamsasMenu.add(vamsasStart); + VamsasMenu.add(vamsasImport); + VamsasMenu.add(vamsasSave); + VamsasMenu.add(vamsasStop); + toolsMenu.add(preferences); if (!Platform.isJS()) { toolsMenu.add(showMemusage); toolsMenu.add(showConsole); + } + if (!Platform.isJS()) + { toolsMenu.add(showNews); toolsMenu.add(garbageCollect); toolsMenu.add(groovyShell); @@ -493,7 +562,6 @@ public class GDesktop extends JFrame */ protected void quit() { - //System.out.println("********** GDesktop.quit()"); } /**