Free cookie consent management tool by TermsFeed Policy Generator

source: branches/RefactorPluginInfrastructure-2522/HeuristicLab.DataPreprocessing.Views/3.4/HistogramView.cs @ 15456

Last change on this file since 15456 was 12676, checked in by mkommend, 9 years ago

#2335: Merged changes into trunk.

File size: 3.2 KB
Line 
1#region License Information
2/* HeuristicLab
3 * Copyright (C) 2002-2015 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
4 *
5 * This file is part of HeuristicLab.
6 *
7 * HeuristicLab is free software: you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License as published by
9 * the Free Software Foundation, either version 3 of the License, or
10 * (at your option) any later version.
11 *
12 * HeuristicLab is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15 * GNU General Public License for more details.
16 *
17 * You should have received a copy of the GNU General Public License
18 * along with HeuristicLab. If not, see <http://www.gnu.org/licenses/>.
19 */
20#endregion
21using System;
22using System.Windows.Forms;
23using HeuristicLab.Analysis;
24using HeuristicLab.MainForm;
25
26namespace HeuristicLab.DataPreprocessing.Views {
27
28  [View("Histogram View")]
29  [Content(typeof(HistogramContent), true)]
30  public partial class HistogramView : PreprocessingChartView {
31    private const string HISTOGRAM_CHART_TITLE = "Histogram";
32
33    public HistogramView() {
34      InitializeComponent();
35      chartType = DataRowVisualProperties.DataRowChartType.Histogram;
36      chartTitle = HISTOGRAM_CHART_TITLE;
37    }
38
39    protected override void OnContentChanged() {
40      base.OnContentChanged();
41      if (Content != null) {
42        classifierComboBox.Items.Clear();
43        classifierComboBox.Items.Add("None");
44
45        foreach (string var in Content.GetVariableNamesForHistogramClassification()) {
46          classifierComboBox.Items.Add(var);
47        }
48
49        if (classifierComboBox.SelectedItem == null && Content.ClassifierVariableIndex < classifierComboBox.Items.Count) {
50          classifierComboBox.SelectedIndex = Content.ClassifierVariableIndex;
51        }
52      }
53    }
54
55    public new HistogramContent Content {
56      get { return (HistogramContent)base.Content; }
57      set { base.Content = value; }
58    }
59
60    private void classifierComboBox_SelectedIndexChanged(object sender, EventArgs e) {
61      if (classifierComboBox.SelectedItem == null)
62        return;
63
64      if (classifierComboBox.SelectedIndex != 0) {
65        int columndIndex = Content.PreprocessingData.GetColumnIndex(classifierComboBox.SelectedItem.ToString());
66        Classification = Content.PreprocessingData.GetValues<double>(columndIndex);
67      } else {
68        Classification = null;
69      }
70
71      Content.ClassifierVariableIndex = classifierComboBox.SelectedIndex;
72      if (Content.IsDetailedChartViewEnabled != IsDetailedChartViewEnabled) {
73        displayDetailsCheckBox.Checked = Content.IsDetailedChartViewEnabled;
74      } else {
75        GenerateChart();
76      }
77    }
78    private void displayDetailsCheckBox_CheckedChanged(object sender, EventArgs e) {
79      bool isChecked = displayDetailsCheckBox.Checked;
80      if (IsDetailedChartViewEnabled != isChecked) {
81        IsDetailedChartViewEnabled = isChecked;
82        Content.IsDetailedChartViewEnabled = isChecked;
83        GenerateChart();
84      }
85    }
86  }
87}
Note: See TracBrowser for help on using the repository browser.