public static void Navigate(MSBuildNavigationResult result, MSBuildRootDocument doc) { try { switch (result.Kind) { case MSBuildReferenceKind.None: NavigatePaths(result.Paths); break; case MSBuildReferenceKind.Target: FindReferences(() => new MSBuildTargetDefinitionCollector(result.Name), doc); break; } } catch (Exception ex) { LoggingService.LogError("MSBuild navigation failed", ex); } }
public static void Navigate(MSBuildNavigationResult result, MSBuildRootDocument doc) { try { switch (result.Kind) { case MSBuildReferenceKind.None: NavigatePaths(result.Paths); break; case MSBuildReferenceKind.Target: FindReferences(() => new MSBuildTargetDefinitionCollector(result.Name), doc); break; case MSBuildReferenceKind.Task: IdeApp.Workbench.OpenDocument(result.DestFile, null, result.DestLocation.Line, result.DestLocation.Column); break; } } catch (Exception ex) { LoggingService.LogError("MSBuild navigation failed", ex); } }
public bool Navigate(MSBuildNavigationResult result, ITextBuffer buffer) { if (result.Kind == MSBuildReferenceKind.Target) { FindTargetDefinitions(result.Name, buffer); return(true); } if (result.Paths != null) { if (result.Paths.Length == 1) { EditorHost.OpenFile(result.Paths[0], 0); return(true); } if (result.Paths.Length > 1) { ShowMultipleFiles(result.Paths); return(true); } } if (result.DestFile != null) { EditorHost.OpenFile(result.DestFile, result.DestOffset); return(true); } if (result.Kind == MSBuildReferenceKind.NuGetID) { OpenNuGetUrl(result.Name, EditorHost); return(true); } return(false); }
public MSBuildNavigableSymbol(MSBuildNavigationService service, MSBuildNavigationResult result, ITextSnapshot snapshot) { this.service = service; this.result = result; SymbolSpan = new SnapshotSpan(snapshot, result.Offset, result.Length); }