Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
04/23/14 15:51:41 (10 years ago)
Author:
psteiner
Message:

filter or combination
filter control: checkedlistview

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/DataPreprocessing/HeuristicLab.DataPreprocessing.Views/3.3/FilterView.cs

    r10713 r10785  
    1414  [Content(typeof(FilterContent), true)]
    1515  public partial class FilterView : ItemView {
    16     private CheckedItemCollectionView<IFilter> filterView;
     16    //private CheckedItemCollectionView<IFilter> filterView;
    1717
    1818    public FilterView() {
     
    2121      tbFiltered.Text = "0";
    2222      tbPercentage.Text = "0%";
    23       filterView = new CheckedItemCollectionView<IFilter>();
    24       filterView.Dock = DockStyle.Fill;
     23      checkedFilterView.Content = new CheckedItemCollection<IFilter>();
     24      //filterView = new CheckedItemCollectionView<IFilter>();
     25      //filterView = new CheckedFilterCollectionView();
     26      /*filterView.Dock = DockStyle.Fill;
    2527      filterView.Content = new CheckedItemCollection<IFilter>();
    26       filterView.Content.ItemsAdded += Content_ItemsAdded;
    27       filterView.Content.ItemsRemoved += Content_ItemsRemoved;
    28       filterView.Content.CheckedItemsChanged += Content_CheckedItemsChanged;
    29       groupBoxFilter.Controls.Add(filterView);
     28       * */
     29      checkedFilterView.Content.ItemsAdded += Content_ItemsAdded;
     30      checkedFilterView.Content.ItemsRemoved += Content_ItemsRemoved;
     31      checkedFilterView.Content.CheckedItemsChanged += Content_CheckedItemsChanged;
     32      //groupBoxFilter.Controls.Add(filterView);*/
    3033    }
    3134
    3235    public new FilterContent Content {
    3336      get { return (FilterContent)base.Content; }
    34       set { base.Content = value; }
     37      set { base.Content = value; UpdateFilterInfo(); }
    3538    }
    3639
     
    3942      foreach (IFilter filter in e.Items)
    4043      {
    41  /*       if (filterView.Content.CheckedItems.Contains(filter) && (filter.ConstraintData == null || string.IsNullOrEmpty(((StringValue)filter.ConstraintData).Value)) )
    42         {
    43           filter.ConstraintData = new StringValue("0");
    44         }
    45   * */
    4644        filter.Active = !filter.Active;
    4745      }
     
    5250
    5351    private void UpdateFilterInfo() {
    54       List<IFilter> filters = filterView.ItemCollection.ToList<IFilter>();
     52      List<IFilter> filters = checkedFilterView.ItemCollection.ToList<IFilter>();
    5553
    5654      int activeFilters = filters.Count(c => c.Active);
    5755
    5856      applyFilterButton.Enabled = (activeFilters > 0);
     57      rBtnAnd.Enabled = (activeFilters > 0);
     58      rBtnOr.Enabled = (activeFilters > 0);
     59      btnReset.Enabled = (activeFilters > 0);
    5960
    60       bool[] result = Content.FilterLogic.Preview(filters);
     61      bool[] result = Content.FilterLogic.Preview(filters, rBtnAnd.Checked);
    6162     
    62       int filteredCnt = result.Count(c => !c);
     63      int filteredCnt = result.Count(c => c);
    6364 
    6465      tbFiltered.Text = filteredCnt.ToString();
     
    6970
    7071    private void applyFilterButton_Click(object sender, EventArgs e) {
    71       List<IFilter> filters = filterView.ItemCollection.ToList<IFilter>();
    72       Content.FilterLogic.Apply(filters);
     72      List<IFilter> filters = checkedFilterView.ItemCollection.ToList<IFilter>();
     73      Content.FilterLogic.Apply(filters, rBtnAnd.Checked);
    7374    }
    7475
     
    7879        filter.ConstrainedValue = Content.FilterLogic.PreprocessingData;
    7980        filter.Active = true;
    80         filterView.Content.SetItemCheckedState(filter, false);
     81        checkedFilterView.Content.SetItemCheckedState(filter, false);
    8182      }
    8283      UpdateFilterInfo();
     
    8788    }
    8889
     90    private void rBtnAnd_CheckedChanged(object sender, EventArgs e)
     91    {
     92      UpdateFilterInfo();
     93    }
     94
     95    private void btnReset_Click(object sender, EventArgs e)
     96    {
     97      Content.FilterLogic.Reset();
     98    }
     99
    89100  }
    90101}
Note: See TracChangeset for help on using the changeset viewer.