Skip to content

Commit

Permalink
Add help link to hover content for Import elements.
Browse files Browse the repository at this point in the history
  • Loading branch information
tintoy committed Apr 14, 2018
1 parent d37dc65 commit 1493f93
Showing 1 changed file with 30 additions and 5 deletions.
35 changes: 30 additions & 5 deletions src/LanguageServer.Engine/ContentProviders/HoverContentProvider.cs
Original file line number Diff line number Diff line change
Expand Up @@ -434,16 +434,30 @@ public MarkedStringContainer Import(MSBuildImport import)
{
if (import == null)
throw new ArgumentNullException(nameof(import));

List<MarkedString> content = new List<MarkedString>
{
$"Import: `{import.Name}`"
};

StringBuilder imports = new StringBuilder("Imports:");
imports.AppendLine();
foreach (string projectFile in import.ImportedProjectFiles)
imports.AppendLine($"* [{Path.GetFileName(projectFile)}]({VSCodeDocumentUri.FromFileSystemPath(projectFile)})");

return new MarkedStringContainer(
$"Import: `{import.Name}`",
content.Add(
imports.ToString()
);

string helpLink = MSBuildSchemaHelp.HelpLinkForElement(import.Element.Name);
if (!String.IsNullOrWhiteSpace(helpLink))
{
content.Add(
$"[Help]({helpLink})"
);
}

return new MarkedStringContainer(content);
}

/// <summary>
Expand Down Expand Up @@ -483,10 +497,21 @@ public MarkedStringContainer UnresolvedImport(MSBuildUnresolvedImport unresolved
$"Evaluated Condition: `{evaluatedCondition}`"
);

return new MarkedStringContainer(
$"Unresolved Import (condition is false)",
List<MarkedString> content = new List<MarkedString>
{
"Unresolved Import (condition is false)",
descriptionContent.ToString()
);
};

string helpLink = MSBuildSchemaHelp.HelpLinkForElement(unresolvedImport.Element.Name);
if (!String.IsNullOrWhiteSpace(helpLink))
{
content.Add(
$"[Help]({helpLink})"
);
}

return new MarkedStringContainer(content);
}

/// <summary>
Expand Down

0 comments on commit 1493f93

Please sign in to comment.