コード例 #1
0
 public void ClearAllFilters()
 {
     foreach (var handler in Delegates)
     {
         Filters.Filter -= handler.Value;
     }
     Delegates.Clear();
     ListOfFilters.Items.Clear();
     FilterName.Text = NameGenerator.GenerateName(ListOfFilters.Items, "Фильтр");
     FromYear.Text   = "*";
     ToYear.Text     = "*";
 }
コード例 #2
0
        private void Add_Click(object sender, RoutedEventArgs e)
        {
            int yearFrom = Misc.FromMask(FromYear.Text, int.MinValue);
            int yearTo   = Misc.FromMask(FromYear.Text, int.MinValue);

            int widthFrom  = Misc.FromMask(WidthFrom.Text, int.MinValue);
            int widthTo    = Misc.FromMask(WidthTo.Text, int.MinValue);
            int heightFrom = Misc.FromMask(HeightFrom.Text, int.MinValue);
            int heightTo   = Misc.FromMask(HeightTo.Text, int.MinValue);

            bool shouldBeOriginal = Original.IsChecked.Value;

            Predicate <Exhibit> checkOriginal = (x) => true;
            Predicate <Exhibit> checkYear     = (x) => true;
            Predicate <Exhibit> checkSize     = (x) => true;

            if (IsOriginalChoiceCheckBox.IsChecked == true)
            {
                checkOriginal = (x) => x.is_original == shouldBeOriginal;
            }
            if (YearChoiceCheckBox.IsChecked == true)
            {
                checkYear = (x) => x.date_of_acquiring.Year >= yearFrom && x.date_of_acquiring.Year <= yearTo;
            }
            if (SizeChoiceCheckBox.IsChecked == true)
            {
                checkSize = (x) => x.width >= widthFrom && x.width <= widthTo && x.height >= heightFrom && x.height <= heightTo;
            }
            FilterEventHandler handler = (s, ee) =>
            {
                var exhibit = ee.Item as Exhibit;
                ee.Accepted = checkOriginal(exhibit) && checkYear(exhibit) && checkSize(exhibit);
            };

            Filters.Filter += handler;
            Delegates.Add(FilterName.Text, handler);
            ListOfFilters.Items.Add(FilterName.Text);
            FilterName.Text    = NameGenerator.GenerateName(ListOfFilters.Items, "Фильтр");
            Original.IsChecked = true;
            FromYear.Text      = "*";
            ToYear.Text        = "*";
            WidthFrom.Text     = "*";
            WidthTo.Text       = "*";
            HeightFrom.Text    = "*";
            HeightTo.Text      = "*";
            IsOriginalChoiceCheckBox.IsChecked = false;
            SizeChoiceCheckBox.IsChecked       = false;
            YearChoiceCheckBox.IsChecked       = false;
        }
コード例 #3
0
 public void ClearAllFilters()
 {
     foreach (var handler in Delegates)
     {
         Filters.Filter -= handler.Value;
     }
     Delegates.Clear();
     ListOfFilters.Items.Clear();
     FilterName.Text = NameGenerator.GenerateName(ListOfFilters.Items, "Фильтр");
     FromYear.Text   = "*";
     ToYear.Text     = "*";
     ChosenMovement.SelectedIndex     = 0;
     MovementChoiceCheckBox.IsChecked = false;
     YearChoiceCheckBox.IsChecked     = false;
 }
コード例 #4
0
        private void Add_Click(object sender, RoutedEventArgs e)
        {
            int from = Misc.FromMask(FromYear.Text, int.MinValue);
            int to   = Misc.FromMask(ToYear.Text, int.MaxValue);
            FilterEventHandler handler = (s, ee) =>
            {
                var art = ee.Item as Artist;
                ee.Accepted = art.date_of_birth.Value.Year >= from && art.date_of_death.Value.Year <= to;
            };

            Filters.Filter += handler;
            ListOfFilters.Items.Add(FilterName.Text);
            Delegates.Add(FilterName.Text, handler);
            FilterName.Text = NameGenerator.GenerateName(ListOfFilters.Items, "Фильтр");
            FromYear.Text   = "*";
            ToYear.Text     = "*";
        }
コード例 #5
0
 public void ClearAllFilters()
 {
     foreach (var handler in Delegates)
     {
         Filters.Filter -= handler.Value;
     }
     Delegates.Clear();
     ListOfFilters.Items.Clear();
     FilterName.Text    = NameGenerator.GenerateName(ListOfFilters.Items, "Фильтр");
     Original.IsChecked = true;
     FromYear.Text      = "*";
     ToYear.Text        = "*";
     WidthFrom.Text     = "*";
     WidthTo.Text       = "*";
     HeightFrom.Text    = "*";
     HeightTo.Text      = "*";
     IsOriginalChoiceCheckBox.IsChecked = false;
     SizeChoiceCheckBox.IsChecked       = false;
     YearChoiceCheckBox.IsChecked       = false;
 }