//# 0 errors, 231 messages
//#
/*
    //#NoUIDialog.java:1:1: class: com.dmdirc.ui.NoUIDialog$3$1
    //#NoUIDialog.java:1:1: method: com.dmdirc.ui.NoUIDialog$3$1.com.dmdirc.ui.NoUIDialog$3$1__static_init
    //#NoUIDialog.java:1:1: class: com.dmdirc.ui.NoUIDialog$3
    //#NoUIDialog.java:1:1: method: com.dmdirc.ui.NoUIDialog$3.com.dmdirc.ui.NoUIDialog$3__static_init
    //#NoUIDialog.java:1:1: class: com.dmdirc.ui.NoUIDialog$2
    //#NoUIDialog.java:1:1: method: com.dmdirc.ui.NoUIDialog$2.com.dmdirc.ui.NoUIDialog$2__static_init
    //#NoUIDialog.java:1:1: class: com.dmdirc.ui.NoUIDialog$1
    //#NoUIDialog.java:1:1: method: com.dmdirc.ui.NoUIDialog$1.com.dmdirc.ui.NoUIDialog$1__static_init
    //#NoUIDialog.java:1:1: class: com.dmdirc.ui.NoUIDialog
    //#NoUIDialog.java:1:1: method: com.dmdirc.ui.NoUIDialog.com.dmdirc.ui.NoUIDialog__static_init
 * 
 * Copyright (c) 2006-2008 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.ui;

import java.awt.BorderLayout;
import java.awt.Dimension;
import java.awt.Font;
import java.awt.Insets;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.util.concurrent.Semaphore;

import javax.swing.JButton;
import javax.swing.JDialog;
import javax.swing.JFrame;
import javax.swing.JTextPane;
import javax.swing.SwingUtilities;
import javax.swing.UIManager;
import javax.swing.text.html.HTMLDocument;
import javax.swing.text.html.HTMLEditorKit;

/**
 * Simple Dialog to inform the user there are no UI plugins.
 */
public class NoUIDialog extends JDialog {
    //#NoUIDialog.java:48: method: void com.dmdirc.ui.NoUIDialog.com.dmdirc.ui.NoUIDialog(NoUIDialog$1)
    //#input(void com.dmdirc.ui.NoUIDialog(NoUIDialog$1)): "; "._tainted
    //#input(void com.dmdirc.ui.NoUIDialog(NoUIDialog$1)): "body { font-family: "._tainted
    //#input(void com.dmdirc.ui.NoUIDialog(NoUIDialog$1)): "font-size: "._tainted
    //#input(void com.dmdirc.ui.NoUIDialog(NoUIDialog$1)): "font-size: 1.5em; padding: 0; margin: 0}"._tainted
    //#input(void com.dmdirc.ui.NoUIDialog(NoUIDialog$1)): "h1 { font-family: "._tainted
    //#input(void com.dmdirc.ui.NoUIDialog(NoUIDialog$1)): "pt; text-align: center; }"._tainted
    //#input(void com.dmdirc.ui.NoUIDialog(NoUIDialog$1)): this
    //#unanalyzed(void com.dmdirc.ui.NoUIDialog(NoUIDialog$1)): Effects-of-calling:javax.swing.JDialog
    //#unanalyzed(void com.dmdirc.ui.NoUIDialog(NoUIDialog$1)): Effects-of-calling:com.dmdirc.ui.NoUIDialog:setResizable
    //#unanalyzed(void com.dmdirc.ui.NoUIDialog(NoUIDialog$1)): Effects-of-calling:java.awt.BorderLayout
    //#unanalyzed(void com.dmdirc.ui.NoUIDialog(NoUIDialog$1)): Effects-of-calling:com.dmdirc.ui.NoUIDialog:setLayout
    //#unanalyzed(void com.dmdirc.ui.NoUIDialog(NoUIDialog$1)): Effects-of-calling:com.dmdirc.ui.NoUIDialog:setDefaultCloseOperation
    //#unanalyzed(void com.dmdirc.ui.NoUIDialog(NoUIDialog$1)): Effects-of-calling:javax.swing.JButton
    //#unanalyzed(void com.dmdirc.ui.NoUIDialog(NoUIDialog$1)): Effects-of-calling:javax.swing.JButton:addActionListener
    //#unanalyzed(void com.dmdirc.ui.NoUIDialog(NoUIDialog$1)): Effects-of-calling:javax.swing.text.html.HTMLDocument
    //#unanalyzed(void com.dmdirc.ui.NoUIDialog(NoUIDialog$1)): Effects-of-calling:javax.swing.JTextPane
    //#unanalyzed(void com.dmdirc.ui.NoUIDialog(NoUIDialog$1)): Effects-of-calling:javax.swing.text.html.HTMLEditorKit
    //#unanalyzed(void com.dmdirc.ui.NoUIDialog(NoUIDialog$1)): Effects-of-calling:javax.swing.JTextPane:setEditorKit
    //#unanalyzed(void com.dmdirc.ui.NoUIDialog(NoUIDialog$1)): Effects-of-calling:javax.swing.JTextPane:setOpaque
    //#unanalyzed(void com.dmdirc.ui.NoUIDialog(NoUIDialog$1)): Effects-of-calling:javax.swing.JTextPane:setEditable
    //#unanalyzed(void com.dmdirc.ui.NoUIDialog(NoUIDialog$1)): Effects-of-calling:javax.swing.JTextPane:setHighlighter
    //#unanalyzed(void com.dmdirc.ui.NoUIDialog(NoUIDialog$1)): Effects-of-calling:java.awt.Insets
    //#unanalyzed(void com.dmdirc.ui.NoUIDialog(NoUIDialog$1)): Effects-of-calling:javax.swing.JTextPane:setMargin
    //#unanalyzed(void com.dmdirc.ui.NoUIDialog(NoUIDialog$1)): Effects-of-calling:javax.swing.JTextPane:getDocument
    //#unanalyzed(void com.dmdirc.ui.NoUIDialog(NoUIDialog$1)): Effects-of-calling:javax.swing.UIManager:getFont
    //#unanalyzed(void com.dmdirc.ui.NoUIDialog(NoUIDialog$1)): Effects-of-calling:javax.swing.text.html.HTMLDocument:getStyleSheet
    //#unanalyzed(void com.dmdirc.ui.NoUIDialog(NoUIDialog$1)): Effects-of-calling:java.lang.StringBuilder
    //#unanalyzed(void com.dmdirc.ui.NoUIDialog(NoUIDialog$1)): Effects-of-calling:java.lang.StringBuilder:append
    //#unanalyzed(void com.dmdirc.ui.NoUIDialog(NoUIDialog$1)): Effects-of-calling:java.awt.Font:getFamily
    //#unanalyzed(void com.dmdirc.ui.NoUIDialog(NoUIDialog$1)): Effects-of-calling:java.awt.Font:getSize
    //#unanalyzed(void com.dmdirc.ui.NoUIDialog(NoUIDialog$1)): Effects-of-calling:java.lang.StringBuilder:toString
    //#unanalyzed(void com.dmdirc.ui.NoUIDialog(NoUIDialog$1)): Effects-of-calling:javax.swing.text.html.StyleSheet:addRule
    //#unanalyzed(void com.dmdirc.ui.NoUIDialog(NoUIDialog$1)): Effects-of-calling:javax.swing.JTextPane:setText
    //#unanalyzed(void com.dmdirc.ui.NoUIDialog(NoUIDialog$1)): Effects-of-calling:com.dmdirc.ui.NoUIDialog:add
    //#unanalyzed(void com.dmdirc.ui.NoUIDialog(NoUIDialog$1)): Effects-of-calling:java.awt.Dimension
    //#unanalyzed(void com.dmdirc.ui.NoUIDialog(NoUIDialog$1)): Effects-of-calling:com.dmdirc.ui.NoUIDialog:setPreferredSize
    //#NoUIDialog.java:48: end of method: void com.dmdirc.ui.NoUIDialog.com.dmdirc.ui.NoUIDialog(NoUIDialog$1)

    /**
     * A version number for this class. It should be changed whenever the class
     * structure is changed (or anything else that would prevent serialized
     * objects being unserialized with the new class).
     */
    private static final long serialVersionUID = -528603916540455178L;
    /** Dialog heading text. */
    private static final String TITLE = "<h1>No UIs Found</h1>";
    /** Dialog body text. */
    private static final String BODY = "DMDirc cannot find any UI plugins, " +
            "which are required for you to use DMDirc.  You can either " +
            "download a UI plugin or extract one from the jar. DMDirc will " +
            "now exit";

    /** Private constructor to prevent external instantiation. */
    private NoUIDialog() {
        super((JFrame) null, "DMDirc: No UIs Found");
    //#NoUIDialog.java:66: method: void com.dmdirc.ui.NoUIDialog.com.dmdirc.ui.NoUIDialog()
    //#input(void com.dmdirc.ui.NoUIDialog()): "; "._tainted
    //#input(void com.dmdirc.ui.NoUIDialog()): "body { font-family: "._tainted
    //#input(void com.dmdirc.ui.NoUIDialog()): "font-size: "._tainted
    //#input(void com.dmdirc.ui.NoUIDialog()): "font-size: 1.5em; padding: 0; margin: 0}"._tainted
    //#input(void com.dmdirc.ui.NoUIDialog()): "h1 { font-family: "._tainted
    //#input(void com.dmdirc.ui.NoUIDialog()): "pt; text-align: center; }"._tainted
    //#input(void com.dmdirc.ui.NoUIDialog()): this
    //#presumption(void com.dmdirc.ui.NoUIDialog()): javax.swing.JTextPane:getDocument(...)@88 != null
    //#presumption(void com.dmdirc.ui.NoUIDialog()): javax.swing.UIManager:getFont(...)@89 != null
    //#presumption(void com.dmdirc.ui.NoUIDialog()): javax.swing.text.html.HTMLDocument:getStyleSheet(...)@90 != null
    //#presumption(void com.dmdirc.ui.NoUIDialog()): javax.swing.text.html.HTMLDocument:getStyleSheet(...)@93 != null
    //#presumption(void com.dmdirc.ui.NoUIDialog()): javax.swing.text.html.HTMLDocument:getStyleSheet(...)@96 != null
        setResizable(false);
    //#NoUIDialog.java:67: Warning: method not available - call not analyzed
    //#    call on void com.dmdirc.ui.NoUIDialog:setResizable(bool)
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.ui.NoUIDialog
    //#    method: void com.dmdirc.ui.NoUIDialog()
    //#    unanalyzed callee: void com.dmdirc.ui.NoUIDialog:setResizable(bool)
        setLayout(new BorderLayout(5, 5));
    //#NoUIDialog.java:68: Warning: method not available - call not analyzed
    //#    call on void com.dmdirc.ui.NoUIDialog:setLayout(LayoutManager)
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.ui.NoUIDialog
    //#    method: void com.dmdirc.ui.NoUIDialog()
    //#    unanalyzed callee: void com.dmdirc.ui.NoUIDialog:setLayout(LayoutManager)
        setDefaultCloseOperation(DISPOSE_ON_CLOSE);
    //#NoUIDialog.java:69: Warning: method not available - call not analyzed
    //#    call on void com.dmdirc.ui.NoUIDialog:setDefaultCloseOperation(int)
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.ui.NoUIDialog
    //#    method: void com.dmdirc.ui.NoUIDialog()
    //#    unanalyzed callee: void com.dmdirc.ui.NoUIDialog:setDefaultCloseOperation(int)

        final JButton button = new JButton("OK");
        button.addActionListener(new ActionListener() {
    //#NoUIDialog.java:72: method: void com.dmdirc.ui.NoUIDialog$1.com.dmdirc.ui.NoUIDialog$1(NoUIDialog)
    //#input(void com.dmdirc.ui.NoUIDialog$1(NoUIDialog)): Param_1
    //#input(void com.dmdirc.ui.NoUIDialog$1(NoUIDialog)): this
    //#output(void com.dmdirc.ui.NoUIDialog$1(NoUIDialog)): this.this$0
    //#post(void com.dmdirc.ui.NoUIDialog$1(NoUIDialog)): this.this$0 == Param_1
    //#post(void com.dmdirc.ui.NoUIDialog$1(NoUIDialog)): init'ed(this.this$0)
    //#NoUIDialog.java:72: end of method: void com.dmdirc.ui.NoUIDialog$1.com.dmdirc.ui.NoUIDialog$1(NoUIDialog)

            /** {@inheritDoc} */
            @Override
            public void actionPerformed(final ActionEvent e) {
                dispose();
    //#NoUIDialog.java:77: method: void com.dmdirc.ui.NoUIDialog$1.actionPerformed(ActionEvent)
    //#NoUIDialog.java:77: Warning: method not available - call not analyzed
    //#    call on void com.dmdirc.ui.NoUIDialog:dispose()
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.ui.NoUIDialog$1
    //#    method: void actionPerformed(ActionEvent)
    //#    unanalyzed callee: void com.dmdirc.ui.NoUIDialog:dispose()
    //#input(void actionPerformed(ActionEvent)): this
    //#input(void actionPerformed(ActionEvent)): this.this$0
    //#pre[2] (void actionPerformed(ActionEvent)): this.this$0 != null
            }
    //#NoUIDialog.java:78: end of method: void com.dmdirc.ui.NoUIDialog$1.actionPerformed(ActionEvent)
        });

        final JTextPane textArea = new JTextPane(new HTMLDocument());
        textArea.setEditorKit(new HTMLEditorKit());
        textArea.setOpaque(false);
        textArea.setEditable(false);
        textArea.setHighlighter(null);
        textArea.setMargin(new Insets(5, 5, 5, 5));

        final HTMLDocument doc = (HTMLDocument) textArea.getDocument();
        final Font font = UIManager.getFont("Label.font");
        doc.getStyleSheet().addRule("body " +
                "{ font-family: " + font.getFamily() + "; " + "font-size: " +
                font.getSize() + "pt; text-align: center; }");
        doc.getStyleSheet().addRule("h1 " +
                "{ font-family: " + font.getFamily() + "; " +
                "font-size: 1.5em; padding: 0; margin: 0}");
        doc.getStyleSheet().addRule("p { text-align: justify; }");

        textArea.setText(TITLE + "<p>" + BODY + "</p>");

        add(textArea, BorderLayout.CENTER);
    //#NoUIDialog.java:100: Warning: method not available - call not analyzed
    //#    call on void com.dmdirc.ui.NoUIDialog:add(Component, Object)
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.ui.NoUIDialog
    //#    method: void com.dmdirc.ui.NoUIDialog()
    //#    unanalyzed callee: void com.dmdirc.ui.NoUIDialog:add(Component, Object)
        add(button, BorderLayout.SOUTH);
    //#NoUIDialog.java:101: Warning: method not available - call not analyzed
    //#    call on void com.dmdirc.ui.NoUIDialog:add(Component, Object)
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.ui.NoUIDialog
    //#    method: void com.dmdirc.ui.NoUIDialog()
    //#    unanalyzed callee: void com.dmdirc.ui.NoUIDialog:add(Component, Object)

        setPreferredSize(new Dimension(250, 200));
    //#NoUIDialog.java:103: Warning: method not available - call not analyzed
    //#    call on void com.dmdirc.ui.NoUIDialog:setPreferredSize(Dimension)
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.ui.NoUIDialog
    //#    method: void com.dmdirc.ui.NoUIDialog()
    //#    unanalyzed callee: void com.dmdirc.ui.NoUIDialog:setPreferredSize(Dimension)
    }
    //#NoUIDialog.java:104: end of method: void com.dmdirc.ui.NoUIDialog.com.dmdirc.ui.NoUIDialog()

    /**
     * Static method to instantiate and display the dialog.
     */
    public static void display() {
        SwingUtilities.invokeLater(new Runnable() {
    //#NoUIDialog.java:110: method: void com.dmdirc.ui.NoUIDialog$2.com.dmdirc.ui.NoUIDialog$2()
    //#NoUIDialog.java:110: end of method: void com.dmdirc.ui.NoUIDialog$2.com.dmdirc.ui.NoUIDialog$2()
    //#NoUIDialog.java:110: method: void com.dmdirc.ui.NoUIDialog.display()

            /** {@inheritDoc} */
            @Override
            public void run() {
                final NoUIDialog me = new NoUIDialog();
    //#NoUIDialog.java:115: method: void com.dmdirc.ui.NoUIDialog$2.run()
    //#input(void run()): "; "._tainted
    //#input(void run()): "body { font-family: "._tainted
    //#input(void run()): "font-size: "._tainted
    //#input(void run()): "font-size: 1.5em; padding: 0; margin: 0}"._tainted
    //#input(void run()): "h1 { font-family: "._tainted
    //#input(void run()): "pt; text-align: center; }"._tainted
    //#unanalyzed(void run()): Effects-of-calling:java.awt.MouseInfo:getPointerInfo
    //#unanalyzed(void run()): Effects-of-calling:java.awt.PointerInfo:getDevice
    //#unanalyzed(void run()): Effects-of-calling:java.awt.GraphicsDevice:getDefaultConfiguration
    //#unanalyzed(void run()): Effects-of-calling:java.awt.GraphicsConfiguration:getBounds
    //#unanalyzed(void run()): Effects-of-calling:java.awt.Window:getWidth
    //#unanalyzed(void run()): Effects-of-calling:java.awt.Window:getHeight
    //#unanalyzed(void run()): Effects-of-calling:java.awt.Window:setLocation
    //#unanalyzed(void run()): Effects-of-calling:javax.swing.JDialog
    //#unanalyzed(void run()): Effects-of-calling:com.dmdirc.ui.NoUIDialog:setResizable
    //#unanalyzed(void run()): Effects-of-calling:java.awt.BorderLayout
    //#unanalyzed(void run()): Effects-of-calling:com.dmdirc.ui.NoUIDialog:setLayout
    //#unanalyzed(void run()): Effects-of-calling:com.dmdirc.ui.NoUIDialog:setDefaultCloseOperation
    //#unanalyzed(void run()): Effects-of-calling:javax.swing.JButton
    //#unanalyzed(void run()): Effects-of-calling:javax.swing.JButton:addActionListener
    //#unanalyzed(void run()): Effects-of-calling:javax.swing.text.html.HTMLDocument
    //#unanalyzed(void run()): Effects-of-calling:javax.swing.JTextPane
    //#unanalyzed(void run()): Effects-of-calling:javax.swing.text.html.HTMLEditorKit
    //#unanalyzed(void run()): Effects-of-calling:javax.swing.JTextPane:setEditorKit
    //#unanalyzed(void run()): Effects-of-calling:javax.swing.JTextPane:setOpaque
    //#unanalyzed(void run()): Effects-of-calling:javax.swing.JTextPane:setEditable
    //#unanalyzed(void run()): Effects-of-calling:javax.swing.JTextPane:setHighlighter
    //#unanalyzed(void run()): Effects-of-calling:java.awt.Insets
    //#unanalyzed(void run()): Effects-of-calling:javax.swing.JTextPane:setMargin
    //#unanalyzed(void run()): Effects-of-calling:javax.swing.JTextPane:getDocument
    //#unanalyzed(void run()): Effects-of-calling:javax.swing.UIManager:getFont
    //#unanalyzed(void run()): Effects-of-calling:javax.swing.text.html.HTMLDocument:getStyleSheet
    //#unanalyzed(void run()): Effects-of-calling:java.lang.StringBuilder
    //#unanalyzed(void run()): Effects-of-calling:java.lang.StringBuilder:append
    //#unanalyzed(void run()): Effects-of-calling:java.awt.Font:getFamily
    //#unanalyzed(void run()): Effects-of-calling:java.awt.Font:getSize
    //#unanalyzed(void run()): Effects-of-calling:java.lang.StringBuilder:toString
    //#unanalyzed(void run()): Effects-of-calling:javax.swing.text.html.StyleSheet:addRule
    //#unanalyzed(void run()): Effects-of-calling:javax.swing.JTextPane:setText
    //#unanalyzed(void run()): Effects-of-calling:com.dmdirc.ui.NoUIDialog:add
    //#unanalyzed(void run()): Effects-of-calling:java.awt.Dimension
    //#unanalyzed(void run()): Effects-of-calling:com.dmdirc.ui.NoUIDialog:setPreferredSize
                me.pack();
    //#NoUIDialog.java:116: Warning: method not available - call not analyzed
    //#    call on void com.dmdirc.ui.NoUIDialog:pack()
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.ui.NoUIDialog$2
    //#    method: void run()
    //#    unanalyzed callee: void com.dmdirc.ui.NoUIDialog:pack()
                CoreUIUtils.centreWindow(me);
                me.setVisible(true);
    //#NoUIDialog.java:118: Warning: method not available - call not analyzed
    //#    call on void com.dmdirc.ui.NoUIDialog:setVisible(bool)
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.ui.NoUIDialog$2
    //#    method: void run()
    //#    unanalyzed callee: void com.dmdirc.ui.NoUIDialog:setVisible(bool)
            }
    //#NoUIDialog.java:119: end of method: void com.dmdirc.ui.NoUIDialog$2.run()
        });
    }
    //#NoUIDialog.java:121: end of method: void com.dmdirc.ui.NoUIDialog.display()

    /**
     * Static method to instantiate and display the dialog, blocking until it
     * is closed.
     */
    public static void displayBlocking() {
        final Semaphore semaphore = new Semaphore(0);
    //#NoUIDialog.java:128: method: void com.dmdirc.ui.NoUIDialog.displayBlocking()
        SwingUtilities.invokeLater(new Runnable() {
    //#NoUIDialog.java:129: method: void com.dmdirc.ui.NoUIDialog$3.com.dmdirc.ui.NoUIDialog$3(Semaphore)
    //#input(void com.dmdirc.ui.NoUIDialog$3(Semaphore)): Param_1
    //#input(void com.dmdirc.ui.NoUIDialog$3(Semaphore)): this
    //#output(void com.dmdirc.ui.NoUIDialog$3(Semaphore)): this.val$semaphore
    //#post(void com.dmdirc.ui.NoUIDialog$3(Semaphore)): this.val$semaphore == Param_1
    //#post(void com.dmdirc.ui.NoUIDialog$3(Semaphore)): init'ed(this.val$semaphore)
    //#NoUIDialog.java:129: end of method: void com.dmdirc.ui.NoUIDialog$3.com.dmdirc.ui.NoUIDialog$3(Semaphore)

            /** {@inheritDoc} */
            @Override
            public void run() {
                final NoUIDialog me = new NoUIDialog();
    //#NoUIDialog.java:134: method: void com.dmdirc.ui.NoUIDialog$3.run()
    //#input(void run()): "; "._tainted
    //#input(void run()): "body { font-family: "._tainted
    //#input(void run()): "font-size: "._tainted
    //#input(void run()): "font-size: 1.5em; padding: 0; margin: 0}"._tainted
    //#input(void run()): "h1 { font-family: "._tainted
    //#input(void run()): "pt; text-align: center; }"._tainted
    //#input(void run()): this
    //#unanalyzed(void run()): Effects-of-calling:java.awt.event.WindowAdapter
    //#unanalyzed(void run()): Effects-of-calling:java.awt.MouseInfo:getPointerInfo
    //#unanalyzed(void run()): Effects-of-calling:java.awt.PointerInfo:getDevice
    //#unanalyzed(void run()): Effects-of-calling:java.awt.GraphicsDevice:getDefaultConfiguration
    //#unanalyzed(void run()): Effects-of-calling:java.awt.GraphicsConfiguration:getBounds
    //#unanalyzed(void run()): Effects-of-calling:java.awt.Window:getWidth
    //#unanalyzed(void run()): Effects-of-calling:java.awt.Window:getHeight
    //#unanalyzed(void run()): Effects-of-calling:java.awt.Window:setLocation
    //#unanalyzed(void run()): Effects-of-calling:javax.swing.JDialog
    //#unanalyzed(void run()): Effects-of-calling:com.dmdirc.ui.NoUIDialog:setResizable
    //#unanalyzed(void run()): Effects-of-calling:java.awt.BorderLayout
    //#unanalyzed(void run()): Effects-of-calling:com.dmdirc.ui.NoUIDialog:setLayout
    //#unanalyzed(void run()): Effects-of-calling:com.dmdirc.ui.NoUIDialog:setDefaultCloseOperation
    //#unanalyzed(void run()): Effects-of-calling:javax.swing.JButton
    //#unanalyzed(void run()): Effects-of-calling:javax.swing.JButton:addActionListener
    //#unanalyzed(void run()): Effects-of-calling:javax.swing.text.html.HTMLDocument
    //#unanalyzed(void run()): Effects-of-calling:javax.swing.JTextPane
    //#unanalyzed(void run()): Effects-of-calling:javax.swing.text.html.HTMLEditorKit
    //#unanalyzed(void run()): Effects-of-calling:javax.swing.JTextPane:setEditorKit
    //#unanalyzed(void run()): Effects-of-calling:javax.swing.JTextPane:setOpaque
    //#unanalyzed(void run()): Effects-of-calling:javax.swing.JTextPane:setEditable
    //#unanalyzed(void run()): Effects-of-calling:javax.swing.JTextPane:setHighlighter
    //#unanalyzed(void run()): Effects-of-calling:java.awt.Insets
    //#unanalyzed(void run()): Effects-of-calling:javax.swing.JTextPane:setMargin
    //#unanalyzed(void run()): Effects-of-calling:javax.swing.JTextPane:getDocument
    //#unanalyzed(void run()): Effects-of-calling:javax.swing.UIManager:getFont
    //#unanalyzed(void run()): Effects-of-calling:javax.swing.text.html.HTMLDocument:getStyleSheet
    //#unanalyzed(void run()): Effects-of-calling:java.lang.StringBuilder
    //#unanalyzed(void run()): Effects-of-calling:java.lang.StringBuilder:append
    //#unanalyzed(void run()): Effects-of-calling:java.awt.Font:getFamily
    //#unanalyzed(void run()): Effects-of-calling:java.awt.Font:getSize
    //#unanalyzed(void run()): Effects-of-calling:java.lang.StringBuilder:toString
    //#unanalyzed(void run()): Effects-of-calling:javax.swing.text.html.StyleSheet:addRule
    //#unanalyzed(void run()): Effects-of-calling:javax.swing.JTextPane:setText
    //#unanalyzed(void run()): Effects-of-calling:com.dmdirc.ui.NoUIDialog:add
    //#unanalyzed(void run()): Effects-of-calling:java.awt.Dimension
    //#unanalyzed(void run()): Effects-of-calling:com.dmdirc.ui.NoUIDialog:setPreferredSize
                me.addWindowListener(new WindowAdapter() {
    //#NoUIDialog.java:135: method: void com.dmdirc.ui.NoUIDialog$3$1.com.dmdirc.ui.NoUIDialog$3$1(NoUIDialog$3)
    //#input(void com.dmdirc.ui.NoUIDialog$3$1(NoUIDialog$3)): Param_1
    //#input(void com.dmdirc.ui.NoUIDialog$3$1(NoUIDialog$3)): this
    //#output(void com.dmdirc.ui.NoUIDialog$3$1(NoUIDialog$3)): this.this$0
    //#post(void com.dmdirc.ui.NoUIDialog$3$1(NoUIDialog$3)): this.this$0 == Param_1
    //#post(void com.dmdirc.ui.NoUIDialog$3$1(NoUIDialog$3)): init'ed(this.this$0)
    //#NoUIDialog.java:135: end of method: void com.dmdirc.ui.NoUIDialog$3$1.com.dmdirc.ui.NoUIDialog$3$1(NoUIDialog$3)
    //#NoUIDialog.java:135: Warning: method not available - call not analyzed
    //#    call on void com.dmdirc.ui.NoUIDialog:addWindowListener(WindowListener)
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.ui.NoUIDialog$3
    //#    method: void run()
    //#    unanalyzed callee: void com.dmdirc.ui.NoUIDialog:addWindowListener(WindowListener)

                    @Override
                    public void windowClosed(final WindowEvent e) {
                        semaphore.release();
    //#NoUIDialog.java:139: method: void com.dmdirc.ui.NoUIDialog$3$1.windowClosed(WindowEvent)
    //#input(void windowClosed(WindowEvent)): this
    //#input(void windowClosed(WindowEvent)): this.this$0
    //#input(void windowClosed(WindowEvent)): this.this$0.val$semaphore
    //#pre[2] (void windowClosed(WindowEvent)): this.this$0 != null
    //#pre[3] (void windowClosed(WindowEvent)): this.val$semaphore != null
                    }
    //#NoUIDialog.java:140: end of method: void com.dmdirc.ui.NoUIDialog$3$1.windowClosed(WindowEvent)

                });
                me.pack();
    //#NoUIDialog.java:143: Warning: method not available - call not analyzed
    //#    call on void com.dmdirc.ui.NoUIDialog:pack()
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.ui.NoUIDialog$3
    //#    method: void run()
    //#    unanalyzed callee: void com.dmdirc.ui.NoUIDialog:pack()
                CoreUIUtils.centreWindow(me);
                me.setVisible(true);
    //#NoUIDialog.java:145: Warning: method not available - call not analyzed
    //#    call on void com.dmdirc.ui.NoUIDialog:setVisible(bool)
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.ui.NoUIDialog$3
    //#    method: void run()
    //#    unanalyzed callee: void com.dmdirc.ui.NoUIDialog:setVisible(bool)
            }
    //#NoUIDialog.java:146: end of method: void com.dmdirc.ui.NoUIDialog$3.run()
        });
        semaphore.acquireUninterruptibly();
    }
    //#NoUIDialog.java:149: end of method: void com.dmdirc.ui.NoUIDialog.displayBlocking()
}
    //#output(com.dmdirc.ui.NoUIDialog$3$1__static_init): __Descendant_Table[com/dmdirc/ui/NoUIDialog$3$1]
    //#output(com.dmdirc.ui.NoUIDialog$3$1__static_init): __Dispatch_Table.windowClosed(Ljava/awt/event/WindowEvent;)V
    //#post(com.dmdirc.ui.NoUIDialog$3$1__static_init): __Descendant_Table[com/dmdirc/ui/NoUIDialog$3$1] == &__Dispatch_Table
    //#post(com.dmdirc.ui.NoUIDialog$3$1__static_init): __Dispatch_Table.windowClosed(Ljava/awt/event/WindowEvent;)V == &windowClosed
    //#NoUIDialog.java:: end of method: com.dmdirc.ui.NoUIDialog$3$1.com.dmdirc.ui.NoUIDialog$3$1__static_init
    //#NoUIDialog.java:: end of class: com.dmdirc.ui.NoUIDialog$3$1
    //#output(com.dmdirc.ui.NoUIDialog$3__static_init): __Descendant_Table[com/dmdirc/ui/NoUIDialog$3]
    //#output(com.dmdirc.ui.NoUIDialog$3__static_init): __Dispatch_Table.run()V
    //#post(com.dmdirc.ui.NoUIDialog$3__static_init): __Descendant_Table[com/dmdirc/ui/NoUIDialog$3] == &__Dispatch_Table
    //#post(com.dmdirc.ui.NoUIDialog$3__static_init): __Dispatch_Table.run()V == &run
    //#NoUIDialog.java:: end of method: com.dmdirc.ui.NoUIDialog$3.com.dmdirc.ui.NoUIDialog$3__static_init
    //#NoUIDialog.java:: end of class: com.dmdirc.ui.NoUIDialog$3
    //#output(com.dmdirc.ui.NoUIDialog$2__static_init): __Descendant_Table[com/dmdirc/ui/NoUIDialog$2]
    //#output(com.dmdirc.ui.NoUIDialog$2__static_init): __Dispatch_Table.run()V
    //#post(com.dmdirc.ui.NoUIDialog$2__static_init): __Descendant_Table[com/dmdirc/ui/NoUIDialog$2] == &__Dispatch_Table
    //#post(com.dmdirc.ui.NoUIDialog$2__static_init): __Dispatch_Table.run()V == &run
    //#NoUIDialog.java:: end of method: com.dmdirc.ui.NoUIDialog$2.com.dmdirc.ui.NoUIDialog$2__static_init
    //#NoUIDialog.java:: end of class: com.dmdirc.ui.NoUIDialog$2
    //#output(com.dmdirc.ui.NoUIDialog$1__static_init): __Descendant_Table[com/dmdirc/ui/NoUIDialog$1]
    //#output(com.dmdirc.ui.NoUIDialog$1__static_init): __Dispatch_Table.actionPerformed(Ljava/awt/event/ActionEvent;)V
    //#post(com.dmdirc.ui.NoUIDialog$1__static_init): __Descendant_Table[com/dmdirc/ui/NoUIDialog$1] == &__Dispatch_Table
    //#post(com.dmdirc.ui.NoUIDialog$1__static_init): __Dispatch_Table.actionPerformed(Ljava/awt/event/ActionEvent;)V == &actionPerformed
    //#NoUIDialog.java:: end of method: com.dmdirc.ui.NoUIDialog$1.com.dmdirc.ui.NoUIDialog$1__static_init
    //#NoUIDialog.java:: end of class: com.dmdirc.ui.NoUIDialog$1
    //#output(com.dmdirc.ui.NoUIDialog__static_init): __Descendant_Table[com/dmdirc/ui/NoUIDialog]
    //#post(com.dmdirc.ui.NoUIDialog__static_init): __Descendant_Table[com/dmdirc/ui/NoUIDialog] == &__Dispatch_Table
    //#NoUIDialog.java:: end of method: com.dmdirc.ui.NoUIDialog.com.dmdirc.ui.NoUIDialog__static_init
    //#NoUIDialog.java:: end of class: com.dmdirc.ui.NoUIDialog
