Changeset 8689 for trunk/sources/HeuristicLab.Problems.DataAnalysis.Views/3.4/FeatureCorrelation/AbstractFeatureCorrelationView.cs
- Timestamp:
- 09/24/12 18:48:16 (12 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/sources/HeuristicLab.Problems.DataAnalysis.Views/3.4/FeatureCorrelation/AbstractFeatureCorrelationView.cs
r8578 r8689 30 30 using HeuristicLab.Common; 31 31 using HeuristicLab.Data.Views; 32 using HeuristicLab.DataAnalysis.Views; 32 33 using HeuristicLab.MainForm; 33 34 using HeuristicLab.MainForm.WindowsForms; … … 40 41 41 42 private int[] virtualRowIndices; 43 private VariableVisibilityDialog variableVisibility; 42 44 private List<KeyValuePair<int, SortOrder>> sortedColumnIndices; 43 45 private StringConvertibleMatrixView.RowComparer rowComparer; … … 82 84 if (Content != null) { 83 85 fcc.ProblemData = Content; 86 bool[] initialVisibility = SetInitialVisibilityOfColumns(); 87 88 variableVisibility = new VariableVisibilityDialog(Content.Dataset.DoubleVariables, initialVisibility); 89 variableVisibility.VariableVisibilityChanged += new ItemCheckEventHandler(variableVisibility_VariableVisibilityChanged); 84 90 CalculateCorrelation(); 85 91 } else { … … 88 94 } 89 95 } 96 97 protected virtual bool[] SetInitialVisibilityOfColumns() { 98 bool[] initialVisibility = new bool[Content.Dataset.DoubleVariables.Count()]; 99 int i = 0; 100 foreach (var variable in Content.Dataset.DoubleVariables) { 101 initialVisibility[i] = Content.AllowedInputVariables.Contains(variable); 102 i++; 103 } 104 return initialVisibility; 105 } 106 107 protected abstract void variableVisibility_VariableVisibilityChanged(object sender, ItemCheckEventArgs e); 90 108 91 109 protected void CorrelationMeasureComboBox_SelectedChangeCommitted(object sender, System.EventArgs e) { … … 127 145 for (int i = 0; i < DataGridView.ColumnCount; i++) { 128 146 DataGridView.Columns[i].HeaderText = currentCorrelation.ColumnNames.ElementAt(i); 147 DataGridView.Columns[i].Visible = variableVisibility.Visibility[i]; 129 148 } 130 149 } … … 132 151 for (int i = 0; i < DataGridView.RowCount; i++) { 133 152 DataGridView.Rows[i].HeaderCell.Value = currentCorrelation.RowNames.ElementAt(virtualRowIndices[i]); 153 DataGridView.Rows[i].Visible = variableVisibility.Visibility[virtualRowIndices[i]]; 134 154 } 135 155 } … … 169 189 170 190 protected virtual Color GetDataPointColor(double value, double min, double max) { 191 if (double.IsNaN(value)) { 192 return Color.DarkGray; 193 } 171 194 IList<Color> colors = ColorGradient.Colors; 172 195 int index = (int)((colors.Count - 1) * (value - min) / (max - min)); … … 301 324 } 302 325 #endregion 326 327 protected void ShowHideColumns_Click(object sender, EventArgs e) { 328 variableVisibility.ShowDialog(); 329 } 330 331 protected void DataGridView_MouseClick(object sender, MouseEventArgs e) { 332 if (Content == null) return; 333 if (e.Button == MouseButtons.Right && DataGridView.Columns.Count != 0) 334 contextMenu.Show(MousePosition); 335 } 336 337 protected int GetRowIndexOfVirtualindex(int virtualIndex) { 338 if (virtualIndex < 0 || virtualIndex >= virtualRowIndices.Length) { 339 throw new ArgumentException("Virtual index is out of bounds"); 340 } 341 342 for (int i = 0; i < virtualRowIndices.Length; i++) { 343 if (virtualRowIndices[i] == virtualIndex) { 344 return i; 345 } 346 } 347 throw new ArgumentException("Virtual index was not found!"); 348 } 303 349 } 304 350 }
Note: See TracChangeset
for help on using the changeset viewer.