JAL-3032 use small example Ensembl gene for JalviewJS
[jalview.git] / src / jalview / jbgui / GDesktop.java
index 028378f..315c2f7 100755 (executable)
@@ -42,8 +42,26 @@ import javax.swing.JMenuItem;
  * @author $author$
  * @version $Revision$
  */
+@SuppressWarnings("serial")
 public class GDesktop extends JFrame
 {
+
+  public static javax.swing.JTabbedPane createTabbedPane()
+  {
+    // now just always return JTabbedPane
+   return new javax.swing.JTabbedPane();
+//    // BH 2018 coercing jalview.jbgui.swing.JTabbedPane() for now
+//    if (/** @j2sNative false && */
+//    true)
+//    {
+//      // Java
+//      return new javax.swing.JTabbedPane();
+//    }
+//    // JavaScript
+//    return (javax.swing.JTabbedPane) (Object) new jalview.jbgui.swing.JTabbedPane();
+  }
+
+  
   protected static JMenu windowMenu = new JMenu();
 
   JMenuBar desktopMenubar = new JMenuBar();
@@ -76,6 +94,8 @@ public class GDesktop extends JFrame
 
   JMenuItem saveState = new JMenuItem();
 
+  JMenuItem saveAsState = new JMenuItem();
+
   JMenuItem loadState = new JMenuItem();
 
   JMenu inputMenu = new JMenu();
@@ -115,6 +135,7 @@ public class GDesktop extends JFrame
    */
   public GDesktop()
   {
+    super();
     try
     {
       jbInit();
@@ -124,11 +145,13 @@ public class GDesktop extends JFrame
       e.printStackTrace();
     }
 
-    if (!Platform.isAMac())
+    if (Platform.allowMnemonics()) 
     {
+       //BH was !Platform.isAMacAndNotJS()) i.e. "JS or not Mac"
+       // but here we want just not a Mac, period, right?
       FileMenu.setMnemonic('F');
       inputLocalFileMenuItem.setMnemonic('L');
-      VamsasMenu.setMnemonic('V');
+      VamsasMenu.setMnemonic('V'); 
       inputURLMenuItem.setMnemonic('U');
       inputTextboxMenuItem.setMnemonic('C');
       quit.setMnemonic('Q');
@@ -146,7 +169,7 @@ public class GDesktop extends JFrame
    */
   private void jbInit() throws Exception
   {
-
+    setName("jalview-desktop");
     FileMenu.setText(MessageManager.getString("action.file"));
     HelpMenu.setText(MessageManager.getString("action.help"));
     VamsasMenu.setText("Vamsas");
@@ -224,7 +247,7 @@ public class GDesktop extends JFrame
               @Override
               public void actionPerformed(ActionEvent e)
               {
-                documentationMenuItem_actionPerformed(e);
+                documentationMenuItem_actionPerformed();
               }
             });
     this.getContentPane().setLayout(flowLayout1);
@@ -248,6 +271,15 @@ public class GDesktop extends JFrame
         saveState_actionPerformed();
       }
     });
+    saveAsState.setText(MessageManager.getString("action.save_project_as"));
+    saveAsState.addActionListener(new ActionListener()
+    {
+      @Override
+      public void actionPerformed(ActionEvent e)
+      {
+        saveAsState_actionPerformed(e);
+      }
+    });
     loadState.setText(MessageManager.getString("action.load_project"));
     loadState.addActionListener(new ActionListener()
     {
@@ -424,6 +456,7 @@ public class GDesktop extends JFrame
     FileMenu.add(inputSequence);
     FileMenu.addSeparator();
     FileMenu.add(saveState);
+    FileMenu.add(saveAsState);
     FileMenu.add(loadState);
     FileMenu.addSeparator();
     FileMenu.add(quit);
@@ -436,11 +469,17 @@ public class GDesktop extends JFrame
     VamsasMenu.add(vamsasSave);
     VamsasMenu.add(vamsasStop);
     toolsMenu.add(preferences);
-    toolsMenu.add(showMemusage);
-    toolsMenu.add(showConsole);
-    toolsMenu.add(showNews);
-    toolsMenu.add(garbageCollect);
-    toolsMenu.add(groovyShell);
+    if (!Platform.isJS())
+    {
+      toolsMenu.add(showMemusage);
+      toolsMenu.add(showConsole);
+    }
+    if (!Platform.isJS())
+    {
+      toolsMenu.add(showNews);
+      toolsMenu.add(garbageCollect);
+      toolsMenu.add(groovyShell);
+    }
     toolsMenu.add(experimentalFeatures);
     // toolsMenu.add(snapShotWindow);
     inputMenu.add(inputLocalFileMenuItem);
@@ -550,13 +589,17 @@ public class GDesktop extends JFrame
   {
   }
 
+  protected void documentationMenuItem_actionPerformed()
+  {
+  }
+
   /**
    * DOCUMENT ME!
    * 
    * @param e
    *          DOCUMENT ME!
    */
-  protected void documentationMenuItem_actionPerformed(ActionEvent e)
+  protected void preferences_actionPerformed(ActionEvent e)
   {
   }
 
@@ -566,7 +609,11 @@ public class GDesktop extends JFrame
    * @param e
    *          DOCUMENT ME!
    */
-  protected void preferences_actionPerformed(ActionEvent e)
+  public void saveState_actionPerformed()
+  {
+  }
+
+  public void saveAsState_actionPerformed(ActionEvent e)
   {
   }
 
@@ -576,10 +623,6 @@ public class GDesktop extends JFrame
    * @param e
    *          DOCUMENT ME!
    */
-  public void saveState_actionPerformed()
-  {
-  }
-
   public void loadState_actionPerformed()
   {
   }