Revision: 6627
http://squirrel-sql.svn.sourceforge.net/squirrel-sql/?rev=6627&view=rev
Author: gerdwagner
Date: 2012-05-22 19:30:54 +0000 (Tue, 22 May 2012)
Log Message:
-----------
SQL Execution: The execution panel that is displayed while an SQL statement is being processed is now closeable.
Before the panel is closed the cancel action gets executed.
Modified Paths:
--------------
trunk/sql12/app/src/main/java/net/sourceforge/squirrel_sql/client/resources/SquirrelResources.java
trunk/sql12/app/src/main/java/net/sourceforge/squirrel_sql/client/session/mainpanel/CancelPanel.java
trunk/sql12/app/src/main/java/net/sourceforge/squirrel_sql/client/session/mainpanel/CancelPanelCtrl.java
trunk/sql12/app/src/main/java/net/sourceforge/squirrel_sql/client/session/mainpanel/CancelPanelListener.java
trunk/sql12/app/src/main/java/net/sourceforge/squirrel_sql/client/session/mainpanel/SQLExecutionHandler.java
trunk/sql12/app/src/main/java/net/sourceforge/squirrel_sql/client/session/mainpanel/SQLResultExecuterPanel.java
trunk/sql12/app/src/main/resources/net/sourceforge/squirrel_sql/client/resources/squirrel.properties
trunk/sql12/app/src/main/resources/net/sourceforge/squirrel_sql/client/session/mainpanel/I18NStrings.properties
trunk/sql12/doc/src/main/resources/changes.txt
Modified: trunk/sql12/app/src/main/java/net/sourceforge/squirrel_sql/client/resources/SquirrelResources.java
===================================================================
--- trunk/sql12/app/src/main/java/net/sourceforge/squirrel_sql/client/resources/SquirrelResources.java 2012-05-16 23:33:33 UTC (rev 6626)
+++ trunk/sql12/app/src/main/java/net/sourceforge/squirrel_sql/client/resources/SquirrelResources.java 2012-05-22 19:30:54 UTC (rev 6627)
@@ -80,6 +80,7 @@
String PREV_SCALE = "prevScale";
String NEXT_SCALE = "nextScale";
String RERUN = "rerun";
+ String CLOSE = "close";
}
public SquirrelResources(String rsrcBundleBaseName)
Modified: trunk/sql12/app/src/main/java/net/sourceforge/squirrel_sql/client/session/mainpanel/CancelPanel.java
===================================================================
--- trunk/sql12/app/src/main/java/net/sourceforge/squirrel_sql/client/session/mainpanel/CancelPanel.java 2012-05-16 23:33:33 UTC (rev 6626)
+++ trunk/sql12/app/src/main/java/net/sourceforge/squirrel_sql/client/session/mainpanel/CancelPanel.java 2012-05-22 19:30:54 UTC (rev 6627)
@@ -1,5 +1,7 @@
package net.sourceforge.squirrel_sql.client.session.mainpanel;
+import net.sourceforge.squirrel_sql.client.resources.SquirrelResources;
+import net.sourceforge.squirrel_sql.client.session.ISession;
import net.sourceforge.squirrel_sql.fw.util.StringManager;
import net.sourceforge.squirrel_sql.fw.util.StringManagerFactory;
@@ -13,12 +15,37 @@
JLabel sqlLbl = new JLabel();
JLabel currentStatusLbl = new JLabel();
JButton cancelBtn;
+ JButton closeBtn;
- public CancelPanel()
+ public CancelPanel(ISession session)
{
- super(new GridBagLayout());
+ super(new BorderLayout());
+ add(createNorthPanel(session), BorderLayout.NORTH);
+ add(createCenterPanel(), BorderLayout.CENTER);
+ }
+
+ private JPanel createNorthPanel(ISession session)
+ {
+ JPanel ret = new JPanel(new BorderLayout());
+
+ ImageIcon icon = session.getApplication().getResources().getIcon(SquirrelResources.IImageNames.CLOSE);
+ closeBtn = new JButton(icon);
+ closeBtn.setBorderPainted(false);
+ closeBtn.setMargin(new Insets(0, 0, 0, 0));
+
+
+
+ ret.add(closeBtn, BorderLayout.EAST);
+ ret.add(new JPanel(), BorderLayout.CENTER);
+ return ret;
+ }
+
+ private JPanel createCenterPanel()
+ {
+ JPanel ret = new JPanel(new GridBagLayout());
+
// i18n[SQLResultExecuterPanel.cancelButtonLabel=Cancel]
String label = s_stringMgr.getString("SQLResultExecuterPanel.cancelButtonLabel");
cancelBtn = new JButton(label);
@@ -33,11 +60,11 @@
// i18n[SQLResultExecuterPanel.sqlLabel=SQL:]
label = s_stringMgr.getString("SQLResultExecuterPanel.sqlLabel");
- add(new JLabel(label), gbc);
+ ret.add(new JLabel(label), gbc);
gbc.weightx = 1;
++gbc.gridx;
- add(sqlLbl, gbc);
+ ret.add(sqlLbl, gbc);
gbc.weightx = 0;
gbc.gridx = 0;
@@ -45,14 +72,16 @@
// i18n[SQLResultExecuterPanel.statusLabel=Status:]
label =
s_stringMgr.getString("SQLResultExecuterPanel.statusLabel");
- add(new JLabel(label), gbc);
+ ret.add(new JLabel(label), gbc);
++gbc.gridx;
- add(currentStatusLbl, gbc);
+ ret.add(currentStatusLbl, gbc);
gbc.gridx = 0;
++gbc.gridy;
gbc.fill = GridBagConstraints.NONE;
- add(cancelBtn, gbc);
+ ret.add(cancelBtn, gbc);
+
+ return ret;
}
}
Modified: trunk/sql12/app/src/main/java/net/sourceforge/squirrel_sql/client/session/mainpanel/CancelPanelCtrl.java
===================================================================
--- trunk/sql12/app/src/main/java/net/sourceforge/squirrel_sql/client/session/mainpanel/CancelPanelCtrl.java 2012-05-16 23:33:33 UTC (rev 6626)
+++ trunk/sql12/app/src/main/java/net/sourceforge/squirrel_sql/client/session/mainpanel/CancelPanelCtrl.java 2012-05-22 19:30:54 UTC (rev 6627)
@@ -1,10 +1,10 @@
package net.sourceforge.squirrel_sql.client.session.mainpanel;
+import net.sourceforge.squirrel_sql.client.session.ISession;
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;
@@ -26,10 +26,10 @@
private int _currentQueryIndex = 0;
private CancelPanelListener _listener;
- CancelPanelCtrl(CancelPanelListener listener)
+ CancelPanelCtrl(CancelPanelListener listener, ISession session)
{
_listener = listener;
- _panel = new CancelPanel();
+ _panel = new CancelPanel(session);
_panel.cancelBtn.addActionListener(new ActionListener()
{
@@ -40,7 +40,16 @@
}
});
+ _panel.closeBtn.addActionListener(new ActionListener()
+ {
+ @Override
+ public void actionPerformed(ActionEvent e)
+ {
+ onClose();
+ }
+ });
+
}
void incCurrentQueryIndex()
@@ -104,7 +113,14 @@
_listener.cancelRequested();
}
+ private void onClose()
+ {
+ _panel.cancelBtn.doClick();
+ _listener.closeRquested();
+ }
+
+
CancelPanel getPanel()
{
return _panel;
Modified: trunk/sql12/app/src/main/java/net/sourceforge/squirrel_sql/client/session/mainpanel/CancelPanelListener.java
===================================================================
--- trunk/sql12/app/src/main/java/net/sourceforge/squirrel_sql/client/session/mainpanel/CancelPanelListener.java 2012-05-16 23:33:33 UTC (rev 6626)
+++ trunk/sql12/app/src/main/java/net/sourceforge/squirrel_sql/client/session/mainpanel/CancelPanelListener.java 2012-05-22 19:30:54 UTC (rev 6627)
@@ -3,4 +3,6 @@
public interface CancelPanelListener
{
void cancelRequested();
+
+ void closeRquested();
}
Modified: trunk/sql12/app/src/main/java/net/sourceforge/squirrel_sql/client/session/mainpanel/SQLExecutionHandler.java
===================================================================
--- trunk/sql12/app/src/main/java/net/sourceforge/squirrel_sql/client/session/mainpanel/SQLExecutionHandler.java 2012-05-16 23:33:33 UTC (rev 6626)
+++ trunk/sql12/app/src/main/java/net/sourceforge/squirrel_sql/client/session/mainpanel/SQLExecutionHandler.java 2012-05-22 19:30:54 UTC (rev 6627)
@@ -87,14 +87,22 @@
_resultTabToReplace = resultTabToReplace;
- _cancelPanelCtrl = new CancelPanelCtrl(new CancelPanelListener()
+ CancelPanelListener listener = new CancelPanelListener()
{
@Override
public void cancelRequested()
{
onCancelRequested();
}
- });
+
+ @Override
+ public void closeRquested()
+ {
+ _executionHandlerListener.removeCancelPanel(_cancelPanelCtrl, null);
+ }
+ };
+
+ _cancelPanelCtrl = new CancelPanelCtrl(listener, session);
_executionHandlerListener.setCancelPanel(_cancelPanelCtrl);
Modified: trunk/sql12/app/src/main/java/net/sourceforge/squirrel_sql/client/session/mainpanel/SQLResultExecuterPanel.java
===================================================================
--- trunk/sql12/app/src/main/java/net/sourceforge/squirrel_sql/client/session/mainpanel/SQLResultExecuterPanel.java 2012-05-16 23:33:33 UTC (rev 6626)
+++ trunk/sql12/app/src/main/java/net/sourceforge/squirrel_sql/client/session/mainpanel/SQLResultExecuterPanel.java 2012-05-22 19:30:54 UTC (rev 6627)
@@ -501,17 +501,22 @@
private void closeTab(Component tab)
{
- if(tab instanceof ResultTab)
+ if (tab instanceof ErrorPanel)
{
+ _tabbedExecutionsPanel.remove(tab);
+ }
+ else if (tab instanceof ResultTab)
+ {
closeResultTab((ResultTab) tab);
- }else{
- // Closing Tabs, where we not have any special things to do. e.g. ErrorPanle, CancelPanel.
- _tabbedExecutionsPanel.remove(tab);
}
+ else if (tab instanceof CancelPanel)
+ {
+ ((CancelPanel)tab).closeBtn.doClick();
+ }
}
- /**
+ /**
* Close the passed <TT>ResultTab</TT>. This is done by clearing
* all data from the tab, removing it from the tabbed panel
* and adding it to the list of available tabs.
Modified: trunk/sql12/app/src/main/resources/net/sourceforge/squirrel_sql/client/resources/squirrel.properties
===================================================================
--- trunk/sql12/app/src/main/resources/net/sourceforge/squirrel_sql/client/resources/squirrel.properties 2012-05-16 23:33:33 UTC (rev 6626)
+++ trunk/sql12/app/src/main/resources/net/sourceforge/squirrel_sql/client/resources/squirrel.properties 2012-05-22 19:30:54 UTC (rev 6627)
@@ -66,6 +66,7 @@
nextScale.image=next.png
rerun.image=eclipse/active/run_exc.gif
+close.image=jc/close.gif
########
Modified: trunk/sql12/app/src/main/resources/net/sourceforge/squirrel_sql/client/session/mainpanel/I18NStrings.properties
===================================================================
--- trunk/sql12/app/src/main/resources/net/sourceforge/squirrel_sql/client/session/mainpanel/I18NStrings.properties 2012-05-16 23:33:33 UTC (rev 6626)
+++ trunk/sql12/app/src/main/resources/net/sourceforge/squirrel_sql/client/session/mainpanel/I18NStrings.properties 2012-05-22 19:30:54 UTC (rev 6627)
@@ -41,6 +41,8 @@
SQLResultExecuterPanel.title=Results
SQLResultExecuterPanel.toggleSticky=Toggle sticky
+#SQLResultExecuterPanel.cannotCloseExecutingPanel=Cannot close tab in execution. Try to cancel the execution instead.
+
SQLTab.hint=Execute SQL statements
SQLTab.title=SQL
Modified: trunk/sql12/doc/src/main/resources/changes.txt
===================================================================
--- trunk/sql12/doc/src/main/resources/changes.txt 2012-05-16 23:33:33 UTC (rev 6626)
+++ trunk/sql12/doc/src/main/resources/changes.txt 2012-05-22 19:30:54 UTC (rev 6627)
@@ -9,6 +9,9 @@
Enhancements:
+SQL Execution: The execution panel that is displayed while an SQL statement is being processed is now closeable.
+ Before the panel is closed the cancel action gets executed.
+
Created new Multisource Plugin:
- Allows SQuirreL to support native multiple source queries where one SQL query spans multiple sources.
- The plugin supports standard SQL including joins, group by, aggregation, LIMIT, and ordering where tables may come from one or more sources.
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|