Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
04/12/19 10:32:44 (5 years ago)
Author:
chaider
Message:

#2971
-Fixed Dispose problem
-Added event handling for item selection

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/2971_named_intervals/HeuristicLab.Problems.DataAnalysis.Views/3.4/ParsedConstraintView.cs

    r16776 r16777  
    11using System;
    2 
     2using HeuristicLab.Collections;
    33using HeuristicLab.Core;
    44using HeuristicLab.MainForm;
     
    1919      errorOutput.Text = "";
    2020      intervalConstraints = new CheckedItemList<IntervalConstraint>();
    21     }
    22 
    23     private void Content_Changed(object sender, EventArgs e) {
    24       constraintsOutput.Content = intervalConstraints;
     21      intervalConstraints.CheckedItemsChanged += constraints_CheckedItemsChanged;
    2522    }
    2623
     
    3734    private void parseBtn_Click(object sender, EventArgs e) {
    3835      if (constraintsInput.Text != null) {
    39         var constaints = ParseConstraints(constraintsInput.Text);
    40         constraintsOutput.Content = constaints;
    41         Content.Constraints = constaints;
     36        intervalConstraints = ParseConstraints(constraintsInput.Text);
     37        intervalConstraints.CheckedItemsChanged += constraints_CheckedItemsChanged;
     38        constraintsOutput.Content = intervalConstraints;
     39        Content.Constraints = intervalConstraints;
    4240        Content.Input = constraintsInput.Text;
    4341        errorOutput.Text = "";
     
    5755        foreach (var constraint in Content.Constraints) {
    5856          constraint.Changed += new EventHandler(Content_Changed);
    59           intervalConstraints.Add(constraint, true);
     57          intervalConstraints.Add(constraint, constraint.IsChecked);
    6058        }
    6159      }
     60      constraintsOutput.Content = intervalConstraints;
    6261    }
    6362
    6463    private void constraintsInput_TextChanged(object sender, EventArgs e) {
    6564      errorOutput.Text = "Unparsed changes! Press parse button to save changes.";
     65    }
     66
     67    private void Content_Changed(object sender, EventArgs e) {
     68      var constraint = (IntervalConstraint) sender;
     69      intervalConstraints.SetItemCheckedState(constraint, constraint.IsChecked);
     70      constraintsOutput.Content = intervalConstraints;
     71    }
     72
     73    private void constraints_CheckedItemsChanged(object sender,
     74      CollectionItemsChangedEventArgs<IndexedItem<IntervalConstraint>> e) {
     75      var checkedItemList = (ICheckedItemList<IntervalConstraint>) sender;
     76      foreach (var indexedItem in e.Items) {
     77        indexedItem.Value.IsChecked = checkedItemList.ItemChecked(indexedItem.Value);
     78      }
    6679    }
    6780
Note: See TracChangeset for help on using the changeset viewer.