/
codebase/
codebase/area/
codebase/doc/
codebase/etc/
codebase/src/net/sourceforge/pain/data/trigger/
codebase/src/net/sourceforge/pain/logic/
codebase/src/net/sourceforge/pain/logic/affect/
codebase/src/net/sourceforge/pain/logic/event/
codebase/src/net/sourceforge/pain/logic/event/deploy/
codebase/src/net/sourceforge/pain/logic/event/guitool/
codebase/src/net/sourceforge/pain/logic/event/guitool/event/
codebase/src/net/sourceforge/pain/logic/fn/util/
codebase/src/net/sourceforge/pain/logic/trigger/
codebase/src/net/sourceforge/pain/logic/trigger/impl/
codebase/src/net/sourceforge/pain/network/console/
codebase/src/net/sourceforge/pain/network/console/telnet/
codebase/src/net/sourceforge/pain/network/guitool/
codebase/src/net/sourceforge/pain/plugin/
codebase/src/net/sourceforge/pain/plugin/command/
codebase/src/net/sourceforge/pain/plugin/reset/
codebase/src/net/sourceforge/pain/plugin/shutdown/
codebase/src/net/sourceforge/pain/plugin/social/
codebase/src/net/sourceforge/pain/util/
db/doc/javadoc/resources/
db/src/net/sourceforge/pain/util/
gui/
gui/lib/
gui/src/net/sourceforge/pain/tools/guitool/dbbrowse/
gui/src/net/sourceforge/pain/tools/guitool/dialog/
gui/src/net/sourceforge/pain/tools/guitool/menu/
gui/src/net/sourceforge/pain/tools/guitool/resources/
gui/src/net/sourceforge/pain/tools/guitool/resources/images/
gui/src/net/sourceforge/pain/tools/guitool/resources/images/explorer/
tests/
tests/src/
tests/src/net/sourceforge/pain/db/data/
package net.sourceforge.pain.tools.guitool.action.admin;

import net.sourceforge.pain.tools.guitool.*;
import net.sourceforge.pain.tools.guitool.action.*;
import net.sourceforge.pain.tools.guitool.dialog.*;

import javax.swing.*;
import javax.swing.event.*;
import java.awt.*;

public class AccountOptionsExplorerAction implements GTAction {

    private static JEditorPane instance;

    public void executeAction() {
        try {
            GuiTool.appFrame.workspacePanel.setActiveComponent(getComponent());
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

    private Component getComponent() throws Exception {
        if (instance == null) {
            instance = HtmlComponentRegistry.get(getClass());
            instance.addHyperlinkListener(new HyperlinkListener() {
                public void hyperlinkUpdate(HyperlinkEvent ev) {
                    if (ev.getEventType() != HyperlinkEvent.EventType.ACTIVATED) {
                        return;
                    }
                    try {
                        GlobalPerformer.ensureConnected();
                        showChangePassDialog();
                    } catch (IllegalStateException e) {
                    }
                }
            });
        }
        return instance;
    }

    private void showChangePassDialog() {
        GuiTool.log("change pass");
        new ChangePassPerformer().changePass();
    }

}