public static Task AddEnvironmentAsync(EnvironmentSwitcherManager envSwitchMgr, IServiceProvider serviceProvider, AddEnvironmentDialog.PageKind page) { var workspace = (envSwitchMgr.Context as EnvironmentSwitcherWorkspaceContext)?.Workspace; var project = (envSwitchMgr.Context as EnvironmentSwitcherProjectContext)?.Project; if (workspace == null && project == null) { var sln = (IVsSolution)serviceProvider.GetService(typeof(SVsSolution)); project = sln?.EnumerateLoadedPythonProjects().FirstOrDefault(); } return(AddEnvironmentDialog.ShowDialogAsync( page, serviceProvider, project, workspace, null, null, null )); }
public Task InvokeAsync() { var workspace = (_envSwitchMgr.Context as EnvironmentSwitcherWorkspaceContext)?.Workspace; var project = (_envSwitchMgr.Context as EnvironmentSwitcherProjectContext)?.Project; if (workspace == null && project == null) { var sln = (IVsSolution)_serviceProvider.GetService(typeof(SVsSolution)); project = sln?.EnumerateLoadedPythonProjects().FirstOrDefault(); } return(AddEnvironmentDialog.ShowDialogAsync( _page, _serviceProvider, project, workspace, null, null, null )); }