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); }
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); }
private void OnSearchChange(string searchText) { SearchFilter.SearchText = searchText; PackageList.SetSearchFilter(SearchFilter); PackageFiltering.FilterPackageList(PackageList); }
private void OnSearchChange(string searchText) { PackageSearchFilter.Instance.SearchText = searchText; PackageFiltering.FilterPackageList(PackageList); }