Author: mhutch
Date: 2008-02-12 13:31:59 -0500 (Tue, 12 Feb 2008)
New Revision: 95543

Modified:
   branches/monodevelop/main/1.0/src/core/MonoDevelop.Core.Gui/ChangeLog
   
branches/monodevelop/main/1.0/src/core/MonoDevelop.Core.Gui/MonoDevelop.Core.Gui.Dialogs/TreeViewOptions.cs
   branches/monodevelop/main/1.0/src/core/MonoDevelop.Ide/ChangeLog
   
branches/monodevelop/main/1.0/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Gui/ProjectOperations.cs
Log:
In src/core/MonoDevelop.Core.Gui:
2008-02-12  Michael Hutchinson <[EMAIL PROTECTED]> 

        * MonoDevelop.Core.Gui.Dialogs/TreeViewOptions.cs: Make TreeViewOptions
          implement IDisposable.

In src/core/MonoDevelop.Ide:
2008-02-12  Michael Hutchinson <[EMAIL PROTECTED]> 

        * MonoDevelop.Ide.Gui/ProjectOperations.cs: Dispose options dialog when 
done
          with it. Fixes "Bug 358361 - Have to hit esc twice to close the 
file/new
          file dialog".



Modified: branches/monodevelop/main/1.0/src/core/MonoDevelop.Core.Gui/ChangeLog
===================================================================
--- branches/monodevelop/main/1.0/src/core/MonoDevelop.Core.Gui/ChangeLog       
2008-02-12 18:29:04 UTC (rev 95542)
+++ branches/monodevelop/main/1.0/src/core/MonoDevelop.Core.Gui/ChangeLog       
2008-02-12 18:31:59 UTC (rev 95543)
@@ -1,3 +1,8 @@
+2008-02-12  Michael Hutchinson <[EMAIL PROTECTED]> 
+
+       * MonoDevelop.Core.Gui.Dialogs/TreeViewOptions.cs: Make TreeViewOptions
+         implement IDisposable.
+
 2008-02-01  Michael Hutchinson  <[EMAIL PROTECTED]> 
 
        * Makefile.am:

Modified: 
branches/monodevelop/main/1.0/src/core/MonoDevelop.Core.Gui/MonoDevelop.Core.Gui.Dialogs/TreeViewOptions.cs
===================================================================
--- 
branches/monodevelop/main/1.0/src/core/MonoDevelop.Core.Gui/MonoDevelop.Core.Gui.Dialogs/TreeViewOptions.cs
 2008-02-12 18:29:04 UTC (rev 95542)
+++ 
branches/monodevelop/main/1.0/src/core/MonoDevelop.Core.Gui/MonoDevelop.Core.Gui.Dialogs/TreeViewOptions.cs
 2008-02-12 18:31:59 UTC (rev 95543)
@@ -34,7 +34,8 @@
        /// TreeView options are used, when more options will be edited (for 
something like
        /// IDE Options + Plugin Options)
        /// </summary>
-       public class TreeViewOptions {
+       public class TreeViewOptions : IDisposable
+       {
                List<IDialogPanel> optionPanels = new List<IDialogPanel> ();
                protected Properties properties = null;
                CommandManager cmdManager;
@@ -248,5 +249,14 @@
                        // do nothing. this is need to wire up button release 
event for ProjectOptionsDialog
                }
 
+               public void Dispose ()
+               {
+                       if (TreeViewOptionDialog != null) {
+                               TreeViewOptionDialog.Destroy ();
+                               TreeViewOptionDialog.Dispose ();
+                               TreeViewOptionDialog = null;
+                       }
+               }
+
        }
 }

Modified: branches/monodevelop/main/1.0/src/core/MonoDevelop.Ide/ChangeLog
===================================================================
--- branches/monodevelop/main/1.0/src/core/MonoDevelop.Ide/ChangeLog    
2008-02-12 18:29:04 UTC (rev 95542)
+++ branches/monodevelop/main/1.0/src/core/MonoDevelop.Ide/ChangeLog    
2008-02-12 18:31:59 UTC (rev 95543)
@@ -1,3 +1,9 @@
+2008-02-12  Michael Hutchinson <[EMAIL PROTECTED]> 
+
+       * MonoDevelop.Ide.Gui/ProjectOperations.cs: Dispose options dialog when 
done
+         with it. Fixes "Bug 358361 - Have to hit esc twice to close the 
file/new
+         file dialog".
+
 2008-02-05  Michael Hutchinson <[EMAIL PROTECTED]> 
 
        * MonoDevelop.Ide.Gui/ProjectOperations.cs: End build and run operations

Modified: 
branches/monodevelop/main/1.0/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Gui/ProjectOperations.cs
===================================================================
--- 
branches/monodevelop/main/1.0/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Gui/ProjectOperations.cs
     2008-02-12 18:29:04 UTC (rev 95542)
+++ 
branches/monodevelop/main/1.0/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Gui/ProjectOperations.cs
     2008-02-12 18:31:59 UTC (rev 95543)
@@ -664,13 +664,14 @@
                                ExtensionNode generalOptionsNode = 
AddinManager.GetExtensionNode 
("/MonoDevelop/ProjectModel/Gui/ProjectOptions/GeneralOptions");
                                ExtensionNode configurationPropertiesNode = 
AddinManager.GetExtensionNode 
("/MonoDevelop/ProjectModel/Gui/ProjectOptions/ConfigurationOptions");
                                
-                               ProjectOptionsDialog optionsDialog = new 
ProjectOptionsDialog (IdeApp.Workbench.RootWindow, selectedProject, 
generalOptionsNode, configurationPropertiesNode);
-                               if (panelId != null)
-                                       optionsDialog.SelectPanel (panelId);
+                               using (ProjectOptionsDialog optionsDialog = new 
ProjectOptionsDialog (IdeApp.Workbench.RootWindow, selectedProject, 
generalOptionsNode, configurationPropertiesNode)) {
+                                       if (panelId != null)
+                                               optionsDialog.SelectPanel 
(panelId);
                                        
-                               if (optionsDialog.Run() == 
(int)Gtk.ResponseType.Ok) {
-                                       selectedProject.NeedsBuilding = true;
-                                       SaveProject (selectedProject);
+                                       if (optionsDialog.Run() == 
(int)Gtk.ResponseType.Ok) {
+                                               selectedProject.NeedsBuilding = 
true;
+                                               SaveProject (selectedProject);
+                                       }
                                }
                        } else if (entry is Combine) {
                                Combine combine = (Combine) entry;
@@ -678,11 +679,12 @@
                                ExtensionNode generalOptionsNode = 
AddinManager.GetExtensionNode 
("/MonoDevelop/ProjectModel/Gui/CombineOptions/GeneralOptions");
                                ExtensionNode configurationPropertiesNode = 
AddinManager.GetExtensionNode 
("/MonoDevelop/ProjectModel/Gui/CombineOptions/ConfigurationOptions");
                                
-                               CombineOptionsDialog optionsDialog = new 
CombineOptionsDialog (IdeApp.Workbench.RootWindow, combine, generalOptionsNode, 
configurationPropertiesNode);
-                               if (panelId != null)
-                                       optionsDialog.SelectPanel (panelId);
-                               if (optionsDialog.Run () == (int) 
Gtk.ResponseType.Ok)
-                                       SaveCombine ();
+                               using (CombineOptionsDialog optionsDialog = new 
CombineOptionsDialog (IdeApp.Workbench.RootWindow, combine, generalOptionsNode, 
configurationPropertiesNode)) {
+                                       if (panelId != null)
+                                               optionsDialog.SelectPanel 
(panelId);
+                                       if (optionsDialog.Run () == (int) 
Gtk.ResponseType.Ok)
+                                               SaveCombine ();
+                               }
                        }
                }
                

_______________________________________________
Mono-patches maillist  -  [email protected]
http://lists.ximian.com/mailman/listinfo/mono-patches

Reply via email to