|
|
|
@ -242,14 +242,29 @@ namespace ICSharpCode.ILSpy
@@ -242,14 +242,29 @@ namespace ICSharpCode.ILSpy
|
|
|
|
|
{ |
|
|
|
|
if (args.NavigateTo != null) { |
|
|
|
|
bool found = false; |
|
|
|
|
foreach (LoadedAssembly asm in commandLineLoadedAssemblies) { |
|
|
|
|
AssemblyDefinition def = asm.AssemblyDefinition; |
|
|
|
|
if (def != null) { |
|
|
|
|
MemberReference mr = XmlDocKeyProvider.FindMemberByKey(def.MainModule, args.NavigateTo); |
|
|
|
|
if (mr != null) { |
|
|
|
|
found = true; |
|
|
|
|
JumpToReference(mr); |
|
|
|
|
break; |
|
|
|
|
if (args.NavigateTo.StartsWith("N:", StringComparison.Ordinal)) { |
|
|
|
|
string namespaceName = args.NavigateTo.Substring(2); |
|
|
|
|
foreach (LoadedAssembly asm in commandLineLoadedAssemblies) { |
|
|
|
|
AssemblyTreeNode asmNode = assemblyListTreeNode.FindAssemblyNode(asm); |
|
|
|
|
if (asmNode != null) { |
|
|
|
|
NamespaceTreeNode nsNode = asmNode.FindNamespaceNode(namespaceName); |
|
|
|
|
if (nsNode != null) { |
|
|
|
|
found = true; |
|
|
|
|
SelectNode(nsNode); |
|
|
|
|
break; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} else { |
|
|
|
|
foreach (LoadedAssembly asm in commandLineLoadedAssemblies) { |
|
|
|
|
AssemblyDefinition def = asm.AssemblyDefinition; |
|
|
|
|
if (def != null) { |
|
|
|
|
MemberReference mr = XmlDocKeyProvider.FindMemberByKey(def.MainModule, args.NavigateTo); |
|
|
|
|
if (mr != null) { |
|
|
|
|
found = true; |
|
|
|
|
JumpToReference(mr); |
|
|
|
|
break; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|