Figure 2: A partial listing of the code generator Java source code

import java.awt.*;
import java.awt.event.*;
import java.io.*;

public class Skeleton
{
   public static void main(String args[])
   {
      new SkeletonFrame("Skeleton");
   }
}


class SkeletonFrame extends Frame 
   implements ActionListener, TextListener, ItemListener
{
   Panel panel1 = new Panel();
   Panel panel2 = new Panel();
   Panel panel3 = new Panel();
   Panel panel4 = new Panel();
   Panel panel4a = new Panel();
   Panel panel5 = new Panel();
   TextField fileName = new TextField(30);
   CheckboxGroup programType = new CheckboxGroup();
   Checkbox consoleApp = 
      new Checkbox("Console",programType,true);
   Checkbox guiApp = new Checkbox("GUI",programType,false);
   Checkbox applet = new Checkbox("Applet",programType,false);
   Checkbox appletGUI = 
      new Checkbox("Applet/GUI",programType,false);
   CheckboxGroup jdkVer = new CheckboxGroup();
   Checkbox jdk102 = new Checkbox("JDK 1.0.2",jdkVer,true);
   Checkbox jdk11x = new Checkbox("JDK 1.1.x",jdkVer,false);
   Checkbox jdk12x = new Checkbox("JDK 1.2.x",jdkVer,false);
   Checkbox guiMenu = 
      new Checkbox("Add Standard Menu to GUI Program",false);
   CheckboxGroup componentType = new CheckboxGroup();
   Checkbox awt = 
      new Checkbox("AWT Components",componentType,true);
   Checkbox swing = 
      new Checkbox("Swing Components",componentType,false);
   Button generate = new Button("Generate");
   Button close = new Button(" Close  ");
   Button about = new Button("About...");
   String newLine = System.getProperty("line.separator");
   int newLineLen = newLine.length();

   SkeletonFrame(String title)
   { ... }
   public void itemStateChanged(ItemEvent evt)
   { ... }
   public void textValueChanged(TextEvent evt)
   { ... }
   public void actionPerformed(ActionEvent evt)
   { ... }
   public boolean 
   generateConsoleApp(FileWriter fw, String name, Object obj)
   { ... }
   public boolean 
   generateApplet(FileWriter fw, String name, Object obj)
   { ... }
   public boolean 
   generateAppletGUI(FileWriter fw, String name, Object obj, 
      boolean guiOnly)
   { ... }
   public void addMenuListener(FileWriter fw) throws IOException
   { ... }
   public void 
   addActionPerformed(FileWriter fw) throws IOException
   { ... }
   public void 
   createAWTMenuComponents(FileWriter fw) throws IOException
   { ... }
   public void 
   createSwingMenuComponents(FileWriter fw) throws IOException
   { ... }
   public void 
   addMenuComponents(FileWriter fw) throws IOException
   { ... }
}

class MessageBox extends Dialog implements ActionListener
{
   Panel panel1 = new Panel();
   Panel panel2 = new Panel();
   Button ok = new Button("OK");

   MessageBox(Frame owner,String title,String[] message)
   { ... }
 
   public void actionPerformed(ActionEvent evt)
   { ... }
}