2 *******************************************************************************
\r
3 * Copyright (C) 1997-2008, International Business Machines Corporation and *
\r
4 * others. All Rights Reserved. *
\r
5 *******************************************************************************
\r
8 package com.ibm.icu.dev.demo.impl;
\r
11 import java.awt.event.*;
\r
13 public abstract class DemoApplet extends java.applet.Applet {
\r
14 private static final long serialVersionUID = -8983602961925702071L;
\r
15 private Button demoButton;
\r
16 private Frame demoFrame;
\r
17 private static int demoFrameCount = 0;
\r
19 protected abstract Frame createDemoFrame(DemoApplet applet);
\r
20 protected Dimension getDefaultFrameSize(DemoApplet applet, Frame f) {
\r
21 return new Dimension(700, 550);
\r
24 //Create a button that will display the demo
\r
27 setBackground(Color.white);
\r
28 demoButton = new Button("Demo");
\r
29 demoButton.setBackground(Color.yellow);
\r
32 demoButton.addActionListener( new ActionListener() {
\r
33 public void actionPerformed(ActionEvent e) {
\r
34 if (e.getID() == ActionEvent.ACTION_PERFORMED) {
\r
35 demoButton.setLabel("loading");
\r
37 if (demoFrame == null) {
\r
38 demoFrame = createDemoFrame(DemoApplet.this);
\r
42 demoButton.setLabel("Demo");
\r
48 public void showDemo()
\r
50 demoFrame = createDemoFrame(this);
\r
51 demoFrame.doLayout();
\r
52 Dimension d = getDefaultFrameSize(this, demoFrame);
\r
53 demoFrame.setSize(d.width, d.height);
\r
58 public void demoClosed()
\r
64 public static void demoFrameOpened() {
\r
66 System.err.println("DemoFrameOpened, now at:"+demoFrameCount);
\r
68 public static void demoFrameClosed() {
\r
69 if (--demoFrameCount == 0) {
\r
70 System.err.println("DemoFrameClosed, now at:"+demoFrameCount + " - quitting");
\r
73 System.err.println("DemoFrameClosed, now at:"+demoFrameCount);
\r