jdk/src/share/demo/applets/GraphicsTest/AppletFrame.java
changeset 2 90ce3da70b43
child 5506 202f599c92aa
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/src/share/demo/applets/GraphicsTest/AppletFrame.java	Sat Dec 01 00:00:00 2007 +0000
@@ -0,0 +1,103 @@
+/*
+ * Copyright 1997-2006 Sun Microsystems, Inc.  All Rights Reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ *   - Redistributions of source code must retain the above copyright
+ *     notice, this list of conditions and the following disclaimer.
+ *
+ *   - Redistributions in binary form must reproduce the above copyright
+ *     notice, this list of conditions and the following disclaimer in the
+ *     documentation and/or other materials provided with the distribution.
+ *
+ *   - Neither the name of Sun Microsystems nor the names of its
+ *     contributors may be used to endorse or promote products derived
+ *     from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
+ * IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
+ * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+/*
+ */
+
+import java.awt.Frame;
+import java.awt.Event;
+import java.awt.Dimension;
+import java.applet.Applet;
+import java.awt.AWTEvent;
+
+// Applet to Application Frame window
+class AppletFrame extends Frame
+{
+
+    public static void startApplet(String className,
+                                   String title,
+                                   String args[])
+    {
+       // local variables
+       Applet a;
+       Dimension appletSize;
+
+       try
+       {
+          // create an instance of your applet class
+          a = (Applet) Class.forName(className).newInstance();
+       }
+       catch (ClassNotFoundException e) { return; }
+       catch (InstantiationException e) { return; }
+       catch (IllegalAccessException e) { return; }
+
+       // initialize the applet
+       a.init();
+       a.start();
+
+       // create new application frame window
+       AppletFrame f = new AppletFrame(title);
+
+       // add applet to frame window
+       f.add("Center", a);
+
+       // resize frame window to fit applet
+       // assumes that the applet sets its own size
+       // otherwise, you should set a specific size here.
+       appletSize =  a.getSize();
+       f.pack();
+       f.setSize(appletSize);
+
+       // show the window
+       f.show();
+
+    }  // end startApplet()
+
+
+    // constructor needed to pass window title to class Frame
+    public AppletFrame(String name)
+    {
+       // call java.awt.Frame(String) constructor
+       super(name);
+    }
+
+    // needed to allow window close
+    public void processEvent(AWTEvent e)
+    {
+       // Window Destroy event
+       if (e.getID() == Event.WINDOW_DESTROY)
+       {
+          // exit the program
+          System.exit(0);
+       }
+   }  // end handleEvent()
+
+}   // end class AppletFrame