//# 0 errors, 795 messages
//#
/*
    //#ActionConditionDisplayPanel.java:1:1: class: com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel
    //#ActionConditionDisplayPanel.java:1:1: method: com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel.com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel__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.dialogs.actioneditor;

import com.dmdirc.actions.ActionCondition;
import com.dmdirc.actions.interfaces.ActionType;
import com.dmdirc.ui.IconManager;
import com.dmdirc.addons.ui_swing.components.ImageButton;
import com.dmdirc.addons.ui_swing.components.ImageToggleButton;
import com.dmdirc.addons.ui_swing.components.text.TextLabel;
import com.dmdirc.util.ListenerList;

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import java.beans.PropertyChangeEvent;
import java.beans.PropertyChangeListener;
import javax.swing.JPanel;
import javax.swing.JToggleButton;

import net.miginfocom.swing.MigLayout;

/**
 * Action condition display panel.
 */
public class ActionConditionDisplayPanel extends JPanel implements ActionListener,
        PropertyChangeListener {

    /**
     * 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 = 1;
    /** Info label. */
    private TextLabel label;
    /** Edit button. */
    private JToggleButton editButton;
    /** Delete button. */
    private ImageButton deleteButton;
    /** Edit panel. */
    private ActionConditionEditorPanel editPanel;
    /** Listeners. */
    private ListenerList listeners;
    /** Action condition. */
    private ActionCondition condition;
    /** Action trigger. */
    private ActionType trigger;

    /** 
     * Instantiates the panel.
     * 
     * @param condition Action condition
     * @param trigger Action trigger
     */
    public ActionConditionDisplayPanel(final ActionCondition condition,
            final ActionType trigger) {
        super();
    //#ActionConditionDisplayPanel.java:78: method: void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel.com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)
    //#input(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): "; "._tainted
    //#input(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): "body { font-family: "._tainted
    //#input(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): "font-size: "._tainted
    //#input(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): "pt; }"._tainted
    //#input(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): com/dmdirc/addons/ui_swing/components/text/TextLabel.__Descendant_Table[com/dmdirc/addons/ui_swing/components/text/TextLabel]
    //#input(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): com/dmdirc/addons/ui_swing/components/text/TextLabel.__Descendant_Table[others]
    //#input(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): com/dmdirc/addons/ui_swing/components/text/TextLabel.__Dispatch_Table.getDocument()Ljavax/swing/text/StyledDocument;
    //#input(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): com/dmdirc/addons/ui_swing/components/text/TextLabel.__Dispatch_Table.setText(Ljava/lang/String;)V
    //#input(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): com/dmdirc/addons/ui_swing/dialogs/actioneditor/ActionConditionEditorPanel.__Descendant_Table[com/dmdirc/addons/ui_swing/dialogs/actioneditor/ActionConditionEditorPanel]
    //#input(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): com/dmdirc/addons/ui_swing/dialogs/actioneditor/ActionConditionEditorPanel.__Descendant_Table[others]
    //#input(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): com/dmdirc/addons/ui_swing/dialogs/actioneditor/ActionConditionEditorPanel.__Dispatch_Table.setEnabled(Z)V
    //#input(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): com/dmdirc/addons/ui_swing/dialogs/actioneditor/ActionConditionEditorPanel.java.lang.Boolean.TRUE
    //#input(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): condition
    //#input(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): this
    //#input(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): trigger
    //#output(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): new ActionCondition(ActionConditionDisplayPanel#1) num objects
    //#output(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): new ActionConditionEditorPanel$1(initComponents#7) num objects
    //#output(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): new ActionConditionEditorPanel$1(initComponents#7).__Tag
    //#output(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): new ActionConditionEditorPanel$1(initComponents#7).this$0
    //#output(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): new ActionConditionEditorPanel(initComponents#4) num objects
    //#output(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): new ActionConditionEditorPanel(initComponents#4).__Tag
    //#output(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): new ActionConditionEditorPanel(initComponents#4).arguments
    //#output(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): new ActionConditionEditorPanel(initComponents#4).comparisons
    //#output(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): new ActionConditionEditorPanel(initComponents#4).components
    //#output(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): new ActionConditionEditorPanel(initComponents#4).condition
    //#output(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): new ActionConditionEditorPanel(initComponents#4).target
    //#output(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): new ActionConditionEditorPanel(initComponents#4).trigger
    //#output(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): new ImageButton(initComponents#3) num objects
    //#output(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): new ImageToggleButton(initComponents#2) num objects
    //#output(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): new JComboBox(initComponents#1) num objects
    //#output(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): new JComboBox(initComponents#3) num objects
    //#output(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): new JComboBox(initComponents#5) num objects
    //#output(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): new ListenerList(initComponents#5) num objects
    //#output(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): new SimpleAttributeSet(TextLabel#6) num objects
    //#output(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): new TextLabel(initComponents#1) num objects
    //#output(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): new TextLabel(initComponents#1).__Tag
    //#output(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): new TextLabel(initComponents#1).sas
    //#output(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): this.condition
    //#output(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): this.deleteButton
    //#output(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): this.editButton
    //#output(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): this.editPanel
    //#output(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): this.label
    //#output(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): this.listeners
    //#output(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): this.trigger
    //#new obj(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): new ActionCondition(ActionConditionDisplayPanel#1)
    //#new obj(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): new ActionConditionEditorPanel$1(initComponents#7)
    //#new obj(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): new ActionConditionEditorPanel(initComponents#4)
    //#new obj(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): new ImageButton(initComponents#3)
    //#new obj(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): new ImageToggleButton(initComponents#2)
    //#new obj(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): new JComboBox(initComponents#1)
    //#new obj(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): new JComboBox(initComponents#3)
    //#new obj(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): new JComboBox(initComponents#5)
    //#new obj(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): new ListenerList(initComponents#5)
    //#new obj(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): new SimpleAttributeSet(TextLabel#6)
    //#new obj(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): new TextLabel(initComponents#1)
    //#pre[1] (void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): condition != null
    //#presumption(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): com.dmdirc.actions.ActionCondition:getTarget(...)@91 != null
    //#post(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): this.condition == &new ActionCondition(ActionConditionDisplayPanel#1)
    //#post(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): new ActionConditionEditorPanel(initComponents#4).condition == &new ActionCondition(ActionConditionDisplayPanel#1)
    //#post(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): this.deleteButton == &new ImageButton(initComponents#3)
    //#post(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): this.editButton == &new ImageToggleButton(initComponents#2)
    //#post(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): this.editPanel == &new ActionConditionEditorPanel(initComponents#4)
    //#post(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): new ActionConditionEditorPanel$1(initComponents#7).this$0 == &new ActionConditionEditorPanel(initComponents#4)
    //#post(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): this.label == &new TextLabel(initComponents#1)
    //#post(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): this.listeners == &new ListenerList(initComponents#5)
    //#post(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): this.trigger == trigger
    //#post(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): init'ed(this.trigger)
    //#post(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): new ActionConditionEditorPanel(initComponents#4).trigger == this.trigger
    //#post(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): new ActionCondition(ActionConditionDisplayPanel#1) num objects == 1
    //#post(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): new ActionConditionEditorPanel$1(initComponents#7) num objects == 1
    //#post(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): new ActionConditionEditorPanel(initComponents#4) num objects == 1
    //#post(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): new ImageButton(initComponents#3) num objects == 1
    //#post(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): new ImageToggleButton(initComponents#2) num objects == 1
    //#post(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): new JComboBox(initComponents#1) num objects == 1
    //#post(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): new JComboBox(initComponents#3) num objects == 1
    //#post(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): new JComboBox(initComponents#5) num objects == 1
    //#post(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): new ListenerList(initComponents#5) num objects == 1
    //#post(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): new SimpleAttributeSet(TextLabel#6) num objects == 1
    //#post(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): new TextLabel(initComponents#1) num objects == 1
    //#post(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): new ActionConditionEditorPanel$1(initComponents#7).__Tag == com/dmdirc/addons/ui_swing/dialogs/actioneditor/ActionConditionEditorPanel$1
    //#post(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): new ActionConditionEditorPanel(initComponents#4).__Tag == com/dmdirc/addons/ui_swing/dialogs/actioneditor/ActionConditionEditorPanel
    //#post(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): new ActionConditionEditorPanel(initComponents#4).arguments == &new JComboBox(initComponents#1)
    //#post(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): new ActionConditionEditorPanel(initComponents#4).comparisons == &new JComboBox(initComponents#5)
    //#post(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): new ActionConditionEditorPanel(initComponents#4).components == &new JComboBox(initComponents#3)
    //#post(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): new ActionConditionEditorPanel(initComponents#4).target == &new ActionConditionEditorPanel$1(initComponents#7)
    //#post(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): new TextLabel(initComponents#1).__Tag == com/dmdirc/addons/ui_swing/components/text/TextLabel
    //#post(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): new TextLabel(initComponents#1).sas == &new SimpleAttributeSet(TextLabel#6)
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:javax.swing.JTextPane:getDocument
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:javax.swing.JTextPane:setText
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:java.lang.String:isEmpty
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:java.lang.String:length
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:javax.swing.text.StyledDocument:setParagraphAttributes
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:javax.swing.text.DefaultStyledDocument
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:javax.swing.JTextPane
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:javax.swing.text.html.HTMLEditorKit
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:com.dmdirc.addons.ui_swing.components.text.TextLabel:setEditorKit
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:javax.swing.plaf.basic.BasicTextPaneUI
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:com.dmdirc.addons.ui_swing.components.text.TextLabel:setUI
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:javax.swing.UIManager:getFont
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:javax.swing.text.html.HTMLDocument:getStyleSheet
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:java.lang.StringBuilder
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:java.lang.StringBuilder:append
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:java.awt.Font:getFamily
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:java.awt.Font:getSize
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:java.lang.StringBuilder:toString
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:javax.swing.text.html.StyleSheet:addRule
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:com.dmdirc.addons.ui_swing.components.text.TextLabel:setOpaque
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:com.dmdirc.addons.ui_swing.components.text.TextLabel:setEditable
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:com.dmdirc.addons.ui_swing.components.text.TextLabel:setHighlighter
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:java.awt.Insets
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:com.dmdirc.addons.ui_swing.components.text.TextLabel:setMargin
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:javax.swing.text.SimpleAttributeSet
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:javax.swing.text.StyleConstants:setAlignment
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:com.dmdirc.ui.IconManager:getIconManager
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:com.dmdirc.ui.IconManager:getIcon
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:com.dmdirc.addons.ui_swing.components.ImageToggleButton
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:com.dmdirc.addons.ui_swing.components.ImageButton
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:javax.swing.DefaultComboBoxModel
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:javax.swing.JComboBox
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:javax.swing.JComboBox:putClientProperty
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:javax.swing.JComboBox:setName
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:javax.swing.JTextField
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:javax.swing.DefaultListCellRenderer
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:javax.swing.JComboBox:setRenderer
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:javax.swing.JComboBox:setEnabled
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:javax.swing.JTextField:setEnabled
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:javax.swing.JComboBox:getModel
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:javax.swing.DefaultComboBoxModel:removeAllElements
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:com.dmdirc.actions.interfaces.ActionType:getType
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:com.dmdirc.actions.interfaces.ActionMetaType:getArgNames
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:javax.swing.DefaultComboBoxModel:addElement
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:com.dmdirc.actions.ActionCondition:getArg
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:javax.swing.JComboBox:setSelectedIndex
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:com.dmdirc.actions.interfaces.ActionMetaType:getArgTypes
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:com.dmdirc.actions.ActionManager:getCompatibleComponents
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:java.util.List:iterator
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:java.util.Iterator:hasNext
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:java.util.Iterator:next
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:com.dmdirc.actions.ActionCondition:getComponent
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:javax.swing.JComboBox:setSelectedItem
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:com.dmdirc.actions.interfaces.ActionComponent:getType
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:com.dmdirc.actions.ActionManager:getCompatibleComparisons
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:com.dmdirc.actions.ActionCondition:getComparison
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:com.dmdirc.actions.ActionCondition:getTarget
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:javax.swing.JTextField:setText
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:javax.swing.JComboBox:addActionListener
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:javax.swing.JTextField:getDocument
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:javax.swing.text.Document:addDocumentListener
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:javax.swing.JTextField:addPropertyChangeListener
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:net.miginfocom.swing.MigLayout
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionEditorPanel:setLayout
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:javax.swing.JLabel
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionEditorPanel:add
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionEditorPanel:firePropertyChange
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:javax.swing.JComboBox:getSelectedIndex
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:javax.swing.JPanel:setEnabled
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:javax.swing.JPanel
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:com.dmdirc.util.ListenerList
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionEditorPanel:setVisible
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:javax.swing.JToggleButton:setSelected
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:javax.swing.JToggleButton:addActionListener
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:com.dmdirc.addons.ui_swing.components.ImageButton:addActionListener
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionEditorPanel:addPropertyChangeListener
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel:setLayout
    //#unanalyzed(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): Effects-of-calling:com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel:add
    //#test_vector(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): com.dmdirc.actions.ActionCondition:getArg(...)@91: {-2_147_483_648..-2, 0..4_294_967_295}, {-1}
    //#test_vector(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): com.dmdirc.actions.ActionCondition:getComparison(...)@91: Inverse{null}, Addr_Set{null}
    //#test_vector(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): com.dmdirc.actions.ActionCondition:getComponent(...)@91: Inverse{null}, Addr_Set{null}
    //#test_vector(void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)): java.lang.String:isEmpty(...)@91: {0}, {1}

        this.trigger = trigger;
        this.condition = new ActionCondition(condition.getArg(),
    //#ActionConditionDisplayPanel.java:81: Warning: method not available - call not analyzed
    //#    call on int com.dmdirc.actions.ActionCondition:getArg()
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel
    //#    method: void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)
    //#    unanalyzed callee: int com.dmdirc.actions.ActionCondition:getArg()
    //#ActionConditionDisplayPanel.java:81: Warning: method not available - call not analyzed
    //#    call on ActionComponent com.dmdirc.actions.ActionCondition:getComponent()
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel
    //#    method: void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)
    //#    unanalyzed callee: ActionComponent com.dmdirc.actions.ActionCondition:getComponent()
    //#ActionConditionDisplayPanel.java:81: Warning: method not available - call not analyzed
    //#    call on ActionComparison com.dmdirc.actions.ActionCondition:getComparison()
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel
    //#    method: void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)
    //#    unanalyzed callee: ActionComparison com.dmdirc.actions.ActionCondition:getComparison()
    //#ActionConditionDisplayPanel.java:81: Warning: method not available - call not analyzed
    //#    call on String com.dmdirc.actions.ActionCondition:getTarget()
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel
    //#    method: void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)
    //#    unanalyzed callee: String com.dmdirc.actions.ActionCondition:getTarget()
    //#ActionConditionDisplayPanel.java:81: Warning: method not available - call not analyzed
    //#    call on void com.dmdirc.actions.ActionCondition(int, ActionComponent, ActionComparison, String)
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel
    //#    method: void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)
    //#    unanalyzed callee: void com.dmdirc.actions.ActionCondition(int, ActionComponent, ActionComparison, String)
                condition.getComponent(), condition.getComparison(),
                condition.getTarget());

        initComponents();
        addListeners();
        layoutComponents();
        validate();
    //#ActionConditionDisplayPanel.java:88: Warning: method not available - call not analyzed
    //#    call on void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel:validate()
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel
    //#    method: void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)
    //#    unanalyzed callee: void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel:validate()
        layoutComponents();

        if (condition.getArg() == -1 && condition.getComponent() == null &&
    //#ActionConditionDisplayPanel.java:91: Warning: method not available - call not analyzed
    //#    call on int com.dmdirc.actions.ActionCondition:getArg()
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel
    //#    method: void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)
    //#    unanalyzed callee: int com.dmdirc.actions.ActionCondition:getArg()
    //#ActionConditionDisplayPanel.java:91: Warning: method not available - call not analyzed
    //#    call on ActionComponent com.dmdirc.actions.ActionCondition:getComponent()
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel
    //#    method: void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)
    //#    unanalyzed callee: ActionComponent com.dmdirc.actions.ActionCondition:getComponent()
    //#ActionConditionDisplayPanel.java:91: Warning: method not available - call not analyzed
    //#    call on ActionComparison com.dmdirc.actions.ActionCondition:getComparison()
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel
    //#    method: void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)
    //#    unanalyzed callee: ActionComparison com.dmdirc.actions.ActionCondition:getComparison()
    //#ActionConditionDisplayPanel.java:91: Warning: method not available - call not analyzed
    //#    call on String com.dmdirc.actions.ActionCondition:getTarget()
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel
    //#    method: void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)
    //#    unanalyzed callee: String com.dmdirc.actions.ActionCondition:getTarget()
                condition.getComparison() == null && condition.getTarget().isEmpty()) {
            editPanel.setVisible(true);
    //#ActionConditionDisplayPanel.java:93: Warning: method not available - call not analyzed
    //#    call on void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionEditorPanel:setVisible(bool)
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel
    //#    method: void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)
    //#    unanalyzed callee: void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionEditorPanel:setVisible(bool)
            editButton.setSelected(true);
        }
    }
    //#ActionConditionDisplayPanel.java:96: end of method: void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel.com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel(ActionCondition, ActionType)

    /**
     * Sets the action trigger.
     * 
     * @param trigger new trigger
     */
    void setTrigger(final ActionType trigger) {
        this.trigger = trigger;
    //#ActionConditionDisplayPanel.java:104: method: void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel.setTrigger(ActionType)
    //#input(void setTrigger(ActionType)): " "._tainted
    //#input(void setTrigger(ActionType)): " '"._tainted
    //#input(void setTrigger(ActionType)): " ..."._tainted
    //#input(void setTrigger(ActionType)): "'"._tainted
    //#input(void setTrigger(ActionType)): "'s "._tainted
    //#input(void setTrigger(ActionType)): "The "._tainted
    //#input(void setTrigger(ActionType)): com/dmdirc/addons/ui_swing/components/text/TextLabel.__Descendant_Table[com/dmdirc/addons/ui_swing/components/text/TextLabel]
    //#input(void setTrigger(ActionType)): com/dmdirc/addons/ui_swing/components/text/TextLabel.__Descendant_Table[others]
    //#input(void setTrigger(ActionType)): com/dmdirc/addons/ui_swing/components/text/TextLabel.__Dispatch_Table.getDocument()Ljavax/swing/text/StyledDocument;
    //#input(void setTrigger(ActionType)): com/dmdirc/addons/ui_swing/components/text/TextLabel.__Dispatch_Table.setText(Ljava/lang/String;)V
    //#input(void setTrigger(ActionType)): com/dmdirc/addons/ui_swing/dialogs/actioneditor/ActionConditionEditorPanel.__Descendant_Table[com/dmdirc/addons/ui_swing/dialogs/actioneditor/ActionConditionEditorPanel]
    //#input(void setTrigger(ActionType)): com/dmdirc/addons/ui_swing/dialogs/actioneditor/ActionConditionEditorPanel.__Descendant_Table[others]
    //#input(void setTrigger(ActionType)): com/dmdirc/addons/ui_swing/dialogs/actioneditor/ActionConditionEditorPanel.__Dispatch_Table.setEnabled(Z)V
    //#input(void setTrigger(ActionType)): com/dmdirc/addons/ui_swing/dialogs/actioneditor/ActionConditionEditorPanel.__Dispatch_Table.setTrigger(Lcom/dmdirc/actions/interfaces/ActionType;)V
    //#input(void setTrigger(ActionType)): this
    //#input(void setTrigger(ActionType)): this.condition
    //#input(void setTrigger(ActionType)): this.editButton
    //#input(void setTrigger(ActionType)): this.editPanel
    //#input(void setTrigger(ActionType)): this.editPanel.__Tag
    //#input(void setTrigger(ActionType)): this.editPanel.arguments
    //#input(void setTrigger(ActionType)): this.editPanel.comparisons
    //#input(void setTrigger(ActionType)): this.editPanel.components
    //#input(void setTrigger(ActionType)): this.editPanel.condition
    //#input(void setTrigger(ActionType)): this.editPanel.target
    //#input(void setTrigger(ActionType)): this.label
    //#input(void setTrigger(ActionType)): this.label.__Tag
    //#input(void setTrigger(ActionType)): this.label.sas
    //#input(void setTrigger(ActionType)): trigger
    //#output(void setTrigger(ActionType)): this.editPanel.trigger
    //#output(void setTrigger(ActionType)): this.trigger
    //#pre[3] (void setTrigger(ActionType)): this.editButton != null
    //#pre[4] (void setTrigger(ActionType)): this.editPanel != null
    //#pre[5] (void setTrigger(ActionType)): this.editPanel.__Tag == com/dmdirc/addons/ui_swing/dialogs/actioneditor/ActionConditionEditorPanel
    //#pre[6] (void setTrigger(ActionType)): this.editPanel.arguments != null
    //#pre[7] (void setTrigger(ActionType)): this.editPanel.comparisons != null
    //#pre[8] (void setTrigger(ActionType)): this.editPanel.components != null
    //#pre[10] (void setTrigger(ActionType)): this.editPanel.target != null
    //#pre[11] (void setTrigger(ActionType)): this.label != null
    //#pre[2] (void setTrigger(ActionType)): (soft) this.condition != null
    //#pre[9] (void setTrigger(ActionType)): (soft) this.editPanel.condition != null
    //#pre[12] (void setTrigger(ActionType)): (soft) this.label.__Tag == com/dmdirc/addons/ui_swing/components/text/TextLabel
    //#pre[13] (void setTrigger(ActionType)): (soft) init'ed(this.label.sas)
    //#post(void setTrigger(ActionType)): this.editPanel.trigger == trigger
    //#post(void setTrigger(ActionType)): init'ed(this.editPanel.trigger)
    //#post(void setTrigger(ActionType)): this.trigger == this.editPanel.trigger
    //#unanalyzed(void setTrigger(ActionType)): Effects-of-calling:javax.swing.JTextPane:getDocument
    //#unanalyzed(void setTrigger(ActionType)): Effects-of-calling:javax.swing.JTextPane:setText
    //#unanalyzed(void setTrigger(ActionType)): Effects-of-calling:java.lang.String:isEmpty
    //#unanalyzed(void setTrigger(ActionType)): Effects-of-calling:java.lang.String:length
    //#unanalyzed(void setTrigger(ActionType)): Effects-of-calling:javax.swing.text.StyledDocument:setParagraphAttributes
    //#unanalyzed(void setTrigger(ActionType)): Effects-of-calling:javax.swing.JComboBox:setEnabled
    //#unanalyzed(void setTrigger(ActionType)): Effects-of-calling:javax.swing.JTextField:setEnabled
    //#unanalyzed(void setTrigger(ActionType)): Effects-of-calling:javax.swing.JComboBox:getModel
    //#unanalyzed(void setTrigger(ActionType)): Effects-of-calling:javax.swing.DefaultComboBoxModel:removeAllElements
    //#unanalyzed(void setTrigger(ActionType)): Effects-of-calling:com.dmdirc.actions.interfaces.ActionType:getType
    //#unanalyzed(void setTrigger(ActionType)): Effects-of-calling:com.dmdirc.actions.interfaces.ActionMetaType:getArgNames
    //#unanalyzed(void setTrigger(ActionType)): Effects-of-calling:javax.swing.DefaultComboBoxModel:addElement
    //#unanalyzed(void setTrigger(ActionType)): Effects-of-calling:com.dmdirc.actions.ActionCondition:getArg
    //#unanalyzed(void setTrigger(ActionType)): Effects-of-calling:javax.swing.JComboBox:setSelectedIndex
    //#unanalyzed(void setTrigger(ActionType)): Effects-of-calling:javax.swing.JComboBox:getSelectedIndex
    //#unanalyzed(void setTrigger(ActionType)): Effects-of-calling:javax.swing.JPanel:setEnabled
    //#unanalyzed(void setTrigger(ActionType)): Effects-of-calling:com.dmdirc.actions.ActionCondition:getComponent
    //#unanalyzed(void setTrigger(ActionType)): Effects-of-calling:com.dmdirc.actions.ActionCondition:getComparison
    //#unanalyzed(void setTrigger(ActionType)): Effects-of-calling:com.dmdirc.actions.ActionCondition:getTarget
    //#unanalyzed(void setTrigger(ActionType)): Effects-of-calling:java.lang.StringBuilder
    //#unanalyzed(void setTrigger(ActionType)): Effects-of-calling:java.lang.StringBuilder:append
    //#unanalyzed(void setTrigger(ActionType)): Effects-of-calling:com.dmdirc.actions.interfaces.ActionComponent:getName
    //#unanalyzed(void setTrigger(ActionType)): Effects-of-calling:com.dmdirc.actions.interfaces.ActionComparison:getName
    //#unanalyzed(void setTrigger(ActionType)): Effects-of-calling:java.lang.StringBuilder:toString
    //#unanalyzed(void setTrigger(ActionType)): Effects-of-calling:java.lang.Object:equals
        editPanel.setTrigger(trigger);

        editPanel.setVisible(trigger == null);
    //#ActionConditionDisplayPanel.java:107: Warning: method not available - call not analyzed
    //#    call on void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionEditorPanel:setVisible(bool)
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel
    //#    method: void setTrigger(ActionType)
    //#    unanalyzed callee: void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionEditorPanel:setVisible(bool)
        editButton.setSelected(trigger == null);

        label.setText(updateSentence());
    }
    //#ActionConditionDisplayPanel.java:111: end of method: void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel.setTrigger(ActionType)

    /** Initialises the components. */
    private void initComponents() {
        label = new TextLabel("", false);
    //#ActionConditionDisplayPanel.java:115: method: void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel.initComponents()
    //#input(void initComponents()): "; "._tainted
    //#input(void initComponents()): "body { font-family: "._tainted
    //#input(void initComponents()): "font-size: "._tainted
    //#input(void initComponents()): "pt; }"._tainted
    //#input(void initComponents()): com/dmdirc/addons/ui_swing/components/text/TextLabel.__Descendant_Table[com/dmdirc/addons/ui_swing/components/text/TextLabel]
    //#input(void initComponents()): com/dmdirc/addons/ui_swing/components/text/TextLabel.__Descendant_Table[others]
    //#input(void initComponents()): com/dmdirc/addons/ui_swing/components/text/TextLabel.__Dispatch_Table.getDocument()Ljavax/swing/text/StyledDocument;
    //#input(void initComponents()): com/dmdirc/addons/ui_swing/components/text/TextLabel.__Dispatch_Table.setText(Ljava/lang/String;)V
    //#input(void initComponents()): com/dmdirc/addons/ui_swing/dialogs/actioneditor/ActionConditionEditorPanel.__Descendant_Table[com/dmdirc/addons/ui_swing/dialogs/actioneditor/ActionConditionEditorPanel]
    //#input(void initComponents()): com/dmdirc/addons/ui_swing/dialogs/actioneditor/ActionConditionEditorPanel.__Descendant_Table[others]
    //#input(void initComponents()): com/dmdirc/addons/ui_swing/dialogs/actioneditor/ActionConditionEditorPanel.__Dispatch_Table.setEnabled(Z)V
    //#input(void initComponents()): com/dmdirc/addons/ui_swing/dialogs/actioneditor/ActionConditionEditorPanel.java.lang.Boolean.TRUE
    //#input(void initComponents()): this
    //#input(void initComponents()): this.condition
    //#input(void initComponents()): this.trigger
    //#output(void initComponents()): new ActionConditionEditorPanel$1(initComponents#7) num objects
    //#output(void initComponents()): new ActionConditionEditorPanel$1(initComponents#7).__Tag
    //#output(void initComponents()): new ActionConditionEditorPanel$1(initComponents#7).this$0
    //#output(void initComponents()): new ActionConditionEditorPanel(initComponents#4) num objects
    //#output(void initComponents()): this.editPanel.__Tag
    //#output(void initComponents()): this.editPanel.arguments
    //#output(void initComponents()): this.editPanel.comparisons
    //#output(void initComponents()): this.editPanel.components
    //#output(void initComponents()): this.editPanel.condition
    //#output(void initComponents()): this.editPanel.target
    //#output(void initComponents()): this.editPanel.trigger
    //#output(void initComponents()): new ImageButton(initComponents#3) num objects
    //#output(void initComponents()): new ImageToggleButton(initComponents#2) num objects
    //#output(void initComponents()): new JComboBox(initComponents#1) num objects
    //#output(void initComponents()): new JComboBox(initComponents#3) num objects
    //#output(void initComponents()): new JComboBox(initComponents#5) num objects
    //#output(void initComponents()): new ListenerList(initComponents#5) num objects
    //#output(void initComponents()): new SimpleAttributeSet(TextLabel#6) num objects
    //#output(void initComponents()): new TextLabel(initComponents#1) num objects
    //#output(void initComponents()): this.label.__Tag
    //#output(void initComponents()): this.label.sas
    //#output(void initComponents()): this.deleteButton
    //#output(void initComponents()): this.editButton
    //#output(void initComponents()): this.editPanel
    //#output(void initComponents()): this.label
    //#output(void initComponents()): this.listeners
    //#new obj(void initComponents()): new ActionConditionEditorPanel$1(initComponents#7)
    //#new obj(void initComponents()): new ActionConditionEditorPanel(initComponents#4)
    //#new obj(void initComponents()): new ImageButton(initComponents#3)
    //#new obj(void initComponents()): new ImageToggleButton(initComponents#2)
    //#new obj(void initComponents()): new JComboBox(initComponents#1)
    //#new obj(void initComponents()): new JComboBox(initComponents#3)
    //#new obj(void initComponents()): new JComboBox(initComponents#5)
    //#new obj(void initComponents()): new ListenerList(initComponents#5)
    //#new obj(void initComponents()): new SimpleAttributeSet(TextLabel#6)
    //#new obj(void initComponents()): new TextLabel(initComponents#1)
    //#pre[3] (void initComponents()): init'ed(this.trigger)
    //#pre[2] (void initComponents()): (soft) this.condition != null
    //#presumption(void initComponents()): com.dmdirc.ui.IconManager:getIconManager(...)@116 != null
    //#presumption(void initComponents()): com.dmdirc.ui.IconManager:getIconManager(...)@116 != null
    //#presumption(void initComponents()): com.dmdirc.ui.IconManager:getIconManager(...)@119 != null
    //#presumption(void initComponents()): com.dmdirc.ui.IconManager:getIconManager(...)@119 != null
    //#presumption(void initComponents()): com.dmdirc.ui.IconManager:getIconManager(...)@119 != null
    //#post(void initComponents()): this.deleteButton == &new ImageButton(initComponents#3)
    //#post(void initComponents()): this.editButton == &new ImageToggleButton(initComponents#2)
    //#post(void initComponents()): this.editPanel == &new ActionConditionEditorPanel(initComponents#4)
    //#post(void initComponents()): new ActionConditionEditorPanel$1(initComponents#7).this$0 == &new ActionConditionEditorPanel(initComponents#4)
    //#post(void initComponents()): this.label == &new TextLabel(initComponents#1)
    //#post(void initComponents()): this.listeners == &new ListenerList(initComponents#5)
    //#post(void initComponents()): new ActionConditionEditorPanel$1(initComponents#7) num objects == 1
    //#post(void initComponents()): new ActionConditionEditorPanel(initComponents#4) num objects == 1
    //#post(void initComponents()): new ImageButton(initComponents#3) num objects == 1
    //#post(void initComponents()): new ImageToggleButton(initComponents#2) num objects == 1
    //#post(void initComponents()): new JComboBox(initComponents#1) num objects == 1
    //#post(void initComponents()): new JComboBox(initComponents#3) num objects == 1
    //#post(void initComponents()): new JComboBox(initComponents#5) num objects == 1
    //#post(void initComponents()): new ListenerList(initComponents#5) num objects == 1
    //#post(void initComponents()): new SimpleAttributeSet(TextLabel#6) num objects == 1
    //#post(void initComponents()): new TextLabel(initComponents#1) num objects == 1
    //#post(void initComponents()): new ActionConditionEditorPanel$1(initComponents#7).__Tag == com/dmdirc/addons/ui_swing/dialogs/actioneditor/ActionConditionEditorPanel$1
    //#post(void initComponents()): this.editPanel.__Tag == com/dmdirc/addons/ui_swing/dialogs/actioneditor/ActionConditionEditorPanel
    //#post(void initComponents()): this.editPanel.arguments == &new JComboBox(initComponents#1)
    //#post(void initComponents()): this.editPanel.comparisons == &new JComboBox(initComponents#5)
    //#post(void initComponents()): this.editPanel.components == &new JComboBox(initComponents#3)
    //#post(void initComponents()): this.editPanel.condition == this.condition
    //#post(void initComponents()): this.editPanel.condition != null
    //#post(void initComponents()): this.editPanel.target == &new ActionConditionEditorPanel$1(initComponents#7)
    //#post(void initComponents()): this.editPanel.trigger == this.trigger
    //#post(void initComponents()): init'ed(this.editPanel.trigger)
    //#post(void initComponents()): this.label.__Tag == com/dmdirc/addons/ui_swing/components/text/TextLabel
    //#post(void initComponents()): this.label.sas == &new SimpleAttributeSet(TextLabel#6)
    //#unanalyzed(void initComponents()): Effects-of-calling:javax.swing.JTextPane:getDocument
    //#unanalyzed(void initComponents()): Effects-of-calling:javax.swing.JTextPane:setText
    //#unanalyzed(void initComponents()): Effects-of-calling:java.lang.String:isEmpty
    //#unanalyzed(void initComponents()): Effects-of-calling:java.lang.String:length
    //#unanalyzed(void initComponents()): Effects-of-calling:javax.swing.text.StyledDocument:setParagraphAttributes
    //#unanalyzed(void initComponents()): Effects-of-calling:javax.swing.text.DefaultStyledDocument
    //#unanalyzed(void initComponents()): Effects-of-calling:javax.swing.JTextPane
    //#unanalyzed(void initComponents()): Effects-of-calling:javax.swing.text.html.HTMLEditorKit
    //#unanalyzed(void initComponents()): Effects-of-calling:com.dmdirc.addons.ui_swing.components.text.TextLabel:setEditorKit
    //#unanalyzed(void initComponents()): Effects-of-calling:javax.swing.plaf.basic.BasicTextPaneUI
    //#unanalyzed(void initComponents()): Effects-of-calling:com.dmdirc.addons.ui_swing.components.text.TextLabel:setUI
    //#unanalyzed(void initComponents()): Effects-of-calling:javax.swing.UIManager:getFont
    //#unanalyzed(void initComponents()): Effects-of-calling:javax.swing.text.html.HTMLDocument:getStyleSheet
    //#unanalyzed(void initComponents()): Effects-of-calling:java.lang.StringBuilder
    //#unanalyzed(void initComponents()): Effects-of-calling:java.lang.StringBuilder:append
    //#unanalyzed(void initComponents()): Effects-of-calling:java.awt.Font:getFamily
    //#unanalyzed(void initComponents()): Effects-of-calling:java.awt.Font:getSize
    //#unanalyzed(void initComponents()): Effects-of-calling:java.lang.StringBuilder:toString
    //#unanalyzed(void initComponents()): Effects-of-calling:javax.swing.text.html.StyleSheet:addRule
    //#unanalyzed(void initComponents()): Effects-of-calling:com.dmdirc.addons.ui_swing.components.text.TextLabel:setOpaque
    //#unanalyzed(void initComponents()): Effects-of-calling:com.dmdirc.addons.ui_swing.components.text.TextLabel:setEditable
    //#unanalyzed(void initComponents()): Effects-of-calling:com.dmdirc.addons.ui_swing.components.text.TextLabel:setHighlighter
    //#unanalyzed(void initComponents()): Effects-of-calling:java.awt.Insets
    //#unanalyzed(void initComponents()): Effects-of-calling:com.dmdirc.addons.ui_swing.components.text.TextLabel:setMargin
    //#unanalyzed(void initComponents()): Effects-of-calling:javax.swing.text.SimpleAttributeSet
    //#unanalyzed(void initComponents()): Effects-of-calling:javax.swing.text.StyleConstants:setAlignment
    //#unanalyzed(void initComponents()): Effects-of-calling:javax.swing.DefaultComboBoxModel
    //#unanalyzed(void initComponents()): Effects-of-calling:javax.swing.JComboBox
    //#unanalyzed(void initComponents()): Effects-of-calling:javax.swing.JComboBox:putClientProperty
    //#unanalyzed(void initComponents()): Effects-of-calling:javax.swing.JComboBox:setName
    //#unanalyzed(void initComponents()): Effects-of-calling:javax.swing.JTextField
    //#unanalyzed(void initComponents()): Effects-of-calling:javax.swing.DefaultListCellRenderer
    //#unanalyzed(void initComponents()): Effects-of-calling:javax.swing.JComboBox:setRenderer
    //#unanalyzed(void initComponents()): Effects-of-calling:javax.swing.JComboBox:setEnabled
    //#unanalyzed(void initComponents()): Effects-of-calling:javax.swing.JTextField:setEnabled
    //#unanalyzed(void initComponents()): Effects-of-calling:javax.swing.JComboBox:getModel
    //#unanalyzed(void initComponents()): Effects-of-calling:javax.swing.DefaultComboBoxModel:removeAllElements
    //#unanalyzed(void initComponents()): Effects-of-calling:com.dmdirc.actions.interfaces.ActionType:getType
    //#unanalyzed(void initComponents()): Effects-of-calling:com.dmdirc.actions.interfaces.ActionMetaType:getArgNames
    //#unanalyzed(void initComponents()): Effects-of-calling:javax.swing.DefaultComboBoxModel:addElement
    //#unanalyzed(void initComponents()): Effects-of-calling:com.dmdirc.actions.ActionCondition:getArg
    //#unanalyzed(void initComponents()): Effects-of-calling:javax.swing.JComboBox:setSelectedIndex
    //#unanalyzed(void initComponents()): Effects-of-calling:com.dmdirc.actions.interfaces.ActionMetaType:getArgTypes
    //#unanalyzed(void initComponents()): Effects-of-calling:com.dmdirc.actions.ActionManager:getCompatibleComponents
    //#unanalyzed(void initComponents()): Effects-of-calling:java.util.List:iterator
    //#unanalyzed(void initComponents()): Effects-of-calling:java.util.Iterator:hasNext
    //#unanalyzed(void initComponents()): Effects-of-calling:java.util.Iterator:next
    //#unanalyzed(void initComponents()): Effects-of-calling:com.dmdirc.actions.ActionCondition:getComponent
    //#unanalyzed(void initComponents()): Effects-of-calling:javax.swing.JComboBox:setSelectedItem
    //#unanalyzed(void initComponents()): Effects-of-calling:com.dmdirc.actions.interfaces.ActionComponent:getType
    //#unanalyzed(void initComponents()): Effects-of-calling:com.dmdirc.actions.ActionManager:getCompatibleComparisons
    //#unanalyzed(void initComponents()): Effects-of-calling:com.dmdirc.actions.ActionCondition:getComparison
    //#unanalyzed(void initComponents()): Effects-of-calling:com.dmdirc.actions.ActionCondition:getTarget
    //#unanalyzed(void initComponents()): Effects-of-calling:javax.swing.JTextField:setText
    //#unanalyzed(void initComponents()): Effects-of-calling:javax.swing.JComboBox:addActionListener
    //#unanalyzed(void initComponents()): Effects-of-calling:javax.swing.JTextField:getDocument
    //#unanalyzed(void initComponents()): Effects-of-calling:javax.swing.text.Document:addDocumentListener
    //#unanalyzed(void initComponents()): Effects-of-calling:javax.swing.JTextField:addPropertyChangeListener
    //#unanalyzed(void initComponents()): Effects-of-calling:net.miginfocom.swing.MigLayout
    //#unanalyzed(void initComponents()): Effects-of-calling:com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionEditorPanel:setLayout
    //#unanalyzed(void initComponents()): Effects-of-calling:javax.swing.JLabel
    //#unanalyzed(void initComponents()): Effects-of-calling:com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionEditorPanel:add
    //#unanalyzed(void initComponents()): Effects-of-calling:com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionEditorPanel:firePropertyChange
    //#unanalyzed(void initComponents()): Effects-of-calling:javax.swing.JComboBox:getSelectedIndex
    //#unanalyzed(void initComponents()): Effects-of-calling:javax.swing.JPanel:setEnabled
    //#unanalyzed(void initComponents()): Effects-of-calling:javax.swing.JPanel
        editButton = new ImageToggleButton("edit", IconManager.getIconManager().
    //#ActionConditionDisplayPanel.java:116: Warning: method not available - call not analyzed
    //#    call on IconManager com.dmdirc.ui.IconManager:getIconManager()
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel
    //#    method: void initComponents()
    //#    unanalyzed callee: IconManager com.dmdirc.ui.IconManager:getIconManager()
    //#ActionConditionDisplayPanel.java:116: Warning: method not available - call not analyzed
    //#    call on Icon com.dmdirc.ui.IconManager:getIcon(String)
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel
    //#    method: void initComponents()
    //#    unanalyzed callee: Icon com.dmdirc.ui.IconManager:getIcon(String)
    //#ActionConditionDisplayPanel.java:116: Warning: method not available - call not analyzed
    //#    call on void com.dmdirc.addons.ui_swing.components.ImageToggleButton(String, Icon, Icon)
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel
    //#    method: void initComponents()
    //#    unanalyzed callee: void com.dmdirc.addons.ui_swing.components.ImageToggleButton(String, Icon, Icon)
                getIcon("edit-inactive"),
                IconManager.getIconManager().getIcon("edit"));
        deleteButton = new ImageButton("delete", IconManager.getIconManager().
    //#ActionConditionDisplayPanel.java:119: Warning: method not available - call not analyzed
    //#    call on IconManager com.dmdirc.ui.IconManager:getIconManager()
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel
    //#    method: void initComponents()
    //#    unanalyzed callee: IconManager com.dmdirc.ui.IconManager:getIconManager()
    //#ActionConditionDisplayPanel.java:119: Warning: method not available - call not analyzed
    //#    call on Icon com.dmdirc.ui.IconManager:getIcon(String)
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel
    //#    method: void initComponents()
    //#    unanalyzed callee: Icon com.dmdirc.ui.IconManager:getIcon(String)
    //#ActionConditionDisplayPanel.java:119: Warning: method not available - call not analyzed
    //#    call on void com.dmdirc.addons.ui_swing.components.ImageButton(String, Icon, Icon, Icon)
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel
    //#    method: void initComponents()
    //#    unanalyzed callee: void com.dmdirc.addons.ui_swing.components.ImageButton(String, Icon, Icon, Icon)
                getIcon("close-inactive"), IconManager.getIconManager().
                getIcon("close-inactive"),
                IconManager.getIconManager().getIcon("close-active"));

        editPanel = new ActionConditionEditorPanel(condition, trigger);
        listeners = new ListenerList();
    //#ActionConditionDisplayPanel.java:125: Warning: method not available - call not analyzed
    //#    call on void com.dmdirc.util.ListenerList()
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel
    //#    method: void initComponents()
    //#    unanalyzed callee: void com.dmdirc.util.ListenerList()

        editPanel.setVisible(trigger == null);
    //#ActionConditionDisplayPanel.java:127: Warning: method not available - call not analyzed
    //#    call on void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionEditorPanel:setVisible(bool)
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel
    //#    method: void initComponents()
    //#    unanalyzed callee: void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionEditorPanel:setVisible(bool)
        editButton.setSelected(trigger == null);
    }
    //#ActionConditionDisplayPanel.java:129: end of method: void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel.initComponents()

    /** Adds the listeners. */
    private void addListeners() {
        editButton.addActionListener(this);
    //#ActionConditionDisplayPanel.java:133: method: void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel.addListeners()
    //#input(void addListeners()): this
    //#input(void addListeners()): this.deleteButton
    //#input(void addListeners()): this.editButton
    //#input(void addListeners()): this.editPanel
    //#pre[2] (void addListeners()): this.deleteButton != null
    //#pre[3] (void addListeners()): this.editButton != null
    //#pre[4] (void addListeners()): this.editPanel != null
        deleteButton.addActionListener(this);
    //#ActionConditionDisplayPanel.java:134: Warning: method not available - call not analyzed
    //#    call on void com.dmdirc.addons.ui_swing.components.ImageButton:addActionListener(ActionListener)
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel
    //#    method: void addListeners()
    //#    unanalyzed callee: void com.dmdirc.addons.ui_swing.components.ImageButton:addActionListener(ActionListener)
        editPanel.addPropertyChangeListener("edit", this);
    //#ActionConditionDisplayPanel.java:135: Warning: method not available - call not analyzed
    //#    call on void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionEditorPanel:addPropertyChangeListener(String, PropertyChangeListener)
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel
    //#    method: void addListeners()
    //#    unanalyzed callee: void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionEditorPanel:addPropertyChangeListener(String, PropertyChangeListener)
        editPanel.addPropertyChangeListener("validationResult", this);
    //#ActionConditionDisplayPanel.java:136: Warning: method not available - call not analyzed
    //#    call on void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionEditorPanel:addPropertyChangeListener(String, PropertyChangeListener)
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel
    //#    method: void addListeners()
    //#    unanalyzed callee: void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionEditorPanel:addPropertyChangeListener(String, PropertyChangeListener)
    }
    //#ActionConditionDisplayPanel.java:137: end of method: void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel.addListeners()

    /** Lays out the components. */
    private void layoutComponents() {
        setLayout(new MigLayout("ins 0, fillx, hidemode 3, pack, wmax 90%"));
    //#ActionConditionDisplayPanel.java:141: method: void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel.layoutComponents()
    //#ActionConditionDisplayPanel.java:141: Warning: method not available - call not analyzed
    //#    call on void net.miginfocom.swing.MigLayout(String)
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel
    //#    method: void layoutComponents()
    //#    unanalyzed callee: void net.miginfocom.swing.MigLayout(String)
    //#ActionConditionDisplayPanel.java:141: Warning: method not available - call not analyzed
    //#    call on void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel:setLayout(LayoutManager)
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel
    //#    method: void layoutComponents()
    //#    unanalyzed callee: void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel:setLayout(LayoutManager)
    //#input(void layoutComponents()): this
    //#input(void layoutComponents()): this.deleteButton
    //#input(void layoutComponents()): this.editButton
    //#input(void layoutComponents()): this.editPanel
    //#input(void layoutComponents()): this.label
    //#pre[2] (void layoutComponents()): init'ed(this.deleteButton)
    //#pre[3] (void layoutComponents()): init'ed(this.editButton)
    //#pre[4] (void layoutComponents()): init'ed(this.editPanel)
    //#pre[5] (void layoutComponents()): init'ed(this.label)
        add(label, "grow, push, wmax 85%");
    //#ActionConditionDisplayPanel.java:142: Warning: method not available - call not analyzed
    //#    call on void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel:add(Component, Object)
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel
    //#    method: void layoutComponents()
    //#    unanalyzed callee: void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel:add(Component, Object)
        add(editButton, "right");
    //#ActionConditionDisplayPanel.java:143: Warning: method not available - call not analyzed
    //#    call on void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel:add(Component, Object)
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel
    //#    method: void layoutComponents()
    //#    unanalyzed callee: void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel:add(Component, Object)
        add(deleteButton, "right, wrap");
    //#ActionConditionDisplayPanel.java:144: Warning: method not available - call not analyzed
    //#    call on void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel:add(Component, Object)
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel
    //#    method: void layoutComponents()
    //#    unanalyzed callee: void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel:add(Component, Object)
        add(editPanel, "alignx right");
    //#ActionConditionDisplayPanel.java:145: Warning: method not available - call not analyzed
    //#    call on void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel:add(Component, Object)
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel
    //#    method: void layoutComponents()
    //#    unanalyzed callee: void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel:add(Component, Object)
    }
    //#ActionConditionDisplayPanel.java:146: end of method: void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel.layoutComponents()

    /** 
     * {@inheritDoc}
     * 
     * @param e Action event
     */
    @Override
    public void actionPerformed(final ActionEvent e) {
        if (e.getSource().equals(deleteButton)) {
    //#ActionConditionDisplayPanel.java:155: method: void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel.actionPerformed(ActionEvent)
    //#input(void actionPerformed(ActionEvent)): "."._tainted
    //#input(void actionPerformed(ActionEvent)): "; "._tainted
    //#input(void actionPerformed(ActionEvent)): "body { font-family: "._tainted
    //#input(void actionPerformed(ActionEvent)): "font-size: "._tainted
    //#input(void actionPerformed(ActionEvent)): "pt; }"._tainted
    //#input(void actionPerformed(ActionEvent)): __Descendant_Table[com/dmdirc/addons/ui_swing/dialogs/actioneditor/ActionConditionDisplayPanel]
    //#input(void actionPerformed(ActionEvent)): __Descendant_Table[others]
    //#input(void actionPerformed(ActionEvent)): __Dispatch_Table.fireConditionRemoved(Lcom/dmdirc/addons/ui_swing/dialogs/actioneditor/ActionConditionDisplayPanel;)V
    //#input(void actionPerformed(ActionEvent)): com/dmdirc/addons/ui_swing/components/text/TextLabel.__Descendant_Table[com/dmdirc/addons/ui_swing/components/text/TextLabel]
    //#input(void actionPerformed(ActionEvent)): com/dmdirc/addons/ui_swing/components/text/TextLabel.__Descendant_Table[others]
    //#input(void actionPerformed(ActionEvent)): com/dmdirc/addons/ui_swing/components/text/TextLabel.__Dispatch_Table.getDocument()Ljavax/swing/text/StyledDocument;
    //#input(void actionPerformed(ActionEvent)): com/dmdirc/addons/ui_swing/components/text/TextLabel.__Dispatch_Table.setText(Ljava/lang/String;)V
    //#input(void actionPerformed(ActionEvent)): com/dmdirc/addons/ui_swing/dialogs/actioneditor/ActionConditionRemovalListener.__Descendant_Table[com/dmdirc/addons/ui_swing/dialogs/actioneditor/ActionConditionRemovalListener]
    //#input(void actionPerformed(ActionEvent)): com/dmdirc/addons/ui_swing/dialogs/actioneditor/ActionConditionRemovalListener.__Descendant_Table[com/dmdirc/addons/ui_swing/dialogs/actioneditor/ActionConditionsListPanel]
    //#input(void actionPerformed(ActionEvent)): com/dmdirc/addons/ui_swing/dialogs/actioneditor/ActionConditionRemovalListener.__Descendant_Table[others]
    //#input(void actionPerformed(ActionEvent)): com/dmdirc/addons/ui_swing/dialogs/actioneditor/ActionConditionRemovalListener.__Dispatch_Table.conditionRemoved(Lcom/dmdirc/addons/ui_swing/dialogs/actioneditor/ActionConditionDisplayPanel;)V
    //#input(void actionPerformed(ActionEvent)): com/dmdirc/addons/ui_swing/dialogs/actioneditor/ActionConditionsListPanel.__Descendant_Table[com/dmdirc/addons/ui_swing/dialogs/actioneditor/ActionConditionsListPanel]
    //#input(void actionPerformed(ActionEvent)): com/dmdirc/addons/ui_swing/dialogs/actioneditor/ActionConditionsListPanel.__Descendant_Table[others]
    //#input(void actionPerformed(ActionEvent)): com/dmdirc/addons/ui_swing/dialogs/actioneditor/ActionConditionsListPanel.__Dispatch_Table.conditionRemoved(Lcom/dmdirc/addons/ui_swing/dialogs/actioneditor/ActionConditionDisplayPanel;)V
    //#input(void actionPerformed(ActionEvent)): com/dmdirc/addons/ui_swing/dialogs/actioneditor/ActionConditionsListPanel.__Dispatch_Table.propertyChange(Ljava/beans/PropertyChangeEvent;)V
    //#input(void actionPerformed(ActionEvent)): e
    //#input(void actionPerformed(ActionEvent)): this
    //#input(void actionPerformed(ActionEvent)): this.__Tag
    //#input(void actionPerformed(ActionEvent)): this.deleteButton
    //#input(void actionPerformed(ActionEvent)): this.editButton
    //#input(void actionPerformed(ActionEvent)): this.editPanel
    //#input(void actionPerformed(ActionEvent)): this.listeners
    //#pre[1] (void actionPerformed(ActionEvent)): e != null
    //#pre[4] (void actionPerformed(ActionEvent)): init'ed(this.deleteButton)
    //#pre[3] (void actionPerformed(ActionEvent)): (soft) this.__Tag == com/dmdirc/addons/ui_swing/dialogs/actioneditor/ActionConditionDisplayPanel
    //#pre[5] (void actionPerformed(ActionEvent)): (soft) this.editButton != null
    //#pre[6] (void actionPerformed(ActionEvent)): (soft) this.editPanel != null
    //#pre[7] (void actionPerformed(ActionEvent)): (soft) this.listeners != null
    //#presumption(void actionPerformed(ActionEvent)): java.awt.event.ActionEvent:getSource(...)@155 != null
    //#presumption(void actionPerformed(ActionEvent)): java.awt.event.ActionEvent:getSource(...)@157 != null
    //#presumption(void actionPerformed(ActionEvent)): javax.swing.JToggleButton:getModel(...)@158 != null
    //#unanalyzed(void actionPerformed(ActionEvent)): Effects-of-calling:javax.swing.JTextPane:getDocument
    //#unanalyzed(void actionPerformed(ActionEvent)): Effects-of-calling:javax.swing.JTextPane:setText
    //#unanalyzed(void actionPerformed(ActionEvent)): Effects-of-calling:java.lang.String:isEmpty
    //#unanalyzed(void actionPerformed(ActionEvent)): Effects-of-calling:java.lang.String:length
    //#unanalyzed(void actionPerformed(ActionEvent)): Effects-of-calling:javax.swing.text.StyledDocument:setParagraphAttributes
    //#unanalyzed(void actionPerformed(ActionEvent)): Effects-of-calling:javax.swing.text.DefaultStyledDocument
    //#unanalyzed(void actionPerformed(ActionEvent)): Effects-of-calling:javax.swing.JTextPane
    //#unanalyzed(void actionPerformed(ActionEvent)): Effects-of-calling:javax.swing.text.html.HTMLEditorKit
    //#unanalyzed(void actionPerformed(ActionEvent)): Effects-of-calling:com.dmdirc.addons.ui_swing.components.text.TextLabel:setEditorKit
    //#unanalyzed(void actionPerformed(ActionEvent)): Effects-of-calling:javax.swing.plaf.basic.BasicTextPaneUI
    //#unanalyzed(void actionPerformed(ActionEvent)): Effects-of-calling:com.dmdirc.addons.ui_swing.components.text.TextLabel:setUI
    //#unanalyzed(void actionPerformed(ActionEvent)): Effects-of-calling:javax.swing.UIManager:getFont
    //#unanalyzed(void actionPerformed(ActionEvent)): Effects-of-calling:javax.swing.text.html.HTMLDocument:getStyleSheet
    //#unanalyzed(void actionPerformed(ActionEvent)): Effects-of-calling:java.lang.StringBuilder
    //#unanalyzed(void actionPerformed(ActionEvent)): Effects-of-calling:java.lang.StringBuilder:append
    //#unanalyzed(void actionPerformed(ActionEvent)): Effects-of-calling:java.awt.Font:getFamily
    //#unanalyzed(void actionPerformed(ActionEvent)): Effects-of-calling:java.awt.Font:getSize
    //#unanalyzed(void actionPerformed(ActionEvent)): Effects-of-calling:java.lang.StringBuilder:toString
    //#unanalyzed(void actionPerformed(ActionEvent)): Effects-of-calling:javax.swing.text.html.StyleSheet:addRule
    //#unanalyzed(void actionPerformed(ActionEvent)): Effects-of-calling:com.dmdirc.addons.ui_swing.components.text.TextLabel:setOpaque
    //#unanalyzed(void actionPerformed(ActionEvent)): Effects-of-calling:com.dmdirc.addons.ui_swing.components.text.TextLabel:setEditable
    //#unanalyzed(void actionPerformed(ActionEvent)): Effects-of-calling:com.dmdirc.addons.ui_swing.components.text.TextLabel:setHighlighter
    //#unanalyzed(void actionPerformed(ActionEvent)): Effects-of-calling:java.awt.Insets
    //#unanalyzed(void actionPerformed(ActionEvent)): Effects-of-calling:com.dmdirc.addons.ui_swing.components.text.TextLabel:setMargin
    //#unanalyzed(void actionPerformed(ActionEvent)): Effects-of-calling:javax.swing.text.SimpleAttributeSet
    //#unanalyzed(void actionPerformed(ActionEvent)): Effects-of-calling:javax.swing.text.StyleConstants:setAlignment
    //#unanalyzed(void actionPerformed(ActionEvent)): Effects-of-calling:com.dmdirc.util.ListenerList:get
    //#unanalyzed(void actionPerformed(ActionEvent)): Effects-of-calling:java.util.List:iterator
    //#unanalyzed(void actionPerformed(ActionEvent)): Effects-of-calling:java.util.Iterator:hasNext
    //#unanalyzed(void actionPerformed(ActionEvent)): Effects-of-calling:java.util.Iterator:next
    //#unanalyzed(void actionPerformed(ActionEvent)): Effects-of-calling:com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionsListPanel:setVisible
    //#unanalyzed(void actionPerformed(ActionEvent)): Effects-of-calling:com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionsListPanel:removeAll
    //#unanalyzed(void actionPerformed(ActionEvent)): Effects-of-calling:com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionsListPanel:add
    //#unanalyzed(void actionPerformed(ActionEvent)): Effects-of-calling:com.dmdirc.actions.interfaces.ActionType:getType
    //#unanalyzed(void actionPerformed(ActionEvent)): Effects-of-calling:com.dmdirc.actions.interfaces.ActionMetaType:getArgNames
    //#unanalyzed(void actionPerformed(ActionEvent)): Effects-of-calling:javax.swing.JLabel
    //#unanalyzed(void actionPerformed(ActionEvent)): Effects-of-calling:java.lang.Throwable:__curr_excep_obj
    //#unanalyzed(void actionPerformed(ActionEvent)): Effects-of-calling:java.beans.PropertyChangeEvent:getSource
    //#unanalyzed(void actionPerformed(ActionEvent)): Effects-of-calling:java.beans.PropertyChangeEvent:getNewValue
    //#unanalyzed(void actionPerformed(ActionEvent)): Effects-of-calling:java.util.Map:put
    //#unanalyzed(void actionPerformed(ActionEvent)): Effects-of-calling:java.util.Map:values
    //#unanalyzed(void actionPerformed(ActionEvent)): Effects-of-calling:java.util.Collection:iterator
    //#unanalyzed(void actionPerformed(ActionEvent)): Effects-of-calling:java.lang.Boolean:booleanValue
    //#unanalyzed(void actionPerformed(ActionEvent)): Effects-of-calling:com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionsListPanel:firePropertyChange
    //#unanalyzed(void actionPerformed(ActionEvent)): Effects-of-calling:java.util.List:remove
    //#unanalyzed(void actionPerformed(ActionEvent)): Effects-of-calling:java.util.Map:remove
    //#unanalyzed(void actionPerformed(ActionEvent)): Effects-of-calling:conditionRemoved
    //#test_vector(void actionPerformed(ActionEvent)): java.lang.Object:equals(...)@155: {0}, {1}
    //#test_vector(void actionPerformed(ActionEvent)): java.lang.Object:equals(...)@157: {0}, {1}
            fireConditionRemoved(this);
        } else if (e.getSource().equals(editButton)) {
            editPanel.setVisible(editButton.getModel().isSelected());
    //#ActionConditionDisplayPanel.java:158: Warning: method not available - call not analyzed
    //#    call on void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionEditorPanel:setVisible(bool)
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel
    //#    method: void actionPerformed(ActionEvent)
    //#    unanalyzed callee: void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionEditorPanel:setVisible(bool)
        }
    }
    //#ActionConditionDisplayPanel.java:160: end of method: void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel.actionPerformed(ActionEvent)

    /**
     * Adds an ActionConditionRemovalListener to the listener list.
     *
     * @param listener Listener to add
     */
    public void addConditionListener(final ActionConditionRemovalListener listener) {
        if (listener == null) {
    //#ActionConditionDisplayPanel.java:168: method: void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel.addConditionListener(ActionConditionRemovalListener)
    //#input(void addConditionListener(ActionConditionRemovalListener)): listener
    //#input(void addConditionListener(ActionConditionRemovalListener)): this
    //#input(void addConditionListener(ActionConditionRemovalListener)): this.listeners
    //#pre[3] (void addConditionListener(ActionConditionRemovalListener)): (soft) this.listeners != null
    //#test_vector(void addConditionListener(ActionConditionRemovalListener)): listener: Inverse{null}, Addr_Set{null}
            return;
        }

        listeners.add(ActionConditionRemovalListener.class, listener);
    //#ActionConditionDisplayPanel.java:172: Warning: method not available - call not analyzed
    //#    call on void com.dmdirc.util.ListenerList:add(Class, Object)
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel
    //#    method: void addConditionListener(ActionConditionRemovalListener)
    //#    unanalyzed callee: void com.dmdirc.util.ListenerList:add(Class, Object)
    }
    //#ActionConditionDisplayPanel.java:173: end of method: void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel.addConditionListener(ActionConditionRemovalListener)

    /**
     * Removes an ActionConditionRemovalListener from the listener list.
     *
     * @param listener Listener to remove
     */
    public void removeConditionListener(final ActionConditionRemovalListener listener) {
        listeners.remove(ActionConditionRemovalListener.class, listener);
    //#ActionConditionDisplayPanel.java:181: method: void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel.removeConditionListener(ActionConditionRemovalListener)
    //#ActionConditionDisplayPanel.java:181: Warning: method not available - call not analyzed
    //#    call on void com.dmdirc.util.ListenerList:remove(Class, Object)
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel
    //#    method: void removeConditionListener(ActionConditionRemovalListener)
    //#    unanalyzed callee: void com.dmdirc.util.ListenerList:remove(Class, Object)
    //#input(void removeConditionListener(ActionConditionRemovalListener)): listener
    //#input(void removeConditionListener(ActionConditionRemovalListener)): this
    //#input(void removeConditionListener(ActionConditionRemovalListener)): this.listeners
    //#pre[3] (void removeConditionListener(ActionConditionRemovalListener)): this.listeners != null
    }
    //#ActionConditionDisplayPanel.java:182: end of method: void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel.removeConditionListener(ActionConditionRemovalListener)

    /**
     * Fired when the an action condition is removed.
     *
     * @param condition Removed condition
     */
    protected void fireConditionRemoved(final ActionConditionDisplayPanel condition) {
        for (ActionConditionRemovalListener listener : listeners.get(ActionConditionRemovalListener.class)) {
    //#ActionConditionDisplayPanel.java:190: method: void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel.fireConditionRemoved(ActionConditionDisplayPanel)
    //#ActionConditionDisplayPanel.java:190: Warning: method not available - call not analyzed
    //#    call on List com.dmdirc.util.ListenerList:get(Class)
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel
    //#    method: void fireConditionRemoved(ActionConditionDisplayPanel)
    //#    unanalyzed callee: List com.dmdirc.util.ListenerList:get(Class)
    //#input(void fireConditionRemoved(ActionConditionDisplayPanel)): "."._tainted
    //#input(void fireConditionRemoved(ActionConditionDisplayPanel)): "; "._tainted
    //#input(void fireConditionRemoved(ActionConditionDisplayPanel)): "body { font-family: "._tainted
    //#input(void fireConditionRemoved(ActionConditionDisplayPanel)): "font-size: "._tainted
    //#input(void fireConditionRemoved(ActionConditionDisplayPanel)): "pt; }"._tainted
    //#input(void fireConditionRemoved(ActionConditionDisplayPanel)): __Descendant_Table[com/dmdirc/addons/ui_swing/dialogs/actioneditor/ActionConditionDisplayPanel]
    //#input(void fireConditionRemoved(ActionConditionDisplayPanel)): __Descendant_Table[others]
    //#input(void fireConditionRemoved(ActionConditionDisplayPanel)): com/dmdirc/addons/ui_swing/components/text/TextLabel.__Descendant_Table[com/dmdirc/addons/ui_swing/components/text/TextLabel]
    //#input(void fireConditionRemoved(ActionConditionDisplayPanel)): com/dmdirc/addons/ui_swing/components/text/TextLabel.__Descendant_Table[others]
    //#input(void fireConditionRemoved(ActionConditionDisplayPanel)): com/dmdirc/addons/ui_swing/components/text/TextLabel.__Dispatch_Table.getDocument()Ljavax/swing/text/StyledDocument;
    //#input(void fireConditionRemoved(ActionConditionDisplayPanel)): com/dmdirc/addons/ui_swing/components/text/TextLabel.__Dispatch_Table.setText(Ljava/lang/String;)V
    //#input(void fireConditionRemoved(ActionConditionDisplayPanel)): com/dmdirc/addons/ui_swing/dialogs/actioneditor/ActionConditionRemovalListener.__Descendant_Table[com/dmdirc/addons/ui_swing/dialogs/actioneditor/ActionConditionRemovalListener]
    //#input(void fireConditionRemoved(ActionConditionDisplayPanel)): com/dmdirc/addons/ui_swing/dialogs/actioneditor/ActionConditionRemovalListener.__Descendant_Table[com/dmdirc/addons/ui_swing/dialogs/actioneditor/ActionConditionsListPanel]
    //#input(void fireConditionRemoved(ActionConditionDisplayPanel)): com/dmdirc/addons/ui_swing/dialogs/actioneditor/ActionConditionRemovalListener.__Descendant_Table[others]
    //#input(void fireConditionRemoved(ActionConditionDisplayPanel)): com/dmdirc/addons/ui_swing/dialogs/actioneditor/ActionConditionRemovalListener.__Dispatch_Table.conditionRemoved(Lcom/dmdirc/addons/ui_swing/dialogs/actioneditor/ActionConditionDisplayPanel;)V
    //#input(void fireConditionRemoved(ActionConditionDisplayPanel)): com/dmdirc/addons/ui_swing/dialogs/actioneditor/ActionConditionsListPanel.__Descendant_Table[com/dmdirc/addons/ui_swing/dialogs/actioneditor/ActionConditionsListPanel]
    //#input(void fireConditionRemoved(ActionConditionDisplayPanel)): com/dmdirc/addons/ui_swing/dialogs/actioneditor/ActionConditionsListPanel.__Descendant_Table[others]
    //#input(void fireConditionRemoved(ActionConditionDisplayPanel)): com/dmdirc/addons/ui_swing/dialogs/actioneditor/ActionConditionsListPanel.__Dispatch_Table.conditionRemoved(Lcom/dmdirc/addons/ui_swing/dialogs/actioneditor/ActionConditionDisplayPanel;)V
    //#input(void fireConditionRemoved(ActionConditionDisplayPanel)): com/dmdirc/addons/ui_swing/dialogs/actioneditor/ActionConditionsListPanel.__Dispatch_Table.propertyChange(Ljava/beans/PropertyChangeEvent;)V
    //#input(void fireConditionRemoved(ActionConditionDisplayPanel)): condition
    //#input(void fireConditionRemoved(ActionConditionDisplayPanel)): this
    //#input(void fireConditionRemoved(ActionConditionDisplayPanel)): this.listeners
    //#pre[3] (void fireConditionRemoved(ActionConditionDisplayPanel)): this.listeners != null
    //#presumption(void fireConditionRemoved(ActionConditionDisplayPanel)): com.dmdirc.util.ListenerList:get(...)@190 != null
    //#presumption(void fireConditionRemoved(ActionConditionDisplayPanel)): java.util.Iterator:next(...).__Tag@190 == com/dmdirc/addons/ui_swing/dialogs/actioneditor/ActionConditionsListPanel
    //#presumption(void fireConditionRemoved(ActionConditionDisplayPanel)): java.util.Iterator:next(...)@190 != null
    //#presumption(void fireConditionRemoved(ActionConditionDisplayPanel)): listener.conditions@190 != null
    //#presumption(void fireConditionRemoved(ActionConditionDisplayPanel)): listener.validations@190 != null
    //#unanalyzed(void fireConditionRemoved(ActionConditionDisplayPanel)): Effects-of-calling:javax.swing.JTextPane:getDocument
    //#unanalyzed(void fireConditionRemoved(ActionConditionDisplayPanel)): Effects-of-calling:javax.swing.JTextPane:setText
    //#unanalyzed(void fireConditionRemoved(ActionConditionDisplayPanel)): Effects-of-calling:java.lang.String:isEmpty
    //#unanalyzed(void fireConditionRemoved(ActionConditionDisplayPanel)): Effects-of-calling:java.lang.String:length
    //#unanalyzed(void fireConditionRemoved(ActionConditionDisplayPanel)): Effects-of-calling:javax.swing.text.StyledDocument:setParagraphAttributes
    //#unanalyzed(void fireConditionRemoved(ActionConditionDisplayPanel)): Effects-of-calling:javax.swing.text.DefaultStyledDocument
    //#unanalyzed(void fireConditionRemoved(ActionConditionDisplayPanel)): Effects-of-calling:javax.swing.JTextPane
    //#unanalyzed(void fireConditionRemoved(ActionConditionDisplayPanel)): Effects-of-calling:javax.swing.text.html.HTMLEditorKit
    //#unanalyzed(void fireConditionRemoved(ActionConditionDisplayPanel)): Effects-of-calling:com.dmdirc.addons.ui_swing.components.text.TextLabel:setEditorKit
    //#unanalyzed(void fireConditionRemoved(ActionConditionDisplayPanel)): Effects-of-calling:javax.swing.plaf.basic.BasicTextPaneUI
    //#unanalyzed(void fireConditionRemoved(ActionConditionDisplayPanel)): Effects-of-calling:com.dmdirc.addons.ui_swing.components.text.TextLabel:setUI
    //#unanalyzed(void fireConditionRemoved(ActionConditionDisplayPanel)): Effects-of-calling:javax.swing.UIManager:getFont
    //#unanalyzed(void fireConditionRemoved(ActionConditionDisplayPanel)): Effects-of-calling:javax.swing.text.html.HTMLDocument:getStyleSheet
    //#unanalyzed(void fireConditionRemoved(ActionConditionDisplayPanel)): Effects-of-calling:java.lang.StringBuilder
    //#unanalyzed(void fireConditionRemoved(ActionConditionDisplayPanel)): Effects-of-calling:java.lang.StringBuilder:append
    //#unanalyzed(void fireConditionRemoved(ActionConditionDisplayPanel)): Effects-of-calling:java.awt.Font:getFamily
    //#unanalyzed(void fireConditionRemoved(ActionConditionDisplayPanel)): Effects-of-calling:java.awt.Font:getSize
    //#unanalyzed(void fireConditionRemoved(ActionConditionDisplayPanel)): Effects-of-calling:java.lang.StringBuilder:toString
    //#unanalyzed(void fireConditionRemoved(ActionConditionDisplayPanel)): Effects-of-calling:javax.swing.text.html.StyleSheet:addRule
    //#unanalyzed(void fireConditionRemoved(ActionConditionDisplayPanel)): Effects-of-calling:com.dmdirc.addons.ui_swing.components.text.TextLabel:setOpaque
    //#unanalyzed(void fireConditionRemoved(ActionConditionDisplayPanel)): Effects-of-calling:com.dmdirc.addons.ui_swing.components.text.TextLabel:setEditable
    //#unanalyzed(void fireConditionRemoved(ActionConditionDisplayPanel)): Effects-of-calling:com.dmdirc.addons.ui_swing.components.text.TextLabel:setHighlighter
    //#unanalyzed(void fireConditionRemoved(ActionConditionDisplayPanel)): Effects-of-calling:java.awt.Insets
    //#unanalyzed(void fireConditionRemoved(ActionConditionDisplayPanel)): Effects-of-calling:com.dmdirc.addons.ui_swing.components.text.TextLabel:setMargin
    //#unanalyzed(void fireConditionRemoved(ActionConditionDisplayPanel)): Effects-of-calling:javax.swing.text.SimpleAttributeSet
    //#unanalyzed(void fireConditionRemoved(ActionConditionDisplayPanel)): Effects-of-calling:javax.swing.text.StyleConstants:setAlignment
    //#unanalyzed(void fireConditionRemoved(ActionConditionDisplayPanel)): Effects-of-calling:com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionsListPanel:setVisible
    //#unanalyzed(void fireConditionRemoved(ActionConditionDisplayPanel)): Effects-of-calling:com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionsListPanel:removeAll
    //#unanalyzed(void fireConditionRemoved(ActionConditionDisplayPanel)): Effects-of-calling:com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionsListPanel:add
    //#unanalyzed(void fireConditionRemoved(ActionConditionDisplayPanel)): Effects-of-calling:com.dmdirc.actions.interfaces.ActionType:getType
    //#unanalyzed(void fireConditionRemoved(ActionConditionDisplayPanel)): Effects-of-calling:com.dmdirc.actions.interfaces.ActionMetaType:getArgNames
    //#unanalyzed(void fireConditionRemoved(ActionConditionDisplayPanel)): Effects-of-calling:java.util.List:iterator
    //#unanalyzed(void fireConditionRemoved(ActionConditionDisplayPanel)): Effects-of-calling:java.util.Iterator:hasNext
    //#unanalyzed(void fireConditionRemoved(ActionConditionDisplayPanel)): Effects-of-calling:java.util.Iterator:next
    //#unanalyzed(void fireConditionRemoved(ActionConditionDisplayPanel)): Effects-of-calling:javax.swing.JLabel
    //#unanalyzed(void fireConditionRemoved(ActionConditionDisplayPanel)): Effects-of-calling:java.lang.Throwable:__curr_excep_obj
    //#unanalyzed(void fireConditionRemoved(ActionConditionDisplayPanel)): Effects-of-calling:java.beans.PropertyChangeEvent:getSource
    //#unanalyzed(void fireConditionRemoved(ActionConditionDisplayPanel)): Effects-of-calling:java.beans.PropertyChangeEvent:getNewValue
    //#unanalyzed(void fireConditionRemoved(ActionConditionDisplayPanel)): Effects-of-calling:java.util.Map:put
    //#unanalyzed(void fireConditionRemoved(ActionConditionDisplayPanel)): Effects-of-calling:java.util.Map:values
    //#unanalyzed(void fireConditionRemoved(ActionConditionDisplayPanel)): Effects-of-calling:java.util.Collection:iterator
    //#unanalyzed(void fireConditionRemoved(ActionConditionDisplayPanel)): Effects-of-calling:java.lang.Boolean:booleanValue
    //#unanalyzed(void fireConditionRemoved(ActionConditionDisplayPanel)): Effects-of-calling:com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionsListPanel:firePropertyChange
    //#unanalyzed(void fireConditionRemoved(ActionConditionDisplayPanel)): Effects-of-calling:java.util.List:remove
    //#unanalyzed(void fireConditionRemoved(ActionConditionDisplayPanel)): Effects-of-calling:java.util.Map:remove
    //#test_vector(void fireConditionRemoved(ActionConditionDisplayPanel)): java.util.Iterator:hasNext(...)@190: {0}, {1}
            listener.conditionRemoved(condition);
        }
    }
    //#ActionConditionDisplayPanel.java:193: end of method: void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel.fireConditionRemoved(ActionConditionDisplayPanel)

    /** {@inheritDoc} */
    @Override
    public void setEnabled(final boolean enabled) {
        editPanel.setEnabled(enabled);
    //#ActionConditionDisplayPanel.java:198: method: void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel.setEnabled(bool)
    //#input(void setEnabled(bool)): com/dmdirc/addons/ui_swing/dialogs/actioneditor/ActionConditionEditorPanel.__Descendant_Table[com/dmdirc/addons/ui_swing/dialogs/actioneditor/ActionConditionEditorPanel]
    //#input(void setEnabled(bool)): com/dmdirc/addons/ui_swing/dialogs/actioneditor/ActionConditionEditorPanel.__Descendant_Table[others]
    //#input(void setEnabled(bool)): com/dmdirc/addons/ui_swing/dialogs/actioneditor/ActionConditionEditorPanel.__Dispatch_Table.setEnabled(Z)V
    //#input(void setEnabled(bool)): enabled
    //#input(void setEnabled(bool)): this
    //#input(void setEnabled(bool)): this.deleteButton
    //#input(void setEnabled(bool)): this.editButton
    //#input(void setEnabled(bool)): this.editPanel
    //#input(void setEnabled(bool)): this.editPanel.__Tag
    //#input(void setEnabled(bool)): this.editPanel.arguments
    //#input(void setEnabled(bool)): this.editPanel.comparisons
    //#input(void setEnabled(bool)): this.editPanel.components
    //#input(void setEnabled(bool)): this.editPanel.target
    //#pre[3] (void setEnabled(bool)): this.deleteButton != null
    //#pre[4] (void setEnabled(bool)): this.editButton != null
    //#pre[5] (void setEnabled(bool)): this.editPanel != null
    //#pre[6] (void setEnabled(bool)): this.editPanel.__Tag == com/dmdirc/addons/ui_swing/dialogs/actioneditor/ActionConditionEditorPanel
    //#pre[7] (void setEnabled(bool)): this.editPanel.arguments != null
    //#pre[8] (void setEnabled(bool)): this.editPanel.comparisons != null
    //#pre[9] (void setEnabled(bool)): this.editPanel.components != null
    //#pre[10] (void setEnabled(bool)): this.editPanel.target != null
    //#unanalyzed(void setEnabled(bool)): Effects-of-calling:javax.swing.JComboBox:setEnabled
    //#unanalyzed(void setEnabled(bool)): Effects-of-calling:javax.swing.JTextField:setEnabled
    //#unanalyzed(void setEnabled(bool)): Effects-of-calling:javax.swing.JComboBox:getSelectedIndex
    //#unanalyzed(void setEnabled(bool)): Effects-of-calling:javax.swing.JPanel:setEnabled
        editButton.setEnabled(enabled);
        deleteButton.setEnabled(enabled);
    //#ActionConditionDisplayPanel.java:200: Warning: method not available - call not analyzed
    //#    call on void com.dmdirc.addons.ui_swing.components.ImageButton:setEnabled(bool)
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel
    //#    method: void setEnabled(bool)
    //#    unanalyzed callee: void com.dmdirc.addons.ui_swing.components.ImageButton:setEnabled(bool)
    }
    //#ActionConditionDisplayPanel.java:201: end of method: void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel.setEnabled(bool)

    /**
     * Updates the condition sentence.
     * 
     * @return Updated sentence
     */
    private String updateSentence() {
        if (trigger == null) {
    //#ActionConditionDisplayPanel.java:209: method: String com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel.updateSentence()
    //#input(String updateSentence()): " "._tainted
    //#input(String updateSentence()): " '"._tainted
    //#input(String updateSentence()): " ..."._tainted
    //#input(String updateSentence()): "'"._tainted
    //#input(String updateSentence()): "'s "._tainted
    //#input(String updateSentence()): "The "._tainted
    //#input(String updateSentence()): this
    //#input(String updateSentence()): this.condition
    //#input(String updateSentence()): this.trigger
    //#output(String updateSentence()): java.lang.StringBuilder:toString(...)._tainted
    //#output(String updateSentence()): return_value
    //#new obj(String updateSentence()): java.lang.StringBuilder:toString(...)
    //#pre[3] (String updateSentence()): init'ed(this.trigger)
    //#pre[2] (String updateSentence()): (soft) this.condition != null
    //#presumption(String updateSentence()): com.dmdirc.actions.ActionCondition:getArg(...)@215 >= 0
    //#presumption(String updateSentence()): com.dmdirc.actions.ActionCondition:getArg(...)@215 < com.dmdirc.actions.interfaces.ActionMetaType:getArgNames(...).length@215
    //#presumption(String updateSentence()): com.dmdirc.actions.ActionCondition:getComparison(...)@229 != null
    //#presumption(String updateSentence()): com.dmdirc.actions.ActionCondition:getComponent(...)@222 != null
    //#presumption(String updateSentence()): com.dmdirc.actions.interfaces.ActionMetaType:getArgNames(...).length@215 >= 1
    //#presumption(String updateSentence()): com.dmdirc.actions.interfaces.ActionMetaType:getArgNames(...)@215 != null
    //#presumption(String updateSentence()): com.dmdirc.actions.interfaces.ActionType:getType(...)@215 != null
    //#post(String updateSentence()): java.lang.StringBuilder:toString(...)._tainted == 0
    //#post(String updateSentence()): return_value in Addr_Set{&java.lang.StringBuilder:toString(...),&java.lang.StringBuilder:toString(...),&java.lang.StringBuilder:toString(...),&java.lang.StringBuilder:toString(...),&java.lang.StringBuilder:toString(...),&"..."}
    //#test_vector(String updateSentence()): this.trigger: Inverse{null}, Addr_Set{null}
    //#test_vector(String updateSentence()): com.dmdirc.actions.ActionCondition:getArg(...)@214: {-1}, {-2_147_483_648..-2, 0..4_294_967_295}
    //#test_vector(String updateSentence()): com.dmdirc.actions.ActionCondition:getComparison(...)@228: Addr_Set{null}, Inverse{null}
    //#test_vector(String updateSentence()): com.dmdirc.actions.ActionCondition:getComponent(...)@221: Addr_Set{null}, Inverse{null}
    //#test_vector(String updateSentence()): com.dmdirc.actions.ActionCondition:getTarget(...)@235: Addr_Set{null}, Inverse{null}
            return "...";
        } else {
            final StringBuilder sb = new StringBuilder();
            sb.append("The ");
            if (condition.getArg() != -1) {
    //#ActionConditionDisplayPanel.java:214: Warning: method not available - call not analyzed
    //#    call on int com.dmdirc.actions.ActionCondition:getArg()
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel
    //#    method: String updateSentence()
    //#    unanalyzed callee: int com.dmdirc.actions.ActionCondition:getArg()
                sb.append(trigger.getType().getArgNames()[condition.getArg()]);
    //#ActionConditionDisplayPanel.java:215: Warning: method not available - call not analyzed
    //#    call on ActionMetaType com.dmdirc.actions.interfaces.ActionType:getType()
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel
    //#    method: String updateSentence()
    //#    unanalyzed callee: ActionMetaType com.dmdirc.actions.interfaces.ActionType:getType()
    //#ActionConditionDisplayPanel.java:215: Warning: method not available - call not analyzed
    //#    call on String[] com.dmdirc.actions.interfaces.ActionMetaType:getArgNames()
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel
    //#    method: String updateSentence()
    //#    unanalyzed callee: String[] com.dmdirc.actions.interfaces.ActionMetaType:getArgNames()
    //#ActionConditionDisplayPanel.java:215: Warning: method not available - call not analyzed
    //#    call on int com.dmdirc.actions.ActionCondition:getArg()
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel
    //#    method: String updateSentence()
    //#    unanalyzed callee: int com.dmdirc.actions.ActionCondition:getArg()
            } else {
                sb.append(" ...");
                return sb.toString();
            }
            sb.append("'s ");
            if (condition.getComponent() != null) {
    //#ActionConditionDisplayPanel.java:221: Warning: method not available - call not analyzed
    //#    call on ActionComponent com.dmdirc.actions.ActionCondition:getComponent()
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel
    //#    method: String updateSentence()
    //#    unanalyzed callee: ActionComponent com.dmdirc.actions.ActionCondition:getComponent()
                sb.append(condition.getComponent().getName());
    //#ActionConditionDisplayPanel.java:222: Warning: method not available - call not analyzed
    //#    call on ActionComponent com.dmdirc.actions.ActionCondition:getComponent()
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel
    //#    method: String updateSentence()
    //#    unanalyzed callee: ActionComponent com.dmdirc.actions.ActionCondition:getComponent()
    //#ActionConditionDisplayPanel.java:222: Warning: method not available - call not analyzed
    //#    call on String com.dmdirc.actions.interfaces.ActionComponent:getName()
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel
    //#    method: String updateSentence()
    //#    unanalyzed callee: String com.dmdirc.actions.interfaces.ActionComponent:getName()
            } else {
                sb.append(" ...");
                return sb.toString();
            }
            sb.append(" ");
            if (condition.getComparison() != null) {
    //#ActionConditionDisplayPanel.java:228: Warning: method not available - call not analyzed
    //#    call on ActionComparison com.dmdirc.actions.ActionCondition:getComparison()
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel
    //#    method: String updateSentence()
    //#    unanalyzed callee: ActionComparison com.dmdirc.actions.ActionCondition:getComparison()
                sb.append(condition.getComparison().getName());
    //#ActionConditionDisplayPanel.java:229: Warning: method not available - call not analyzed
    //#    call on ActionComparison com.dmdirc.actions.ActionCondition:getComparison()
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel
    //#    method: String updateSentence()
    //#    unanalyzed callee: ActionComparison com.dmdirc.actions.ActionCondition:getComparison()
    //#ActionConditionDisplayPanel.java:229: Warning: method not available - call not analyzed
    //#    call on String com.dmdirc.actions.interfaces.ActionComparison:getName()
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel
    //#    method: String updateSentence()
    //#    unanalyzed callee: String com.dmdirc.actions.interfaces.ActionComparison:getName()
            } else {
                sb.append(" ...");
                return sb.toString();
            }
            sb.append(" '");
            if (condition.getTarget() != null) {
    //#ActionConditionDisplayPanel.java:235: Warning: method not available - call not analyzed
    //#    call on String com.dmdirc.actions.ActionCondition:getTarget()
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel
    //#    method: String updateSentence()
    //#    unanalyzed callee: String com.dmdirc.actions.ActionCondition:getTarget()
                sb.append(condition.getTarget());
    //#ActionConditionDisplayPanel.java:236: Warning: method not available - call not analyzed
    //#    call on String com.dmdirc.actions.ActionCondition:getTarget()
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel
    //#    method: String updateSentence()
    //#    unanalyzed callee: String com.dmdirc.actions.ActionCondition:getTarget()
            } else {
                sb.append(" ...");
                return sb.toString();
            }
            sb.append("'");
            return sb.toString();
    //#ActionConditionDisplayPanel.java:242: end of method: String com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel.updateSentence()
        }
    }

    /**
     * Returns the action condition represented by this panel.
     * 
     * @return Action condition
     */
    public ActionCondition getCondition() {
        return condition;
    //#ActionConditionDisplayPanel.java:252: method: ActionCondition com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel.getCondition()
    //#input(ActionCondition getCondition()): this
    //#input(ActionCondition getCondition()): this.condition
    //#output(ActionCondition getCondition()): return_value
    //#pre[2] (ActionCondition getCondition()): init'ed(this.condition)
    //#post(ActionCondition getCondition()): return_value == this.condition
    //#post(ActionCondition getCondition()): init'ed(return_value)
    //#ActionConditionDisplayPanel.java:252: end of method: ActionCondition com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel.getCondition()
    }

    /** {@inheritDoc} */
    @Override
    public void propertyChange(final PropertyChangeEvent evt) {
        if ("edit".equals(evt.getPropertyName())) {
    //#ActionConditionDisplayPanel.java:258: method: void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel.propertyChange(PropertyChangeEvent)
    //#input(void propertyChange(PropertyChangeEvent)): " "._tainted
    //#input(void propertyChange(PropertyChangeEvent)): " '"._tainted
    //#input(void propertyChange(PropertyChangeEvent)): " ..."._tainted
    //#input(void propertyChange(PropertyChangeEvent)): "'"._tainted
    //#input(void propertyChange(PropertyChangeEvent)): "'s "._tainted
    //#input(void propertyChange(PropertyChangeEvent)): "The "._tainted
    //#input(void propertyChange(PropertyChangeEvent)): com/dmdirc/addons/ui_swing/components/text/TextLabel.__Descendant_Table[com/dmdirc/addons/ui_swing/components/text/TextLabel]
    //#input(void propertyChange(PropertyChangeEvent)): com/dmdirc/addons/ui_swing/components/text/TextLabel.__Descendant_Table[others]
    //#input(void propertyChange(PropertyChangeEvent)): com/dmdirc/addons/ui_swing/components/text/TextLabel.__Dispatch_Table.getDocument()Ljavax/swing/text/StyledDocument;
    //#input(void propertyChange(PropertyChangeEvent)): com/dmdirc/addons/ui_swing/components/text/TextLabel.__Dispatch_Table.setText(Ljava/lang/String;)V
    //#input(void propertyChange(PropertyChangeEvent)): evt
    //#input(void propertyChange(PropertyChangeEvent)): this
    //#input(void propertyChange(PropertyChangeEvent)): this.condition
    //#input(void propertyChange(PropertyChangeEvent)): this.label
    //#input(void propertyChange(PropertyChangeEvent)): this.label.__Tag
    //#input(void propertyChange(PropertyChangeEvent)): this.label.sas
    //#input(void propertyChange(PropertyChangeEvent)): this.trigger
    //#pre[1] (void propertyChange(PropertyChangeEvent)): evt != null
    //#pre[3] (void propertyChange(PropertyChangeEvent)): (soft) this.condition != null
    //#pre[4] (void propertyChange(PropertyChangeEvent)): (soft) this.label != null
    //#pre[5] (void propertyChange(PropertyChangeEvent)): (soft) this.label.__Tag == com/dmdirc/addons/ui_swing/components/text/TextLabel
    //#pre[6] (void propertyChange(PropertyChangeEvent)): (soft) init'ed(this.label.sas)
    //#pre[7] (void propertyChange(PropertyChangeEvent)): (soft) init'ed(this.trigger)
    //#unanalyzed(void propertyChange(PropertyChangeEvent)): Effects-of-calling:javax.swing.JTextPane:getDocument
    //#unanalyzed(void propertyChange(PropertyChangeEvent)): Effects-of-calling:javax.swing.JTextPane:setText
    //#unanalyzed(void propertyChange(PropertyChangeEvent)): Effects-of-calling:java.lang.String:isEmpty
    //#unanalyzed(void propertyChange(PropertyChangeEvent)): Effects-of-calling:java.lang.String:length
    //#unanalyzed(void propertyChange(PropertyChangeEvent)): Effects-of-calling:javax.swing.text.StyledDocument:setParagraphAttributes
    //#unanalyzed(void propertyChange(PropertyChangeEvent)): Effects-of-calling:com.dmdirc.actions.ActionCondition:getArg
    //#unanalyzed(void propertyChange(PropertyChangeEvent)): Effects-of-calling:com.dmdirc.actions.ActionCondition:getComponent
    //#unanalyzed(void propertyChange(PropertyChangeEvent)): Effects-of-calling:com.dmdirc.actions.ActionCondition:getComparison
    //#unanalyzed(void propertyChange(PropertyChangeEvent)): Effects-of-calling:com.dmdirc.actions.ActionCondition:getTarget
    //#unanalyzed(void propertyChange(PropertyChangeEvent)): Effects-of-calling:java.lang.StringBuilder
    //#unanalyzed(void propertyChange(PropertyChangeEvent)): Effects-of-calling:java.lang.StringBuilder:append
    //#unanalyzed(void propertyChange(PropertyChangeEvent)): Effects-of-calling:com.dmdirc.actions.interfaces.ActionType:getType
    //#unanalyzed(void propertyChange(PropertyChangeEvent)): Effects-of-calling:com.dmdirc.actions.interfaces.ActionMetaType:getArgNames
    //#unanalyzed(void propertyChange(PropertyChangeEvent)): Effects-of-calling:com.dmdirc.actions.interfaces.ActionComponent:getName
    //#unanalyzed(void propertyChange(PropertyChangeEvent)): Effects-of-calling:com.dmdirc.actions.interfaces.ActionComparison:getName
    //#unanalyzed(void propertyChange(PropertyChangeEvent)): Effects-of-calling:java.lang.StringBuilder:toString
    //#test_vector(void propertyChange(PropertyChangeEvent)): java.lang.String:equals(...)@258: {0}, {1}
            label.setText(updateSentence());
    //#ActionConditionDisplayPanel.java:259: Warning: unused assignment in callee
    //#    Unused assignment to (java.lang.StringBuilder:toString(...)._tainted, java.lang.StringBuilder:toString(...)._tainted, java.lang.StringBuilder:toString(...)._tainted, java.lang.StringBuilder:toString(...)._tainted, java.lang.StringBuilder:toString(...)._tainted) in updateSentence
    //#    severity: LOW
    //#    class: com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel
    //#    method: void propertyChange(PropertyChangeEvent)
        } else {
            firePropertyChange("validationResult", evt.getOldValue(),
    //#ActionConditionDisplayPanel.java:261: Warning: method not available - call not analyzed
    //#    call on void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel:firePropertyChange(String, Object, Object)
    //#    severity: INFORMATIONAL
    //#    class: com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel
    //#    method: void propertyChange(PropertyChangeEvent)
    //#    unanalyzed callee: void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel:firePropertyChange(String, Object, Object)
                    evt.getNewValue());
        }
    }
    //#ActionConditionDisplayPanel.java:264: end of method: void com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel.propertyChange(PropertyChangeEvent)
    
    /**
     * Checks if this editor panel has errored.
     * 
     * @return true iif the content it valid
     */
    public boolean checkError() {
        return editPanel.checkError();
    //#ActionConditionDisplayPanel.java:272: method: bool com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel.checkError()
    //#input(bool checkError()): com/dmdirc/addons/ui_swing/dialogs/actioneditor/ActionConditionEditorPanel.__Descendant_Table[com/dmdirc/addons/ui_swing/dialogs/actioneditor/ActionConditionEditorPanel]
    //#input(bool checkError()): com/dmdirc/addons/ui_swing/dialogs/actioneditor/ActionConditionEditorPanel.__Descendant_Table[others]
    //#input(bool checkError()): com/dmdirc/addons/ui_swing/dialogs/actioneditor/ActionConditionEditorPanel.__Dispatch_Table.checkError()Z
    //#input(bool checkError()): this
    //#input(bool checkError()): this.editPanel
    //#input(bool checkError()): this.editPanel.__Tag
    //#input(bool checkError()): this.editPanel.target
    //#output(bool checkError()): return_value
    //#pre[2] (bool checkError()): this.editPanel != null
    //#pre[3] (bool checkError()): this.editPanel.__Tag == com/dmdirc/addons/ui_swing/dialogs/actioneditor/ActionConditionEditorPanel
    //#pre[4] (bool checkError()): this.editPanel.target != null
    //#post(bool checkError()): init'ed(return_value)
    //#unanalyzed(bool checkError()): Effects-of-calling:javax.swing.JTextField:isEnabled
    //#ActionConditionDisplayPanel.java:272: end of method: bool com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel.checkError()
    }
}
    //#output(com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel__static_init): __Descendant_Table[com/dmdirc/addons/ui_swing/dialogs/actioneditor/ActionConditionDisplayPanel]
    //#output(com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel__static_init): __Dispatch_Table.actionPerformed(Ljava/awt/event/ActionEvent;)V
    //#output(com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel__static_init): __Dispatch_Table.addConditionListener(Lcom/dmdirc/addons/ui_swing/dialogs/actioneditor/ActionConditionRemovalListener;)V
    //#output(com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel__static_init): __Dispatch_Table.addListeners()V
    //#output(com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel__static_init): __Dispatch_Table.checkError()Z
    //#output(com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel__static_init): __Dispatch_Table.fireConditionRemoved(Lcom/dmdirc/addons/ui_swing/dialogs/actioneditor/ActionConditionDisplayPanel;)V
    //#output(com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel__static_init): __Dispatch_Table.getCondition()Lcom/dmdirc/actions/ActionCondition;
    //#output(com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel__static_init): __Dispatch_Table.initComponents()V
    //#output(com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel__static_init): __Dispatch_Table.layoutComponents()V
    //#output(com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel__static_init): __Dispatch_Table.propertyChange(Ljava/beans/PropertyChangeEvent;)V
    //#output(com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel__static_init): __Dispatch_Table.removeConditionListener(Lcom/dmdirc/addons/ui_swing/dialogs/actioneditor/ActionConditionRemovalListener;)V
    //#output(com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel__static_init): __Dispatch_Table.setEnabled(Z)V
    //#output(com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel__static_init): __Dispatch_Table.setTrigger(Lcom/dmdirc/actions/interfaces/ActionType;)V
    //#output(com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel__static_init): __Dispatch_Table.updateSentence()Ljava/lang/String;
    //#post(com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel__static_init): __Descendant_Table[com/dmdirc/addons/ui_swing/dialogs/actioneditor/ActionConditionDisplayPanel] == &__Dispatch_Table
    //#post(com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel__static_init): __Dispatch_Table.actionPerformed(Ljava/awt/event/ActionEvent;)V == &actionPerformed
    //#post(com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel__static_init): __Dispatch_Table.addConditionListener(Lcom/dmdirc/addons/ui_swing/dialogs/actioneditor/ActionConditionRemovalListener;)V == &addConditionListener
    //#post(com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel__static_init): __Dispatch_Table.addListeners()V == &addListeners
    //#post(com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel__static_init): __Dispatch_Table.checkError()Z == &checkError
    //#post(com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel__static_init): __Dispatch_Table.fireConditionRemoved(Lcom/dmdirc/addons/ui_swing/dialogs/actioneditor/ActionConditionDisplayPanel;)V == &fireConditionRemoved
    //#post(com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel__static_init): __Dispatch_Table.getCondition()Lcom/dmdirc/actions/ActionCondition; == &getCondition
    //#post(com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel__static_init): __Dispatch_Table.initComponents()V == &initComponents
    //#post(com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel__static_init): __Dispatch_Table.layoutComponents()V == &layoutComponents
    //#post(com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel__static_init): __Dispatch_Table.propertyChange(Ljava/beans/PropertyChangeEvent;)V == &propertyChange
    //#post(com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel__static_init): __Dispatch_Table.removeConditionListener(Lcom/dmdirc/addons/ui_swing/dialogs/actioneditor/ActionConditionRemovalListener;)V == &removeConditionListener
    //#post(com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel__static_init): __Dispatch_Table.setEnabled(Z)V == &setEnabled
    //#post(com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel__static_init): __Dispatch_Table.setTrigger(Lcom/dmdirc/actions/interfaces/ActionType;)V == &setTrigger
    //#post(com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel__static_init): __Dispatch_Table.updateSentence()Ljava/lang/String; == &updateSentence
    //#ActionConditionDisplayPanel.java:: end of method: com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel.com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel__static_init
    //#ActionConditionDisplayPanel.java:: end of class: com.dmdirc.addons.ui_swing.dialogs.actioneditor.ActionConditionDisplayPanel
