Changeset 1106 for branches/CEDMA-Refactoring-Ticket419/HeuristicLab.CEDMA.Core/ResultsViewContainer.cs
- Timestamp:
- 01/09/09 18:05:03 (15 years ago)
- File:
-
- 1 moved
Legend:
- Unmodified
- Added
- Removed
-
branches/CEDMA-Refactoring-Ticket419/HeuristicLab.CEDMA.Core/ResultsViewContainer.cs
r1103 r1106 8 8 using System.Windows.Forms; 9 9 using HeuristicLab.Core; 10 using HeuristicLab. CEDMA.Charting;10 using HeuristicLab.PluginInfrastructure; 11 11 12 12 namespace HeuristicLab.CEDMA.Core { 13 public partial class ResultsView : ViewBase {13 public partial class ResultsViewContainer : ViewBase { 14 14 private Results results; 15 private const string FREQUENCY = "<Frequency>";16 private const string CONSTANT_SIZE = "<constant>";17 private BubbleChartControl bubbleChartControl;18 private HistogramControl histogramControl;19 private Label pleaseSelectAxisLabel = new Label();20 15 21 public ResultsView (Results results) {16 public ResultsViewContainer(Results results) { 22 17 this.results = results; 23 18 InitializeComponent(); 24 InitCharts(); 25 xAxisComboBox.Items.AddRange(results.VariableNames); 26 yAxisComboBox.Items.Add(FREQUENCY); 27 yAxisComboBox.Items.AddRange(results.VariableNames); 28 sizeComboBox.Items.Add(CONSTANT_SIZE); 29 sizeComboBox.Items.AddRange(results.VariableNames); 30 sizeComboBox.SelectedItem = sizeComboBox.Items[0]; 31 sizeComboBox.Enabled = false; 32 invertCheckbox.Enabled = false; 33 sizeLabel.Enabled = false; 34 yAxisComboBox.SelectedItem = yAxisComboBox.Items[0]; 35 xAxisComboBox.SelectedItem = xAxisComboBox.Items[0]; 19 PopulateViewComboBox(); 20 showButton.Enabled = false; 36 21 } 37 22 38 private void InitCharts() {39 bubbleChartControl = new BubbleChartControl();40 bubbleChartControl.Chart = new BubbleChart(results, 0, 0, 100, 100);41 histogramControl = new HistogramControl();42 histogramControl.Chart = new Histogram(results, 0, 0, 100, 100);23 private void PopulateViewComboBox() { 24 DiscoveryService service = new DiscoveryService(); 25 Type[] viewTypes = service.GetTypes(typeof(IResultsView)); 26 foreach (Type t in viewTypes) 27 viewComboBox.Items.Add(t); 43 28 } 44 29 45 private void yAxisComboBox_SelectedIndexChanged(object sender, EventArgs e) { 46 UpdateChart(); 47 } 48 49 private void xAxisComboBox_SelectedIndexChanged(object sender, EventArgs e) { 50 UpdateChart(); 51 } 52 53 private void UpdateChart() { 54 if(xAxisComboBox.SelectedItem == null || yAxisComboBox.SelectedItem == null) return; 55 if(yAxisComboBox.SelectedItem.Equals(FREQUENCY)) { 56 xJitterlabel.Enabled = false; 57 xTrackBar.Enabled = false; 58 yJitterLabel.Enabled = false; 59 yTrackBar.Enabled = false; 60 sizeComboBox.Enabled = false; 61 invertCheckbox.Enabled = false; 62 sizeLabel.Enabled = false; 63 chartPanel.Controls.Clear(); 64 chartPanel.Controls.Add(histogramControl); 65 histogramControl.Chart.ShowFrequency((string)xAxisComboBox.SelectedItem); 66 histogramControl.Dock = DockStyle.Fill; 67 } else { 68 xJitterlabel.Enabled = true; 69 xTrackBar.Enabled = true; 70 yJitterLabel.Enabled = true; 71 yTrackBar.Enabled = true; 72 sizeComboBox.Enabled = true; 73 invertCheckbox.Enabled = true; 74 sizeLabel.Enabled = true; 75 chartPanel.Controls.Clear(); 76 chartPanel.Controls.Add(bubbleChartControl); 77 bubbleChartControl.Chart.ShowXvsY((string)xAxisComboBox.SelectedItem, (string)yAxisComboBox.SelectedItem); 78 bubbleChartControl.Dock = DockStyle.Fill; 30 private void showButton_Click(object sender, EventArgs e) { 31 viewPanel.Controls.Clear(); 32 try { 33 Type type = (Type)viewComboBox.SelectedItem; 34 IResultsView view = (IResultsView)Activator.CreateInstance(type); 35 Control control = view.Control; 36 viewPanel.Controls.Add(control); 37 control.Dock = DockStyle.Fill; 38 view.ShowResults(results); 39 } 40 catch (Exception ex) { 41 Label errorLabel = new Label(); 42 errorLabel.Text = "Couldn't load selected view: " + viewComboBox.SelectedItem + "\n" + ex.Message; 43 viewPanel.Controls.Add(errorLabel); 44 errorLabel.Dock = DockStyle.Fill; 79 45 } 80 46 } 81 47 82 private void jitterTrackBar_ValueChanged(object sender, EventArgs e) { 83 if(bubbleChartControl.Chart != null) { 84 double xJitterFactor = xTrackBar.Value / 100.0; 85 double yJitterFactor = yTrackBar.Value / 100.0; 86 bubbleChartControl.Chart.SetJitter(xJitterFactor, yJitterFactor); 87 } 88 UpdateChart(); 89 } 90 91 private void sizeComboBox_SelectedIndexChanged(object sender, EventArgs e) { 92 if(bubbleChartControl.Chart != null) { 93 bubbleChartControl.Chart.SetBubbleSizeDimension((string)sizeComboBox.SelectedItem, invertCheckbox.Checked); 94 UpdateChart(); 95 } 48 private void viewComboBox_SelectedValueChanged(object sender, EventArgs e) { 49 showButton.Enabled = viewComboBox.SelectedItem != null; 96 50 } 97 51 }
Note: See TracChangeset
for help on using the changeset viewer.