コード例 #1
0
 public InstalledPackagesView(InstalledPackagesViewModel viewModel)
 {
     this.viewModel   = viewModel;
     this.DataContext = viewModel;
     InitializeComponent();
     Logging.Analytics.TrackScreenView("PackageManager");
 }
コード例 #2
0
        void CreateViewModel(FakePackageManagementService packageManagementService)
        {
            taskFactory = new FakeTaskFactory();
            var messageReporter = new FakeMessageReporter();

            viewModel = new InstalledPackagesViewModel(packageManagementService, messageReporter, taskFactory);
        }
コード例 #3
0
        private void CefBrowser_FrameLoadEnd(object sender, CefSharp.FrameLoadEndEventArgs e)
        {
            var model = Dynamo.Applications.StartupUtils.MakeModel(false);

            dynamoViewModel = DynamoViewModel.Start(
                new DynamoViewModel.StartConfiguration()
            {
                CommandFilePath  = "",
                DynamoModel      = model,
                Watch3DViewModel = HelixWatch3DViewModel.TryCreateHelixWatch3DViewModel(new Watch3DViewModelStartupParams(model), model.Logger),
                ShowLogin        = true
            });

            var pmExtension = dynamoViewModel.Model.GetPackageManagerExtension();
            var x           = new InstalledPackagesViewModel(dynamoViewModel, pmExtension.PackageLoader);

            //Get installed packages
            var packages = x.LocalPackages.Select(pkg => pkg.Model.Name).ToArray();

            if (e.Frame.IsMain)
            {
                var message = "'" + string.Join(",", packages) + "'";

                //Use previously registered object
                //message = "pkgMgrContext.message";

                e.Frame.ExecuteJavaScriptAsync("alert(" + message + ");");
            }
        }
コード例 #4
0
        public TestablePackagesViewModels(
            IPackageManagementSolution solution,
            IRegisteredPackageRepositories registeredPackageRepositories,
            IThreadSafePackageManagementEvents packageManagementEvents,
            IPackageActionRunner actionRunner,
            ITaskFactory taskFactory)
        {
            var packageViewModelFactory        = new PackageViewModelFactory(solution, packageManagementEvents, actionRunner);
            var updatedPackageViewModelFactory = new UpdatedPackageViewModelFactory(packageViewModelFactory);

            AvailablePackagesViewModel = new AvailablePackagesViewModel(solution, packageManagementEvents, registeredPackageRepositories, packageViewModelFactory, taskFactory);
            InstalledPackagesViewModel = new InstalledPackagesViewModel(solution, packageManagementEvents, registeredPackageRepositories, packageViewModelFactory, taskFactory);
            UpdatedPackagesViewModel   = new UpdatedPackagesViewModel(solution, packageManagementEvents, registeredPackageRepositories, updatedPackageViewModelFactory, taskFactory);
            RecentPackagesViewModel    = new RecentPackagesViewModel(solution, packageManagementEvents, registeredPackageRepositories, packageViewModelFactory, taskFactory);
        }
        void CreateViewModel(FakePackageManagementSolution solution)
        {
            registeredPackageRepositories = new FakeRegisteredPackageRepositories();
            var packageViewModelFactory          = new FakePackageViewModelFactory();
            var installedPackageViewModelFactory = new InstalledPackageViewModelFactory(packageViewModelFactory);

            taskFactory             = new FakeTaskFactory();
            packageManagementEvents = new PackageManagementEvents();

            viewModel = new InstalledPackagesViewModel(
                solution,
                packageManagementEvents,
                registeredPackageRepositories,
                installedPackageViewModelFactory,
                taskFactory);
        }
コード例 #6
0
        public void InstalledPackagesContainsCorrectNumberOfPackages()
        {
            var setting = new PreferenceSettings()
            {
                CustomPackageFolders = { PackagesDirectory }
            };
            var vm            = CreatePackagePathViewModel(setting);
            var libraryLoader = new ExtensionLibraryLoader(ViewModel.Model);

            vm.packageLoader.PackagesLoaded         += libraryLoader.LoadPackages;
            vm.packageLoader.RequestLoadNodeLibrary += libraryLoader.LoadLibraryAndSuppressZTSearchImport;

            var packagesLoaded = false;

            Action <IEnumerable <Assembly> > pkgsLoadedDelegate = (x) => { packagesLoaded = true; };

            vm.packageLoader.PackagesLoaded += pkgsLoadedDelegate;

            vm.packageLoader.LoadAll(vm.loadPackageParams);
            Assert.AreEqual(19, vm.packageLoader.LocalPackages.Count());
            Assert.AreEqual(true, packagesLoaded);

            var installedPackagesViewModel = new InstalledPackagesViewModel(ViewModel, vm.packageLoader);

            Assert.AreEqual(19, installedPackagesViewModel.LocalPackages.Count);

            var installedPackagesView = new Dynamo.Wpf.Controls.InstalledPackagesControl();

            installedPackagesView.DataContext = installedPackagesViewModel;
            DispatcherUtil.DoEvents();

            Assert.AreEqual(19, installedPackagesView.SearchResultsListBox.Items.Count);
            Assert.AreEqual(2, installedPackagesView.Filters.Items.Count);

            vm.packageLoader.PackagesLoaded         -= libraryLoader.LoadPackages;
            vm.packageLoader.RequestLoadNodeLibrary -= libraryLoader.LoadLibraryAndSuppressZTSearchImport;
        }
コード例 #7
0
 public InstalledPackagesView(InstalledPackagesViewModel viewModel)
 {
     this.viewModel   = viewModel;
     this.DataContext = viewModel;
     InitializeComponent();
 }