Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/monodevelop.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Krüger <mkrueger@xamarin.com>2015-11-20 15:50:05 +0300
committerMike Krüger <mkrueger@xamarin.com>2015-11-20 15:50:14 +0300
commit2ed5ec0fd0484e31a9a178cc95d4e50939d40fa6 (patch)
treea03800f71cbbb97cf863ad41e174d6344e717367 /main/src/addins/MonoDevelop.AssemblyBrowser
parentb844ae6f2dd2b19ec9208d09a54354a205d43cdc (diff)
Fixed 'Bug 36088 - search results list view from query in search box
is lame in couple of ways'.
Diffstat (limited to 'main/src/addins/MonoDevelop.AssemblyBrowser')
-rw-r--r--main/src/addins/MonoDevelop.AssemblyBrowser/MonoDevelop.AssemblyBrowser/AssemblyBrowserWidget.cs39
1 files changed, 28 insertions, 11 deletions
diff --git a/main/src/addins/MonoDevelop.AssemblyBrowser/MonoDevelop.AssemblyBrowser/AssemblyBrowserWidget.cs b/main/src/addins/MonoDevelop.AssemblyBrowser/MonoDevelop.AssemblyBrowser/AssemblyBrowserWidget.cs
index 2bc79476b9..16a664662e 100644
--- a/main/src/addins/MonoDevelop.AssemblyBrowser/MonoDevelop.AssemblyBrowser/AssemblyBrowserWidget.cs
+++ b/main/src/addins/MonoDevelop.AssemblyBrowser/MonoDevelop.AssemblyBrowser/AssemblyBrowserWidget.cs
@@ -393,8 +393,8 @@ namespace MonoDevelop.AssemblyBrowser
{
TreeIter selectedIter;
if (searchTreeview.Selection.GetSelected (out selectedIter)) {
- var member = (IUnresolvedEntity)(searchMode != SearchMode.Type ? memberListStore.GetValue (selectedIter, 4) : typeListStore.GetValue (selectedIter, 4));
-
+ var member = (IUnresolvedEntity)(searchMode == SearchMode.Member ? memberListStore.GetValue (selectedIter, 4) : typeListStore.GetValue (selectedIter, 4));
+
var nav = SearchMember (member);
if (nav != null) {
notebook1.Page = 0;
@@ -713,11 +713,14 @@ namespace MonoDevelop.AssemblyBrowser
col.PackStart (crt, true);
col.AddAttribute (crp, "image", 0);
col.AddAttribute (crt, "text", 1);
+ col.SortColumnId = 1;
searchTreeview.AppendColumn (col);
col.Resizable = true;
col = searchTreeview.AppendColumn (GettextCatalog.GetString ("Declaring Type"), new Gtk.CellRendererText (), "text", 2);
+ col.SortColumnId = 2;
col.Resizable = true;
col = searchTreeview.AppendColumn (GettextCatalog.GetString ("Assembly"), new Gtk.CellRendererText (), "text", 3);
+ col.SortColumnId = 3;
col.Resizable = true;
searchTreeview.Model = memberListStore;
break;
@@ -730,11 +733,17 @@ namespace MonoDevelop.AssemblyBrowser
col.PackStart (crt, true);
col.AddAttribute (crp, "image", 0);
col.AddAttribute (crt, "text", 1);
+ col.SortColumnId = 1;
+
searchTreeview.AppendColumn (col);
col.Resizable = true;
col = searchTreeview.AppendColumn (GettextCatalog.GetString ("Parent"), new Gtk.CellRendererText (), "text", 2);
+ col.SortColumnId = 2;
+
col.Resizable = true;
col = searchTreeview.AppendColumn (GettextCatalog.GetString ("Assembly"), new Gtk.CellRendererText (), "text", 3);
+ col.SortColumnId = 3;
+
col.Resizable = true;
searchTreeview.Model = typeListStore;
break;
@@ -747,11 +756,16 @@ namespace MonoDevelop.AssemblyBrowser
col.PackStart (crt, true);
col.AddAttribute (crp, "image", 0);
col.AddAttribute (crt, "text", 1);
+ col.SortColumnId = 1;
searchTreeview.AppendColumn (col);
col.Resizable = true;
+
col = searchTreeview.AppendColumn (GettextCatalog.GetString ("Namespace"), new Gtk.CellRendererText (), "text", 2);
+ col.SortColumnId = 2;
col.Resizable = true;
+
col = searchTreeview.AppendColumn (GettextCatalog.GetString ("Assembly"), new Gtk.CellRendererText (), "text", 3);
+ col.SortColumnId = 3;
col.Resizable = true;
searchTreeview.Model = typeListStore;
break;
@@ -926,7 +940,7 @@ namespace MonoDevelop.AssemblyBrowser
return;
if (!type.IsPublic && publicOnly)
continue;
- if (type.FullName.ToUpper ().IndexOf (pattern) >= 0)
+ if (type.FullName.ToUpper ().IndexOf (pattern, StringComparison.Ordinal) >= 0)
typeList.Add (type);
}
typeDict [unit] = typeList;
@@ -947,23 +961,25 @@ namespace MonoDevelop.AssemblyBrowser
break;
case SearchMode.TypeAndMembers:
- var typeDict2 = new Dictionary<AssemblyLoader, List<IUnresolvedEntity>> ();
+ var typeDict2 = new Dictionary<AssemblyLoader, List<Tuple<IUnresolvedEntity, string>>> ();
foreach (var unit in this.definitions) {
- var typeList = new List<IUnresolvedEntity> ();
+ var typeList = new List<Tuple<IUnresolvedEntity, string>> ();
foreach (var type in unit.UnresolvedAssembly.TopLevelTypeDefinitions) {
if (worker.CancellationPending)
return;
if (!type.IsPublic && publicOnly)
continue;
- if (type.FullName.ToUpper ().IndexOf (pattern) >= 0)
- typeList.Add (type);
+ var parent = type.FullName;
+ if (parent.ToUpper ().IndexOf (pattern, StringComparison.Ordinal) >= 0)
+ typeList.Add (Tuple.Create ((IUnresolvedEntity)type, type.Namespace));
+
foreach (var member in type.Members) {
if (worker.CancellationPending)
return;
if (!member.IsPublic && publicOnly)
continue;
if (member.Name.ToUpper ().Contains (pattern)) {
- typeList.Add (member);
+ typeList.Add (Tuple.Create ((IUnresolvedEntity)member, parent));
}
}
@@ -973,13 +989,14 @@ namespace MonoDevelop.AssemblyBrowser
Gtk.Application.Invoke (delegate {
foreach (var kv in typeDict2) {
- foreach (var type in kv.Value) {
+ foreach (var tuple in kv.Value) {
if (worker.CancellationPending)
return;
+ var type = tuple.Item1;
typeListStore.AppendValues (ImageService.GetIcon (type.GetStockIcon (), Gtk.IconSize.Menu),
type.Name,
- type.Namespace,
- kv.Key.Assembly.FullName,
+ tuple.Item2,
+ kv.Key.Assembly.FullName,
type);
}
}