[Monodevelop-patches-list] r2160 - in trunk/MonoDevelop/Core/src/MonoDevelop.Base: . Commands Commands/ProjectBrowserCommands Gui/Dialogs Gui/Dialogs/OptionPanels/ProjectOptions Gui/Dialogs/ReferenceDialog Gui/Pads/ClassScout/NodeBuilder Gui/Pads/HelpBrowser Gui/Workbench/Layouts Internal/Parser/SharpAssemblyLayer Internal/ProgressMonitoring Internal/Project/Combine Internal/Project/Project Internal/Serialization Services/DispatchService Services/ParserService Services/ProcessService Services/Project Services/Tasks

commit-watcher at mono-cvs.ximian.com commit-watcher at mono-cvs.ximian.com
Tue Jan 25 12:00:08 EST 2005


Author: lluis
Date: 2005-01-25 12:00:08 -0500 (Tue, 25 Jan 2005)
New Revision: 2160

Modified:
   trunk/MonoDevelop/Core/src/MonoDevelop.Base/ChangeLog
   trunk/MonoDevelop/Core/src/MonoDevelop.Base/Commands/HelpCommands.cs
   trunk/MonoDevelop/Core/src/MonoDevelop.Base/Commands/ProjectBrowserCommands/FolderNodeCommands.cs
   trunk/MonoDevelop/Core/src/MonoDevelop.Base/Commands/ProjectBrowserCommands/ReferenceFolderNodeCommands.cs
   trunk/MonoDevelop/Core/src/MonoDevelop.Base/Gui/Dialogs/DirtyFilesDialog.cs
   trunk/MonoDevelop/Core/src/MonoDevelop.Base/Gui/Dialogs/NewFileDialog.cs
   trunk/MonoDevelop/Core/src/MonoDevelop.Base/Gui/Dialogs/OptionPanels/ProjectOptions/CompileFileProjectOptions.cs
   trunk/MonoDevelop/Core/src/MonoDevelop.Base/Gui/Dialogs/OptionPanels/ProjectOptions/DeployFileOptions.cs
   trunk/MonoDevelop/Core/src/MonoDevelop.Base/Gui/Dialogs/ProjectOptionsDialog.cs
   trunk/MonoDevelop/Core/src/MonoDevelop.Base/Gui/Dialogs/ReferenceDialog/WebReference.cs
   trunk/MonoDevelop/Core/src/MonoDevelop.Base/Gui/Pads/ClassScout/NodeBuilder/DefaultDotNetClassScoutNodeBuilder.cs
   trunk/MonoDevelop/Core/src/MonoDevelop.Base/Gui/Pads/HelpBrowser/MonodocTreePad.cs
   trunk/MonoDevelop/Core/src/MonoDevelop.Base/Gui/Workbench/Layouts/SdiWorkspaceLayout.cs
   trunk/MonoDevelop/Core/src/MonoDevelop.Base/Internal/Parser/SharpAssemblyLayer/SharpAssemblyAttribute.cs
   trunk/MonoDevelop/Core/src/MonoDevelop.Base/Internal/Parser/SharpAssemblyLayer/SharpAssemblyField.cs
   trunk/MonoDevelop/Core/src/MonoDevelop.Base/Internal/Parser/SharpAssemblyLayer/SharpAssemblyMethod.cs
   trunk/MonoDevelop/Core/src/MonoDevelop.Base/Internal/Parser/SharpAssemblyLayer/SharpAssemblyProperty.cs
   trunk/MonoDevelop/Core/src/MonoDevelop.Base/Internal/ProgressMonitoring/BaseProgressMonitor.cs
   trunk/MonoDevelop/Core/src/MonoDevelop.Base/Internal/ProgressMonitoring/ConsoleProgressMonitor.cs
   trunk/MonoDevelop/Core/src/MonoDevelop.Base/Internal/ProgressMonitoring/NullProgressMonitor.cs
   trunk/MonoDevelop/Core/src/MonoDevelop.Base/Internal/Project/Combine/Combine.cs
   trunk/MonoDevelop/Core/src/MonoDevelop.Base/Internal/Project/Project/DotNetProject.cs
   trunk/MonoDevelop/Core/src/MonoDevelop.Base/Internal/Project/Project/IncludeFilesDialog.cs
   trunk/MonoDevelop/Core/src/MonoDevelop.Base/Internal/Project/Project/Project.cs
   trunk/MonoDevelop/Core/src/MonoDevelop.Base/Internal/Serialization/DataCollection.cs
   trunk/MonoDevelop/Core/src/MonoDevelop.Base/Internal/Serialization/ItemProperty.cs
   trunk/MonoDevelop/Core/src/MonoDevelop.Base/Services/DispatchService/DispatchService.cs
   trunk/MonoDevelop/Core/src/MonoDevelop.Base/Services/DispatchService/SyncContextAttribute.cs
   trunk/MonoDevelop/Core/src/MonoDevelop.Base/Services/ParserService/CodeCompletionDatabase.cs
   trunk/MonoDevelop/Core/src/MonoDevelop.Base/Services/ParserService/DefaultParserService.cs
   trunk/MonoDevelop/Core/src/MonoDevelop.Base/Services/ProcessService/ProcessService.cs
   trunk/MonoDevelop/Core/src/MonoDevelop.Base/Services/ProcessService/ProcessWrapper.cs
   trunk/MonoDevelop/Core/src/MonoDevelop.Base/Services/Project/DefaultProjectService.cs
   trunk/MonoDevelop/Core/src/MonoDevelop.Base/Services/Tasks/OutputProgressMonitor.cs
Log:
2005-01-25  Lluis Sanchez Gual <lluis at novell.com>
	
	* Services/DispatchService/DispatchService.cs: Don't set the gui sync
	context here. The default context won't be always a safe context.
	* Services/DispatchService/SyncContextAttribute.cs: Set the target
	context when switching to a new context.
	* Internal/ProgressMonitoring/BaseProgressMonitor.cs:
	* Services/Tasks/OutputProgressMonitor.cs: OnWriteLog is now only called
	internally, so no need for async.
	* Services/ProcessService/ProcessService.cs: Added parameter to
	StartConsoleProcess to allow running a console process inside MD.
	* Services/ProcessService/ProcessWrapper.cs: More than one thread may
	want to wait for the process, so use ManualResetEvent instead of
	AutoResetEvent.
	* Services/Project/DefaultProjectService.cs: Don't use output monitors
	for project execution, since the project will create the output panel
	when needed.
	* Internal/Project/Project/DotNetProject.cs: Start processes using the
	new StartConsoleProcess method.
	* Internal/Project/Combine/Combine.cs: For multiple startup combines, run
	all projects in parallel.
	* Internal/ProgressMonitoring/NullProgressMonitor.cs: Set the wait event
	when all is done.

	* Commands/ProjectBrowserCommands/ReferenceFolderNodeCommands.cs:
	* Commands/ProjectBrowserCommands/FolderNodeCommands.cs:
	* Commands/HelpCommands.cs:
	* Services/ParserService/DefaultParserService.cs:
	* Services/ParserService/CodeCompletionDatabase.cs:
	* Gui/Dialogs/DirtyFilesDialog.cs:
	* Gui/Dialogs/ProjectOptionsDialog.cs:
	* Gui/Dialogs/OptionPanels/ProjectOptions/CompileFileProjectOptions.cs:
	* Gui/Dialogs/OptionPanels/ProjectOptions/DeployFileOptions.cs:
	* Gui/Dialogs/NewFileDialog.cs:
	* Gui/Dialogs/ReferenceDialog/WebReference.cs:
	* Gui/Workbench/Layouts/SdiWorkspaceLayout.cs:
	* Gui/Pads/ClassScout/NodeBuilder/DefaultDotNetClassScoutNodeBuilder.cs:
	* Gui/Pads/HelpBrowser/MonodocTreePad.cs:
	* Internal/Project/Project/IncludeFilesDialog.cs:
	* Internal/Project/Project/Project.cs:
	* Internal/ProgressMonitoring/ConsoleProgressMonitor.cs:
	* Internal/Parser/SharpAssemblyLayer/SharpAssemblyMethod.cs:
	* Internal/Parser/SharpAssemblyLayer/SharpAssemblyField.cs:
	* Internal/Parser/SharpAssemblyLayer/SharpAssemblyAttribute.cs:
	* Internal/Parser/SharpAssemblyLayer/SharpAssemblyProperty.cs:
	* Internal/Serialization/DataCollection.cs:
	* Internal/Serialization/ItemProperty.cs: Fix warnings.



Modified: trunk/MonoDevelop/Core/src/MonoDevelop.Base/ChangeLog
===================================================================
--- trunk/MonoDevelop/Core/src/MonoDevelop.Base/ChangeLog	2005-01-25 05:06:01 UTC (rev 2159)
+++ trunk/MonoDevelop/Core/src/MonoDevelop.Base/ChangeLog	2005-01-25 17:00:08 UTC (rev 2160)
@@ -1,3 +1,51 @@
+2005-01-25  Lluis Sanchez Gual <lluis at novell.com>
+	
+	* Services/DispatchService/DispatchService.cs: Don't set the gui sync
+	context here. The default context won't be always a safe context.
+	* Services/DispatchService/SyncContextAttribute.cs: Set the target
+	context when switching to a new context.
+	* Internal/ProgressMonitoring/BaseProgressMonitor.cs:
+	* Services/Tasks/OutputProgressMonitor.cs: OnWriteLog is now only called
+	internally, so no need for async.
+	* Services/ProcessService/ProcessService.cs: Added parameter to
+	StartConsoleProcess to allow running a console process inside MD.
+	* Services/ProcessService/ProcessWrapper.cs: More than one thread may
+	want to wait for the process, so use ManualResetEvent instead of
+	AutoResetEvent.
+	* Services/Project/DefaultProjectService.cs: Don't use output monitors
+	for project execution, since the project will create the output panel
+	when needed.
+	* Internal/Project/Project/DotNetProject.cs: Start processes using the
+	new StartConsoleProcess method.
+	* Internal/Project/Combine/Combine.cs: For multiple startup combines, run
+	all projects in parallel.
+	* Internal/ProgressMonitoring/NullProgressMonitor.cs: Set the wait event
+	when all is done.
+
+	* Commands/ProjectBrowserCommands/ReferenceFolderNodeCommands.cs:
+	* Commands/ProjectBrowserCommands/FolderNodeCommands.cs:
+	* Commands/HelpCommands.cs:
+	* Services/ParserService/DefaultParserService.cs:
+	* Services/ParserService/CodeCompletionDatabase.cs:
+	* Gui/Dialogs/DirtyFilesDialog.cs:
+	* Gui/Dialogs/ProjectOptionsDialog.cs:
+	* Gui/Dialogs/OptionPanels/ProjectOptions/CompileFileProjectOptions.cs:
+	* Gui/Dialogs/OptionPanels/ProjectOptions/DeployFileOptions.cs:
+	* Gui/Dialogs/NewFileDialog.cs:
+	* Gui/Dialogs/ReferenceDialog/WebReference.cs:
+	* Gui/Workbench/Layouts/SdiWorkspaceLayout.cs:
+	* Gui/Pads/ClassScout/NodeBuilder/DefaultDotNetClassScoutNodeBuilder.cs:
+	* Gui/Pads/HelpBrowser/MonodocTreePad.cs:
+	* Internal/Project/Project/IncludeFilesDialog.cs:
+	* Internal/Project/Project/Project.cs:
+	* Internal/ProgressMonitoring/ConsoleProgressMonitor.cs:
+	* Internal/Parser/SharpAssemblyLayer/SharpAssemblyMethod.cs:
+	* Internal/Parser/SharpAssemblyLayer/SharpAssemblyField.cs:
+	* Internal/Parser/SharpAssemblyLayer/SharpAssemblyAttribute.cs:
+	* Internal/Parser/SharpAssemblyLayer/SharpAssemblyProperty.cs:
+	* Internal/Serialization/DataCollection.cs:
+	* Internal/Serialization/ItemProperty.cs: Fix warnings.
+
 2005-01-24  Lluis Sanchez Gual <lluis at novell.com>
 
 	* Services/Project/DefaultProjectService.cs: Don't raise the combine

Modified: trunk/MonoDevelop/Core/src/MonoDevelop.Base/Commands/HelpCommands.cs
===================================================================
--- trunk/MonoDevelop/Core/src/MonoDevelop.Base/Commands/HelpCommands.cs	2005-01-25 05:06:01 UTC (rev 2159)
+++ trunk/MonoDevelop/Core/src/MonoDevelop.Base/Commands/HelpCommands.cs	2005-01-25 17:00:08 UTC (rev 2160)
@@ -24,13 +24,14 @@
 	{
 		public override void Run()
 		{
-			string fileName = Runtime.FileUtilityService.SharpDevelopRootPath + 
+/*			string fileName = Runtime.FileUtilityService.SharpDevelopRootPath + 
 			              Path.DirectorySeparatorChar + "doc" +
 			              Path.DirectorySeparatorChar + "help" +
 			              Path.DirectorySeparatorChar + "sharpdevelop.chm";
 			//if (fileUtilityService.TestFileExists(fileName)) {
 			//	Help.ShowHelp((Gtk.Window)WorkbenchSingleton.Workbench, fileName);
 			//}
+*/
 		}
 	}
 	

Modified: trunk/MonoDevelop/Core/src/MonoDevelop.Base/Commands/ProjectBrowserCommands/FolderNodeCommands.cs
===================================================================
--- trunk/MonoDevelop/Core/src/MonoDevelop.Base/Commands/ProjectBrowserCommands/FolderNodeCommands.cs	2005-01-25 05:06:01 UTC (rev 2159)
+++ trunk/MonoDevelop/Core/src/MonoDevelop.Base/Commands/ProjectBrowserCommands/FolderNodeCommands.cs	2005-01-25 17:00:08 UTC (rev 2160)
@@ -45,8 +45,6 @@
 			using (FileSelector fdiag  = new FileSelector (GettextCatalog.GetString ("Add files"))) {
 				fdiag.SelectMultiple = true;
 				
-				string defaultPath = node.Project.BaseDirectory;
-				
 				int result = fdiag.Run ();
 				try {
 					if (result != (int) ResponseType.Ok)

Modified: trunk/MonoDevelop/Core/src/MonoDevelop.Base/Commands/ProjectBrowserCommands/ReferenceFolderNodeCommands.cs
===================================================================
--- trunk/MonoDevelop/Core/src/MonoDevelop.Base/Commands/ProjectBrowserCommands/ReferenceFolderNodeCommands.cs	2005-01-25 05:06:01 UTC (rev 2159)
+++ trunk/MonoDevelop/Core/src/MonoDevelop.Base/Commands/ProjectBrowserCommands/ReferenceFolderNodeCommands.cs	2005-01-25 17:00:08 UTC (rev 2160)
@@ -77,7 +77,7 @@
 	{
 		public override void Run()
 		{
-			ProjectBrowserView browser = (ProjectBrowserView)Owner;
+/*			ProjectBrowserView browser = (ProjectBrowserView)Owner;
 			AbstractBrowserNode node   = browser.SelectedNode as AbstractBrowserNode;
 			AbstractBrowserNode projectNode = DefaultDotNetNodeBuilder.GetProjectNode(node);
 			bool bInitReferences = false;
@@ -85,7 +85,7 @@
 			if (node != null) {
 				Project project = ((ProjectBrowserNode)node.Parent).Project;
 			
-/*				using (AddWebReferenceDialog refDialog = new AddWebReferenceDialog(project)) {
+				using (AddWebReferenceDialog refDialog = new AddWebReferenceDialog(project)) {
 					if (refDialog.ShowDialog() == DialogResult.OK) {						
 						foreach(object objReference in refDialog.ReferenceInformations) {
 							if(objReference is ProjectReference) {
@@ -122,8 +122,8 @@
 						}
 						projectService.SaveCombine();						
 					}
-				}*/				
-			}
+				}
+			}*/
 		}
 	}
 }

Modified: trunk/MonoDevelop/Core/src/MonoDevelop.Base/Gui/Dialogs/DirtyFilesDialog.cs
===================================================================
--- trunk/MonoDevelop/Core/src/MonoDevelop.Base/Gui/Dialogs/DirtyFilesDialog.cs	2005-01-25 05:06:01 UTC (rev 2159)
+++ trunk/MonoDevelop/Core/src/MonoDevelop.Base/Gui/Dialogs/DirtyFilesDialog.cs	2005-01-25 17:00:08 UTC (rev 2160)
@@ -153,8 +153,8 @@
 					NewCheckStatus (childIter);
 				bool lastsetting = (bool)tsFiles.GetValue (childIter, 1);
 				bool inconsistant = (bool)tsFiles.GetValue (childIter, 3);
-				bool anytrue, finalsetting;
-				anytrue = finalsetting = lastsetting;
+				bool anytrue;
+				anytrue = lastsetting;
 				while (tsFiles.IterNext (ref childIter)) {
 					if (tsFiles.IterHasChild (childIter))
 						NewCheckStatus (childIter);

Modified: trunk/MonoDevelop/Core/src/MonoDevelop.Base/Gui/Dialogs/NewFileDialog.cs
===================================================================
--- trunk/MonoDevelop/Core/src/MonoDevelop.Base/Gui/Dialogs/NewFileDialog.cs	2005-01-25 05:06:01 UTC (rev 2159)
+++ trunk/MonoDevelop/Core/src/MonoDevelop.Base/Gui/Dialogs/NewFileDialog.cs	2005-01-25 17:00:08 UTC (rev 2160)
@@ -155,13 +155,11 @@
 		// list view event handlers
 		void SelectedIndexChange(object sender, EventArgs e)
 		{
-			TreeModel mdl;
-			TreeIter iter;
 			FileTemplate item = (FileTemplate)TemplateView.CurrentlySelected;
 
 			if (item != null)
 			{
-                                infoLabel.Text = item.Description;
+				infoLabel.Text = item.Description;
 				okButton.Sensitive = true;
 			}
 		}
@@ -187,9 +185,6 @@
 	
 		void OpenEvent(object sender, EventArgs e)
 		{
-			TreeModel mdl;
-			TreeIter iter;
-
 			//FIXME: we need to set this up
 			//PropertyService propertyService = (PropertyService)ServiceManager.Services.GetService(typeof(PropertyService));
 			//propertyService.SetProperty("Dialogs.NewProjectDialog.LargeImages", ((RadioButton)ControlDictionary["largeIconsRadioButton"]).Checked);

Modified: trunk/MonoDevelop/Core/src/MonoDevelop.Base/Gui/Dialogs/OptionPanels/ProjectOptions/CompileFileProjectOptions.cs
===================================================================
--- trunk/MonoDevelop/Core/src/MonoDevelop.Base/Gui/Dialogs/OptionPanels/ProjectOptions/CompileFileProjectOptions.cs	2005-01-25 05:06:01 UTC (rev 2159)
+++ trunk/MonoDevelop/Core/src/MonoDevelop.Base/Gui/Dialogs/OptionPanels/ProjectOptions/CompileFileProjectOptions.cs	2005-01-25 17:00:08 UTC (rev 2160)
@@ -49,13 +49,12 @@
 				rendererToggle.Toggled += new ToggledHandler (ItemToggled);
 				includeTreeView.AppendColumn ("Choosen", rendererToggle, "active", 0);
 				includeTreeView.AppendColumn ("Name", new CellRendererText (), "text", 1);
-				TreeIter iter = new TreeIter ();
 				
 				foreach (ProjectFile info in project.ProjectFiles) {
 					if (info.BuildAction == BuildAction.Nothing || info.BuildAction == BuildAction.Compile) {
 						string name = Runtime.FileUtilityService.AbsoluteToRelativePath(
 							project.BaseDirectory, info.Name).Substring(2);
-						iter = store.AppendValues (info.BuildAction == BuildAction.Compile ? true : false, name);
+						store.AppendValues (info.BuildAction == BuildAction.Compile ? true : false, name);
 					}
 				}
 			}			
@@ -95,7 +94,7 @@
 						success = false;
 					}
 				}
-				return true;
+				return success;
 			}
 		}
 		

Modified: trunk/MonoDevelop/Core/src/MonoDevelop.Base/Gui/Dialogs/OptionPanels/ProjectOptions/DeployFileOptions.cs
===================================================================
--- trunk/MonoDevelop/Core/src/MonoDevelop.Base/Gui/Dialogs/OptionPanels/ProjectOptions/DeployFileOptions.cs	2005-01-25 05:06:01 UTC (rev 2159)
+++ trunk/MonoDevelop/Core/src/MonoDevelop.Base/Gui/Dialogs/OptionPanels/ProjectOptions/DeployFileOptions.cs	2005-01-25 17:00:08 UTC (rev 2160)
@@ -64,13 +64,11 @@
 				rendererToggle.Toggled += new ToggledHandler (ItemToggled);
 				includeTreeView.AppendColumn ("Choosen", rendererToggle, "active", 0);
 				includeTreeView.AppendColumn ("Name", new CellRendererText (), "text", 1);
-				TreeIter iter = new TreeIter ();
 				
 				foreach (ProjectFile info in project.ProjectFiles) {
 					if (info.BuildAction != BuildAction.Exclude) {
 						string name = fileUtilityService.AbsoluteToRelativePath(project.BaseDirectory, info.Name);
-						iter = store.AppendValues (
-							project.DeployInformation.IsFileExcluded(info.Name) ? true : false, name);
+						store.AppendValues (project.DeployInformation.IsFileExcluded(info.Name) ? true : false, name);
 					}
 				}
 

Modified: trunk/MonoDevelop/Core/src/MonoDevelop.Base/Gui/Dialogs/ProjectOptionsDialog.cs
===================================================================
--- trunk/MonoDevelop/Core/src/MonoDevelop.Base/Gui/Dialogs/ProjectOptionsDialog.cs	2005-01-25 05:06:01 UTC (rev 2159)
+++ trunk/MonoDevelop/Core/src/MonoDevelop.Base/Gui/Dialogs/ProjectOptionsDialog.cs	2005-01-25 17:00:08 UTC (rev 2160)
@@ -149,7 +149,6 @@
 			if (TreeView.Selection.GetSelected (out mdl, out iter)) {
 				IConfiguration config = (IConfiguration) mdl.GetValue(iter, 1);
 				if (project.Configurations.Count > 1) {
-					bool newActiveConfig = project.ActiveConfiguration == config;
 					project.Configurations.Remove(config);
 					project.ActiveConfiguration = (IConfiguration)project.Configurations[0];
 					

Modified: trunk/MonoDevelop/Core/src/MonoDevelop.Base/Gui/Dialogs/ReferenceDialog/WebReference.cs
===================================================================
--- trunk/MonoDevelop/Core/src/MonoDevelop.Base/Gui/Dialogs/ReferenceDialog/WebReference.cs	2005-01-25 05:06:01 UTC (rev 2159)
+++ trunk/MonoDevelop/Core/src/MonoDevelop.Base/Gui/Dialogs/ReferenceDialog/WebReference.cs	2005-01-25 17:00:08 UTC (rev 2160)
@@ -83,13 +83,6 @@
 		public static ProjectReference GenerateWebProxyDLL(Project project, ServiceDescription desc) {
 			ProjectReference refInfo = null;
 			
-			string serviceName = String.Empty;
-			if(desc.Services.Count > 0) {
-				serviceName = desc.Services[0].Name;
-			} else {
-				serviceName = "UnknownService";
-			}									
-								
 			string nmspace = GetNamespaceFromUri(desc.RetrievalUrl);
 			
 			StringBuilder savedir = new StringBuilder();
@@ -97,11 +90,8 @@
 			savedir.Append(Path.DirectorySeparatorChar);
 			savedir.Append("WebReferences");			
 			// second, create the path if it doesn't exist
-			DirectoryInfo di;		
 			if(!Directory.Exists(savedir.ToString()))
-			{
-				di = Directory.CreateDirectory(savedir.ToString());
-			}
+				Directory.CreateDirectory(savedir.ToString());
 			
 			// generate the assembly
 			ServiceDescriptionImporter importer = new ServiceDescriptionImporter();
@@ -110,7 +100,7 @@
 			CodeNamespace codeNamespace = new CodeNamespace(nmspace);
 			CodeCompileUnit codeUnit = new CodeCompileUnit();
 			codeUnit.Namespaces.Add(codeNamespace);
-			ServiceDescriptionImportWarnings warnings = importer.Import(codeNamespace, codeUnit);
+			importer.Import(codeNamespace, codeUnit);
 			
 			CodeDomProvider provider = new Microsoft.CSharp.CSharpCodeProvider();			
 			System.CodeDom.Compiler.ICodeCompiler compiler;
@@ -167,11 +157,8 @@
 			savedir.Append(GetDirectoryFromUri(desc.RetrievalUrl) + Path.DirectorySeparatorChar + serviceName);
 			
 			// second, create the path if it doesn't exist
-			DirectoryInfo di;		
 			if(!Directory.Exists(savedir.ToString()))
-			{
-				di = Directory.CreateDirectory(savedir.ToString());
-			}
+				Directory.CreateDirectory(savedir.ToString());
 			
 			// generate the assembly
 			ServiceDescriptionImporter importer = new ServiceDescriptionImporter();
@@ -180,7 +167,7 @@
 			CodeNamespace codeNamespace = new CodeNamespace(nmspace);
 			CodeCompileUnit codeUnit = new CodeCompileUnit();
 			codeUnit.Namespaces.Add(codeNamespace);
-			ServiceDescriptionImportWarnings warnings = importer.Import(codeNamespace, codeUnit);
+			importer.Import(codeNamespace, codeUnit);
 			
 			CodeDomProvider provider;
 			System.CodeDom.Compiler.ICodeGenerator generator;

Modified: trunk/MonoDevelop/Core/src/MonoDevelop.Base/Gui/Pads/ClassScout/NodeBuilder/DefaultDotNetClassScoutNodeBuilder.cs
===================================================================
--- trunk/MonoDevelop/Core/src/MonoDevelop.Base/Gui/Pads/ClassScout/NodeBuilder/DefaultDotNetClassScoutNodeBuilder.cs	2005-01-25 05:06:01 UTC (rev 2159)
+++ trunk/MonoDevelop/Core/src/MonoDevelop.Base/Gui/Pads/ClassScout/NodeBuilder/DefaultDotNetClassScoutNodeBuilder.cs	2005-01-25 17:00:08 UTC (rev 2160)
@@ -86,8 +86,6 @@
 
 		public TreeNode BuildClassTreeNode(Project p)
 		{
-			Type fus = typeof (FileUtilityService);
-			
 			GetCurrentAmbience();
 
 			TreeNode prjNode = new AbstractClassScoutNode(p.Name);

Modified: trunk/MonoDevelop/Core/src/MonoDevelop.Base/Gui/Pads/HelpBrowser/MonodocTreePad.cs
===================================================================
--- trunk/MonoDevelop/Core/src/MonoDevelop.Base/Gui/Pads/HelpBrowser/MonodocTreePad.cs	2005-01-25 05:06:01 UTC (rev 2159)
+++ trunk/MonoDevelop/Core/src/MonoDevelop.Base/Gui/Pads/HelpBrowser/MonodocTreePad.cs	2005-01-25 17:00:08 UTC (rev 2160)
@@ -47,7 +47,6 @@
 
 			tree_view.ExpandRow (new TreePath ("0"), false);
 			TreeIter child_iter;
-			ArrayList itersToDrop = new ArrayList ();
 		start:
 			store.IterChildren (out child_iter, root_iter);
 			do {

Modified: trunk/MonoDevelop/Core/src/MonoDevelop.Base/Gui/Workbench/Layouts/SdiWorkspaceLayout.cs
===================================================================
--- trunk/MonoDevelop/Core/src/MonoDevelop.Base/Gui/Workbench/Layouts/SdiWorkspaceLayout.cs	2005-01-25 05:06:01 UTC (rev 2159)
+++ trunk/MonoDevelop/Core/src/MonoDevelop.Base/Gui/Workbench/Layouts/SdiWorkspaceLayout.cs	2005-01-25 17:00:08 UTC (rev 2160)
@@ -437,7 +437,7 @@
 		
 		public IWorkbenchWindow ShowView(IViewContent content)
 		{	
-			string title = "";
+			string title;
 			Gtk.Image mimeimage = null;
 			if (content.IsUntitled) {
 				title = content.UntitledName;

Modified: trunk/MonoDevelop/Core/src/MonoDevelop.Base/Internal/Parser/SharpAssemblyLayer/SharpAssemblyAttribute.cs
===================================================================
--- trunk/MonoDevelop/Core/src/MonoDevelop.Base/Internal/Parser/SharpAssemblyLayer/SharpAssemblyAttribute.cs	2005-01-25 05:06:01 UTC (rev 2159)
+++ trunk/MonoDevelop/Core/src/MonoDevelop.Base/Internal/Parser/SharpAssemblyLayer/SharpAssemblyAttribute.cs	2005-01-25 17:00:08 UTC (rev 2160)
@@ -37,7 +37,6 @@
 			
 			if (attribute.IsMemberRef) {
 				MemberRef[] memberTable = assembly.Tables.MemberRef;
-				TypeRef[] typeRefTable  = assembly.Tables.TypeRef;
 				
 				sigOffset = memberTable[attribute.MemberIndex].Signature;
 				uint trIndex = memberTable[attribute.MemberIndex].Class;
@@ -76,7 +75,7 @@
 			try {
 			
 				// Get return types of positional arguments by inspecting the method signature
-				int size = assembly.Reader.LoadBlob(ref sigOffset);
+				assembly.Reader.LoadBlob(ref sigOffset);
 				sigOffset += 1;  // skip calling convention
 				int numReturnTypes = assembly.Reader.LoadBlob(ref sigOffset);
 						
@@ -145,7 +144,7 @@
 				ushort numnamed = binaryReader.ReadUInt16();
 				
 				for (int i = 0; i < numnamed; ++i) {
-					byte field_or_prop = binaryReader.ReadByte();
+					/*byte field_or_prop = */ binaryReader.ReadByte();
 					byte type = binaryReader.ReadByte();
 					
 					string typename = "";

Modified: trunk/MonoDevelop/Core/src/MonoDevelop.Base/Internal/Parser/SharpAssemblyLayer/SharpAssemblyField.cs
===================================================================
--- trunk/MonoDevelop/Core/src/MonoDevelop.Base/Internal/Parser/SharpAssemblyLayer/SharpAssemblyField.cs	2005-01-25 05:06:01 UTC (rev 2159)
+++ trunk/MonoDevelop/Core/src/MonoDevelop.Base/Internal/Parser/SharpAssemblyLayer/SharpAssemblyField.cs	2005-01-25 17:00:08 UTC (rev 2160)
@@ -89,7 +89,7 @@
 			
 			// field return type
 			uint sigOffset = field.Signature;
-			int sigSize = assembly.Reader.LoadBlob(ref sigOffset);
+			assembly.Reader.LoadBlob(ref sigOffset);
 			sigOffset++;  // skip field id
 			returnType = new SharpAssemblyReturnType(assembly, ref sigOffset);
 			

Modified: trunk/MonoDevelop/Core/src/MonoDevelop.Base/Internal/Parser/SharpAssemblyLayer/SharpAssemblyMethod.cs
===================================================================
--- trunk/MonoDevelop/Core/src/MonoDevelop.Base/Internal/Parser/SharpAssemblyLayer/SharpAssemblyMethod.cs	2005-01-25 05:06:01 UTC (rev 2159)
+++ trunk/MonoDevelop/Core/src/MonoDevelop.Base/Internal/Parser/SharpAssemblyLayer/SharpAssemblyMethod.cs	2005-01-25 17:00:08 UTC (rev 2160)
@@ -98,7 +98,7 @@
 			}
 			
 			uint offset = methodDef.Signature;
-			int size = assembly.LoadBlob(ref offset);
+			assembly.LoadBlob(ref offset);
 			offset += 1;  // skip calling convention
 			int numReturnTypes = assembly.LoadBlob(ref offset);
 					

Modified: trunk/MonoDevelop/Core/src/MonoDevelop.Base/Internal/Parser/SharpAssemblyLayer/SharpAssemblyProperty.cs
===================================================================
--- trunk/MonoDevelop/Core/src/MonoDevelop.Base/Internal/Parser/SharpAssemblyLayer/SharpAssemblyProperty.cs	2005-01-25 05:06:01 UTC (rev 2159)
+++ trunk/MonoDevelop/Core/src/MonoDevelop.Base/Internal/Parser/SharpAssemblyLayer/SharpAssemblyProperty.cs	2005-01-25 17:00:08 UTC (rev 2160)
@@ -124,7 +124,7 @@
 			if ((property.Flags & Property.FLAG_SPECIALNAME) == Property.FLAG_SPECIALNAME) modifiers |= ModifierEnum.SpecialName;
 			
 			uint offset = property.Type;
-			int sigSize = assembly.LoadBlob(ref offset);
+			assembly.LoadBlob(ref offset);
 			offset += 1; // skip calling convention
 			int paramCount = assembly.LoadBlob(ref offset);
 			

Modified: trunk/MonoDevelop/Core/src/MonoDevelop.Base/Internal/ProgressMonitoring/BaseProgressMonitor.cs
===================================================================
--- trunk/MonoDevelop/Core/src/MonoDevelop.Base/Internal/ProgressMonitoring/BaseProgressMonitor.cs	2005-01-25 05:06:01 UTC (rev 2159)
+++ trunk/MonoDevelop/Core/src/MonoDevelop.Base/Internal/ProgressMonitoring/BaseProgressMonitor.cs	2005-01-25 17:00:08 UTC (rev 2160)
@@ -56,7 +56,7 @@
 		{
 			progressTracker = new ProgressTracker ();
 			logger = new LogTextWriter ();
-			logger.TextWritten += new LogTextEventHandler (OnWriteLog);
+			logger.TextWritten += new LogTextEventHandler (WriteLogInternal);
 		}
 		
 		[AsyncDispatch]
@@ -241,8 +241,13 @@
 			if (cancelRequestedEvent != null)
 				cancelRequestedEvent (this);
 		}
+		
+		[AsyncDispatch]
+		void WriteLogInternal (string text)
+		{
+			OnWriteLog (text);
+		}
 			
-		[AsyncDispatch]
 		protected virtual void OnWriteLog (string text)
 		{
 		}

Modified: trunk/MonoDevelop/Core/src/MonoDevelop.Base/Internal/ProgressMonitoring/ConsoleProgressMonitor.cs
===================================================================
--- trunk/MonoDevelop/Core/src/MonoDevelop.Base/Internal/ProgressMonitoring/ConsoleProgressMonitor.cs	2005-01-25 05:06:01 UTC (rev 2159)
+++ trunk/MonoDevelop/Core/src/MonoDevelop.Base/Internal/ProgressMonitoring/ConsoleProgressMonitor.cs	2005-01-25 17:00:08 UTC (rev 2160)
@@ -52,7 +52,7 @@
 			Console.WriteLine ("WARNING: " + message);
 		}
 		
-		public void ReportError (string message, Exception ex)
+		public override void ReportError (string message, Exception ex)
 		{
 			Console.WriteLine ("ERROR: " + message);
 			Console.WriteLine (ex);

Modified: trunk/MonoDevelop/Core/src/MonoDevelop.Base/Internal/ProgressMonitoring/NullProgressMonitor.cs
===================================================================
--- trunk/MonoDevelop/Core/src/MonoDevelop.Base/Internal/ProgressMonitoring/NullProgressMonitor.cs	2005-01-25 05:06:01 UTC (rev 2159)
+++ trunk/MonoDevelop/Core/src/MonoDevelop.Base/Internal/ProgressMonitoring/NullProgressMonitor.cs	2005-01-25 17:00:08 UTC (rev 2160)
@@ -76,6 +76,8 @@
 			lock (this) {
 				if (done) return;
 				done = true;
+				if (waitEvent != null)
+					waitEvent.Set ();
 			}
 			if (completedEvent != null)
 				completedEvent (this);

Modified: trunk/MonoDevelop/Core/src/MonoDevelop.Base/Internal/Project/Combine/Combine.cs
===================================================================
--- trunk/MonoDevelop/Core/src/MonoDevelop.Base/Internal/Project/Combine/Combine.cs	2005-01-25 05:06:01 UTC (rev 2159)
+++ trunk/MonoDevelop/Core/src/MonoDevelop.Base/Internal/Project/Combine/Combine.cs	2005-01-25 17:00:08 UTC (rev 2160)
@@ -260,19 +260,36 @@
 				entry.Execute (monitor);
 			} else {
 				ArrayList list = new ArrayList ();
+				monitor.BeginTask ("Executing projects", 1);
 				foreach (CombineExecuteDefinition ced in combineExecuteDefinitions) {
-					if (ced.Type == EntryExecuteType.Execute)
-						list.Add (ced);
+					if (ced.Type != EntryExecuteType.Execute) continue;
+					
+					IProgressMonitor mm = new NullProgressMonitor ();
+					EntryStartData sd = new EntryStartData ();
+					sd.Monitor = mm;
+					sd.Entry = ced.Entry;
+					Runtime.DispatchService.ThreadDispatch (new StatefulMessageHandler (ExecuteEntryAsync), sd);
+					list.Add (mm.AsyncOperation);
 				}
-				monitor.BeginTask ("Executing projects", list.Count);
-				foreach (CombineExecuteDefinition ced in list) {
-					ced.Entry.Execute (monitor);
-					monitor.Step (1);
-				}
+				foreach (IAsyncOperation op in list)
+					op.WaitForCompleted ();
 				monitor.EndTask ();
 			}
 		}
 		
+		void ExecuteEntryAsync (object ob)
+		{
+			EntryStartData sd = (EntryStartData) ob;
+			using (sd.Monitor) {
+				sd.Entry.Execute (sd.Monitor);
+			}
+		}
+		
+		class EntryStartData {
+			public IProgressMonitor Monitor;
+			public CombineEntry Entry;
+		}
+		
 		/// <remarks>
 		/// Returns an ArrayList containing all ProjectEntries in this combine and 
 		/// undercombines

Modified: trunk/MonoDevelop/Core/src/MonoDevelop.Base/Internal/Project/Project/DotNetProject.cs
===================================================================
--- trunk/MonoDevelop/Core/src/MonoDevelop.Base/Internal/Project/Project/DotNetProject.cs	2005-01-25 05:06:01 UTC (rev 2159)
+++ trunk/MonoDevelop/Core/src/MonoDevelop.Base/Internal/Project/Project/DotNetProject.cs	2005-01-25 17:00:08 UTC (rev 2160)
@@ -158,15 +158,15 @@
 							runtimeStarter, 
 							args, 
 							Path.GetDirectoryName (configuration.CompiledOutputName), 
-							configuration.PauseConsoleOutput, null);
+							true, configuration.PauseConsoleOutput, null);
 				else
 					// The use of 'sh' is a workaround. Looks like there is a bug
 					// in mono, Process can't start a "mono" process.
-					p = Runtime.ProcessService.StartProcess (
+					p = Runtime.ProcessService.StartConsoleProcess (
 							"sh", 
 							string.Format ("-c \"{0} {1}\"", runtimeStarter, args),
 							Path.GetDirectoryName (configuration.CompiledOutputName), 
-							monitor.Log, monitor.Log, null);
+							false, false, null);
 						
 				p.WaitForOutput ();
 				monitor.Log.WriteLine ("The application exited with code: {0}", p.ExitCode);

Modified: trunk/MonoDevelop/Core/src/MonoDevelop.Base/Internal/Project/Project/IncludeFilesDialog.cs
===================================================================
--- trunk/MonoDevelop/Core/src/MonoDevelop.Base/Internal/Project/Project/IncludeFilesDialog.cs	2005-01-25 05:06:01 UTC (rev 2159)
+++ trunk/MonoDevelop/Core/src/MonoDevelop.Base/Internal/Project/Project/IncludeFilesDialog.cs	2005-01-25 17:00:08 UTC (rev 2160)
@@ -82,12 +82,11 @@
 			rendererToggle.Toggled += new ToggledHandler (ItemToggled);
 			IncludeFileListView.AppendColumn ("Choosen", rendererToggle, "active", 0);
 			IncludeFileListView.AppendColumn ("Name", new CellRendererText (), "text", 1);
-			TreeIter iter = new TreeIter ();
 			
 			// add the found files to the check list box						
 			foreach (string file in newFiles) {
 				string name = fileUtilityService.AbsoluteToRelativePath(project.BaseDirectory, file);
-				iter = store.AppendValues (false, name);
+				store.AppendValues (false, name);
 			}
 		}
 		

Modified: trunk/MonoDevelop/Core/src/MonoDevelop.Base/Internal/Project/Project/Project.cs
===================================================================
--- trunk/MonoDevelop/Core/src/MonoDevelop.Base/Internal/Project/Project/Project.cs	2005-01-25 05:06:01 UTC (rev 2159)
+++ trunk/MonoDevelop/Core/src/MonoDevelop.Base/Internal/Project/Project/Project.cs	2005-01-25 17:00:08 UTC (rev 2160)
@@ -309,7 +309,6 @@
 				monitor.BeginTask (String.Format (GettextCatalog.GetString ("Building Project: {0} Configuration: {1}"), Name, ActiveConfiguration.Name), 3);
 				
 				Runtime.StringParserService.Properties["Project"] = Name;
-				TaskService taskService = Runtime.TaskService;
 				
 				DoPreBuild (monitor);
 				

Modified: trunk/MonoDevelop/Core/src/MonoDevelop.Base/Internal/Serialization/DataCollection.cs
===================================================================
--- trunk/MonoDevelop/Core/src/MonoDevelop.Base/Internal/Serialization/DataCollection.cs	2005-01-25 05:06:01 UTC (rev 2159)
+++ trunk/MonoDevelop/Core/src/MonoDevelop.Base/Internal/Serialization/DataCollection.cs	2005-01-25 17:00:08 UTC (rev 2160)
@@ -137,7 +137,7 @@
 				throw new ArgumentNullException ("entry");
 				
 			DataCollection col;
-			int i = FindData (itemPath + "/", out col, true);
+			FindData (itemPath + "/", out col, true);
 			col.List.Add (entry);
 		}
 		

Modified: trunk/MonoDevelop/Core/src/MonoDevelop.Base/Internal/Serialization/ItemProperty.cs
===================================================================
--- trunk/MonoDevelop/Core/src/MonoDevelop.Base/Internal/Serialization/ItemProperty.cs	2005-01-25 05:06:01 UTC (rev 2159)
+++ trunk/MonoDevelop/Core/src/MonoDevelop.Base/Internal/Serialization/ItemProperty.cs	2005-01-25 17:00:08 UTC (rev 2160)
@@ -147,7 +147,6 @@
 		internal object GetValue (object obj)
 		{
 			if (member != null) {
-				object val;
 				FieldInfo field = member as FieldInfo;
 				if (field != null) return field.GetValue (obj);
 				else return ((PropertyInfo)member).GetValue (obj, null);

Modified: trunk/MonoDevelop/Core/src/MonoDevelop.Base/Services/DispatchService/DispatchService.cs
===================================================================
--- trunk/MonoDevelop/Core/src/MonoDevelop.Base/Services/DispatchService/DispatchService.cs	2005-01-25 05:06:01 UTC (rev 2159)
+++ trunk/MonoDevelop/Core/src/MonoDevelop.Base/Services/DispatchService/DispatchService.cs	2005-01-25 17:00:08 UTC (rev 2160)
@@ -22,7 +22,6 @@
 		public override void InitializeService ()
 		{
 			guiContext = new GuiSyncContext ();
-			SyncContext.SetContext (guiContext);
 			
 			guiThreadId = AppDomain.GetCurrentThreadId();
 			

Modified: trunk/MonoDevelop/Core/src/MonoDevelop.Base/Services/DispatchService/SyncContextAttribute.cs
===================================================================
--- trunk/MonoDevelop/Core/src/MonoDevelop.Base/Services/DispatchService/SyncContextAttribute.cs	2005-01-25 05:06:01 UTC (rev 2159)
+++ trunk/MonoDevelop/Core/src/MonoDevelop.Base/Services/DispatchService/SyncContextAttribute.cs	2005-01-25 17:00:08 UTC (rev 2160)
@@ -83,7 +83,14 @@
 
 			MsgData md = new MsgData ();
 			md.InMessage = msg;
-			syncContext.Dispatch (new StatefulMessageHandler (DispatchMessage), md);
+			SyncContext oldCtx = SyncContext.GetContext ();
+			try {
+				SyncContext.SetContext (syncContext);
+				syncContext.Dispatch (new StatefulMessageHandler (DispatchMessage), md);
+			} finally {
+				SyncContext.SetContext (oldCtx);
+			}
+			
 			return md.OutMessage;
 		}
 		

Modified: trunk/MonoDevelop/Core/src/MonoDevelop.Base/Services/ParserService/CodeCompletionDatabase.cs
===================================================================
--- trunk/MonoDevelop/Core/src/MonoDevelop.Base/Services/ParserService/CodeCompletionDatabase.cs	2005-01-25 05:06:01 UTC (rev 2159)
+++ trunk/MonoDevelop/Core/src/MonoDevelop.Base/Services/ParserService/CodeCompletionDatabase.cs	2005-01-25 17:00:08 UTC (rev 2160)
@@ -415,7 +415,7 @@
 		{
 			for (int n=0; n<references.Count; n++) {
 				ReferenceEntry re = (ReferenceEntry) references[n];
-				if (((ReferenceEntry) references[n]).Uri == uri)
+				if (re.Uri == uri)
 					return true;
 			}
 			return false;
@@ -690,8 +690,6 @@
 			try {
 				IParseInformation parserInfo = parserService.DoParseFile ((string)fileName, null);
 				if (parserInfo != null) {
-					ICompilationUnit cu = (ICompilationUnit)parserInfo.BestCompilationUnit;
-					
 					ClassUpdateInformation res = UpdateFromParseInfo (parserInfo, fileName);
 					if (res != null) parserService.NotifyParseInfoChange (fileName, res);
 				}

Modified: trunk/MonoDevelop/Core/src/MonoDevelop.Base/Services/ParserService/DefaultParserService.cs
===================================================================
--- trunk/MonoDevelop/Core/src/MonoDevelop.Base/Services/ParserService/DefaultParserService.cs	2005-01-25 05:06:01 UTC (rev 2159)
+++ trunk/MonoDevelop/Core/src/MonoDevelop.Base/Services/ParserService/DefaultParserService.cs	2005-01-25 17:00:08 UTC (rev 2160)
@@ -151,8 +151,6 @@
 		}
 		
 		public string LoadAssemblyFromGac (string name) {
-			MethodInfo gac_get = typeof (System.Environment).GetMethod ("internalGetGacPath", BindingFlags.Static|BindingFlags.NonPublic);
-			
 			if (name == "mscorlib")
 				return typeof(object).Assembly.Location;
 				

Modified: trunk/MonoDevelop/Core/src/MonoDevelop.Base/Services/ProcessService/ProcessService.cs
===================================================================
--- trunk/MonoDevelop/Core/src/MonoDevelop.Base/Services/ProcessService/ProcessService.cs	2005-01-25 05:06:01 UTC (rev 2159)
+++ trunk/MonoDevelop/Core/src/MonoDevelop.Base/Services/ProcessService/ProcessService.cs	2005-01-25 17:00:08 UTC (rev 2160)
@@ -66,29 +66,56 @@
 			return p;
 		}
 		
-		public ProcessWrapper StartConsoleProcess (string command, string arguments, string workingDirectory, bool pauseBeforeExit, EventHandler exited) 
+		public ProcessWrapper StartConsoleProcess (string command, string arguments, string workingDirectory, bool externalConsole, bool pauseBeforeExit, EventHandler exited) 
 		{
-			string additionalCommands = "";
-			if (pauseBeforeExit)
-				additionalCommands = @"echo; read -p 'Press any key to continue...' -n1;";
-			ProcessStartInfo psi = new ProcessStartInfo("xterm",
-				String.Format (@"-e ""cd {3} ; '{0}' {1} ; {2}""", command, arguments, additionalCommands, workingDirectory));
-			psi.UseShellExecute = false;
-			psi.WorkingDirectory = workingDirectory;
-			psi.UseShellExecute  =  false;
-			
-			ProcessWrapper p = new ProcessWrapper();
-			
-			if (exited != null)
-				p.Exited += exited;
+			if (externalConsole) {
+				string additionalCommands = "";
+				if (pauseBeforeExit)
+					additionalCommands = @"echo; read -p 'Press any key to continue...' -n1;";
+				ProcessStartInfo psi = new ProcessStartInfo("xterm",
+					String.Format (@"-e ""cd {3} ; '{0}' {1} ; {2}""", command, arguments, additionalCommands, workingDirectory));
+				psi.UseShellExecute = false;
+				psi.WorkingDirectory = workingDirectory;
+				psi.UseShellExecute  =  false;
 				
-			p.StartInfo = psi;
-			p.Start();
-			return p;
+				ProcessWrapper p = new ProcessWrapper();
+				
+				if (exited != null)
+					p.Exited += exited;
+					
+				p.StartInfo = psi;
+				p.Start();
+				return p;
+			} else {
+				// This should create an vte pad instead, but an output panel will be enough until we can do it
+				IProgressMonitor monitor = Runtime.TaskService.GetOutputProgressMonitor ("Application Output", MonoDevelop.Gui.Stock.RunProgramIcon, true, true);
+				ProcessMonitor pm = new ProcessMonitor ();
+				pm.Exited = exited;
+				pm.Monitor = monitor;
+				return StartProcess (command, arguments, workingDirectory, monitor.Log, monitor.Log, new EventHandler (pm.OnExited));
+			}
 		}
 		
 	}
 	
+	class ProcessMonitor
+	{
+		public IProgressMonitor Monitor;
+		public EventHandler Exited;
+		
+		public void OnExited (object sender, EventArgs args)
+		{
+			ProcessWrapper p = (ProcessWrapper) sender;
+			try {
+				if (Exited != null)
+					Exited (sender, args);
+				p.WaitForOutput ();
+			} finally {
+				Monitor.Dispose ();
+			}
+		}
+	}
+	
 	class OutWriter
 	{
 		TextWriter writer;

Modified: trunk/MonoDevelop/Core/src/MonoDevelop.Base/Services/ProcessService/ProcessWrapper.cs
===================================================================
--- trunk/MonoDevelop/Core/src/MonoDevelop.Base/Services/ProcessService/ProcessWrapper.cs	2005-01-25 05:06:01 UTC (rev 2159)
+++ trunk/MonoDevelop/Core/src/MonoDevelop.Base/Services/ProcessService/ProcessWrapper.cs	2005-01-25 17:00:08 UTC (rev 2160)
@@ -11,8 +11,8 @@
 	{
 		private Thread captureOutputThread;
 		private Thread captureErrorThread;
-		AutoResetEvent endEventOut = new AutoResetEvent (false);
-		AutoResetEvent endEventErr = new AutoResetEvent (false);
+		ManualResetEvent endEventOut = new ManualResetEvent (false);
+		ManualResetEvent endEventErr = new ManualResetEvent (false);
 		
 		public new void Start ()
 		{

Modified: trunk/MonoDevelop/Core/src/MonoDevelop.Base/Services/Project/DefaultProjectService.cs
===================================================================
--- trunk/MonoDevelop/Core/src/MonoDevelop.Base/Services/Project/DefaultProjectService.cs	2005-01-25 05:06:01 UTC (rev 2159)
+++ trunk/MonoDevelop/Core/src/MonoDevelop.Base/Services/Project/DefaultProjectService.cs	2005-01-25 17:00:08 UTC (rev 2160)
@@ -286,7 +286,7 @@
 		{
 			if (openCombine == null) return NullAsyncOperation.Success;
 			if (currentRunOperation != null && !currentRunOperation.IsCompleted) return currentRunOperation;
-			IProgressMonitor monitor = Runtime.TaskService.GetRunProgressMonitor ();
+			IProgressMonitor monitor = new NullProgressMonitor ();
 			Runtime.DispatchService.ThreadDispatch (new StatefulMessageHandler (ExecuteActiveCombineAsync), monitor);
 			currentRunOperation = monitor.AsyncOperation;
 			return currentRunOperation;
@@ -308,7 +308,7 @@
 
 		public IAsyncOperation ExecuteProject (Project project)
 		{
-			IProgressMonitor monitor = Runtime.TaskService.GetRunProgressMonitor ();
+			IProgressMonitor monitor = new NullProgressMonitor ();
 			Runtime.DispatchService.ThreadDispatch (new StatefulMessageHandler (ExecuteProjectAsync), new object[] {project, monitor});
 			return monitor.AsyncOperation;
 		}
@@ -417,7 +417,7 @@
 			if (!project.NeedsBuilding) return NullAsyncOperation.Success;
 
 			BeforeCompile (project);
-			IProgressMonitor monitor = Runtime.TaskService.GetRunProgressMonitor ();
+			IProgressMonitor monitor = new NullProgressMonitor ();
 			Runtime.DispatchService.ThreadDispatch (new StatefulMessageHandler (BuildProjectAsync), new object[] {project, monitor});
 			return monitor.AsyncOperation;
 		}

Modified: trunk/MonoDevelop/Core/src/MonoDevelop.Base/Services/Tasks/OutputProgressMonitor.cs
===================================================================
--- trunk/MonoDevelop/Core/src/MonoDevelop.Base/Services/Tasks/OutputProgressMonitor.cs	2005-01-25 05:06:01 UTC (rev 2159)
+++ trunk/MonoDevelop/Core/src/MonoDevelop.Base/Services/Tasks/OutputProgressMonitor.cs	2005-01-25 17:00:08 UTC (rev 2160)
@@ -48,7 +48,6 @@
 			base.EndTask ();
 		}
 		
-		[AsyncDispatch]
 		protected override void OnWriteLog (string text)
 		{
 			if (outputPad == null) throw GetDisposedException ();




More information about the Monodevelop-patches-list mailing list