Пример #1
0
        public void SetPackages(PackageFilter filter, IEnumerable <Package> packages)
        {
            if (filter == PackageFilter.Modules)
            {
                packages = packages.Where(pkg => pkg.IsBuiltIn);
            }
            else if (filter == PackageFilter.All)
            {
                packages = packages.Where(pkg => !pkg.IsBuiltIn && pkg.IsDiscoverable);
            }
            else if (filter == PackageFilter.InDevelopment)
            {
                packages = packages.Where(pkg => pkg.AnyInDevelopment);
            }
            else
            {
                packages = packages.Where(pkg => !pkg.IsBuiltIn);
                packages = packages.Where(pkg => pkg.Current != null && pkg.Current.IsDirectDependency);
            }

            OnLoaded();
            ClearAll();

            var packagesGroup = new PackageGroup(PackageGroupOrigins.Packages.ToString(), Selection);

            Groups.Add(packagesGroup);
            List.Add(packagesGroup);
            packagesGroup.previousGroup = null;

            var builtInGroup = new PackageGroup(PackageGroupOrigins.BuiltInPackages.ToString(), Selection);

            Groups.Add(builtInGroup);
            List.Add(builtInGroup);

            if (filter == PackageFilter.Modules)
            {
                packagesGroup.nextGroup    = builtInGroup;
                builtInGroup.previousGroup = packagesGroup;
                builtInGroup.nextGroup     = null;
            }
            else
            {
                packagesGroup.nextGroup = null;
                UIUtils.SetElementDisplay(builtInGroup, false);
            }

            var items = packages.OrderBy(pkg => pkg.VersionToDisplay == null ? pkg.Name : pkg.VersionToDisplay.DisplayName).ToList();

            foreach (var package in items)
            {
                AddPackage(package);
            }

            if (!Selection.Selected.Any() && items.Any())
            {
                Selection.SetSelection(items.First());
            }

            PackageFiltering.FilterPackageList(this);
        }
Пример #2
0
        private void SetPackages(IEnumerable <Package> packages)
        {
            if (PackageCollection.Instance.Filter == PackageFilter.Modules)
            {
                packages = packages.Where(pkg => pkg.IsBuiltIn);
            }
            else if (PackageCollection.Instance.Filter == PackageFilter.Unity)
            {
                packages = packages.Where(pkg => !pkg.IsBuiltIn && pkg.IsUnityPackage && !(pkg.Current != null && (pkg.Current.IsLocal || pkg.Current.IsInDevelopment)));
            }
            else if (PackageCollection.Instance.Filter == PackageFilter.Other)
            {
                packages = packages.Where(pkg => !pkg.IsBuiltIn && !pkg.IsUnityPackage && !(pkg.Current != null && (pkg.Current.IsLocal || pkg.Current.IsInDevelopment)));
            }
            else // PackageCollection.Instance.Filter == PackageFilter.Local
            {
                packages = packages.Where(pkg => !pkg.IsBuiltIn && pkg.Current != null);
            }

            OnLoaded();
            ClearAll();

            var lastSelection = PackageCollection.Instance.SelectedPackage;

            Select(null);

            PackageItem defaultSelection = null;

            foreach (var package in packages)
            {
                var item = AddPackage(package);

                if (null == selectedItem && defaultSelection == null)
                {
                    defaultSelection = item;
                }

                if (null == selectedItem && !string.IsNullOrEmpty(lastSelection) && package.Name.Equals(lastSelection))
                {
                    Select(item);
                }
            }

            if (selectedItem == null)
            {
                Select(defaultSelection);
            }

            PackageFiltering.FilterPackageList(this);
        }
        private void SetPackages(IEnumerable <Package> packages)
        {
            if (PackageCollection.Instance.Filter == PackageFilter.Modules)
            {
                packages = packages.Where(pkg => pkg.IsBuiltIn);
            }
            else if (PackageCollection.Instance.Filter == PackageFilter.All)
            {
                packages = packages.Where(pkg => !pkg.IsBuiltIn);
            }
            else
            {
                packages = packages.Where(pkg => !pkg.IsBuiltIn);
                packages = packages.Where(pkg => pkg.Current != null);
            }

            OnLoaded();
            ClearAll();

            var packagesGroup = new PackageGroup(PackageGroupOrigins.Packages.ToString());

            Groups.Add(packagesGroup);
            List.Add(packagesGroup);
            packagesGroup.previousGroup = null;

            var builtInGroup = new PackageGroup(PackageGroupOrigins.BuiltInPackages.ToString());

            Groups.Add(builtInGroup);
            List.Add(builtInGroup);

            if ((PackageCollection.Instance.Filter & PackageFilter.Modules) == PackageFilter.Modules)
            {
                packagesGroup.nextGroup    = builtInGroup;
                builtInGroup.previousGroup = packagesGroup;
                builtInGroup.nextGroup     = null;
            }
            else
            {
                packagesGroup.nextGroup = null;
                UIUtils.SetElementDisplay(builtInGroup, false);
            }

            var lastSelection = PackageCollection.Instance.SelectedPackage;

            Select(null);

            PackageItem defaultSelection = null;

            foreach (var package in packages.OrderBy(pkg => pkg.Versions.FirstOrDefault() == null ? pkg.Name : pkg.Versions.FirstOrDefault().DisplayName))
            {
                var item = AddPackage(package);

                if (null == selectedItem && defaultSelection == null)
                {
                    defaultSelection = item;
                }

                if (null == selectedItem && !string.IsNullOrEmpty(lastSelection) && package.Name.Equals(lastSelection))
                {
                    Select(item);
                }
            }

            if (selectedItem == null)
            {
                Select(defaultSelection);
            }

            PackageFiltering.FilterPackageList(this);
        }
Пример #4
0
 private void OnSearchChange(string searchText)
 {
     SearchFilter.SearchText = searchText;
     PackageList.SetSearchFilter(SearchFilter);
     PackageFiltering.FilterPackageList(PackageList);
 }
Пример #5
0
 private void OnSearchChange(string searchText)
 {
     PackageSearchFilter.Instance.SearchText = searchText;
     PackageFiltering.FilterPackageList(PackageList);
 }