public static Task <OutputWindowPane> GetVSOutputWindowPaneAsync(VSOutputWindowPane pane) { switch (pane) { case VSOutputWindowPane.General: return(GetAsync(VSConstants.OutputWindowPaneGuid.GeneralPane_guid)); case VSOutputWindowPane.Build: return(GetAsync(VSConstants.OutputWindowPaneGuid.BuildOutputPane_guid)); case VSOutputWindowPane.Debug: return(GetAsync(VSConstants.OutputWindowPaneGuid.DebugPane_guid)); default: throw new InvalidOperationException("Unsupported Visual Studio output pane"); } ; }
/// <summary> /// Gets an existing Visual Studio Output window pane (General, Build, Debug). /// If the General pane does not already exist then it will be created, but that is not the case /// for Build or Debug, in which case the method returns null if the pane doesn't already exist. /// </summary> /// <param name="pane">The Visual Studio pane to get.</param> /// <returns>A new OutputWindowPane or null.</returns> public Task <OutputWindowPane?> GetOutputWindowPaneAsync(VSOutputWindowPane pane) => OutputWindowPane.GetAsync(pane);