public final class jflex.gui.MainFrame extends java.awt.Frame implements jflex.gui.Handles
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: jflex.gui.MainFrame
  super_class: java.awt.Frame
{
  private static final long serialVersionUID;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 3296137982410640865

  private volatile boolean choosing;
    descriptor: Z
    flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE

  private java.lang.String fileName;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  private java.lang.String dirName;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  private java.awt.Button quit;
    descriptor: Ljava/awt/Button;
    flags: (0x0002) ACC_PRIVATE

  private java.awt.Button generate;
    descriptor: Ljava/awt/Button;
    flags: (0x0002) ACC_PRIVATE

  private java.awt.Button specChoose;
    descriptor: Ljava/awt/Button;
    flags: (0x0002) ACC_PRIVATE

  private java.awt.Button dirChoose;
    descriptor: Ljava/awt/Button;
    flags: (0x0002) ACC_PRIVATE

  private java.awt.TextField spec;
    descriptor: Ljava/awt/TextField;
    flags: (0x0002) ACC_PRIVATE

  private java.awt.TextField dir;
    descriptor: Ljava/awt/TextField;
    flags: (0x0002) ACC_PRIVATE

  private java.awt.TextArea messages;
    descriptor: Ljava/awt/TextArea;
    flags: (0x0002) ACC_PRIVATE

  private jflex.gui.GeneratorThread thread;
    descriptor: Ljflex/gui/GeneratorThread;
    flags: (0x0002) ACC_PRIVATE

  private jflex.gui.OptionsDialog dialog;
    descriptor: Ljflex/gui/OptionsDialog;
    flags: (0x0002) ACC_PRIVATE

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // jflex.gui.MainFrame this
         0: .line 65
            aload 0 /* this */
            ldc "JFlex 1.8.2"
            invokespecial java.awt.Frame.<init>:(Ljava/lang/String;)V
         1: .line 46
            aload 0 /* this */
            ldc ""
            putfield jflex.gui.MainFrame.fileName:Ljava/lang/String;
         2: .line 47
            aload 0 /* this */
            ldc ""
            putfield jflex.gui.MainFrame.dirName:Ljava/lang/String;
         3: .line 66
            aload 0 /* this */
            invokevirtual jflex.gui.MainFrame.buildContent:()V
         4: .line 68
            aload 0 /* this */
         5: .line 69
            new jflex.gui.MainFrame$1
            dup
            aload 0 /* this */
            invokespecial jflex.gui.MainFrame$1.<init>:(Ljflex/gui/MainFrame;)V
         6: .line 68
            invokevirtual jflex.gui.MainFrame.addWindowListener:(Ljava/awt/event/WindowListener;)V
         7: .line 76
            aload 0 /* this */
            invokevirtual jflex.gui.MainFrame.pack:()V
         8: .line 77
            aload 0 /* this */
            iconst_1
            invokevirtual jflex.gui.MainFrame.setVisible:(Z)V
         9: .line 78
            return
        end local 0 // jflex.gui.MainFrame this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   10     0  this  Ljflex/gui/MainFrame;

  private void buildContent();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=5, args_size=1
        start local 0 // jflex.gui.MainFrame this
         0: .line 81
            aload 0 /* this */
            getstatic java.awt.SystemColor.control:Ljava/awt/SystemColor;
            invokevirtual jflex.gui.MainFrame.setBackground:(Ljava/awt/Color;)V
         1: .line 83
            aload 0 /* this */
            new java.awt.Button
            dup
            ldc "Generate"
            invokespecial java.awt.Button.<init>:(Ljava/lang/String;)V
            putfield jflex.gui.MainFrame.generate:Ljava/awt/Button;
         2: .line 84
            aload 0 /* this */
            new java.awt.Button
            dup
            ldc "Quit"
            invokespecial java.awt.Button.<init>:(Ljava/lang/String;)V
            putfield jflex.gui.MainFrame.quit:Ljava/awt/Button;
         3: .line 85
            new java.awt.Button
            dup
            ldc "Options"
            invokespecial java.awt.Button.<init>:(Ljava/lang/String;)V
            astore 1 /* options */
        start local 1 // java.awt.Button options
         4: .line 86
            aload 0 /* this */
            new java.awt.Button
            dup
            ldc "Browse"
            invokespecial java.awt.Button.<init>:(Ljava/lang/String;)V
            putfield jflex.gui.MainFrame.dirChoose:Ljava/awt/Button;
         5: .line 87
            aload 0 /* this */
            new java.awt.TextField
            dup
            bipush 10
            invokespecial java.awt.TextField.<init>:(I)V
            putfield jflex.gui.MainFrame.dir:Ljava/awt/TextField;
         6: .line 88
            aload 0 /* this */
            new java.awt.Button
            dup
            ldc "Browse"
            invokespecial java.awt.Button.<init>:(Ljava/lang/String;)V
            putfield jflex.gui.MainFrame.specChoose:Ljava/awt/Button;
         7: .line 89
            aload 0 /* this */
            new java.awt.TextField
            dup
            bipush 10
            invokespecial java.awt.TextField.<init>:(I)V
            putfield jflex.gui.MainFrame.spec:Ljava/awt/TextField;
         8: .line 90
            aload 0 /* this */
            new java.awt.TextArea
            dup
            bipush 10
            bipush 80
            invokespecial java.awt.TextArea.<init>:(II)V
            putfield jflex.gui.MainFrame.messages:Ljava/awt/TextArea;
         9: .line 92
            aload 0 /* this */
            getfield jflex.gui.MainFrame.messages:Ljava/awt/TextArea;
            iconst_0
            invokevirtual java.awt.TextArea.setEditable:(Z)V
        10: .line 93
            aload 0 /* this */
            getfield jflex.gui.MainFrame.messages:Ljava/awt/TextArea;
            invokevirtual java.awt.TextArea.getFont:()Ljava/awt/Font;
            astore 2 /* font */
        start local 2 // java.awt.Font font
        11: .line 94
            aload 2 /* font */
            ifnull 12
            aload 0 /* this */
            getfield jflex.gui.MainFrame.messages:Ljava/awt/TextArea;
            new java.awt.Font
            dup
            ldc "Monospaced"
            aload 2 /* font */
            invokevirtual java.awt.Font.getStyle:()I
            aload 2 /* font */
            invokevirtual java.awt.Font.getSize:()I
            invokespecial java.awt.Font.<init>:(Ljava/lang/String;II)V
            invokevirtual java.awt.TextArea.setFont:(Ljava/awt/Font;)V
            goto 13
        12: .line 95
      StackMap locals: java.awt.Button java.awt.Font
      StackMap stack:
            aload 0 /* this */
            getfield jflex.gui.MainFrame.messages:Ljava/awt/TextArea;
            new java.awt.Font
            dup
            ldc "Monospaced"
            iconst_0
            bipush 12
            invokespecial java.awt.Font.<init>:(Ljava/lang/String;II)V
            invokevirtual java.awt.TextArea.setFont:(Ljava/awt/Font;)V
        13: .line 97
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jflex.gui.MainFrame.messages:Ljava/awt/TextArea;
            invokestatic jflex.logging.Out.setGUIMode:(Ljava/awt/TextArea;)V
        14: .line 99
            aload 0 /* this */
            getfield jflex.gui.MainFrame.generate:Ljava/awt/Button;
        15: .line 100
            new jflex.gui.MainFrame$2
            dup
            aload 0 /* this */
            invokespecial jflex.gui.MainFrame$2.<init>:(Ljflex/gui/MainFrame;)V
        16: .line 99
            invokevirtual java.awt.Button.addActionListener:(Ljava/awt/event/ActionListener;)V
        17: .line 107
            aload 1 /* options */
        18: .line 108
            new jflex.gui.MainFrame$3
            dup
            aload 0 /* this */
            invokespecial jflex.gui.MainFrame$3.<init>:(Ljflex/gui/MainFrame;)V
        19: .line 107
            invokevirtual java.awt.Button.addActionListener:(Ljava/awt/event/ActionListener;)V
        20: .line 115
            aload 0 /* this */
            getfield jflex.gui.MainFrame.quit:Ljava/awt/Button;
        21: .line 116
            new jflex.gui.MainFrame$4
            dup
            aload 0 /* this */
            invokespecial jflex.gui.MainFrame$4.<init>:(Ljflex/gui/MainFrame;)V
        22: .line 115
            invokevirtual java.awt.Button.addActionListener:(Ljava/awt/event/ActionListener;)V
        23: .line 123
            aload 0 /* this */
            getfield jflex.gui.MainFrame.specChoose:Ljava/awt/Button;
        24: .line 124
            new jflex.gui.MainFrame$5
            dup
            aload 0 /* this */
            invokespecial jflex.gui.MainFrame$5.<init>:(Ljflex/gui/MainFrame;)V
        25: .line 123
            invokevirtual java.awt.Button.addActionListener:(Ljava/awt/event/ActionListener;)V
        26: .line 131
            aload 0 /* this */
            getfield jflex.gui.MainFrame.dirChoose:Ljava/awt/Button;
        27: .line 132
            new jflex.gui.MainFrame$6
            dup
            aload 0 /* this */
            invokespecial jflex.gui.MainFrame$6.<init>:(Ljflex/gui/MainFrame;)V
        28: .line 131
            invokevirtual java.awt.Button.addActionListener:(Ljava/awt/event/ActionListener;)V
        29: .line 139
            aload 0 /* this */
            getfield jflex.gui.MainFrame.spec:Ljava/awt/TextField;
        30: .line 140
            new jflex.gui.MainFrame$7
            dup
            aload 0 /* this */
            invokespecial jflex.gui.MainFrame$7.<init>:(Ljflex/gui/MainFrame;)V
        31: .line 139
            invokevirtual java.awt.TextField.addActionListener:(Ljava/awt/event/ActionListener;)V
        32: .line 148
            aload 0 /* this */
            getfield jflex.gui.MainFrame.spec:Ljava/awt/TextField;
        33: .line 149
            new jflex.gui.MainFrame$8
            dup
            aload 0 /* this */
            invokespecial jflex.gui.MainFrame$8.<init>:(Ljflex/gui/MainFrame;)V
        34: .line 148
            invokevirtual java.awt.TextField.addTextListener:(Ljava/awt/event/TextListener;)V
        35: .line 156
            aload 0 /* this */
            getfield jflex.gui.MainFrame.dir:Ljava/awt/TextField;
        36: .line 157
            new jflex.gui.MainFrame$9
            dup
            aload 0 /* this */
            invokespecial jflex.gui.MainFrame$9.<init>:(Ljflex/gui/MainFrame;)V
        37: .line 156
            invokevirtual java.awt.TextField.addActionListener:(Ljava/awt/event/ActionListener;)V
        38: .line 165
            aload 0 /* this */
            getfield jflex.gui.MainFrame.dir:Ljava/awt/TextField;
        39: .line 166
            new jflex.gui.MainFrame$10
            dup
            aload 0 /* this */
            invokespecial jflex.gui.MainFrame$10.<init>:(Ljflex/gui/MainFrame;)V
        40: .line 165
            invokevirtual java.awt.TextField.addTextListener:(Ljava/awt/event/TextListener;)V
        41: .line 173
            new jflex.gui.GridPanel
            dup
            iconst_5
            iconst_4
            bipush 10
            bipush 10
            invokespecial jflex.gui.GridPanel.<init>:(IIII)V
            astore 3 /* north */
        start local 3 // jflex.gui.GridPanel north
        42: .line 174
            aload 3 /* north */
            new java.awt.Insets
            dup
            bipush 10
            iconst_5
            iconst_5
            bipush 10
            invokespecial java.awt.Insets.<init>:(IIII)V
            invokevirtual jflex.gui.GridPanel.setInsets:(Ljava/awt/Insets;)V
        43: .line 176
            aload 3 /* north */
            iconst_4
            iconst_0
            aload 0 /* this */
            getfield jflex.gui.MainFrame.quit:Ljava/awt/Button;
            invokevirtual jflex.gui.GridPanel.add:(IILjava/awt/Component;)V
        44: .line 177
            aload 3 /* north */
            iconst_4
            iconst_1
            aload 0 /* this */
            getfield jflex.gui.MainFrame.generate:Ljava/awt/Button;
            invokevirtual jflex.gui.GridPanel.add:(IILjava/awt/Component;)V
        45: .line 178
            aload 3 /* north */
            iconst_4
            iconst_2
            aload 1 /* options */
            invokevirtual jflex.gui.GridPanel.add:(IILjava/awt/Component;)V
        46: .line 180
            aload 3 /* north */
            iconst_0
            iconst_0
            bipush 7
            new java.awt.Label
            dup
            ldc "Lexical specification:"
            invokespecial java.awt.Label.<init>:(Ljava/lang/String;)V
            invokevirtual jflex.gui.GridPanel.add:(IIILjava/awt/Component;)V
        47: .line 181
            aload 3 /* north */
            iconst_0
            iconst_1
            iconst_2
            iconst_1
            aload 0 /* this */
            getfield jflex.gui.MainFrame.spec:Ljava/awt/TextField;
            invokevirtual jflex.gui.GridPanel.add:(IIIILjava/awt/Component;)V
        48: .line 182
            aload 3 /* north */
            iconst_2
            iconst_1
            aload 0 /* this */
            getfield jflex.gui.MainFrame.specChoose:Ljava/awt/Button;
            invokevirtual jflex.gui.GridPanel.add:(IILjava/awt/Component;)V
        49: .line 184
            aload 3 /* north */
            iconst_0
            iconst_2
            bipush 7
            new java.awt.Label
            dup
            ldc "Output directory:"
            invokespecial java.awt.Label.<init>:(Ljava/lang/String;)V
            invokevirtual jflex.gui.GridPanel.add:(IIILjava/awt/Component;)V
        50: .line 185
            aload 3 /* north */
            iconst_0
            iconst_3
            iconst_2
            iconst_1
            aload 0 /* this */
            getfield jflex.gui.MainFrame.dir:Ljava/awt/TextField;
            invokevirtual jflex.gui.GridPanel.add:(IIIILjava/awt/Component;)V
        51: .line 186
            aload 3 /* north */
            iconst_2
            iconst_3
            aload 0 /* this */
            getfield jflex.gui.MainFrame.dirChoose:Ljava/awt/Button;
            invokevirtual jflex.gui.GridPanel.add:(IILjava/awt/Component;)V
        52: .line 188
            new java.awt.Panel
            dup
            new java.awt.BorderLayout
            dup
            invokespecial java.awt.BorderLayout.<init>:()V
            invokespecial java.awt.Panel.<init>:(Ljava/awt/LayoutManager;)V
            astore 4 /* center */
        start local 4 // java.awt.Panel center
        53: .line 189
            aload 4 /* center */
            ldc "North"
            new java.awt.Label
            dup
            ldc "Messages:"
            invokespecial java.awt.Label.<init>:(Ljava/lang/String;)V
            invokevirtual java.awt.Panel.add:(Ljava/lang/String;Ljava/awt/Component;)Ljava/awt/Component;
            pop
        54: .line 190
            aload 4 /* center */
            ldc "Center"
            aload 0 /* this */
            getfield jflex.gui.MainFrame.messages:Ljava/awt/TextArea;
            invokevirtual java.awt.Panel.add:(Ljava/lang/String;Ljava/awt/Component;)Ljava/awt/Component;
            pop
        55: .line 192
            aload 0 /* this */
            ldc "North"
            aload 3 /* north */
            invokevirtual jflex.gui.MainFrame.add:(Ljava/lang/String;Ljava/awt/Component;)Ljava/awt/Component;
            pop
        56: .line 193
            aload 0 /* this */
            ldc "Center"
            aload 4 /* center */
            invokevirtual jflex.gui.MainFrame.add:(Ljava/lang/String;Ljava/awt/Component;)Ljava/awt/Component;
            pop
        57: .line 195
            aload 0 /* this */
            iconst_0
            invokevirtual jflex.gui.MainFrame.setEnabledAll:(Z)V
        58: .line 196
            return
        end local 4 // java.awt.Panel center
        end local 3 // jflex.gui.GridPanel north
        end local 2 // java.awt.Font font
        end local 1 // java.awt.Button options
        end local 0 // jflex.gui.MainFrame this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   59     0     this  Ljflex/gui/MainFrame;
            4   59     1  options  Ljava/awt/Button;
           11   59     2     font  Ljava/awt/Font;
           42   59     3    north  Ljflex/gui/GridPanel;
           53   59     4   center  Ljava/awt/Panel;

  protected void showOptions();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // jflex.gui.MainFrame this
         0: .line 200
            aload 0 /* this */
            getfield jflex.gui.MainFrame.dialog:Ljflex/gui/OptionsDialog;
            ifnonnull 2
         1: .line 201
            aload 0 /* this */
            new jflex.gui.OptionsDialog
            dup
            aload 0 /* this */
            invokespecial jflex.gui.OptionsDialog.<init>:(Ljava/awt/Frame;)V
            putfield jflex.gui.MainFrame.dialog:Ljflex/gui/OptionsDialog;
         2: .line 203
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jflex.gui.MainFrame.dialog:Ljflex/gui/OptionsDialog;
            iconst_1
            invokevirtual jflex.gui.OptionsDialog.setVisible:(Z)V
         3: .line 204
            return
        end local 0 // jflex.gui.MainFrame this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljflex/gui/MainFrame;

  public java.awt.Dimension getPreferredSize();
    descriptor: ()Ljava/awt/Dimension;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // jflex.gui.MainFrame this
         0: .line 213
            aload 0 /* this */
            invokespecial java.awt.Frame.getPreferredSize:()Ljava/awt/Dimension;
            astore 1 /* d */
        start local 1 // java.awt.Dimension d
         1: .line 214
            aload 1 /* d */
            aload 0 /* this */
            getfield jflex.gui.MainFrame.messages:Ljava/awt/TextArea;
            invokevirtual java.awt.TextArea.getPreferredSize:()Ljava/awt/Dimension;
            getfield java.awt.Dimension.width:I
            putfield java.awt.Dimension.width:I
         2: .line 215
            aload 1 /* d */
            areturn
        end local 1 // java.awt.Dimension d
        end local 0 // jflex.gui.MainFrame this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljflex/gui/MainFrame;
            1    3     1     d  Ljava/awt/Dimension;

  private void setEnabledAll(boolean);
    descriptor: (Z)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jflex.gui.MainFrame this
        start local 1 // boolean generating
         0: .line 219
            aload 0 /* this */
            getfield jflex.gui.MainFrame.quit:Ljava/awt/Button;
            iload 1 /* generating */
            ifeq 1
            iconst_0
            goto 2
      StackMap locals:
      StackMap stack: java.awt.Button
         1: iconst_1
      StackMap locals: jflex.gui.MainFrame int
      StackMap stack: java.awt.Button int
         2: invokevirtual java.awt.Button.setEnabled:(Z)V
         3: .line 220
            aload 0 /* this */
            getfield jflex.gui.MainFrame.generate:Ljava/awt/Button;
            iload 1 /* generating */
            ifeq 4
            iconst_0
            goto 5
      StackMap locals:
      StackMap stack: java.awt.Button
         4: iconst_1
      StackMap locals: jflex.gui.MainFrame int
      StackMap stack: java.awt.Button int
         5: invokevirtual java.awt.Button.setEnabled:(Z)V
         6: .line 221
            aload 0 /* this */
            getfield jflex.gui.MainFrame.dirChoose:Ljava/awt/Button;
            iload 1 /* generating */
            ifeq 7
            iconst_0
            goto 8
      StackMap locals:
      StackMap stack: java.awt.Button
         7: iconst_1
      StackMap locals: jflex.gui.MainFrame int
      StackMap stack: java.awt.Button int
         8: invokevirtual java.awt.Button.setEnabled:(Z)V
         9: .line 222
            aload 0 /* this */
            getfield jflex.gui.MainFrame.dir:Ljava/awt/TextField;
            iload 1 /* generating */
            ifeq 10
            iconst_0
            goto 11
      StackMap locals:
      StackMap stack: java.awt.TextField
        10: iconst_1
      StackMap locals: jflex.gui.MainFrame int
      StackMap stack: java.awt.TextField int
        11: invokevirtual java.awt.TextField.setEnabled:(Z)V
        12: .line 223
            aload 0 /* this */
            getfield jflex.gui.MainFrame.specChoose:Ljava/awt/Button;
            iload 1 /* generating */
            ifeq 13
            iconst_0
            goto 14
      StackMap locals:
      StackMap stack: java.awt.Button
        13: iconst_1
      StackMap locals: jflex.gui.MainFrame int
      StackMap stack: java.awt.Button int
        14: invokevirtual java.awt.Button.setEnabled:(Z)V
        15: .line 224
            aload 0 /* this */
            getfield jflex.gui.MainFrame.spec:Ljava/awt/TextField;
            iload 1 /* generating */
            ifeq 16
            iconst_0
            goto 17
      StackMap locals:
      StackMap stack: java.awt.TextField
        16: iconst_1
      StackMap locals: jflex.gui.MainFrame int
      StackMap stack: java.awt.TextField int
        17: invokevirtual java.awt.TextField.setEnabled:(Z)V
        18: .line 225
            return
        end local 1 // boolean generating
        end local 0 // jflex.gui.MainFrame this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   19     0        this  Ljflex/gui/MainFrame;
            0   19     1  generating  Z
    MethodParameters:
            Name  Flags
      generating  

  private void generate();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=1, args_size=1
        start local 0 // jflex.gui.MainFrame this
         0: .line 229
            aload 0 /* this */
            getfield jflex.gui.MainFrame.choosing:Z
            ifeq 1
            return
         1: .line 231
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            invokevirtual jflex.gui.MainFrame.setEnabledAll:(Z)V
         2: .line 233
            aload 0 /* this */
            new jflex.gui.GeneratorThread
            dup
            aload 0 /* this */
            aload 0 /* this */
            getfield jflex.gui.MainFrame.fileName:Ljava/lang/String;
            aload 0 /* this */
            getfield jflex.gui.MainFrame.dirName:Ljava/lang/String;
            invokespecial jflex.gui.GeneratorThread.<init>:(Ljflex/gui/MainFrame;Ljava/lang/String;Ljava/lang/String;)V
            putfield jflex.gui.MainFrame.thread:Ljflex/gui/GeneratorThread;
         3: .line 234
            aload 0 /* this */
            getfield jflex.gui.MainFrame.thread:Ljflex/gui/GeneratorThread;
            invokevirtual jflex.gui.GeneratorThread.start:()V
         4: .line 235
            return
        end local 0 // jflex.gui.MainFrame this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Ljflex/gui/MainFrame;

  public void generationFinished(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // jflex.gui.MainFrame this
        start local 1 // boolean success
         0: .line 243
            aload 0 /* this */
            iconst_0
            invokevirtual jflex.gui.MainFrame.setEnabledAll:(Z)V
         1: .line 245
            iload 1 /* success */
            ifeq 2
            aload 0 /* this */
            getfield jflex.gui.MainFrame.messages:Ljava/awt/TextArea;
            new java.lang.StringBuilder
            dup
            getstatic jflex.logging.Out.NL:Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "Generation finished successfully."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            getstatic jflex.logging.Out.NL:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.awt.TextArea.append:(Ljava/lang/String;)V
            goto 3
         2: .line 246
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jflex.gui.MainFrame.messages:Ljava/awt/TextArea;
            new java.lang.StringBuilder
            dup
            getstatic jflex.logging.Out.NL:Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "Generation aborted."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            getstatic jflex.logging.Out.NL:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.awt.TextArea.append:(Ljava/lang/String;)V
         3: .line 247
      StackMap locals:
      StackMap stack:
            return
        end local 1 // boolean success
        end local 0 // jflex.gui.MainFrame this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Ljflex/gui/MainFrame;
            0    4     1  success  Z
    MethodParameters:
         Name  Flags
      success  

  private void quit();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jflex.gui.MainFrame this
         0: .line 251
            aload 0 /* this */
            iconst_0
            invokevirtual jflex.gui.MainFrame.setVisible:(Z)V
         1: .line 252
            iconst_0
            invokestatic java.lang.System.exit:(I)V
         2: .line 253
            return
        end local 0 // jflex.gui.MainFrame this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljflex/gui/MainFrame;

  private void dirChoose();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=2, args_size=1
        start local 0 // jflex.gui.MainFrame this
         0: .line 256
            aload 0 /* this */
            iconst_1
            putfield jflex.gui.MainFrame.choosing:Z
         1: .line 260
            ldc "apple.awt.fileDialogForDirectories"
            ldc "true"
            invokestatic java.lang.System.setProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            pop
         2: .line 261
            new java.awt.FileDialog
            dup
            aload 0 /* this */
            ldc "Choose directory"
            iconst_0
            invokespecial java.awt.FileDialog.<init>:(Ljava/awt/Frame;Ljava/lang/String;I)V
            astore 1 /* d */
        start local 1 // java.awt.FileDialog d
         3: .line 263
            aload 1 /* d */
            iconst_1
            invokevirtual java.awt.FileDialog.setVisible:(Z)V
         4: .line 265
            aload 1 /* d */
            invokevirtual java.awt.FileDialog.getDirectory:()Ljava/lang/String;
            ifnull 6
         5: .line 266
            aload 0 /* this */
            getfield jflex.gui.MainFrame.dir:Ljava/awt/TextField;
            new java.io.File
            dup
            aload 1 /* d */
            invokevirtual java.awt.FileDialog.getDirectory:()Ljava/lang/String;
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
            invokevirtual java.awt.TextField.setText:(Ljava/lang/String;)V
         6: .line 268
      StackMap locals: java.awt.FileDialog
      StackMap stack:
            ldc "apple.awt.fileDialogForDirectories"
            ldc "false"
            invokestatic java.lang.System.setProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            pop
         7: .line 270
            aload 0 /* this */
            iconst_0
            putfield jflex.gui.MainFrame.choosing:Z
         8: .line 271
            return
        end local 1 // java.awt.FileDialog d
        end local 0 // jflex.gui.MainFrame this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Ljflex/gui/MainFrame;
            3    9     1     d  Ljava/awt/FileDialog;

  private void specChoose();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=2, args_size=1
        start local 0 // jflex.gui.MainFrame this
         0: .line 274
            aload 0 /* this */
            iconst_1
            putfield jflex.gui.MainFrame.choosing:Z
         1: .line 276
            new java.awt.FileDialog
            dup
            aload 0 /* this */
            ldc "Choose file"
            iconst_0
            invokespecial java.awt.FileDialog.<init>:(Ljava/awt/Frame;Ljava/lang/String;I)V
            astore 1 /* d */
        start local 1 // java.awt.FileDialog d
         2: .line 278
            aload 1 /* d */
            ldc "*.flex"
            invokevirtual java.awt.FileDialog.setFile:(Ljava/lang/String;)V
         3: .line 279
            aload 1 /* d */
            iconst_1
            invokevirtual java.awt.FileDialog.setVisible:(Z)V
         4: .line 281
            aload 1 /* d */
            invokevirtual java.awt.FileDialog.getFile:()Ljava/lang/String;
            ifnull 8
         5: .line 282
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            aload 1 /* d */
            invokevirtual java.awt.FileDialog.getDirectory:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* d */
            invokevirtual java.awt.FileDialog.getFile:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            putfield jflex.gui.MainFrame.fileName:Ljava/lang/String;
         6: .line 283
            aload 0 /* this */
            getfield jflex.gui.MainFrame.dir:Ljava/awt/TextField;
            aload 1 /* d */
            invokevirtual java.awt.FileDialog.getDirectory:()Ljava/lang/String;
            invokevirtual java.awt.TextField.setText:(Ljava/lang/String;)V
         7: .line 284
            aload 0 /* this */
            getfield jflex.gui.MainFrame.spec:Ljava/awt/TextField;
            aload 0 /* this */
            getfield jflex.gui.MainFrame.fileName:Ljava/lang/String;
            invokevirtual java.awt.TextField.setText:(Ljava/lang/String;)V
         8: .line 287
      StackMap locals: java.awt.FileDialog
      StackMap stack:
            aload 0 /* this */
            iconst_0
            putfield jflex.gui.MainFrame.choosing:Z
         9: .line 288
            return
        end local 1 // java.awt.FileDialog d
        end local 0 // jflex.gui.MainFrame this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   10     0  this  Ljflex/gui/MainFrame;
            2   10     1     d  Ljava/awt/FileDialog;
}
SourceFile: "MainFrame.java"
NestMembers:
  jflex.gui.MainFrame$1  jflex.gui.MainFrame$10  jflex.gui.MainFrame$2  jflex.gui.MainFrame$3  jflex.gui.MainFrame$4  jflex.gui.MainFrame$5  jflex.gui.MainFrame$6  jflex.gui.MainFrame$7  jflex.gui.MainFrame$8  jflex.gui.MainFrame$9
InnerClasses:
  jflex.gui.MainFrame$1
  jflex.gui.MainFrame$10
  jflex.gui.MainFrame$2
  jflex.gui.MainFrame$3
  jflex.gui.MainFrame$4
  jflex.gui.MainFrame$5
  jflex.gui.MainFrame$6
  jflex.gui.MainFrame$7
  jflex.gui.MainFrame$8
  jflex.gui.MainFrame$9