//# 0 errors, 672 messages
//#
/*
    //#StandardInputDialog.java:1:1: class: com.dmdirc.addons.ui_swing.components.StandardInputDialog$7
    //#StandardInputDialog.java:1:1: method: com.dmdirc.addons.ui_swing.components.StandardInputDialog$7.com.dmdirc.addons.ui_swing.components.StandardInputDialog$7__static_init
    //#StandardInputDialog.java:1:1: class: com.dmdirc.addons.ui_swing.components.StandardInputDialog$6
    //#StandardInputDialog.java:1:1: method: com.dmdirc.addons.ui_swing.components.StandardInputDialog$6.com.dmdirc.addons.ui_swing.components.StandardInputDialog$6__static_init
    //#StandardInputDialog.java:1:1: class: com.dmdirc.addons.ui_swing.components.StandardInputDialog$5
    //#StandardInputDialog.java:1:1: method: com.dmdirc.addons.ui_swing.components.StandardInputDialog$5.com.dmdirc.addons.ui_swing.components.StandardInputDialog$5__static_init
    //#StandardInputDialog.java:1:1: class: com.dmdirc.addons.ui_swing.components.StandardInputDialog$4
    //#StandardInputDialog.java:1:1: method: com.dmdirc.addons.ui_swing.components.StandardInputDialog$4.com.dmdirc.addons.ui_swing.components.StandardInputDialog$4__static_init
    //#StandardInputDialog.java:1:1: class: com.dmdirc.addons.ui_swing.components.StandardInputDialog$3
    //#StandardInputDialog.java:1:1: method: com.dmdirc.addons.ui_swing.components.StandardInputDialog$3.com.dmdirc.addons.ui_swing.components.StandardInputDialog$3__static_init
    //#StandardInputDialog.java:1:1: class: com.dmdirc.addons.ui_swing.components.StandardInputDialog$2
    //#StandardInputDialog.java:1:1: method: com.dmdirc.addons.ui_swing.components.StandardInputDialog$2.com.dmdirc.addons.ui_swing.components.StandardInputDialog$2__static_init
    //#StandardInputDialog.java:1:1: class: com.dmdirc.addons.ui_swing.components.StandardInputDialog$1
    //#StandardInputDialog.java:1:1: method: com.dmdirc.addons.ui_swing.components.StandardInputDialog$1.com.dmdirc.addons.ui_swing.components.StandardInputDialog$1__static_init
    //#StandardInputDialog.java:1:1: class: com.dmdirc.addons.ui_swing.components.StandardInputDialog
    //#StandardInputDialog.java:1:1: method: com.dmdirc.addons.ui_swing.components.StandardInputDialog.com.dmdirc.addons.ui_swing.components.StandardInputDialog__static_init
 * Copyright (c) 2006-2009 Chris Smith, Shane Mc Cormack, Gregory Holmes
 *
 * Permission is hereby granted, free of charge, to any person obtaining a copy
 * of this software and associated documentation files (the "Software"), to deal
 * in the Software without restriction, including without limitation the rights
 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 * copies of the Software, and to permit persons to whom the Software is
 * furnished to do so, subject to the following conditions:
 *
 * The above copyright notice and this permission notice shall be included in
 * all copies or substantial portions of the Software.
 *
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
 * SOFTWARE.
 */

package com.dmdirc.addons.ui_swing.components;

import com.dmdirc.config.prefs.validator.ValidationResponse;
import com.dmdirc.addons.ui_swing.components.validating.ValidatingJTextField;
import com.dmdirc.config.prefs.validator.Validator;
import com.dmdirc.addons.ui_swing.UIUtilities;
import com.dmdirc.addons.ui_swing.components.text.TextLabel;

import java.awt.Component;
import java.awt.Window;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;

import javax.swing.JButton;
import javax.swing.JComponent;
import javax.swing.KeyStroke;
import javax.swing.event.DocumentEvent;
import javax.swing.event.DocumentListener;

import net.miginfocom.swing.MigLayout;

/**
 * Standard input dialog.
 */
public abstract class StandardInputDialog extends StandardDialog {
    //#StandardInputDialog.java:50: method: ValidatingJTextField com.dmdirc.addons.ui_swing.components.StandardInputDialog.access$000(StandardInputDialog)
    //#input(ValidatingJTextField access$000(StandardInputDialog)): x0
    //#input(ValidatingJTextField access$000(StandardInputDialog)): x0.textField
    //#output(ValidatingJTextField access$000(StandardInputDialog)): return_value
    //#pre[1] (ValidatingJTextField access$000(StandardInputDialog)): x0 != null
    //#pre[2] (ValidatingJTextField access$000(StandardInputDialog)): init'ed(x0.textField)
    //#post(ValidatingJTextField access$000(StandardInputDialog)): return_value == x0.textField
    //#post(ValidatingJTextField access$000(StandardInputDialog)): init'ed(return_value)
    //#StandardInputDialog.java:50: end of method: ValidatingJTextField com.dmdirc.addons.ui_swing.components.StandardInputDialog.access$000(StandardInputDialog)
    //#StandardInputDialog.java:50: method: void com.dmdirc.addons.ui_swing.components.StandardInputDialog.access$100(StandardInputDialog)
    //#input(void access$100(StandardInputDialog)): x0
    //#input(void access$100(StandardInputDialog)): x0.okButton
    //#input(void access$100(StandardInputDialog)): x0.textField
    //#input(void access$100(StandardInputDialog)): x0.validator
    //#pre[1] (void access$100(StandardInputDialog)): x0 != null
    //#pre[2] (void access$100(StandardInputDialog)): x0.okButton != null
    //#pre[3] (void access$100(StandardInputDialog)): x0.textField != null
    //#pre[4] (void access$100(StandardInputDialog)): x0.validator != null
    //#unanalyzed(void access$100(StandardInputDialog)): Effects-of-calling:com.dmdirc.addons.ui_swing.components.validating.ValidatingJTextField:getText
    //#unanalyzed(void access$100(StandardInputDialog)): Effects-of-calling:getOkButton
    //#unanalyzed(void access$100(StandardInputDialog)): Effects-of-calling:com.dmdirc.config.prefs.validator.Validator:validate
    //#unanalyzed(void access$100(StandardInputDialog)): Effects-of-calling:com.dmdirc.config.prefs.validator.ValidationResponse:isFailure
    //#unanalyzed(void access$100(StandardInputDialog)): Effects-of-calling:javax.swing.JButton:setEnabled
    //#StandardInputDialog.java:50: end of method: void com.dmdirc.addons.ui_swing.components.StandardInputDialog.access$100(StandardInputDialog)

    /** Validator. */
    private Validator<String> validator;
    /** Text field. */
    private ValidatingJTextField textField;
    /** Blurb label. */
    private TextLabel blurb;
    /** Message. */
    private String message;

    /**
     * Instantiates a new standard input dialog.
     * 
     * @param owner Dialog owner
     * @param modal modality type
     * @param title Dialog title
     * @param message Dialog message
     */
    public StandardInputDialog(Window owner, ModalityType modal,
            final String title,
            final String message) {
        this(owner, modal, title, message, new Validator<String>() {
    //#StandardInputDialog.java:72: method: void com.dmdirc.addons.ui_swing.components.StandardInputDialog$1.com.dmdirc.addons.ui_swing.components.StandardInputDialog$1()
    //#StandardInputDialog.java:72: end of method: void com.dmdirc.addons.ui_swing.components.StandardInputDialog$1.com.dmdirc.addons.ui_swing.components.StandardInputDialog$1()
    //#StandardInputDialog.java:72: method: ValidationResponse com.dmdirc.addons.ui_swing.components.StandardInputDialog$1.validate(Object)
    //#input(ValidationResponse validate(Object)): __Descendant_Table[com/dmdirc/addons/ui_swing/components/StandardInputDialog$1]
    //#input(ValidationResponse validate(Object)): __Descendant_Table[others]
    //#input(ValidationResponse validate(Object)): __Dispatch_Table.validate(Ljava/lang/String;)Lcom/dmdirc/config/prefs/validator/ValidationResponse;
    //#input(ValidationResponse validate(Object)): this
    //#input(ValidationResponse validate(Object)): this.__Tag
    //#input(ValidationResponse validate(Object)): x0
    //#output(ValidationResponse validate(Object)): new ValidationResponse(validate#1*) num objects
    //#output(ValidationResponse validate(Object)): return_value
    //#new obj(ValidationResponse validate(Object)): new ValidationResponse(validate#1*)
    //#pre[2] (ValidationResponse validate(Object)): this.__Tag == com/dmdirc/addons/ui_swing/components/StandardInputDialog$1
    //#post(ValidationResponse validate(Object)): return_value == &new ValidationResponse(validate#1*)
    //#post(ValidationResponse validate(Object)): new ValidationResponse(validate#1*) num objects == 1
    //#unanalyzed(ValidationResponse validate(Object)): Effects-of-calling:com.dmdirc.config.prefs.validator.ValidationResponse
    //#StandardInputDialog.java:72: end of method: ValidationResponse com.dmdirc.addons.ui_swing.components.StandardInputDialog$1.validate(Object)
    //#StandardInputDialog.java:72: method: void com.dmdirc.addons.ui_swing.components.StandardInputDialog.com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)
    //#StandardInputDialog.java:72: Warning: suspicious precondition
    //#    The precondition for this.__Tag is not a contiguous range of values
    //#    severity: SUPPRESSED
    //#    class: com.dmdirc.addons.ui_swing.components.StandardInputDialog
    //#    method: void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)
    //#    suspicious precondition index: [3]
    //#input(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): __Dispatch_Table.setCancelButton(Ljavax/swing/JButton;)V
    //#input(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): __Dispatch_Table.setOkButton(Ljavax/swing/JButton;)V
    //#input(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): com/dmdirc/addons/nickcolours/NickColourInputDialog.__Dispatch_Table.setCancelButton(Ljavax/swing/JButton;)V
    //#input(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): com/dmdirc/addons/nickcolours/NickColourInputDialog.__Dispatch_Table.setOkButton(Ljavax/swing/JButton;)V
    //#input(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): com/dmdirc/addons/ui_swing/components/ColourPickerDialog.__Dispatch_Table.setCancelButton(Ljavax/swing/JButton;)V
    //#input(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): com/dmdirc/addons/ui_swing/components/ColourPickerDialog.__Dispatch_Table.setOkButton(Ljavax/swing/JButton;)V
    //#input(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): com/dmdirc/addons/ui_swing/components/MenuBar$1.__Dispatch_Table.setCancelButton(Ljavax/swing/JButton;)V
    //#input(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): com/dmdirc/addons/ui_swing/components/MenuBar$1.__Dispatch_Table.setOkButton(Ljavax/swing/JButton;)V
    //#input(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): com/dmdirc/addons/ui_swing/components/StandardDialog.__Descendant_Table[com/dmdirc/addons/nickcolours/NickColourInputDialog]
    //#input(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): com/dmdirc/addons/ui_swing/components/StandardDialog.__Descendant_Table[com/dmdirc/addons/ui_swing/components/ColourPickerDialog]
    //#input(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): com/dmdirc/addons/ui_swing/components/StandardDialog.__Descendant_Table[com/dmdirc/addons/ui_swing/components/MenuBar$1]
    //#input(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): com/dmdirc/addons/ui_swing/components/StandardDialog.__Descendant_Table[com/dmdirc/addons/ui_swing/components/StandardDialog]
    //#input(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): com/dmdirc/addons/ui_swing/components/StandardDialog.__Descendant_Table[com/dmdirc/addons/ui_swing/components/StandardInputDialog]
    //#input(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): com/dmdirc/addons/ui_swing/components/StandardDialog.__Descendant_Table[com/dmdirc/addons/ui_swing/components/durationeditor/DurationEditor]
    //#input(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): com/dmdirc/addons/ui_swing/components/StandardDialog.__Descendant_Table[others]
    //#input(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): com/dmdirc/addons/ui_swing/components/StandardDialog.__Dispatch_Table.setCancelButton(Ljavax/swing/JButton;)V
    //#input(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): com/dmdirc/addons/ui_swing/components/StandardDialog.__Dispatch_Table.setOkButton(Ljavax/swing/JButton;)V
    //#input(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): com/dmdirc/addons/ui_swing/components/durationeditor/DurationEditor.__Dispatch_Table.setCancelButton(Ljavax/swing/JButton;)V
    //#input(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): com/dmdirc/addons/ui_swing/components/durationeditor/DurationEditor.__Dispatch_Table.setOkButton(Ljavax/swing/JButton;)V
    //#input(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): message
    //#input(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): modal
    //#input(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): owner
    //#input(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): this
    //#input(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): this.__Tag
    //#input(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): title
    //#output(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): new JButton(initComponents#1) num objects
    //#output(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): new JButton(initComponents#2) num objects
    //#output(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): new StandardInputDialog$1(StandardInputDialog#1) num objects
    //#output(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): this.validator.__Tag
    //#output(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): new TextLabel(initComponents#4) num objects
    //#output(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): new ValidatingJTextField(initComponents#3) num objects
    //#output(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): this.__Tag
    //#output(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): this.blurb
    //#output(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): this.cancelButton
    //#output(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): this.message
    //#output(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): this.okButton
    //#output(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): this.textField
    //#output(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): this.validator
    //#new obj(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): new JButton(initComponents#1)
    //#new obj(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): new JButton(initComponents#2)
    //#new obj(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): new StandardInputDialog$1(StandardInputDialog#1)
    //#new obj(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): new TextLabel(initComponents#4)
    //#new obj(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): new ValidatingJTextField(initComponents#3)
    //#pre[3] (void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): this.__Tag in {com/dmdirc/addons/nickcolours/NickColourInputDialog, com/dmdirc/addons/ui_swing/components/ColourPickerDialog, com/dmdirc/addons/ui_swing/components/MenuBar$1, com/dmdirc/addons/ui_swing/components/StandardDialog, com/dmdirc/addons/ui_swing/components/StandardInputDialog, com/dmdirc/addons/ui_swing/components/durationeditor/DurationEditor}
    //#post(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): this.__Tag == old this.__Tag
    //#post(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): this.__Tag in {com/dmdirc/addons/nickcolours/NickColourInputDialog, com/dmdirc/addons/ui_swing/components/ColourPickerDialog, com/dmdirc/addons/ui_swing/components/MenuBar$1, com/dmdirc/addons/ui_swing/components/StandardDialog, com/dmdirc/addons/ui_swing/components/StandardInputDialog, com/dmdirc/addons/ui_swing/components/durationeditor/DurationEditor}
    //#post(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): this.blurb == &new TextLabel(initComponents#4)
    //#post(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): this.cancelButton == One-of{&new JButton(initComponents#2), &new JButton(initComponents#1)}
    //#post(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): this.cancelButton in Addr_Set{&new JButton(initComponents#1),&new JButton(initComponents#2)}
    //#post(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): this.message == message
    //#post(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): init'ed(this.message)
    //#post(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): this.okButton == One-of{&new JButton(initComponents#1), &new JButton(initComponents#2)}
    //#post(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): this.okButton in Addr_Set{&new JButton(initComponents#1),&new JButton(initComponents#2)}
    //#post(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): this.textField == &new ValidatingJTextField(initComponents#3)
    //#post(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): this.validator == &new StandardInputDialog$1(StandardInputDialog#1)
    //#post(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): new JButton(initComponents#1) num objects == 1
    //#post(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): new JButton(initComponents#2) num objects == 1
    //#post(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): new StandardInputDialog$1(StandardInputDialog#1) num objects == 1
    //#post(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): new TextLabel(initComponents#4) num objects == 1
    //#post(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): new ValidatingJTextField(initComponents#3) num objects == 1
    //#post(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): this.validator.__Tag == com/dmdirc/addons/ui_swing/components/StandardInputDialog$1
    //#unanalyzed(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): Effects-of-calling:com.dmdirc.addons.ui_swing.components.validating.ValidatingJTextField:getText
    //#unanalyzed(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): Effects-of-calling:getOkButton
    //#unanalyzed(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): Effects-of-calling:com.dmdirc.config.prefs.validator.Validator:validate
    //#unanalyzed(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): Effects-of-calling:com.dmdirc.config.prefs.validator.ValidationResponse:isFailure
    //#unanalyzed(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): Effects-of-calling:javax.swing.JButton:setEnabled
    //#unanalyzed(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): Effects-of-calling:javax.swing.JButton
    //#unanalyzed(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): Effects-of-calling:orderButtons
    //#unanalyzed(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): Effects-of-calling:com.dmdirc.addons.ui_swing.components.validating.ValidatingJTextField
    //#unanalyzed(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): Effects-of-calling:com.dmdirc.addons.ui_swing.components.text.TextLabel
    //#unanalyzed(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): Effects-of-calling:javax.swing.JButton:addActionListener
    //#unanalyzed(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): Effects-of-calling:getCancelButton
    //#unanalyzed(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): Effects-of-calling:java.awt.event.WindowAdapter
    //#unanalyzed(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): Effects-of-calling:com.dmdirc.addons.ui_swing.components.StandardInputDialog:addWindowListener
    //#unanalyzed(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): Effects-of-calling:com.dmdirc.addons.ui_swing.components.validating.ValidatingJTextField:getDocument
    //#unanalyzed(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): Effects-of-calling:javax.swing.text.Document:addDocumentListener
    //#unanalyzed(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): Effects-of-calling:javax.swing.KeyStroke:getKeyStroke
    //#unanalyzed(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): Effects-of-calling:com.dmdirc.addons.ui_swing.components.StandardInputDialog:getRootPane
    //#unanalyzed(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): Effects-of-calling:javax.swing.JRootPane:registerKeyboardAction
    //#unanalyzed(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): Effects-of-calling:net.miginfocom.swing.MigLayout
    //#unanalyzed(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): Effects-of-calling:com.dmdirc.addons.ui_swing.components.StandardInputDialog:setLayout
    //#unanalyzed(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): Effects-of-calling:com.dmdirc.addons.ui_swing.components.StandardInputDialog:add
    //#unanalyzed(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): Effects-of-calling:getLeftButton
    //#unanalyzed(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): Effects-of-calling:getRightButton
    //#unanalyzed(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): Effects-of-calling:com.dmdirc.addons.ui_swing.components.StandardDialog
    //#unanalyzed(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): Effects-of-calling:com.dmdirc.addons.ui_swing.components.StandardInputDialog:setTitle
    //#unanalyzed(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): Effects-of-calling:com.dmdirc.addons.ui_swing.components.StandardInputDialog:setDefaultCloseOperation
    //#unanalyzed(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): Effects-of-calling:javax.swing.JButton:setText
    //#unanalyzed(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): Effects-of-calling:javax.swing.JButton:setDefaultCapable
    //#unanalyzed(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): Effects-of-calling:java.lang.System:getProperty
    //#unanalyzed(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): Effects-of-calling:java.lang.String:toLowerCase
    //#unanalyzed(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): Effects-of-calling:java.lang.String:startsWith
    //#unanalyzed(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): Effects-of-calling:java.awt.Dimension
    //#unanalyzed(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): Effects-of-calling:javax.swing.JButton:setPreferredSize
    //#unanalyzed(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): Effects-of-calling:javax.swing.JButton:setMinimumSize
    //#unanalyzed(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): Effects-of-calling:com.dmdirc.addons.ui_swing.components.StandardDialog:setIconImages
    //#unanalyzed(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): Effects-of-calling:javax.swing.JDialog
    //#unanalyzed(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)): Effects-of-calling:java.awt.Window:getIconImages

            /** {@inheritDoc} */
            @Override
            public ValidationResponse validate(final String object) {
                return new ValidationResponse();
    //#StandardInputDialog.java:77: method: ValidationResponse com.dmdirc.addons.ui_swing.components.StandardInputDialog$1.validate(String)
    //#StandardInputDialog.java:77: Warning: method not available - call not analyzed
    //#    call on void com.dmdirc.config.prefs.validator.ValidationResponse()
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.components.StandardInputDialog$1
    //#    method: ValidationResponse validate(String)
    //#    unanalyzed callee: void com.dmdirc.config.prefs.validator.ValidationResponse()
    //#output(ValidationResponse validate(String)): new ValidationResponse(validate#1) num objects
    //#output(ValidationResponse validate(String)): return_value
    //#new obj(ValidationResponse validate(String)): new ValidationResponse(validate#1)
    //#post(ValidationResponse validate(String)): return_value == &new ValidationResponse(validate#1)
    //#post(ValidationResponse validate(String)): new ValidationResponse(validate#1) num objects == 1
    //#StandardInputDialog.java:77: end of method: ValidationResponse com.dmdirc.addons.ui_swing.components.StandardInputDialog$1.validate(String)
            }
        });
    }
    //#StandardInputDialog.java:80: end of method: void com.dmdirc.addons.ui_swing.components.StandardInputDialog.com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String)

    /**
     * Instantiates a new standard input dialog.
     * 
     * @param owner Dialog owner
     * @param modal modality type
     * @param validator Textfield validator
     * @param title Dialog title
     * @param message Dialog message
     */
    public StandardInputDialog(Window owner, ModalityType modal,
            final String title, final String message,
            final Validator<String> validator) {
        super(owner, modal);
    //#StandardInputDialog.java:94: method: void com.dmdirc.addons.ui_swing.components.StandardInputDialog.com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)
    //#StandardInputDialog.java:94: Warning: suspicious precondition
    //#    The precondition for this.__Tag is not a contiguous range of values
    //#    severity: SUPPRESSED
    //#    class: com.dmdirc.addons.ui_swing.components.StandardInputDialog
    //#    method: void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)
    //#    suspicious precondition index: [3]
    //#input(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): __Dispatch_Table.setCancelButton(Ljavax/swing/JButton;)V
    //#input(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): __Dispatch_Table.setOkButton(Ljavax/swing/JButton;)V
    //#input(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): com/dmdirc/addons/nickcolours/NickColourInputDialog.__Dispatch_Table.setCancelButton(Ljavax/swing/JButton;)V
    //#input(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): com/dmdirc/addons/nickcolours/NickColourInputDialog.__Dispatch_Table.setOkButton(Ljavax/swing/JButton;)V
    //#input(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): com/dmdirc/addons/ui_swing/components/ColourPickerDialog.__Dispatch_Table.setCancelButton(Ljavax/swing/JButton;)V
    //#input(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): com/dmdirc/addons/ui_swing/components/ColourPickerDialog.__Dispatch_Table.setOkButton(Ljavax/swing/JButton;)V
    //#input(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): com/dmdirc/addons/ui_swing/components/MenuBar$1.__Dispatch_Table.setCancelButton(Ljavax/swing/JButton;)V
    //#input(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): com/dmdirc/addons/ui_swing/components/MenuBar$1.__Dispatch_Table.setOkButton(Ljavax/swing/JButton;)V
    //#input(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): com/dmdirc/addons/ui_swing/components/StandardDialog.__Descendant_Table[com/dmdirc/addons/nickcolours/NickColourInputDialog]
    //#input(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): com/dmdirc/addons/ui_swing/components/StandardDialog.__Descendant_Table[com/dmdirc/addons/ui_swing/components/ColourPickerDialog]
    //#input(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): com/dmdirc/addons/ui_swing/components/StandardDialog.__Descendant_Table[com/dmdirc/addons/ui_swing/components/MenuBar$1]
    //#input(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): com/dmdirc/addons/ui_swing/components/StandardDialog.__Descendant_Table[com/dmdirc/addons/ui_swing/components/StandardDialog]
    //#input(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): com/dmdirc/addons/ui_swing/components/StandardDialog.__Descendant_Table[com/dmdirc/addons/ui_swing/components/StandardInputDialog]
    //#input(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): com/dmdirc/addons/ui_swing/components/StandardDialog.__Descendant_Table[com/dmdirc/addons/ui_swing/components/durationeditor/DurationEditor]
    //#input(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): com/dmdirc/addons/ui_swing/components/StandardDialog.__Descendant_Table[others]
    //#input(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): com/dmdirc/addons/ui_swing/components/StandardDialog.__Dispatch_Table.setCancelButton(Ljavax/swing/JButton;)V
    //#input(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): com/dmdirc/addons/ui_swing/components/StandardDialog.__Dispatch_Table.setOkButton(Ljavax/swing/JButton;)V
    //#input(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): com/dmdirc/addons/ui_swing/components/durationeditor/DurationEditor.__Dispatch_Table.setCancelButton(Ljavax/swing/JButton;)V
    //#input(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): com/dmdirc/addons/ui_swing/components/durationeditor/DurationEditor.__Dispatch_Table.setOkButton(Ljavax/swing/JButton;)V
    //#input(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): message
    //#input(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): modal
    //#input(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): owner
    //#input(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): this
    //#input(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): this.__Tag
    //#input(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): title
    //#input(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): validator
    //#output(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): new JButton(initComponents#1) num objects
    //#output(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): new JButton(initComponents#2) num objects
    //#output(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): new TextLabel(initComponents#4) num objects
    //#output(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): new ValidatingJTextField(initComponents#3) num objects
    //#output(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): this.__Tag
    //#output(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): this.blurb
    //#output(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): this.cancelButton
    //#output(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): this.message
    //#output(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): this.okButton
    //#output(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): this.textField
    //#output(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): this.validator
    //#new obj(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): new JButton(initComponents#1)
    //#new obj(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): new JButton(initComponents#2)
    //#new obj(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): new TextLabel(initComponents#4)
    //#new obj(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): new ValidatingJTextField(initComponents#3)
    //#pre[3] (void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): this.__Tag in {com/dmdirc/addons/nickcolours/NickColourInputDialog, com/dmdirc/addons/ui_swing/components/ColourPickerDialog, com/dmdirc/addons/ui_swing/components/MenuBar$1, com/dmdirc/addons/ui_swing/components/StandardDialog, com/dmdirc/addons/ui_swing/components/StandardInputDialog, com/dmdirc/addons/ui_swing/components/durationeditor/DurationEditor}
    //#pre[7] (void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): validator != null
    //#post(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): this.__Tag == old this.__Tag
    //#post(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): this.__Tag in {com/dmdirc/addons/nickcolours/NickColourInputDialog, com/dmdirc/addons/ui_swing/components/ColourPickerDialog, com/dmdirc/addons/ui_swing/components/MenuBar$1, com/dmdirc/addons/ui_swing/components/StandardDialog, com/dmdirc/addons/ui_swing/components/StandardInputDialog, com/dmdirc/addons/ui_swing/components/durationeditor/DurationEditor}
    //#post(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): this.blurb == &new TextLabel(initComponents#4)
    //#post(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): this.cancelButton == One-of{&new JButton(initComponents#2), &new JButton(initComponents#1)}
    //#post(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): this.cancelButton in Addr_Set{&new JButton(initComponents#1),&new JButton(initComponents#2)}
    //#post(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): this.message == message
    //#post(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): init'ed(this.message)
    //#post(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): this.okButton == One-of{&new JButton(initComponents#1), &new JButton(initComponents#2)}
    //#post(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): this.okButton in Addr_Set{&new JButton(initComponents#1),&new JButton(initComponents#2)}
    //#post(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): this.textField == &new ValidatingJTextField(initComponents#3)
    //#post(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): this.validator == validator
    //#post(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): this.validator != null
    //#post(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): new JButton(initComponents#1) num objects == 1
    //#post(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): new JButton(initComponents#2) num objects == 1
    //#post(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): new TextLabel(initComponents#4) num objects == 1
    //#post(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): new ValidatingJTextField(initComponents#3) num objects == 1
    //#unanalyzed(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): Effects-of-calling:com.dmdirc.addons.ui_swing.components.validating.ValidatingJTextField:getText
    //#unanalyzed(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): Effects-of-calling:getOkButton
    //#unanalyzed(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): Effects-of-calling:com.dmdirc.config.prefs.validator.Validator:validate
    //#unanalyzed(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): Effects-of-calling:com.dmdirc.config.prefs.validator.ValidationResponse:isFailure
    //#unanalyzed(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): Effects-of-calling:javax.swing.JButton:setEnabled
    //#unanalyzed(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): Effects-of-calling:javax.swing.JButton
    //#unanalyzed(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): Effects-of-calling:orderButtons
    //#unanalyzed(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): Effects-of-calling:com.dmdirc.addons.ui_swing.components.validating.ValidatingJTextField
    //#unanalyzed(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): Effects-of-calling:com.dmdirc.addons.ui_swing.components.text.TextLabel
    //#unanalyzed(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): Effects-of-calling:javax.swing.JButton:addActionListener
    //#unanalyzed(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): Effects-of-calling:getCancelButton
    //#unanalyzed(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): Effects-of-calling:java.awt.event.WindowAdapter
    //#unanalyzed(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): Effects-of-calling:com.dmdirc.addons.ui_swing.components.StandardInputDialog:addWindowListener
    //#unanalyzed(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): Effects-of-calling:com.dmdirc.addons.ui_swing.components.validating.ValidatingJTextField:getDocument
    //#unanalyzed(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): Effects-of-calling:javax.swing.text.Document:addDocumentListener
    //#unanalyzed(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): Effects-of-calling:javax.swing.KeyStroke:getKeyStroke
    //#unanalyzed(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): Effects-of-calling:com.dmdirc.addons.ui_swing.components.StandardInputDialog:getRootPane
    //#unanalyzed(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): Effects-of-calling:javax.swing.JRootPane:registerKeyboardAction
    //#unanalyzed(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): Effects-of-calling:net.miginfocom.swing.MigLayout
    //#unanalyzed(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): Effects-of-calling:com.dmdirc.addons.ui_swing.components.StandardInputDialog:setLayout
    //#unanalyzed(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): Effects-of-calling:com.dmdirc.addons.ui_swing.components.StandardInputDialog:add
    //#unanalyzed(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): Effects-of-calling:getLeftButton
    //#unanalyzed(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): Effects-of-calling:getRightButton
    //#unanalyzed(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): Effects-of-calling:javax.swing.JButton:setText
    //#unanalyzed(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): Effects-of-calling:javax.swing.JButton:setDefaultCapable
    //#unanalyzed(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): Effects-of-calling:java.lang.System:getProperty
    //#unanalyzed(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): Effects-of-calling:java.lang.String:toLowerCase
    //#unanalyzed(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): Effects-of-calling:java.lang.String:startsWith
    //#unanalyzed(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): Effects-of-calling:java.awt.Dimension
    //#unanalyzed(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): Effects-of-calling:javax.swing.JButton:setPreferredSize
    //#unanalyzed(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): Effects-of-calling:javax.swing.JButton:setMinimumSize
    //#unanalyzed(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): Effects-of-calling:com.dmdirc.addons.ui_swing.components.StandardDialog:setIconImages
    //#unanalyzed(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): Effects-of-calling:javax.swing.JDialog
    //#unanalyzed(void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)): Effects-of-calling:java.awt.Window:getIconImages

        this.validator = validator;
        this.message = message;

        setTitle(title);
    //#StandardInputDialog.java:99: Warning: method not available - call not analyzed
    //#    call on void com.dmdirc.addons.ui_swing.components.StandardInputDialog:setTitle(String)
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.components.StandardInputDialog
    //#    method: void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)
    //#    unanalyzed callee: void com.dmdirc.addons.ui_swing.components.StandardInputDialog:setTitle(String)
        setDefaultCloseOperation(StandardInputDialog.DISPOSE_ON_CLOSE);
    //#StandardInputDialog.java:100: Warning: method not available - call not analyzed
    //#    call on void com.dmdirc.addons.ui_swing.components.StandardInputDialog:setDefaultCloseOperation(int)
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.components.StandardInputDialog
    //#    method: void com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)
    //#    unanalyzed callee: void com.dmdirc.addons.ui_swing.components.StandardInputDialog:setDefaultCloseOperation(int)

        initComponents();
        addListeners();
        layoutComponents();
    }
    //#StandardInputDialog.java:105: end of method: void com.dmdirc.addons.ui_swing.components.StandardInputDialog.com.dmdirc.addons.ui_swing.components.StandardInputDialog(Window, Dialog$ModalityType, String, String, Validator)

    /**
     * Called when the dialog's OK button is clicked.
     * 
     * @return whether the dialog can close
     */
    public abstract boolean save();

    /**
     * Called when the dialog's cancel button is clicked, or otherwise closed.
     */
    public abstract void cancelled();

    /**
     * Initialises the components.
     */
    private final void initComponents() {
        orderButtons(new JButton(), new JButton());
    //#StandardInputDialog.java:123: method: void com.dmdirc.addons.ui_swing.components.StandardInputDialog.initComponents()
    //#StandardInputDialog.java:123: Warning: suspicious precondition
    //#    The precondition for this.__Tag is not a contiguous range of values
    //#    severity: SUPPRESSED
    //#    class: com.dmdirc.addons.ui_swing.components.StandardInputDialog
    //#    method: void initComponents()
    //#    suspicious precondition index: [2]
    //#input(void initComponents()): __Dispatch_Table.setCancelButton(Ljavax/swing/JButton;)V
    //#input(void initComponents()): __Dispatch_Table.setOkButton(Ljavax/swing/JButton;)V
    //#input(void initComponents()): com/dmdirc/addons/nickcolours/NickColourInputDialog.__Dispatch_Table.setCancelButton(Ljavax/swing/JButton;)V
    //#input(void initComponents()): com/dmdirc/addons/nickcolours/NickColourInputDialog.__Dispatch_Table.setOkButton(Ljavax/swing/JButton;)V
    //#input(void initComponents()): com/dmdirc/addons/ui_swing/components/ColourPickerDialog.__Dispatch_Table.setCancelButton(Ljavax/swing/JButton;)V
    //#input(void initComponents()): com/dmdirc/addons/ui_swing/components/ColourPickerDialog.__Dispatch_Table.setOkButton(Ljavax/swing/JButton;)V
    //#input(void initComponents()): com/dmdirc/addons/ui_swing/components/MenuBar$1.__Dispatch_Table.setCancelButton(Ljavax/swing/JButton;)V
    //#input(void initComponents()): com/dmdirc/addons/ui_swing/components/MenuBar$1.__Dispatch_Table.setOkButton(Ljavax/swing/JButton;)V
    //#input(void initComponents()): com/dmdirc/addons/ui_swing/components/StandardDialog.__Descendant_Table[com/dmdirc/addons/nickcolours/NickColourInputDialog]
    //#input(void initComponents()): com/dmdirc/addons/ui_swing/components/StandardDialog.__Descendant_Table[com/dmdirc/addons/ui_swing/components/ColourPickerDialog]
    //#input(void initComponents()): com/dmdirc/addons/ui_swing/components/StandardDialog.__Descendant_Table[com/dmdirc/addons/ui_swing/components/MenuBar$1]
    //#input(void initComponents()): com/dmdirc/addons/ui_swing/components/StandardDialog.__Descendant_Table[com/dmdirc/addons/ui_swing/components/StandardDialog]
    //#input(void initComponents()): com/dmdirc/addons/ui_swing/components/StandardDialog.__Descendant_Table[com/dmdirc/addons/ui_swing/components/StandardInputDialog]
    //#input(void initComponents()): com/dmdirc/addons/ui_swing/components/StandardDialog.__Descendant_Table[com/dmdirc/addons/ui_swing/components/durationeditor/DurationEditor]
    //#input(void initComponents()): com/dmdirc/addons/ui_swing/components/StandardDialog.__Descendant_Table[others]
    //#input(void initComponents()): com/dmdirc/addons/ui_swing/components/StandardDialog.__Dispatch_Table.setCancelButton(Ljavax/swing/JButton;)V
    //#input(void initComponents()): com/dmdirc/addons/ui_swing/components/StandardDialog.__Dispatch_Table.setOkButton(Ljavax/swing/JButton;)V
    //#input(void initComponents()): com/dmdirc/addons/ui_swing/components/durationeditor/DurationEditor.__Dispatch_Table.setCancelButton(Ljavax/swing/JButton;)V
    //#input(void initComponents()): com/dmdirc/addons/ui_swing/components/durationeditor/DurationEditor.__Dispatch_Table.setOkButton(Ljavax/swing/JButton;)V
    //#input(void initComponents()): this
    //#input(void initComponents()): this.__Tag
    //#input(void initComponents()): this.message
    //#input(void initComponents()): this.validator
    //#output(void initComponents()): new JButton(initComponents#1) num objects
    //#output(void initComponents()): new JButton(initComponents#2) num objects
    //#output(void initComponents()): new TextLabel(initComponents#4) num objects
    //#output(void initComponents()): new ValidatingJTextField(initComponents#3) num objects
    //#output(void initComponents()): this.blurb
    //#output(void initComponents()): this.cancelButton
    //#output(void initComponents()): this.okButton
    //#output(void initComponents()): this.textField
    //#new obj(void initComponents()): new JButton(initComponents#1)
    //#new obj(void initComponents()): new JButton(initComponents#2)
    //#new obj(void initComponents()): new TextLabel(initComponents#4)
    //#new obj(void initComponents()): new ValidatingJTextField(initComponents#3)
    //#pre[2] (void initComponents()): this.__Tag in {com/dmdirc/addons/nickcolours/NickColourInputDialog, com/dmdirc/addons/ui_swing/components/ColourPickerDialog, com/dmdirc/addons/ui_swing/components/MenuBar$1, com/dmdirc/addons/ui_swing/components/StandardDialog, com/dmdirc/addons/ui_swing/components/StandardInputDialog, com/dmdirc/addons/ui_swing/components/durationeditor/DurationEditor}
    //#pre[3] (void initComponents()): init'ed(this.message)
    //#pre[4] (void initComponents()): this.validator != null
    //#post(void initComponents()): this.blurb == &new TextLabel(initComponents#4)
    //#post(void initComponents()): this.cancelButton == One-of{&new JButton(initComponents#2), &new JButton(initComponents#1)}
    //#post(void initComponents()): this.cancelButton in Addr_Set{&new JButton(initComponents#1),&new JButton(initComponents#2)}
    //#post(void initComponents()): this.okButton == One-of{&new JButton(initComponents#1), &new JButton(initComponents#2)}
    //#post(void initComponents()): this.okButton in Addr_Set{&new JButton(initComponents#1),&new JButton(initComponents#2)}
    //#post(void initComponents()): this.textField == &new ValidatingJTextField(initComponents#3)
    //#post(void initComponents()): new JButton(initComponents#1) num objects == 1
    //#post(void initComponents()): new JButton(initComponents#2) num objects == 1
    //#post(void initComponents()): new TextLabel(initComponents#4) num objects == 1
    //#post(void initComponents()): new ValidatingJTextField(initComponents#3) num objects == 1
    //#unanalyzed(void initComponents()): Effects-of-calling:com.dmdirc.addons.ui_swing.components.validating.ValidatingJTextField:getText
    //#unanalyzed(void initComponents()): Effects-of-calling:getOkButton
    //#unanalyzed(void initComponents()): Effects-of-calling:com.dmdirc.config.prefs.validator.Validator:validate
    //#unanalyzed(void initComponents()): Effects-of-calling:com.dmdirc.config.prefs.validator.ValidationResponse:isFailure
    //#unanalyzed(void initComponents()): Effects-of-calling:javax.swing.JButton:setEnabled
    //#unanalyzed(void initComponents()): Effects-of-calling:javax.swing.JButton:setText
    //#unanalyzed(void initComponents()): Effects-of-calling:javax.swing.JButton:setDefaultCapable
    //#unanalyzed(void initComponents()): Effects-of-calling:java.lang.System:getProperty
    //#unanalyzed(void initComponents()): Effects-of-calling:java.lang.String:toLowerCase
    //#unanalyzed(void initComponents()): Effects-of-calling:java.lang.String:startsWith
    //#unanalyzed(void initComponents()): Effects-of-calling:java.awt.Dimension
    //#unanalyzed(void initComponents()): Effects-of-calling:javax.swing.JButton:setPreferredSize
    //#unanalyzed(void initComponents()): Effects-of-calling:javax.swing.JButton:setMinimumSize
        textField = new ValidatingJTextField(validator);
    //#StandardInputDialog.java:124: Warning: method not available - call not analyzed
    //#    call on void com.dmdirc.addons.ui_swing.components.validating.ValidatingJTextField(Validator)
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.components.StandardInputDialog
    //#    method: void initComponents()
    //#    unanalyzed callee: void com.dmdirc.addons.ui_swing.components.validating.ValidatingJTextField(Validator)
        blurb = new TextLabel(message);
    //#StandardInputDialog.java:125: Warning: method not available - call not analyzed
    //#    call on void com.dmdirc.addons.ui_swing.components.text.TextLabel(String)
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.components.StandardInputDialog
    //#    method: void initComponents()
    //#    unanalyzed callee: void com.dmdirc.addons.ui_swing.components.text.TextLabel(String)
        validateText();
    }
    //#StandardInputDialog.java:127: end of method: void com.dmdirc.addons.ui_swing.components.StandardInputDialog.initComponents()

    /**
     * Adds the listeners
     */
    private final void addListeners() {
        getOkButton().addActionListener(new ActionListener() {
    //#StandardInputDialog.java:133: method: void com.dmdirc.addons.ui_swing.components.StandardInputDialog$2.com.dmdirc.addons.ui_swing.components.StandardInputDialog$2(StandardInputDialog)
    //#input(void com.dmdirc.addons.ui_swing.components.StandardInputDialog$2(StandardInputDialog)): Param_1
    //#input(void com.dmdirc.addons.ui_swing.components.StandardInputDialog$2(StandardInputDialog)): this
    //#output(void com.dmdirc.addons.ui_swing.components.StandardInputDialog$2(StandardInputDialog)): this.this$0
    //#post(void com.dmdirc.addons.ui_swing.components.StandardInputDialog$2(StandardInputDialog)): this.this$0 == Param_1
    //#post(void com.dmdirc.addons.ui_swing.components.StandardInputDialog$2(StandardInputDialog)): init'ed(this.this$0)
    //#StandardInputDialog.java:133: end of method: void com.dmdirc.addons.ui_swing.components.StandardInputDialog$2.com.dmdirc.addons.ui_swing.components.StandardInputDialog$2(StandardInputDialog)
    //#StandardInputDialog.java:133: method: void com.dmdirc.addons.ui_swing.components.StandardInputDialog.addListeners()
    //#input(void addListeners()): this
    //#input(void addListeners()): this.cancelButton
    //#input(void addListeners()): this.okButton
    //#input(void addListeners()): this.textField
    //#pre[2] (void addListeners()): this.cancelButton != null
    //#pre[3] (void addListeners()): this.okButton != null
    //#pre[4] (void addListeners()): this.textField != null
    //#presumption(void addListeners()): com.dmdirc.addons.ui_swing.components.StandardInputDialog:getRootPane(...)@197 != null
    //#presumption(void addListeners()): com.dmdirc.addons.ui_swing.components.validating.ValidatingJTextField:getDocument(...)@167 != null
    //#unanalyzed(void addListeners()): Effects-of-calling:java.awt.event.WindowAdapter

            /** {@inheritDoc} */
            @Override
            public void actionPerformed(ActionEvent e) {
                if (save()) {
    //#StandardInputDialog.java:138: method: void com.dmdirc.addons.ui_swing.components.StandardInputDialog$2.actionPerformed(ActionEvent)
    //#StandardInputDialog.java:138: Warning: test always goes same way
    //#    Test predetermined because save(...) == 1
    //#    severity: LOW
    //#    class: com.dmdirc.addons.ui_swing.components.StandardInputDialog$2
    //#    method: void actionPerformed(ActionEvent)
    //#    from bb: Entry_BB_1
    //#    live edge: Entry_BB_1-->bb_2
    //#    tested vn: 1
    //#    tested vn values: {1}
    //#StandardInputDialog.java:138: Warning: suspicious precondition
    //#    The precondition for this.this$0.__Tag is not a contiguous range of values
    //#    severity: SUPPRESSED
    //#    class: com.dmdirc.addons.ui_swing.components.StandardInputDialog$2
    //#    method: void actionPerformed(ActionEvent)
    //#    suspicious precondition index: [3]
    //#input(void actionPerformed(ActionEvent)): com/dmdirc/addons/ui_swing/UIUtilities.com.dmdirc.logger.ErrorLevel.HIGH
    //#input(void actionPerformed(ActionEvent)): com/dmdirc/addons/ui_swing/components/MenuBar$1.__Dispatch_Table.save()Z
    //#input(void actionPerformed(ActionEvent)): com/dmdirc/addons/ui_swing/components/StandardInputDialog.__Descendant_Table[com/dmdirc/addons/ui_swing/components/MenuBar$1]
    //#input(void actionPerformed(ActionEvent)): com/dmdirc/addons/ui_swing/components/StandardInputDialog.__Descendant_Table[com/dmdirc/addons/ui_swing/components/StandardInputDialog]
    //#input(void actionPerformed(ActionEvent)): com/dmdirc/addons/ui_swing/components/StandardInputDialog.__Descendant_Table[others]
    //#input(void actionPerformed(ActionEvent)): com/dmdirc/addons/ui_swing/components/StandardInputDialog.__Dispatch_Table.save()Z
    //#input(void actionPerformed(ActionEvent)): this
    //#input(void actionPerformed(ActionEvent)): this.this$0
    //#input(void actionPerformed(ActionEvent)): this.this$0.__Tag
    //#input(void actionPerformed(ActionEvent)): this.this$0.textField
    //#input(void actionPerformed(ActionEvent)): this.this$0.this$0
    //#input(void actionPerformed(ActionEvent)): this.this$0.this$0.controller
    //#input(void actionPerformed(ActionEvent)): this.this$0.this$0.controller.mainFrameCreated
    //#input(void actionPerformed(ActionEvent)): this.this$0.this$0.controller.me
    //#pre[2] (void actionPerformed(ActionEvent)): this.this$0 != null
    //#pre[3] (void actionPerformed(ActionEvent)): this.__Tag in {com/dmdirc/addons/ui_swing/components/MenuBar$1, com/dmdirc/addons/ui_swing/components/StandardInputDialog}
    //#pre[4] (void actionPerformed(ActionEvent)): this.textField != null
    //#pre[5] (void actionPerformed(ActionEvent)): this.this$0 != null
    //#pre[6] (void actionPerformed(ActionEvent)): this.controller != null
    //#pre[7] (void actionPerformed(ActionEvent)): this.controller.mainFrameCreated != null
    //#pre[8] (void actionPerformed(ActionEvent)): (soft) this.controller.me != null
    //#unanalyzed(void actionPerformed(ActionEvent)): Effects-of-calling:java.util.concurrent.atomic.AtomicBoolean:get
    //#unanalyzed(void actionPerformed(ActionEvent)): Effects-of-calling:getActiveFrame
    //#unanalyzed(void actionPerformed(ActionEvent)): Effects-of-calling:com.dmdirc.ui.interfaces.Window:getContainer
    //#unanalyzed(void actionPerformed(ActionEvent)): Effects-of-calling:com.dmdirc.FrameContainer:getServer
    //#unanalyzed(void actionPerformed(ActionEvent)): Effects-of-calling:getText
    //#unanalyzed(void actionPerformed(ActionEvent)): Effects-of-calling:com.dmdirc.Server:join
    //#unanalyzed(void actionPerformed(ActionEvent)): Effects-of-calling:com.dmdirc.addons.ui_swing.components.validating.ValidatingJTextField:getText
    //#unanalyzed(void actionPerformed(ActionEvent)): Effects-of-calling:java.lang.Throwable:__curr_excep_obj
    //#unanalyzed(void actionPerformed(ActionEvent)): Effects-of-calling:javax.swing.SwingUtilities:isEventDispatchThread
    //#unanalyzed(void actionPerformed(ActionEvent)): Effects-of-calling:javax.swing.SwingUtilities:invokeAndWait
    //#unanalyzed(void actionPerformed(ActionEvent)): Effects-of-calling:com.dmdirc.logger.Logger:appError
    //#unanalyzed(void actionPerformed(ActionEvent)): Effects-of-calling:com.dmdirc.util.ReturnableThread:run
    //#unanalyzed(void actionPerformed(ActionEvent)): Effects-of-calling:com.dmdirc.util.ReturnableThread:getObject
    //#unanalyzed(void actionPerformed(ActionEvent)): Effects-of-calling:com.dmdirc.util.ReturnableThread
                    dispose();
    //#StandardInputDialog.java:139: Warning: method not available - call not analyzed
    //#    call on void com.dmdirc.addons.ui_swing.components.StandardInputDialog:dispose()
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.components.StandardInputDialog$2
    //#    method: void actionPerformed(ActionEvent)
    //#    unanalyzed callee: void com.dmdirc.addons.ui_swing.components.StandardInputDialog:dispose()
                }
            }
    //#StandardInputDialog.java:141: end of method: void com.dmdirc.addons.ui_swing.components.StandardInputDialog$2.actionPerformed(ActionEvent)
        });
        getCancelButton().addActionListener(new ActionListener() {
    //#StandardInputDialog.java:143: method: void com.dmdirc.addons.ui_swing.components.StandardInputDialog$3.com.dmdirc.addons.ui_swing.components.StandardInputDialog$3(StandardInputDialog)
    //#input(void com.dmdirc.addons.ui_swing.components.StandardInputDialog$3(StandardInputDialog)): Param_1
    //#input(void com.dmdirc.addons.ui_swing.components.StandardInputDialog$3(StandardInputDialog)): this
    //#output(void com.dmdirc.addons.ui_swing.components.StandardInputDialog$3(StandardInputDialog)): this.this$0
    //#post(void com.dmdirc.addons.ui_swing.components.StandardInputDialog$3(StandardInputDialog)): this.this$0 == Param_1
    //#post(void com.dmdirc.addons.ui_swing.components.StandardInputDialog$3(StandardInputDialog)): init'ed(this.this$0)
    //#StandardInputDialog.java:143: end of method: void com.dmdirc.addons.ui_swing.components.StandardInputDialog$3.com.dmdirc.addons.ui_swing.components.StandardInputDialog$3(StandardInputDialog)

            /** {@inheritDoc} */
            @Override
            public void actionPerformed(ActionEvent e) {
                cancelled();
    //#StandardInputDialog.java:148: method: void com.dmdirc.addons.ui_swing.components.StandardInputDialog$3.actionPerformed(ActionEvent)
    //#StandardInputDialog.java:148: Warning: suspicious precondition
    //#    The precondition for this.this$0.__Tag is not a contiguous range of values
    //#    severity: SUPPRESSED
    //#    class: com.dmdirc.addons.ui_swing.components.StandardInputDialog$3
    //#    method: void actionPerformed(ActionEvent)
    //#    suspicious precondition index: [3]
    //#input(void actionPerformed(ActionEvent)): com/dmdirc/addons/ui_swing/components/MenuBar$1.__Dispatch_Table.cancelled()V
    //#input(void actionPerformed(ActionEvent)): com/dmdirc/addons/ui_swing/components/StandardInputDialog.__Descendant_Table[com/dmdirc/addons/ui_swing/components/MenuBar$1]
    //#input(void actionPerformed(ActionEvent)): com/dmdirc/addons/ui_swing/components/StandardInputDialog.__Descendant_Table[com/dmdirc/addons/ui_swing/components/StandardInputDialog]
    //#input(void actionPerformed(ActionEvent)): com/dmdirc/addons/ui_swing/components/StandardInputDialog.__Descendant_Table[others]
    //#input(void actionPerformed(ActionEvent)): com/dmdirc/addons/ui_swing/components/StandardInputDialog.__Dispatch_Table.cancelled()V
    //#input(void actionPerformed(ActionEvent)): this
    //#input(void actionPerformed(ActionEvent)): this.this$0
    //#input(void actionPerformed(ActionEvent)): this.this$0.__Tag
    //#pre[2] (void actionPerformed(ActionEvent)): this.this$0 != null
    //#pre[3] (void actionPerformed(ActionEvent)): this.__Tag in {com/dmdirc/addons/ui_swing/components/MenuBar$1, com/dmdirc/addons/ui_swing/components/StandardInputDialog}
                dispose();
    //#StandardInputDialog.java:149: Warning: method not available - call not analyzed
    //#    call on void com.dmdirc.addons.ui_swing.components.StandardInputDialog:dispose()
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.components.StandardInputDialog$3
    //#    method: void actionPerformed(ActionEvent)
    //#    unanalyzed callee: void com.dmdirc.addons.ui_swing.components.StandardInputDialog:dispose()
            }
    //#StandardInputDialog.java:150: end of method: void com.dmdirc.addons.ui_swing.components.StandardInputDialog$3.actionPerformed(ActionEvent)
        });
        addWindowListener(new WindowAdapter() {
    //#StandardInputDialog.java:152: method: void com.dmdirc.addons.ui_swing.components.StandardInputDialog$4.com.dmdirc.addons.ui_swing.components.StandardInputDialog$4(StandardInputDialog)
    //#input(void com.dmdirc.addons.ui_swing.components.StandardInputDialog$4(StandardInputDialog)): Param_1
    //#input(void com.dmdirc.addons.ui_swing.components.StandardInputDialog$4(StandardInputDialog)): this
    //#output(void com.dmdirc.addons.ui_swing.components.StandardInputDialog$4(StandardInputDialog)): this.this$0
    //#post(void com.dmdirc.addons.ui_swing.components.StandardInputDialog$4(StandardInputDialog)): this.this$0 == Param_1
    //#post(void com.dmdirc.addons.ui_swing.components.StandardInputDialog$4(StandardInputDialog)): init'ed(this.this$0)
    //#StandardInputDialog.java:152: end of method: void com.dmdirc.addons.ui_swing.components.StandardInputDialog$4.com.dmdirc.addons.ui_swing.components.StandardInputDialog$4(StandardInputDialog)
    //#StandardInputDialog.java:152: Warning: method not available - call not analyzed
    //#    call on void com.dmdirc.addons.ui_swing.components.StandardInputDialog:addWindowListener(WindowListener)
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.components.StandardInputDialog
    //#    method: void addListeners()
    //#    unanalyzed callee: void com.dmdirc.addons.ui_swing.components.StandardInputDialog:addWindowListener(WindowListener)

            /** {@inheritDoc} */
            @Override
            public void windowOpened(WindowEvent e) {
                textField.requestFocusInWindow();
    //#StandardInputDialog.java:157: method: void com.dmdirc.addons.ui_swing.components.StandardInputDialog$4.windowOpened(WindowEvent)
    //#StandardInputDialog.java:157: Warning: method not available - call not analyzed
    //#    call on bool com.dmdirc.addons.ui_swing.components.validating.ValidatingJTextField:requestFocusInWindow()
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.components.StandardInputDialog$4
    //#    method: void windowOpened(WindowEvent)
    //#    unanalyzed callee: bool com.dmdirc.addons.ui_swing.components.validating.ValidatingJTextField:requestFocusInWindow()
    //#input(void windowOpened(WindowEvent)): this
    //#input(void windowOpened(WindowEvent)): this.this$0
    //#input(void windowOpened(WindowEvent)): this.this$0.textField
    //#pre[2] (void windowOpened(WindowEvent)): this.this$0 != null
    //#pre[3] (void windowOpened(WindowEvent)): this.textField != null
            }
    //#StandardInputDialog.java:158: end of method: void com.dmdirc.addons.ui_swing.components.StandardInputDialog$4.windowOpened(WindowEvent)

            /** {@inheritDoc} */
            @Override
            public void windowClosed(WindowEvent e) {
                cancelled();
    //#StandardInputDialog.java:163: method: void com.dmdirc.addons.ui_swing.components.StandardInputDialog$4.windowClosed(WindowEvent)
    //#StandardInputDialog.java:163: Warning: suspicious precondition
    //#    The precondition for this.this$0.__Tag is not a contiguous range of values
    //#    severity: SUPPRESSED
    //#    class: com.dmdirc.addons.ui_swing.components.StandardInputDialog$4
    //#    method: void windowClosed(WindowEvent)
    //#    suspicious precondition index: [3]
    //#input(void windowClosed(WindowEvent)): com/dmdirc/addons/ui_swing/components/MenuBar$1.__Dispatch_Table.cancelled()V
    //#input(void windowClosed(WindowEvent)): com/dmdirc/addons/ui_swing/components/StandardInputDialog.__Descendant_Table[com/dmdirc/addons/ui_swing/components/MenuBar$1]
    //#input(void windowClosed(WindowEvent)): com/dmdirc/addons/ui_swing/components/StandardInputDialog.__Descendant_Table[com/dmdirc/addons/ui_swing/components/StandardInputDialog]
    //#input(void windowClosed(WindowEvent)): com/dmdirc/addons/ui_swing/components/StandardInputDialog.__Descendant_Table[others]
    //#input(void windowClosed(WindowEvent)): com/dmdirc/addons/ui_swing/components/StandardInputDialog.__Dispatch_Table.cancelled()V
    //#input(void windowClosed(WindowEvent)): this
    //#input(void windowClosed(WindowEvent)): this.this$0
    //#input(void windowClosed(WindowEvent)): this.this$0.__Tag
    //#pre[2] (void windowClosed(WindowEvent)): this.this$0 != null
    //#pre[3] (void windowClosed(WindowEvent)): this.__Tag in {com/dmdirc/addons/ui_swing/components/MenuBar$1, com/dmdirc/addons/ui_swing/components/StandardInputDialog}
            //dispose();
            }
    //#StandardInputDialog.java:165: end of method: void com.dmdirc.addons.ui_swing.components.StandardInputDialog$4.windowClosed(WindowEvent)
        });
        textField.getDocument().addDocumentListener(new DocumentListener() {
    //#StandardInputDialog.java:167: method: void com.dmdirc.addons.ui_swing.components.StandardInputDialog$5.com.dmdirc.addons.ui_swing.components.StandardInputDialog$5(StandardInputDialog)
    //#input(void com.dmdirc.addons.ui_swing.components.StandardInputDialog$5(StandardInputDialog)): Param_1
    //#input(void com.dmdirc.addons.ui_swing.components.StandardInputDialog$5(StandardInputDialog)): this
    //#output(void com.dmdirc.addons.ui_swing.components.StandardInputDialog$5(StandardInputDialog)): this.this$0
    //#post(void com.dmdirc.addons.ui_swing.components.StandardInputDialog$5(StandardInputDialog)): this.this$0 == Param_1
    //#post(void com.dmdirc.addons.ui_swing.components.StandardInputDialog$5(StandardInputDialog)): init'ed(this.this$0)
    //#StandardInputDialog.java:167: end of method: void com.dmdirc.addons.ui_swing.components.StandardInputDialog$5.com.dmdirc.addons.ui_swing.components.StandardInputDialog$5(StandardInputDialog)
    //#StandardInputDialog.java:167: Warning: method not available - call not analyzed
    //#    call on Document com.dmdirc.addons.ui_swing.components.validating.ValidatingJTextField:getDocument()
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.components.StandardInputDialog
    //#    method: void addListeners()
    //#    unanalyzed callee: Document com.dmdirc.addons.ui_swing.components.validating.ValidatingJTextField:getDocument()

            /** {@inheritDoc} */
            @Override
            public void insertUpdate(DocumentEvent e) {
                validateText();
    //#StandardInputDialog.java:172: method: void com.dmdirc.addons.ui_swing.components.StandardInputDialog$5.insertUpdate(DocumentEvent)
    //#input(void insertUpdate(DocumentEvent)): this
    //#input(void insertUpdate(DocumentEvent)): this.this$0
    //#input(void insertUpdate(DocumentEvent)): this.this$0.okButton
    //#input(void insertUpdate(DocumentEvent)): this.this$0.textField
    //#input(void insertUpdate(DocumentEvent)): this.this$0.validator
    //#pre[2] (void insertUpdate(DocumentEvent)): this.this$0 != null
    //#pre[3] (void insertUpdate(DocumentEvent)): this.okButton != null
    //#pre[4] (void insertUpdate(DocumentEvent)): this.textField != null
    //#pre[5] (void insertUpdate(DocumentEvent)): this.validator != null
    //#unanalyzed(void insertUpdate(DocumentEvent)): Effects-of-calling:com.dmdirc.addons.ui_swing.components.validating.ValidatingJTextField:getText
    //#unanalyzed(void insertUpdate(DocumentEvent)): Effects-of-calling:getOkButton
    //#unanalyzed(void insertUpdate(DocumentEvent)): Effects-of-calling:com.dmdirc.config.prefs.validator.Validator:validate
    //#unanalyzed(void insertUpdate(DocumentEvent)): Effects-of-calling:com.dmdirc.config.prefs.validator.ValidationResponse:isFailure
    //#unanalyzed(void insertUpdate(DocumentEvent)): Effects-of-calling:javax.swing.JButton:setEnabled
            }
    //#StandardInputDialog.java:173: end of method: void com.dmdirc.addons.ui_swing.components.StandardInputDialog$5.insertUpdate(DocumentEvent)

            /** {@inheritDoc} */
            @Override
            public void removeUpdate(DocumentEvent e) {
                validateText();
    //#StandardInputDialog.java:178: method: void com.dmdirc.addons.ui_swing.components.StandardInputDialog$5.removeUpdate(DocumentEvent)
    //#input(void removeUpdate(DocumentEvent)): this
    //#input(void removeUpdate(DocumentEvent)): this.this$0
    //#input(void removeUpdate(DocumentEvent)): this.this$0.okButton
    //#input(void removeUpdate(DocumentEvent)): this.this$0.textField
    //#input(void removeUpdate(DocumentEvent)): this.this$0.validator
    //#pre[2] (void removeUpdate(DocumentEvent)): this.this$0 != null
    //#pre[3] (void removeUpdate(DocumentEvent)): this.okButton != null
    //#pre[4] (void removeUpdate(DocumentEvent)): this.textField != null
    //#pre[5] (void removeUpdate(DocumentEvent)): this.validator != null
    //#unanalyzed(void removeUpdate(DocumentEvent)): Effects-of-calling:com.dmdirc.addons.ui_swing.components.validating.ValidatingJTextField:getText
    //#unanalyzed(void removeUpdate(DocumentEvent)): Effects-of-calling:getOkButton
    //#unanalyzed(void removeUpdate(DocumentEvent)): Effects-of-calling:com.dmdirc.config.prefs.validator.Validator:validate
    //#unanalyzed(void removeUpdate(DocumentEvent)): Effects-of-calling:com.dmdirc.config.prefs.validator.ValidationResponse:isFailure
    //#unanalyzed(void removeUpdate(DocumentEvent)): Effects-of-calling:javax.swing.JButton:setEnabled
            }
    //#StandardInputDialog.java:179: end of method: void com.dmdirc.addons.ui_swing.components.StandardInputDialog$5.removeUpdate(DocumentEvent)

            /** {@inheritDoc} */
            @Override
            public void changedUpdate(DocumentEvent e) {
            //Ignore
            }
    //#StandardInputDialog.java:185: method: void com.dmdirc.addons.ui_swing.components.StandardInputDialog$5.changedUpdate(DocumentEvent)
    //#StandardInputDialog.java:185: end of method: void com.dmdirc.addons.ui_swing.components.StandardInputDialog$5.changedUpdate(DocumentEvent)
        });

        final ActionListener enterListener = new ActionListener() {
    //#StandardInputDialog.java:188: method: void com.dmdirc.addons.ui_swing.components.StandardInputDialog$6.com.dmdirc.addons.ui_swing.components.StandardInputDialog$6(StandardInputDialog)
    //#input(void com.dmdirc.addons.ui_swing.components.StandardInputDialog$6(StandardInputDialog)): Param_1
    //#input(void com.dmdirc.addons.ui_swing.components.StandardInputDialog$6(StandardInputDialog)): this
    //#output(void com.dmdirc.addons.ui_swing.components.StandardInputDialog$6(StandardInputDialog)): this.this$0
    //#post(void com.dmdirc.addons.ui_swing.components.StandardInputDialog$6(StandardInputDialog)): this.this$0 == Param_1
    //#post(void com.dmdirc.addons.ui_swing.components.StandardInputDialog$6(StandardInputDialog)): init'ed(this.this$0)
    //#StandardInputDialog.java:188: end of method: void com.dmdirc.addons.ui_swing.components.StandardInputDialog$6.com.dmdirc.addons.ui_swing.components.StandardInputDialog$6(StandardInputDialog)

            /** {@inheritDoc} */
            @Override
            public void actionPerformed(final ActionEvent actionEvent) {
                getOkButton().doClick();
    //#StandardInputDialog.java:193: method: void com.dmdirc.addons.ui_swing.components.StandardInputDialog$6.actionPerformed(ActionEvent)
    //#StandardInputDialog.java:193: Warning: method not available - call not analyzed
    //#    call on JButton com.dmdirc.addons.ui_swing.components.StandardInputDialog:getOkButton()
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.components.StandardInputDialog$6
    //#    method: void actionPerformed(ActionEvent)
    //#    unanalyzed callee: JButton com.dmdirc.addons.ui_swing.components.StandardInputDialog:getOkButton()
    //#input(void actionPerformed(ActionEvent)): this
    //#input(void actionPerformed(ActionEvent)): this.this$0
    //#pre[2] (void actionPerformed(ActionEvent)): this.this$0 != null
    //#presumption(void actionPerformed(ActionEvent)): com.dmdirc.addons.ui_swing.components.StandardInputDialog:getOkButton(...)@193 != null
            }
    //#StandardInputDialog.java:194: end of method: void com.dmdirc.addons.ui_swing.components.StandardInputDialog$6.actionPerformed(ActionEvent)
        };
        final KeyStroke enter = KeyStroke.getKeyStroke(KeyEvent.VK_ENTER, 0);
        getRootPane().registerKeyboardAction(enterListener, enter,
    //#StandardInputDialog.java:197: Warning: method not available - call not analyzed
    //#    call on JRootPane com.dmdirc.addons.ui_swing.components.StandardInputDialog:getRootPane()
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.components.StandardInputDialog
    //#    method: void addListeners()
    //#    unanalyzed callee: JRootPane com.dmdirc.addons.ui_swing.components.StandardInputDialog:getRootPane()
                JComponent.WHEN_IN_FOCUSED_WINDOW);
    }
    //#StandardInputDialog.java:199: end of method: void com.dmdirc.addons.ui_swing.components.StandardInputDialog.addListeners()

    /**
     * Validates the change.
     */
    private void validateText() {
        getOkButton().setEnabled(!validator.validate(getText()).isFailure());
    //#StandardInputDialog.java:205: method: void com.dmdirc.addons.ui_swing.components.StandardInputDialog.validateText()
    //#StandardInputDialog.java:205: Warning: method not available - call not analyzed
    //#    call on ValidationResponse com.dmdirc.config.prefs.validator.Validator:validate(Object)
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.components.StandardInputDialog
    //#    method: void validateText()
    //#    unanalyzed callee: ValidationResponse com.dmdirc.config.prefs.validator.Validator:validate(Object)
    //#StandardInputDialog.java:205: Warning: method not available - call not analyzed
    //#    call on bool com.dmdirc.config.prefs.validator.ValidationResponse:isFailure()
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.components.StandardInputDialog
    //#    method: void validateText()
    //#    unanalyzed callee: bool com.dmdirc.config.prefs.validator.ValidationResponse:isFailure()
    //#input(void validateText()): this
    //#input(void validateText()): this.okButton
    //#input(void validateText()): this.textField
    //#input(void validateText()): this.validator
    //#pre[2] (void validateText()): this.okButton != null
    //#pre[3] (void validateText()): this.textField != null
    //#pre[4] (void validateText()): this.validator != null
    //#presumption(void validateText()): com.dmdirc.config.prefs.validator.Validator:validate(...)@205 != null
    //#unanalyzed(void validateText()): Effects-of-calling:com.dmdirc.addons.ui_swing.components.validating.ValidatingJTextField:getText
    }
    //#StandardInputDialog.java:206: end of method: void com.dmdirc.addons.ui_swing.components.StandardInputDialog.validateText()

    /**
     * Lays out the components.
     */
    private final void layoutComponents() {
        setLayout(new MigLayout("fill, wrap 1"));
    //#StandardInputDialog.java:212: method: void com.dmdirc.addons.ui_swing.components.StandardInputDialog.layoutComponents()
    //#StandardInputDialog.java:212: Warning: method not available - call not analyzed
    //#    call on void net.miginfocom.swing.MigLayout(String)
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.components.StandardInputDialog
    //#    method: void layoutComponents()
    //#    unanalyzed callee: void net.miginfocom.swing.MigLayout(String)
    //#StandardInputDialog.java:212: Warning: method not available - call not analyzed
    //#    call on void com.dmdirc.addons.ui_swing.components.StandardInputDialog:setLayout(LayoutManager)
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.components.StandardInputDialog
    //#    method: void layoutComponents()
    //#    unanalyzed callee: void com.dmdirc.addons.ui_swing.components.StandardInputDialog:setLayout(LayoutManager)
    //#input(void layoutComponents()): this
    //#input(void layoutComponents()): this.blurb
    //#input(void layoutComponents()): this.cancelButton
    //#input(void layoutComponents()): this.okButton
    //#input(void layoutComponents()): this.textField
    //#pre[2] (void layoutComponents()): init'ed(this.blurb)
    //#pre[5] (void layoutComponents()): init'ed(this.textField)
    //#pre[3] (void layoutComponents()): (soft) init'ed(this.cancelButton)
    //#pre[4] (void layoutComponents()): (soft) init'ed(this.okButton)
    //#unanalyzed(void layoutComponents()): Effects-of-calling:java.lang.System:getProperty
    //#unanalyzed(void layoutComponents()): Effects-of-calling:java.lang.String:toLowerCase
    //#unanalyzed(void layoutComponents()): Effects-of-calling:java.lang.String:startsWith

        add(blurb, "growx");
    //#StandardInputDialog.java:214: Warning: method not available - call not analyzed
    //#    call on void com.dmdirc.addons.ui_swing.components.StandardInputDialog:add(Component, Object)
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.components.StandardInputDialog
    //#    method: void layoutComponents()
    //#    unanalyzed callee: void com.dmdirc.addons.ui_swing.components.StandardInputDialog:add(Component, Object)
        add(textField, "growx");
    //#StandardInputDialog.java:215: Warning: method not available - call not analyzed
    //#    call on void com.dmdirc.addons.ui_swing.components.StandardInputDialog:add(Component, Object)
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.components.StandardInputDialog
    //#    method: void layoutComponents()
    //#    unanalyzed callee: void com.dmdirc.addons.ui_swing.components.StandardInputDialog:add(Component, Object)
        add(getLeftButton(), "split 2, right");
    //#StandardInputDialog.java:216: Warning: method not available - call not analyzed
    //#    call on void com.dmdirc.addons.ui_swing.components.StandardInputDialog:add(Component, Object)
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.components.StandardInputDialog
    //#    method: void layoutComponents()
    //#    unanalyzed callee: void com.dmdirc.addons.ui_swing.components.StandardInputDialog:add(Component, Object)
        add(getRightButton(), "right");
    //#StandardInputDialog.java:217: Warning: method not available - call not analyzed
    //#    call on void com.dmdirc.addons.ui_swing.components.StandardInputDialog:add(Component, Object)
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.components.StandardInputDialog
    //#    method: void layoutComponents()
    //#    unanalyzed callee: void com.dmdirc.addons.ui_swing.components.StandardInputDialog:add(Component, Object)
    }
    //#StandardInputDialog.java:218: end of method: void com.dmdirc.addons.ui_swing.components.StandardInputDialog.layoutComponents()

    /**
     * Displays the input dialog.
     */
    @Override
    public final void display() {
        display(getParent());
    //#StandardInputDialog.java:225: method: void com.dmdirc.addons.ui_swing.components.StandardInputDialog.display()
    //#StandardInputDialog.java:225: Warning: method not available - call not analyzed
    //#    call on Container com.dmdirc.addons.ui_swing.components.StandardInputDialog:getParent()
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.components.StandardInputDialog
    //#    method: void display()
    //#    unanalyzed callee: Container com.dmdirc.addons.ui_swing.components.StandardInputDialog:getParent()
    //#input(void display()): this
    //#unanalyzed(void display()): Effects-of-calling:javax.swing.SwingUtilities:isEventDispatchThread
    //#unanalyzed(void display()): Effects-of-calling:java.lang.Runnable:run
    //#unanalyzed(void display()): Effects-of-calling:javax.swing.SwingUtilities:invokeLater
    }
    //#StandardInputDialog.java:226: end of method: void com.dmdirc.addons.ui_swing.components.StandardInputDialog.display()

    /**
     * Displays the input dialog.
     * 
     * @param parent Parent component
     */
    public final void display(final Component parent) {
        UIUtilities.invokeLater(new Runnable() {
    //#StandardInputDialog.java:234: method: void com.dmdirc.addons.ui_swing.components.StandardInputDialog$7.com.dmdirc.addons.ui_swing.components.StandardInputDialog$7(StandardInputDialog, Component)
    //#input(void com.dmdirc.addons.ui_swing.components.StandardInputDialog$7(StandardInputDialog, Component)): Param_1
    //#input(void com.dmdirc.addons.ui_swing.components.StandardInputDialog$7(StandardInputDialog, Component)): Param_2
    //#input(void com.dmdirc.addons.ui_swing.components.StandardInputDialog$7(StandardInputDialog, Component)): this
    //#output(void com.dmdirc.addons.ui_swing.components.StandardInputDialog$7(StandardInputDialog, Component)): this.this$0
    //#output(void com.dmdirc.addons.ui_swing.components.StandardInputDialog$7(StandardInputDialog, Component)): this.val$parent
    //#post(void com.dmdirc.addons.ui_swing.components.StandardInputDialog$7(StandardInputDialog, Component)): this.this$0 == Param_1
    //#post(void com.dmdirc.addons.ui_swing.components.StandardInputDialog$7(StandardInputDialog, Component)): init'ed(this.this$0)
    //#post(void com.dmdirc.addons.ui_swing.components.StandardInputDialog$7(StandardInputDialog, Component)): this.val$parent == Param_2
    //#post(void com.dmdirc.addons.ui_swing.components.StandardInputDialog$7(StandardInputDialog, Component)): init'ed(this.val$parent)
    //#StandardInputDialog.java:234: end of method: void com.dmdirc.addons.ui_swing.components.StandardInputDialog$7.com.dmdirc.addons.ui_swing.components.StandardInputDialog$7(StandardInputDialog, Component)
    //#StandardInputDialog.java:234: method: void com.dmdirc.addons.ui_swing.components.StandardInputDialog.display(Component)
    //#input(void display(Component)): parent
    //#input(void display(Component)): this
    //#unanalyzed(void display(Component)): Effects-of-calling:javax.swing.SwingUtilities:isEventDispatchThread
    //#unanalyzed(void display(Component)): Effects-of-calling:java.lang.Runnable:run
    //#unanalyzed(void display(Component)): Effects-of-calling:javax.swing.SwingUtilities:invokeLater

            /** {@inheritDoc} */
            @Override
            public void run() {
                pack();
    //#StandardInputDialog.java:239: method: void com.dmdirc.addons.ui_swing.components.StandardInputDialog$7.run()
    //#StandardInputDialog.java:239: Warning: method not available - call not analyzed
    //#    call on void com.dmdirc.addons.ui_swing.components.StandardInputDialog:pack()
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.components.StandardInputDialog$7
    //#    method: void run()
    //#    unanalyzed callee: void com.dmdirc.addons.ui_swing.components.StandardInputDialog:pack()
    //#input(void run()): this
    //#input(void run()): this.this$0
    //#input(void run()): this.val$parent
    //#pre[2] (void run()): this.this$0 != null
                setLocationRelativeTo(parent);
    //#StandardInputDialog.java:240: Warning: method not available - call not analyzed
    //#    call on void com.dmdirc.addons.ui_swing.components.StandardInputDialog:setLocationRelativeTo(Component)
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.components.StandardInputDialog$7
    //#    method: void run()
    //#    unanalyzed callee: void com.dmdirc.addons.ui_swing.components.StandardInputDialog:setLocationRelativeTo(Component)
                setVisible(true);
    //#StandardInputDialog.java:241: Warning: method not available - call not analyzed
    //#    call on void com.dmdirc.addons.ui_swing.components.StandardInputDialog:setVisible(bool)
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.components.StandardInputDialog$7
    //#    method: void run()
    //#    unanalyzed callee: void com.dmdirc.addons.ui_swing.components.StandardInputDialog:setVisible(bool)
            }
    //#StandardInputDialog.java:242: end of method: void com.dmdirc.addons.ui_swing.components.StandardInputDialog$7.run()
        });
    }
    //#StandardInputDialog.java:244: end of method: void com.dmdirc.addons.ui_swing.components.StandardInputDialog.display(Component)

    /**
     * Returns the text in the input field.
     * 
     * @return Input text
     */
    public final String getText() {
        return textField.getText();
    //#StandardInputDialog.java:252: method: String com.dmdirc.addons.ui_swing.components.StandardInputDialog.getText()
    //#StandardInputDialog.java:252: Warning: method not available - call not analyzed
    //#    call on String com.dmdirc.addons.ui_swing.components.validating.ValidatingJTextField:getText()
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.components.StandardInputDialog
    //#    method: String getText()
    //#    unanalyzed callee: String com.dmdirc.addons.ui_swing.components.validating.ValidatingJTextField:getText()
    //#input(String getText()): this
    //#input(String getText()): this.textField
    //#output(String getText()): return_value
    //#pre[2] (String getText()): this.textField != null
    //#post(String getText()): init'ed(return_value)
    //#StandardInputDialog.java:252: end of method: String com.dmdirc.addons.ui_swing.components.StandardInputDialog.getText()
    }

    /**
     * Sets the dialogs text to the specified text.
     * 
     * @param text New test
     */
    public final void setText(final String text) {
        textField.setText(text);
    //#StandardInputDialog.java:261: method: void com.dmdirc.addons.ui_swing.components.StandardInputDialog.setText(String)
    //#StandardInputDialog.java:261: Warning: method not available - call not analyzed
    //#    call on void com.dmdirc.addons.ui_swing.components.validating.ValidatingJTextField:setText(String)
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.components.StandardInputDialog
    //#    method: void setText(String)
    //#    unanalyzed callee: void com.dmdirc.addons.ui_swing.components.validating.ValidatingJTextField:setText(String)
    //#input(void setText(String)): text
    //#input(void setText(String)): this
    //#input(void setText(String)): this.textField
    //#pre[3] (void setText(String)): this.textField != null
    }
    //#StandardInputDialog.java:262: end of method: void com.dmdirc.addons.ui_swing.components.StandardInputDialog.setText(String)
}
    //#output(com.dmdirc.addons.ui_swing.components.StandardInputDialog$7__static_init): __Descendant_Table[com/dmdirc/addons/ui_swing/components/StandardInputDialog$7]
    //#output(com.dmdirc.addons.ui_swing.components.StandardInputDialog$7__static_init): __Dispatch_Table.run()V
    //#post(com.dmdirc.addons.ui_swing.components.StandardInputDialog$7__static_init): __Descendant_Table[com/dmdirc/addons/ui_swing/components/StandardInputDialog$7] == &__Dispatch_Table
    //#post(com.dmdirc.addons.ui_swing.components.StandardInputDialog$7__static_init): __Dispatch_Table.run()V == &run
    //#StandardInputDialog.java:: end of method: com.dmdirc.addons.ui_swing.components.StandardInputDialog$7.com.dmdirc.addons.ui_swing.components.StandardInputDialog$7__static_init
    //#StandardInputDialog.java:: end of class: com.dmdirc.addons.ui_swing.components.StandardInputDialog$7
    //#output(com.dmdirc.addons.ui_swing.components.StandardInputDialog$6__static_init): __Descendant_Table[com/dmdirc/addons/ui_swing/components/StandardInputDialog$6]
    //#output(com.dmdirc.addons.ui_swing.components.StandardInputDialog$6__static_init): __Dispatch_Table.actionPerformed(Ljava/awt/event/ActionEvent;)V
    //#post(com.dmdirc.addons.ui_swing.components.StandardInputDialog$6__static_init): __Descendant_Table[com/dmdirc/addons/ui_swing/components/StandardInputDialog$6] == &__Dispatch_Table
    //#post(com.dmdirc.addons.ui_swing.components.StandardInputDialog$6__static_init): __Dispatch_Table.actionPerformed(Ljava/awt/event/ActionEvent;)V == &actionPerformed
    //#StandardInputDialog.java:: end of method: com.dmdirc.addons.ui_swing.components.StandardInputDialog$6.com.dmdirc.addons.ui_swing.components.StandardInputDialog$6__static_init
    //#StandardInputDialog.java:: end of class: com.dmdirc.addons.ui_swing.components.StandardInputDialog$6
    //#output(com.dmdirc.addons.ui_swing.components.StandardInputDialog$5__static_init): __Descendant_Table[com/dmdirc/addons/ui_swing/components/StandardInputDialog$5]
    //#output(com.dmdirc.addons.ui_swing.components.StandardInputDialog$5__static_init): __Dispatch_Table.changedUpdate(Ljavax/swing/event/DocumentEvent;)V
    //#output(com.dmdirc.addons.ui_swing.components.StandardInputDialog$5__static_init): __Dispatch_Table.insertUpdate(Ljavax/swing/event/DocumentEvent;)V
    //#output(com.dmdirc.addons.ui_swing.components.StandardInputDialog$5__static_init): __Dispatch_Table.removeUpdate(Ljavax/swing/event/DocumentEvent;)V
    //#post(com.dmdirc.addons.ui_swing.components.StandardInputDialog$5__static_init): __Descendant_Table[com/dmdirc/addons/ui_swing/components/StandardInputDialog$5] == &__Dispatch_Table
    //#post(com.dmdirc.addons.ui_swing.components.StandardInputDialog$5__static_init): __Dispatch_Table.changedUpdate(Ljavax/swing/event/DocumentEvent;)V == &changedUpdate
    //#post(com.dmdirc.addons.ui_swing.components.StandardInputDialog$5__static_init): __Dispatch_Table.insertUpdate(Ljavax/swing/event/DocumentEvent;)V == &insertUpdate
    //#post(com.dmdirc.addons.ui_swing.components.StandardInputDialog$5__static_init): __Dispatch_Table.removeUpdate(Ljavax/swing/event/DocumentEvent;)V == &removeUpdate
    //#StandardInputDialog.java:: end of method: com.dmdirc.addons.ui_swing.components.StandardInputDialog$5.com.dmdirc.addons.ui_swing.components.StandardInputDialog$5__static_init
    //#StandardInputDialog.java:: end of class: com.dmdirc.addons.ui_swing.components.StandardInputDialog$5
    //#output(com.dmdirc.addons.ui_swing.components.StandardInputDialog$4__static_init): __Descendant_Table[com/dmdirc/addons/ui_swing/components/StandardInputDialog$4]
    //#output(com.dmdirc.addons.ui_swing.components.StandardInputDialog$4__static_init): __Dispatch_Table.windowClosed(Ljava/awt/event/WindowEvent;)V
    //#output(com.dmdirc.addons.ui_swing.components.StandardInputDialog$4__static_init): __Dispatch_Table.windowOpened(Ljava/awt/event/WindowEvent;)V
    //#post(com.dmdirc.addons.ui_swing.components.StandardInputDialog$4__static_init): __Descendant_Table[com/dmdirc/addons/ui_swing/components/StandardInputDialog$4] == &__Dispatch_Table
    //#post(com.dmdirc.addons.ui_swing.components.StandardInputDialog$4__static_init): __Dispatch_Table.windowClosed(Ljava/awt/event/WindowEvent;)V == &windowClosed
    //#post(com.dmdirc.addons.ui_swing.components.StandardInputDialog$4__static_init): __Dispatch_Table.windowOpened(Ljava/awt/event/WindowEvent;)V == &windowOpened
    //#StandardInputDialog.java:: end of method: com.dmdirc.addons.ui_swing.components.StandardInputDialog$4.com.dmdirc.addons.ui_swing.components.StandardInputDialog$4__static_init
    //#StandardInputDialog.java:: end of class: com.dmdirc.addons.ui_swing.components.StandardInputDialog$4
    //#output(com.dmdirc.addons.ui_swing.components.StandardInputDialog$3__static_init): __Descendant_Table[com/dmdirc/addons/ui_swing/components/StandardInputDialog$3]
    //#output(com.dmdirc.addons.ui_swing.components.StandardInputDialog$3__static_init): __Dispatch_Table.actionPerformed(Ljava/awt/event/ActionEvent;)V
    //#post(com.dmdirc.addons.ui_swing.components.StandardInputDialog$3__static_init): __Descendant_Table[com/dmdirc/addons/ui_swing/components/StandardInputDialog$3] == &__Dispatch_Table
    //#post(com.dmdirc.addons.ui_swing.components.StandardInputDialog$3__static_init): __Dispatch_Table.actionPerformed(Ljava/awt/event/ActionEvent;)V == &actionPerformed
    //#StandardInputDialog.java:: end of method: com.dmdirc.addons.ui_swing.components.StandardInputDialog$3.com.dmdirc.addons.ui_swing.components.StandardInputDialog$3__static_init
    //#StandardInputDialog.java:: end of class: com.dmdirc.addons.ui_swing.components.StandardInputDialog$3
    //#output(com.dmdirc.addons.ui_swing.components.StandardInputDialog$2__static_init): __Descendant_Table[com/dmdirc/addons/ui_swing/components/StandardInputDialog$2]
    //#output(com.dmdirc.addons.ui_swing.components.StandardInputDialog$2__static_init): __Dispatch_Table.actionPerformed(Ljava/awt/event/ActionEvent;)V
    //#post(com.dmdirc.addons.ui_swing.components.StandardInputDialog$2__static_init): __Descendant_Table[com/dmdirc/addons/ui_swing/components/StandardInputDialog$2] == &__Dispatch_Table
    //#post(com.dmdirc.addons.ui_swing.components.StandardInputDialog$2__static_init): __Dispatch_Table.actionPerformed(Ljava/awt/event/ActionEvent;)V == &actionPerformed
    //#StandardInputDialog.java:: end of method: com.dmdirc.addons.ui_swing.components.StandardInputDialog$2.com.dmdirc.addons.ui_swing.components.StandardInputDialog$2__static_init
    //#StandardInputDialog.java:: end of class: com.dmdirc.addons.ui_swing.components.StandardInputDialog$2
    //#output(com.dmdirc.addons.ui_swing.components.StandardInputDialog$1__static_init): __Descendant_Table[com/dmdirc/addons/ui_swing/components/StandardInputDialog$1]
    //#output(com.dmdirc.addons.ui_swing.components.StandardInputDialog$1__static_init): __Dispatch_Table.validate(Ljava/lang/Object;)Lcom/dmdirc/config/prefs/validator/ValidationResponse;
    //#output(com.dmdirc.addons.ui_swing.components.StandardInputDialog$1__static_init): __Dispatch_Table.validate(Ljava/lang/String;)Lcom/dmdirc/config/prefs/validator/ValidationResponse;
    //#post(com.dmdirc.addons.ui_swing.components.StandardInputDialog$1__static_init): __Descendant_Table[com/dmdirc/addons/ui_swing/components/StandardInputDialog$1] == &__Dispatch_Table
    //#post(com.dmdirc.addons.ui_swing.components.StandardInputDialog$1__static_init): __Dispatch_Table.validate(Ljava/lang/Object;)Lcom/dmdirc/config/prefs/validator/ValidationResponse; == &validate
    //#post(com.dmdirc.addons.ui_swing.components.StandardInputDialog$1__static_init): __Dispatch_Table.validate(Ljava/lang/String;)Lcom/dmdirc/config/prefs/validator/ValidationResponse; == &validate
    //#StandardInputDialog.java:: end of method: com.dmdirc.addons.ui_swing.components.StandardInputDialog$1.com.dmdirc.addons.ui_swing.components.StandardInputDialog$1__static_init
    //#StandardInputDialog.java:: end of class: com.dmdirc.addons.ui_swing.components.StandardInputDialog$1
    //#output(com.dmdirc.addons.ui_swing.components.StandardInputDialog__static_init): __Descendant_Table[com/dmdirc/addons/ui_swing/components/StandardInputDialog]
    //#output(com.dmdirc.addons.ui_swing.components.StandardInputDialog__static_init): __Dispatch_Table.addListeners()V
    //#output(com.dmdirc.addons.ui_swing.components.StandardInputDialog__static_init): __Dispatch_Table.cancelled()V
    //#output(com.dmdirc.addons.ui_swing.components.StandardInputDialog__static_init): __Dispatch_Table.createRootPane()Ljavax/swing/JRootPane;
    //#output(com.dmdirc.addons.ui_swing.components.StandardInputDialog__static_init): __Dispatch_Table.display()V
    //#output(com.dmdirc.addons.ui_swing.components.StandardInputDialog__static_init): __Dispatch_Table.display(Ljava/awt/Component;)V
    //#output(com.dmdirc.addons.ui_swing.components.StandardInputDialog__static_init): __Dispatch_Table.executeAction(Ljavax/swing/JButton;)V
    //#output(com.dmdirc.addons.ui_swing.components.StandardInputDialog__static_init): __Dispatch_Table.getCancelButton()Ljavax/swing/JButton;
    //#output(com.dmdirc.addons.ui_swing.components.StandardInputDialog__static_init): __Dispatch_Table.getLeftButton()Ljavax/swing/JButton;
    //#output(com.dmdirc.addons.ui_swing.components.StandardInputDialog__static_init): __Dispatch_Table.getOkButton()Ljavax/swing/JButton;
    //#output(com.dmdirc.addons.ui_swing.components.StandardInputDialog__static_init): __Dispatch_Table.getRightButton()Ljavax/swing/JButton;
    //#output(com.dmdirc.addons.ui_swing.components.StandardInputDialog__static_init): __Dispatch_Table.getText()Ljava/lang/String;
    //#output(com.dmdirc.addons.ui_swing.components.StandardInputDialog__static_init): __Dispatch_Table.initComponents()V
    //#output(com.dmdirc.addons.ui_swing.components.StandardInputDialog__static_init): __Dispatch_Table.layoutComponents()V
    //#output(com.dmdirc.addons.ui_swing.components.StandardInputDialog__static_init): __Dispatch_Table.orderButtons(Ljavax/swing/JButton;Ljavax/swing/JButton;)V
    //#output(com.dmdirc.addons.ui_swing.components.StandardInputDialog__static_init): __Dispatch_Table.save()Z
    //#output(com.dmdirc.addons.ui_swing.components.StandardInputDialog__static_init): __Dispatch_Table.setCancelButton(Ljavax/swing/JButton;)V
    //#output(com.dmdirc.addons.ui_swing.components.StandardInputDialog__static_init): __Dispatch_Table.setOkButton(Ljavax/swing/JButton;)V
    //#output(com.dmdirc.addons.ui_swing.components.StandardInputDialog__static_init): __Dispatch_Table.setText(Ljava/lang/String;)V
    //#output(com.dmdirc.addons.ui_swing.components.StandardInputDialog__static_init): __Dispatch_Table.validateText()V
    //#output(com.dmdirc.addons.ui_swing.components.StandardInputDialog__static_init): com/dmdirc/addons/ui_swing/components/StandardDialog.__Descendant_Table[com/dmdirc/addons/ui_swing/components/StandardInputDialog]
    //#post(com.dmdirc.addons.ui_swing.components.StandardInputDialog__static_init): __Descendant_Table[com/dmdirc/addons/ui_swing/components/StandardInputDialog] == &__Dispatch_Table
    //#post(com.dmdirc.addons.ui_swing.components.StandardInputDialog__static_init): com/dmdirc/addons/ui_swing/components/StandardDialog.__Descendant_Table[com/dmdirc/addons/ui_swing/components/StandardInputDialog] == &__Dispatch_Table
    //#post(com.dmdirc.addons.ui_swing.components.StandardInputDialog__static_init): __Dispatch_Table.addListeners()V == &addListeners
    //#post(com.dmdirc.addons.ui_swing.components.StandardInputDialog__static_init): __Dispatch_Table.cancelled()V == &cancelled
    //#post(com.dmdirc.addons.ui_swing.components.StandardInputDialog__static_init): __Dispatch_Table.createRootPane()Ljavax/swing/JRootPane; == &com/dmdirc/addons/ui_swing/components/StandardDialog.createRootPane
    //#post(com.dmdirc.addons.ui_swing.components.StandardInputDialog__static_init): __Dispatch_Table.display()V == &display
    //#post(com.dmdirc.addons.ui_swing.components.StandardInputDialog__static_init): __Dispatch_Table.display(Ljava/awt/Component;)V == &display
    //#post(com.dmdirc.addons.ui_swing.components.StandardInputDialog__static_init): __Dispatch_Table.executeAction(Ljavax/swing/JButton;)V == &com/dmdirc/addons/ui_swing/components/StandardDialog.executeAction
    //#post(com.dmdirc.addons.ui_swing.components.StandardInputDialog__static_init): __Dispatch_Table.getCancelButton()Ljavax/swing/JButton; == &com/dmdirc/addons/ui_swing/components/StandardDialog.getCancelButton
    //#post(com.dmdirc.addons.ui_swing.components.StandardInputDialog__static_init): __Dispatch_Table.getLeftButton()Ljavax/swing/JButton; == &com/dmdirc/addons/ui_swing/components/StandardDialog.getLeftButton
    //#post(com.dmdirc.addons.ui_swing.components.StandardInputDialog__static_init): __Dispatch_Table.getOkButton()Ljavax/swing/JButton; == &com/dmdirc/addons/ui_swing/components/StandardDialog.getOkButton
    //#post(com.dmdirc.addons.ui_swing.components.StandardInputDialog__static_init): __Dispatch_Table.getRightButton()Ljavax/swing/JButton; == &com/dmdirc/addons/ui_swing/components/StandardDialog.getRightButton
    //#post(com.dmdirc.addons.ui_swing.components.StandardInputDialog__static_init): __Dispatch_Table.getText()Ljava/lang/String; == &getText
    //#post(com.dmdirc.addons.ui_swing.components.StandardInputDialog__static_init): __Dispatch_Table.initComponents()V == &initComponents
    //#post(com.dmdirc.addons.ui_swing.components.StandardInputDialog__static_init): __Dispatch_Table.layoutComponents()V == &layoutComponents
    //#post(com.dmdirc.addons.ui_swing.components.StandardInputDialog__static_init): __Dispatch_Table.orderButtons(Ljavax/swing/JButton;Ljavax/swing/JButton;)V == &com/dmdirc/addons/ui_swing/components/StandardDialog.orderButtons
    //#post(com.dmdirc.addons.ui_swing.components.StandardInputDialog__static_init): __Dispatch_Table.save()Z == &save
    //#post(com.dmdirc.addons.ui_swing.components.StandardInputDialog__static_init): __Dispatch_Table.setCancelButton(Ljavax/swing/JButton;)V == &com/dmdirc/addons/ui_swing/components/StandardDialog.setCancelButton
    //#post(com.dmdirc.addons.ui_swing.components.StandardInputDialog__static_init): __Dispatch_Table.setOkButton(Ljavax/swing/JButton;)V == &com/dmdirc/addons/ui_swing/components/StandardDialog.setOkButton
    //#post(com.dmdirc.addons.ui_swing.components.StandardInputDialog__static_init): __Dispatch_Table.setText(Ljava/lang/String;)V == &setText
    //#post(com.dmdirc.addons.ui_swing.components.StandardInputDialog__static_init): __Dispatch_Table.validateText()V == &validateText
    //#StandardInputDialog.java:: end of method: com.dmdirc.addons.ui_swing.components.StandardInputDialog.com.dmdirc.addons.ui_swing.components.StandardInputDialog__static_init
    //#StandardInputDialog.java:: end of class: com.dmdirc.addons.ui_swing.components.StandardInputDialog
