Exemplo n.º 1
0
 public static void RemoveInstance(SortIndicatorController Instance)
 {
     if (CurrentInstance.Contains(Instance))
     {
         CurrentInstance.Remove(Instance);
     }
 }
Exemplo n.º 2
0
        public static SortIndicatorController CreateNewInstance()
        {
            SortIndicatorController NewInstance = new SortIndicatorController();

            CurrentInstance.Add(NewInstance);
            return(NewInstance);
        }
        public async Task ModifySortWayAsync(string Path, SortTarget?SortTarget = null, SortDirection?SortDirection = null)
        {
            if (SortTarget == Class.SortTarget.OriginPath || SortTarget == Class.SortTarget.Path)
            {
                throw new NotSupportedException("SortTarget.Path and SortTarget.OriginPath is not allow in this method");
            }

            if (SortTarget.HasValue)
            {
                this.SortTarget = SortTarget.Value;
            }

            if (SortDirection.HasValue)
            {
                this.SortDirection = SortDirection.Value;
            }

            await SQLite.Current.SetPathConfiguration(new PathConfiguration(Path, this.SortTarget, this.SortDirection)).ConfigureAwait(true);

            SortIndicatorController.SetIndicatorStatus(this.SortTarget, this.SortDirection);
        }
Exemplo n.º 4
0
        public void ModifySortWay(SortTarget?SortTarget = null, SortDirection?SortDirection = null)
        {
            if (SortTarget == Class.SortTarget.OriginPath || SortTarget == Class.SortTarget.Path)
            {
                throw new NotSupportedException("SortTarget.Path and SortTarget.OriginPath is not allow in this method");
            }

            if (SortTarget.HasValue)
            {
                this.SortTarget = SortTarget.Value;
                ApplicationData.Current.LocalSettings.Values["CollectionSortTarget"] = Enum.GetName(typeof(SortTarget), SortTarget);
            }

            if (SortDirection.HasValue)
            {
                this.SortDirection = SortDirection.Value;
                ApplicationData.Current.LocalSettings.Values["CollectionSortDirection"] = Enum.GetName(typeof(SortDirection), SortDirection);
            }

            SortIndicatorController.SetIndicatorStatus(this.SortTarget, this.SortDirection);
        }
 public ListViewHeaderController()
 {
     Filter    = new FilterController();
     Indicator = new SortIndicatorController();
 }
Exemplo n.º 6
0
        private static void SetIndicatorCore(SortIndicatorController Instance, SortTarget Target, SortDirection Direction)
        {
            switch (Target)
            {
            case SortTarget.Name:
            {
                Instance.Indicator1Icon = new FontIcon {
                    Glyph = Direction == SortDirection.Ascending ? UpArrowIcon : DownArrowIcon
                };

                Instance.Indicator1Visibility = Visibility.Visible;
                Instance.Indicator2Visibility = Visibility.Collapsed;
                Instance.Indicator3Visibility = Visibility.Collapsed;
                Instance.Indicator4Visibility = Visibility.Collapsed;

                break;
            }

            case SortTarget.ModifiedTime:
            {
                Instance.Indicator2Icon = new FontIcon {
                    Glyph = Direction == SortDirection.Ascending ? UpArrowIcon : DownArrowIcon
                };

                Instance.Indicator1Visibility = Visibility.Collapsed;
                Instance.Indicator2Visibility = Visibility.Visible;
                Instance.Indicator3Visibility = Visibility.Collapsed;
                Instance.Indicator4Visibility = Visibility.Collapsed;

                break;
            }

            case SortTarget.Type:
            {
                Instance.Indicator3Icon = new FontIcon {
                    Glyph = Direction == SortDirection.Ascending ? UpArrowIcon : DownArrowIcon
                };

                Instance.Indicator1Visibility = Visibility.Collapsed;
                Instance.Indicator2Visibility = Visibility.Collapsed;
                Instance.Indicator3Visibility = Visibility.Visible;
                Instance.Indicator4Visibility = Visibility.Collapsed;

                break;
            }

            case SortTarget.Size:
            {
                Instance.Indicator4Icon = new FontIcon {
                    Glyph = Direction == SortDirection.Ascending ? UpArrowIcon : DownArrowIcon
                };

                Instance.Indicator1Visibility = Visibility.Collapsed;
                Instance.Indicator2Visibility = Visibility.Collapsed;
                Instance.Indicator3Visibility = Visibility.Collapsed;
                Instance.Indicator4Visibility = Visibility.Visible;

                break;
            }

            default:
            {
                throw new NotSupportedException("SortTarget is not supported");
            }
            }

            Instance.PropertyChanged?.Invoke(Instance, new PropertyChangedEventArgs(nameof(Indicator1Icon)));
            Instance.PropertyChanged?.Invoke(Instance, new PropertyChangedEventArgs(nameof(Indicator2Icon)));
            Instance.PropertyChanged?.Invoke(Instance, new PropertyChangedEventArgs(nameof(Indicator3Icon)));
            Instance.PropertyChanged?.Invoke(Instance, new PropertyChangedEventArgs(nameof(Indicator4Icon)));
            Instance.PropertyChanged?.Invoke(Instance, new PropertyChangedEventArgs(nameof(Indicator1Visibility)));
            Instance.PropertyChanged?.Invoke(Instance, new PropertyChangedEventArgs(nameof(Indicator2Visibility)));
            Instance.PropertyChanged?.Invoke(Instance, new PropertyChangedEventArgs(nameof(Indicator3Visibility)));
            Instance.PropertyChanged?.Invoke(Instance, new PropertyChangedEventArgs(nameof(Indicator4Visibility)));
        }