isql-alpha Mailing List for iSQL-Viewer
Brought to you by:
mkobold
You can subscribe to this list here.
| 2005 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
(1) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2006 |
Jan
|
Feb
|
Mar
(8) |
Apr
(5) |
May
(4) |
Jun
(9) |
Jul
(3) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
| 2007 |
Jan
|
Feb
|
Mar
(14) |
Apr
(9) |
May
(7) |
Jun
(22) |
Jul
|
Aug
(4) |
Sep
|
Oct
|
Nov
|
Dec
|
|
From: <mk...@us...> - 2007-08-08 01:14:32
|
Revision: 86
http://isql.svn.sourceforge.net/isql/?rev=86&view=rev
Author: mkobold
Date: 2007-08-07 18:14:34 -0700 (Tue, 07 Aug 2007)
Log Message:
-----------
* merged with the 3.0.2
Modified Paths:
--------------
isql-core/branches/3.1.0-development/.classpath
isql-core/branches/3.1.0-development/.externalToolBuilders/External Resource Copier.launch
isql-core/branches/3.1.0-development/.project
isql-core/branches/3.1.0-development/src/org/isqlviewer/sql/ResultSetRenderer.java
isql-core/branches/3.1.0-development/src/org/isqlviewer/util/IsqlToolkit.java
isql-core/branches/3.1.0-development/src/org/isqlviewer/util/NullResultSetViewer.java
isql-core/branches/3.1.0-development/src/org/isqlviewer/util/QueryExecutor.java
Added Paths:
-----------
isql-core/branches/3.1.0-development/src/org/isqlviewer/sql/QueryMetadata.java
Modified: isql-core/branches/3.1.0-development/.classpath
===================================================================
--- isql-core/branches/3.1.0-development/.classpath 2007-08-08 01:14:18 UTC (rev 85)
+++ isql-core/branches/3.1.0-development/.classpath 2007-08-08 01:14:34 UTC (rev 86)
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="src" path="src"/>
- <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
<classpathentry kind="src" path="test"/>
- <classpathentry exported="true" kind="var" path="JUNIT_HOME/junit.jar" sourcepath="/JUNIT_SRC_HOME/junitsrc.zip"/>
<classpathentry exported="true" kind="lib" path="lib/log4j.jar"/>
<classpathentry exported="true" kind="lib" path="lib/derby.jar"/>
+ <classpathentry exported="true" kind="con" path="org.eclipse.jdt.junit.JUNIT_CONTAINER/3"/>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
<classpathentry kind="output" path="bin"/>
</classpath>
Modified: isql-core/branches/3.1.0-development/.externalToolBuilders/External Resource Copier.launch
===================================================================
--- isql-core/branches/3.1.0-development/.externalToolBuilders/External Resource Copier.launch 2007-08-08 01:14:18 UTC (rev 85)
+++ isql-core/branches/3.1.0-development/.externalToolBuilders/External Resource Copier.launch 2007-08-08 01:14:34 UTC (rev 86)
@@ -1,15 +1,22 @@
<?xml version="1.0" encoding="UTF-8"?>
<launchConfiguration type="org.eclipse.ant.AntBuilderLaunchConfigurationType">
-<booleanAttribute key="org.eclipse.debug.ui.ATTR_LAUNCH_IN_BACKGROUND" value="false"/>
-<booleanAttribute key="org.eclipse.ant.ui.DEFAULT_VM_INSTALL" value="false"/>
-<booleanAttribute key="org.eclipse.jdt.launching.DEFAULT_CLASSPATH" value="true"/>
<stringAttribute key="org.eclipse.ant.ui.ATTR_ANT_AFTER_CLEAN_TARGETS" value="eclipse-setup,"/>
-<stringAttribute key="org.eclipse.ui.externaltools.ATTR_RUN_BUILD_KINDS" value="full,"/>
+<stringAttribute key="org.eclipse.ant.ui.ATTR_ANT_MANUAL_TARGETS" value="eclipse-setup,"/>
<booleanAttribute key="org.eclipse.ant.ui.ATTR_TARGETS_UPDATED" value="true"/>
-<stringAttribute key="org.eclipse.ui.externaltools.ATTR_WORKING_DIRECTORY" value="${workspace_loc:/isql-core}"/>
+<booleanAttribute key="org.eclipse.ant.ui.DEFAULT_VM_INSTALL" value="false"/>
<booleanAttribute key="org.eclipse.ant.uiSET_INPUTHANDLER" value="false"/>
+<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS">
+<listEntry value="/isql-core/build.xml"/>
+</listAttribute>
+<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES">
+<listEntry value="1"/>
+</listAttribute>
<booleanAttribute key="org.eclipse.debug.core.appendEnvironmentVariables" value="true"/>
-<booleanAttribute key="org.eclipse.ui.externaltools.ATTR_TRIGGERS_CONFIGURED" value="true"/>
+<booleanAttribute key="org.eclipse.debug.ui.ATTR_LAUNCH_IN_BACKGROUND" value="false"/>
<stringAttribute key="org.eclipse.jdt.launching.CLASSPATH_PROVIDER" value="org.eclipse.ant.ui.AntClasspathProvider"/>
+<booleanAttribute key="org.eclipse.jdt.launching.DEFAULT_CLASSPATH" value="true"/>
<stringAttribute key="org.eclipse.ui.externaltools.ATTR_LOCATION" value="${workspace_loc:/isql-core/build.xml}"/>
+<stringAttribute key="org.eclipse.ui.externaltools.ATTR_RUN_BUILD_KINDS" value="full,incremental,"/>
+<booleanAttribute key="org.eclipse.ui.externaltools.ATTR_TRIGGERS_CONFIGURED" value="true"/>
+<stringAttribute key="org.eclipse.ui.externaltools.ATTR_WORKING_DIRECTORY" value="${workspace_loc:/isql-core}"/>
</launchConfiguration>
Modified: isql-core/branches/3.1.0-development/.project
===================================================================
--- isql-core/branches/3.1.0-development/.project 2007-08-08 01:14:18 UTC (rev 85)
+++ isql-core/branches/3.1.0-development/.project 2007-08-08 01:14:34 UTC (rev 86)
@@ -12,7 +12,7 @@
</buildCommand>
<buildCommand>
<name>org.eclipse.ui.externaltools.ExternalToolBuilder</name>
- <triggers>full,</triggers>
+ <triggers>full,incremental,</triggers>
<arguments>
<dictionary>
<key>LaunchConfigHandle</key>
Copied: isql-core/branches/3.1.0-development/src/org/isqlviewer/sql/QueryMetadata.java (from rev 84, isql-core/branches/3.0.0-maintenance/src/org/isqlviewer/sql/QueryMetadata.java)
===================================================================
--- isql-core/branches/3.1.0-development/src/org/isqlviewer/sql/QueryMetadata.java (rev 0)
+++ isql-core/branches/3.1.0-development/src/org/isqlviewer/sql/QueryMetadata.java 2007-08-08 01:14:34 UTC (rev 86)
@@ -0,0 +1,87 @@
+/*
+ * The contents of this file are subject to the Mozilla Public License
+ * Version 1.1 (the "License"); you may not use this file except in
+ * compliance with the License. You may obtain a copy of the License at
+ * http://www.mozilla.org/MPL/
+ *
+ * Software distributed under the License is distributed on an "AS IS"
+ * basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the
+ * License for the specific language governing rights and limitations
+ * under the License.
+ *
+ * The Original Code is iSQL-Viewer, A Mutli-Platform Database Tool.
+ *
+ * The Initial Developer of the Original Code is iSQL-Viewer, A Mutli-Platform Database Tool.
+ * Portions created by Mark A. Kobold are Copyright (C) 2000-2007. All Rights Reserved.
+ *
+ * Contributor(s):
+ * Mark A. Kobold [mkobold <at> isqlviewer <dot> com].
+ *
+ * If you didn't download this code from the following link, you should check
+ * if you aren't using an obsolete version: http://www.isqlviewer.com
+ */
+package org.isqlviewer.sql;
+
+import org.isqlviewer.history.HistoricalCommand;
+
+/**
+ * Simple meta-data object for collecting query execution metrics within iSQL-Viewer.
+ * <p>
+ *
+ * @author Mark A. Kobold <mkobold at isqlviewer dot com>
+ * @version 1.0
+ */
+public class QueryMetadata {
+
+ private long userTime = 0;
+ private String service = null;
+ private HistoricalCommand command = null;
+
+ /**
+ * @return the command
+ */
+ public HistoricalCommand getCommand() {
+
+ return command;
+ }
+
+ /**
+ * @param command the command to set
+ */
+ public void setCommand(HistoricalCommand command) {
+
+ this.command = command;
+ }
+
+ /**
+ * @return the service
+ */
+ public String getService() {
+
+ return service;
+ }
+
+ /**
+ * @param service the service to set
+ */
+ public void setService(String service) {
+
+ this.service = service;
+ }
+
+ /**
+ * @return the userTime
+ */
+ public long getUserTime() {
+
+ return userTime;
+ }
+
+ /**
+ * @param userTime the userTime to set
+ */
+ public void setUserTime(long userTime) {
+
+ this.userTime = userTime;
+ }
+}
Modified: isql-core/branches/3.1.0-development/src/org/isqlviewer/sql/ResultSetRenderer.java
===================================================================
--- isql-core/branches/3.1.0-development/src/org/isqlviewer/sql/ResultSetRenderer.java 2007-08-08 01:14:18 UTC (rev 85)
+++ isql-core/branches/3.1.0-development/src/org/isqlviewer/sql/ResultSetRenderer.java 2007-08-08 01:14:34 UTC (rev 86)
@@ -177,7 +177,7 @@
*
* @param stmtID unqiue identifier for the statement that was cancelled.
*/
- public void finalizeStatement(String stmtID);
+ public void finalizeStatement(String stmtID, QueryMetadata metaData);
/**
* Statement warnings from a resultset can be delegated here.
Modified: isql-core/branches/3.1.0-development/src/org/isqlviewer/util/IsqlToolkit.java
===================================================================
--- isql-core/branches/3.1.0-development/src/org/isqlviewer/util/IsqlToolkit.java 2007-08-08 01:14:18 UTC (rev 85)
+++ isql-core/branches/3.1.0-development/src/org/isqlviewer/util/IsqlToolkit.java 2007-08-08 01:14:34 UTC (rev 86)
@@ -69,7 +69,7 @@
* Build number or patch level version of the iSQL-Viewer code base.
* <p>
*/
- public static final int VERSION_BUILD = 0;
+ public static final int VERSION_BUILD = 2;
/**
* System property for determining if the iSQL-Viewer MRJ Adapter is installed.
*/
Modified: isql-core/branches/3.1.0-development/src/org/isqlviewer/util/NullResultSetViewer.java
===================================================================
--- isql-core/branches/3.1.0-development/src/org/isqlviewer/util/NullResultSetViewer.java 2007-08-08 01:14:18 UTC (rev 85)
+++ isql-core/branches/3.1.0-development/src/org/isqlviewer/util/NullResultSetViewer.java 2007-08-08 01:14:34 UTC (rev 86)
@@ -27,6 +27,7 @@
import java.sql.SQLWarning;
import java.sql.Statement;
+import org.isqlviewer.sql.QueryMetadata;
import org.isqlviewer.sql.ResultSetRenderer;
class NullResultSetViewer implements ResultSetRenderer {
@@ -39,7 +40,7 @@
}
- public void finalizeStatement(String stmtID) {
+ public void finalizeStatement(String stmtID, QueryMetadata metaData) {
}
Modified: isql-core/branches/3.1.0-development/src/org/isqlviewer/util/QueryExecutor.java
===================================================================
--- isql-core/branches/3.1.0-development/src/org/isqlviewer/util/QueryExecutor.java 2007-08-08 01:14:18 UTC (rev 85)
+++ isql-core/branches/3.1.0-development/src/org/isqlviewer/util/QueryExecutor.java 2007-08-08 01:14:34 UTC (rev 86)
@@ -46,6 +46,7 @@
import org.isqlviewer.sql.ConnectionProfile;
import org.isqlviewer.sql.JdbcService;
import org.isqlviewer.sql.JdbcUtilities;
+import org.isqlviewer.sql.QueryMetadata;
import org.isqlviewer.sql.ResultSetRenderer;
/**
@@ -68,6 +69,7 @@
private ResultSetRenderer renderer = null;
private String statement = null;
private JdbcService service = null;
+ private boolean logHistory = true;
public QueryExecutor(JdbcService service, ResultSetRenderer renderer, String statement) {
@@ -80,6 +82,11 @@
this.statement = statement;
}
+ public void setLogHistory(boolean logHistory) {
+
+ this.logHistory = logHistory;
+ }
+
public void run() {
if (service == null) {
@@ -111,13 +118,17 @@
boolean logBatch = statements.length > 1;
for (int i = 0; i < statements.length; i++) {
String userQuery = statements[i].trim();
+ QueryMetadata metadata = new QueryMetadata();
+ metadata.setService(service.getName());
if (userQuery.length() > 0) {
try {
renderer.initialize();
String substitutedQuery = doVariableSubstitutions(userQuery);
String nativeSQL = getNativeSql(connection, substitutedQuery);
Date queryTime = new Date();
+ long userTime = System.currentTimeMillis();
doQuery(connection, localID, nativeSQL);
+ metadata.setUserTime(System.currentTimeMillis() - userTime);
if (logBatch && commandLogger != null) {
HistoricalCommand subCommand = new HistoricalCommand();
subCommand.setCommandText(userQuery);
@@ -126,8 +137,9 @@
subCommand.setTransactionId(executionHistory.getTransactionId());
getTypeForQuery(subCommand, userQuery);
executionHistory.addSubcommand(subCommand);
+ metadata.setCommand(subCommand);
} else {
- logCommandHistory(commandLogger, userQuery, queryTime);
+ metadata.setCommand(logCommandHistory(commandLogger, userQuery, queryTime));
}
} catch (ParseException e) {
error("ERR:", e);
@@ -141,12 +153,14 @@
} catch (Exception e) {
error("ERR:", e);
} finally {
- renderer.finalizeStatement(localID);
+ renderer.finalizeStatement(localID, metadata);
}
}
}
- if (commandLogger != null && logBatch) {
- commandLogger.logCommand(executionHistory);
+ if (logHistory) {
+ if (commandLogger != null && logBatch) {
+ commandLogger.logCommand(executionHistory);
+ }
}
} finally {
info(messages.getMessage("queryexecutor.finished"));
@@ -155,16 +169,18 @@
}
- private void logCommandHistory(JdbcCommandLogger commandLogger, String userQuery, Date queryTime) {
+ private HistoricalCommand logCommandHistory(JdbcCommandLogger commandLogger, String userQuery, Date queryTime) {
- if (commandLogger != null) {
+ if (logHistory && commandLogger != null) {
HistoricalCommand command = new HistoricalCommand();
command.setCommandText(userQuery);
command.setQueryTime(queryTime);
command.setService(service.getName());
getTypeForQuery(command, userQuery);
commandLogger.logCommand(command);
+ return command;
}
+ return null;
}
private void getTypeForQuery(HistoricalCommand command, String userQuery) {
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <mk...@us...> - 2007-08-08 01:14:18
|
Revision: 85
http://isql.svn.sourceforge.net/isql/?rev=85&view=rev
Author: mkobold
Date: 2007-08-07 18:14:18 -0700 (Tue, 07 Aug 2007)
Log Message:
-----------
* merged with the 3.0.2
Modified Paths:
--------------
isql-swing/branches/3.1.0-development/src/org/isqlviewer/model/JdbcSchemaTreeModel.java
isql-swing/branches/3.1.0-development/src/org/isqlviewer/swing/EnhancedTable.java
isql-swing/branches/3.1.0-development/src/org/isqlviewer/ui/DataGrid.java
isql-swing/branches/3.1.0-development/src/org/isqlviewer/ui/JdbcWorkbench.java
isql-swing/branches/3.1.0-development/src/org/isqlviewer/ui/ResourceBundle.properties
isql-swing/branches/3.1.0-development/src/org/isqlviewer/ui/SqlCommandEditor.java
isql-swing/branches/3.1.0-development/src/org/isqlviewer/ui/SqlCommandMouseAdapter.java
isql-swing/branches/3.1.0-development/src/org/isqlviewer/ui/TabbedResultsetRenderer.java
isql-swing/branches/3.1.0-development/src/org/isqlviewer/ui/dnd/SchemaNodeRenderer.java
isql-swing/branches/3.1.0-development/src/org/isqlviewer/ui/dnd/TextComponentDropTarget.java
Property Changed:
----------------
isql-swing/branches/3.1.0-development/
Property changes on: isql-swing/branches/3.1.0-development
___________________________________________________________________
Name: svn:ignore
-
bin
classes
+ bin
classes
isql-swing.jar
isql-swing-src.zip
Modified: isql-swing/branches/3.1.0-development/src/org/isqlviewer/model/JdbcSchemaTreeModel.java
===================================================================
--- isql-swing/branches/3.1.0-development/src/org/isqlviewer/model/JdbcSchemaTreeModel.java 2007-08-07 23:56:25 UTC (rev 84)
+++ isql-swing/branches/3.1.0-development/src/org/isqlviewer/model/JdbcSchemaTreeModel.java 2007-08-08 01:14:18 UTC (rev 85)
@@ -27,11 +27,15 @@
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Types;
+import java.text.MessageFormat;
+import java.util.Arrays;
import java.util.Collection;
import java.util.TreeSet;
import javax.swing.tree.DefaultTreeModel;
+import org.apache.log4j.Logger;
+import org.isqlviewer.util.IsqlToolkit;
import org.isqlviewer.util.LocalMessages;
/**
@@ -47,6 +51,8 @@
private static final String RESOURCE_BUNDLE = "org.isqlviewer.model.ResourceBundle";
private static final LocalMessages messages = new LocalMessages(RESOURCE_BUNDLE);
+ private Logger logger = IsqlToolkit.getApplicationLogger();
+
private DatabaseMetaData jdbcMetadata = null;
private String catalog = null;
private String schema = null;
@@ -236,6 +242,7 @@
protected void initializeDefaultNodes(boolean showDataTypes, boolean showTableTypes, boolean showStoredProcedures) {
String nodeText = null;
+
if (showDataTypes) {
SchemaNode schemaNode = null;
@@ -271,7 +278,7 @@
tableTypes.add(resultSet.getString("TABLE_TYPE"));
}
} catch (SQLException sqle) {
- // TODO Do Something here...
+ logger.debug("DatabaseMetadata.getTableTypes();", sqle);
} finally {
if (resultSet != null) {
try {
@@ -292,6 +299,12 @@
insertNodeInto(tabletypeNode, rootNode, 0);
}
} catch (SQLException sqle) {
+ Object[] arguments = new Object[3];
+ arguments[0] = catalog;
+ arguments[1] = schema;
+ arguments[2] = Arrays.toString(typeSet);
+ String message = MessageFormat.format("DatabaseMetadata.getTables({0}, {1}, null, {2})", arguments);
+ logger.debug(message, sqle);
} finally {
if (resultSet != null) {
try {
@@ -319,6 +332,11 @@
SchemaNode procedureNode = new SchemaNode(nodeText, false, SchemaNodeType.PROCEDURE_SET);
procedureNode.setHasError(true);
insertNodeInto(procedureNode, rootNode, 0);
+ Object[] arguments = new Object[2];
+ arguments[0] = catalog;
+ arguments[1] = schema;
+ String message = MessageFormat.format("DatabaseMetadata.getProcedures({0}, {1}, null)", arguments);
+ logger.debug(message, sqle);
} finally {
if (resultSet != null) {
try {
@@ -351,6 +369,12 @@
}
} catch (SQLException sqle) {
tabletypeNode.setHasError(true);
+ Object[] arguments = new Object[3];
+ arguments[0] = catalog;
+ arguments[1] = schema;
+ arguments[2] = tableType;
+ String message = MessageFormat.format("DatabaseMetadata.getTables({0}, {1}, null, {2})", arguments);
+ logger.debug(message, sqle);
} finally {
if (resultSet != null) {
try {
@@ -375,6 +399,7 @@
insertNodeInto(tableNode, typesetNode, 0);
}
} catch (SQLException sqle) {
+ logger.debug("DatabaseMetadata.getTypeInfo()", sqle);
typesetNode.setHasError(true);
} finally {
if (resultSet != null) {
@@ -400,6 +425,12 @@
insertNodeInto(tableNode, usertypesetNode, 0);
}
} catch (SQLException sqle) {
+ Object[] arguments = new Object[3];
+ arguments[0] = catalog;
+ arguments[1] = schema;
+ arguments[2] = type;
+ String message = MessageFormat.format("DatabaseMetadata.getUDT({0}, {1}, null, {2})", arguments);
+ logger.debug(message, sqle);
usertypesetNode.setHasError(true);
} finally {
if (resultSet != null) {
@@ -425,6 +456,11 @@
insertNodeInto(tableNode, procedureNode, 0);
}
} catch (SQLException sqle) {
+ Object[] arguments = new Object[2];
+ arguments[0] = catalog;
+ arguments[1] = schema;
+ String message = MessageFormat.format("DatabaseMetadata.getProcedures({0}, {1}, null)", arguments);
+ logger.debug(message, sqle);
procedureNode.setHasError(true);
} finally {
if (resultSet != null) {
@@ -637,6 +673,12 @@
insertNodeInto(columnNameNode, columnNode, 0);
}
} catch (SQLException sqle) {
+ Object[] arguments = new Object[3];
+ arguments[0] = catalog;
+ arguments[1] = schema;
+ arguments[2] = tableName;
+ String message = MessageFormat.format("DatabaseMetadata.getColumns({0}, {1}, {2}, null)", arguments);
+ logger.debug(message, sqle);
columnNode.setHasError(true);
} finally {
if (resultSet != null) {
@@ -648,4 +690,4 @@
reload(columnNode);
}
}
-}
+}
\ No newline at end of file
Modified: isql-swing/branches/3.1.0-development/src/org/isqlviewer/swing/EnhancedTable.java
===================================================================
--- isql-swing/branches/3.1.0-development/src/org/isqlviewer/swing/EnhancedTable.java 2007-08-07 23:56:25 UTC (rev 84)
+++ isql-swing/branches/3.1.0-development/src/org/isqlviewer/swing/EnhancedTable.java 2007-08-08 01:14:18 UTC (rev 85)
@@ -58,6 +58,7 @@
import javax.swing.JComponent;
import javax.swing.JPopupMenu;
import javax.swing.JTable;
+import javax.swing.JToolTip;
import javax.swing.KeyStroke;
import javax.swing.SwingUtilities;
import javax.swing.UIDefaults;
@@ -97,6 +98,7 @@
protected boolean selectionToggle = true;
protected DnDSupport dndHandler = new DnDSupport(this);
protected DragGestureRecognizer dndRecognizer = null;
+ protected JToolTip customToolTip = null;
public EnhancedTable(TableModel model) {
@@ -125,24 +127,6 @@
setGridColor(EnhancedTableCellRenderer.gridColor);
}
- @Override
- protected void createDefaultRenderers() {
-
- defaultRenderersByColumnClass = new UIDefaults();
-
- // Numbers
- setLazyRenderer(Number.class, "org.isqlviewer.ui.laf.EnhancedNumberCellRenderer");
- // Doubles and Floats
- setLazyRenderer(Float.class, "org.isqlviewer.ui.laf.EnhancedDecimalCellRenderer");
- setLazyRenderer(Double.class, "org.isqlviewer.ui.laf.EnhancedDecimalCellRendererr");
- // Dates
- setLazyRenderer(Date.class, "org.isqlviewer.ui.laf.EnhancedDateCellRenderer");
- // Booleans
- setLazyRenderer(Boolean.class, "org.isqlviewer.ui.laf.EnhancedBooleanCellRenderer");
- // Everything else
- setLazyRenderer(Object.class, "org.isqlviewer.ui.laf.EnhancedTableCellRenderer");
- }
-
public void refreshSorted() {
Sortable mdl = null;
@@ -160,6 +144,11 @@
}
}
+ public void setCustomTooltip(JToolTip customToolTip) {
+
+ this.customToolTip = customToolTip;
+ }
+
public EnhancedTableModel getSelectedSubModel() {
int[] rows = null;
@@ -306,6 +295,15 @@
}
@Override
+ public JToolTip createToolTip() {
+
+ if (customToolTip == null) {
+ return super.createToolTip();
+ }
+ return customToolTip;
+ }
+
+ @Override
public boolean getDragEnabled() {
return (dndRecognizer == null);
@@ -346,6 +344,24 @@
super.columnAdded(event);
}
+ @Override
+ protected void createDefaultRenderers() {
+
+ defaultRenderersByColumnClass = new UIDefaults();
+
+ // Numbers
+ setLazyRenderer(Number.class, "org.isqlviewer.ui.laf.EnhancedNumberCellRenderer");
+ // Doubles and Floats
+ setLazyRenderer(Float.class, "org.isqlviewer.ui.laf.EnhancedDecimalCellRenderer");
+ setLazyRenderer(Double.class, "org.isqlviewer.ui.laf.EnhancedDecimalCellRendererr");
+ // Dates
+ setLazyRenderer(Date.class, "org.isqlviewer.ui.laf.EnhancedDateCellRenderer");
+ // Booleans
+ setLazyRenderer(Boolean.class, "org.isqlviewer.ui.laf.EnhancedBooleanCellRenderer");
+ // Everything else
+ setLazyRenderer(Object.class, "org.isqlviewer.ui.laf.EnhancedTableCellRenderer");
+ }
+
/** Sizes the columns with the max size of the header and the columns data. */
private void setColumnSizes(int from, int to) {
Modified: isql-swing/branches/3.1.0-development/src/org/isqlviewer/ui/DataGrid.java
===================================================================
--- isql-swing/branches/3.1.0-development/src/org/isqlviewer/ui/DataGrid.java 2007-08-07 23:56:25 UTC (rev 84)
+++ isql-swing/branches/3.1.0-development/src/org/isqlviewer/ui/DataGrid.java 2007-08-08 01:14:18 UTC (rev 85)
@@ -22,190 +22,177 @@
*/
package org.isqlviewer.ui;
-import java.awt.Component;
+import java.awt.BorderLayout;
import java.awt.GridBagConstraints;
import java.awt.GridBagLayout;
-import java.awt.event.ActionEvent;
-import java.awt.event.ActionListener;
-import java.text.NumberFormat;
+import java.text.MessageFormat;
import java.util.prefs.Preferences;
import javax.swing.BorderFactory;
import javax.swing.Box;
-import javax.swing.JButton;
import javax.swing.JComponent;
import javax.swing.JLabel;
import javax.swing.JMenuBar;
+import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTextField;
-import javax.swing.ScrollPaneConstants;
-import javax.swing.SwingConstants;
import javax.swing.event.DocumentEvent;
import javax.swing.event.DocumentListener;
import javax.swing.event.ListSelectionEvent;
import javax.swing.event.ListSelectionListener;
+import org.isqlviewer.history.HistoricalCommand;
+import org.isqlviewer.sql.QueryMetadata;
import org.isqlviewer.swing.EnhancedTable;
import org.isqlviewer.swing.SwingUtilities;
import org.isqlviewer.swing.action.SwingEventManager;
import org.isqlviewer.swing.table.EnhancedTableModel;
-import org.isqlviewer.swing.table.ResultSetTableModel;
-import org.isqlviewer.ui.laf.SortableHeaderRenderer;
import org.isqlviewer.util.LocalMessages;
+import org.isqlviewer.util.StringUtilities;
/**
* @author Mark A. Kobold <mkobold at isqlviewer dot com>
* @version 1.0
*/
-public class DataGrid extends AbstractApplicationView implements ListSelectionListener, ActionListener,
- DocumentListener {
+public class DataGrid extends AbstractApplicationView implements ListSelectionListener, DocumentListener {
- private NumberFormat nf = NumberFormat.getIntegerInstance();
+ private static final MessageFormat cursorFormat = new MessageFormat("{0}/{1}");
+ private LocalMessages messages = new LocalMessages("org.isqlviewer.ui.ResourceBundle");
+
private EnhancedTable table = null;
- private JTextField txtFilter = new JTextField();
+ private EnhancedTableModel model = null;
+ private HistoricalCommand queryReference = null;
+
private JLabel lblFilter = new JLabel();
- private JScrollPane jspTable = null;
- private Component glue = Box.createHorizontalGlue();
- private JLabel lblLocatr = new JLabel();
- private JLabel lblSearch = new JLabel(SwingUtilities.loadIconResource("search", 16));
- private JButton btnHider = new JButton();
- private JButton actionPageUp = new JButton("");
- private JButton actionPageDown = new JButton("");
- private LocalMessages messages = new LocalMessages("org.isqlviewer.ui.ResourceBundle");
+ private JLabel cursorLabel = new JLabel(SwingUtilities.loadIconResource("table", 16));
+ private JLabel serviceLabel = new JLabel(SwingUtilities.loadIconResource("service", 16));
+ private JLabel timeLabel = new JLabel(SwingUtilities.loadIconResource("history", 16));
+ private JTextField searchText = new JTextField(8);
+
public void configureMenubar(JMenuBar menuBar) {
- // TODO Auto-generated method stub
-
}
public void disposeView(Preferences preferences) {
- // TODO Auto-generated method stub
-
}
public void initializeView() {
- // TODO Auto-generated method stub
-
}
public void doLayout(JComponent parentComponent, Preferences preferences, SwingEventManager eventManager) {
table = new EnhancedTable();
- // TODO table.setDropTarget(new DropTarget(table, workbench.bookmarkDropper));
- table.setFont(table.getFont().deriveFont(10f));
- // table.putClientProperty(EnhancedTable.CLIENT_JPOPUP_MENU, workbench.tablePopupMenu);
table.setDragEnabled(true);
table.getSelectionModel().addListSelectionListener(this);
- jspTable = new JScrollPane(table);
- lblLocatr.setBorder(BorderFactory.createEtchedBorder());
- btnHider.setIcon(new SortableHeaderRenderer.BasicArrowIcon(SwingConstants.NORTH, 4));
- btnHider.setBorderPainted(false);
- btnHider.setFocusPainted(false);
- btnHider.addActionListener(this);
- // btnHider.setToolTipText(BasicUtilities.getString("Filter_Hide_Tip"));
- actionPageUp.addActionListener(this);
- actionPageUp.setBorderPainted(false);
- actionPageUp.setFocusPainted(false);
- // actionPageUp.setToolTipText(BasicUtilities.getString("View_Prev"));
- actionPageDown.addActionListener(this);
- actionPageDown.setBorderPainted(false);
- actionPageDown.setFocusPainted(false);
- // actionPageDown.setToolTipText(BasicUtilities.getString("View_Next"));
- // txtFilter.setToolTipText(BasicUtilities.getString("Filter_Input_Tip"));
- txtFilter.getDocument().addDocumentListener(this);
- lblFilter.setFont(lblFilter.getFont().deriveFont(9.0f));
+ searchText.getDocument().addDocumentListener(this);
+ cursorLabel.setBorder(BorderFactory.createEtchedBorder());
+ cursorLabel.setToolTipText(messages.format("DataGrid.current_position_of_selection"));
+ timeLabel.setBorder(BorderFactory.createEtchedBorder());
+ timeLabel.setToolTipText(messages.format("DataGrid.time_spent_aquiring_these_results"));
+ serviceLabel.setBorder(BorderFactory.createEtchedBorder());
+ serviceLabel.setToolTipText(messages.format("DataGrid.service_these_results_came_from"));
+
+ JScrollPane dataScrollPanel = new JScrollPane(table);
Object UI_CONSTRAINT = null;
- parentComponent.setLayout(new GridBagLayout());
+ JPanel searchBar = new JPanel(new GridBagLayout());
UI_CONSTRAINT = constrain(0, 0, 1, 1, 1.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.HORIZONTAL);
- parentComponent.add(glue, UI_CONSTRAINT);
- UI_CONSTRAINT = constrain(1, 0, 1, 1, 0.0, 0.0, GridBagConstraints.EAST, GridBagConstraints.HORIZONTAL);
- parentComponent.add(lblSearch, UI_CONSTRAINT);
- UI_CONSTRAINT = constrain(2, 0, 1, 1, 0.35, 0.0, GridBagConstraints.WEST, GridBagConstraints.HORIZONTAL);
- parentComponent.add(txtFilter, UI_CONSTRAINT);
- UI_CONSTRAINT = constrain(3, 0, 1, 1, 0.0, 0.0, GridBagConstraints.EAST, GridBagConstraints.NONE);
- parentComponent.add(btnHider, UI_CONSTRAINT);
- UI_CONSTRAINT = constrain(2, 1, 2, 1, 0.0, 0.0, GridBagConstraints.WEST, GridBagConstraints.NONE);
- parentComponent.add(lblFilter, UI_CONSTRAINT);
- UI_CONSTRAINT = constrain(0, 2, 4, 1, 1.0, 1.0, GridBagConstraints.CENTER, GridBagConstraints.BOTH);
- parentComponent.add(jspTable, UI_CONSTRAINT);
- UI_CONSTRAINT = constrain(1, 3, 4, 1, 1.0, 0.0, GridBagConstraints.EAST, GridBagConstraints.NONE);
- parentComponent.add(lblLocatr, UI_CONSTRAINT);
+ searchBar.add(Box.createHorizontalGlue(), UI_CONSTRAINT);
+ UI_CONSTRAINT = constrain(1, 0, 1, 1, 0.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.HORIZONTAL);
+ JLabel searchLabel = new JLabel(SwingUtilities.loadIconResource("search", 16));
+ searchBar.add(searchLabel, UI_CONSTRAINT);
+ UI_CONSTRAINT = constrain(2, 0, 1, 1, 0.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.HORIZONTAL);
+ searchBar.add(searchText, UI_CONSTRAINT);
+ UI_CONSTRAINT = constrain(3, 0, 1, 1, 0.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.HORIZONTAL);
+ searchBar.add(Box.createHorizontalStrut(10), UI_CONSTRAINT);
+ UI_CONSTRAINT = constrain(2, 1, 1, 1, 0.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.NONE);
+ searchBar.add(lblFilter, UI_CONSTRAINT);
+ UI_CONSTRAINT = constrain(3, 1, 1, 1, 0.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.HORIZONTAL);
+ searchBar.add(Box.createHorizontalStrut(10), UI_CONSTRAINT);
+
+ JPanel statusBar = new JPanel(new GridBagLayout());
+ UI_CONSTRAINT = constrain(3, 0, 1, 1, 1.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.HORIZONTAL);
+ statusBar.add(Box.createHorizontalGlue(), UI_CONSTRAINT);
+ UI_CONSTRAINT = constrain(0, 0, 1, 1, 0.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.NONE);
+ statusBar.add(timeLabel, UI_CONSTRAINT);
+ UI_CONSTRAINT = constrain(1, 0, 1, 1, 0.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.NONE);
+ statusBar.add(serviceLabel, UI_CONSTRAINT);
+ UI_CONSTRAINT = constrain(2, 0, 1, 1, 0.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.NONE);
+ statusBar.add(cursorLabel, UI_CONSTRAINT);
+
+ parentComponent.setLayout(new BorderLayout());
+ parentComponent.add(searchBar, BorderLayout.NORTH);
+ parentComponent.add(dataScrollPanel, BorderLayout.CENTER);
+ parentComponent.add(statusBar, BorderLayout.SOUTH);
}
- public void setModel(EnhancedTableModel model) {
+ public void changedUpdate(DocumentEvent e) {
- table.setModel(model);
- if (model.getTrueRowCount() >= 1) {
- table.setRowSelectionInterval(0, 0);
- }
+ }
- if (model.getPageCount() > 1) {
- jspTable.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
- jspTable.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
- jspTable.setCorner(ScrollPaneConstants.UPPER_RIGHT_CORNER, actionPageUp);
- jspTable.setCorner(ScrollPaneConstants.LOWER_RIGHT_CORNER, actionPageDown);
- } else {
- jspTable.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED);
- jspTable.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED);
- jspTable.setCorner(ScrollPaneConstants.UPPER_RIGHT_CORNER, Box.createHorizontalStrut(0));
- jspTable.setCorner(ScrollPaneConstants.LOWER_RIGHT_CORNER, Box.createHorizontalStrut(0));
+ public void insertUpdate(DocumentEvent e) {
+
+ doFiltering();
+ }
+
+ public void removeUpdate(DocumentEvent e) {
+
+ doFiltering();
+ }
+
+ public void valueChanged(ListSelectionEvent e) {
+
+ Object[] arguments = new Object[2];
+ arguments[0] = Integer.toString(table.getSelectedRow() + 1);
+ arguments[1] = Integer.toString(table.getRowCount());
+ synchronized (cursorLabel) {
+ cursorLabel.setText(cursorFormat.format(arguments));
}
}
- public EnhancedTable getTable() {
+ public void setMetadata(QueryMetadata metadata) {
- return table;
+ this.queryReference = metadata.getCommand();
+ serviceLabel.setText(metadata.getService());
+ timeLabel.setText(StringUtilities.getHumanReadableTime(metadata.getUserTime()));
}
- public void clearFiltering() {
+ public void setModel(EnhancedTableModel model) {
- if (table != null) {
- ResultSetTableModel model = (ResultSetTableModel) table.getModel();
- model.clearFilter();
+ this.model = model;
+ table.setModel(model);
+ if (model.getTrueRowCount() >= 1) {
+ table.setRowSelectionInterval(0, 0);
}
- txtFilter.setText(null);
- lblFilter.setText(null);
}
- /*
- * (non-Javadoc)
- *
- * @see javax.swing.event.DocumentListener#changedUpdate(javax.swing.event.DocumentEvent)
- */
- public void changedUpdate(DocumentEvent e) {
+ public EnhancedTable getTable() {
+ return table;
}
- /*
- * (non-Javadoc)
- *
- * @see javax.swing.event.DocumentListener#insertUpdate(javax.swing.event.DocumentEvent)
- */
- public void insertUpdate(DocumentEvent e) {
+ public HistoricalCommand getQueryReference() {
- doFiltering();
+ return queryReference;
}
- /*
- * (non-Javadoc)
- *
- * @see javax.swing.event.DocumentListener#removeUpdate(javax.swing.event.DocumentEvent)
- */
- public void removeUpdate(DocumentEvent e) {
+ public void clearFiltering() {
- doFiltering();
+ if (model != null) {
+ model.clearFilter();
+ }
+ searchText.setText(null);
+ lblFilter.setText(null);
}
private synchronized void doFiltering() {
- if (table != null) {
- EnhancedTableModel model = (EnhancedTableModel) table.getModel();
- String filter = txtFilter.getText().trim();
+ if (model != null) {
+ String filter = searchText.getText().trim();
int found = model.applyFilter(filter);
if (found >= 1) {
String txt = messages.format("datagrid.found_matches", Integer.toString(found));
@@ -222,50 +209,5 @@
}
table.invalidate();
}
-
}
-
- /*
- * (non-Javadoc)
- *
- * @see java.awt.event.ActionListener#actionPerformed(java.awt.event.ActionEvent)
- */
- public void actionPerformed(ActionEvent e) {
-
- Object src = e.getSource();
- if (src == btnHider) {
- txtFilter.setVisible(!txtFilter.isVisible());
- lblFilter.setVisible(!lblFilter.isVisible());
- lblSearch.setVisible(!lblSearch.isVisible());
- glue.setVisible(!glue.isVisible());
- if (txtFilter.isVisible()) {
- btnHider.setIcon(new SortableHeaderRenderer.BasicArrowIcon(SwingConstants.NORTH, 4));
- // btnHider.setToolTipText(BasicUtilities.getString("Filter_Hide_Tip"));
- } else {
- btnHider.setIcon(new SortableHeaderRenderer.BasicArrowIcon(SwingConstants.SOUTH, 4));
- // btnHider.setToolTipText(BasicUtilities.getString("Filter_Show_Tip"));
- }
- btnHider.getParent().validate();
- btnHider.getParent().repaint();
- } else if (src == actionPageDown) {
- EnhancedTableModel model = (EnhancedTableModel) table.getModel();
- model.pageDown();
- } else if (src == actionPageUp) {
- EnhancedTableModel model = (EnhancedTableModel) table.getModel();
- model.pageUp();
- }
- }
-
- public void valueChanged(ListSelectionEvent e) {
-
- EnhancedTableModel model = (EnhancedTableModel) table.getModel();
- String str = nf.format(model.translateRow(table.getSelectedRow()) + 1);
- str = str.concat("/");
- str = str.concat(nf.format(model.getTrueRowCount()));
- str = str.concat(" [");
- str = str.concat(nf.format(model.getPageOffset() + 1));
- str = str.concat("/");
- str = str.concat(nf.format(model.getPageCount()));
- lblLocatr.setText(" ".concat(str).concat("] "));
- }
}
\ No newline at end of file
Modified: isql-swing/branches/3.1.0-development/src/org/isqlviewer/ui/JdbcWorkbench.java
===================================================================
--- isql-swing/branches/3.1.0-development/src/org/isqlviewer/ui/JdbcWorkbench.java 2007-08-07 23:56:25 UTC (rev 84)
+++ isql-swing/branches/3.1.0-development/src/org/isqlviewer/ui/JdbcWorkbench.java 2007-08-08 01:14:18 UTC (rev 85)
@@ -195,6 +195,7 @@
int id = event.getID();
switch (id) {
case SharedActions.REFRESH_SELECTED_RESULTS :
+ refreshSelectedTab();
break;
case SharedActions.NAVIGATE_LEFT_TAB :
navigateLeftTab();
@@ -304,6 +305,21 @@
}
}
+ private void refreshSelectedTab() {
+
+ JComponent component = (JComponent) centerTabbedPane.getSelectedComponent();
+ DataGrid dataGrid = (DataGrid) component.getClientProperty("x");
+ HistoricalCommand command = dataGrid.getQueryReference();
+ String statement = command.getCommandText();
+ boolean connected = checkConnection();
+ if (connected) {
+ TabbedResultsetRenderer renderer = new TabbedResultsetRenderer(centerTabbedPane);
+ QueryExecutor executor = new QueryExecutor(currentService, renderer, statement);
+ executor.setLogHistory(false);
+ executor.run();
+ }
+ }
+
public void doLayout(JComponent parentComponent, Preferences userPreferences, SwingEventManager swingEventManager) {
preferences = userPreferences.node("views/jdbc-workbench");
@@ -1081,7 +1097,6 @@
ca = new CustomAction("refresh-current-view", SharedActions.REFRESH_SELECTED_RESULTS, manager);
acclerator = messages.format("menu.refresh_selected_view.accelerator");
- ca.setEnabled(false);
ca.putValue(CustomAction.ICON_NAME, "reload");
ca.putValue(Action.ACCELERATOR_KEY, SwingUtilities.getKeyStroke(acclerator));
ca.putValue(Action.DEFAULT, messages.getMessage("menu.refresh_selected_view.title"));
@@ -1584,8 +1599,8 @@
row.add(entry.getValue());
model.addRow(row);
}
+
dataGrid.setModel(model);
-
centerTabbedPane.addTab(messages.format("JdbcWorkbench.database_metadata"), view);
index = centerTabbedPane.indexOfComponent(view);
centerTabbedPane.setClosableTab(index, true);
Modified: isql-swing/branches/3.1.0-development/src/org/isqlviewer/ui/ResourceBundle.properties
===================================================================
--- isql-swing/branches/3.1.0-development/src/org/isqlviewer/ui/ResourceBundle.properties 2007-08-07 23:56:25 UTC (rev 84)
+++ isql-swing/branches/3.1.0-development/src/org/isqlviewer/ui/ResourceBundle.properties 2007-08-08 01:14:18 UTC (rev 85)
@@ -57,6 +57,9 @@
datagrid.no_matches=No match
datagrid.found_matches=Found {0} matche(s).
+DataGrid.current_position_of_selection=The row that is currently selected out of all of the rows.
+DataGrid.time_spent_aquiring_these_results=Time spent aquiring these results.
+DataGrid.service_these_results_came_from=The service used to aquire these results.
bookmarkeditor.created-date.title=Created On
bookmarkeditor.created-date.tip=The date and time this bookmark was created.
Modified: isql-swing/branches/3.1.0-development/src/org/isqlviewer/ui/SqlCommandEditor.java
===================================================================
--- isql-swing/branches/3.1.0-development/src/org/isqlviewer/ui/SqlCommandEditor.java 2007-08-07 23:56:25 UTC (rev 84)
+++ isql-swing/branches/3.1.0-development/src/org/isqlviewer/ui/SqlCommandEditor.java 2007-08-08 01:14:18 UTC (rev 85)
@@ -34,6 +34,7 @@
import java.sql.Connection;
import java.sql.DatabaseMetaData;
import java.sql.SQLException;
+import java.util.TooManyListenersException;
import java.util.prefs.Preferences;
import javax.swing.AbstractAction;
@@ -145,13 +146,15 @@
commandEditor.addFocusListener(this);
commandEditor.addCaretListener(this);
-
- DropTarget dropTarget = new TextComponentDropTarget(commandEditor);
- dropTarget.setActive(true);
+ commandEditor.setDragEnabled(true);
+ DropTarget dropTarget = commandEditor.getDropTarget();
dropTarget.setDefaultActions(DnDConstants.ACTION_COPY_OR_MOVE);
- commandEditor.setDropTarget(dropTarget);
+ try {
+ dropTarget.addDropTargetListener(new TextComponentDropTarget(commandEditor));
+ } catch (TooManyListenersException ignored) {
+ debug("addDropTargetListener()", ignored);
+ }
- commandEditor.setDragEnabled(true);
commandEditor.getDocument().addUndoableEditListener(this);
localizeTextComponent(commandEditor, undoManager);
}
Modified: isql-swing/branches/3.1.0-development/src/org/isqlviewer/ui/SqlCommandMouseAdapter.java
===================================================================
--- isql-swing/branches/3.1.0-development/src/org/isqlviewer/ui/SqlCommandMouseAdapter.java 2007-08-07 23:56:25 UTC (rev 84)
+++ isql-swing/branches/3.1.0-development/src/org/isqlviewer/ui/SqlCommandMouseAdapter.java 2007-08-08 01:14:18 UTC (rev 85)
@@ -53,6 +53,7 @@
*/
private Position.Bias[] bias = new Position.Bias[1];
+ @Override
public void mouseClicked(MouseEvent e) {
JEditorPane editor = (JEditorPane) e.getSource();
@@ -69,6 +70,7 @@
}
}
+ @Override
public void mouseMoved(MouseEvent e) {
JEditorPane editor = (JEditorPane) e.getSource();
@@ -152,6 +154,7 @@
super(url);
}
+ @Override
public void connect() {
}
Modified: isql-swing/branches/3.1.0-development/src/org/isqlviewer/ui/TabbedResultsetRenderer.java
===================================================================
--- isql-swing/branches/3.1.0-development/src/org/isqlviewer/ui/TabbedResultsetRenderer.java 2007-08-07 23:56:25 UTC (rev 84)
+++ isql-swing/branches/3.1.0-development/src/org/isqlviewer/ui/TabbedResultsetRenderer.java 2007-08-08 01:14:18 UTC (rev 85)
@@ -47,6 +47,7 @@
import javax.swing.JProgressBar;
import org.apache.log4j.Logger;
+import org.isqlviewer.sql.QueryMetadata;
import org.isqlviewer.sql.ResultSetRenderer;
import org.isqlviewer.swing.EnhancedTabbedPane;
import org.isqlviewer.swing.SwingUtilities;
@@ -160,7 +161,7 @@
logger.info(messages.format("tabbedresultsetrenderer.rows_affected", new Integer(updateCount)));
}
- public void finalizeStatement(String stmtID) {
+ public void finalizeStatement(String stmtID, QueryMetadata metadata) {
eyeCandy.updateStatus(messages.format("TabbedResultsetRenderer.finalize_statement", stmtID));
@@ -181,6 +182,9 @@
componentView.removeAll();
dataGrid.doLayout(componentView, null, null);
dataGrid.setModel(eyeCandy.getQueryData());
+ dataGrid.setMetadata(metadata);
+ componentView.putClientProperty("x", dataGrid);
+
tabbedPane.setToolTipTextAt(index, html);
tabbedPane.setTitleAt(index, str);
tabbedPane.setComponentAt(index, componentView);
@@ -360,4 +364,5 @@
return componentView;
}
}
+
}
\ No newline at end of file
Modified: isql-swing/branches/3.1.0-development/src/org/isqlviewer/ui/dnd/SchemaNodeRenderer.java
===================================================================
--- isql-swing/branches/3.1.0-development/src/org/isqlviewer/ui/dnd/SchemaNodeRenderer.java 2007-08-07 23:56:25 UTC (rev 84)
+++ isql-swing/branches/3.1.0-development/src/org/isqlviewer/ui/dnd/SchemaNodeRenderer.java 2007-08-08 01:14:18 UTC (rev 85)
@@ -32,6 +32,7 @@
import org.isqlviewer.model.JdbcSchemaTreeModel;
import org.isqlviewer.model.SchemaNode;
import org.isqlviewer.model.SchemaNodeType;
+import org.isqlviewer.sql.QueryMetadata;
import org.isqlviewer.sql.ResultSetRenderer;
import org.isqlviewer.util.LoggableObject;
@@ -173,7 +174,7 @@
nodeRenderer.recieveResultsetWarnings(set, set.getWarnings());
}
} finally {
- nodeRenderer.finalizeStatement("");
+ nodeRenderer.finalizeStatement("", new QueryMetadata());
try {
if (set != null) {
set.close();
Modified: isql-swing/branches/3.1.0-development/src/org/isqlviewer/ui/dnd/TextComponentDropTarget.java
===================================================================
--- isql-swing/branches/3.1.0-development/src/org/isqlviewer/ui/dnd/TextComponentDropTarget.java 2007-08-07 23:56:25 UTC (rev 84)
+++ isql-swing/branches/3.1.0-development/src/org/isqlviewer/ui/dnd/TextComponentDropTarget.java 2007-08-08 01:14:18 UTC (rev 85)
@@ -26,8 +26,10 @@
import java.awt.datatransfer.Transferable;
import java.awt.datatransfer.UnsupportedFlavorException;
import java.awt.dnd.DnDConstants;
-import java.awt.dnd.DropTarget;
+import java.awt.dnd.DropTargetDragEvent;
import java.awt.dnd.DropTargetDropEvent;
+import java.awt.dnd.DropTargetEvent;
+import java.awt.dnd.DropTargetListener;
import java.io.IOException;
import javax.swing.text.BadLocationException;
@@ -42,7 +44,7 @@
* @author Mark A. Kobold <mkobold at isqlviewer dot com>
* @version 1.0
*/
-public class TextComponentDropTarget extends DropTarget {
+public class TextComponentDropTarget implements DropTargetListener {
private static final long serialVersionUID = 4496993389366518143L;
private JTextComponent editor = null;
@@ -51,9 +53,8 @@
this.editor = editor;
}
-
public void drop(DropTargetDropEvent event) {
-
+
boolean successful = false;
try {
if (event.isDataFlavorSupported(DataFlavor.stringFlavor)) {
@@ -85,4 +86,36 @@
event.dropComplete(successful);
}
}
+ /* (non-Javadoc)
+ * @see java.awt.dnd.DropTargetListener#dragEnter(java.awt.dnd.DropTargetDragEvent)
+ */
+ public void dragEnter(DropTargetDragEvent dtde) {
+
+ // TODO Auto-generated method stub
+
+ }
+ /* (non-Javadoc)
+ * @see java.awt.dnd.DropTargetListener#dragExit(java.awt.dnd.DropTargetEvent)
+ */
+ public void dragExit(DropTargetEvent dte) {
+
+ // TODO Auto-generated method stub
+
+ }
+ /* (non-Javadoc)
+ * @see java.awt.dnd.DropTargetListener#dragOver(java.awt.dnd.DropTargetDragEvent)
+ */
+ public void dragOver(DropTargetDragEvent dtde) {
+
+ // TODO Auto-generated method stub
+
+ }
+ /* (non-Javadoc)
+ * @see java.awt.dnd.DropTargetListener#dropActionChanged(java.awt.dnd.DropTargetDragEvent)
+ */
+ public void dropActionChanged(DropTargetDragEvent dtde) {
+
+ // TODO Auto-generated method stub
+
+ }
}
\ No newline at end of file
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <mk...@us...> - 2007-08-07 23:56:24
|
Revision: 84
http://isql.svn.sourceforge.net/isql/?rev=84&view=rev
Author: mkobold
Date: 2007-08-07 16:56:25 -0700 (Tue, 07 Aug 2007)
Log Message:
-----------
* model/JdbcSchemaTreeModel.java
** Added support for debugging meta data loading to provide information in resolving issues with the
schema browser.
** Other minor updates to handle query meta data.
Modified Paths:
--------------
isql-swing/branches/3.0.0-maintenance/src/org/isqlviewer/model/JdbcSchemaTreeModel.java
isql-swing/branches/3.0.0-maintenance/src/org/isqlviewer/swing/EnhancedTable.java
isql-swing/branches/3.0.0-maintenance/src/org/isqlviewer/ui/DataGrid.java
isql-swing/branches/3.0.0-maintenance/src/org/isqlviewer/ui/JdbcWorkbench.java
isql-swing/branches/3.0.0-maintenance/src/org/isqlviewer/ui/ResourceBundle.properties
isql-swing/branches/3.0.0-maintenance/src/org/isqlviewer/ui/SqlCommandEditor.java
isql-swing/branches/3.0.0-maintenance/src/org/isqlviewer/ui/SqlCommandMouseAdapter.java
isql-swing/branches/3.0.0-maintenance/src/org/isqlviewer/ui/TabbedResultsetRenderer.java
isql-swing/branches/3.0.0-maintenance/src/org/isqlviewer/ui/dnd/SchemaNodeRenderer.java
isql-swing/branches/3.0.0-maintenance/src/org/isqlviewer/ui/dnd/TextComponentDropTarget.java
Modified: isql-swing/branches/3.0.0-maintenance/src/org/isqlviewer/model/JdbcSchemaTreeModel.java
===================================================================
--- isql-swing/branches/3.0.0-maintenance/src/org/isqlviewer/model/JdbcSchemaTreeModel.java 2007-08-07 23:54:49 UTC (rev 83)
+++ isql-swing/branches/3.0.0-maintenance/src/org/isqlviewer/model/JdbcSchemaTreeModel.java 2007-08-07 23:56:25 UTC (rev 84)
@@ -27,11 +27,15 @@
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Types;
+import java.text.MessageFormat;
+import java.util.Arrays;
import java.util.Collection;
import java.util.TreeSet;
import javax.swing.tree.DefaultTreeModel;
+import org.apache.log4j.Logger;
+import org.isqlviewer.util.IsqlToolkit;
import org.isqlviewer.util.LocalMessages;
/**
@@ -47,6 +51,8 @@
private static final String RESOURCE_BUNDLE = "org.isqlviewer.model.ResourceBundle";
private static final LocalMessages messages = new LocalMessages(RESOURCE_BUNDLE);
+ private Logger logger = IsqlToolkit.getApplicationLogger();
+
private DatabaseMetaData jdbcMetadata = null;
private String catalog = null;
private String schema = null;
@@ -236,6 +242,7 @@
protected void initializeDefaultNodes(boolean showDataTypes, boolean showTableTypes, boolean showStoredProcedures) {
String nodeText = null;
+
if (showDataTypes) {
SchemaNode schemaNode = null;
@@ -271,7 +278,7 @@
tableTypes.add(resultSet.getString("TABLE_TYPE"));
}
} catch (SQLException sqle) {
- // TODO Do Something here...
+ logger.debug("DatabaseMetadata.getTableTypes();", sqle);
} finally {
if (resultSet != null) {
try {
@@ -292,6 +299,12 @@
insertNodeInto(tabletypeNode, rootNode, 0);
}
} catch (SQLException sqle) {
+ Object[] arguments = new Object[3];
+ arguments[0] = catalog;
+ arguments[1] = schema;
+ arguments[2] = Arrays.toString(typeSet);
+ String message = MessageFormat.format("DatabaseMetadata.getTables({0}, {1}, null, {2})", arguments);
+ logger.debug(message, sqle);
} finally {
if (resultSet != null) {
try {
@@ -319,6 +332,11 @@
SchemaNode procedureNode = new SchemaNode(nodeText, false, SchemaNodeType.PROCEDURE_SET);
procedureNode.setHasError(true);
insertNodeInto(procedureNode, rootNode, 0);
+ Object[] arguments = new Object[2];
+ arguments[0] = catalog;
+ arguments[1] = schema;
+ String message = MessageFormat.format("DatabaseMetadata.getProcedures({0}, {1}, null)", arguments);
+ logger.debug(message, sqle);
} finally {
if (resultSet != null) {
try {
@@ -351,6 +369,12 @@
}
} catch (SQLException sqle) {
tabletypeNode.setHasError(true);
+ Object[] arguments = new Object[3];
+ arguments[0] = catalog;
+ arguments[1] = schema;
+ arguments[2] = tableType;
+ String message = MessageFormat.format("DatabaseMetadata.getTables({0}, {1}, null, {2})", arguments);
+ logger.debug(message, sqle);
} finally {
if (resultSet != null) {
try {
@@ -375,6 +399,7 @@
insertNodeInto(tableNode, typesetNode, 0);
}
} catch (SQLException sqle) {
+ logger.debug("DatabaseMetadata.getTypeInfo()", sqle);
typesetNode.setHasError(true);
} finally {
if (resultSet != null) {
@@ -400,6 +425,12 @@
insertNodeInto(tableNode, usertypesetNode, 0);
}
} catch (SQLException sqle) {
+ Object[] arguments = new Object[3];
+ arguments[0] = catalog;
+ arguments[1] = schema;
+ arguments[2] = type;
+ String message = MessageFormat.format("DatabaseMetadata.getUDT({0}, {1}, null, {2})", arguments);
+ logger.debug(message, sqle);
usertypesetNode.setHasError(true);
} finally {
if (resultSet != null) {
@@ -425,6 +456,11 @@
insertNodeInto(tableNode, procedureNode, 0);
}
} catch (SQLException sqle) {
+ Object[] arguments = new Object[2];
+ arguments[0] = catalog;
+ arguments[1] = schema;
+ String message = MessageFormat.format("DatabaseMetadata.getProcedures({0}, {1}, null)", arguments);
+ logger.debug(message, sqle);
procedureNode.setHasError(true);
} finally {
if (resultSet != null) {
@@ -637,6 +673,12 @@
insertNodeInto(columnNameNode, columnNode, 0);
}
} catch (SQLException sqle) {
+ Object[] arguments = new Object[3];
+ arguments[0] = catalog;
+ arguments[1] = schema;
+ arguments[2] = tableName;
+ String message = MessageFormat.format("DatabaseMetadata.getColumns({0}, {1}, {2}, null)", arguments);
+ logger.debug(message, sqle);
columnNode.setHasError(true);
} finally {
if (resultSet != null) {
@@ -648,4 +690,4 @@
reload(columnNode);
}
}
-}
+}
\ No newline at end of file
Modified: isql-swing/branches/3.0.0-maintenance/src/org/isqlviewer/swing/EnhancedTable.java
===================================================================
--- isql-swing/branches/3.0.0-maintenance/src/org/isqlviewer/swing/EnhancedTable.java 2007-08-07 23:54:49 UTC (rev 83)
+++ isql-swing/branches/3.0.0-maintenance/src/org/isqlviewer/swing/EnhancedTable.java 2007-08-07 23:56:25 UTC (rev 84)
@@ -58,6 +58,7 @@
import javax.swing.JComponent;
import javax.swing.JPopupMenu;
import javax.swing.JTable;
+import javax.swing.JToolTip;
import javax.swing.KeyStroke;
import javax.swing.SwingUtilities;
import javax.swing.UIDefaults;
@@ -97,6 +98,7 @@
protected boolean selectionToggle = true;
protected DnDSupport dndHandler = new DnDSupport(this);
protected DragGestureRecognizer dndRecognizer = null;
+ protected JToolTip customToolTip = null;
public EnhancedTable(TableModel model) {
@@ -125,24 +127,6 @@
setGridColor(EnhancedTableCellRenderer.gridColor);
}
- @Override
- protected void createDefaultRenderers() {
-
- defaultRenderersByColumnClass = new UIDefaults();
-
- // Numbers
- setLazyRenderer(Number.class, "org.isqlviewer.ui.laf.EnhancedNumberCellRenderer");
- // Doubles and Floats
- setLazyRenderer(Float.class, "org.isqlviewer.ui.laf.EnhancedDecimalCellRenderer");
- setLazyRenderer(Double.class, "org.isqlviewer.ui.laf.EnhancedDecimalCellRendererr");
- // Dates
- setLazyRenderer(Date.class, "org.isqlviewer.ui.laf.EnhancedDateCellRenderer");
- // Booleans
- setLazyRenderer(Boolean.class, "org.isqlviewer.ui.laf.EnhancedBooleanCellRenderer");
- // Everything else
- setLazyRenderer(Object.class, "org.isqlviewer.ui.laf.EnhancedTableCellRenderer");
- }
-
public void refreshSorted() {
Sortable mdl = null;
@@ -160,6 +144,11 @@
}
}
+ public void setCustomTooltip(JToolTip customToolTip) {
+
+ this.customToolTip = customToolTip;
+ }
+
public EnhancedTableModel getSelectedSubModel() {
int[] rows = null;
@@ -306,6 +295,15 @@
}
@Override
+ public JToolTip createToolTip() {
+
+ if (customToolTip == null) {
+ return super.createToolTip();
+ }
+ return customToolTip;
+ }
+
+ @Override
public boolean getDragEnabled() {
return (dndRecognizer == null);
@@ -346,6 +344,24 @@
super.columnAdded(event);
}
+ @Override
+ protected void createDefaultRenderers() {
+
+ defaultRenderersByColumnClass = new UIDefaults();
+
+ // Numbers
+ setLazyRenderer(Number.class, "org.isqlviewer.ui.laf.EnhancedNumberCellRenderer");
+ // Doubles and Floats
+ setLazyRenderer(Float.class, "org.isqlviewer.ui.laf.EnhancedDecimalCellRenderer");
+ setLazyRenderer(Double.class, "org.isqlviewer.ui.laf.EnhancedDecimalCellRendererr");
+ // Dates
+ setLazyRenderer(Date.class, "org.isqlviewer.ui.laf.EnhancedDateCellRenderer");
+ // Booleans
+ setLazyRenderer(Boolean.class, "org.isqlviewer.ui.laf.EnhancedBooleanCellRenderer");
+ // Everything else
+ setLazyRenderer(Object.class, "org.isqlviewer.ui.laf.EnhancedTableCellRenderer");
+ }
+
/** Sizes the columns with the max size of the header and the columns data. */
private void setColumnSizes(int from, int to) {
Modified: isql-swing/branches/3.0.0-maintenance/src/org/isqlviewer/ui/DataGrid.java
===================================================================
--- isql-swing/branches/3.0.0-maintenance/src/org/isqlviewer/ui/DataGrid.java 2007-08-07 23:54:49 UTC (rev 83)
+++ isql-swing/branches/3.0.0-maintenance/src/org/isqlviewer/ui/DataGrid.java 2007-08-07 23:56:25 UTC (rev 84)
@@ -22,190 +22,177 @@
*/
package org.isqlviewer.ui;
-import java.awt.Component;
+import java.awt.BorderLayout;
import java.awt.GridBagConstraints;
import java.awt.GridBagLayout;
-import java.awt.event.ActionEvent;
-import java.awt.event.ActionListener;
-import java.text.NumberFormat;
+import java.text.MessageFormat;
import java.util.prefs.Preferences;
import javax.swing.BorderFactory;
import javax.swing.Box;
-import javax.swing.JButton;
import javax.swing.JComponent;
import javax.swing.JLabel;
import javax.swing.JMenuBar;
+import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTextField;
-import javax.swing.ScrollPaneConstants;
-import javax.swing.SwingConstants;
import javax.swing.event.DocumentEvent;
import javax.swing.event.DocumentListener;
import javax.swing.event.ListSelectionEvent;
import javax.swing.event.ListSelectionListener;
+import org.isqlviewer.history.HistoricalCommand;
+import org.isqlviewer.sql.QueryMetadata;
import org.isqlviewer.swing.EnhancedTable;
import org.isqlviewer.swing.SwingUtilities;
import org.isqlviewer.swing.action.SwingEventManager;
import org.isqlviewer.swing.table.EnhancedTableModel;
-import org.isqlviewer.swing.table.ResultSetTableModel;
-import org.isqlviewer.ui.laf.SortableHeaderRenderer;
import org.isqlviewer.util.LocalMessages;
+import org.isqlviewer.util.StringUtilities;
/**
* @author Mark A. Kobold <mkobold at isqlviewer dot com>
* @version 1.0
*/
-public class DataGrid extends AbstractApplicationView implements ListSelectionListener, ActionListener,
- DocumentListener {
+public class DataGrid extends AbstractApplicationView implements ListSelectionListener, DocumentListener {
- private NumberFormat nf = NumberFormat.getIntegerInstance();
+ private static final MessageFormat cursorFormat = new MessageFormat("{0}/{1}");
+ private LocalMessages messages = new LocalMessages("org.isqlviewer.ui.ResourceBundle");
+
private EnhancedTable table = null;
- private JTextField txtFilter = new JTextField();
+ private EnhancedTableModel model = null;
+ private HistoricalCommand queryReference = null;
+
private JLabel lblFilter = new JLabel();
- private JScrollPane jspTable = null;
- private Component glue = Box.createHorizontalGlue();
- private JLabel lblLocatr = new JLabel();
- private JLabel lblSearch = new JLabel(SwingUtilities.loadIconResource("search", 16));
- private JButton btnHider = new JButton();
- private JButton actionPageUp = new JButton("");
- private JButton actionPageDown = new JButton("");
- private LocalMessages messages = new LocalMessages("org.isqlviewer.ui.ResourceBundle");
+ private JLabel cursorLabel = new JLabel(SwingUtilities.loadIconResource("table", 16));
+ private JLabel serviceLabel = new JLabel(SwingUtilities.loadIconResource("service", 16));
+ private JLabel timeLabel = new JLabel(SwingUtilities.loadIconResource("history", 16));
+ private JTextField searchText = new JTextField(8);
+
public void configureMenubar(JMenuBar menuBar) {
- // TODO Auto-generated method stub
-
}
public void disposeView(Preferences preferences) {
- // TODO Auto-generated method stub
-
}
public void initializeView() {
- // TODO Auto-generated method stub
-
}
public void doLayout(JComponent parentComponent, Preferences preferences, SwingEventManager eventManager) {
table = new EnhancedTable();
- // TODO table.setDropTarget(new DropTarget(table, workbench.bookmarkDropper));
- table.setFont(table.getFont().deriveFont(10f));
- // table.putClientProperty(EnhancedTable.CLIENT_JPOPUP_MENU, workbench.tablePopupMenu);
table.setDragEnabled(true);
table.getSelectionModel().addListSelectionListener(this);
- jspTable = new JScrollPane(table);
- lblLocatr.setBorder(BorderFactory.createEtchedBorder());
- btnHider.setIcon(new SortableHeaderRenderer.BasicArrowIcon(SwingConstants.NORTH, 4));
- btnHider.setBorderPainted(false);
- btnHider.setFocusPainted(false);
- btnHider.addActionListener(this);
- // btnHider.setToolTipText(BasicUtilities.getString("Filter_Hide_Tip"));
- actionPageUp.addActionListener(this);
- actionPageUp.setBorderPainted(false);
- actionPageUp.setFocusPainted(false);
- // actionPageUp.setToolTipText(BasicUtilities.getString("View_Prev"));
- actionPageDown.addActionListener(this);
- actionPageDown.setBorderPainted(false);
- actionPageDown.setFocusPainted(false);
- // actionPageDown.setToolTipText(BasicUtilities.getString("View_Next"));
- // txtFilter.setToolTipText(BasicUtilities.getString("Filter_Input_Tip"));
- txtFilter.getDocument().addDocumentListener(this);
- lblFilter.setFont(lblFilter.getFont().deriveFont(9.0f));
+ searchText.getDocument().addDocumentListener(this);
+ cursorLabel.setBorder(BorderFactory.createEtchedBorder());
+ cursorLabel.setToolTipText(messages.format("DataGrid.current_position_of_selection"));
+ timeLabel.setBorder(BorderFactory.createEtchedBorder());
+ timeLabel.setToolTipText(messages.format("DataGrid.time_spent_aquiring_these_results"));
+ serviceLabel.setBorder(BorderFactory.createEtchedBorder());
+ serviceLabel.setToolTipText(messages.format("DataGrid.service_these_results_came_from"));
+
+ JScrollPane dataScrollPanel = new JScrollPane(table);
Object UI_CONSTRAINT = null;
- parentComponent.setLayout(new GridBagLayout());
+ JPanel searchBar = new JPanel(new GridBagLayout());
UI_CONSTRAINT = constrain(0, 0, 1, 1, 1.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.HORIZONTAL);
- parentComponent.add(glue, UI_CONSTRAINT);
- UI_CONSTRAINT = constrain(1, 0, 1, 1, 0.0, 0.0, GridBagConstraints.EAST, GridBagConstraints.HORIZONTAL);
- parentComponent.add(lblSearch, UI_CONSTRAINT);
- UI_CONSTRAINT = constrain(2, 0, 1, 1, 0.35, 0.0, GridBagConstraints.WEST, GridBagConstraints.HORIZONTAL);
- parentComponent.add(txtFilter, UI_CONSTRAINT);
- UI_CONSTRAINT = constrain(3, 0, 1, 1, 0.0, 0.0, GridBagConstraints.EAST, GridBagConstraints.NONE);
- parentComponent.add(btnHider, UI_CONSTRAINT);
- UI_CONSTRAINT = constrain(2, 1, 2, 1, 0.0, 0.0, GridBagConstraints.WEST, GridBagConstraints.NONE);
- parentComponent.add(lblFilter, UI_CONSTRAINT);
- UI_CONSTRAINT = constrain(0, 2, 4, 1, 1.0, 1.0, GridBagConstraints.CENTER, GridBagConstraints.BOTH);
- parentComponent.add(jspTable, UI_CONSTRAINT);
- UI_CONSTRAINT = constrain(1, 3, 4, 1, 1.0, 0.0, GridBagConstraints.EAST, GridBagConstraints.NONE);
- parentComponent.add(lblLocatr, UI_CONSTRAINT);
+ searchBar.add(Box.createHorizontalGlue(), UI_CONSTRAINT);
+ UI_CONSTRAINT = constrain(1, 0, 1, 1, 0.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.HORIZONTAL);
+ JLabel searchLabel = new JLabel(SwingUtilities.loadIconResource("search", 16));
+ searchBar.add(searchLabel, UI_CONSTRAINT);
+ UI_CONSTRAINT = constrain(2, 0, 1, 1, 0.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.HORIZONTAL);
+ searchBar.add(searchText, UI_CONSTRAINT);
+ UI_CONSTRAINT = constrain(3, 0, 1, 1, 0.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.HORIZONTAL);
+ searchBar.add(Box.createHorizontalStrut(10), UI_CONSTRAINT);
+ UI_CONSTRAINT = constrain(2, 1, 1, 1, 0.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.NONE);
+ searchBar.add(lblFilter, UI_CONSTRAINT);
+ UI_CONSTRAINT = constrain(3, 1, 1, 1, 0.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.HORIZONTAL);
+ searchBar.add(Box.createHorizontalStrut(10), UI_CONSTRAINT);
+
+ JPanel statusBar = new JPanel(new GridBagLayout());
+ UI_CONSTRAINT = constrain(3, 0, 1, 1, 1.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.HORIZONTAL);
+ statusBar.add(Box.createHorizontalGlue(), UI_CONSTRAINT);
+ UI_CONSTRAINT = constrain(0, 0, 1, 1, 0.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.NONE);
+ statusBar.add(timeLabel, UI_CONSTRAINT);
+ UI_CONSTRAINT = constrain(1, 0, 1, 1, 0.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.NONE);
+ statusBar.add(serviceLabel, UI_CONSTRAINT);
+ UI_CONSTRAINT = constrain(2, 0, 1, 1, 0.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.NONE);
+ statusBar.add(cursorLabel, UI_CONSTRAINT);
+
+ parentComponent.setLayout(new BorderLayout());
+ parentComponent.add(searchBar, BorderLayout.NORTH);
+ parentComponent.add(dataScrollPanel, BorderLayout.CENTER);
+ parentComponent.add(statusBar, BorderLayout.SOUTH);
}
- public void setModel(EnhancedTableModel model) {
+ public void changedUpdate(DocumentEvent e) {
- table.setModel(model);
- if (model.getTrueRowCount() >= 1) {
- table.setRowSelectionInterval(0, 0);
- }
+ }
- if (model.getPageCount() > 1) {
- jspTable.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
- jspTable.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
- jspTable.setCorner(ScrollPaneConstants.UPPER_RIGHT_CORNER, actionPageUp);
- jspTable.setCorner(ScrollPaneConstants.LOWER_RIGHT_CORNER, actionPageDown);
- } else {
- jspTable.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED);
- jspTable.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED);
- jspTable.setCorner(ScrollPaneConstants.UPPER_RIGHT_CORNER, Box.createHorizontalStrut(0));
- jspTable.setCorner(ScrollPaneConstants.LOWER_RIGHT_CORNER, Box.createHorizontalStrut(0));
+ public void insertUpdate(DocumentEvent e) {
+
+ doFiltering();
+ }
+
+ public void removeUpdate(DocumentEvent e) {
+
+ doFiltering();
+ }
+
+ public void valueChanged(ListSelectionEvent e) {
+
+ Object[] arguments = new Object[2];
+ arguments[0] = Integer.toString(table.getSelectedRow() + 1);
+ arguments[1] = Integer.toString(table.getRowCount());
+ synchronized (cursorLabel) {
+ cursorLabel.setText(cursorFormat.format(arguments));
}
}
- public EnhancedTable getTable() {
+ public void setMetadata(QueryMetadata metadata) {
- return table;
+ this.queryReference = metadata.getCommand();
+ serviceLabel.setText(metadata.getService());
+ timeLabel.setText(StringUtilities.getHumanReadableTime(metadata.getUserTime()));
}
- public void clearFiltering() {
+ public void setModel(EnhancedTableModel model) {
- if (table != null) {
- ResultSetTableModel model = (ResultSetTableModel) table.getModel();
- model.clearFilter();
+ this.model = model;
+ table.setModel(model);
+ if (model.getTrueRowCount() >= 1) {
+ table.setRowSelectionInterval(0, 0);
}
- txtFilter.setText(null);
- lblFilter.setText(null);
}
- /*
- * (non-Javadoc)
- *
- * @see javax.swing.event.DocumentListener#changedUpdate(javax.swing.event.DocumentEvent)
- */
- public void changedUpdate(DocumentEvent e) {
+ public EnhancedTable getTable() {
+ return table;
}
- /*
- * (non-Javadoc)
- *
- * @see javax.swing.event.DocumentListener#insertUpdate(javax.swing.event.DocumentEvent)
- */
- public void insertUpdate(DocumentEvent e) {
+ public HistoricalCommand getQueryReference() {
- doFiltering();
+ return queryReference;
}
- /*
- * (non-Javadoc)
- *
- * @see javax.swing.event.DocumentListener#removeUpdate(javax.swing.event.DocumentEvent)
- */
- public void removeUpdate(DocumentEvent e) {
+ public void clearFiltering() {
- doFiltering();
+ if (model != null) {
+ model.clearFilter();
+ }
+ searchText.setText(null);
+ lblFilter.setText(null);
}
private synchronized void doFiltering() {
- if (table != null) {
- EnhancedTableModel model = (EnhancedTableModel) table.getModel();
- String filter = txtFilter.getText().trim();
+ if (model != null) {
+ String filter = searchText.getText().trim();
int found = model.applyFilter(filter);
if (found >= 1) {
String txt = messages.format("datagrid.found_matches", Integer.toString(found));
@@ -222,50 +209,5 @@
}
table.invalidate();
}
-
}
-
- /*
- * (non-Javadoc)
- *
- * @see java.awt.event.ActionListener#actionPerformed(java.awt.event.ActionEvent)
- */
- public void actionPerformed(ActionEvent e) {
-
- Object src = e.getSource();
- if (src == btnHider) {
- txtFilter.setVisible(!txtFilter.isVisible());
- lblFilter.setVisible(!lblFilter.isVisible());
- lblSearch.setVisible(!lblSearch.isVisible());
- glue.setVisible(!glue.isVisible());
- if (txtFilter.isVisible()) {
- btnHider.setIcon(new SortableHeaderRenderer.BasicArrowIcon(SwingConstants.NORTH, 4));
- // btnHider.setToolTipText(BasicUtilities.getString("Filter_Hide_Tip"));
- } else {
- btnHider.setIcon(new SortableHeaderRenderer.BasicArrowIcon(SwingConstants.SOUTH, 4));
- // btnHider.setToolTipText(BasicUtilities.getString("Filter_Show_Tip"));
- }
- btnHider.getParent().validate();
- btnHider.getParent().repaint();
- } else if (src == actionPageDown) {
- EnhancedTableModel model = (EnhancedTableModel) table.getModel();
- model.pageDown();
- } else if (src == actionPageUp) {
- EnhancedTableModel model = (EnhancedTableModel) table.getModel();
- model.pageUp();
- }
- }
-
- public void valueChanged(ListSelectionEvent e) {
-
- EnhancedTableModel model = (EnhancedTableModel) table.getModel();
- String str = nf.format(model.translateRow(table.getSelectedRow()) + 1);
- str = str.concat("/");
- str = str.concat(nf.format(model.getTrueRowCount()));
- str = str.concat(" [");
- str = str.concat(nf.format(model.getPageOffset() + 1));
- str = str.concat("/");
- str = str.concat(nf.format(model.getPageCount()));
- lblLocatr.setText(" ".concat(str).concat("] "));
- }
}
\ No newline at end of file
Modified: isql-swing/branches/3.0.0-maintenance/src/org/isqlviewer/ui/JdbcWorkbench.java
===================================================================
--- isql-swing/branches/3.0.0-maintenance/src/org/isqlviewer/ui/JdbcWorkbench.java 2007-08-07 23:54:49 UTC (rev 83)
+++ isql-swing/branches/3.0.0-maintenance/src/org/isqlviewer/ui/JdbcWorkbench.java 2007-08-07 23:56:25 UTC (rev 84)
@@ -195,6 +195,7 @@
int id = event.getID();
switch (id) {
case SharedActions.REFRESH_SELECTED_RESULTS :
+ refreshSelectedTab();
break;
case SharedActions.NAVIGATE_LEFT_TAB :
navigateLeftTab();
@@ -304,6 +305,21 @@
}
}
+ private void refreshSelectedTab() {
+
+ JComponent component = (JComponent) centerTabbedPane.getSelectedComponent();
+ DataGrid dataGrid = (DataGrid) component.getClientProperty("x");
+ HistoricalCommand command = dataGrid.getQueryReference();
+ String statement = command.getCommandText();
+ boolean connected = checkConnection();
+ if (connected) {
+ TabbedResultsetRenderer renderer = new TabbedResultsetRenderer(centerTabbedPane);
+ QueryExecutor executor = new QueryExecutor(currentService, renderer, statement);
+ executor.setLogHistory(false);
+ executor.run();
+ }
+ }
+
public void doLayout(JComponent parentComponent, Preferences userPreferences, SwingEventManager swingEventManager) {
preferences = userPreferences.node("views/jdbc-workbench");
@@ -1081,7 +1097,6 @@
ca = new CustomAction("refresh-current-view", SharedActions.REFRESH_SELECTED_RESULTS, manager);
acclerator = messages.format("menu.refresh_selected_view.accelerator");
- ca.setEnabled(false);
ca.putValue(CustomAction.ICON_NAME, "reload");
ca.putValue(Action.ACCELERATOR_KEY, SwingUtilities.getKeyStroke(acclerator));
ca.putValue(Action.DEFAULT, messages.getMessage("menu.refresh_selected_view.title"));
@@ -1584,8 +1599,8 @@
row.add(entry.getValue());
model.addRow(row);
}
+
dataGrid.setModel(model);
-
centerTabbedPane.addTab(messages.format("JdbcWorkbench.database_metadata"), view);
index = centerTabbedPane.indexOfComponent(view);
centerTabbedPane.setClosableTab(index, true);
Modified: isql-swing/branches/3.0.0-maintenance/src/org/isqlviewer/ui/ResourceBundle.properties
===================================================================
--- isql-swing/branches/3.0.0-maintenance/src/org/isqlviewer/ui/ResourceBundle.properties 2007-08-07 23:54:49 UTC (rev 83)
+++ isql-swing/branches/3.0.0-maintenance/src/org/isqlviewer/ui/ResourceBundle.properties 2007-08-07 23:56:25 UTC (rev 84)
@@ -57,6 +57,9 @@
datagrid.no_matches=No match
datagrid.found_matches=Found {0} matche(s).
+DataGrid.current_position_of_selection=The row that is currently selected out of all of the rows.
+DataGrid.time_spent_aquiring_these_results=Time spent aquiring these results.
+DataGrid.service_these_results_came_from=The service used to aquire these results.
bookmarkeditor.created-date.title=Created On
bookmarkeditor.created-date.tip=The date and time this bookmark was created.
Modified: isql-swing/branches/3.0.0-maintenance/src/org/isqlviewer/ui/SqlCommandEditor.java
===================================================================
--- isql-swing/branches/3.0.0-maintenance/src/org/isqlviewer/ui/SqlCommandEditor.java 2007-08-07 23:54:49 UTC (rev 83)
+++ isql-swing/branches/3.0.0-maintenance/src/org/isqlviewer/ui/SqlCommandEditor.java 2007-08-07 23:56:25 UTC (rev 84)
@@ -34,6 +34,7 @@
import java.sql.Connection;
import java.sql.DatabaseMetaData;
import java.sql.SQLException;
+import java.util.TooManyListenersException;
import java.util.prefs.Preferences;
import javax.swing.AbstractAction;
@@ -145,13 +146,15 @@
commandEditor.addFocusListener(this);
commandEditor.addCaretListener(this);
-
- DropTarget dropTarget = new TextComponentDropTarget(commandEditor);
- dropTarget.setActive(true);
+ commandEditor.setDragEnabled(true);
+ DropTarget dropTarget = commandEditor.getDropTarget();
dropTarget.setDefaultActions(DnDConstants.ACTION_COPY_OR_MOVE);
- commandEditor.setDropTarget(dropTarget);
+ try {
+ dropTarget.addDropTargetListener(new TextComponentDropTarget(commandEditor));
+ } catch (TooManyListenersException ignored) {
+ debug("addDropTargetListener()", ignored);
+ }
- commandEditor.setDragEnabled(true);
commandEditor.getDocument().addUndoableEditListener(this);
localizeTextComponent(commandEditor, undoManager);
}
Modified: isql-swing/branches/3.0.0-maintenance/src/org/isqlviewer/ui/SqlCommandMouseAdapter.java
===================================================================
--- isql-swing/branches/3.0.0-maintenance/src/org/isqlviewer/ui/SqlCommandMouseAdapter.java 2007-08-07 23:54:49 UTC (rev 83)
+++ isql-swing/branches/3.0.0-maintenance/src/org/isqlviewer/ui/SqlCommandMouseAdapter.java 2007-08-07 23:56:25 UTC (rev 84)
@@ -53,6 +53,7 @@
*/
private Position.Bias[] bias = new Position.Bias[1];
+ @Override
public void mouseClicked(MouseEvent e) {
JEditorPane editor = (JEditorPane) e.getSource();
@@ -69,6 +70,7 @@
}
}
+ @Override
public void mouseMoved(MouseEvent e) {
JEditorPane editor = (JEditorPane) e.getSource();
@@ -152,6 +154,7 @@
super(url);
}
+ @Override
public void connect() {
}
Modified: isql-swing/branches/3.0.0-maintenance/src/org/isqlviewer/ui/TabbedResultsetRenderer.java
===================================================================
--- isql-swing/branches/3.0.0-maintenance/src/org/isqlviewer/ui/TabbedResultsetRenderer.java 2007-08-07 23:54:49 UTC (rev 83)
+++ isql-swing/branches/3.0.0-maintenance/src/org/isqlviewer/ui/TabbedResultsetRenderer.java 2007-08-07 23:56:25 UTC (rev 84)
@@ -47,6 +47,7 @@
import javax.swing.JProgressBar;
import org.apache.log4j.Logger;
+import org.isqlviewer.sql.QueryMetadata;
import org.isqlviewer.sql.ResultSetRenderer;
import org.isqlviewer.swing.EnhancedTabbedPane;
import org.isqlviewer.swing.SwingUtilities;
@@ -160,7 +161,7 @@
logger.info(messages.format("tabbedresultsetrenderer.rows_affected", new Integer(updateCount)));
}
- public void finalizeStatement(String stmtID) {
+ public void finalizeStatement(String stmtID, QueryMetadata metadata) {
eyeCandy.updateStatus(messages.format("TabbedResultsetRenderer.finalize_statement", stmtID));
@@ -181,6 +182,9 @@
componentView.removeAll();
dataGrid.doLayout(componentView, null, null);
dataGrid.setModel(eyeCandy.getQueryData());
+ dataGrid.setMetadata(metadata);
+ componentView.putClientProperty("x", dataGrid);
+
tabbedPane.setToolTipTextAt(index, html);
tabbedPane.setTitleAt(index, str);
tabbedPane.setComponentAt(index, componentView);
@@ -360,4 +364,5 @@
return componentView;
}
}
+
}
\ No newline at end of file
Modified: isql-swing/branches/3.0.0-maintenance/src/org/isqlviewer/ui/dnd/SchemaNodeRenderer.java
===================================================================
--- isql-swing/branches/3.0.0-maintenance/src/org/isqlviewer/ui/dnd/SchemaNodeRenderer.java 2007-08-07 23:54:49 UTC (rev 83)
+++ isql-swing/branches/3.0.0-maintenance/src/org/isqlviewer/ui/dnd/SchemaNodeRenderer.java 2007-08-07 23:56:25 UTC (rev 84)
@@ -32,6 +32,7 @@
import org.isqlviewer.model.JdbcSchemaTreeModel;
import org.isqlviewer.model.SchemaNode;
import org.isqlviewer.model.SchemaNodeType;
+import org.isqlviewer.sql.QueryMetadata;
import org.isqlviewer.sql.ResultSetRenderer;
import org.isqlviewer.util.LoggableObject;
@@ -173,7 +174,7 @@
nodeRenderer.recieveResultsetWarnings(set, set.getWarnings());
}
} finally {
- nodeRenderer.finalizeStatement("");
+ nodeRenderer.finalizeStatement("", new QueryMetadata());
try {
if (set != null) {
set.close();
Modified: isql-swing/branches/3.0.0-maintenance/src/org/isqlviewer/ui/dnd/TextComponentDropTarget.java
===================================================================
--- isql-swing/branches/3.0.0-maintenance/src/org/isqlviewer/ui/dnd/TextComponentDropTarget.java 2007-08-07 23:54:49 UTC (rev 83)
+++ isql-swing/branches/3.0.0-maintenance/src/org/isqlviewer/ui/dnd/TextComponentDropTarget.java 2007-08-07 23:56:25 UTC (rev 84)
@@ -26,8 +26,10 @@
import java.awt.datatransfer.Transferable;
import java.awt.datatransfer.UnsupportedFlavorException;
import java.awt.dnd.DnDConstants;
-import java.awt.dnd.DropTarget;
+import java.awt.dnd.DropTargetDragEvent;
import java.awt.dnd.DropTargetDropEvent;
+import java.awt.dnd.DropTargetEvent;
+import java.awt.dnd.DropTargetListener;
import java.io.IOException;
import javax.swing.text.BadLocationException;
@@ -42,7 +44,7 @@
* @author Mark A. Kobold <mkobold at isqlviewer dot com>
* @version 1.0
*/
-public class TextComponentDropTarget extends DropTarget {
+public class TextComponentDropTarget implements DropTargetListener {
private static final long serialVersionUID = 4496993389366518143L;
private JTextComponent editor = null;
@@ -51,9 +53,8 @@
this.editor = editor;
}
-
public void drop(DropTargetDropEvent event) {
-
+
boolean successful = false;
try {
if (event.isDataFlavorSupported(DataFlavor.stringFlavor)) {
@@ -85,4 +86,36 @@
event.dropComplete(successful);
}
}
+ /* (non-Javadoc)
+ * @see java.awt.dnd.DropTargetListener#dragEnter(java.awt.dnd.DropTargetDragEvent)
+ */
+ public void dragEnter(DropTargetDragEvent dtde) {
+
+ // TODO Auto-generated method stub
+
+ }
+ /* (non-Javadoc)
+ * @see java.awt.dnd.DropTargetListener#dragExit(java.awt.dnd.DropTargetEvent)
+ */
+ public void dragExit(DropTargetEvent dte) {
+
+ // TODO Auto-generated method stub
+
+ }
+ /* (non-Javadoc)
+ * @see java.awt.dnd.DropTargetListener#dragOver(java.awt.dnd.DropTargetDragEvent)
+ */
+ public void dragOver(DropTargetDragEvent dtde) {
+
+ // TODO Auto-generated method stub
+
+ }
+ /* (non-Javadoc)
+ * @see java.awt.dnd.DropTargetListener#dropActionChanged(java.awt.dnd.DropTargetDragEvent)
+ */
+ public void dropActionChanged(DropTargetDragEvent dtde) {
+
+ // TODO Auto-generated method stub
+
+ }
}
\ No newline at end of file
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <mk...@us...> - 2007-08-07 23:54:49
|
Revision: 83
http://isql.svn.sourceforge.net/isql/?rev=83&view=rev
Author: mkobold
Date: 2007-08-07 16:54:49 -0700 (Tue, 07 Aug 2007)
Log Message:
-----------
* Added initial support for providing query meta data that contains metrics on the query execution.
* Updated .classpath to use eclipse europa.
Modified Paths:
--------------
isql-core/branches/3.0.0-maintenance/.classpath
isql-core/branches/3.0.0-maintenance/.externalToolBuilders/External Resource Copier.launch
isql-core/branches/3.0.0-maintenance/.project
isql-core/branches/3.0.0-maintenance/src/org/isqlviewer/sql/ResultSetRenderer.java
isql-core/branches/3.0.0-maintenance/src/org/isqlviewer/util/IsqlToolkit.java
isql-core/branches/3.0.0-maintenance/src/org/isqlviewer/util/NullResultSetViewer.java
isql-core/branches/3.0.0-maintenance/src/org/isqlviewer/util/QueryExecutor.java
Added Paths:
-----------
isql-core/branches/3.0.0-maintenance/src/org/isqlviewer/sql/QueryMetadata.java
Modified: isql-core/branches/3.0.0-maintenance/.classpath
===================================================================
--- isql-core/branches/3.0.0-maintenance/.classpath 2007-06-12 22:50:01 UTC (rev 82)
+++ isql-core/branches/3.0.0-maintenance/.classpath 2007-08-07 23:54:49 UTC (rev 83)
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="src" path="src"/>
- <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
<classpathentry kind="src" path="test"/>
- <classpathentry exported="true" kind="var" path="JUNIT_HOME/junit.jar" sourcepath="/JUNIT_SRC_HOME/junitsrc.zip"/>
<classpathentry exported="true" kind="lib" path="lib/log4j.jar"/>
<classpathentry exported="true" kind="lib" path="lib/derby.jar"/>
+ <classpathentry exported="true" kind="con" path="org.eclipse.jdt.junit.JUNIT_CONTAINER/3"/>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
<classpathentry kind="output" path="bin"/>
</classpath>
Modified: isql-core/branches/3.0.0-maintenance/.externalToolBuilders/External Resource Copier.launch
===================================================================
--- isql-core/branches/3.0.0-maintenance/.externalToolBuilders/External Resource Copier.launch 2007-06-12 22:50:01 UTC (rev 82)
+++ isql-core/branches/3.0.0-maintenance/.externalToolBuilders/External Resource Copier.launch 2007-08-07 23:54:49 UTC (rev 83)
@@ -1,15 +1,22 @@
<?xml version="1.0" encoding="UTF-8"?>
<launchConfiguration type="org.eclipse.ant.AntBuilderLaunchConfigurationType">
-<booleanAttribute key="org.eclipse.debug.ui.ATTR_LAUNCH_IN_BACKGROUND" value="false"/>
-<booleanAttribute key="org.eclipse.ant.ui.DEFAULT_VM_INSTALL" value="false"/>
-<booleanAttribute key="org.eclipse.jdt.launching.DEFAULT_CLASSPATH" value="true"/>
<stringAttribute key="org.eclipse.ant.ui.ATTR_ANT_AFTER_CLEAN_TARGETS" value="eclipse-setup,"/>
-<stringAttribute key="org.eclipse.ui.externaltools.ATTR_RUN_BUILD_KINDS" value="full,"/>
+<stringAttribute key="org.eclipse.ant.ui.ATTR_ANT_MANUAL_TARGETS" value="eclipse-setup,"/>
<booleanAttribute key="org.eclipse.ant.ui.ATTR_TARGETS_UPDATED" value="true"/>
-<stringAttribute key="org.eclipse.ui.externaltools.ATTR_WORKING_DIRECTORY" value="${workspace_loc:/isql-core}"/>
+<booleanAttribute key="org.eclipse.ant.ui.DEFAULT_VM_INSTALL" value="false"/>
<booleanAttribute key="org.eclipse.ant.uiSET_INPUTHANDLER" value="false"/>
+<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS">
+<listEntry value="/isql-core/build.xml"/>
+</listAttribute>
+<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES">
+<listEntry value="1"/>
+</listAttribute>
<booleanAttribute key="org.eclipse.debug.core.appendEnvironmentVariables" value="true"/>
-<booleanAttribute key="org.eclipse.ui.externaltools.ATTR_TRIGGERS_CONFIGURED" value="true"/>
+<booleanAttribute key="org.eclipse.debug.ui.ATTR_LAUNCH_IN_BACKGROUND" value="false"/>
<stringAttribute key="org.eclipse.jdt.launching.CLASSPATH_PROVIDER" value="org.eclipse.ant.ui.AntClasspathProvider"/>
+<booleanAttribute key="org.eclipse.jdt.launching.DEFAULT_CLASSPATH" value="true"/>
<stringAttribute key="org.eclipse.ui.externaltools.ATTR_LOCATION" value="${workspace_loc:/isql-core/build.xml}"/>
+<stringAttribute key="org.eclipse.ui.externaltools.ATTR_RUN_BUILD_KINDS" value="full,incremental,"/>
+<booleanAttribute key="org.eclipse.ui.externaltools.ATTR_TRIGGERS_CONFIGURED" value="true"/>
+<stringAttribute key="org.eclipse.ui.externaltools.ATTR_WORKING_DIRECTORY" value="${workspace_loc:/isql-core}"/>
</launchConfiguration>
Modified: isql-core/branches/3.0.0-maintenance/.project
===================================================================
--- isql-core/branches/3.0.0-maintenance/.project 2007-06-12 22:50:01 UTC (rev 82)
+++ isql-core/branches/3.0.0-maintenance/.project 2007-08-07 23:54:49 UTC (rev 83)
@@ -12,7 +12,7 @@
</buildCommand>
<buildCommand>
<name>org.eclipse.ui.externaltools.ExternalToolBuilder</name>
- <triggers>full,</triggers>
+ <triggers>full,incremental,</triggers>
<arguments>
<dictionary>
<key>LaunchConfigHandle</key>
Added: isql-core/branches/3.0.0-maintenance/src/org/isqlviewer/sql/QueryMetadata.java
===================================================================
--- isql-core/branches/3.0.0-maintenance/src/org/isqlviewer/sql/QueryMetadata.java (rev 0)
+++ isql-core/branches/3.0.0-maintenance/src/org/isqlviewer/sql/QueryMetadata.java 2007-08-07 23:54:49 UTC (rev 83)
@@ -0,0 +1,87 @@
+/*
+ * The contents of this file are subject to the Mozilla Public License
+ * Version 1.1 (the "License"); you may not use this file except in
+ * compliance with the License. You may obtain a copy of the License at
+ * http://www.mozilla.org/MPL/
+ *
+ * Software distributed under the License is distributed on an "AS IS"
+ * basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the
+ * License for the specific language governing rights and limitations
+ * under the License.
+ *
+ * The Original Code is iSQL-Viewer, A Mutli-Platform Database Tool.
+ *
+ * The Initial Developer of the Original Code is iSQL-Viewer, A Mutli-Platform Database Tool.
+ * Portions created by Mark A. Kobold are Copyright (C) 2000-2007. All Rights Reserved.
+ *
+ * Contributor(s):
+ * Mark A. Kobold [mkobold <at> isqlviewer <dot> com].
+ *
+ * If you didn't download this code from the following link, you should check
+ * if you aren't using an obsolete version: http://www.isqlviewer.com
+ */
+package org.isqlviewer.sql;
+
+import org.isqlviewer.history.HistoricalCommand;
+
+/**
+ * Simple meta-data object for collecting query execution metrics within iSQL-Viewer.
+ * <p>
+ *
+ * @author Mark A. Kobold <mkobold at isqlviewer dot com>
+ * @version 1.0
+ */
+public class QueryMetadata {
+
+ private long userTime = 0;
+ private String service = null;
+ private HistoricalCommand command = null;
+
+ /**
+ * @return the command
+ */
+ public HistoricalCommand getCommand() {
+
+ return command;
+ }
+
+ /**
+ * @param command the command to set
+ */
+ public void setCommand(HistoricalCommand command) {
+
+ this.command = command;
+ }
+
+ /**
+ * @return the service
+ */
+ public String getService() {
+
+ return service;
+ }
+
+ /**
+ * @param service the service to set
+ */
+ public void setService(String service) {
+
+ this.service = service;
+ }
+
+ /**
+ * @return the userTime
+ */
+ public long getUserTime() {
+
+ return userTime;
+ }
+
+ /**
+ * @param userTime the userTime to set
+ */
+ public void setUserTime(long userTime) {
+
+ this.userTime = userTime;
+ }
+}
Modified: isql-core/branches/3.0.0-maintenance/src/org/isqlviewer/sql/ResultSetRenderer.java
===================================================================
--- isql-core/branches/3.0.0-maintenance/src/org/isqlviewer/sql/ResultSetRenderer.java 2007-06-12 22:50:01 UTC (rev 82)
+++ isql-core/branches/3.0.0-maintenance/src/org/isqlviewer/sql/ResultSetRenderer.java 2007-08-07 23:54:49 UTC (rev 83)
@@ -177,7 +177,7 @@
*
* @param stmtID unqiue identifier for the statement that was cancelled.
*/
- public void finalizeStatement(String stmtID);
+ public void finalizeStatement(String stmtID, QueryMetadata metaData);
/**
* Statement warnings from a resultset can be delegated here.
Modified: isql-core/branches/3.0.0-maintenance/src/org/isqlviewer/util/IsqlToolkit.java
===================================================================
--- isql-core/branches/3.0.0-maintenance/src/org/isqlviewer/util/IsqlToolkit.java 2007-06-12 22:50:01 UTC (rev 82)
+++ isql-core/branches/3.0.0-maintenance/src/org/isqlviewer/util/IsqlToolkit.java 2007-08-07 23:54:49 UTC (rev 83)
@@ -69,7 +69,7 @@
* Build number or patch level version of the iSQL-Viewer code base.
* <p>
*/
- public static final int VERSION_BUILD = 0;
+ public static final int VERSION_BUILD = 2;
/**
* System property for determining if the iSQL-Viewer MRJ Adapter is installed.
*/
Modified: isql-core/branches/3.0.0-maintenance/src/org/isqlviewer/util/NullResultSetViewer.java
===================================================================
--- isql-core/branches/3.0.0-maintenance/src/org/isqlviewer/util/NullResultSetViewer.java 2007-06-12 22:50:01 UTC (rev 82)
+++ isql-core/branches/3.0.0-maintenance/src/org/isqlviewer/util/NullResultSetViewer.java 2007-08-07 23:54:49 UTC (rev 83)
@@ -27,6 +27,7 @@
import java.sql.SQLWarning;
import java.sql.Statement;
+import org.isqlviewer.sql.QueryMetadata;
import org.isqlviewer.sql.ResultSetRenderer;
class NullResultSetViewer implements ResultSetRenderer {
@@ -39,7 +40,7 @@
}
- public void finalizeStatement(String stmtID) {
+ public void finalizeStatement(String stmtID, QueryMetadata metaData) {
}
Modified: isql-core/branches/3.0.0-maintenance/src/org/isqlviewer/util/QueryExecutor.java
===================================================================
--- isql-core/branches/3.0.0-maintenance/src/org/isqlviewer/util/QueryExecutor.java 2007-06-12 22:50:01 UTC (rev 82)
+++ isql-core/branches/3.0.0-maintenance/src/org/isqlviewer/util/QueryExecutor.java 2007-08-07 23:54:49 UTC (rev 83)
@@ -46,6 +46,7 @@
import org.isqlviewer.sql.ConnectionProfile;
import org.isqlviewer.sql.JdbcService;
import org.isqlviewer.sql.JdbcUtilities;
+import org.isqlviewer.sql.QueryMetadata;
import org.isqlviewer.sql.ResultSetRenderer;
/**
@@ -68,6 +69,7 @@
private ResultSetRenderer renderer = null;
private String statement = null;
private JdbcService service = null;
+ private boolean logHistory = true;
public QueryExecutor(JdbcService service, ResultSetRenderer renderer, String statement) {
@@ -80,6 +82,11 @@
this.statement = statement;
}
+ public void setLogHistory(boolean logHistory) {
+
+ this.logHistory = logHistory;
+ }
+
public void run() {
if (service == null) {
@@ -111,13 +118,17 @@
boolean logBatch = statements.length > 1;
for (int i = 0; i < statements.length; i++) {
String userQuery = statements[i].trim();
+ QueryMetadata metadata = new QueryMetadata();
+ metadata.setService(service.getName());
if (userQuery.length() > 0) {
try {
renderer.initialize();
String substitutedQuery = doVariableSubstitutions(userQuery);
String nativeSQL = getNativeSql(connection, substitutedQuery);
Date queryTime = new Date();
+ long userTime = System.currentTimeMillis();
doQuery(connection, localID, nativeSQL);
+ metadata.setUserTime(System.currentTimeMillis() - userTime);
if (logBatch && commandLogger != null) {
HistoricalCommand subCommand = new HistoricalCommand();
subCommand.setCommandText(userQuery);
@@ -126,8 +137,9 @@
subCommand.setTransactionId(executionHistory.getTransactionId());
getTypeForQuery(subCommand, userQuery);
executionHistory.addSubcommand(subCommand);
+ metadata.setCommand(subCommand);
} else {
- logCommandHistory(commandLogger, userQuery, queryTime);
+ metadata.setCommand(logCommandHistory(commandLogger, userQuery, queryTime));
}
} catch (ParseException e) {
error("ERR:", e);
@@ -141,12 +153,14 @@
} catch (Exception e) {
error("ERR:", e);
} finally {
- renderer.finalizeStatement(localID);
+ renderer.finalizeStatement(localID, metadata);
}
}
}
- if (commandLogger != null && logBatch) {
- commandLogger.logCommand(executionHistory);
+ if (logHistory) {
+ if (commandLogger != null && logBatch) {
+ commandLogger.logCommand(executionHistory);
+ }
}
} finally {
info(messages.getMessage("queryexecutor.finished"));
@@ -155,16 +169,18 @@
}
- private void logCommandHistory(JdbcCommandLogger commandLogger, String userQuery, Date queryTime) {
+ private HistoricalCommand logCommandHistory(JdbcCommandLogger commandLogger, String userQuery, Date queryTime) {
- if (commandLogger != null) {
+ if (logHistory && commandLogger != null) {
HistoricalCommand command = new HistoricalCommand();
command.setCommandText(userQuery);
command.setQueryTime(queryTime);
command.setService(service.getName());
getTypeForQuery(command, userQuery);
commandLogger.logCommand(command);
+ return command;
}
+ return null;
}
private void getTypeForQuery(HistoricalCommand command, String userQuery) {
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <mk...@us...> - 2007-06-12 22:49:59
|
Revision: 82
http://svn.sourceforge.net/isql/?rev=82&view=rev
Author: mkobold
Date: 2007-06-12 15:50:01 -0700 (Tue, 12 Jun 2007)
Log Message:
-----------
Tagged version of iSQL-Viewer 3.0.1
This version addresses some minor issues with variable substituion and a bug with saving a large
SQL query to the preferences when the application closes.
Added Paths:
-----------
isql-swing/tags/iSQL-Viewer-3.0.1/
Copied: isql-swing/tags/iSQL-Viewer-3.0.1 (from rev 81, isql-swing/branches/3.0.0-maintenance)
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <mk...@us...> - 2007-06-12 22:49:45
|
Revision: 81
http://svn.sourceforge.net/isql/?rev=81&view=rev
Author: mkobold
Date: 2007-06-12 15:49:47 -0700 (Tue, 12 Jun 2007)
Log Message:
-----------
Tagged version of iSQL-Viewer 3.0.1
This version addresses some minor issues with variable substituion and a bug with saving a large
SQL query to the preferences when the application closes.
Added Paths:
-----------
isql-mrj/tags/iSQL-Viewer-3.0.1/
Copied: isql-mrj/tags/iSQL-Viewer-3.0.1 (from rev 80, isql-mrj/branches/3.0.0-maintenance)
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <mk...@us...> - 2007-06-12 22:49:31
|
Revision: 80
http://svn.sourceforge.net/isql/?rev=80&view=rev
Author: mkobold
Date: 2007-06-12 15:49:33 -0700 (Tue, 12 Jun 2007)
Log Message:
-----------
Tagged version of iSQL-Viewer 3.0.1
This version addresses some minor issues with variable substituion and a bug with saving a large
SQL query to the preferences when the application closes.
Added Paths:
-----------
isql-core/tags/iSQL-Viewer-3.0.1/
Copied: isql-core/tags/iSQL-Viewer-3.0.1 (from rev 79, isql-core/branches/3.0.0-maintenance)
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <mk...@us...> - 2007-06-12 22:49:15
|
Revision: 79
http://svn.sourceforge.net/isql/?rev=79&view=rev
Author: mkobold
Date: 2007-06-12 15:49:16 -0700 (Tue, 12 Jun 2007)
Log Message:
-----------
* Synchronized with the 3.1.0-development branch
Modified Paths:
--------------
isql-swing/branches/3.0.0-maintenance/build.xml
Property Changed:
----------------
isql-swing/branches/3.0.0-maintenance/
Property changes on: isql-swing/branches/3.0.0-maintenance
___________________________________________________________________
Name: svn:ignore
-
bin
classes
+ bin
classes
isql-swing.jar
isql-swing-src.zip
Modified: isql-swing/branches/3.0.0-maintenance/build.xml
===================================================================
--- isql-swing/branches/3.0.0-maintenance/build.xml 2007-06-12 22:48:26 UTC (rev 78)
+++ isql-swing/branches/3.0.0-maintenance/build.xml 2007-06-12 22:49:16 UTC (rev 79)
@@ -147,7 +147,10 @@
<attribute name="Project-Version" value="${project.version}" />
</manifest>
</jar>
- <zip zipfile="${basedir}/${project.name}-src.zip" basedir="${src.dir}" />
+ <zip destfile="${basedir}/${project.name}-src.zip">
+ <fileset dir="${src.dir}" />
+ <fileset dir="${basedir}" includes="build.xml" />
+ </zip>
</target>
<target name="compile-tests" if="junit.compile">
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <mk...@us...> - 2007-06-12 22:48:26
|
Revision: 78
http://svn.sourceforge.net/isql/?rev=78&view=rev
Author: mkobold
Date: 2007-06-12 15:48:26 -0700 (Tue, 12 Jun 2007)
Log Message:
-----------
* Synchronized with the 3.1.0-development branch
Modified Paths:
--------------
isql-core/branches/3.0.0-maintenance/build.xml
isql-core/branches/3.0.0-maintenance/src/org/isqlviewer/resource/driver.properties
Modified: isql-core/branches/3.0.0-maintenance/build.xml
===================================================================
--- isql-core/branches/3.0.0-maintenance/build.xml 2007-06-12 22:38:12 UTC (rev 77)
+++ isql-core/branches/3.0.0-maintenance/build.xml 2007-06-12 22:48:26 UTC (rev 78)
@@ -145,7 +145,11 @@
<attribute name="Project-Version" value="${project.version}" />
</manifest>
</jar>
- <zip zipfile="${basedir}/${project.name}-src.zip" basedir="${src.dir}" />
+
+ <zip destfile="${basedir}/${project.name}-src.zip">
+ <fileset dir="${src.dir}" />
+ <fileset dir="${basedir}" includes="build.xml" />
+ </zip>
</target>
<target name="compile-tests" if="junit.compile">
Modified: isql-core/branches/3.0.0-maintenance/src/org/isqlviewer/resource/driver.properties
===================================================================
--- isql-core/branches/3.0.0-maintenance/src/org/isqlviewer/resource/driver.properties 2007-06-12 22:38:12 UTC (rev 77)
+++ isql-core/branches/3.0.0-maintenance/src/org/isqlviewer/resource/driver.properties 2007-06-12 22:48:26 UTC (rev 78)
@@ -26,3 +26,5 @@
sun.jdbc.odbc.JdbcOdbcDriver=jdbc\:odbc\:odbcDataSource
uk.co.thinksql.ThinkSQLDriver=jdbc\:thinksql\://hostname\:9075
weblogic.jdbc.mssqlserver4.Driver=weblogic\:mssqlserver4\:hostname\:1433
+com.j_spaces.jdbc.driver.GDriver=jdbc:gigaspaces:url:rmi://<hostname>/./myCache
+nl.cwi.monetdb.jdbc.MonetDriver=jdbc:monetdb://localhost/database
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <mk...@us...> - 2007-06-12 22:38:10
|
Revision: 77
http://svn.sourceforge.net/isql/?rev=77&view=rev
Author: mkobold
Date: 2007-06-12 15:38:12 -0700 (Tue, 12 Jun 2007)
Log Message:
-----------
* Fixed build script to include the ant script with source packages
Modified Paths:
--------------
isql-core/branches/3.1.0-development/build.xml
Modified: isql-core/branches/3.1.0-development/build.xml
===================================================================
--- isql-core/branches/3.1.0-development/build.xml 2007-06-12 22:38:07 UTC (rev 76)
+++ isql-core/branches/3.1.0-development/build.xml 2007-06-12 22:38:12 UTC (rev 77)
@@ -145,7 +145,11 @@
<attribute name="Project-Version" value="${project.version}" />
</manifest>
</jar>
- <zip zipfile="${basedir}/${project.name}-src.zip" basedir="${src.dir}" />
+
+ <zip destfile="${basedir}/${project.name}-src.zip">
+ <fileset dir="${src.dir}" />
+ <fileset dir="${basedir}" includes="build.xml" />
+ </zip>
</target>
<target name="compile-tests" if="junit.compile">
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <mk...@us...> - 2007-06-12 22:38:06
|
Revision: 76
http://svn.sourceforge.net/isql/?rev=76&view=rev
Author: mkobold
Date: 2007-06-12 15:38:07 -0700 (Tue, 12 Jun 2007)
Log Message:
-----------
* Fixed build script to include the ant script with source packages
Modified Paths:
--------------
isql-mrj/branches/3.0.0-maintenance/build.xml
Modified: isql-mrj/branches/3.0.0-maintenance/build.xml
===================================================================
--- isql-mrj/branches/3.0.0-maintenance/build.xml 2007-06-12 22:37:55 UTC (rev 75)
+++ isql-mrj/branches/3.0.0-maintenance/build.xml 2007-06-12 22:38:07 UTC (rev 76)
@@ -147,7 +147,10 @@
<attribute name="Project-Version" value="${project.version}" />
</manifest>
</jar>
- <zip zipfile="${basedir}/${project.name}-src.zip" basedir="${src.dir}" />
+ <zip destfile="${basedir}/${project.name}-src.zip">
+ <fileset dir="${src.dir}" />
+ <fileset dir="${basedir}" includes="build.xml" />
+ </zip>
</target>
<target name="compile-tests" if="junit.compile">
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <mk...@us...> - 2007-06-12 22:37:54
|
Revision: 75
http://svn.sourceforge.net/isql/?rev=75&view=rev
Author: mkobold
Date: 2007-06-12 15:37:55 -0700 (Tue, 12 Jun 2007)
Log Message:
-----------
* Fixed build script to include the ant script with source packages
Modified Paths:
--------------
isql-swing/branches/3.1.0-development/build.xml
Modified: isql-swing/branches/3.1.0-development/build.xml
===================================================================
--- isql-swing/branches/3.1.0-development/build.xml 2007-06-12 22:26:27 UTC (rev 74)
+++ isql-swing/branches/3.1.0-development/build.xml 2007-06-12 22:37:55 UTC (rev 75)
@@ -147,7 +147,10 @@
<attribute name="Project-Version" value="${project.version}" />
</manifest>
</jar>
- <zip zipfile="${basedir}/${project.name}-src.zip" basedir="${src.dir}" />
+ <zip destfile="${basedir}/${project.name}-src.zip">
+ <fileset dir="${src.dir}" />
+ <fileset dir="${basedir}" includes="build.xml" />
+ </zip>
</target>
<target name="compile-tests" if="junit.compile">
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <mk...@us...> - 2007-06-12 22:26:28
|
Revision: 74
http://svn.sourceforge.net/isql/?rev=74&view=rev
Author: mkobold
Date: 2007-06-12 15:26:27 -0700 (Tue, 12 Jun 2007)
Log Message:
-----------
* Corrected query processing for variable substitutions.
* Added MonetDB and Gigaspaces drives to the default list of drivers.
Modified Paths:
--------------
isql-core/branches/3.1.0-development/src/org/isqlviewer/resource/driver.properties
isql-core/branches/3.1.0-development/src/org/isqlviewer/util/QueryExecutor.java
Modified: isql-core/branches/3.1.0-development/src/org/isqlviewer/resource/driver.properties
===================================================================
--- isql-core/branches/3.1.0-development/src/org/isqlviewer/resource/driver.properties 2007-06-07 02:03:11 UTC (rev 73)
+++ isql-core/branches/3.1.0-development/src/org/isqlviewer/resource/driver.properties 2007-06-12 22:26:27 UTC (rev 74)
@@ -26,3 +26,5 @@
sun.jdbc.odbc.JdbcOdbcDriver=jdbc\:odbc\:odbcDataSource
uk.co.thinksql.ThinkSQLDriver=jdbc\:thinksql\://hostname\:9075
weblogic.jdbc.mssqlserver4.Driver=weblogic\:mssqlserver4\:hostname\:1433
+com.j_spaces.jdbc.driver.GDriver=jdbc:gigaspaces:url:rmi://<hostname>/./myCache
+nl.cwi.monetdb.jdbc.MonetDriver=jdbc:monetdb://localhost/database
Modified: isql-core/branches/3.1.0-development/src/org/isqlviewer/util/QueryExecutor.java
===================================================================
--- isql-core/branches/3.1.0-development/src/org/isqlviewer/util/QueryExecutor.java 2007-06-07 02:03:11 UTC (rev 73)
+++ isql-core/branches/3.1.0-development/src/org/isqlviewer/util/QueryExecutor.java 2007-06-12 22:26:27 UTC (rev 74)
@@ -110,10 +110,10 @@
executionHistory.setType(CommandType.BATCH_QUERY);
boolean logBatch = statements.length > 1;
for (int i = 0; i < statements.length; i++) {
- renderer.initialize();
String userQuery = statements[i].trim();
if (userQuery.length() > 0) {
try {
+ renderer.initialize();
String substitutedQuery = doVariableSubstitutions(userQuery);
String nativeSQL = getNativeSql(connection, substitutedQuery);
Date queryTime = new Date();
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <mk...@us...> - 2007-06-07 02:03:09
|
Revision: 73
http://svn.sourceforge.net/isql/?rev=73&view=rev
Author: mkobold
Date: 2007-06-06 19:03:11 -0700 (Wed, 06 Jun 2007)
Log Message:
-----------
* Synchronized and merges changes to the 3.0.0-maintenance branch.
Modified Paths:
--------------
isql-swing/branches/3.1.0-development/src/org/isqlviewer/ui/JdbcWorkbench.java
isql-swing/branches/3.1.0-development/src/org/isqlviewer/ui/TabbedResultsetRenderer.java
isql-swing/branches/3.1.0-development/src/org/isqlviewer/ui/wizards/service/ConfirmDeleteService.java
isql-swing/branches/3.1.0-development/src/org/isqlviewer/ui/wizards/service/ConfirmNewService.java
isql-swing/branches/3.1.0-development/src/org/isqlviewer/ui/wizards/service/ResourceBundle.properties
Modified: isql-swing/branches/3.1.0-development/src/org/isqlviewer/ui/JdbcWorkbench.java
===================================================================
--- isql-swing/branches/3.1.0-development/src/org/isqlviewer/ui/JdbcWorkbench.java 2007-06-07 02:01:28 UTC (rev 72)
+++ isql-swing/branches/3.1.0-development/src/org/isqlviewer/ui/JdbcWorkbench.java 2007-06-07 02:03:11 UTC (rev 73)
@@ -172,7 +172,6 @@
private ButtonGroup schemaSelection = new ButtonGroup();
private JdbcService currentService = null;
- private TabbedResultsetRenderer tabRenderer;
private EnhancedTabbedPane rhsTabbedPane = new EnhancedTabbedPane(EnhancedTabbedPane.TOP);
private EnhancedTabbedPane lhsTabbedPane = new EnhancedTabbedPane(EnhancedTabbedPane.TOP);
@@ -281,7 +280,8 @@
String statement = event.getActionCommand();
boolean connected = checkConnection();
if (connected) {
- QueryExecutor executor = new QueryExecutor(currentService, tabRenderer, statement);
+ TabbedResultsetRenderer renderer = new TabbedResultsetRenderer(centerTabbedPane);
+ QueryExecutor executor = new QueryExecutor(currentService, renderer, statement);
executor.run();
}
break;
@@ -307,7 +307,6 @@
public void doLayout(JComponent parentComponent, Preferences userPreferences, SwingEventManager swingEventManager) {
preferences = userPreferences.node("views/jdbc-workbench");
- tabRenderer = new TabbedResultsetRenderer(centerTabbedPane);
this.eventManager = swingEventManager;
this.eventManager.addActionListener(this);
@@ -465,7 +464,9 @@
clientProperty = (Boolean) bookmarkView.getClientProperty(BOOKMARK_VISIBLE);
preferences.putBoolean(BOOKMARK_VISIBLE, clientProperty.booleanValue());
- preferences.put(SESSION_TEXT, commandEditor.getText());
+ String queryText = commandEditor.getText();
+ queryText = StringUtilities.trimToSize(queryText, Preferences.MAX_VALUE_LENGTH);
+ preferences.put(SESSION_TEXT, queryText);
unlocalizeTextComponent(console, undoManager);
}
@@ -932,6 +933,7 @@
action.putValue(CustomAction.ICON_NAME, "information");
addButton(toolbar, manager, action);
+ TabbedResultsetRenderer tabRenderer = new TabbedResultsetRenderer(centerTabbedPane);
SchemaTreeListener listener = new SchemaTreeListener(schemaModel, tabRenderer, manager);
schemaModel.setTablesEnabled(true);
schemaView.setCellRenderer(new JDBCTreeCellRenderer());
@@ -1070,7 +1072,7 @@
if (preferences.getBoolean(SCHEMA_VISIBLE, false)) {
action.actionPerformed(new ActionEvent(this, 0, ""));
} else {
- schemaView.putClientProperty(SCHEMA_VISIBLE, Boolean.TRUE);
+ schemaView.putClientProperty(SCHEMA_VISIBLE, Boolean.FALSE);
}
addMenuItem(viewMenu, action);
@@ -1300,6 +1302,7 @@
}
break;
}
+
return component;
}
@@ -1516,10 +1519,9 @@
private void closeSelectedResult() {
- EnhancedTabbedPane tabbedPane = tabRenderer.getTabbedPane();
int index = centerTabbedPane.getSelectedIndex();
if (index >= 0) {
- tabbedPane.remove(index);
+ centerTabbedPane.remove(index);
}
}
@@ -1583,11 +1585,11 @@
model.addRow(row);
}
dataGrid.setModel(model);
- EnhancedTabbedPane tabbedPane = tabRenderer.getTabbedPane();
- tabbedPane.addTab(messages.format("JdbcWorkbench.database_metadata"), view);
- index = tabbedPane.indexOfComponent(view);
- tabbedPane.setClosableTab(index, true);
- tabbedPane.setIconAt(index, SwingUtilities.loadIconResource("information", 16));
+
+ centerTabbedPane.addTab(messages.format("JdbcWorkbench.database_metadata"), view);
+ index = centerTabbedPane.indexOfComponent(view);
+ centerTabbedPane.setClosableTab(index, true);
+ centerTabbedPane.setIconAt(index, SwingUtilities.loadIconResource("information", 16));
}
private boolean checkConnection() {
@@ -1642,6 +1644,13 @@
public void actionPerformed(ActionEvent e) {
viewComponent = workbench.toggleView(view, viewComponent);
+ String jre = System.getProperty("java.specification.version");
+ if (viewComponent != null && "1.5".equals(jre)) {
+ Window windowOwner = javax.swing.SwingUtilities.getWindowAncestor(viewComponent);
+ if (windowOwner != null) {
+ windowOwner.validate();
+ }
+ }
}
}
}
Modified: isql-swing/branches/3.1.0-development/src/org/isqlviewer/ui/TabbedResultsetRenderer.java
===================================================================
--- isql-swing/branches/3.1.0-development/src/org/isqlviewer/ui/TabbedResultsetRenderer.java 2007-06-07 02:01:28 UTC (rev 72)
+++ isql-swing/branches/3.1.0-development/src/org/isqlviewer/ui/TabbedResultsetRenderer.java 2007-06-07 02:03:11 UTC (rev 73)
@@ -91,7 +91,6 @@
synchronized (isCancelled) {
isCancelled.set(false);
}
- currentSubstitutions.clear();
JPanel componentView = new JPanel();
eyeCandy = new BusyQueryIndicator(isCancelled);
eyeCandy.doLayout(componentView, null, null);
Modified: isql-swing/branches/3.1.0-development/src/org/isqlviewer/ui/wizards/service/ConfirmDeleteService.java
===================================================================
--- isql-swing/branches/3.1.0-development/src/org/isqlviewer/ui/wizards/service/ConfirmDeleteService.java 2007-06-07 02:01:28 UTC (rev 72)
+++ isql-swing/branches/3.1.0-development/src/org/isqlviewer/ui/wizards/service/ConfirmDeleteService.java 2007-06-07 02:03:11 UTC (rev 73)
@@ -33,12 +33,11 @@
import javax.swing.JComponent;
import javax.swing.JLabel;
import javax.swing.JPanel;
-import javax.swing.JSeparator;
import javax.swing.JTextField;
-import javax.swing.SwingConstants;
import javax.swing.text.Document;
import org.isqlviewer.ServiceReference;
+import org.isqlviewer.sql.JdbcService;
import org.isqlviewer.sql.embedded.EmbeddedDatabase;
import org.isqlviewer.swing.SwingUtilities;
import org.isqlviewer.swing.action.SharedActions;
@@ -55,6 +54,8 @@
private Document nameDocument = null;
private Document urlDocument = null;
private Document classDocument = null;
+ private Document jdbcDriverDocument = null;
+ private Document jdbcURLDocument = null;
public boolean isFirst() {
@@ -92,10 +93,15 @@
public void activate(WizardContext context) {
ServiceReference service = (ServiceReference) context.getAttribute(ServiceWizard.ATTRIBUTE_SERVICE_REFERENCE);
+ JdbcService jdbcService = (JdbcService) context.getAttribute(ServiceWizard.ATTRIBUTE_SERVICE);
if (service != null) {
SwingUtilities.replaceDocumentContent(nameDocument, service.getName());
SwingUtilities.replaceDocumentContent(urlDocument, service.getCreatedOn().toString());
SwingUtilities.replaceDocumentContent(classDocument, service.getResourceURL().toExternalForm());
+ if (jdbcService != null) {
+ SwingUtilities.replaceDocumentContent(jdbcURLDocument, jdbcService.getUrl());
+ SwingUtilities.replaceDocumentContent(jdbcDriverDocument, jdbcService.getDriverClass());
+ }
}
}
@@ -104,7 +110,7 @@
setTitle(messages.getMessage("ConfirmDeleteService.title"));
setComment(messages.getMessage("ConfirmDeleteService.comment"));
- setImage(SwingUtilities.loadIconResource(ServiceWizard.class, "ok", 22));
+ setImage(SwingUtilities.loadIconResource(ServiceWizard.class, "db_delete", 22));
JPanel panel = new JPanel(new GridBagLayout());
setView(panel);
@@ -130,8 +136,8 @@
GridBagConstraints.HORIZONTAL);
panel.add(component, constraint);
- title = messages.format("newservicewizard.jdbcdriver.title");
- tip = messages.format("newservicewizard.jdbcdriver.tip");
+ title = messages.format("ConfirmDeleteService.service-file.title");
+ tip = messages.format("ConfirmDeleteService.service-file.tip");
component = new JTextField(32);
component.setToolTipText(tip);
component.setFont(component.getFont().deriveFont(Font.BOLD));
@@ -145,8 +151,8 @@
GridBagConstraints.HORIZONTAL);
panel.add(component, constraint);
- title = messages.format("newservicewizard.jdbcurl.title");
- tip = messages.format("newservicewizard.jdbcurl.tip");
+ title = messages.format("ConfirmDeleteService.created-on.title");
+ tip = messages.format("ConfirmDeleteService.created-on.tip");
component = new JTextField(32);
component.setToolTipText(tip);
component.setFont(component.getFont().deriveFont(Font.BOLD));
@@ -160,18 +166,38 @@
GridBagConstraints.HORIZONTAL);
panel.add(component, constraint);
- constraint = ServiceWizard.constrain(0, 3, 2, 1, 1.0d, 0.0d, GridBagConstraints.CENTER,
+ title = messages.format("ConfirmDeleteService.driver-class.title");
+ tip = messages.format("ConfirmDeleteService.driver-class.tip");
+ component = new JTextField(32);
+ component.setToolTipText(tip);
+ component.setFont(component.getFont().deriveFont(Font.BOLD));
+ ((JTextField) component).setEditable(false);
+ jdbcDriverDocument = ((JTextField) component).getDocument();
+ constraint = ServiceWizard.constrain(0, 3, 1, 1, 0.0, 0.0, GridBagConstraints.WEST, GridBagConstraints.NONE);
+ label = new JLabel(title);
+ label.setLabelFor(component);
+ panel.add(label, constraint);
+ constraint = ServiceWizard.constrain(1, 3, 1, 1, 1.0, 0.0, GridBagConstraints.CENTER,
GridBagConstraints.HORIZONTAL);
- panel.add(new JSeparator(SwingConstants.HORIZONTAL), constraint);
- panel.add(Box.createVerticalStrut(32), constraint);
+ panel.add(component, constraint);
- title = messages.format("newservicewizard.compatability_info");
- component = new JLabel(title);
- constraint = ServiceWizard.constrain(0, 4, 2, 1, 0.0, 0.0, GridBagConstraints.WEST, GridBagConstraints.NONE);
+ title = messages.format("ConfirmDeleteService.jdbc-url.title");
+ tip = messages.format("ConfirmDeleteService.jdbc-url.tip");
+ component = new JTextField(32);
+ component.setToolTipText(tip);
+ component.setFont(component.getFont().deriveFont(Font.BOLD));
+ ((JTextField) component).setEditable(false);
+ jdbcURLDocument = ((JTextField) component).getDocument();
+ constraint = ServiceWizard.constrain(0, 4, 1, 1, 0.0, 0.0, GridBagConstraints.WEST, GridBagConstraints.NONE);
+ label = new JLabel(title);
+ label.setLabelFor(component);
+ panel.add(label, constraint);
+ constraint = ServiceWizard.constrain(1, 4, 1, 1, 1.0, 0.0, GridBagConstraints.CENTER,
+ GridBagConstraints.HORIZONTAL);
panel.add(component, constraint);
component = (JComponent) Box.createVerticalGlue();
- constraint = ServiceWizard.constrain(0, 7, 2, 1, 0.0, 1.0, GridBagConstraints.CENTER,
+ constraint = ServiceWizard.constrain(0, 5, 2, 1, 0.0, 1.0, GridBagConstraints.CENTER,
GridBagConstraints.VERTICAL);
panel.add(component, constraint);
}
Modified: isql-swing/branches/3.1.0-development/src/org/isqlviewer/ui/wizards/service/ConfirmNewService.java
===================================================================
--- isql-swing/branches/3.1.0-development/src/org/isqlviewer/ui/wizards/service/ConfirmNewService.java 2007-06-07 02:01:28 UTC (rev 72)
+++ isql-swing/branches/3.1.0-development/src/org/isqlviewer/ui/wizards/service/ConfirmNewService.java 2007-06-07 02:03:11 UTC (rev 73)
@@ -141,7 +141,7 @@
setTitle(messages.getMessage("newservicewizard.finalize-service.title"));
setComment(messages.getMessage("newservicewizard.finalize-service.tip"));
- setImage(SwingUtilities.loadIconResource(ServiceWizard.class, "ok", 22));
+ setImage(SwingUtilities.loadIconResource(ServiceWizard.class, "db_insert", 22));
JPanel panel = new JPanel(new GridBagLayout());
setView(panel);
Modified: isql-swing/branches/3.1.0-development/src/org/isqlviewer/ui/wizards/service/ResourceBundle.properties
===================================================================
--- isql-swing/branches/3.1.0-development/src/org/isqlviewer/ui/wizards/service/ResourceBundle.properties 2007-06-07 02:01:28 UTC (rev 72)
+++ isql-swing/branches/3.1.0-development/src/org/isqlviewer/ui/wizards/service/ResourceBundle.properties 2007-06-07 02:03:11 UTC (rev 73)
@@ -45,6 +45,8 @@
newservicewizard.compatability.tip=Save this service in format that is compatible with previous versions of iSQL-Viewer.
newservicewizard.connect_on_finish=Connect to this Service
newservicewizard.connect_on_finish.tip=Connect to this new service after this wizard is complete.
+newservicewizard.add-resources.tip=Click here to add a new service resource (JAR, Zip, Directory).
+newservicewizard.delete-resources.tip=Click here to remove the selected resource from this service.
SelectServiceStep.title=Select Service
SelectServiceStep.comment=Select an existing iSQL-Viewer service.
@@ -60,6 +62,16 @@
ConfirmUpdateService.failed_to_remove_old_service_file=Failed to remove existing service file:''{0}''; this file will need to be removed manually.
ConfirmDeleteService.internal_sql_error=Failed to remove service:''{0}'' due to an internal error.
+ConfirmDeleteService.title=Confirm Service Deletion
+ConfirmDeleteService.comment=Confirm permanent service deletion.
+ConfirmDeleteService.service-file.title=Service File
+ConfirmDeleteService.service-file.tip=This file will be removed from the local file-system.
+ConfirmDeleteService.created-on.title=Created On
+ConfirmDeleteService.created-on.tip=Date when this service was originally added to iSQL-Viewer.
+ConfirmDeleteService.driver-class.title=Driver Class
+ConfirmDeleteService.driver-class.tip=Fully qualified Java class name for the driver of this service.
+ConfirmDeleteService.jdbc-url.title=JDBC URL
+ConfirmDeleteService.jdbc-url.tip=The JDBC URL used to connect this service to the database.
SelectServiceFunctionStep.title=Select service function
SelectServiceFunctionStep.comment=Choose from one of the following actions you wish to perform.
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <mk...@us...> - 2007-06-07 02:01:29
|
Revision: 72
http://svn.sourceforge.net/isql/?rev=72&view=rev
Author: mkobold
Date: 2007-06-06 19:01:28 -0700 (Wed, 06 Jun 2007)
Log Message:
-----------
* util/Queryexecutor.java
** Corrected an issue where blank statements would cause a 'stale'
tab to be created that could only be closed with CTRL/CMD+W key.
Modified Paths:
--------------
isql-core/branches/3.0.0-maintenance/src/org/isqlviewer/util/QueryExecutor.java
Modified: isql-core/branches/3.0.0-maintenance/src/org/isqlviewer/util/QueryExecutor.java
===================================================================
--- isql-core/branches/3.0.0-maintenance/src/org/isqlviewer/util/QueryExecutor.java 2007-06-07 02:00:25 UTC (rev 71)
+++ isql-core/branches/3.0.0-maintenance/src/org/isqlviewer/util/QueryExecutor.java 2007-06-07 02:01:28 UTC (rev 72)
@@ -110,10 +110,10 @@
executionHistory.setType(CommandType.BATCH_QUERY);
boolean logBatch = statements.length > 1;
for (int i = 0; i < statements.length; i++) {
- renderer.initialize();
String userQuery = statements[i].trim();
if (userQuery.length() > 0) {
try {
+ renderer.initialize();
String substitutedQuery = doVariableSubstitutions(userQuery);
String nativeSQL = getNativeSql(connection, substitutedQuery);
Date queryTime = new Date();
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <mk...@us...> - 2007-06-07 02:00:25
|
Revision: 71
http://svn.sourceforge.net/isql/?rev=71&view=rev
Author: mkobold
Date: 2007-06-06 19:00:25 -0700 (Wed, 06 Jun 2007)
Log Message:
-----------
* ui/JdbcWorkbench.java
** Corrected an issue where the schema view would be visible on
application startup when it should not be.
** Addressed bug #1732394 about storing big queries into the
preferences sub-system. It is now trimed to the maximum size
allowed by the preferences implementation.
** Added component validation code for JRE 1.5 so that when
bookmarks, schema, or history or open the are visible.
** Modified usage with TabbedResultSet renderer instances, to a
variable substitution problem.
* ui/TabbedResultsetRenderer.java
** Removed clear call so that variable substituions that are
repeated in the same query or in batch queries the user is not
prompted to substitute values they have already substituted.
* ui/wizards/service
** Corrected some missing resource strings
** Updated and corrected the confirm delete service pages
Modified Paths:
--------------
isql-swing/branches/3.0.0-maintenance/src/org/isqlviewer/ui/JdbcWorkbench.java
isql-swing/branches/3.0.0-maintenance/src/org/isqlviewer/ui/TabbedResultsetRenderer.java
isql-swing/branches/3.0.0-maintenance/src/org/isqlviewer/ui/wizards/service/ConfirmDeleteService.java
isql-swing/branches/3.0.0-maintenance/src/org/isqlviewer/ui/wizards/service/ConfirmNewService.java
isql-swing/branches/3.0.0-maintenance/src/org/isqlviewer/ui/wizards/service/ResourceBundle.properties
Modified: isql-swing/branches/3.0.0-maintenance/src/org/isqlviewer/ui/JdbcWorkbench.java
===================================================================
--- isql-swing/branches/3.0.0-maintenance/src/org/isqlviewer/ui/JdbcWorkbench.java 2007-06-03 16:44:33 UTC (rev 70)
+++ isql-swing/branches/3.0.0-maintenance/src/org/isqlviewer/ui/JdbcWorkbench.java 2007-06-07 02:00:25 UTC (rev 71)
@@ -172,7 +172,6 @@
private ButtonGroup schemaSelection = new ButtonGroup();
private JdbcService currentService = null;
- private TabbedResultsetRenderer tabRenderer;
private EnhancedTabbedPane rhsTabbedPane = new EnhancedTabbedPane(EnhancedTabbedPane.TOP);
private EnhancedTabbedPane lhsTabbedPane = new EnhancedTabbedPane(EnhancedTabbedPane.TOP);
@@ -281,7 +280,8 @@
String statement = event.getActionCommand();
boolean connected = checkConnection();
if (connected) {
- QueryExecutor executor = new QueryExecutor(currentService, tabRenderer, statement);
+ TabbedResultsetRenderer renderer = new TabbedResultsetRenderer(centerTabbedPane);
+ QueryExecutor executor = new QueryExecutor(currentService, renderer, statement);
executor.run();
}
break;
@@ -307,7 +307,6 @@
public void doLayout(JComponent parentComponent, Preferences userPreferences, SwingEventManager swingEventManager) {
preferences = userPreferences.node("views/jdbc-workbench");
- tabRenderer = new TabbedResultsetRenderer(centerTabbedPane);
this.eventManager = swingEventManager;
this.eventManager.addActionListener(this);
@@ -465,7 +464,9 @@
clientProperty = (Boolean) bookmarkView.getClientProperty(BOOKMARK_VISIBLE);
preferences.putBoolean(BOOKMARK_VISIBLE, clientProperty.booleanValue());
- preferences.put(SESSION_TEXT, commandEditor.getText());
+ String queryText = commandEditor.getText();
+ queryText = StringUtilities.trimToSize(queryText, Preferences.MAX_VALUE_LENGTH);
+ preferences.put(SESSION_TEXT, queryText);
unlocalizeTextComponent(console, undoManager);
}
@@ -932,6 +933,7 @@
action.putValue(CustomAction.ICON_NAME, "information");
addButton(toolbar, manager, action);
+ TabbedResultsetRenderer tabRenderer = new TabbedResultsetRenderer(centerTabbedPane);
SchemaTreeListener listener = new SchemaTreeListener(schemaModel, tabRenderer, manager);
schemaModel.setTablesEnabled(true);
schemaView.setCellRenderer(new JDBCTreeCellRenderer());
@@ -1070,7 +1072,7 @@
if (preferences.getBoolean(SCHEMA_VISIBLE, false)) {
action.actionPerformed(new ActionEvent(this, 0, ""));
} else {
- schemaView.putClientProperty(SCHEMA_VISIBLE, Boolean.TRUE);
+ schemaView.putClientProperty(SCHEMA_VISIBLE, Boolean.FALSE);
}
addMenuItem(viewMenu, action);
@@ -1300,6 +1302,7 @@
}
break;
}
+
return component;
}
@@ -1516,10 +1519,9 @@
private void closeSelectedResult() {
- EnhancedTabbedPane tabbedPane = tabRenderer.getTabbedPane();
int index = centerTabbedPane.getSelectedIndex();
if (index >= 0) {
- tabbedPane.remove(index);
+ centerTabbedPane.remove(index);
}
}
@@ -1583,11 +1585,11 @@
model.addRow(row);
}
dataGrid.setModel(model);
- EnhancedTabbedPane tabbedPane = tabRenderer.getTabbedPane();
- tabbedPane.addTab(messages.format("JdbcWorkbench.database_metadata"), view);
- index = tabbedPane.indexOfComponent(view);
- tabbedPane.setClosableTab(index, true);
- tabbedPane.setIconAt(index, SwingUtilities.loadIconResource("information", 16));
+
+ centerTabbedPane.addTab(messages.format("JdbcWorkbench.database_metadata"), view);
+ index = centerTabbedPane.indexOfComponent(view);
+ centerTabbedPane.setClosableTab(index, true);
+ centerTabbedPane.setIconAt(index, SwingUtilities.loadIconResource("information", 16));
}
private boolean checkConnection() {
@@ -1642,6 +1644,13 @@
public void actionPerformed(ActionEvent e) {
viewComponent = workbench.toggleView(view, viewComponent);
+ String jre = System.getProperty("java.specification.version");
+ if (viewComponent != null && "1.5".equals(jre)) {
+ Window windowOwner = javax.swing.SwingUtilities.getWindowAncestor(viewComponent);
+ if (windowOwner != null) {
+ windowOwner.validate();
+ }
+ }
}
}
}
Modified: isql-swing/branches/3.0.0-maintenance/src/org/isqlviewer/ui/TabbedResultsetRenderer.java
===================================================================
--- isql-swing/branches/3.0.0-maintenance/src/org/isqlviewer/ui/TabbedResultsetRenderer.java 2007-06-03 16:44:33 UTC (rev 70)
+++ isql-swing/branches/3.0.0-maintenance/src/org/isqlviewer/ui/TabbedResultsetRenderer.java 2007-06-07 02:00:25 UTC (rev 71)
@@ -91,7 +91,6 @@
synchronized (isCancelled) {
isCancelled.set(false);
}
- currentSubstitutions.clear();
JPanel componentView = new JPanel();
eyeCandy = new BusyQueryIndicator(isCancelled);
eyeCandy.doLayout(componentView, null, null);
Modified: isql-swing/branches/3.0.0-maintenance/src/org/isqlviewer/ui/wizards/service/ConfirmDeleteService.java
===================================================================
--- isql-swing/branches/3.0.0-maintenance/src/org/isqlviewer/ui/wizards/service/ConfirmDeleteService.java 2007-06-03 16:44:33 UTC (rev 70)
+++ isql-swing/branches/3.0.0-maintenance/src/org/isqlviewer/ui/wizards/service/ConfirmDeleteService.java 2007-06-07 02:00:25 UTC (rev 71)
@@ -33,12 +33,11 @@
import javax.swing.JComponent;
import javax.swing.JLabel;
import javax.swing.JPanel;
-import javax.swing.JSeparator;
import javax.swing.JTextField;
-import javax.swing.SwingConstants;
import javax.swing.text.Document;
import org.isqlviewer.ServiceReference;
+import org.isqlviewer.sql.JdbcService;
import org.isqlviewer.sql.embedded.EmbeddedDatabase;
import org.isqlviewer.swing.SwingUtilities;
import org.isqlviewer.swing.action.SharedActions;
@@ -55,6 +54,8 @@
private Document nameDocument = null;
private Document urlDocument = null;
private Document classDocument = null;
+ private Document jdbcDriverDocument = null;
+ private Document jdbcURLDocument = null;
public boolean isFirst() {
@@ -92,10 +93,15 @@
public void activate(WizardContext context) {
ServiceReference service = (ServiceReference) context.getAttribute(ServiceWizard.ATTRIBUTE_SERVICE_REFERENCE);
+ JdbcService jdbcService = (JdbcService) context.getAttribute(ServiceWizard.ATTRIBUTE_SERVICE);
if (service != null) {
SwingUtilities.replaceDocumentContent(nameDocument, service.getName());
SwingUtilities.replaceDocumentContent(urlDocument, service.getCreatedOn().toString());
SwingUtilities.replaceDocumentContent(classDocument, service.getResourceURL().toExternalForm());
+ if (jdbcService != null) {
+ SwingUtilities.replaceDocumentContent(jdbcURLDocument, jdbcService.getUrl());
+ SwingUtilities.replaceDocumentContent(jdbcDriverDocument, jdbcService.getDriverClass());
+ }
}
}
@@ -104,7 +110,7 @@
setTitle(messages.getMessage("ConfirmDeleteService.title"));
setComment(messages.getMessage("ConfirmDeleteService.comment"));
- setImage(SwingUtilities.loadIconResource(ServiceWizard.class, "ok", 22));
+ setImage(SwingUtilities.loadIconResource(ServiceWizard.class, "db_delete", 22));
JPanel panel = new JPanel(new GridBagLayout());
setView(panel);
@@ -130,8 +136,8 @@
GridBagConstraints.HORIZONTAL);
panel.add(component, constraint);
- title = messages.format("newservicewizard.jdbcdriver.title");
- tip = messages.format("newservicewizard.jdbcdriver.tip");
+ title = messages.format("ConfirmDeleteService.service-file.title");
+ tip = messages.format("ConfirmDeleteService.service-file.tip");
component = new JTextField(32);
component.setToolTipText(tip);
component.setFont(component.getFont().deriveFont(Font.BOLD));
@@ -145,8 +151,8 @@
GridBagConstraints.HORIZONTAL);
panel.add(component, constraint);
- title = messages.format("newservicewizard.jdbcurl.title");
- tip = messages.format("newservicewizard.jdbcurl.tip");
+ title = messages.format("ConfirmDeleteService.created-on.title");
+ tip = messages.format("ConfirmDeleteService.created-on.tip");
component = new JTextField(32);
component.setToolTipText(tip);
component.setFont(component.getFont().deriveFont(Font.BOLD));
@@ -160,18 +166,38 @@
GridBagConstraints.HORIZONTAL);
panel.add(component, constraint);
- constraint = ServiceWizard.constrain(0, 3, 2, 1, 1.0d, 0.0d, GridBagConstraints.CENTER,
+ title = messages.format("ConfirmDeleteService.driver-class.title");
+ tip = messages.format("ConfirmDeleteService.driver-class.tip");
+ component = new JTextField(32);
+ component.setToolTipText(tip);
+ component.setFont(component.getFont().deriveFont(Font.BOLD));
+ ((JTextField) component).setEditable(false);
+ jdbcDriverDocument = ((JTextField) component).getDocument();
+ constraint = ServiceWizard.constrain(0, 3, 1, 1, 0.0, 0.0, GridBagConstraints.WEST, GridBagConstraints.NONE);
+ label = new JLabel(title);
+ label.setLabelFor(component);
+ panel.add(label, constraint);
+ constraint = ServiceWizard.constrain(1, 3, 1, 1, 1.0, 0.0, GridBagConstraints.CENTER,
GridBagConstraints.HORIZONTAL);
- panel.add(new JSeparator(SwingConstants.HORIZONTAL), constraint);
- panel.add(Box.createVerticalStrut(32), constraint);
+ panel.add(component, constraint);
- title = messages.format("newservicewizard.compatability_info");
- component = new JLabel(title);
- constraint = ServiceWizard.constrain(0, 4, 2, 1, 0.0, 0.0, GridBagConstraints.WEST, GridBagConstraints.NONE);
+ title = messages.format("ConfirmDeleteService.jdbc-url.title");
+ tip = messages.format("ConfirmDeleteService.jdbc-url.tip");
+ component = new JTextField(32);
+ component.setToolTipText(tip);
+ component.setFont(component.getFont().deriveFont(Font.BOLD));
+ ((JTextField) component).setEditable(false);
+ jdbcURLDocument = ((JTextField) component).getDocument();
+ constraint = ServiceWizard.constrain(0, 4, 1, 1, 0.0, 0.0, GridBagConstraints.WEST, GridBagConstraints.NONE);
+ label = new JLabel(title);
+ label.setLabelFor(component);
+ panel.add(label, constraint);
+ constraint = ServiceWizard.constrain(1, 4, 1, 1, 1.0, 0.0, GridBagConstraints.CENTER,
+ GridBagConstraints.HORIZONTAL);
panel.add(component, constraint);
component = (JComponent) Box.createVerticalGlue();
- constraint = ServiceWizard.constrain(0, 7, 2, 1, 0.0, 1.0, GridBagConstraints.CENTER,
+ constraint = ServiceWizard.constrain(0, 5, 2, 1, 0.0, 1.0, GridBagConstraints.CENTER,
GridBagConstraints.VERTICAL);
panel.add(component, constraint);
}
Modified: isql-swing/branches/3.0.0-maintenance/src/org/isqlviewer/ui/wizards/service/ConfirmNewService.java
===================================================================
--- isql-swing/branches/3.0.0-maintenance/src/org/isqlviewer/ui/wizards/service/ConfirmNewService.java 2007-06-03 16:44:33 UTC (rev 70)
+++ isql-swing/branches/3.0.0-maintenance/src/org/isqlviewer/ui/wizards/service/ConfirmNewService.java 2007-06-07 02:00:25 UTC (rev 71)
@@ -141,7 +141,7 @@
setTitle(messages.getMessage("newservicewizard.finalize-service.title"));
setComment(messages.getMessage("newservicewizard.finalize-service.tip"));
- setImage(SwingUtilities.loadIconResource(ServiceWizard.class, "ok", 22));
+ setImage(SwingUtilities.loadIconResource(ServiceWizard.class, "db_insert", 22));
JPanel panel = new JPanel(new GridBagLayout());
setView(panel);
Modified: isql-swing/branches/3.0.0-maintenance/src/org/isqlviewer/ui/wizards/service/ResourceBundle.properties
===================================================================
--- isql-swing/branches/3.0.0-maintenance/src/org/isqlviewer/ui/wizards/service/ResourceBundle.properties 2007-06-03 16:44:33 UTC (rev 70)
+++ isql-swing/branches/3.0.0-maintenance/src/org/isqlviewer/ui/wizards/service/ResourceBundle.properties 2007-06-07 02:00:25 UTC (rev 71)
@@ -45,6 +45,8 @@
newservicewizard.compatability.tip=Save this service in format that is compatible with previous versions of iSQL-Viewer.
newservicewizard.connect_on_finish=Connect to this Service
newservicewizard.connect_on_finish.tip=Connect to this new service after this wizard is complete.
+newservicewizard.add-resources.tip=Click here to add a new service resource (JAR, Zip, Directory).
+newservicewizard.delete-resources.tip=Click here to remove the selected resource from this service.
SelectServiceStep.title=Select Service
SelectServiceStep.comment=Select an existing iSQL-Viewer service.
@@ -60,6 +62,16 @@
ConfirmUpdateService.failed_to_remove_old_service_file=Failed to remove existing service file:''{0}''; this file will need to be removed manually.
ConfirmDeleteService.internal_sql_error=Failed to remove service:''{0}'' due to an internal error.
+ConfirmDeleteService.title=Confirm Service Deletion
+ConfirmDeleteService.comment=Confirm permanent service deletion.
+ConfirmDeleteService.service-file.title=Service File
+ConfirmDeleteService.service-file.tip=This file will be removed from the local file-system.
+ConfirmDeleteService.created-on.title=Created On
+ConfirmDeleteService.created-on.tip=Date when this service was originally added to iSQL-Viewer.
+ConfirmDeleteService.driver-class.title=Driver Class
+ConfirmDeleteService.driver-class.tip=Fully qualified Java class name for the driver of this service.
+ConfirmDeleteService.jdbc-url.title=JDBC URL
+ConfirmDeleteService.jdbc-url.tip=The JDBC URL used to connect this service to the database.
SelectServiceFunctionStep.title=Select service function
SelectServiceFunctionStep.comment=Choose from one of the following actions you wish to perform.
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <mk...@us...> - 2007-06-03 16:44:31
|
Revision: 70
http://svn.sourceforge.net/isql/?rev=70&view=rev
Author: mkobold
Date: 2007-06-03 09:44:33 -0700 (Sun, 03 Jun 2007)
Log Message:
-----------
iSQL-Viewer 3.1.0 development branch
Added Paths:
-----------
isql-mrj/branches/3.1.0-development/
Copied: isql-mrj/branches/3.1.0-development (from rev 69, isql-mrj/trunk)
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <mk...@us...> - 2007-06-03 16:44:20
|
Revision: 69
http://svn.sourceforge.net/isql/?rev=69&view=rev
Author: mkobold
Date: 2007-06-03 09:44:22 -0700 (Sun, 03 Jun 2007)
Log Message:
-----------
iSQL-Viewer 3.1.0 development branch
Added Paths:
-----------
isql-swing/branches/3.1.0-development/
Copied: isql-swing/branches/3.1.0-development (from rev 68, isql-swing/trunk)
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <mk...@us...> - 2007-06-03 16:44:08
|
Revision: 68
http://svn.sourceforge.net/isql/?rev=68&view=rev
Author: mkobold
Date: 2007-06-03 09:44:09 -0700 (Sun, 03 Jun 2007)
Log Message:
-----------
iSQL-Viewer 3.1.0 development branch
Added Paths:
-----------
isql-core/branches/3.1.0-development/
Copied: isql-core/branches/3.1.0-development (from rev 67, isql-core/trunk)
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <mk...@us...> - 2007-06-03 16:43:26
|
Revision: 67
http://svn.sourceforge.net/isql/?rev=67&view=rev
Author: mkobold
Date: 2007-06-03 09:43:28 -0700 (Sun, 03 Jun 2007)
Log Message:
-----------
iSQL-Viewer 3.0.0 maintenance branch
Added Paths:
-----------
isql-mrj/branches/3.0.0-maintenance/
Copied: isql-mrj/branches/3.0.0-maintenance (from rev 66, isql-mrj/trunk)
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <mk...@us...> - 2007-06-03 16:43:12
|
Revision: 66
http://svn.sourceforge.net/isql/?rev=66&view=rev
Author: mkobold
Date: 2007-06-03 09:43:14 -0700 (Sun, 03 Jun 2007)
Log Message:
-----------
iSQL-Viewer 3.0.0 maintenance branch
Added Paths:
-----------
isql-swing/branches/3.0.0-maintenance/
Copied: isql-swing/branches/3.0.0-maintenance (from rev 65, isql-swing/trunk)
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <mk...@us...> - 2007-06-03 16:43:01
|
Revision: 65
http://svn.sourceforge.net/isql/?rev=65&view=rev
Author: mkobold
Date: 2007-06-03 09:43:02 -0700 (Sun, 03 Jun 2007)
Log Message:
-----------
iSQL-Viewer 3.0.0 maintenance branch
Added Paths:
-----------
isql-core/branches/3.0.0-maintenance/
Copied: isql-core/branches/3.0.0-maintenance (from rev 64, isql-core/trunk)
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <mk...@us...> - 2007-06-03 16:41:28
|
Revision: 64
http://svn.sourceforge.net/isql/?rev=64&view=rev
Author: mkobold
Date: 2007-06-03 09:41:30 -0700 (Sun, 03 Jun 2007)
Log Message:
-----------
Tagged version of iSQL-Viewer version 3.0.0
Added Paths:
-----------
isql-swing/tags/iSQL-Viewer-3.0.0/
Copied: isql-swing/tags/iSQL-Viewer-3.0.0 (from rev 63, isql-swing/trunk)
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <mk...@us...> - 2007-06-03 16:40:26
|
Revision: 63
http://svn.sourceforge.net/isql/?rev=63&view=rev
Author: mkobold
Date: 2007-06-03 09:40:28 -0700 (Sun, 03 Jun 2007)
Log Message:
-----------
Tagged version of iSQL-Viewer version 3.0.0
Added Paths:
-----------
isql-mrj/tags/iSQL-Viewer-3.0.0/
Copied: isql-mrj/tags/iSQL-Viewer-3.0.0 (from rev 62, isql-mrj/trunk)
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <mk...@us...> - 2007-06-03 16:40:11
|
Revision: 62
http://svn.sourceforge.net/isql/?rev=62&view=rev
Author: mkobold
Date: 2007-06-03 09:40:13 -0700 (Sun, 03 Jun 2007)
Log Message:
-----------
Tagged version of iSQL-Viewer version 3.0.0
Added Paths:
-----------
isql-core/tags/iSQL-Viewer-3.0.0/
Copied: isql-core/tags/iSQL-Viewer-3.0.0 (from rev 61, isql-core/trunk)
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|