Changeset 10540
- Timestamp:
- 03/05/14 15:08:11 (11 years ago)
- Location:
- trunk/sources
- Files:
-
- 24 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/sources/HeuristicLab.Problems.DataAnalysis.Symbolic.Classification.Views/3.4/HeuristicLab.Problems.DataAnalysis.Symbolic.Classification.Views-3.4.csproj
r8636 r10540 152 152 <Private>False</Private> 153 153 </ProjectReference> 154 <ProjectReference Include="..\..\HeuristicLab.Common.Resources\3.3\HeuristicLab.Common.Resources-3.3.csproj"> 155 <Project>{0e27a536-1c4a-4624-a65e-dc4f4f23e3e1}</Project> 156 <Name>HeuristicLab.Common.Resources-3.3</Name> 157 <Private>False</Private> 158 </ProjectReference> 154 159 <ProjectReference Include="..\..\HeuristicLab.Common\3.3\HeuristicLab.Common-3.3.csproj"> 155 160 <Project>{A9AD58B9-3EF9-4CC1-97E5-8D909039FF5C}</Project> -
trunk/sources/HeuristicLab.Problems.DataAnalysis.Symbolic.Classification.Views/3.4/SymbolicClassificationSolutionView.Designer.cs
r9973 r10540 45 45 /// </summary> 46 46 private void InitializeComponent() { 47 this.exportButton = new System.Windows.Forms.Button(); 48 this.exportFileDialog = new System.Windows.Forms.SaveFileDialog(); 47 49 this.btnSimplify = new System.Windows.Forms.Button(); 48 50 ((System.ComponentModel.ISupportInitialize)(this.splitContainer)).BeginInit(); … … 53 55 this.detailsGroupBox.SuspendLayout(); 54 56 this.SuspendLayout(); 55 exportButton.Visible = false;56 57 // 57 // splitContainer58 // flowLayoutPanel 58 59 // 59 // 60 // splitContainer.Panel1 61 // 62 this.splitContainer.Panel1.Controls.Add(this.btnSimplify); 60 this.flowLayoutPanel.Controls.Add(this.btnSimplify); 61 this.flowLayoutPanel.Controls.Add(this.exportButton); 63 62 // 64 63 // btnSimplify 65 64 // 66 this.btnSimplify.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); 67 this.btnSimplify.Location = new System.Drawing.Point(172, 4); 65 this.btnSimplify.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom))); 66 this.btnSimplify.Image = HeuristicLab.Common.Resources.VSImageLibrary.FormulaEvaluator; 67 this.btnSimplify.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft; 68 68 this.btnSimplify.Name = "btnSimplify"; 69 this.btnSimplify.Size = new System.Drawing.Size(75, 23); 70 this.btnSimplify.TabIndex = 6; 71 this.btnSimplify.Text = "Simplify"; 69 this.btnSimplify.Size = new System.Drawing.Size(105, 24); 70 this.btnSimplify.TabIndex = 7; 71 this.btnSimplify.Text = "Simplify Model"; 72 this.btnSimplify.TextAlign = System.Drawing.ContentAlignment.MiddleRight; 72 73 this.btnSimplify.UseVisualStyleBackColor = true; 73 74 this.btnSimplify.Click += new System.EventHandler(this.btn_SimplifyModel_Click); 75 this.toolTip.SetToolTip(this.btnSimplify, "Simplify solution"); 74 76 // 75 // SymbolicDiscriminantFunctionClassificationSolutionView 77 // exportButton 78 // 79 this.exportButton.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom))); 80 this.exportButton.Image = HeuristicLab.Common.Resources.VSImageLibrary.Statistics; 81 this.exportButton.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft; 82 this.exportButton.Name = "exportButton"; 83 this.exportButton.Size = new System.Drawing.Size(105, 24); 84 this.exportButton.TabIndex = 8; 85 this.exportButton.Text = "Export to Excel "; 86 this.exportButton.TextAlign = System.Drawing.ContentAlignment.MiddleRight; 87 this.exportButton.UseVisualStyleBackColor = true; 88 this.exportButton.Click += new System.EventHandler(this.exportButton_Click); 89 // 90 // SymbolicClassificationSolutionView 76 91 // 77 92 this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); … … 88 103 #endregion 89 104 105 protected System.Windows.Forms.SaveFileDialog exportFileDialog; 106 protected System.Windows.Forms.Button exportButton; 90 107 protected System.Windows.Forms.Button btnSimplify; 91 108 } -
trunk/sources/HeuristicLab.Problems.DataAnalysis.Symbolic.Classification.Views/3.4/SymbolicClassificationSolutionView.cs
r9456 r10540 21 21 22 22 using System; 23 using System.ComponentModel; 23 24 using System.Windows.Forms; 24 25 using HeuristicLab.MainForm; 26 using HeuristicLab.Problems.DataAnalysis.Symbolic.Views; 25 27 using HeuristicLab.Problems.DataAnalysis.Views; 26 28 … … 38 40 } 39 41 42 protected override void SetEnabledStateOfControls() { 43 base.SetEnabledStateOfControls(); 44 btnSimplify.Enabled = Content != null && !Locked; 45 exportButton.Enabled = Content != null && !Locked; 46 } 47 40 48 private void btn_SimplifyModel_Click(object sender, EventArgs e) { 41 49 var view = new InteractiveSymbolicClassificationSolutionSimplifierView(); … … 43 51 view.Show(); 44 52 } 53 54 private void exportButton_Click(object sender, EventArgs e) { 55 var exporter = new SymbolicSolutionExcelExporter(); 56 exportFileDialog.Filter = exporter.FileTypeFilter; 57 if (exportFileDialog.ShowDialog(this) == DialogResult.OK) { 58 59 var name = exportFileDialog.FileName; 60 using (BackgroundWorker bg = new BackgroundWorker()) { 61 MainFormManager.GetMainForm<MainForm.WindowsForms.MainForm>().AddOperationProgressToView(this, "Exportion solution to " + name + "."); 62 bg.DoWork += (o, a) => exporter.Export(Content, name); 63 bg.RunWorkerCompleted += (o, a) => MainFormManager.GetMainForm<MainForm.WindowsForms.MainForm>().RemoveOperationProgressFromView(this); 64 bg.RunWorkerAsync(); 65 } 66 } 67 } 45 68 } 46 69 } -
trunk/sources/HeuristicLab.Problems.DataAnalysis.Symbolic.Classification.Views/3.4/SymbolicDiscriminantFunctionClassificationSolutionView.Designer.cs
r9973 r10540 45 45 /// </summary> 46 46 private void InitializeComponent() { 47 System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(SymbolicDiscriminantFunctionClassificationSolutionView)); 47 this.exportButton = new System.Windows.Forms.Button(); 48 this.exportFileDialog = new System.Windows.Forms.SaveFileDialog(); 48 49 this.btnSimplify = new System.Windows.Forms.Button(); 49 50 ((System.ComponentModel.ISupportInitialize)(this.splitContainer)).BeginInit(); … … 54 55 this.detailsGroupBox.SuspendLayout(); 55 56 this.SuspendLayout(); 56 exportButton.Visible = false;57 57 // 58 // splitContainer58 // flowLayoutPanel 59 59 // 60 // 61 // splitContainer.Panel1 62 // 63 this.splitContainer.Panel1.Controls.Add(this.btnSimplify); 60 this.flowLayoutPanel.Controls.Add(this.btnSimplify); 61 this.flowLayoutPanel.Controls.Add(this.exportButton); 64 62 // 65 63 // btnSimplify 66 64 // 67 this.btnSimplify.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); 68 this.btnSimplify.Location = new System.Drawing.Point(172, 4); 65 this.btnSimplify.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom))); 66 this.btnSimplify.Image = HeuristicLab.Common.Resources.VSImageLibrary.FormulaEvaluator; 67 this.btnSimplify.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft; 69 68 this.btnSimplify.Name = "btnSimplify"; 70 this.btnSimplify.Size = new System.Drawing.Size(75, 23); 71 this.btnSimplify.TabIndex = 6; 72 this.btnSimplify.Text = "Simplify"; 69 this.btnSimplify.Size = new System.Drawing.Size(105, 24); 70 this.btnSimplify.TabIndex = 7; 71 this.btnSimplify.Text = "Simplify Model"; 72 this.btnSimplify.TextAlign = System.Drawing.ContentAlignment.MiddleRight; 73 73 this.btnSimplify.UseVisualStyleBackColor = true; 74 74 this.btnSimplify.Click += new System.EventHandler(this.btn_SimplifyModel_Click); 75 this.toolTip.SetToolTip(this.btnSimplify, "Simplify solution"); 76 // 77 // exportButton 78 // 79 this.exportButton.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom))); 80 this.exportButton.Image = HeuristicLab.Common.Resources.VSImageLibrary.Statistics; 81 this.exportButton.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft; 82 this.exportButton.Name = "exportButton"; 83 this.exportButton.Size = new System.Drawing.Size(105, 24); 84 this.exportButton.TabIndex = 8; 85 this.exportButton.Text = "Export to Excel "; 86 this.exportButton.TextAlign = System.Drawing.ContentAlignment.MiddleRight; 87 this.exportButton.UseVisualStyleBackColor = true; 88 this.exportButton.Click += new System.EventHandler(this.exportButton_Click); 75 89 // 76 90 // SymbolicDiscriminantFunctionClassificationSolutionView … … 89 103 #endregion 90 104 105 protected System.Windows.Forms.SaveFileDialog exportFileDialog; 106 protected System.Windows.Forms.Button exportButton; 91 107 protected System.Windows.Forms.Button btnSimplify; 92 108 } -
trunk/sources/HeuristicLab.Problems.DataAnalysis.Symbolic.Classification.Views/3.4/SymbolicDiscriminantFunctionClassificationSolutionView.cs
r9456 r10540 21 21 22 22 using System; 23 using System.ComponentModel; 23 24 using System.Windows.Forms; 24 25 using HeuristicLab.MainForm; 26 using HeuristicLab.Problems.DataAnalysis.Symbolic.Views; 25 27 using HeuristicLab.Problems.DataAnalysis.Views; 26 28 … … 38 40 } 39 41 42 protected override void SetEnabledStateOfControls() { 43 base.SetEnabledStateOfControls(); 44 btnSimplify.Enabled = Content != null && !Locked; 45 exportButton.Enabled = Content != null && !Locked; 46 } 47 40 48 private void btn_SimplifyModel_Click(object sender, EventArgs e) { 41 49 var view = new InteractiveSymbolicDiscriminantFunctionClassificationSolutionSimplifierView(); … … 43 51 view.Show(); 44 52 } 53 54 private void exportButton_Click(object sender, EventArgs e) { 55 var exporter = new SymbolicSolutionExcelExporter(); 56 exportFileDialog.Filter = exporter.FileTypeFilter; 57 if (exportFileDialog.ShowDialog(this) == DialogResult.OK) { 58 59 var name = exportFileDialog.FileName; 60 using (BackgroundWorker bg = new BackgroundWorker()) { 61 MainFormManager.GetMainForm<MainForm.WindowsForms.MainForm>().AddOperationProgressToView(this, "Exportion solution to " + name + "."); 62 bg.DoWork += (o, a) => exporter.Export(Content, name); 63 bg.RunWorkerCompleted += (o, a) => MainFormManager.GetMainForm<MainForm.WindowsForms.MainForm>().RemoveOperationProgressFromView(this); 64 bg.RunWorkerAsync(); 65 } 66 } 67 } 45 68 } 46 69 } -
trunk/sources/HeuristicLab.Problems.DataAnalysis.Symbolic.Regression.Views/3.4/HeuristicLab.Problems.DataAnalysis.Symbolic.Regression.Views-3.4.csproj
r8600 r10540 157 157 <Private>False</Private> 158 158 </ProjectReference> 159 <ProjectReference Include="..\..\HeuristicLab.Common.Resources\3.3\HeuristicLab.Common.Resources-3.3.csproj"> 160 <Project>{0e27a536-1c4a-4624-a65e-dc4f4f23e3e1}</Project> 161 <Name>HeuristicLab.Common.Resources-3.3</Name> 162 <Private>False</Private> 163 </ProjectReference> 159 164 <ProjectReference Include="..\..\HeuristicLab.Common\3.3\HeuristicLab.Common-3.3.csproj"> 160 165 <Project>{A9AD58B9-3EF9-4CC1-97E5-8D909039FF5C}</Project> … … 284 289 --> 285 290 <PropertyGroup> 286 <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">set Path=%25Path%25;$(ProjectDir);$(SolutionDir)291 <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">set Path=%25Path%25;$(ProjectDir);$(SolutionDir) 287 292 set ProjectDir=$(ProjectDir) 288 293 set SolutionDir=$(SolutionDir) … … 291 296 call PreBuildEvent.cmd 292 297 </PreBuildEvent> 293 <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">298 <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' "> 294 299 export ProjectDir=$(ProjectDir) 295 300 export SolutionDir=$(SolutionDir) -
trunk/sources/HeuristicLab.Problems.DataAnalysis.Symbolic.Regression.Views/3.4/SymbolicRegressionSolutionView.Designer.cs
r9973 r10540 19 19 */ 20 20 #endregion 21 21 22 22 23 namespace HeuristicLab.Problems.DataAnalysis.Symbolic.Regression.Views { … … 45 46 /// </summary> 46 47 private void InitializeComponent() { 48 this.exportButton = new System.Windows.Forms.Button(); 49 this.exportFileDialog = new System.Windows.Forms.SaveFileDialog(); 47 50 this.btnSimplify = new System.Windows.Forms.Button(); 48 51 ((System.ComponentModel.ISupportInitialize)(this.splitContainer)).BeginInit(); … … 54 57 this.SuspendLayout(); 55 58 // 56 // splitContainer59 // flowLayoutPanel 57 60 // 58 // 59 // splitContainer.Panel1 60 // 61 this.splitContainer.Panel1.Controls.Add(this.btnSimplify); 62 // 63 // addButton 64 // 65 this.toolTip.SetToolTip(this.addButton, "Add"); 66 // 67 // removeButton 68 // 69 this.toolTip.SetToolTip(this.removeButton, "Remove"); 61 this.flowLayoutPanel.Controls.Add(this.btnSimplify); 62 this.flowLayoutPanel.Controls.Add(this.exportButton); 70 63 // 71 64 // btnSimplify 72 65 // 73 this.btnSimplify.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); 74 this.btnSimplify.Location = new System.Drawing.Point(172, 4); 66 this.btnSimplify.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom))); 67 this.btnSimplify.Image = HeuristicLab.Common.Resources.VSImageLibrary.FormulaEvaluator; 68 this.btnSimplify.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft; 75 69 this.btnSimplify.Name = "btnSimplify"; 76 this.btnSimplify.Size = new System.Drawing.Size(75, 23); 77 this.btnSimplify.TabIndex = 6; 78 this.btnSimplify.Text = "Simplify"; 70 this.btnSimplify.TabIndex = 7; 71 this.btnSimplify.Size = new System.Drawing.Size(105, 24); 72 this.btnSimplify.Text = "Simplify Model"; 73 this.btnSimplify.TextAlign = System.Drawing.ContentAlignment.MiddleRight; 79 74 this.btnSimplify.UseVisualStyleBackColor = true; 80 75 this.btnSimplify.Click += new System.EventHandler(this.btn_SimplifyModel_Click); 76 this.toolTip.SetToolTip(this.btnSimplify, "Simplify solution"); 77 // 78 // exportButton 79 // 80 this.exportButton.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom))); 81 this.exportButton.Image = HeuristicLab.Common.Resources.VSImageLibrary.Statistics; 82 this.exportButton.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft; 83 this.exportButton.Name = "exportButton"; 84 this.exportButton.Size = new System.Drawing.Size(105, 24); 85 this.exportButton.TabIndex = 8; 86 this.exportButton.Text = "Export to Excel "; 87 this.exportButton.TextAlign = System.Drawing.ContentAlignment.MiddleRight; 88 this.exportButton.UseVisualStyleBackColor = true; 89 this.exportButton.Click += new System.EventHandler(this.exportButton_Click); 81 90 // 82 91 // SymbolicRegressionSolutionView … … 95 104 96 105 #endregion 97 private System.Windows.Forms.Button btnSimplify; 106 protected System.Windows.Forms.SaveFileDialog exportFileDialog; 107 protected System.Windows.Forms.Button exportButton; 108 protected System.Windows.Forms.Button btnSimplify; 98 109 } 99 110 } -
trunk/sources/HeuristicLab.Problems.DataAnalysis.Symbolic.Regression.Views/3.4/SymbolicRegressionSolutionView.cs
r9456 r10540 21 21 22 22 using System; 23 using System.ComponentModel; 23 24 using System.Windows.Forms; 24 25 using HeuristicLab.MainForm; 26 using HeuristicLab.Problems.DataAnalysis.Symbolic.Views; 25 27 using HeuristicLab.Problems.DataAnalysis.Views; 26 28 … … 38 40 } 39 41 42 protected override void SetEnabledStateOfControls() { 43 base.SetEnabledStateOfControls(); 44 btnSimplify.Enabled = Content != null && !Locked; 45 exportButton.Enabled = Content != null && !Locked; 46 } 47 40 48 private void btn_SimplifyModel_Click(object sender, EventArgs e) { 41 49 InteractiveSymbolicRegressionSolutionSimplifierView view = new InteractiveSymbolicRegressionSolutionSimplifierView(); … … 43 51 view.Show(); 44 52 } 53 54 private void exportButton_Click(object sender, EventArgs e) { 55 var exporter = new SymbolicSolutionExcelExporter(); 56 exportFileDialog.Filter = exporter.FileTypeFilter; 57 if (exportFileDialog.ShowDialog(this) == DialogResult.OK) { 58 59 var name = exportFileDialog.FileName; 60 using (BackgroundWorker bg = new BackgroundWorker()) { 61 MainFormManager.GetMainForm<MainForm.WindowsForms.MainForm>().AddOperationProgressToView(this, "Exportion solution to " + name + "."); 62 bg.DoWork += (o, a) => exporter.Export(Content, name); 63 bg.RunWorkerCompleted += (o, a) => MainFormManager.GetMainForm<MainForm.WindowsForms.MainForm>().RemoveOperationProgressFromView(this); 64 bg.RunWorkerAsync(); 65 } 66 } 67 } 45 68 } 46 69 } -
trunk/sources/HeuristicLab.Problems.DataAnalysis.Symbolic.TimeSeriesPrognosis.Views/3.4/HeuristicLab.Problems.DataAnalysis.Symbolic.TimeSeriesPrognosis.Views-3.4.csproj
r8799 r10540 151 151 <Private>False</Private> 152 152 </ProjectReference> 153 <ProjectReference Include="..\..\HeuristicLab.Common.Resources\3.3\HeuristicLab.Common.Resources-3.3.csproj"> 154 <Project>{0e27a536-1c4a-4624-a65e-dc4f4f23e3e1}</Project> 155 <Name>HeuristicLab.Common.Resources-3.3</Name> 156 <Private>False</Private> 157 </ProjectReference> 153 158 <ProjectReference Include="..\..\HeuristicLab.Common\3.3\HeuristicLab.Common-3.3.csproj"> 154 159 <Project>{A9AD58B9-3EF9-4CC1-97E5-8D909039FF5C}</Project> -
trunk/sources/HeuristicLab.Problems.DataAnalysis.Symbolic.TimeSeriesPrognosis.Views/3.4/SymbolicTimeSeriesPrognosisSolutionView.Designer.cs
r9973 r10540 54 54 this.SuspendLayout(); 55 55 // 56 // exportButton56 // flowLayoutPanel 57 57 // 58 this.exportButton.Visible = false; 59 // 60 // splitContainer 61 // 62 // 63 // splitContainer.Panel1 64 // 65 this.splitContainer.Panel1.Controls.Add(this.btnSimplify); 66 // 67 // addButton 68 // 69 this.toolTip.SetToolTip(this.addButton, "Add"); 70 // 71 // removeButton 72 // 73 this.toolTip.SetToolTip(this.removeButton, "Remove"); 58 this.flowLayoutPanel.Controls.Add(this.btnSimplify); 74 59 // 75 60 // btnSimplify 76 61 // 77 this.btnSimplify.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); 78 this.btnSimplify.Location = new System.Drawing.Point(172, 4); 62 this.btnSimplify.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom))); 63 this.btnSimplify.Image = HeuristicLab.Common.Resources.VSImageLibrary.FormulaEvaluator; 64 this.btnSimplify.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft; 79 65 this.btnSimplify.Name = "btnSimplify"; 80 this.btnSimplify.Size = new System.Drawing.Size(75, 23); 81 this.btnSimplify.TabIndex = 6; 82 this.btnSimplify.Text = "Simplify"; 66 this.btnSimplify.TabIndex = 7; 67 this.btnSimplify.Size = new System.Drawing.Size(105, 24); 68 this.btnSimplify.Text = "Simplify Model"; 69 this.btnSimplify.TextAlign = System.Drawing.ContentAlignment.MiddleRight; 83 70 this.btnSimplify.UseVisualStyleBackColor = true; 84 71 this.btnSimplify.Click += new System.EventHandler(this.btn_SimplifyModel_Click); 72 this.toolTip.SetToolTip(this.btnSimplify, "Simplify solution"); 85 73 // 86 74 // SymbolicTimeSeriesPrognosisSolutionView -
trunk/sources/HeuristicLab.Problems.DataAnalysis.Symbolic.TimeSeriesPrognosis.Views/3.4/SymbolicTimeSeriesPrognosisSolutionView.cs
r9462 r10540 38 38 } 39 39 40 protected override void SetEnabledStateOfControls() { 41 base.SetEnabledStateOfControls(); 42 btnSimplify.Enabled = Content != null && !Locked; 43 } 44 40 45 private void btn_SimplifyModel_Click(object sender, EventArgs e) { 41 46 InteractiveSymbolicTimeSeriesPrognosisSolutionSimplifierView view = new InteractiveSymbolicTimeSeriesPrognosisSolutionSimplifierView(); -
trunk/sources/HeuristicLab.Problems.DataAnalysis.Trading.Views/3.4/SolutionView.Designer.cs
r10015 r10540 52 52 this.detailsGroupBox.SuspendLayout(); 53 53 this.SuspendLayout(); 54 this.exportButton.Visible = false;55 54 // 56 // splitContainer 57 // 58 // 59 // itemsGroupBox 60 // 61 this.itemsGroupBox.Text = "Trading Solution"; 62 // 63 // addButton 64 // 65 this.toolTip.SetToolTip(this.addButton, "Add"); 66 // 67 // removeButton 68 // 69 this.toolTip.SetToolTip(this.removeButton, "Remove"); 70 // 71 // RegressionSolutionView 55 // SolutionView 72 56 // 73 57 this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); … … 81 65 this.detailsGroupBox.ResumeLayout(false); 82 66 this.ResumeLayout(false); 83 84 67 } 85 86 68 #endregion 87 69 } -
trunk/sources/HeuristicLab.Problems.DataAnalysis.Trading/3.4/ProblemData.cs
r9989 r10540 1650 1650 OnChanged(); 1651 1651 } 1652 1653 public override void AdjustProblemDataProperties(IDataAnalysisProblemData problemData) { 1654 throw new NotImplementedException("TODO"); 1655 } 1652 1656 } 1653 1657 } -
trunk/sources/HeuristicLab.Problems.DataAnalysis.Views/3.4/Solution Views/ClassificationSolutionView.cs
r10175 r10540 20 20 #endregion 21 21 22 using System;23 22 using System.Windows.Forms; 24 using HeuristicLab.Common;25 23 using HeuristicLab.Core; 26 24 using HeuristicLab.MainForm; 27 using HeuristicLab.PluginInfrastructure;28 25 29 26 namespace HeuristicLab.Problems.DataAnalysis.Views { … … 54 51 } 55 52 #endregion 56 57 protected override bool CheckCompatibilityOfProblemData(IDataAnalysisProblemData problemData) {58 IClassificationProblemData classificationProblemData = problemData as IClassificationProblemData;59 if (classificationProblemData == null) {60 ErrorHandling.ShowErrorDialog(this, new ArgumentException("The problem data is no classification problem data. Instead a " + problemData.GetType().GetPrettyName() + " was provided."));61 return false;62 }63 64 if (!classificationProblemData.TargetVariable.Equals(Content.ProblemData.TargetVariable)) {65 string message = "The target variables are not matching. Old target variable: '"66 + Content.ProblemData.TargetVariable67 + "'. New targetvariable: '" + classificationProblemData.TargetVariable + "'";68 ErrorHandling.ShowErrorDialog(this, new InvalidOperationException(message));69 return false;70 }71 72 return base.CheckCompatibilityOfProblemData(problemData);73 }74 53 } 75 54 } -
trunk/sources/HeuristicLab.Problems.DataAnalysis.Views/3.4/Solution Views/DataAnalysisSolutionView.Designer.cs
r10175 r10540 19 19 */ 20 20 #endregion 21 22 21 23 22 namespace HeuristicLab.Problems.DataAnalysis.Views { … … 46 45 /// </summary> 47 46 private void InitializeComponent() { 48 this.exportButton = new System.Windows.Forms.Button(); 49 this.exportFileDialog = new System.Windows.Forms.SaveFileDialog(); 47 this.flowLayoutPanel = new System.Windows.Forms.FlowLayoutPanel(); 50 48 this.loadProblemDataButton = new System.Windows.Forms.Button(); 51 49 this.loadProblemDataFileDialog = new System.Windows.Forms.OpenFileDialog(); … … 57 55 this.detailsGroupBox.SuspendLayout(); 58 56 this.SuspendLayout(); 57 // 58 // itemslistView 59 // 60 this.itemsListView.Location = new System.Drawing.Point(this.itemsListView.Location.X, this.itemsListView.Location.Y + 3); 61 // 62 // detailsGroupBox 63 // 64 this.detailsGroupBox.Location = new System.Drawing.Point(this.detailsGroupBox.Location.X, this.detailsGroupBox.Location.Y + 3); 65 // 59 66 // 60 67 // splitContainer … … 63 70 // splitContainer.Panel2 64 71 // 65 this.splitContainer.Panel2.Controls.Add(this.loadProblemDataButton); 66 this.splitContainer.Panel2.Controls.Add(this.exportButton); 72 this.splitContainer.Panel2.Controls.Add(this.flowLayoutPanel); 67 73 // 68 74 // itemsGroupBox 69 75 // 70 76 this.itemsGroupBox.Text = "Data Analysis Solution"; 71 // 72 // addButton 73 // 74 this.toolTip.SetToolTip(this.addButton, "Add"); 75 // 76 // removeButton 77 // 78 this.toolTip.SetToolTip(this.removeButton, "Remove"); 79 // 80 // exportButton 81 // 82 this.exportButton.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); 83 this.exportButton.Location = new System.Drawing.Point(194, 3); 84 this.exportButton.Name = "exportButton"; 85 this.exportButton.Size = new System.Drawing.Size(75, 24); 86 this.exportButton.TabIndex = 6; 87 this.exportButton.Text = "Export"; 88 this.exportButton.UseVisualStyleBackColor = true; 89 this.exportButton.Click += new System.EventHandler(this.exportButton_Click); 77 // 78 // flowLayoutPanel 79 // 80 this.flowLayoutPanel.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right))); 81 this.flowLayoutPanel.FlowDirection = System.Windows.Forms.FlowDirection.LeftToRight; 82 this.flowLayoutPanel.Location = new System.Drawing.Point(0, 0); 83 this.flowLayoutPanel.Padding = new System.Windows.Forms.Padding(3, 0, 3, 0); 84 this.flowLayoutPanel.Size = new System.Drawing.Size(266, 30); 85 this.flowLayoutPanel.Controls.Add(this.loadProblemDataButton); 90 86 // 91 87 // loadProblemDataButton 92 88 // 93 this.loadProblemDataButton.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left))); 94 this.loadProblemDataButton.Location = new System.Drawing.Point(3, 3); 89 this.loadProblemDataButton.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom))); 90 this.loadProblemDataButton.AutoSize = true; 91 this.loadProblemDataButton.Image = HeuristicLab.Common.Resources.VSImageLibrary.Open; 92 this.loadProblemDataButton.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft; 95 93 this.loadProblemDataButton.Name = "loadProblemDataButton"; 96 this.loadProblemDataButton.Size = new System.Drawing.Size(75, 24); 97 this.loadProblemDataButton.TabIndex = 7; 98 this.loadProblemDataButton.Text = "Load Data"; 94 this.loadProblemDataButton.Size = new System.Drawing.Size(105, 24); 95 this.loadProblemDataButton.TabIndex = 6; 96 this.loadProblemDataButton.Text = "Load new Data"; 97 this.loadProblemDataButton.TextAlign = System.Drawing.ContentAlignment.MiddleRight; 99 98 this.loadProblemDataButton.UseVisualStyleBackColor = true; 100 99 this.loadProblemDataButton.Click += new System.EventHandler(this.loadProblemDataButton_Click); … … 122 121 #endregion 123 122 124 private System.Windows.Forms.SaveFileDialog exportFileDialog;125 protected System.Windows.Forms.Button exportButton;126 123 protected System.Windows.Forms.Button loadProblemDataButton; 127 124 protected System.Windows.Forms.OpenFileDialog loadProblemDataFileDialog; 125 protected System.Windows.Forms.FlowLayoutPanel flowLayoutPanel; 128 126 129 127 } -
trunk/sources/HeuristicLab.Problems.DataAnalysis.Views/3.4/Solution Views/DataAnalysisSolutionView.cs
r10175 r10540 22 22 using System; 23 23 using System.Collections.Generic; 24 using System.ComponentModel;25 24 using System.Drawing; 26 25 using System.Linq; 27 using System.Text;28 26 using System.Windows.Forms; 29 27 using HeuristicLab.Core; … … 54 52 addButton.Enabled = false; 55 53 removeButton.Enabled = false; 56 if (Content == null) { 57 exportButton.Enabled = false; 58 loadProblemDataButton.Enabled = false; 59 } else { 60 exportButton.Enabled = !Locked; 61 loadProblemDataButton.Enabled = !Locked; 62 } 54 loadProblemDataButton.Enabled = Content != null && !Locked; 63 55 } 64 56 … … 133 125 protected virtual void loadProblemDataButton_Click(object sender, EventArgs e) { 134 126 if (loadProblemDataFileDialog.ShowDialog(this) != DialogResult.OK) return; 135 object hlFile = XmlParser.Deserialize(loadProblemDataFileDialog.FileName); 136 137 IDataAnalysisProblemData problemData = null; 138 if (hlFile is IDataAnalysisProblemData) { 139 problemData = (IDataAnalysisProblemData)hlFile; 140 } else if (hlFile is IDataAnalysisProblem) { 141 problemData = ((IDataAnalysisProblem)hlFile).ProblemData; 142 } else if (hlFile is IDataAnalysisSolution) { 143 problemData = ((IDataAnalysisSolution)hlFile).ProblemData; 144 } 145 146 if (problemData == null) { 147 ErrorHandling.ShowErrorDialog(this, new NullReferenceException("The problem data is null." + Environment.NewLine 148 + "The .hl-file contains no DataAnalysisProblemData or DataAnylsisProblem.")); 149 return; 150 } 151 152 if (CheckCompatibilityOfProblemData(problemData)) { 127 try { 128 object hlFile = XmlParser.Deserialize(loadProblemDataFileDialog.FileName); 129 130 IDataAnalysisProblemData problemData = null; 131 if (hlFile is IDataAnalysisProblemData) { 132 problemData = (IDataAnalysisProblemData)hlFile; 133 } else if (hlFile is IDataAnalysisProblem) { 134 problemData = ((IDataAnalysisProblem)hlFile).ProblemData; 135 } else if (hlFile is IDataAnalysisSolution) { 136 problemData = ((IDataAnalysisSolution)hlFile).ProblemData; 137 } 138 139 if (problemData == null) 140 throw new InvalidOperationException("The chosen HeuristicLab file does not contain a ProblemData, Problem, or DataAnalysisSolution."); 141 153 142 var solution = (IDataAnalysisSolution)Content.Clone(); 143 problemData.AdjustProblemDataProperties(solution.ProblemData); 154 144 solution.ProblemData = problemData; 155 solution.Name += " with loaded problem data (" + loadProblemDataFileDialog + ")"; 145 if (!solution.Name.EndsWith(" with loaded problemData")) 146 solution.Name += " with loaded problemData"; 156 147 MainFormManager.MainForm.ShowContent(solution); 157 148 } 158 } 159 160 private void exportButton_Click(object sender, EventArgs e) { 161 var exporters = ApplicationManager.Manager.GetInstances<IDataAnalysisSolutionExporter>() 162 .Where(exporter => exporter.Supports(Content)).ToArray(); 163 exportFileDialog.Filter = exporters.Skip(1) 164 .Aggregate(exporters.First().FileTypeFilter, (s, exporter) => s + "|" + exporter.FileTypeFilter); 165 var result = exportFileDialog.ShowDialog(); 166 if (result == DialogResult.OK) { 167 168 var name = exportFileDialog.FileName; 169 var selectedExporter = exporters.Single(exporter => exporter.FileTypeFilter == exportFileDialog.Filter); 170 171 using (BackgroundWorker bg = new BackgroundWorker()) { 172 MainFormManager.GetMainForm<MainForm.WindowsForms.MainForm>().AddOperationProgressToView(this, "Exportion solution to " + name + "."); 173 bg.DoWork += (_, __) => selectedExporter.Export(Content, name); 174 bg.RunWorkerCompleted += (_, __) => MainFormManager.GetMainForm<MainForm.WindowsForms.MainForm>().RemoveOperationProgressFromView(this); 175 bg.RunWorkerAsync(); 176 } 149 catch (InvalidOperationException invalidOperationException) { 150 ErrorHandling.ShowErrorDialog(this, invalidOperationException); 151 } 152 catch (ArgumentException argumentException) { 153 ErrorHandling.ShowErrorDialog(this, argumentException); 177 154 } 178 155 } … … 224 201 validDragOperation = false; 225 202 if (ReadOnly) return; 203 if (e.Effect != DragDropEffects.Copy) return; 226 204 227 205 var dropData = e.Data.GetData(HeuristicLab.Common.Constants.DragDropDataFormat); 228 if (dropData is DataAnalysisProblemData) validDragOperation = true;206 if (dropData is IDataAnalysisProblemData) validDragOperation = true; 229 207 else if (dropData is IDataAnalysisProblem) validDragOperation = true; 230 208 else if (dropData is IValueParameter) { … … 248 226 } 249 227 if (problemData == null) return; 250 CheckCompatibilityOfProblemData(problemData); 251 Content.ProblemData = (IDataAnalysisProblemData)problemData.Clone(); 228 229 try { 230 problemData.AdjustProblemDataProperties(Content.ProblemData); 231 Content.ProblemData = problemData; 232 233 if (!Content.Name.EndsWith(" with changed problemData")) 234 Content.Name += " with changed problemData"; 235 } 236 catch (InvalidOperationException invalidOperationException) { 237 ErrorHandling.ShowErrorDialog(this, invalidOperationException); 238 } 239 catch (ArgumentException argumentException) { 240 ErrorHandling.ShowErrorDialog(this, argumentException); 241 } 252 242 } 253 243 #endregion 254 244 255 #region load problem data256 protected virtual bool CheckCompatibilityOfProblemData(IDataAnalysisProblemData problemData) {257 StringBuilder message = new StringBuilder();258 List<string> variables = problemData.InputVariables.Select(x => x.Value).ToList();259 foreach (var item in Content.ProblemData.InputVariables.CheckedItems) {260 if (!variables.Contains(item.Value.Value))261 message.AppendLine("Input variable '" + item.Value.Value + "' is not in the new problem data.");262 }263 264 if (message.Length != 0) {265 ErrorHandling.ShowErrorDialog(this, new InvalidOperationException(message.ToString()));266 return false;267 }268 return true;269 }270 #endregion271 245 } 272 246 } -
trunk/sources/HeuristicLab.Problems.DataAnalysis.Views/3.4/Solution Views/RegressionSolutionView.cs
r10175 r10540 20 20 #endregion 21 21 22 using System;23 22 using System.Windows.Forms; 24 using HeuristicLab.Common;25 23 using HeuristicLab.Core; 26 24 using HeuristicLab.MainForm; 27 using HeuristicLab.PluginInfrastructure;28 25 29 26 namespace HeuristicLab.Problems.DataAnalysis.Views { … … 54 51 } 55 52 #endregion 56 57 protected override bool CheckCompatibilityOfProblemData(IDataAnalysisProblemData problemData) {58 IRegressionProblemData regressionProblemData = problemData as IRegressionProblemData;59 if (regressionProblemData == null) {60 ErrorHandling.ShowErrorDialog(this, new ArgumentException("The problem data is no regression problem data. Instead a " + problemData.GetType().GetPrettyName() + " was provided."));61 return false;62 }63 64 if (!regressionProblemData.TargetVariable.Equals(Content.ProblemData.TargetVariable)) {65 string message = "The target variables are not matching. Old target variable: '"66 + Content.ProblemData.TargetVariable67 + "'. New targetvariable: '" + regressionProblemData.TargetVariable + "'";68 ErrorHandling.ShowErrorDialog(this, new InvalidOperationException(message));69 return false;70 }71 72 return base.CheckCompatibilityOfProblemData(problemData);73 }74 53 } 75 54 } -
trunk/sources/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/Classification/ClassificationProblemData.cs
r9456 r10540 221 221 public string TargetVariable { 222 222 get { return TargetVariableParameter.Value.Value; } 223 set { 224 if (value == null) throw new ArgumentNullException("targetVariable", "The provided value for the targetVariable is null."); 225 if (value == TargetVariable) return; 226 227 228 var matchingParameterValue = TargetVariableParameter.ValidValues.FirstOrDefault(v => v.Value == value); 229 if (matchingParameterValue == null) throw new ArgumentException("The provided value is not valid as the targetVariable.", "targetVariable"); 230 TargetVariableParameter.Value = matchingParameterValue; 231 } 223 232 } 224 233 … … 408 417 } 409 418 #endregion 419 420 protected override bool IsProblemDataCompatible(IDataAnalysisProblemData problemData, out string errorMessage) { 421 if (problemData == null) throw new ArgumentNullException("problemData", "The provided problemData is null."); 422 IClassificationProblemData classificationProblemData = problemData as IClassificationProblemData; 423 if (classificationProblemData == null) 424 throw new ArgumentException("The problem data is no classification problem data. Instead a " + problemData.GetType().GetPrettyName() + " was provided.", "problemData"); 425 426 var returnValue = base.IsProblemDataCompatible(classificationProblemData, out errorMessage); 427 //check targetVariable 428 if (classificationProblemData.InputVariables.All(var => var.Value != TargetVariable)) { 429 errorMessage = string.Format("The target variable {0} is not present in the new problem data.", TargetVariable) 430 + Environment.NewLine + errorMessage; 431 return false; 432 } 433 434 var newClassValues = classificationProblemData.Dataset.GetDoubleValues(TargetVariable).Distinct().OrderBy(x => x); 435 if (!newClassValues.SequenceEqual(ClassValues)) { 436 errorMessage = errorMessage + string.Format("The class values differ in the provided classification problem data."); 437 return false; 438 } 439 440 return returnValue; 441 } 442 443 public override void AdjustProblemDataProperties(IDataAnalysisProblemData problemData) { 444 if (problemData == null) throw new ArgumentNullException("problemData", "The provided problemData is null."); 445 ClassificationProblemData classificationProblemData = problemData as ClassificationProblemData; 446 if (classificationProblemData == null) 447 throw new ArgumentException("The problem data is not a classification problem data. Instead a " + problemData.GetType().GetPrettyName() + " was provided.", "problemData"); 448 449 base.AdjustProblemDataProperties(problemData); 450 TargetVariable = classificationProblemData.TargetVariable; 451 for (int i = 0; i < classificationProblemData.ClassNames.Count(); i++) 452 ClassNamesParameter.Value[i, 0] = classificationProblemData.ClassNames.ElementAt(i); 453 454 for (int i = 0; i < Classes; i++) { 455 for (int j = 0; j < Classes; j++) { 456 ClassificationPenaltiesParameter.Value[i, j] = classificationProblemData.GetClassificationPenalty(ClassValuesCache[i], ClassValuesCache[j]); 457 } 458 } 459 } 410 460 } 411 461 } -
trunk/sources/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/DataAnalysisProblemData.cs
r9456 r10540 23 23 using System.Collections.Generic; 24 24 using System.Linq; 25 using System.Text; 25 26 using HeuristicLab.Collections; 26 27 using HeuristicLab.Common; … … 158 159 if (listeners != null) listeners(this, EventArgs.Empty); 159 160 } 161 162 protected virtual bool IsProblemDataCompatible(IDataAnalysisProblemData problemData, out string errorMessage) { 163 errorMessage = string.Empty; 164 if (problemData == null) throw new ArgumentNullException("problemData", "The provided problemData is null."); 165 166 //check allowed input variables 167 StringBuilder message = new StringBuilder(); 168 var variables = new HashSet<string>(problemData.InputVariables.Select(x => x.Value)); 169 foreach (var item in AllowedInputVariables) { 170 if (!variables.Contains(item)) 171 message.AppendLine("Input variable '" + item + "' is not present in the new problem data."); 172 } 173 174 if (message.Length != 0) { 175 errorMessage = message.ToString(); 176 return false; 177 } 178 return true; 179 180 } 181 182 public virtual void AdjustProblemDataProperties(IDataAnalysisProblemData problemData) { 183 DataAnalysisProblemData data = problemData as DataAnalysisProblemData; 184 if (data == null) throw new ArgumentException("The problem data is not a data analysis problem data. Instead a " + problemData.GetType().GetPrettyName() + " was provided.", "problemData"); 185 186 string errorMessage; 187 if (!data.IsProblemDataCompatible(this, out errorMessage)) { 188 throw new InvalidOperationException(errorMessage); 189 } 190 191 foreach (var inputVariable in InputVariables) { 192 var variable = data.InputVariables.FirstOrDefault(i => i.Value == inputVariable.Value); 193 InputVariables.SetItemCheckedState(inputVariable, variable != null && data.InputVariables.ItemChecked(variable)); 194 } 195 196 TrainingPartition.Start = TrainingPartition.End = 0; 197 TestPartition.Start = 0; 198 TestPartition.End = Dataset.Rows; 199 } 160 200 } 161 201 } -
trunk/sources/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/Regression/RegressionProblemData.cs
r9456 r10540 100 100 public string TargetVariable { 101 101 get { return TargetVariableParameter.Value.Value; } 102 set { 103 if (value == null) throw new ArgumentNullException("targetVariable", "The provided value for the targetVariable is null."); 104 if (value == TargetVariable) return; 105 106 var matchingParameterValue = TargetVariableParameter.ValidValues.FirstOrDefault(v => v.Value == value); 107 if (matchingParameterValue == null) throw new ArgumentException("The provided value is not valid as the targetVariable.", "targetVariable"); 108 TargetVariableParameter.Value = matchingParameterValue; 109 } 102 110 } 103 111 … … 142 150 OnChanged(); 143 151 } 152 153 protected override bool IsProblemDataCompatible(IDataAnalysisProblemData problemData, out string errorMessage) { 154 if (problemData == null) throw new ArgumentNullException("problemData", "The provided problemData is null."); 155 IRegressionProblemData regressionProblemData = problemData as IRegressionProblemData; 156 if (regressionProblemData == null) 157 throw new ArgumentException("The problem data is not a regression problem data. Instead a " + problemData.GetType().GetPrettyName() + " was provided.", "problemData"); 158 159 var returnValue = base.IsProblemDataCompatible(problemData, out errorMessage); 160 //check targetVariable 161 if (problemData.InputVariables.All(var => var.Value != TargetVariable)) { 162 errorMessage = string.Format("The target variable {0} is not present in the new problem data.", TargetVariable) 163 + Environment.NewLine + errorMessage; 164 return false; 165 } 166 return returnValue; 167 } 168 169 public override void AdjustProblemDataProperties(IDataAnalysisProblemData problemData) { 170 if (problemData == null) throw new ArgumentNullException("problemData", "The provided problemData is null."); 171 RegressionProblemData regressionProblemData = problemData as RegressionProblemData; 172 if (regressionProblemData == null) 173 throw new ArgumentException("The problem data is not a regression problem data. Instead a " + problemData.GetType().GetPrettyName() + " was provided.", "problemData"); 174 175 base.AdjustProblemDataProperties(problemData); 176 TargetVariable = regressionProblemData.TargetVariable; 177 } 144 178 } 145 179 } -
trunk/sources/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/TimeSeriesPrognosis/TimeSeriesPrognosisProblemData.cs
r9552 r10540 1621 1621 } 1622 1622 1623 public override void AdjustProblemDataProperties(IDataAnalysisProblemData problemData) { 1624 TimeSeriesPrognosisProblemData timeSeriesProblemData = problemData as TimeSeriesPrognosisProblemData; 1625 if (timeSeriesProblemData == null) 1626 throw new ArgumentException("The problem data is not a timeseries problem data. Instead a " + problemData.GetType().GetPrettyName() + " was provided.", "problemData"); 1627 1628 base.AdjustProblemDataProperties(problemData); 1629 1630 TrainingHorizon = timeSeriesProblemData.TrainingHorizon; 1631 TestHorizon = timeSeriesProblemData.TestHorizon; 1632 } 1633 1623 1634 } 1624 1635 } -
trunk/sources/HeuristicLab.Problems.DataAnalysis/3.4/Interfaces/Classification/IClassificationProblemData.cs
r9456 r10540 23 23 namespace HeuristicLab.Problems.DataAnalysis { 24 24 public interface IClassificationProblemData : IDataAnalysisProblemData { 25 string TargetVariable { get; }25 string TargetVariable { get; set; } 26 26 27 27 IEnumerable<string> ClassNames { get; } -
trunk/sources/HeuristicLab.Problems.DataAnalysis/3.4/Interfaces/IDataAnalysisProblemData.cs
r9456 r10540 43 43 44 44 event EventHandler Changed; 45 46 void AdjustProblemDataProperties(IDataAnalysisProblemData problemData); 45 47 } 46 48 } -
trunk/sources/HeuristicLab.Problems.DataAnalysis/3.4/Interfaces/Regression/IRegressionProblemData.cs
r9456 r10540 22 22 namespace HeuristicLab.Problems.DataAnalysis { 23 23 public interface IRegressionProblemData : IDataAnalysisProblemData { 24 string TargetVariable { get; }24 string TargetVariable { get; set; } 25 25 } 26 26 }
Note: See TracChangeset
for help on using the changeset viewer.