Example #1
0
        public async Task LoadAsync(IRPackageViewModel package)
        {
            await _coreShell.SwitchToMainThreadAsync();

            if (package.IsLoaded)
            {
                return;
            }

            package.IsChanging = true;
            BeforeLoadUnload();

            try {
                await _packageManager.LoadPackageAsync(package.Name, package.LibraryPath.ToRPath());
            } catch (RPackageManagerException ex) {
                AddErrorMessage(ex.Message);
            }

            await ReloadLoadedPackagesAsync();

            AfterLoadUnload(package);
        }
Example #2
0
        public async Task LoadAsync(IRPackageViewModel package)
        {
            await _coreShell.SwitchToMainThreadAsync();

            if (package.IsLoaded)
            {
                return;
            }

            BeforeLoadUnload(package);
            var startingTab = _selectedTab;

            try {
                await _packageManager.LoadPackageAsync(package.Name, package.LibraryPath.ToRPath());
            } catch (RHostDisconnectedException) {
                AddErrorMessage(string.Format(CultureInfo.CurrentCulture, Resources.PackageManager_CantLoadPackageNoRSession, package.Name));
            } catch (RPackageManagerException ex) {
                AddErrorMessage(ex.Message);
            }

            await ReloadLoadedPackagesAsync();
            await AfterLoadUnloadAsync(package, startingTab);
        }