
net.sourceforge.squirrel_sql.client.session.mainpanel.CancelPanelCtrl Maven / Gradle / Ivy
package net.sourceforge.squirrel_sql.client.session.mainpanel;
import net.sourceforge.squirrel_sql.fw.gui.GUIUtils;
import net.sourceforge.squirrel_sql.fw.util.StringManager;
import net.sourceforge.squirrel_sql.fw.util.StringManagerFactory;
import javax.swing.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
class CancelPanelCtrl
{
private static final StringManager s_stringMgr = StringManagerFactory.getStringManager(CancelPanelCtrl.class);
private CancelPanel _panel;
/**
* Total number of queries that will be executed.
*/
private int _queryCount;
/**
* Number of the query currently being executed (starts from 1).
*/
private int _currentQueryIndex = 0;
private CancelPanelListener _listener;
CancelPanelCtrl(CancelPanelListener listener)
{
_listener = listener;
_panel = new CancelPanel();
_panel.cancelBtn.addActionListener(new ActionListener()
{
@Override
public void actionPerformed(ActionEvent e)
{
onCancel();
}
});
}
void incCurrentQueryIndex()
{
++_currentQueryIndex;
}
void setSQL(final String sql)
{
Runnable runnable = new Runnable()
{
public void run()
{
// i18n[SQLResultExecuterPanel.currentSQLLabel={0} of {1} - {2}]
String label =
s_stringMgr.getString("SQLResultExecuterPanel.currentSQLLabel",
new Object[]{String.valueOf(_currentQueryIndex),
String.valueOf(_queryCount),
sql});
_panel.sqlLbl.setText(label);
}
};
GUIUtils.processOnSwingEventThread(runnable);
}
void setStatusLabel(final String text)
{
Runnable runnable = new Runnable()
{
public void run()
{
_panel.currentStatusLbl.setText(text);
}
};
GUIUtils.processOnSwingEventThread(runnable);
}
void setQueryCount(int value)
{
_queryCount = value;
_currentQueryIndex = 0;
}
int getTotalCount()
{
return _queryCount;
}
int getCurrentQueryIndex()
{
return _currentQueryIndex;
}
private void onCancel()
{
_listener.cancelRequested();
}
CancelPanel getPanel()
{
return _panel;
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy