enabled platform dependent embedding of menuBar with EmbmenuFrame
[jalview.git] / src / jalview / appletgui / AppletJmol.java
index f64014b..26fc708 100644 (file)
@@ -34,7 +34,7 @@ import org.jmol.popup.*;
 import jalview.schemes.*;
 
 
-public class AppletJmol extends Frame
+public class AppletJmol extends EmbmenuFrame
     implements  StructureListener, JmolStatusListener,
     KeyListener, ActionListener, ItemListener
 
@@ -99,29 +99,6 @@ public class AppletJmol extends Frame
        //PROMPT USER HERE TO ADD TO NEW OR EXISTING VIEW?
        //FOR NOW, LETS JUST OPEN A NEW WINDOW
     }
-
-    renderPanel = new RenderPanel();
-
-    this.add(renderPanel, BorderLayout.CENTER);
-    viewer = JmolViewer.allocateViewer(renderPanel, new SmarterJmolAdapter());
-
-    viewer.setAppletContext("jalview",
-                       ap.av.applet.getDocumentBase(),
-                            ap.av.applet.getCodeBase(),
-                            null);
-
-    viewer.setJmolStatusListener(this);
-
-    jmolpopup = JmolPopup.newJmolPopup(viewer);
-
-    this.addWindowListener(new WindowAdapter()
-        {
-          public void windowClosing(WindowEvent evt)
-          {
-            closeViewer();
-          }
-        });
-
     MenuBar menuBar = new MenuBar();
     menuBar.add(fileMenu);
     fileMenu.add(mappingMenuItem);
@@ -159,7 +136,30 @@ public class AppletJmol extends Frame
 
     helpMenu.add(jmolHelp);
 
-    this.setMenuBar(menuBar);
+    setMenuBar(menuBar);
+
+    renderPanel = new RenderPanel();
+    embedMenuIfNeeded(renderPanel);
+    this.add(renderPanel, BorderLayout.CENTER);
+    viewer = JmolViewer.allocateViewer(renderPanel, new SmarterJmolAdapter());
+
+    viewer.setAppletContext("jalview",
+                       ap.av.applet.getDocumentBase(),
+                            ap.av.applet.getCodeBase(),
+                            null);
+
+    viewer.setJmolStatusListener(this);
+
+    jmolpopup = JmolPopup.newJmolPopup(viewer);
+
+    this.addWindowListener(new WindowAdapter()
+        {
+          public void windowClosing(WindowEvent evt)
+          {
+            closeViewer();
+          }
+        });
+
 
     if(pdbentry.getFile()!=null)
     {