From f63bdc2ea35ccd7f1bc3a94d6554449b59f9ca1b Mon Sep 17 00:00:00 2001 From: Daniel Grunwald Date: Thu, 17 Sep 2009 13:04:06 +0000 Subject: [PATCH] Fixed SD2-1532: Context help (F1) does not work for constructor calls git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/branches/3.0@4944 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61 --- src/Main/Base/Project/Src/Services/HelpProvider.cs | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/src/Main/Base/Project/Src/Services/HelpProvider.cs b/src/Main/Base/Project/Src/Services/HelpProvider.cs index eb923d6d1b..95c4bf0007 100644 --- a/src/Main/Base/Project/Src/Services/HelpProvider.cs +++ b/src/Main/Base/Project/Src/Services/HelpProvider.cs @@ -21,6 +21,8 @@ namespace ICSharpCode.SharpDevelop public static void ShowHelp(IClass c) { + if (c == null) + throw new ArgumentNullException("c"); foreach (HelpProvider p in GetProviders()) { if (p.TryShowHelp(c)) return; @@ -35,6 +37,8 @@ namespace ICSharpCode.SharpDevelop public static void ShowHelp(IMember m) { + if (m == null) + throw new ArgumentNullException("m"); foreach (HelpProvider p in GetProviders()) { if (p.TryShowHelp(m)) return; @@ -44,11 +48,17 @@ namespace ICSharpCode.SharpDevelop public virtual bool TryShowHelp(IMember m) { - return TryShowHelp(m.FullyQualifiedName); + IMethod method = m as IMethod; + if (method != null && method.IsConstructor) + return TryShowHelp(m.DeclaringType.FullyQualifiedName + "." + m.DeclaringType.Name); + else + return TryShowHelp(m.FullyQualifiedName); } public static void ShowHelp(string fullTypeName) { + if (fullTypeName == null) + throw new ArgumentNullException("fullTypeName"); foreach (HelpProvider p in GetProviders()) { if (p.TryShowHelp(fullTypeName)) return; @@ -64,6 +74,8 @@ namespace ICSharpCode.SharpDevelop public static void ShowHelpByKeyword(string keyword) { + if (keyword == null) + throw new ArgumentNullException("keyword"); foreach (HelpProvider p in GetProviders()) { if (p.TryShowHelpByKeyword(keyword)) return;