Example #1
0
        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
                       ));
        }
Example #2
0
        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
                       ));
        }