[Monodevelop-patches-list] r2777 - in trunk/MonoDevelop/Extras/MonoQuery: . Mono.Data.Sql/Providers MonoQuery MonoQuery/Commands MonoQuery/Gui MonoQuery/Gui/NodeBuilders MonoQuery/icons

Christian Hergert <chris@mosaix.net> chergert at mono-cvs.ximian.com
Mon Aug 22 01:36:33 EDT 2005


Author: chergert
Date: 2005-08-22 01:36:33 -0400 (Mon, 22 Aug 2005)
New Revision: 2777

Added:
   trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/Gui/SqlQueryView.cs
   trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/icons/MonoQuery.Blob
   trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/icons/MonoQuery.Database.Connected
   trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/icons/MonoQuery.Database.Disconnected
   trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/icons/MonoQuery.Execute
   trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/icons/MonoQuery.Explain
   trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/icons/MonoQuery.Numeric
   trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/icons/MonoQuery.Param
   trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/icons/MonoQuery.Providers
   trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/icons/MonoQuery.RunFromCursor
   trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/icons/MonoQuery.SqlQueryView
   trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/icons/MonoQuery.Stop
   trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/icons/MonoQuery.String
Modified:
   trunk/MonoDevelop/Extras/MonoQuery/ChangeLog
   trunk/MonoDevelop/Extras/MonoQuery/Mono.Data.Sql/Providers/DbProviderBase.cs
   trunk/MonoDevelop/Extras/MonoQuery/Mono.Data.Sql/Providers/FirebirdDbProvider.cs
   trunk/MonoDevelop/Extras/MonoQuery/Mono.Data.Sql/Providers/MySqlDbProvider.cs
   trunk/MonoDevelop/Extras/MonoQuery/Mono.Data.Sql/Providers/NpgsqlDbProvider.cs
   trunk/MonoDevelop/Extras/MonoQuery/Mono.Data.Sql/Providers/OdbcDbProvider.cs
   trunk/MonoDevelop/Extras/MonoQuery/Mono.Data.Sql/Providers/OracleDbProvider.cs
   trunk/MonoDevelop/Extras/MonoQuery/Mono.Data.Sql/Providers/SqlDbProvider.cs
   trunk/MonoDevelop/Extras/MonoQuery/Mono.Data.Sql/Providers/SybaseDbProvider.cs
   trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/Commands/Commands.cs
   trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/Gui/FakeNodes.cs
   trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/Gui/NodeBuilders/ColumnNodeBuilder.cs
   trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/Gui/NodeBuilders/DatabaseNodeBuilder.cs
   trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/Gui/NodeBuilders/ProviderCollectionNodeBuilder.cs
   trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/Gui/NodeBuilders/TableNodeBuilder.cs
   trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/Gui/NodeBuilders/TablesNodeBuilder.cs
   trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/Makefile.am
   trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/MonoQuery.addin.xml
   trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/MonoQuery.mdp
Log:
        * MonoQuery/Commands/Commands.cs: Add some new commands to the enum
        * MonoQuery/Gui/NodeBuilders/DatabaseNodeBuilder.cs: Use new icons
        * MonoQuery/Gui/NodeBuilders/ProviderCollectionNodeBuilder.cs: Use new
        icon.
        * MonoQuery/Gui/NodeBuilders/TablesNodeBuilder.cs: Add new commands
        for refresh and show query tool.
        * MonoQuery/Gui/NodeBuilders/TableNodeBuilder.cs: Add new
        commands for empty, drop, refresh, and show query tool.
        * MonoQuery/Gui/NodeBuilders/ColumnNodeBuilder.cs: Build icons
        reflective of the columns datatype.
        * MonoQuery/Gui/FakeNodes.cs: add refresh to the fake tables node.
        This way the builder can subscribe and rebuild the tree. Probably can
        be done in a better way.
        * MonoQuery/Gui/SqlQueryView.cs: new query tool
        * MonoQuery/Makefile.am: updated
        * MonoQuery/icons/MonoQuery.Stop: New icon for query tool
        * MonoQuery/icons/MonoQuery.RunFromCursor: New icon for query tool
        * MonoQuery/icons/MonoQuery.Explain: New icon for query tool
        * MonoQuery/icons/MonoQuery.Param: New icon for procedure parameters.
        * MonoQuery/icons/MonoQuery.Numeric: new icon for numeric data type.
        * MonoQuery/icons/MonoQuery.Execute: New icon for query tool
        * MonoQuery/icons/MonoQuery.Database.Connected: Database connected
        icon
        * MonoQuery/icons/MonoQuery.Database.Disconnected: Database error on
        connection icon.
        * MonoQuery/icons/MonoQuery.String: String data type icon
        * MonoQuery/icons/MonoQuery.Providers: New providers icon
        * MonoQuery/icons/MonoQuery.Blob: Blob|byte[] data type icon
        * MonoQuery/icons/MonoQuery.SqlQueryView: Query view icon
        * MonoQuery/MonoQuery.addin.xml: Updated with new context menus and
        icons.
        * MonoQuery/MonoQuery.mdp: Updated
        * Mono.Data.Sql/Providers/DbProviderBase.cs: Add explain support.
        * Mono.Data.Sql/Providers/SqlDbProvider.cs: Catch errors for async
        mode and return null.
        * Mono.Data.Sql/Providers/NpgsqlDbProvider.cs:
        * Mono.Data.Sql/Providers/OracleDbProvider.cs:
        * Mono.Data.Sql/Providers/MySqlDbProvider.cs:
        * Mono.Data.Sql/Providers/FirebirdDbProvider.cs:
        * Mono.Data.Sql/Providers/SybaseDbProvider.cs:
        * Mono.Data.Sql/Providers/OdbcDbProvider.cs:


Modified: trunk/MonoDevelop/Extras/MonoQuery/ChangeLog
===================================================================
--- trunk/MonoDevelop/Extras/MonoQuery/ChangeLog	2005-08-21 21:56:21 UTC (rev 2776)
+++ trunk/MonoDevelop/Extras/MonoQuery/ChangeLog	2005-08-22 05:36:33 UTC (rev 2777)
@@ -1,5 +1,49 @@
-2005-08-06	Christian Hergert	<christian.hergert at gmail.com>
+2005-08-21	Christian Hergert	<christian.hergert at gmail.com>
 
+	* MonoQuery/Commands/Commands.cs: Add some new commands to the enum
+	* MonoQuery/Gui/NodeBuilders/DatabaseNodeBuilder.cs: Use new icons
+	* MonoQuery/Gui/NodeBuilders/ProviderCollectionNodeBuilder.cs: Use new
+	icon.
+	* MonoQuery/Gui/NodeBuilders/TablesNodeBuilder.cs: Add new commands
+	for refresh and show query tool.
+	* MonoQuery/Gui/NodeBuilders/TableNodeBuilder.cs: Add new
+	commands for empty, drop, refresh, and show query tool.
+	* MonoQuery/Gui/NodeBuilders/ColumnNodeBuilder.cs: Build icons
+	reflective of the columns datatype.
+	* MonoQuery/Gui/FakeNodes.cs: add refresh to the fake tables node.
+	This way the builder can subscribe and rebuild the tree. Probably can
+	be done in a better way.
+	* MonoQuery/Gui/SqlQueryView.cs: new query tool
+	* MonoQuery/Makefile.am: updated
+	* MonoQuery/icons/MonoQuery.Stop: New icon for query tool
+	* MonoQuery/icons/MonoQuery.RunFromCursor: New icon for query tool
+	* MonoQuery/icons/MonoQuery.Explain: New icon for query tool
+	* MonoQuery/icons/MonoQuery.Param: New icon for procedure parameters.
+	* MonoQuery/icons/MonoQuery.Numeric: new icon for numeric data type.
+	* MonoQuery/icons/MonoQuery.Execute: New icon for query tool
+	* MonoQuery/icons/MonoQuery.Database.Connected: Database connected
+	icon
+	* MonoQuery/icons/MonoQuery.Database.Disconnected: Database error on
+	connection icon.
+	* MonoQuery/icons/MonoQuery.String: String data type icon
+	* MonoQuery/icons/MonoQuery.Providers: New providers icon
+	* MonoQuery/icons/MonoQuery.Blob: Blob|byte[] data type icon
+	* MonoQuery/icons/MonoQuery.SqlQueryView: Query view icon
+	* MonoQuery/MonoQuery.addin.xml: Updated with new context menus and
+	icons.
+	* MonoQuery/MonoQuery.mdp: Updated
+	* Mono.Data.Sql/Providers/DbProviderBase.cs: Add explain support.
+	* Mono.Data.Sql/Providers/SqlDbProvider.cs: Catch errors for async
+	mode and return null.
+	* Mono.Data.Sql/Providers/NpgsqlDbProvider.cs:
+	* Mono.Data.Sql/Providers/OracleDbProvider.cs:
+	* Mono.Data.Sql/Providers/MySqlDbProvider.cs:
+	* Mono.Data.Sql/Providers/FirebirdDbProvider.cs:
+	* Mono.Data.Sql/Providers/SybaseDbProvider.cs:
+	* Mono.Data.Sql/Providers/OdbcDbProvider.cs:
+
+2005-08-20	Christian Hergert	<christian.hergert at gmail.com>
+
 	* tests/test-oracle-1.cs: Test. Will be converted to nunit later.
 	* tests/test-firebird-1.cs:
 	* tests/test-sybase-1.cs:

Modified: trunk/MonoDevelop/Extras/MonoQuery/Mono.Data.Sql/Providers/DbProviderBase.cs
===================================================================
--- trunk/MonoDevelop/Extras/MonoQuery/Mono.Data.Sql/Providers/DbProviderBase.cs	2005-08-21 21:56:21 UTC (rev 2776)
+++ trunk/MonoDevelop/Extras/MonoQuery/Mono.Data.Sql/Providers/DbProviderBase.cs	2005-08-22 05:36:33 UTC (rev 2777)
@@ -112,6 +112,12 @@
 			}
 		}
 		
+		public virtual bool CanExplain {
+			get {
+				return true;
+			}
+		}
+		
 		public virtual bool Open ()
 		{
 			return IsOpen;
@@ -148,6 +154,27 @@
 			throw new NotImplementedException ();
 		}
 		
+		public virtual void ExplainSQL (string SQLText, SQLCallback Callback)
+		{
+			if (CanExplain != true)
+				return;
+			
+			lock (ThreadSync) {
+				ThreadedSQLCallback = Callback;
+				ThreadedSQLText = SQLText;
+				Thread eThread = new Thread (new ThreadStart (ExplainSQLThreadStart));
+				eThread.Start ();
+			}
+		}
+		
+		public virtual DataTable ExplainSQL (string SQLText)
+		{
+			if (CanExplain == false)
+				return null;
+			
+			return ExecuteSQL (String.Format ("EXPLAIN {0}", SQLText));
+		}
+		
 		public virtual void GetTables (SQLCallback Callback)
 		{
 			Thread eThread = null;
@@ -292,6 +319,13 @@
 			Callback (this, ExecuteSQL (SQLText));
 		}
 		
+		protected virtual void ExplainSQLThreadStart ()
+		{
+			string SQLText = ThreadedSQLText;
+			SQLCallback Callback = ThreadedSQLCallback;
+			Callback (this, ExplainSQL (SQLText));
+		}
+		
 		protected virtual void GetTablesThreadStart ()
 		{
 			SQLCallback Callback = ThreadedSQLCallback;

Modified: trunk/MonoDevelop/Extras/MonoQuery/Mono.Data.Sql/Providers/FirebirdDbProvider.cs
===================================================================
--- trunk/MonoDevelop/Extras/MonoQuery/Mono.Data.Sql/Providers/FirebirdDbProvider.cs	2005-08-21 21:56:21 UTC (rev 2776)
+++ trunk/MonoDevelop/Extras/MonoQuery/Mono.Data.Sql/Providers/FirebirdDbProvider.cs	2005-08-22 05:36:33 UTC (rev 2777)
@@ -182,18 +182,22 @@
 		/// </summary>
 		public override DataTable ExecuteSQL(string SQLText)
 		{
-			FbCommand command = new FbCommand();
-			command.Connection = connection;
-			command.CommandText = SQLText;
+			try {
+				FbCommand command = new FbCommand();
+				command.Connection = connection;
+				command.CommandText = SQLText;
 
-			DataSet resultSet = new DataSet ();
+				DataSet resultSet = new DataSet ();
 
-			lock(adapter) {
-				adapter.SelectCommand = command;
-				adapter.Fill(resultSet);
+				lock(adapter) {
+					adapter.SelectCommand = command;
+					adapter.Fill(resultSet);
+				}
+
+				return resultSet.Tables[0];
+			} catch {
+				return null;
 			}
-
-			return resultSet.Tables[0];
 		}
 		
 		/// <summary>

Modified: trunk/MonoDevelop/Extras/MonoQuery/Mono.Data.Sql/Providers/MySqlDbProvider.cs
===================================================================
--- trunk/MonoDevelop/Extras/MonoQuery/Mono.Data.Sql/Providers/MySqlDbProvider.cs	2005-08-21 21:56:21 UTC (rev 2776)
+++ trunk/MonoDevelop/Extras/MonoQuery/Mono.Data.Sql/Providers/MySqlDbProvider.cs	2005-08-22 05:36:33 UTC (rev 2777)
@@ -114,18 +114,22 @@
 		
 		public override DataTable ExecuteSQL (string SQLText)
 		{
-			MySqlCommand command = new MySqlCommand ();
-			command.Connection = Connection;
-			command.CommandText = SQLText;
-			
-			DataSet resultSet = null;
-			
-			lock (adapter) {
-				adapter.SelectCommand = command;
-				adapter.Fill (resultSet);
+			try {
+				MySqlCommand command = new MySqlCommand ();
+				command.Connection = Connection;
+				command.CommandText = SQLText;
+				
+				DataSet resultSet = null;
+				
+				lock (adapter) {
+					adapter.SelectCommand = command;
+					adapter.Fill (resultSet);
+				}
+				
+				return resultSet.Tables[0];
+			} catch {
+				return null;
 			}
-			
-			return resultSet.Tables[0];
 		}
 		
 		public override TableSchema[] GetTables ()

Modified: trunk/MonoDevelop/Extras/MonoQuery/Mono.Data.Sql/Providers/NpgsqlDbProvider.cs
===================================================================
--- trunk/MonoDevelop/Extras/MonoQuery/Mono.Data.Sql/Providers/NpgsqlDbProvider.cs	2005-08-21 21:56:21 UTC (rev 2776)
+++ trunk/MonoDevelop/Extras/MonoQuery/Mono.Data.Sql/Providers/NpgsqlDbProvider.cs	2005-08-22 05:36:33 UTC (rev 2777)
@@ -204,18 +204,22 @@
 		/// </summary>
 		public override DataTable ExecuteSQL(string SQLText)
 		{
-			NpgsqlCommand command = new NpgsqlCommand();
-			command.Connection = connection;
-			command.CommandText = SQLText;
+			try {
+				NpgsqlCommand command = new NpgsqlCommand();
+				command.Connection = connection;
+				command.CommandText = SQLText;
 
-			DataSet resultSet = new DataSet ();
+				DataSet resultSet = new DataSet ();
 
-			lock(adapter) {
-				adapter.SelectCommand = command;
-				adapter.Fill(resultSet);
+				lock(adapter) {
+					adapter.SelectCommand = command;
+					adapter.Fill(resultSet);
+				}
+
+				return resultSet.Tables[0];
+			} catch {
+				return null;
 			}
-
-			return resultSet.Tables[0];
 		}
 		
 		/// <summary>

Modified: trunk/MonoDevelop/Extras/MonoQuery/Mono.Data.Sql/Providers/OdbcDbProvider.cs
===================================================================
--- trunk/MonoDevelop/Extras/MonoQuery/Mono.Data.Sql/Providers/OdbcDbProvider.cs	2005-08-21 21:56:21 UTC (rev 2776)
+++ trunk/MonoDevelop/Extras/MonoQuery/Mono.Data.Sql/Providers/OdbcDbProvider.cs	2005-08-22 05:36:33 UTC (rev 2777)
@@ -182,18 +182,22 @@
 		/// </summary>
 		public override DataTable ExecuteSQL(string SQLText)
 		{
-			OdbcCommand command = new OdbcCommand();
-			command.Connection = connection;
-			command.CommandText = SQLText;
+			try {
+				OdbcCommand command = new OdbcCommand();
+				command.Connection = connection;
+				command.CommandText = SQLText;
 
-			DataSet resultSet = new DataSet ();
+				DataSet resultSet = new DataSet ();
 
-			lock(adapter) {
-				adapter.SelectCommand = command;
-				adapter.Fill(resultSet);
+				lock(adapter) {
+					adapter.SelectCommand = command;
+					adapter.Fill(resultSet);
+				}
+
+				return resultSet.Tables[0];
+			} catch {
+				return null;
 			}
-
-			return resultSet.Tables[0];
 		}
 		
 		/// <summary>

Modified: trunk/MonoDevelop/Extras/MonoQuery/Mono.Data.Sql/Providers/OracleDbProvider.cs
===================================================================
--- trunk/MonoDevelop/Extras/MonoQuery/Mono.Data.Sql/Providers/OracleDbProvider.cs	2005-08-21 21:56:21 UTC (rev 2776)
+++ trunk/MonoDevelop/Extras/MonoQuery/Mono.Data.Sql/Providers/OracleDbProvider.cs	2005-08-22 05:36:33 UTC (rev 2777)
@@ -131,10 +131,13 @@
 		{
 			if (type == typeof(TableSchema))
 				return true;
+			else if (type == typeof(ColumnSchema))
+				return true;
 			else if (type == typeof(ViewSchema))
 				return true;
 			else if (type == typeof(ProcedureSchema))
 				return true;
+			/*
 			else if (type == typeof(AggregateSchema))
 				return true;
 			else if (type == typeof(GroupSchema))
@@ -155,6 +158,7 @@
 				return true;
 			else if (type == typeof(RuleSchema))
 				return true;
+			*/
 			else
 				return false;
 		}
@@ -164,18 +168,22 @@
 		/// </summary>
 		public override DataTable ExecuteSQL(string SQLText)
 		{
-			OracleCommand command = new OracleCommand();
-			command.Connection = connection;
-			command.CommandText = SQLText;
+			try {
+				OracleCommand command = new OracleCommand();
+				command.Connection = connection;
+				command.CommandText = SQLText;
 
-			DataSet resultSet = null;
+				DataSet resultSet = null;
 
-			lock(adapter) {
-				adapter.SelectCommand = command;
-				adapter.Fill(resultSet);
+				lock(adapter) {
+					adapter.SelectCommand = command;
+					adapter.Fill(resultSet);
+				}
+
+				return resultSet.Tables[0];
+			} catch {
+				return null;
 			}
-
-			return resultSet.Tables[0];
 		}
 
 		private bool IsSystem(string owner) 

Modified: trunk/MonoDevelop/Extras/MonoQuery/Mono.Data.Sql/Providers/SqlDbProvider.cs
===================================================================
--- trunk/MonoDevelop/Extras/MonoQuery/Mono.Data.Sql/Providers/SqlDbProvider.cs	2005-08-21 21:56:21 UTC (rev 2776)
+++ trunk/MonoDevelop/Extras/MonoQuery/Mono.Data.Sql/Providers/SqlDbProvider.cs	2005-08-22 05:36:33 UTC (rev 2777)
@@ -177,18 +177,22 @@
 		/// </summary>
 		public override DataTable ExecuteSQL(string SQLText)
 		{
-			SqlCommand command = new SqlCommand();
-			command.Connection = connection;
-			command.CommandText = SQLText;
+			try {
+				SqlCommand command = new SqlCommand();
+				command.Connection = connection;
+				command.CommandText = SQLText;
 
-			DataSet resultSet = new DataSet ();
+				DataSet resultSet = new DataSet ();
 
-			lock(adapter) {
-				adapter.SelectCommand = command;
-				adapter.Fill(resultSet);
+				lock(adapter) {
+					adapter.SelectCommand = command;
+					adapter.Fill(resultSet);
+				}
+
+				return resultSet.Tables[0];
+			} catch {
+				return null;
 			}
-
-			return resultSet.Tables[0];
 		}
 		
 		/// <summary>

Modified: trunk/MonoDevelop/Extras/MonoQuery/Mono.Data.Sql/Providers/SybaseDbProvider.cs
===================================================================
--- trunk/MonoDevelop/Extras/MonoQuery/Mono.Data.Sql/Providers/SybaseDbProvider.cs	2005-08-21 21:56:21 UTC (rev 2776)
+++ trunk/MonoDevelop/Extras/MonoQuery/Mono.Data.Sql/Providers/SybaseDbProvider.cs	2005-08-22 05:36:33 UTC (rev 2777)
@@ -177,18 +177,22 @@
 		/// </summary>
 		public override DataTable ExecuteSQL(string SQLText)
 		{
-			SybaseCommand command = new SybaseCommand();
-			command.Connection = connection;
-			command.CommandText = SQLText;
+			try {
+				SybaseCommand command = new SybaseCommand();
+				command.Connection = connection;
+				command.CommandText = SQLText;
 
-			DataSet resultSet = new DataSet ();
+				DataSet resultSet = new DataSet ();
 
-			lock(adapter) {
-				adapter.SelectCommand = command;
-				adapter.Fill(resultSet);
+				lock(adapter) {
+					adapter.SelectCommand = command;
+					adapter.Fill(resultSet);
+				}
+
+				return resultSet.Tables[0];
+			} catch {
+				return null;
 			}
-
-			return resultSet.Tables[0];
 		}
 		
 		/// <summary>

Modified: trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/Commands/Commands.cs
===================================================================
--- trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/Commands/Commands.cs	2005-08-21 21:56:21 UTC (rev 2776)
+++ trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/Commands/Commands.cs	2005-08-22 05:36:33 UTC (rev 2777)
@@ -46,7 +46,11 @@
 		RemoveConnection,
 		DisconnectConnection,
 		RefreshProviderList,
-		RefreshConnection
+		RefreshConnection,
+		QueryCommand,
+		EmptyTable,
+		DropTable,
+		Refresh
 	}
 	
 	public class AddConnection : CommandHandler

Modified: trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/Gui/FakeNodes.cs
===================================================================
--- trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/Gui/FakeNodes.cs	2005-08-21 21:56:21 UTC (rev 2776)
+++ trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/Gui/FakeNodes.cs	2005-08-22 05:36:33 UTC (rev 2777)
@@ -34,12 +34,20 @@
 {
 	public class TablesNode
 	{
+		public event EventHandler RefreshEvent;
+		
 		public DbProviderBase Provider = null;
 		
 		public TablesNode (DbProviderBase provider)
 		{
 			Provider = provider;
 		}
+		
+		public void Refresh ()
+		{
+			if (RefreshEvent != null)
+				RefreshEvent (this, null);
+		}
 	}
 	
 	public class ViewsNode

Modified: trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/Gui/NodeBuilders/ColumnNodeBuilder.cs
===================================================================
--- trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/Gui/NodeBuilders/ColumnNodeBuilder.cs	2005-08-21 21:56:21 UTC (rev 2776)
+++ trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/Gui/NodeBuilders/ColumnNodeBuilder.cs	2005-08-22 05:36:33 UTC (rev 2777)
@@ -27,6 +27,7 @@
 //
 
 using System;
+using System.Text.RegularExpressions;
 
 using Mono.Data.Sql;
 using MonoDevelop.Services;
@@ -56,6 +57,18 @@
 			ColumnSchema schema = (ColumnSchema) dataObject;
 			label = schema.Name;
 			string iconName = "md-mono-query-column";
+			
+			string typeName = schema.DataTypeName.ToLower ();
+			
+			if (Regex.IsMatch (typeName, "(timestamp|datetime)"))
+				iconName = "md-mono-query-date-time";
+			else if (Regex.IsMatch (typeName, "(bytea|blob)"))
+				iconName = "md-mono-query-blob";
+			else if (Regex.IsMatch (typeName, "numeric"))
+				iconName = "md-mono-query-numeric";
+			else if (Regex.IsMatch (typeName, "(varchar|character var|char)"))
+				iconName = "md-mono-query-string";
+			
 			icon = Context.GetIcon (iconName);
 		}
 		

Modified: trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/Gui/NodeBuilders/DatabaseNodeBuilder.cs
===================================================================
--- trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/Gui/NodeBuilders/DatabaseNodeBuilder.cs	2005-08-21 21:56:21 UTC (rev 2776)
+++ trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/Gui/NodeBuilders/DatabaseNodeBuilder.cs	2005-08-22 05:36:33 UTC (rev 2777)
@@ -37,7 +37,6 @@
 using MonoDevelop.Commands;
 using MonoQuery.Commands;
 
-
 namespace MonoQuery
 {
 	public class DatabaseNodeBuilder : TypeNodeBuilder
@@ -107,8 +106,14 @@
 		{
 			DbProviderBase p = dataObject as DbProviderBase;
 			label = p.Name;
-			string iconName = p.IsOpen ? "md-mono-query-connect" : "md-mono-query-disconnect";
-			if (p.IsConnectionStringWrong) iconName = "md-warning";
+			
+			string iconName = "md-mono-query-database";
+			
+			if (p.IsConnectionStringWrong && p.IsOpen == false)
+				iconName = "md-mono-query-disconnected";
+			else if (p.IsOpen)
+				iconName = "md-mono-query-connected";
+			
 			icon = Context.GetIcon (iconName);
 		}
 
@@ -232,5 +237,20 @@
 			DbProviderBase provider = (DbProviderBase) CurrentNode.DataItem;
 			provider.Close ();
 		}
+		
+		public override void ActivateItem ()
+		{
+			OnQueryCommand ();
+		}
+		
+		[CommandHandler (MonoQueryCommands.QueryCommand)]
+		protected void OnQueryCommand ()
+		{
+			SqlQueryView sql = new SqlQueryView ();
+			sql.Connection = (DbProviderBase) CurrentNode.DataItem;
+			Runtime.Gui.Workbench.ShowView (sql, true);
+			
+			CurrentNode.MoveToParent ();
+		}
 	}
 }

Modified: trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/Gui/NodeBuilders/ProviderCollectionNodeBuilder.cs
===================================================================
--- trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/Gui/NodeBuilders/ProviderCollectionNodeBuilder.cs	2005-08-21 21:56:21 UTC (rev 2776)
+++ trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/Gui/NodeBuilders/ProviderCollectionNodeBuilder.cs	2005-08-22 05:36:33 UTC (rev 2777)
@@ -60,7 +60,7 @@
 		public override void BuildNode (ITreeBuilder treeBuilder, object dataObject, ref string label, ref Gdk.Pixbuf icon, ref Gdk.Pixbuf closedIcon)
 		{
 			label = GettextCatalog.GetString ("Database Connections");
-			string iconName = "md-mono-query-database";
+			string iconName = "md-mono-query-providers";
 			icon = Context.GetIcon (iconName);
 		}
 		

Modified: trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/Gui/NodeBuilders/TableNodeBuilder.cs
===================================================================
--- trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/Gui/NodeBuilders/TableNodeBuilder.cs	2005-08-21 21:56:21 UTC (rev 2776)
+++ trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/Gui/NodeBuilders/TableNodeBuilder.cs	2005-08-22 05:36:33 UTC (rev 2777)
@@ -36,7 +36,10 @@
 using MonoDevelop.Gui.Pads;
 using MonoDevelop.Gui.Widgets;
 using MonoDevelop.Services;
+using MonoDevelop.Commands;
 
+using MonoQuery.Commands;
+
 namespace MonoQuery
 {
 	public class TableNodeBuilder : TypeNodeBuilder
@@ -57,6 +60,12 @@
 			}
 		}
 		
+		public override string ContextMenuAddinPath {
+			get {
+				return "/SharpDevelop/Views/DatabasePad/ContextMenu/TableBrowserNode";
+			}
+		}
+		
 		public override string GetNodeName (ITreeNavigator thisNode, object dataObject)
 		{
 			return GettextCatalog.GetString ("Table");
@@ -126,5 +135,47 @@
 			DataGridView dataView = new DataGridView (results);
 			Runtime.Gui.Workbench.ShowView (dataView, true);
 		}
+		
+		[CommandHandler (MonoQueryCommands.QueryCommand)]
+		protected void OnQueryCommand ()
+		{
+			SqlQueryView sql = new SqlQueryView ();
+			TableSchema table = (TableSchema) CurrentNode.DataItem;
+			sql.Connection = table.Provider;
+			sql.Text = String.Format ("SELECT * FROM {0}", table.Name);
+			Runtime.Gui.Workbench.ShowView (sql, true);
+		}
+		
+		[CommandHandler (MonoQueryCommands.EmptyTable)]
+		protected void OnEmptyTable ()
+		{
+			TableSchema table = (TableSchema) CurrentNode.DataItem;
+			table.Provider.ExecuteSQL (String.Format (
+				"DELETE FROM {0}", table.Name));
+			Runtime.Gui.StatusBar.SetMessage (
+				GettextCatalog.GetString ("Table emptied"));
+		}
+		
+		[CommandHandler (MonoQueryCommands.DropTable)]
+		protected void OnDropTable ()
+		{
+			TableSchema table = (TableSchema) CurrentNode.DataItem;
+			table.Provider.ExecuteSQL (String.Format (
+				"DROP TABLE {0}", table.Name));
+			Runtime.Gui.StatusBar.SetMessage (
+				GettextCatalog.GetString ("Table dropped"));
+			
+			OnRefresh ();
+		}
+		
+		[CommandHandler (MonoQueryCommands.Refresh)]
+		protected void OnRefresh ()
+		{
+			CurrentNode.MoveToParent ();
+			if (CurrentNode.DataItem as TablesNode != null)
+				(CurrentNode.DataItem as TablesNode).Refresh ();
+			
+			CurrentNode.ExpandToNode ();
+		}
 	}
 }

Modified: trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/Gui/NodeBuilders/TablesNodeBuilder.cs
===================================================================
--- trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/Gui/NodeBuilders/TablesNodeBuilder.cs	2005-08-21 21:56:21 UTC (rev 2776)
+++ trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/Gui/NodeBuilders/TablesNodeBuilder.cs	2005-08-22 05:36:33 UTC (rev 2777)
@@ -32,7 +32,10 @@
 using Mono.Data.Sql;
 using MonoDevelop.Services;
 using MonoDevelop.Gui.Pads;
+using MonoDevelop.Commands;
 
+using MonoQuery.Commands;
+
 namespace MonoQuery
 {
 	public class TablesNodeBuilder : TypeNodeBuilder
@@ -44,9 +47,12 @@
 		private ITreeBuilder threadedBuilder;
 		private TablesNode threadedNode;
 		
+		private EventHandler RefreshHandler;
+		
 		public TablesNodeBuilder()
 		{
 			AddTable += (AddTableHandler) Runtime.DispatchService.GuiDispatch (new AddTableHandler (OnTableAdd));
+			RefreshHandler = (EventHandler) Runtime.DispatchService.GuiDispatch (new EventHandler (OnRefreshEvent));
 		}
 		
 		public override Type NodeDataType {
@@ -55,6 +61,18 @@
 			}
 		}
 		
+		public override Type CommandHandlerType {
+			get {
+				return typeof (TablesNodeCommandHandler);
+			}
+		}
+		
+		public override string ContextMenuAddinPath {
+			get {
+				return "/SharpDevelop/Views/DatabasePad/ContextMenu/TablesBrowserNode";
+			}
+		}
+		
 		public override string GetNodeName (ITreeNavigator thisNode, object dataObject)
 		{
 			return GettextCatalog.GetString ("Tables");
@@ -65,7 +83,20 @@
 			label = GettextCatalog.GetString ("Tables");
 			string iconName = "md-mono-query-tables";
 			icon = Context.GetIcon (iconName);
+			
+			TablesNode node = (TablesNode) dataObject;
+			node.RefreshEvent += RefreshHandler;
 		}
+		
+		void OnRefreshEvent (object sender, EventArgs args)
+		{
+			ITreeBuilder builder = Context.GetTreeBuilder ();
+			
+			if (builder != null)
+				builder.UpdateChildren ();
+			
+			builder.ExpandToNode ();
+		}
 
 		public override void BuildChildNodes (ITreeBuilder builder, object dataObject)
 		{
@@ -106,4 +137,28 @@
 			builder.Expanded = true;
 		}
 	}
+	
+	public class TablesNodeCommandHandler : NodeCommandHandler
+	{
+		public override DragOperation CanDragNode ()
+		{
+			return DragOperation.None;
+		}
+		
+		[CommandHandler (MonoQueryCommands.QueryCommand)]
+		protected void OnQueryCommand ()
+		{
+			SqlQueryView sql = new SqlQueryView ();
+			TablesNode node = (TablesNode) CurrentNode.DataItem;
+			sql.Connection = node.Provider;
+			Runtime.Gui.Workbench.ShowView (sql, true);
+		}
+		
+		[CommandHandler (MonoQueryCommands.Refresh)]
+		protected void OnRefresh ()
+		{
+			TablesNode node = (TablesNode) CurrentNode.DataItem;
+			node.Refresh ();
+		}
+	}
 }
\ No newline at end of file

Added: trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/Gui/SqlQueryView.cs
===================================================================
--- trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/Gui/SqlQueryView.cs	2005-08-21 21:56:21 UTC (rev 2776)
+++ trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/Gui/SqlQueryView.cs	2005-08-22 05:36:33 UTC (rev 2777)
@@ -0,0 +1,293 @@
+//
+// SqlQueryView.cs
+//
+// Author:
+//   Christian Hergert <chris at mosaix.net>
+//
+// Copyright (C) 2005 Christian Hergert
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+// 
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+// 
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+using System;
+using System.Data;
+
+using Gtk;
+using GtkSourceView;
+
+using Mono.Data.Sql;
+
+using MonoDevelop.Gui;
+using MonoDevelop.Services;
+using MonoDevelop.Core.Services;
+using MonoDevelop.Gui.Widgets;
+
+namespace MonoQuery
+{
+	public class SqlQueryView : AbstractViewContent
+	{
+		protected Frame control;
+		protected SourceView sourceView;
+		protected ComboBox providers;
+		
+		protected ListStore model;
+		
+		protected EventHandler changedHandler;
+		
+		protected MonoQueryService service;
+		
+		public SqlQueryView () : base ()
+		{
+			control = new Frame ();
+			control.Show ();
+			
+			VBox vbox = new VBox ();
+			vbox.Show ();
+			
+			Tooltips tips = new Tooltips ();
+			
+			Toolbar toolbar = new Toolbar ();
+			vbox.PackStart 	(toolbar, false, true, 0);
+			toolbar.Show ();
+			
+			Image image = new Image ();
+			image.Pixbuf = Gdk.Pixbuf.LoadFromResource ("MonoQuery.Execute");
+			image.Show ();
+			
+			Button execute = new Button (image);
+			execute.Clicked += new EventHandler (OnExecute);
+			execute.Relief = ReliefStyle.None;
+			tips.SetTip (execute, "Execute", "");
+			toolbar.Add (execute);
+			execute.Show ();
+			
+			image = new Image ();
+			image.Pixbuf = Gdk.Pixbuf.LoadFromResource ("MonoQuery.RunFromCursor");
+			image.Show ();
+			
+			Button run = new Button (image);
+			run.Clicked += new EventHandler (OnRunFromCursor);
+			run.Relief = ReliefStyle.None;
+			tips.SetTip (run, "Run from cursor", "");
+			toolbar.Add (run);
+			run.Show ();
+			
+			image = new Image ();
+			image.Pixbuf = Gdk.Pixbuf.LoadFromResource ("MonoQuery.Explain");
+			image.Show ();
+			
+			Button explain = new Button (image);
+			explain.Clicked += new EventHandler (OnExplain);
+			explain.Relief = ReliefStyle.None;
+			tips.SetTip (explain, "Explain query", "");
+			toolbar.Add (explain);
+			explain.Show ();
+			
+			image = new Image ();
+			image.Pixbuf = Gdk.Pixbuf.LoadFromResource ("MonoQuery.Stop");
+			image.Show ();
+			
+			Button stop = new Button (image);
+			stop.Clicked += new EventHandler (OnStop);
+			stop.Relief = ReliefStyle.None;
+			stop.Sensitive = false;
+			tips.SetTip (stop, "Stop", "");
+			toolbar.Add (stop);
+			stop.Show ();
+
+			VSeparator sep = new VSeparator ();
+			toolbar.Add (sep);
+			sep.Show ();
+			
+			model = new ListStore (typeof (string), typeof (DbProviderBase));
+			
+			providers = new ComboBox ();
+			providers.Model = model;
+			CellRendererText ctext = new CellRendererText ();
+			providers.PackStart (ctext, true);
+			providers.AddAttribute (ctext, "text", 0);
+			toolbar.Add (providers);
+			providers.Show ();
+			
+			SourceLanguagesManager lm = new SourceLanguagesManager ();
+			SourceLanguage lang = lm.GetLanguageFromMimeType ("text/x-sql");
+			SourceBuffer buf = new SourceBuffer (lang);
+			buf.Highlight = true;
+			sourceView = new SourceView (buf);
+			sourceView.ShowLineNumbers = true;
+			sourceView.Show ();
+			
+			ScrolledWindow scroller = new ScrolledWindow ();
+			scroller.Add (sourceView);
+			scroller.Show ();
+			vbox.PackStart (scroller, true, true, 0);
+			
+			control.Add (vbox);
+			
+			service = (MonoQueryService)
+				ServiceManager.GetService (typeof (MonoQueryService));
+			changedHandler
+				 = (EventHandler) Runtime.DispatchService.GuiDispatch (
+					new EventHandler (OnProvidersChanged));
+			service.Providers.Changed += changedHandler;
+			
+			foreach (DbProviderBase p in service.Providers) {
+				model.AppendValues (p.Name, p);
+			}
+		}
+		
+		public string Text {
+			get {
+				return sourceView.Buffer.Text;
+			}
+			set {
+				sourceView.Buffer.Text = value;
+			}
+		}
+		
+		public override Gtk.Widget Control {
+			get {
+				return control;
+			}
+		}
+		
+		public override string UntitledName {
+			get {
+				return "SQL Query";
+			}
+		}
+		
+		public override void Dispose ()
+		{
+			service.Providers.Changed -= changedHandler;
+		}
+		
+		public override void Load (string filename)
+		{
+		}
+		
+		public DbProviderBase Connection {
+			set {
+				int i = 0;
+				foreach (object[] row in model) {
+					if (row[1] == value)
+						providers.Active = i;
+					i++;
+				}
+			}
+			get {
+				TreeIter iter;
+				providers.GetActiveIter (out iter);
+				return (DbProviderBase) model.GetValue (iter, 1);
+			}
+		}
+		
+		void OnExecute (object sender, EventArgs args)
+		{
+			Runtime.Gui.StatusBar.BeginProgress (
+				GettextCatalog.GetString("Execuing sql query on")
+				+ String.Format (" {0}", Connection.Name));
+			Runtime.Gui.StatusBar.SetProgressFraction (0.1);
+			
+			string query = sourceView.Buffer.Text;
+			SQLCallback callback = (SQLCallback)
+				Runtime.DispatchService.GuiDispatch (
+				new SQLCallback (OnExecuteReturn));
+			
+			Runtime.Gui.StatusBar.SetMessage (
+				GettextCatalog.GetString ("Query sent, waiting for response."));
+			Runtime.Gui.StatusBar.SetProgressFraction (0.5);
+			
+			Connection.ExecuteSQL (query, callback);
+		}
+		
+		void OnExecuteReturn (object sender, object results)
+		{
+			Runtime.Gui.StatusBar.SetMessage (
+				GettextCatalog.GetString ("Query results received"));
+			Runtime.Gui.StatusBar.SetProgressFraction (0.9);
+			
+			if (results == null) {
+				Runtime.Gui.StatusBar.ShowErrorMessage (
+					GettextCatalog.GetString ("Invalid select query"));
+			} else {
+				DataGridView dataView = new DataGridView (results as DataTable);
+				Runtime.Gui.Workbench.ShowView (dataView, true);
+			}
+			
+			Runtime.Gui.StatusBar.EndProgress ();
+		}
+		
+		void OnRunFromCursor (object sender, EventArgs args)
+		{
+			Runtime.Gui.StatusBar.BeginProgress (
+				GettextCatalog.GetString("Execuing sql query on")
+				+ String.Format (" {0}", Connection.Name));
+			Runtime.Gui.StatusBar.SetProgressFraction (0.1);
+			
+			string query = sourceView.Buffer.GetSlice (
+				sourceView.Buffer.GetIterAtMark (sourceView.Buffer.InsertMark),
+				sourceView.Buffer.EndIter, false);
+			SQLCallback callback = (SQLCallback)
+				Runtime.DispatchService.GuiDispatch (
+				new SQLCallback (OnExecuteReturn));
+			
+			Runtime.Gui.StatusBar.SetMessage (
+				GettextCatalog.GetString ("Query sent, waiting for response."));
+			Runtime.Gui.StatusBar.SetProgressFraction (0.5);
+			
+			Connection.ExecuteSQL (query, callback);
+		}
+		
+		void OnExplain (object sender, EventArgs args)
+		{
+			Runtime.Gui.StatusBar.BeginProgress (
+				GettextCatalog.GetString("Execuing sql query on")
+				+ String.Format (" {0}", Connection.Name));
+			Runtime.Gui.StatusBar.SetProgressFraction (0.1);
+			
+			string query = sourceView.Buffer.Text;
+			SQLCallback callback = (SQLCallback)
+				Runtime.DispatchService.GuiDispatch (
+				new SQLCallback (OnExecuteReturn));
+			
+			Runtime.Gui.StatusBar.SetMessage (
+				GettextCatalog.GetString ("Query sent, waiting for response."));
+			Runtime.Gui.StatusBar.SetProgressFraction (0.5);
+			
+			Connection.ExplainSQL (query, callback);
+		}
+		
+		void OnStop (object sender, EventArgs args)
+		{
+		}
+		
+		void OnProvidersChanged (object sender, EventArgs args)
+		{
+			DbProviderBase current = Connection;
+			model.Clear ();
+			
+			foreach (DbProviderBase p in service.Providers) {
+				TreeIter cur = model.AppendValues (p.Name, p);
+				if (p == current)
+					providers.SetActiveIter (cur);
+			}
+		}
+	}
+}
\ No newline at end of file

Modified: trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/Makefile.am
===================================================================
--- trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/Makefile.am	2005-08-21 21:56:21 UTC (rev 2776)
+++ trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/Makefile.am	2005-08-22 05:36:33 UTC (rev 2777)
@@ -29,6 +29,7 @@
 Gui/DatabasePad.cs \
 Gui/ConnectionDialog.cs \
 Gui/DataGridView.cs \
+Gui/SqlQueryView.cs \
 Gui/DbProviderCollection.cs \
 MonoQueryService.cs \
 AssemblyInfo.cs
@@ -47,8 +48,21 @@
 icons/MonoQuery.Table \
 icons/MonoQuery.Tables \
 icons/MonoQuery.User \
-icons/MonoQuery.View
+icons/MonoQuery.View \
+icons/MonoQuery.Stop \
+icons/MonoQuery.RunFromCursor \
+icons/MonoQuery.Explain \
+icons/MonoQuery.Param \
+icons/MonoQuery.Numeric \
+icons/MonoQuery.Execute \
+icons/MonoQuery.Database.Connected \
+icons/MonoQuery.Database.Disconnected \
+icons/MonoQuery.String \
+icons/MonoQuery.Providers \
+icons/MonoQuery.Blob \
+icons/MonoQuery.SqlQueryView
 
+
 build_sources = $(addprefix $(srcdir)/, $(FILES))
 
 DLL = $(ADDIN_BUILD)/MonoQuery.dll

Modified: trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/MonoQuery.addin.xml
===================================================================
--- trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/MonoQuery.addin.xml	2005-08-21 21:56:21 UTC (rev 2776)
+++ trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/MonoQuery.addin.xml	2005-08-22 05:36:33 UTC (rev 2777)
@@ -69,6 +69,18 @@
 		<Command id = "MonoQuery.Commands.MonoQueryCommands.DisconnectConnection"
 			_label = "Disconnect"
 			icon = "md-mono-query-disconnect"/>
+		<Command id = "MonoQuery.Commands.MonoQueryCommands.QueryCommand"
+			_label = "SQL Query Editor"
+			icon = "md-mono-query-sql-query-view"/>
+		<Command id = "MonoQuery.Commands.MonoQueryCommands.EmptyTable"
+			_label = "Empty table"
+			icon = "gtk-clear"/>
+		<Command id = "MonoQuery.Commands.MonoQueryCommands.DropTable"
+			_label = "Drop table"
+			icon = "gtk-remove"/>
+		<Command id = "MonoQuery.Commands.MonoQueryCommands.Refresh"
+			_label = "Refresh"
+			icon = "gtk-refresh"/>
 	</Extension>
 	
 	<Extension path = "/SharpDevelop/Views/DatabasePad/ContextMenu/ConnectionsBrowserNode">
@@ -82,8 +94,24 @@
 		<CommandItem id = "MonoQuery.Commands.MonoQueryCommands.DisconnectConnection"/>
 		<SeparatorItem id = "ConnectionSeparator"/>
 		<CommandItem id = "MonoQuery.Commands.MonoQueryCommands.RefreshConnection"/>
+		<SeparatorItem id = "ConnectionSeparator2"/>
+		<CommandItem id = "MonoQuery.Commands.MonoQueryCommands.QueryCommand"/>
 	</Extension>
-
+	
+	<Extension path = "/SharpDevelop/Views/DatabasePad/ContextMenu/TableBrowserNode">
+		<CommandItem id = "MonoQuery.Commands.MonoQueryCommands.Refresh"/>
+		<SeparatorItem id = "RefreshSeparator"/>
+		<CommandItem id = "MonoQuery.Commands.MonoQueryCommands.QueryCommand"/>
+		<CommandItem id = "MonoQuery.Commands.MonoQueryCommands.EmptyTable"/>
+		<CommandItem id = "MonoQuery.Commands.MonoQueryCommands.DropTable"/>
+	</Extension>
+	
+	<Extension path = "/SharpDevelop/Views/DatabasePad/ContextMenu/TablesBrowserNode">
+		<CommandItem id = "MonoQuery.Commands.MonoQueryCommands.Refresh"/>
+		<SeparatorItem id = "RefreshSeparator"/>
+		<CommandItem id = "MonoQuery.Commands.MonoQueryCommands.QueryCommand"/>
+	</Extension>
+	
 	<Extension path = "/SharpDevelop/Workbench/StockIcons">
 		<StockIcon stockid = "md-mono-query-addconnection" resource = "MonoQuery.Addconnection" />
 		<StockIcon stockid = "md-mono-query-column" resource = "MonoQuery.Column" />
@@ -98,6 +126,18 @@
 		<StockIcon stockid = "md-mono-query-tables" resource = "MonoQuery.Tables" />
 		<StockIcon stockid = "md-mono-query-user" resource = "MonoQuery.User" />
 		<StockIcon stockid = "md-mono-query-view" resource = "MonoQuery.View" />
+		<StockIcon stockid = "md-mono-query-sql-query-view" resource = "MonoQuery.SqlQueryView" />
+		<StockIcon stockid = "md-mono-query-stop" resource = "MonoQuery.Stop" />
+		<StockIcon stockid = "md-mono-query-run-from-cursor" resource = "MonoQuery.RunFromCursor" />
+		<StockIcon stockid = "md-mono-query-param" resource = "MonoQuery.Param" />
+		<StockIcon stockid = "md-mono-query-explain" resource = "MonoQuery.Explain" />
+		<StockIcon stockid = "md-mono-query-execute" resource = "MonoQuery.Execute" />
+		<StockIcon stockid = "md-mono-query-numeric" resource = "MonoQuery.Numeric" />
+		<StockIcon stockid = "md-mono-query-connected" resource = "MonoQuery.Database.Connected" />
+		<StockIcon stockid = "md-mono-query-disconnected" resource = "MonoQuery.Database.Disconnected" />
+		<StockIcon stockid = "md-mono-query-string" resource = "MonoQuery.String" />
+		<StockIcon stockid = "md-mono-query-providers" resource = "MonoQuery.Providers" />
+		<StockIcon stockid = "md-mono-query-blob" resource = "MonoQuery.Blob" />
 	</Extension>
 
 </AddIn>

Modified: trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/MonoQuery.mdp
===================================================================
--- trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/MonoQuery.mdp	2005-08-21 21:56:21 UTC (rev 2776)
+++ trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/MonoQuery.mdp	2005-08-22 05:36:33 UTC (rev 2777)
@@ -54,6 +54,32 @@
     <File name="./Gui/DbProviderCollection.cs" subtype="Code" buildaction="Compile" />
     <File name="./Gui/NodeBuilders/ParametersNodeBuilder.cs" subtype="Code" buildaction="Compile" />
     <File name="./Gui/NodeBuilders/UserNodeBuilder.cs" subtype="Code" buildaction="Compile" />
+    <File name="./Gui/SqlQueryView.cs" subtype="Code" buildaction="Compile" />
+    <File name="./icons/MonoQuery.Addconnection" subtype="Code" buildaction="EmbedAsResource" />
+    <File name="./icons/MonoQuery.Blob" subtype="Code" buildaction="EmbedAsResource" />
+    <File name="./icons/MonoQuery.Column" subtype="Code" buildaction="EmbedAsResource" />
+    <File name="./icons/MonoQuery.ColumnFK" subtype="Code" buildaction="EmbedAsResource" />
+    <File name="./icons/MonoQuery.ColumnPK" subtype="Code" buildaction="EmbedAsResource" />
+    <File name="./icons/MonoQuery.Connect" subtype="Code" buildaction="EmbedAsResource" />
+    <File name="./icons/MonoQuery.Database" subtype="Code" buildaction="EmbedAsResource" />
+    <File name="./icons/MonoQuery.Database.Connected" subtype="Code" buildaction="EmbedAsResource" />
+    <File name="./icons/MonoQuery.Database.Disconnected" subtype="Code" buildaction="EmbedAsResource" />
+    <File name="./icons/MonoQuery.DateTime" subtype="Code" buildaction="EmbedAsResource" />
+    <File name="./icons/MonoQuery.Disconnect" subtype="Code" buildaction="EmbedAsResource" />
+    <File name="./icons/MonoQuery.Execute" subtype="Code" buildaction="EmbedAsResource" />
+    <File name="./icons/MonoQuery.Explain" subtype="Code" buildaction="EmbedAsResource" />
+    <File name="./icons/MonoQuery.Numeric" subtype="Code" buildaction="EmbedAsResource" />
+    <File name="./icons/MonoQuery.Param" subtype="Code" buildaction="EmbedAsResource" />
+    <File name="./icons/MonoQuery.Procedure" subtype="Code" buildaction="EmbedAsResource" />
+    <File name="./icons/MonoQuery.Providers" subtype="Code" buildaction="EmbedAsResource" />
+    <File name="./icons/MonoQuery.RunFromCursor" subtype="Code" buildaction="EmbedAsResource" />
+    <File name="./icons/MonoQuery.SqlQueryView" subtype="Code" buildaction="EmbedAsResource" />
+    <File name="./icons/MonoQuery.Stop" subtype="Code" buildaction="EmbedAsResource" />
+    <File name="./icons/MonoQuery.String" subtype="Code" buildaction="EmbedAsResource" />
+    <File name="./icons/MonoQuery.Table" subtype="Code" buildaction="EmbedAsResource" />
+    <File name="./icons/MonoQuery.Tables" subtype="Code" buildaction="EmbedAsResource" />
+    <File name="./icons/MonoQuery.User" subtype="Code" buildaction="EmbedAsResource" />
+    <File name="./icons/MonoQuery.View" subtype="Code" buildaction="EmbedAsResource" />
   </Contents>
   <References>
     <ProjectReference type="Project" localcopy="True" refto="Mono.Data.Sql" />
@@ -66,5 +92,6 @@
     <ProjectReference type="Assembly" localcopy="True" refto="../../../build/bin/MonoDevelop.Base.dll" />
     <ProjectReference type="Assembly" localcopy="True" refto="../../../build/bin/MonoDevelop.Core.dll" />
     <ProjectReference type="Assembly" localcopy="True" refto="../../../build/bin/MonoDevelop.Gui.Widgets.dll" />
+    <ProjectReference type="Gac" localcopy="True" refto="System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
   </References>
 </Project>
\ No newline at end of file

Added: trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/icons/MonoQuery.Blob
===================================================================
(Binary files differ)


Property changes on: trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/icons/MonoQuery.Blob
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/icons/MonoQuery.Database.Connected
===================================================================
(Binary files differ)


Property changes on: trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/icons/MonoQuery.Database.Connected
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/icons/MonoQuery.Database.Disconnected
===================================================================
(Binary files differ)


Property changes on: trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/icons/MonoQuery.Database.Disconnected
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/icons/MonoQuery.Execute
===================================================================
(Binary files differ)


Property changes on: trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/icons/MonoQuery.Execute
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/icons/MonoQuery.Explain
===================================================================
(Binary files differ)


Property changes on: trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/icons/MonoQuery.Explain
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/icons/MonoQuery.Numeric
===================================================================
(Binary files differ)


Property changes on: trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/icons/MonoQuery.Numeric
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/icons/MonoQuery.Param
===================================================================
(Binary files differ)


Property changes on: trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/icons/MonoQuery.Param
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/icons/MonoQuery.Providers
===================================================================
(Binary files differ)


Property changes on: trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/icons/MonoQuery.Providers
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/icons/MonoQuery.RunFromCursor
===================================================================
(Binary files differ)


Property changes on: trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/icons/MonoQuery.RunFromCursor
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/icons/MonoQuery.SqlQueryView
===================================================================
(Binary files differ)


Property changes on: trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/icons/MonoQuery.SqlQueryView
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/icons/MonoQuery.Stop
===================================================================
(Binary files differ)


Property changes on: trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/icons/MonoQuery.Stop
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/icons/MonoQuery.String
===================================================================
(Binary files differ)


Property changes on: trunk/MonoDevelop/Extras/MonoQuery/MonoQuery/icons/MonoQuery.String
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream




More information about the Monodevelop-patches-list mailing list