Author: davidmak
Date: 2006-11-22 15:12:49 -0500 (Wed, 22 Nov 2006)
New Revision: 68368
Modified:
trunk/monodevelop/Core/src/MonoDevelop.Ide/ChangeLog
trunk/monodevelop/Core/src/MonoDevelop.Ide/MonoDevelop.Ide.Gui.Dialogs/FileSelectorDialog.cs
Log:
2006-11-22 David Makovsk?\195?\189 (Yakeen) <[EMAIL PROTECTED]>
* MonoDevelop.Ide.Gui.Dialogs/FileSelectorDialog.cs: remember last used
filter
Modified: trunk/monodevelop/Core/src/MonoDevelop.Ide/ChangeLog
===================================================================
--- trunk/monodevelop/Core/src/MonoDevelop.Ide/ChangeLog 2006-11-22
20:09:00 UTC (rev 68367)
+++ trunk/monodevelop/Core/src/MonoDevelop.Ide/ChangeLog 2006-11-22
20:12:49 UTC (rev 68368)
@@ -1,3 +1,7 @@
+2006-11-22 David Makovský (Yakeen) <[EMAIL PROTECTED]>
+
+ * MonoDevelop.Ide.Gui.Dialogs/FileSelectorDialog.cs: remember last used
filter
+
2006-11-21 David Makovský (Yakeen) <[EMAIL PROTECTED]>
* MonoDevelop.Ide.Tasks/CommentTasksView.cs: fixed casting
Modified:
trunk/monodevelop/Core/src/MonoDevelop.Ide/MonoDevelop.Ide.Gui.Dialogs/FileSelectorDialog.cs
===================================================================
---
trunk/monodevelop/Core/src/MonoDevelop.Ide/MonoDevelop.Ide.Gui.Dialogs/FileSelectorDialog.cs
2006-11-22 20:09:00 UTC (rev 68367)
+++
trunk/monodevelop/Core/src/MonoDevelop.Ide/MonoDevelop.Ide.Gui.Dialogs/FileSelectorDialog.cs
2006-11-22 20:12:49 UTC (rev 68368)
@@ -33,6 +33,7 @@
using MonoDevelop.Ide.Gui.Content;
using MonoDevelop.Core;
using MonoDevelop.Core.AddIns;
+using MonoDevelop.Core.Properties;
using MonoDevelop.Projects.Text;
using Gtk;
@@ -41,6 +42,7 @@
public class FileSelectorDialog: FileSelector
{
Gtk.OptionMenu encodingMenu;
+ Hashtable filterPairs;
int selectOption;
int firstEncIndex;
@@ -61,11 +63,13 @@
//nothing there..
}
+ filterPairs = new Hashtable ();
foreach (string filterStr in filters)
{
string[] parts = filterStr.Split ('|');
Gtk.FileFilter filter = new Gtk.FileFilter ();
filter.Name = parts[0];
+ filterPairs[parts[0]] = parts[1];
foreach (string ext in parts[1].Split (';'))
{
filter.AddPattern (ext);
@@ -77,10 +81,22 @@
Gtk.FileFilter allFilter = new Gtk.FileFilter ();
allFilter.Name = GettextCatalog.GetString ("All Files");
allFilter.AddPattern ("*");
+ filterPairs[GettextCatalog.GetString ("All Files")] =
("*");
AddFilter (allFilter);
+ // Load last used filter
+ string lastPattern =
(string)Runtime.Properties.GetProperty ("Monodevelop.FileSelector.LastPattern",
"*");
+ foreach (FileFilter filter in this.Filters)
+ {
+ string pattern = filterPairs[filter.Name] as
string;
+ if (! String.IsNullOrEmpty (pattern) && pattern
== lastPattern)
+ {
+ this.Filter = filter;
+ break;
+ }
+ }
+
// Add the text encoding selector
-
HBox box = new HBox ();
Label lab = new Label (GettextCatalog.GetString
("_Character Coding:"));
lab.Xalign = 0;
@@ -201,5 +217,15 @@
} else
ExtraWidget.Sensitive = false;
}
+
+ public override void Dispose ()
+ {
+ // Save active filter
+ string pattern = filterPairs[this.Filter.Name] as
string;
+ if (pattern != null)
+ Runtime.Properties.SetProperty
("Monodevelop.FileSelector.LastPattern", pattern);
+
+ base.Dispose ();
+ }
}
}
_______________________________________________
Mono-patches maillist - [email protected]
http://lists.ximian.com/mailman/listinfo/mono-patches