diff --git a/instat/dlgCorrelation.designer.vb b/instat/dlgCorrelation.designer.vb index 9a18f6f1328..0a6f76ab5e2 100644 --- a/instat/dlgCorrelation.designer.vb +++ b/instat/dlgCorrelation.designer.vb @@ -30,7 +30,7 @@ Partial Class dlgCorrelation Me.rdoSpearman = New System.Windows.Forms.RadioButton() Me.rdoKendall = New System.Windows.Forms.RadioButton() Me.rdoPearson = New System.Windows.Forms.RadioButton() - Me.cmdPlots = New System.Windows.Forms.Button() + Me.cmdCorrplot = New System.Windows.Forms.Button() Me.grpMissing = New System.Windows.Forms.GroupBox() Me.rdoPairwise = New System.Windows.Forms.RadioButton() Me.rdoCompleteRowsOnly = New System.Windows.Forms.RadioButton() @@ -135,15 +135,15 @@ Partial Class dlgCorrelation Me.rdoPearson.Text = "Pearson" Me.rdoPearson.UseVisualStyleBackColor = True ' - 'cmdPlots + 'cmdCorrplot ' - Me.cmdPlots.Location = New System.Drawing.Point(332, 293) - Me.cmdPlots.Name = "cmdPlots" - Me.cmdPlots.Size = New System.Drawing.Size(75, 23) - Me.cmdPlots.TabIndex = 11 - Me.cmdPlots.Tag = "Plots" - Me.cmdPlots.Text = "Plots" - Me.cmdPlots.UseVisualStyleBackColor = True + Me.cmdCorrplot.Location = New System.Drawing.Point(332, 293) + Me.cmdCorrplot.Name = "cmdCorrplot" + Me.cmdCorrplot.Size = New System.Drawing.Size(75, 23) + Me.cmdCorrplot.TabIndex = 11 + Me.cmdCorrplot.Tag = "corrplot" + Me.cmdCorrplot.Text = "corrplot" + Me.cmdCorrplot.UseVisualStyleBackColor = True ' 'grpMissing ' @@ -201,6 +201,7 @@ Partial Class dlgCorrelation ' Me.ucrReceiverSecondColumn.Location = New System.Drawing.Point(301, 181) Me.ucrReceiverSecondColumn.Name = "ucrReceiverSecondColumn" + Me.ucrReceiverSecondColumn.Selector = Nothing Me.ucrReceiverSecondColumn.Size = New System.Drawing.Size(106, 26) Me.ucrReceiverSecondColumn.TabIndex = 6 ' @@ -208,6 +209,7 @@ Partial Class dlgCorrelation ' Me.ucrReceiverFirstColumn.Location = New System.Drawing.Point(301, 129) Me.ucrReceiverFirstColumn.Name = "ucrReceiverFirstColumn" + Me.ucrReceiverFirstColumn.Selector = Nothing Me.ucrReceiverFirstColumn.Size = New System.Drawing.Size(106, 26) Me.ucrReceiverFirstColumn.TabIndex = 5 ' @@ -229,6 +231,7 @@ Partial Class dlgCorrelation ' Me.ucrReceiverMultipleColumns.Location = New System.Drawing.Point(278, 112) Me.ucrReceiverMultipleColumns.Name = "ucrReceiverMultipleColumns" + Me.ucrReceiverMultipleColumns.Selector = Nothing Me.ucrReceiverMultipleColumns.Size = New System.Drawing.Size(121, 104) Me.ucrReceiverMultipleColumns.TabIndex = 15 ' @@ -241,7 +244,7 @@ Partial Class dlgCorrelation Me.Controls.Add(Me.lblConfInterval) Me.Controls.Add(Me.txtConfidenceInterval) Me.Controls.Add(Me.grpMissing) - Me.Controls.Add(Me.cmdPlots) + Me.Controls.Add(Me.cmdCorrplot) Me.Controls.Add(Me.grpMethod) Me.Controls.Add(Me.lblSecondColumn) Me.Controls.Add(Me.lblFirstColumn) @@ -275,7 +278,7 @@ Partial Class dlgCorrelation Friend WithEvents rdoSpearman As RadioButton Friend WithEvents rdoKendall As RadioButton Friend WithEvents rdoPearson As RadioButton - Friend WithEvents cmdPlots As Button + Friend WithEvents cmdCorrplot As Button Friend WithEvents grpMissing As GroupBox Friend WithEvents rdoPairwise As RadioButton Friend WithEvents rdoCompleteRowsOnly As RadioButton diff --git a/instat/dlgCorrelation.vb b/instat/dlgCorrelation.vb index e476f41022f..5ca90630f2e 100644 --- a/instat/dlgCorrelation.vb +++ b/instat/dlgCorrelation.vb @@ -14,46 +14,82 @@ ' You should have received a copy of the GNU General Public License k ' along with this program. If not, see . Imports instat.Translations + Public Class dlgCorrelation + Public bFirstLoad As Boolean = True + Public bIsTwoColumnFunction As Boolean + Private Sub dlgCorrelation_Load(sender As Object, e As EventArgs) Handles MyBase.Load 'Set properties needed on load ucrBase.clsRsyntax.iCallType = 2 ucrReceiverFirstColumn.Selector = ucrSelectorDataFrameVarAddRemove ucrReceiverSecondColumn.Selector = ucrSelectorDataFrameVarAddRemove ucrReceiverMultipleColumns.Selector = ucrSelectorDataFrameVarAddRemove + ucrReceiverFirstColumn.SetDataType("numeric") + ucrReceiverSecondColumn.SetDataType("numeric") + ucrReceiverMultipleColumns.SetDataType("numeric") + autoTranslate(Me) - 'this default is independent of TwoColumn/MultipleColumn option so can be set here - rdoPearson.Checked = True - ucrBase.clsRsyntax.AddParameter("method", Chr(34) & "pearson" & Chr(34)) + ucrBase.iHelpTopicID = 316 + + If bFirstLoad Then + SetDefaults() + bFirstLoad = False + End If + + If bIsTwoColumnFunction Then + TestOKEnabledForTwoColumns() + Else + TestOKEnabledForMultipleColumns() + End If - 'default is the TwoColumn option + End Sub + + Private Sub SetDefaults() + ucrSelectorDataFrameVarAddRemove.Reset() + ucrSelectorDataFrameVarAddRemove.Focus() + rdoPearson.Checked = True rdoTwoColumns.Checked = True - SetTwoColumnAsFunction() + TestOKEnabledForTwoColumns() End Sub - Private Sub ucrReceiverFirstColumn_Leave(sender As Object, e As EventArgs) Handles ucrReceiverFirstColumn.Leave + + + Private Sub ucrReceiverFirstColumn_SelectionChanged(sender As Object, e As EventArgs) Handles ucrReceiverFirstColumn.SelectionChanged ucrBase.clsRsyntax.AddParameter("x", clsRFunctionParameter:=ucrReceiverFirstColumn.GetVariables()) + TestOKEnabledForTwoColumns() End Sub - Private Sub ucrReceiverSecondColumn_Leave(sender As Object, e As EventArgs) Handles ucrReceiverSecondColumn.Leave + Private Sub ucrReceiverSecondColumn_SelectionChanged(sender As Object, e As EventArgs) Handles ucrReceiverSecondColumn.SelectionChanged ucrBase.clsRsyntax.AddParameter("y", clsRFunctionParameter:=ucrReceiverSecondColumn.GetVariables()) + TestOKEnabledforTwoColumns() + End Sub - Private Sub ucrReceiverMultipleColumns_Leave(sender As Object, e As EventArgs) Handles ucrReceiverMultipleColumns.Leave + Private Sub ucrReceiverMultipleColumns_SelectionChanged() Handles ucrReceiverMultipleColumns.SelectionChanged ucrBase.clsRsyntax.AddParameter("x", clsRFunctionParameter:=ucrReceiverMultipleColumns.GetVariables()) + TestOKEnabledForMultipleColumns() End Sub 'put all rdo button checked changed in one sub to make it shorter Private Sub rdoForMethodsCheckedChanged(sender As Object, e As EventArgs) Handles rdoPearson.CheckedChanged, rdoKendall.CheckedChanged, rdoSpearman.CheckedChanged If rdoPearson.Checked Then ucrBase.clsRsyntax.AddParameter("method", Chr(34) & "pearson" & Chr(34)) + If frmMain.clsInstatOptions.bIncludeRDefaultParameters Then + ucrBase.clsRsyntax.AddParameter("method", Chr(34) & "pearson" & Chr(34)) + Else + ucrBase.clsRsyntax.RemoveParameter("method") + End If ElseIf rdoKendall.Checked Then ucrBase.clsRsyntax.AddParameter("method", Chr(34) & "kendall" & Chr(34)) + ElseIf rdoSpearman.Checked Then ucrBase.clsRsyntax.AddParameter("method", Chr(34) & "spearman" & Chr(34)) + Else ucrBase.clsRsyntax.RemoveParameter("method") + 'the else case should never happen but is there just in case End If End Sub @@ -65,10 +101,15 @@ Public Class dlgCorrelation Private Sub SetUseParameter() If rdoCompleteRowsOnly.Checked Then ucrBase.clsRsyntax.AddParameter("use", Chr(34) & "pairwise.complete.obs" & Chr(34)) + + ElseIf rdoPairwise.Checked Then ucrBase.clsRsyntax.AddParameter("use", Chr(34) & "complete.obs" & Chr(34)) + + Else ucrBase.clsRsyntax.RemoveParameter("use") + End If End Sub @@ -79,7 +120,7 @@ Public Class dlgCorrelation ucrBase.clsRsyntax.SetFunction("cor.test") 'Set what should be visible/invisible grpMissing.Visible = False - cmdPlots.Visible = False + cmdCorrplot.Visible = False lblConfInterval.Visible = True txtConfidenceInterval.Visible = True ucrReceiverFirstColumn.Visible = True @@ -96,6 +137,9 @@ Public Class dlgCorrelation ucrBase.clsRsyntax.AddParameter("y", clsRFunctionParameter:=ucrReceiverSecondColumn.GetVariables()) ucrBase.clsRsyntax.AddParameter("alternative", Chr(34) & "two.sided" & Chr(34)) ucrBase.clsRsyntax.AddParameter("exact", "NULL") + bIsTwoColumnFunction = True + + End Sub Private Sub SetMultipleColumnAsFunction() @@ -104,7 +148,7 @@ Public Class dlgCorrelation ucrBase.clsRsyntax.SetFunction("cor") 'Set what should be visible/invisible grpMissing.Visible = True - cmdPlots.Visible = True + cmdCorrplot.Visible = True lblConfInterval.Visible = False txtConfidenceInterval.Visible = False ucrReceiverFirstColumn.Visible = False @@ -118,6 +162,7 @@ Public Class dlgCorrelation 'Add back in parameters they may have been removed in TwoColumn case SetUseParameter() ucrBase.clsRsyntax.AddParameter("x", clsRFunctionParameter:=ucrReceiverMultipleColumns.GetVariables()) + bIsTwoColumnFunction = False End Sub @@ -132,4 +177,27 @@ Public Class dlgCorrelation Private Sub txtConfidenceInterval_Leave(sender As Object, e As EventArgs) Handles txtConfidenceInterval.Leave ucrBase.clsRsyntax.AddParameter("conf.level", txtConfidenceInterval.Text) End Sub + Private Sub ucrBase_ClickReset(sender As Object, e As EventArgs) Handles ucrBase.ClickReset + SetDefaults() + End Sub + + Private Sub cmdPlots_Click(sender As Object, e As EventArgs) Handles cmdCorrplot.Click + sdgCorrPlot.ShowDialog() + End Sub + Private Sub TestOKEnabledForTwoColumns() + If ucrReceiverFirstColumn.IsEmpty() = False And ucrReceiverSecondColumn.IsEmpty() = False And (rdoPearson.Checked = True Or rdoKendall.Checked = True Or rdoSpearman.Checked = True) Then + ucrBase.OKEnabled(True) + Else + ucrBase.OKEnabled(False) + End If + End Sub + Private Sub TestOKEnabledForMultipleColumns() + If ucrReceiverMultipleColumns.IsEmpty() = False And ucrReceiverMultipleColumns.lstSelectedVariables.Items.Count > 1 And (rdoCompleteRowsOnly.Checked = True Or rdoPairwise.Checked = True) AndAlso (rdoPearson.Checked = True Or rdoKendall.Checked = True Or rdoSpearman.Checked = True) Then + ucrBase.OKEnabled(True) + Else + ucrBase.OKEnabled(False) + End If + + + End Sub End Class \ No newline at end of file diff --git a/instat/dlgOneWayAnova.vb b/instat/dlgOneWayAnova.vb index 14823c8ffa0..1c68942e2fe 100644 --- a/instat/dlgOneWayAnova.vb +++ b/instat/dlgOneWayAnova.vb @@ -1,62 +1,83 @@ -' Instat-R -' Copyright (C) 2015 -' -' This program is free software: you can redistribute it and/or modify -' it under the terms of the GNU General Public License as published by -' the Free Software Foundation, either version 3 of the License, or -' (at your option) any later version. -' -' This program is distributed in the hope that it will be useful, -' but WITHOUT ANY WARRANTY; without even the implied warranty of -' MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -' GNU General Public License for more details. -' -' You should have received a copy of the GNU General Public License k -' along with this program. If not, see . +' Instat-R +' Copyright (C) 2015 +' +' This program is free software: you can redistribute it and/or modify +' it under the terms of the GNU General Public License as published by +' the Free Software Foundation, either version 3 of the License, or +' (at your option) any later version. +' +' This program is distributed in the hope that it will be useful, +' but WITHOUT ANY WARRANTY; without even the implied warranty of +' MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +' GNU General Public License for more details. +' +' You should have received a copy of the GNU General Public License k +' along with this program. If not, see . Imports instat.Translations + Public Class dlgOneWayANOVA - Private Sub dlgOneWayAnova_Load(sender As Object, e As EventArgs) Handles MyBase.Load + + Public bFirstLoad As Boolean = True + Dim clsModel As New ROperator + + Private Sub dlgOneWayAnova_Load(sender As Object, e As EventArgs) Handles MyBase.Load + If bFirstLoad Then + InitialiseDialog() + SetDefaultSettings() + bFirstLoad = False + End If + + End Sub + + Private Sub InitialiseDialog() ucrBase.clsRsyntax.SetFunction("aov") ucrBase.clsRsyntax.iCallType = 2 ucrYVariate.Selector = ucrAddRemoveDataFrame - ucrYVariate.SetMeAsReceiver() ucrFactor.Selector = ucrAddRemoveDataFrame ucrFactor.SetDataType("factor") - ucrBase.clsRsyntax.AddParameter("data", clsRFunctionParameter:=ucrAddRemoveDataFrame.ucrAvailableDataFrames.clsCurrDataFrame) + clsModel.SetOperation("~") + autoTranslate(Me) - Fillformula() + ucrBase.iHelpTopicID = 315 End Sub + Private Sub SetDefaultSettings() + ucrAddRemoveDataFrame.Reset() + ucrAddRemoveDataFrame.Focus() + ucrYVariate.SetMeAsReceiver() + TestOKEnabled() - Private Sub ucrYVariate_ValueChanged(sender As Object, e As EventArgs) Handles ucrYVariate.ValueChanged - Fillformula() End Sub - Private Sub ucrFactor_ValueChanged(sender As Object, e As EventArgs) Handles ucrFactor.ValueChanged - Fillformula() - End Sub - Private Sub Fillformula() - Dim strFactor As String = "" - Dim strYVariate As String = "" - strYVariate = ucrYVariate.GetVariableNames(bWithQuotes:=False) - strFactor = ucrFactor.GetVariableNames(bWithQuotes:=False) - If ((Not (strYVariate = "")) And (Not (strFactor = ""))) Then - ucrBase.clsRsyntax.AddParameter("formula", strYVariate & "~" & strFactor) + Private Sub ucrYVariate_SelectionChanged(sender As Object, e As EventArgs) Handles ucrYVariate.SelectionChanged + clsModel.SetParameter(True, strValue:=ucrYVariate.GetVariableNames(bWithQuotes:=False)) + TestOKEnabled() + End Sub + Private Sub ucrFactor_SelectionChanged(sender As Object, e As EventArgs) Handles ucrFactor.SelectionChanged + clsModel.SetParameter(False, strValue:=ucrFactor.GetVariableNames(bWithQuotes:=False)) + TestOKEnabled() + End Sub + Private Sub TestOKEnabled() + If (Not ucrYVariate.IsEmpty()) And (Not ucrFactor.IsEmpty()) Then + ucrBase.clsRsyntax.AddParameter("formula", clsROperatorParameter:=clsModel) ucrBase.OKEnabled(True) Else ucrBase.OKEnabled(False) End If End Sub - Private Sub ucrAddRemoveDataframe_Leave(sender As Object, e As EventArgs) Handles ucrAddRemoveDataFrame.Leave + Private Sub ucrAddRemoveDataframe_DataFrameChanged() Handles ucrAddRemoveDataFrame.DataFrameChanged ucrBase.clsRsyntax.AddParameter("data", clsRFunctionParameter:=ucrAddRemoveDataFrame.ucrAvailableDataFrames.clsCurrDataFrame) End Sub Private Sub cmdOptions_Click(sender As Object, e As EventArgs) Handles cmdOptions.Click - sdgOptions.ShowDialog() + sdgANOVAOptions.ShowDialog() + End Sub + Private Sub ucrBase_ClickReset(sender As Object, e As EventArgs) Handles ucrBase.ClickReset + SetDefaultSettings() End Sub End Class \ No newline at end of file diff --git a/instat/instat.vbproj b/instat/instat.vbproj index 15c1be6d310..08bcf40f93f 100644 --- a/instat/instat.vbproj +++ b/instat/instat.vbproj @@ -364,10 +364,10 @@ Form - - sdgOptions.vb + + sdgANOVAOptions.vb - + Form @@ -1602,13 +1602,14 @@ sdgHistogramOptions.vb - sdgOptions.vb + sdgANOVAOptions.vb - - sdgOptions.vb + + sdgANOVAOptions.vb - - sdgOptions.vb + + sdgANOVAOptions.vb + Designer sdgPrincipalComponentAnalysis.vb diff --git a/instat/sdgANOVAOptions.Designer.vb b/instat/sdgANOVAOptions.Designer.vb new file mode 100644 index 00000000000..e81f5b8cbc4 --- /dev/null +++ b/instat/sdgANOVAOptions.Designer.vb @@ -0,0 +1,168 @@ + _ +Partial Class sdgANOVAOptions + Inherits System.Windows.Forms.Form + + 'Form overrides dispose to clean up the component list. + _ + Protected Overrides Sub Dispose(ByVal disposing As Boolean) + Try + If disposing AndAlso components IsNot Nothing Then + components.Dispose() + End If + Finally + MyBase.Dispose(disposing) + End Try + End Sub + + 'Required by the Windows Form Designer + Private components As System.ComponentModel.IContainer + + 'NOTE: The following procedure is required by the Windows Form Designer + 'It can be modified using the Windows Form Designer. + 'Do not modify it using the code editor. + _ + Private Sub InitializeComponent() + Me.tbcOptions = New System.Windows.Forms.TabControl() + Me.tbpDisplay = New System.Windows.Forms.TabPage() + Me.chkTableOfMeans = New System.Windows.Forms.CheckBox() + Me.chkEstimateValues = New System.Windows.Forms.CheckBox() + Me.chkANOVATable = New System.Windows.Forms.CheckBox() + Me.tbpGraphics = New System.Windows.Forms.TabPage() + Me.chkMeans = New System.Windows.Forms.CheckBox() + Me.chkResiduals = New System.Windows.Forms.CheckBox() + Me.ucrBaseSdg = New instat.ucrButtonsSubdialogue() + Me.tbcOptions.SuspendLayout() + Me.tbpDisplay.SuspendLayout() + Me.tbpGraphics.SuspendLayout() + Me.SuspendLayout() + ' + 'tbcOptions + ' + Me.tbcOptions.Controls.Add(Me.tbpDisplay) + Me.tbcOptions.Controls.Add(Me.tbpGraphics) + Me.tbcOptions.Location = New System.Drawing.Point(-1, -1) + Me.tbcOptions.Name = "tbcOptions" + Me.tbcOptions.SelectedIndex = 0 + Me.tbcOptions.Size = New System.Drawing.Size(292, 165) + Me.tbcOptions.TabIndex = 1 + ' + 'tbpDisplay + ' + Me.tbpDisplay.Controls.Add(Me.chkTableOfMeans) + Me.tbpDisplay.Controls.Add(Me.chkEstimateValues) + Me.tbpDisplay.Controls.Add(Me.chkANOVATable) + Me.tbpDisplay.Location = New System.Drawing.Point(4, 22) + Me.tbpDisplay.Name = "tbpDisplay" + Me.tbpDisplay.Padding = New System.Windows.Forms.Padding(3) + Me.tbpDisplay.Size = New System.Drawing.Size(284, 139) + Me.tbpDisplay.TabIndex = 0 + Me.tbpDisplay.Tag = "Display" + Me.tbpDisplay.Text = "Display" + Me.tbpDisplay.UseVisualStyleBackColor = True + ' + 'chkTableOfMeans + ' + Me.chkTableOfMeans.AutoSize = True + Me.chkTableOfMeans.Location = New System.Drawing.Point(9, 105) + Me.chkTableOfMeans.Name = "chkTableOfMeans" + Me.chkTableOfMeans.Size = New System.Drawing.Size(99, 17) + Me.chkTableOfMeans.TabIndex = 5 + Me.chkTableOfMeans.Tag = "Table_of_means" + Me.chkTableOfMeans.Text = "Table of means" + Me.chkTableOfMeans.UseVisualStyleBackColor = True + ' + 'chkEstimateValues + ' + Me.chkEstimateValues.AutoSize = True + Me.chkEstimateValues.Location = New System.Drawing.Point(10, 62) + Me.chkEstimateValues.Name = "chkEstimateValues" + Me.chkEstimateValues.Size = New System.Drawing.Size(67, 17) + Me.chkEstimateValues.TabIndex = 4 + Me.chkEstimateValues.Tag = "P_values" + Me.chkEstimateValues.Text = "P values" + Me.chkEstimateValues.UseVisualStyleBackColor = True + ' + 'chkANOVATable + ' + Me.chkANOVATable.AutoSize = True + Me.chkANOVATable.Location = New System.Drawing.Point(10, 20) + Me.chkANOVATable.Name = "chkANOVATable" + Me.chkANOVATable.Size = New System.Drawing.Size(93, 17) + Me.chkANOVATable.TabIndex = 1 + Me.chkANOVATable.Tag = "ANOVA Table" + Me.chkANOVATable.Text = "ANOVA Table" + Me.chkANOVATable.UseVisualStyleBackColor = True + ' + 'tbpGraphics + ' + Me.tbpGraphics.Controls.Add(Me.chkMeans) + Me.tbpGraphics.Controls.Add(Me.chkResiduals) + Me.tbpGraphics.Location = New System.Drawing.Point(4, 22) + Me.tbpGraphics.Name = "tbpGraphics" + Me.tbpGraphics.Padding = New System.Windows.Forms.Padding(3) + Me.tbpGraphics.Size = New System.Drawing.Size(175, 155) + Me.tbpGraphics.TabIndex = 1 + Me.tbpGraphics.Tag = "Graphics" + Me.tbpGraphics.Text = "Graphics" + Me.tbpGraphics.UseVisualStyleBackColor = True + ' + 'chkMeans + ' + Me.chkMeans.AutoSize = True + Me.chkMeans.Location = New System.Drawing.Point(18, 71) + Me.chkMeans.Name = "chkMeans" + Me.chkMeans.Size = New System.Drawing.Size(58, 17) + Me.chkMeans.TabIndex = 1 + Me.chkMeans.Tag = "Means" + Me.chkMeans.Text = "Means" + Me.chkMeans.UseVisualStyleBackColor = True + ' + 'chkResiduals + ' + Me.chkResiduals.AutoSize = True + Me.chkResiduals.Location = New System.Drawing.Point(18, 24) + Me.chkResiduals.Name = "chkResiduals" + Me.chkResiduals.Size = New System.Drawing.Size(72, 17) + Me.chkResiduals.TabIndex = 0 + Me.chkResiduals.Tag = "Residuals" + Me.chkResiduals.Text = "Residuals" + Me.chkResiduals.UseVisualStyleBackColor = True + ' + 'ucrBaseSdg + ' + Me.ucrBaseSdg.Location = New System.Drawing.Point(48, 170) + Me.ucrBaseSdg.Name = "ucrBaseSdg" + Me.ucrBaseSdg.Size = New System.Drawing.Size(142, 30) + Me.ucrBaseSdg.TabIndex = 2 + ' + 'sdgANOVAOptions + ' + Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) + Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font + Me.ClientSize = New System.Drawing.Size(290, 208) + Me.Controls.Add(Me.ucrBaseSdg) + Me.Controls.Add(Me.tbcOptions) + Me.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedToolWindow + Me.Name = "sdgANOVAOptions" + Me.Tag = "ANOVA_options" + Me.Text = "ANOVA options" + Me.tbcOptions.ResumeLayout(False) + Me.tbpDisplay.ResumeLayout(False) + Me.tbpDisplay.PerformLayout() + Me.tbpGraphics.ResumeLayout(False) + Me.tbpGraphics.PerformLayout() + Me.ResumeLayout(False) + + End Sub + + Friend WithEvents ucrBaseSubdialog As ucrButtonsSubdialogue + Friend WithEvents tbcOptions As TabControl + Friend WithEvents tbpDisplay As TabPage + Friend WithEvents chkTableOfMeans As CheckBox + Friend WithEvents chkEstimateValues As CheckBox + Friend WithEvents chkANOVATable As CheckBox + Friend WithEvents tbpGraphics As TabPage + Friend WithEvents chkMeans As CheckBox + Friend WithEvents chkResiduals As CheckBox + Friend WithEvents ucrBaseSdg As ucrButtonsSubdialogue +End Class diff --git a/instat/sdgANOVAOptions.vb b/instat/sdgANOVAOptions.vb new file mode 100644 index 00000000000..6c0719d04c2 --- /dev/null +++ b/instat/sdgANOVAOptions.vb @@ -0,0 +1,55 @@ +' Instat-R +' Copyright (C) 2015 +' +' This program is free software: you can redistribute it and/or modify +' it under the terms of the GNU General Public License as published by +' the Free Software Foundation, either version 3 of the License, or +' (at your option) any later version. +' +' This program is distributed in the hope that it will be useful, +' but WITHOUT ANY WARRANTY; without even the implied warranty of +' MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +' GNU General Public License for more details. +' +' You should have received a copy of the GNU General Public License k +' along with this program. If not, see . +Imports instat.Translations + +Public Class sdgANOVAOptions + + Public clsRModelFunction As RFunction + Public clsRaovFunction As New RFunction + Public bFirstLoad As Boolean = True + + + Private Sub sdgANOVAOptions_Load(sender As Object, e As EventArgs) Handles MyBase.Load + + autoTranslate(Me) + + If bFirstLoad Then + SetDefaultSettings() + bFirstLoad = False + End If + End Sub + + Public Sub SetRModelFunction(clsRModelFunc As RFunction) + clsRModelFunction = clsRModelFunc + End Sub + + Public Sub SetDefaultSettings() + chkANOVATable.Checked = True + End Sub + + Private Sub AnovaTable() + clsRaovFunction.SetRCommand("aov") + clsRaovFunction.AddParameter("", clsRFunctionParameter:=clsRModelFunction) + frmMain.clsRLink.RunScript(clsRaovFunction.ToScript(), 2) + End Sub + + Public Sub Estimates() + If (chkANOVATable.Checked) Then + AnovaTable() + End If + End Sub + +End Class \ No newline at end of file