package net.sourceforge.squirrel_sql.client.gui.desktopcontainer;
import net.sourceforge.squirrel_sql.client.IApplication;
import net.sourceforge.squirrel_sql.client.session.ISession;
import net.sourceforge.squirrel_sql.client.session.SessionUtils;
import javax.swing.*;
import javax.swing.event.InternalFrameEvent;
import java.awt.*;
public abstract class SessionDialogWidget extends DialogWidget implements ISessionWidget
{
private ISession _session;
public SessionDialogWidget(String title, boolean resizeable, boolean closeable, boolean maximizeable, boolean iconifiable, ISession session)
{
super(title, resizeable, closeable, maximizeable, iconifiable, session.getApplication(), SessionUtils.getOwningFrame(session));
_session = session;
setupSheet();
}
public SessionDialogWidget(String title, boolean resizeable, ISession session)
{
this(title, resizeable, true, false, false, session);
}
public ISession getSession()
{
return _session;
}
public void closeFrame(boolean withEvents)
{
if (!_session.isfinishedLoading())
{
return;
}
if (withEvents)
{
fireWidgetClosing();
}
dispose();
if (withEvents)
{
fireWidgetClosed();
}
}
public boolean hasSQLPanelAPI()
{
return false;
}
private final void setupSheet()
{
_session.getApplication().getWindowManager().registerSessionSheet(this);
}
}