diff --git a/inno_install_script_64bit.iss b/inno_install_script_64bit.iss
index c2354f865aa..8499603c092 100644
--- a/inno_install_script_64bit.iss
+++ b/inno_install_script_64bit.iss
@@ -7,8 +7,8 @@
; (To generate a new GUID, click Tools | Generate GUID inside the IDE.)
AppVersion= {#GetStringFileInfo("instat\bin\x64\Release\instat.exe", "FileVersion")}
AppId={{5455FC1A-85BE-4679-B600-8A1A4FC3CDD9-{#SetupSetting("AppVersion")}}
-AppName=R-Instat
-AppVerName ={code:GetShortAppVersion|{#SetupSetting("AppVersion")}}
+AppName=R-Instat {#SetupSetting("AppVersion")}
+AppVerName =R-Instat {#SetupSetting("AppVersion")}
AppPublisher=African Maths Initiative
AppPublisherURL=http://r-instat.org/
diff --git a/instat/Model/DataFrame/clsDataFrame.vb b/instat/Model/DataFrame/clsDataFrame.vb
index c51d6d523f5..dc3de086525 100644
--- a/instat/Model/DataFrame/clsDataFrame.vb
+++ b/instat/Model/DataFrame/clsDataFrame.vb
@@ -181,6 +181,7 @@ Public Class clsDataFrame
Else
bRefreshed = False
End If
+ _clsVisibleDataFramePage.HasDataChangedForAutoSave = True
End If
_clsColumnMetaData.RefreshData()
Return bRefreshed
diff --git a/instat/Model/DataFrame/clsDataFramePage.vb b/instat/Model/DataFrame/clsDataFramePage.vb
index 062e2216a90..2dbf663ab1b 100644
--- a/instat/Model/DataFrame/clsDataFramePage.vb
+++ b/instat/Model/DataFrame/clsDataFramePage.vb
@@ -31,6 +31,7 @@ Public Class clsDataFramePage
Private _lstColumns As List(Of clsColumnHeaderDisplay)
Private _hasChanged As Boolean
Private _useColumnSelectionInDataView As Boolean
+ Private _HasDataChangedForAutoSave As Boolean
Private ReadOnly Property iColumnIncrements As Integer
Get
@@ -140,6 +141,19 @@ Public Class clsDataFramePage
End Set
End Property
+ '''
+ ''' holds whether the dataframe is different from visual grid component and trigger auto save
+ '''
+ '''
+ Public Property HasDataChangedForAutoSave() As Boolean
+ Get
+ Return _HasDataChangedForAutoSave
+ End Get
+ Set(ByVal value As Boolean)
+ _HasDataChangedForAutoSave = value
+ End Set
+ End Property
+
'''
''' Create a new instance of a dataframe page
'''
@@ -152,6 +166,7 @@ Public Class clsDataFramePage
_iColumnStart = 1
_iRowStart = 1
_hasChanged = True
+ _HasDataChangedForAutoSave = True
_useColumnSelectionInDataView = True
End Sub
@@ -236,7 +251,7 @@ Public Class clsDataFramePage
Dim strDisable As String = If(bDisable, "TRUE", "FALSE")
clsEnableDisableUndoRFunction.AddParameter("disable_undo", strDisable)
- _clsRLink.RunScript(clsEnableDisableUndoRFunction.ToScript)
+ _clsRLink.RunScript(clsEnableDisableUndoRFunction.ToScript, bSkipScriptAndOutput:=True)
End Sub
diff --git a/instat/Model/RCommand/clsPrepareFunctionsForGrids.vb b/instat/Model/RCommand/clsPrepareFunctionsForGrids.vb
index a55ccc8b2aa..61c4d09ca69 100644
--- a/instat/Model/RCommand/clsPrepareFunctionsForGrids.vb
+++ b/instat/Model/RCommand/clsPrepareFunctionsForGrids.vb
@@ -184,7 +184,7 @@ Public Class clsPrepareFunctionsForGrids
clsViewDataFrame.AddParameter("x", clsRFunctionParameter:=clsGetDataFrame)
clsGetDataFrame.SetAssignTo(_strDataFrame)
strTemp = clsViewDataFrame.ToScript(strScript)
- _RLink.RunScript(strScript & strTemp, strComment:="Right click menu: View R Data Frame", bSeparateThread:=False)
+ _RLink.RunScript(strScript & strTemp, strComment:="Toolbar Option: View R Data Frame", bSeparateThread:=False)
End Sub
'''
''' insert new rows
diff --git a/instat/UserControl/ucrOutputPage.vb b/instat/UserControl/ucrOutputPage.vb
index 6188b0e197a..65a46e275b5 100644
--- a/instat/UserControl/ucrOutputPage.vb
+++ b/instat/UserControl/ucrOutputPage.vb
@@ -187,7 +187,7 @@ Public Class ucrOutputPage
End If
'if no contents added just exit sub
- If richTextBox.TextLength = 0 Then
+ If String.IsNullOrWhiteSpace(richTextBox.Text) Then
Exit Sub
End If
@@ -211,11 +211,10 @@ Public Class ucrOutputPage
If frmMain.clsInstatOptions.bIncludeCommentDefault Then
'show comments only
For Each line As clsRScriptElement In formattedRScript
- If line.Type = RToken.TokenTypes.RComment Then
+ If line.Type = RToken.TokenTypes.RComment OrElse line.Type = RToken.TokenTypes.RNewLine Then
AddFormatedTextToRichTextBox(richTextBox, line.Text, OutputFont.GetFontForScriptType(line.Type), OutputFont.GetColourForScriptType(line.Type))
End If
Next
-
ElseIf frmMain.clsInstatOptions.bCommandsinOutput Then
'show command lines that are not comments
For Each line As clsRScriptElement In formattedRScript
diff --git a/instat/clsGgplotDefaults.vb b/instat/clsGgplotDefaults.vb
index 6845476ca84..86240f369c5 100644
--- a/instat/clsGgplotDefaults.vb
+++ b/instat/clsGgplotDefaults.vb
@@ -67,7 +67,7 @@ Public Class GgplotDefaults
Get
Dim strTemp As String()
'TODO need to make proper functions and set package names
- strTemp = {"theme_bw", "theme_linedraw", "theme_light", "theme_minimal", "theme_classic", "theme_dark", "theme_void", "theme_base", "theme_calc", "theme_economist", "theme_few", "theme_fivethirtyeight", "theme_foundation", "theme_grey", "theme_gdocs", "theme_igray", "theme_map", "theme_par", "theme_solarized", "theme_hc", "theme_pander", "theme_solid", "theme_stata", "theme_tufte", "theme_wsj"}
+ strTemp = {"theme_bw", "theme_linedraw", "theme_light", "theme_minimal", "theme_classic", "theme_dark", "theme_void", "theme_base", "theme_calc", "theme_economist", "theme_few", "theme_fivethirtyeight", "theme_foundation", "theme_grey", "theme_gdocs", "theme_igray", "theme_map", "theme_par", "theme_solarized", "theme_hc", "theme_pander", "theme_solid", "theme_stata", "theme_tufte", "theme_wsj", "theme_excel", "theme_excel_new", "theme_economist_white", "theme_solarized_2", "reset_theme_settings"}
System.Array.Sort(Of String)(strTemp)
Return strTemp
End Get
diff --git a/instat/clsRLink.vb b/instat/clsRLink.vb
index 7b53ed13e85..a13f8ca8dbc 100644
--- a/instat/clsRLink.vb
+++ b/instat/clsRLink.vb
@@ -970,7 +970,8 @@ Public Class RLink
Optional bSeparateThread As Boolean = True,
Optional bShowWaitDialogOverride As Nullable(Of Boolean) = Nothing,
Optional bUpdateGrids As Boolean = True,
- Optional bSilent As Boolean = False)
+ Optional bSilent As Boolean = False,
+ Optional bSkipScriptAndOutput As Boolean = False)
'if there is no script to run then just ignore and exit sub
If String.IsNullOrWhiteSpace(strScript) Then
@@ -1043,8 +1044,10 @@ Public Class RLink
End If
End If
- ' If strOutput is empty or does not contain valid HTML files, add strOutput itself as an output
- clsOutputLogger.AddOutput(strScriptWithComment, strOutput, bAsFile, bDisplayOutputInExternalViewer)
+ If Not bSkipScriptAndOutput Then
+ ' If strOutput is empty or does not contain valid HTML files, add strOutput itself as an output
+ clsOutputLogger.AddOutput(strScriptWithComment, strOutput, bAsFile, bDisplayOutputInExternalViewer)
+ End If
Catch e As Exception
diff --git a/instat/dlgBarAndPieChart.Designer.vb b/instat/dlgBarAndPieChart.Designer.vb
index 24dd99b55dd..31d85c91341 100644
--- a/instat/dlgBarAndPieChart.Designer.vb
+++ b/instat/dlgBarAndPieChart.Designer.vb
@@ -115,6 +115,8 @@ Partial Class dlgBarAndPieChart
Me.lblFacetBy = New System.Windows.Forms.Label()
Me.ucrInputLegendPosition = New instat.ucrInputComboBox()
Me.ucrChkLegend = New instat.ucrCheck()
+ Me.ucrInputWidth = New instat.ucrInputTextBox()
+ Me.ucrChkBinWidth = New instat.ucrCheck()
Me.contextMenuStripOptions.SuspendLayout()
Me.SuspendLayout()
'
@@ -906,12 +908,36 @@ Partial Class dlgBarAndPieChart
Me.ucrChkLegend.Size = New System.Drawing.Size(98, 24)
Me.ucrChkLegend.TabIndex = 72
'
+ 'ucrInputWidth
+ '
+ Me.ucrInputWidth.AddQuotesIfUnrecognised = True
+ Me.ucrInputWidth.AutoSize = True
+ Me.ucrInputWidth.IsMultiline = False
+ Me.ucrInputWidth.IsReadOnly = False
+ Me.ucrInputWidth.Location = New System.Drawing.Point(141, 270)
+ Me.ucrInputWidth.Margin = New System.Windows.Forms.Padding(9)
+ Me.ucrInputWidth.Name = "ucrInputWidth"
+ Me.ucrInputWidth.Size = New System.Drawing.Size(69, 21)
+ Me.ucrInputWidth.TabIndex = 91
+ '
+ 'ucrChkBinWidth
+ '
+ Me.ucrChkBinWidth.AutoSize = True
+ Me.ucrChkBinWidth.Checked = False
+ Me.ucrChkBinWidth.Location = New System.Drawing.Point(12, 270)
+ Me.ucrChkBinWidth.Margin = New System.Windows.Forms.Padding(6)
+ Me.ucrChkBinWidth.Name = "ucrChkBinWidth"
+ Me.ucrChkBinWidth.Size = New System.Drawing.Size(144, 23)
+ Me.ucrChkBinWidth.TabIndex = 90
+ '
'dlgBarAndPieChart
'
Me.AutoScaleDimensions = New System.Drawing.SizeF(96.0!, 96.0!)
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi
Me.AutoSize = True
Me.ClientSize = New System.Drawing.Size(415, 596)
+ Me.Controls.Add(Me.ucrInputWidth)
+ Me.Controls.Add(Me.ucrChkBinWidth)
Me.Controls.Add(Me.ucrInputStation)
Me.Controls.Add(Me.ucr1stFactorReceiver)
Me.Controls.Add(Me.lblFacetBy)
@@ -1067,4 +1093,6 @@ Partial Class dlgBarAndPieChart
Friend WithEvents lblFacetBy As Label
Friend WithEvents ucrInputLegendPosition As ucrInputComboBox
Friend WithEvents ucrChkLegend As ucrCheck
+ Friend WithEvents ucrInputWidth As ucrInputTextBox
+ Friend WithEvents ucrChkBinWidth As ucrCheck
End Class
\ No newline at end of file
diff --git a/instat/dlgBarAndPieChart.vb b/instat/dlgBarAndPieChart.vb
index 4f7f6cc316e..df971c8e3f5 100644
--- a/instat/dlgBarAndPieChart.vb
+++ b/instat/dlgBarAndPieChart.vb
@@ -148,9 +148,9 @@ Public Class dlgBarAndPieChart
ucrPnlOptions.AddFunctionNamesCondition(rdoTreeMap, {"geom_treemap", "geom_treemap_text"})
ucrPnlOptions.AddFunctionNamesCondition(rdoWordCloud, {"geom_text_wordcloud", "scale_size_area"})
- ucrPnlOptions.AddToLinkedControls({ucrChkFlipCoordinates, ucrChkPolarCoordinates, ucrReceiverByFactor, ucrInputBarChartPositions, ucrChkAddLabelsText, ucrVariablesAsFactorForBarChart, ucrChkBacktoback}, {rdoFrequency, rdoValue}, bNewLinkedAddRemoveParameter:=True, bNewLinkedHideIfParameterMissing:=True)
+ ucrPnlOptions.AddToLinkedControls({ucrChkFlipCoordinates, ucrChkPolarCoordinates, ucrReceiverByFactor, ucrInputBarChartPositions, ucrChkAddLabelsText, ucrVariablesAsFactorForBarChart, ucrChkBacktoback}, {rdoFrequency, rdoValue}, bNewLinkedHideIfParameterMissing:=True)
ucrPnlOptions.AddToLinkedControls({ucrReceiverX, ucrChkReorderValue, ucrInputAddReorder, ucrChkLollipop}, {rdoValue}, bNewLinkedAddRemoveParameter:=True, bNewLinkedHideIfParameterMissing:=True)
- ucrPnlOptions.AddToLinkedControls({ucrChkReorderFrequency, ucrInputAddReorder}, {rdoFrequency}, bNewLinkedHideIfParameterMissing:=True)
+ ucrPnlOptions.AddToLinkedControls({ucrChkReorderFrequency, ucrChkBinWidth, ucrInputAddReorder}, {rdoFrequency}, bNewLinkedHideIfParameterMissing:=True)
ucrPnlOptions.AddToLinkedControls({ucrReceiverArea, ucrReceiverFill, ucrChkLayout, ucrChkStart, ucrChkAddLabelsTreemap}, {rdoTreeMap}, bNewLinkedAddRemoveParameter:=True, bNewLinkedHideIfParameterMissing:=True)
ucrPnlOptions.AddToLinkedControls({ucrReceiverWordcloudAngle, ucrReceiverWordcloudColor, ucrReceiverWordcloudLabel, ucrReceiverWordcloudSize, ucrChkIncreaseSize}, {rdoWordCloud}, bNewLinkedAddRemoveParameter:=True, bNewLinkedHideIfParameterMissing:=True)
ucrReceiverByFactor.SetLinkedDisplayControl(lblByFactor)
@@ -301,6 +301,12 @@ Public Class dlgBarAndPieChart
ucrNudLollipopSize.Minimum = 1
ucrNudLollipopSize.Maximum = 15
+ ucrChkBinWidth.SetText("Binwidth")
+ ucrChkBinWidth.AddToLinkedControls({ucrInputWidth}, {True}, bNewLinkedAddRemoveParameter:=True, bNewLinkedHideIfParameterMissing:=True, bNewLinkedChangeToDefaultState:=True, objNewDefaultState:=1.5)
+
+ ucrInputWidth.SetParameter(New RParameter("binwidth", 3))
+ ucrInputWidth.SetValidationTypeAsNumeric()
+
ucrChkLollipop.SetText("Lollipop")
ucrChkLollipop.AddParameterPresentCondition(True, "geom_lollipop")
ucrChkLollipop.AddParameterPresentCondition(False, "geom_lollipop", False)
@@ -481,7 +487,6 @@ Public Class dlgBarAndPieChart
clsRgeomBarFunction.SetPackageName("ggplot2")
clsRgeomBarFunction.SetRCommand("geom_bar")
clsRgeomBarFunction.AddParameter("position", Chr(34) & "stack" & Chr(34), iPosition:=0)
- clsRgeomBarFunction.AddParameter("stat", Chr(34) & "count" & Chr(34), iPosition:=1)
clsRggplotFunction.SetPackageName("ggplot2")
clsRggplotFunction.SetRCommand("ggplot")
@@ -641,6 +646,8 @@ Public Class dlgBarAndPieChart
clsBaseOperator.SetAssignTo("last_graph", strTempDataframe:=ucrBarChartSelector.ucrAvailableDataFrames.cboAvailableDataFrames.Text, strTempGraph:="last_graph")
ucrBase.clsRsyntax.SetBaseROperator(clsBaseOperator)
+ HideShowWidth()
+ EnableDisablesOptions()
End Sub
Private Sub SetRCodeForControls(bReset As Boolean)
@@ -679,12 +686,15 @@ Public Class dlgBarAndPieChart
ucrChkReorderFrequency.SetRCode(clsDummyFunction, bReset)
ucrChkLegend.SetRCode(clsThemeFunction, bReset, bCloneIfNeeded:=True)
ucrInputLegendPosition.SetRCode(clsThemeFunction, bReset, bCloneIfNeeded:=True)
+ ucrInputWidth.SetRCode(clsRgeomBarFunction, bReset)
If bReset Then
ucrChkStart.SetRCode(clsGeomTreemapFunction, bReset)
ucrChkLayout.SetRCode(clsGeomTreemapFunction, bReset)
ucrChkIncreaseSize.SetRCode(clsScaleSizeAreaFunction, bReset)
+ ucrChkBinWidth.SetRCode(clsRgeomBarFunction, bReset)
End If
+ HideShowWidth()
End Sub
Private Sub TestOkEnabled()
@@ -816,6 +826,15 @@ Public Class dlgBarAndPieChart
openSdgLayerOptions(clsGeomTextFunction, clsTextAesFunction)
End Sub
+ Private Sub EnableDisablesOptions()
+ toolStripMenuItemBarchartOptions.Enabled = rdoFrequency.Checked OrElse rdoValue.Checked
+ toolStripMenuItemTextOptions.Enabled = ucrChkAddLabelsText.Checked AndAlso (rdoValue.Checked OrElse rdoFrequency.Checked)
+ toolStripMenuItemTreemapTextOptionsOptions.Enabled = ucrChkAddLabelsTreemap.Checked AndAlso rdoTreeMap.Checked
+ toolStripMenuItemWordcloudOptions.Enabled = rdoWordCloud.Checked AndAlso rdoWordCloud.Checked
+ toolStripMenuItemTreemapOptions.Enabled = rdoTreeMap.Checked
+ toolStripMenuItemLollipopOptions.Enabled = ucrChkLollipop.Checked AndAlso rdoValue.Checked
+ End Sub
+
Private Sub SetDialogOptions()
If rdoValue.Checked Or rdoFrequency.Checked Then
clsRggplotFunction.AddParameter("mapping", clsRFunctionParameter:=clsBarAesFunction, iPosition:=1)
@@ -1264,7 +1283,11 @@ Public Class dlgBarAndPieChart
ucrInputAddReorder.ControlValueChanged, ucrInputReorderValue.ControlValueChanged, ucrNudMaxSize.ControlValueChanged,
ucrChkIncreaseSize.ControlValueChanged, ucrChkLollipop.ControlValueChanged
SetDialogOptions()
+ EnableDisablesOptions()
ChangeParameterName()
+ AddStatsParm()
+ HideShowWidth()
+
If rdoTreeMap.Checked Then
ucrReceiverArea.SetMeAsReceiver()
ElseIf rdoWordCloud.Checked Then
@@ -1284,18 +1307,18 @@ Public Class dlgBarAndPieChart
Private Sub ucrChkBacktoback_ControlValueChanged(ucrChangedControl As ucrCore) Handles ucrChkBacktoback.ControlValueChanged,
ucrVariablesAsFactorForBarChart.ControlValueChanged, ucrReceiverX.ControlValueChanged, ucrPnlOptions.ControlValueChanged
+ clsBaseOperator.RemoveParameterByName("geom_bar1")
+ clsBaseOperator.RemoveParameterByName("geom_bar2")
+ clsBaseOperator.RemoveParameterByName("scale_y_symmetric")
+ clsAesFunction1.RemoveParameterByName("y")
+ clsAesFunction2.RemoveParameterByName("y")
+ clsRgeomBarFunction2.RemoveParameterByName("aes")
+ clsRgeomBarFunction1.RemoveParameterByName("aes")
+ clsRggplotFunction.RemoveParameterByName("aes")
If rdoFrequency.Checked OrElse rdoValue.Checked Then
- clsBaseOperator.RemoveParameterByName("geom_bar1")
- clsBaseOperator.RemoveParameterByName("geom_bar2")
- clsBaseOperator.RemoveParameterByName("scale_y_symmetric")
- clsAesFunction1.RemoveParameterByName("y")
- clsAesFunction2.RemoveParameterByName("y")
- clsRgeomBarFunction2.RemoveParameterByName("aes")
- clsRgeomBarFunction1.RemoveParameterByName("aes")
ucrChkPolarCoordinates.Enabled = True
clsBaseOperator.AddParameter("geom_bar", clsRFunctionParameter:=clsRgeomBarFunction, iPosition:=2)
clsRggplotFunction.AddParameter("mapping", clsRFunctionParameter:=clsBarAesFunction, iPosition:=1)
- clsRggplotFunction.RemoveParameterByName("aes")
If ucrChkBacktoback.Checked Then
ucrChkPolarCoordinates.Enabled = False
ucrChkPolarCoordinates.Checked = Not ucrChkBacktoback.Checked
@@ -1317,9 +1340,14 @@ Public Class dlgBarAndPieChart
clsRgeomBarFunction1.AddParameter("aes", clsRFunctionParameter:=clsAesFunction1, iPosition:=1, bIncludeArgumentName:=False)
End If
End If
+ Else
+ clsBaseOperator.RemoveParameterByName("geom_bar")
+ clsRggplotFunction.RemoveParameterByName("mapping")
End If
ChangeParameterName()
SetGeomTextOptions()
+ HideShowWidth()
+ AddStatsParm()
End Sub
Private Sub ucrChkPolarCoordinates_ControlValueChanged(ucrChangedControl As ucrCore) Handles ucrChkPolarCoordinates.ControlValueChanged, ucrPnlPolar.ControlValueChanged,
@@ -1390,10 +1418,40 @@ Public Class dlgBarAndPieChart
End Sub
Private Sub ucrChkAddLabelsTreemap_ControlValueChanged(ucrChangedControl As ucrCore) Handles ucrChkAddLabelsTreemap.ControlValueChanged
+ EnableDisablesOptions()
If ucrChkAddLabelsTreemap.Checked Then
clsBaseOperator.AddParameter("geom_treemap_text", clsRFunctionParameter:=clsGeomTreemapTextFunction, iPosition:=3)
Else
clsBaseOperator.RemoveParameterByName("geom_treemap_text")
End If
End Sub
+
+ Private Sub ucrChkBinWidth_ControlValueChanged(ucrChangedControl As ucrCore) Handles ucrChkBinWidth.ControlValueChanged, ucrInputWidth.ControlValueChanged, ucrVariablesAsFactorForBarChart.ControlValueChanged
+ If ucrChkBinWidth.Checked AndAlso ucrVariablesAsFactorForBarChart.ucrSingleVariable.strCurrDataType = "numeric" Then
+ clsRgeomBarFunction.AddParameter("binwidth", ucrInputWidth.GetText, iPosition:=4)
+ Else
+ clsRgeomBarFunction.RemoveParameterByName("binwidth")
+ End If
+ AddStatsParm()
+ HideShowWidth()
+ End Sub
+
+ Private Sub HideShowWidth()
+ If rdoFrequency.Checked AndAlso (Not ucrVariablesAsFactorForBarChart.IsEmpty AndAlso ucrVariablesAsFactorForBarChart.ucrSingleVariable.strCurrDataType = "numeric") Then
+ ucrChkBinWidth.Visible = True
+ ucrInputWidth.Visible = ucrChkBinWidth.Checked
+ Else
+ ucrChkBinWidth.Visible = False
+ ucrInputWidth.Visible = False
+ End If
+ End Sub
+
+ Private Sub AddStatsParm()
+ If rdoFrequency.Checked AndAlso ucrChkBinWidth.Checked AndAlso ucrVariablesAsFactorForBarChart.ucrSingleVariable.strCurrDataType = "numeric" Then
+ clsRgeomBarFunction.AddParameter("stat", Chr(34) & "bin" & Chr(34), iPosition:=1)
+ Else
+ clsRgeomBarFunction.AddParameter("stat", Chr(34) & "count" & Chr(34), iPosition:=1)
+ End If
+ End Sub
+
End Class
\ No newline at end of file
diff --git a/instat/dlgCalculator.vb b/instat/dlgCalculator.vb
index c7eee20e0ad..31c557a35fd 100644
--- a/instat/dlgCalculator.vb
+++ b/instat/dlgCalculator.vb
@@ -122,10 +122,8 @@ Public Class dlgCalculator
clsDetachScalarsFunction.AddParameter("unload", "TRUE")
ucrBase.clsRsyntax.AddToBeforeCodes(clsAttachFunction, 0)
- ucrBase.clsRsyntax.AddToBeforeCodes(clsAttachScalarsFunction, 1)
ucrBase.clsRsyntax.AddToAfterCodes(clsDetachFunction, 1)
- ucrBase.clsRsyntax.AddToAfterCodes(clsDetachScalarsFunction, 2)
ucrBase.clsRsyntax.SetCommandString("")
@@ -204,7 +202,11 @@ Public Class dlgCalculator
Dim strResut As String = ucrCalc.ucrSaveResultInto.GetText
clsAddScalarFunction.AddParameter("scalar_name", Chr(34) & strResut & Chr(34), iPosition:=1)
clsAddScalarFunction.AddParameter("scalar_value", strResut, iPosition:=2)
+ clsAddScalarFunction.AddParameter("data_name", Chr(34) & dataFrameName & Chr(34), iPosition:=0)
+ clsScalarsDataFuntion.AddParameter("data_name", Chr(34) & dataFrameName & Chr(34), iPosition:=0)
ucrBase.clsRsyntax.AddToAfterCodes(clsAddScalarFunction, 0)
+ ucrBase.clsRsyntax.AddToBeforeCodes(clsAttachScalarsFunction, 1)
+ ucrBase.clsRsyntax.AddToAfterCodes(clsDetachScalarsFunction, 2)
ucrBase.clsRsyntax.SetAssignTo(strResut)
ucrCalc.ucrSaveResultInto.btnColumnPosition.Enabled = False
ucrCalc.ucrSaveResultInto.btnColumnPosition.Visible = True
@@ -212,14 +214,22 @@ Public Class dlgCalculator
ucrCalc.ucrSaveResultInto.ucrChkSave.Enabled = False
ucrCalc.ucrSaveResultInto.ucrInputComboSave.Visible = True
ucrCalc.ucrSaveResultInto.ucrInputComboSave.Enabled = True
+ ElseIf ucrCalc.ucrSelectorForCalculations.checkBoxScalar.Checked Then
+ Dim strResut As String = ucrCalc.ucrSaveResultInto.GetText
+ clsAddScalarFunction.AddParameter("data_name", Chr(34) & dataFrameName & Chr(34), iPosition:=0)
+ clsScalarsDataFuntion.AddParameter("data_name", Chr(34) & dataFrameName & Chr(34), iPosition:=0)
+ ucrBase.clsRsyntax.AddToAfterCodes(clsAddScalarFunction, 0)
+ ucrBase.clsRsyntax.AddToBeforeCodes(clsAttachScalarsFunction, 1)
+ ucrBase.clsRsyntax.AddToAfterCodes(clsDetachScalarsFunction, 2)
Else
ucrBase.clsRsyntax.RemoveFromAfterCodes(clsAddScalarFunction)
+ ucrBase.clsRsyntax.RemoveFromBeforeCodes(clsAttachScalarsFunction)
+ ucrBase.clsRsyntax.RemoveFromAfterCodes(clsDetachScalarsFunction)
ucrCalc.ucrSaveResultInto.btnColumnPosition.Enabled = True
ucrCalc.ucrSaveResultInto.btnColumnPosition.Visible = True
ucrCalc.ucrSaveResultInto.ucrChkSave.Enabled = True
ucrCalc.ucrSaveResultInto.ucrInputComboSave.Visible = True
ucrCalc.ucrSaveResultInto.ucrInputComboSave.Enabled = True
-
End If
' Update command string and clear input try message name
@@ -253,7 +263,6 @@ Public Class dlgCalculator
ucrBase.clsRsyntax.AddToBeforeCodes(clsAttachScalarsFunction, 1)
ucrBase.clsRsyntax.AddToAfterCodes(clsDetachFunction, 1)
- ucrBase.clsRsyntax.AddToAfterCodes(clsDetachScalarsFunction, 2)
ucrCalc.ucrSaveResultInto.Enabled = True
ucrCalc.ucrChkStoreScalar.Visible = True
Else
diff --git a/instat/dlgClimaticLengthOfSeason.Designer.vb b/instat/dlgClimaticLengthOfSeason.Designer.vb
index 25c8f8d3eee..e245d05139b 100644
--- a/instat/dlgClimaticLengthOfSeason.Designer.vb
+++ b/instat/dlgClimaticLengthOfSeason.Designer.vb
@@ -36,6 +36,8 @@ Partial Class dlgClimaticLengthOfSeason
Me.ucrReceiverStartofRains = New instat.ucrReceiverSingle()
Me.ucrSelectorLengthofSeason = New instat.ucrSelectorByDataFrameAddRemove()
Me.ucrBase = New instat.ucrButtons()
+ Me.ucrChkLengthmore = New instat.ucrCheck()
+ Me.ucrNudLenghtmore = New instat.ucrNud()
Me.SuspendLayout()
'
'lblStartofRains
@@ -50,16 +52,16 @@ Partial Class dlgClimaticLengthOfSeason
'lblStartofRainsLogical
'
Me.lblStartofRainsLogical.AutoSize = True
- Me.lblStartofRainsLogical.Location = New System.Drawing.Point(281, 86)
+ Me.lblStartofRainsLogical.Location = New System.Drawing.Point(281, 75)
Me.lblStartofRainsLogical.Name = "lblStartofRainsLogical"
- Me.lblStartofRainsLogical.Size = New System.Drawing.Size(44, 13)
+ Me.lblStartofRainsLogical.Size = New System.Drawing.Size(80, 13)
Me.lblStartofRainsLogical.TabIndex = 3
- Me.lblStartofRainsLogical.Text = "Start(L):"
+ Me.lblStartofRainsLogical.Text = "Start Status (L):"
'
'lblEndofRains
'
Me.lblEndofRains.AutoSize = True
- Me.lblEndofRains.Location = New System.Drawing.Point(280, 136)
+ Me.lblEndofRains.Location = New System.Drawing.Point(280, 120)
Me.lblEndofRains.Name = "lblEndofRains"
Me.lblEndofRains.Size = New System.Drawing.Size(29, 13)
Me.lblEndofRains.TabIndex = 5
@@ -68,17 +70,17 @@ Partial Class dlgClimaticLengthOfSeason
'lblEndofRainsLogical
'
Me.lblEndofRainsLogical.AutoSize = True
- Me.lblEndofRainsLogical.Location = New System.Drawing.Point(280, 182)
+ Me.lblEndofRainsLogical.Location = New System.Drawing.Point(280, 166)
Me.lblEndofRainsLogical.Name = "lblEndofRainsLogical"
- Me.lblEndofRainsLogical.Size = New System.Drawing.Size(41, 13)
+ Me.lblEndofRainsLogical.Size = New System.Drawing.Size(77, 13)
Me.lblEndofRainsLogical.TabIndex = 7
- Me.lblEndofRainsLogical.Text = "End(L):"
+ Me.lblEndofRainsLogical.Text = "End Status (L):"
'
'ucrChkType
'
Me.ucrChkType.AutoSize = True
Me.ucrChkType.Checked = False
- Me.ucrChkType.Location = New System.Drawing.Point(5, 279)
+ Me.ucrChkType.Location = New System.Drawing.Point(5, 260)
Me.ucrChkType.Name = "ucrChkType"
Me.ucrChkType.Size = New System.Drawing.Size(87, 23)
Me.ucrChkType.TabIndex = 11
@@ -87,7 +89,7 @@ Partial Class dlgClimaticLengthOfSeason
'
Me.ucrChkLengthofSeason.AutoSize = True
Me.ucrChkLengthofSeason.Checked = False
- Me.ucrChkLengthofSeason.Location = New System.Drawing.Point(5, 247)
+ Me.ucrChkLengthofSeason.Location = New System.Drawing.Point(5, 228)
Me.ucrChkLengthofSeason.Name = "ucrChkLengthofSeason"
Me.ucrChkLengthofSeason.Size = New System.Drawing.Size(143, 23)
Me.ucrChkLengthofSeason.TabIndex = 9
@@ -98,7 +100,7 @@ Partial Class dlgClimaticLengthOfSeason
Me.ucrInputTextType.AutoSize = True
Me.ucrInputTextType.IsMultiline = False
Me.ucrInputTextType.IsReadOnly = False
- Me.ucrInputTextType.Location = New System.Drawing.Point(149, 278)
+ Me.ucrInputTextType.Location = New System.Drawing.Point(149, 259)
Me.ucrInputTextType.Name = "ucrInputTextType"
Me.ucrInputTextType.Size = New System.Drawing.Size(137, 21)
Me.ucrInputTextType.TabIndex = 12
@@ -109,7 +111,7 @@ Partial Class dlgClimaticLengthOfSeason
Me.ucrInputLengthofSeason.AutoSize = True
Me.ucrInputLengthofSeason.IsMultiline = False
Me.ucrInputLengthofSeason.IsReadOnly = False
- Me.ucrInputLengthofSeason.Location = New System.Drawing.Point(149, 246)
+ Me.ucrInputLengthofSeason.Location = New System.Drawing.Point(149, 227)
Me.ucrInputLengthofSeason.Name = "ucrInputLengthofSeason"
Me.ucrInputLengthofSeason.Size = New System.Drawing.Size(137, 21)
Me.ucrInputLengthofSeason.TabIndex = 10
@@ -118,7 +120,7 @@ Partial Class dlgClimaticLengthOfSeason
'
Me.ucrReceiverStartofRainsLogical.AutoSize = True
Me.ucrReceiverStartofRainsLogical.frmParent = Me
- Me.ucrReceiverStartofRainsLogical.Location = New System.Drawing.Point(283, 103)
+ Me.ucrReceiverStartofRainsLogical.Location = New System.Drawing.Point(283, 92)
Me.ucrReceiverStartofRainsLogical.Margin = New System.Windows.Forms.Padding(0)
Me.ucrReceiverStartofRainsLogical.Name = "ucrReceiverStartofRainsLogical"
Me.ucrReceiverStartofRainsLogical.Selector = Nothing
@@ -131,7 +133,7 @@ Partial Class dlgClimaticLengthOfSeason
'
Me.ucrReceiverEndofRainsLogical.AutoSize = True
Me.ucrReceiverEndofRainsLogical.frmParent = Me
- Me.ucrReceiverEndofRainsLogical.Location = New System.Drawing.Point(283, 198)
+ Me.ucrReceiverEndofRainsLogical.Location = New System.Drawing.Point(283, 182)
Me.ucrReceiverEndofRainsLogical.Margin = New System.Windows.Forms.Padding(0)
Me.ucrReceiverEndofRainsLogical.Name = "ucrReceiverEndofRainsLogical"
Me.ucrReceiverEndofRainsLogical.Selector = Nothing
@@ -144,7 +146,7 @@ Partial Class dlgClimaticLengthOfSeason
'
Me.ucrReceiverEndofRains.AutoSize = True
Me.ucrReceiverEndofRains.frmParent = Me
- Me.ucrReceiverEndofRains.Location = New System.Drawing.Point(283, 152)
+ Me.ucrReceiverEndofRains.Location = New System.Drawing.Point(283, 136)
Me.ucrReceiverEndofRains.Margin = New System.Windows.Forms.Padding(0)
Me.ucrReceiverEndofRains.Name = "ucrReceiverEndofRains"
Me.ucrReceiverEndofRains.Selector = Nothing
@@ -182,17 +184,41 @@ Partial Class dlgClimaticLengthOfSeason
'
Me.ucrBase.AutoSize = True
Me.ucrBase.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink
- Me.ucrBase.Location = New System.Drawing.Point(5, 311)
+ Me.ucrBase.Location = New System.Drawing.Point(5, 328)
Me.ucrBase.Name = "ucrBase"
Me.ucrBase.Size = New System.Drawing.Size(408, 52)
Me.ucrBase.TabIndex = 13
'
+ 'ucrChkLengthmore
+ '
+ Me.ucrChkLengthmore.AutoSize = True
+ Me.ucrChkLengthmore.Checked = False
+ Me.ucrChkLengthmore.Location = New System.Drawing.Point(5, 293)
+ Me.ucrChkLengthmore.Name = "ucrChkLengthmore"
+ Me.ucrChkLengthmore.Size = New System.Drawing.Size(143, 23)
+ Me.ucrChkLengthmore.TabIndex = 14
+ '
+ 'ucrNudLenghtmore
+ '
+ Me.ucrNudLenghtmore.AutoSize = True
+ Me.ucrNudLenghtmore.DecimalPlaces = New Decimal(New Integer() {0, 0, 0, 0})
+ Me.ucrNudLenghtmore.Increment = New Decimal(New Integer() {1, 0, 0, 0})
+ Me.ucrNudLenghtmore.Location = New System.Drawing.Point(149, 291)
+ Me.ucrNudLenghtmore.Maximum = New Decimal(New Integer() {100, 0, 0, 0})
+ Me.ucrNudLenghtmore.Minimum = New Decimal(New Integer() {0, 0, 0, 0})
+ Me.ucrNudLenghtmore.Name = "ucrNudLenghtmore"
+ Me.ucrNudLenghtmore.Size = New System.Drawing.Size(50, 20)
+ Me.ucrNudLenghtmore.TabIndex = 15
+ Me.ucrNudLenghtmore.Value = New Decimal(New Integer() {0, 0, 0, 0})
+ '
'dlgClimaticLengthOfSeason
'
Me.AutoScaleDimensions = New System.Drawing.SizeF(96.0!, 96.0!)
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi
Me.AutoSize = True
- Me.ClientSize = New System.Drawing.Size(416, 365)
+ Me.ClientSize = New System.Drawing.Size(416, 384)
+ Me.Controls.Add(Me.ucrNudLenghtmore)
+ Me.Controls.Add(Me.ucrChkLengthmore)
Me.Controls.Add(Me.ucrChkType)
Me.Controls.Add(Me.ucrChkLengthofSeason)
Me.Controls.Add(Me.ucrInputTextType)
@@ -230,4 +256,6 @@ Partial Class dlgClimaticLengthOfSeason
Friend WithEvents ucrChkLengthofSeason As ucrCheck
Friend WithEvents ucrInputTextType As ucrInputTextBox
Friend WithEvents ucrInputLengthofSeason As ucrInputTextBox
+ Friend WithEvents ucrNudLenghtmore As ucrNud
+ Friend WithEvents ucrChkLengthmore As ucrCheck
End Class
diff --git a/instat/dlgClimaticLengthOfSeason.vb b/instat/dlgClimaticLengthOfSeason.vb
index e6221ade614..673c14b017e 100644
--- a/instat/dlgClimaticLengthOfSeason.vb
+++ b/instat/dlgClimaticLengthOfSeason.vb
@@ -20,8 +20,8 @@ Public Class dlgClimaticLengthOfSeason
Private bReset As Boolean = True
Private strCurrDataName As String = ""
- Private clsLengthOfSeasonFunction, clsConvertColumnTypeFunction, clsApplyInstatCalcFunction, clsAsCharacterFunction, clsCombinationCalcFunction, clsStartEndStatusFunction, clsCaseWhenFunction, clsIsNAFunction, clsIsNA1Function, clsCombinationListFunction As New RFunction
- Private clsMinusOpertor, clsAndOperator, clsOROperator, clsCaseWhenOperator, clsCaseWhen1Operator, clsCaseWhen2Operator, clsCaseWhen3Operator, clsAssignOperator, clsAssign1Operator, clsAssign2Operator, clsAssign3Operator, clsAssign4Operator, clsAnd1Operator, clsAnd2Operator As New ROperator
+ Private clsLengthOfSeasonFunction, clsLengthmoreFunction, clsListFunction, clsAscharactermoreFunction, clsConvertColumnTypeFunction, clsElseIfMoreFunction, clsApplyInstatCalcFunction, clsAsCharacterFunction, clsCombinationCalcFunction, clsStartEndStatusFunction, clsCaseWhenFunction, clsIsNAFunction, clsIsNA1Function, clsCombinationListFunction As New RFunction
+ Private clsMinusOpertor, clsAssignMoreOperator, clsMinusmoreOPerator, clsAndOperator, clsOROperator, clsCaseWhenOperator, clsCaseWhen1Operator, clsCaseWhen2Operator, clsCaseWhen3Operator, clsAssignOperator, clsAssign1Operator, clsAssign2Operator, clsAssign3Operator, clsAssign4Operator, clsAnd1Operator, clsAnd2Operator As New ROperator
Private Sub dlgClimaticLengthOfSeason_Load(sender As Object, e As EventArgs) Handles MyBase.Load
If bFirstLoad Then
@@ -77,12 +77,28 @@ Public Class dlgClimaticLengthOfSeason
ucrInputTextType.SetParameter(New RParameter("result_name", 2))
ucrInputTextType.SetDataFrameSelector(ucrSelectorLengthofSeason.ucrAvailableDataFrames)
ucrInputTextType.SetName("length_status")
+
+ ucrChkLengthmore.SetText("Length_More")
+ ucrChkLengthmore.AddParameterPresentCondition(True, "sub3", True)
+ ucrChkLengthmore.AddParameterPresentCondition(False, "sub3", False)
+ ucrChkLengthmore.AddToLinkedControls(ucrNudLenghtmore, {True}, bNewLinkedAddRemoveParameter:=True, bNewLinkedHideIfParameterMissing:=True, bNewLinkedChangeToDefaultState:=True, objNewDefaultState:=366)
+
+ ucrNudLenghtmore.SetParameter(New RParameter("left", 0, False))
+ ucrNudLenghtmore.DecimalPlaces = 0
+ ucrNudLenghtmore.Increment = 1
+ ucrNudLenghtmore.Minimum = 1
+ ucrNudLenghtmore.Maximum = 366
+ EnableLengthmore()
End Sub
Private Sub SetDefaults()
Dim strLengthName As String = "length"
Dim strTypeName As String = "length_status"
+ clsAscharactermoreFunction = New RFunction
+ clsListFunction = New RFunction
+ clsMinusmoreOPerator =New ROperator
+
clsLengthOfSeasonFunction.Clear()
clsCombinationCalcFunction.Clear()
clsApplyInstatCalcFunction.Clear()
@@ -91,7 +107,10 @@ Public Class dlgClimaticLengthOfSeason
clsIsNAFunction.Clear()
clsIsNA1Function.Clear()
clsAsCharacterFunction.Clear()
+ clsLengthmoreFunction.Clear()
+ clsElseIfMoreFunction.Clear()
+ clsAssignMoreOperator.Clear()
clsMinusOpertor.Clear()
clsAndOperator.Clear()
clsOROperator.Clear()
@@ -217,6 +236,30 @@ Public Class dlgClimaticLengthOfSeason
clsConvertColumnTypeFunction.SetRCommand(frmMain.clsRLink.strInstatDataObject & "$convert_column_to_type")
clsConvertColumnTypeFunction.AddParameter("to_type", Chr(34) & "factor" & Chr(34), iPosition:=2)
+ clsLengthmoreFunction.SetRCommand("instat_calculation$new")
+ clsLengthmoreFunction.AddParameter("type", Chr(34) & "calculation" & Chr(34), iPosition:=0)
+ clsLengthmoreFunction.AddParameter("function_exp", clsRFunctionParameter:=clsElseIfMoreFunction, iPosition:=1)
+ clsLengthmoreFunction.AddParameter("sub_calculations", clsRFunctionParameter:=clsListFunction, iPosition:=4)
+ clsLengthmoreFunction.AddParameter("save", 2, iPosition:=5)
+ clsLengthmoreFunction.SetAssignTo("length_more")
+
+ clsListFunction.SetRCommand("list")
+ clsListFunction.AddParameter("x", "start_end_status", iPosition:=0, bIncludeArgumentName:=False)
+ clsListFunction.AddParameter("y", "length_of_season", iPosition:=1, bIncludeArgumentName:=False)
+
+ clsElseIfMoreFunction.SetRCommand("ifelse")
+ clsElseIfMoreFunction.bToScriptAsRString = True
+ clsElseIfMoreFunction.AddParameter("test", clsROperatorParameter:=clsAssignMoreOperator, iPosition:=0, bIncludeArgumentName:=False)
+ clsElseIfMoreFunction.AddParameter("yes", clsROperatorParameter:=clsMinusmoreOPerator, iPosition:=1, bIncludeArgumentName:=False)
+
+ clsAssignMoreOperator.SetOperation("==")
+ clsAssignMoreOperator.AddParameter("left", clsRFunctionParameter:=clsAscharactermoreFunction, iPosition:=0, bIncludeArgumentName:=False)
+ clsAssignMoreOperator.AddParameter("rigth", Chr(34) & "MORE" & Chr(34), iPosition:=1, bIncludeArgumentName:=False)
+
+ clsAscharactermoreFunction.SetRCommand("as.character")
+
+ clsMinusmoreOPerator.SetOperation("-")
+
'Base Function
ucrBase.clsRsyntax.ClearCodes()
ucrBase.clsRsyntax.SetBaseRFunction(clsApplyInstatCalcFunction)
@@ -233,6 +276,7 @@ Public Class dlgClimaticLengthOfSeason
ucrReceiverEndofRainsLogical.AddAdditionalCodeParameterPair(clsAnd2Operator, New RParameter("end_status", 1), iAdditionalPairNo:=4)
ucrReceiverStartofRainsLogical.AddAdditionalCodeParameterPair(clsAssign3Operator, New RParameter("start_status", 0), iAdditionalPairNo:=5)
ucrInputTextType.AddAdditionalCodeParameterPair(clsConvertColumnTypeFunction, New RParameter("col_names", 1), iAdditionalPairNo:=1)
+ ucrReceiverStartofRains.AddAdditionalCodeParameterPair(clsMinusmoreOPerator, New RParameter("rigth", 1, bNewIncludeArgumentName:=False), iAdditionalPairNo:=1)
ucrReceiverStartofRains.SetRCode(clsMinusOpertor, bReset)
ucrReceiverEndofRains.SetRCode(clsMinusOpertor, bReset)
@@ -242,6 +286,8 @@ Public Class dlgClimaticLengthOfSeason
ucrInputTextType.SetRCode(clsStartEndStatusFunction, bReset)
ucrChkLengthofSeason.SetRCode(clsCombinationListFunction, bReset)
ucrChkType.SetRCode(clsCombinationListFunction, bReset)
+ ucrChkLengthmore.SetRCode(clsCombinationListFunction, bReset)
+ ucrNudLenghtmore.SetRCode(clsMinusmoreOPerator, bReset)
End Sub
Private Sub TestOKEnabled()
@@ -288,6 +334,7 @@ Public Class dlgClimaticLengthOfSeason
End Sub
Private Sub ucrChkType_ControlValueChanged(ucrChangedControl As ucrCore) Handles ucrChkType.ControlValueChanged
+ EnableLengthmore()
If ucrChkType.Checked Then
clsCombinationListFunction.AddParameter("sub2", clsRFunctionParameter:=clsStartEndStatusFunction, bIncludeArgumentName:=False, iPosition:=1)
ucrBase.clsRsyntax.AddToAfterCodes(clsConvertColumnTypeFunction, iPosition:=0)
@@ -305,4 +352,35 @@ Public Class dlgClimaticLengthOfSeason
Private Sub ucrSelectorLengthofSeason_DataFrameChanged() Handles ucrSelectorLengthofSeason.DataFrameChanged
clsConvertColumnTypeFunction.AddParameter("data_name", Chr(34) & ucrSelectorLengthofSeason.ucrAvailableDataFrames.cboAvailableDataFrames.Text & Chr(34), iPosition:=0)
End Sub
+
+ Private Sub ucrChkLengthmore_ControlValueChanged(ucrChangedControl As ucrCore) Handles ucrChkLengthmore.ControlValueChanged
+ EnableLengthmore()
+ If ucrChkLengthmore.Checked Then
+ clsCombinationListFunction.AddParameter("sub3", clsRFunctionParameter:=clsLengthmoreFunction, bIncludeArgumentName:=False, iPosition:=2)
+ Else
+ clsCombinationListFunction.RemoveParameterByName("sub3")
+ End If
+ End Sub
+
+ Private Sub EnableLengthmore()
+ ucrChkLengthmore.Enabled = ucrChkType.Checked
+ End Sub
+
+ Private Sub ucrInputLengthofSeason_ControlValueChanged(ucrChangedControl As ucrCore) Handles ucrInputLengthofSeason.ControlValueChanged
+ If Not ucrInputLengthofSeason.IsEmpty Then
+ clsElseIfMoreFunction.AddParameter("no", ucrInputLengthofSeason.GetText(), iPosition:=2, bIncludeArgumentName:=False)
+ clsLengthmoreFunction.AddParameter("result_name", Chr(34) & ucrInputLengthofSeason.GetText & "_more" & Chr(34), iPosition:=2)
+ Else
+ clsElseIfMoreFunction.RemoveParameterByName("no")
+ clsLengthmoreFunction.RemoveParameterByName("result_name")
+ End If
+ End Sub
+
+ Private Sub ucrInputTextType_ControlValueChanged(ucrChangedControl As ucrCore) Handles ucrInputTextType.ControlValueChanged
+ If Not ucrInputTextType.IsEmpty Then
+ clsAscharactermoreFunction.AddParameter("x", ucrInputTextType.GetText(), iPosition:=0, bIncludeArgumentName:=False)
+ Else
+ clsAscharactermoreFunction.RemoveParameterByName("x")
+ End If
+ End Sub
End Class
\ No newline at end of file
diff --git a/instat/dlgClimaticSummary.vb b/instat/dlgClimaticSummary.vb
index 122ed4dfdcd..9afa0c59809 100644
--- a/instat/dlgClimaticSummary.vb
+++ b/instat/dlgClimaticSummary.vb
@@ -22,7 +22,7 @@ Public Class dlgClimaticSummary
Private iReceiverMaxY As Integer
Private iReceiverLabelMaxY As Integer
Private bResetSubdialog As Boolean = False
- Private clsDefaultFunction, clsConcFunction, clsSummariesList,
+ Private clsDefaultFunction, clsIfElseFirstDoyFilledFunction, clsConcFunction, clsSummariesList,
clsDefaultFactors, clsDayFilterCalc, clsDayFilterCalcFromConvert,
clsDayFilterCalcFromList, clsAddDateFunction,
clsDummyFunction As New RFunction
@@ -157,6 +157,7 @@ Public Class dlgClimaticSummary
clsConcFunction = New RFunction
clsAddDateFunction = New RFunction
clsDummyFunction = New RFunction
+ clsIfElseFirstDoyFilledFunction = New RFunction
clsFromAndToConditionOperator = New ROperator
clsDayFilterCalc = New RFunction
@@ -288,7 +289,7 @@ Public Class dlgClimaticSummary
End Sub
Private Sub cmdDoyRange_Click(sender As Object, e As EventArgs) Handles cmdDoyRange.Click
- sdgDoyRange.Setup(clsNewDoyFilterCalc:=clsDayFilterCalc, clsNewDayFromOperator:=clsFromConditionOperator, clsNewDayToOperator:=clsToConditionOperator, clsNewCalcFromList:=clsDayFilterCalcFromList, strNewMainDataFrame:=ucrSelectorVariable.ucrAvailableDataFrames.cboAvailableDataFrames.Text, strNewDoyColumn:=ucrReceiverDOY.GetVariableNames(False))
+ sdgDoyRange.Setup(clsNewDoyFilterCalc:=clsDayFilterCalc, clsNewIfElseFirstDoyFilledFunction:=clsIfElseFirstDoyFilledFunction, clsNewDayFromOperator:=clsFromConditionOperator, clsNewDayToOperator:=clsToConditionOperator, clsNewCalcFromList:=clsDayFilterCalcFromList, strNewMainDataFrame:=ucrSelectorVariable.ucrAvailableDataFrames.cboAvailableDataFrames.Text, strNewDoyColumn:=ucrReceiverDOY.GetVariableNames(False))
sdgDoyRange.ShowDialog()
UpdateDayFilterPreview()
End Sub
diff --git a/instat/dlgDescribeTwoVariable.vb b/instat/dlgDescribeTwoVariable.vb
index 8f4bd45c86b..6dac604e366 100644
--- a/instat/dlgDescribeTwoVariable.vb
+++ b/instat/dlgDescribeTwoVariable.vb
@@ -1592,7 +1592,7 @@ Public Class dlgDescribeTwoVariable
Dim ucrCurrentReceiver As ucrReceiverSingle = If(rdoTwoVariable.Checked,
ucrReceiverSecondTwoVariableFactor, ucrReceiverThreeVariableSecondFactor)
If Not ucrCurrentReceiver.IsEmpty Then
- strSecondVariableType = If({"factor", "character", "logical"}.Contains(ucrCurrentReceiver.strCurrDataType),
+ strSecondVariableType = If({"factor", "ordered,factor", "character", "logical"}.Contains(ucrCurrentReceiver.strCurrDataType),
"categorical", "numeric")
lblSecondType.Text = strSecondVariableType
lblSecondType.ForeColor = SystemColors.Highlight
@@ -1653,7 +1653,7 @@ Public Class dlgDescribeTwoVariable
If rdoThreeVariable.Checked Then
Dim ucrCurrentReceiver As ucrReceiverSingle = ucrReceiverThreeVariableThirdVariable
If Not ucrCurrentReceiver.IsEmpty Then
- strThirdVariableType = If({"factor", "character", "logical"}.Contains(ucrCurrentReceiver.strCurrDataType),
+ strThirdVariableType = If({"factor", "ordered,factor", "character", "logical"}.Contains(ucrCurrentReceiver.strCurrDataType),
"categorical", "numeric")
lblThreeVariableCategorical.Text = strThirdVariableType
lblThreeVariableCategorical.ForeColor = SystemColors.Highlight
diff --git a/instat/dlgEndOfRainsSeason.Designer.vb b/instat/dlgEndOfRainsSeason.Designer.vb
index 8b4b8203617..e877a70e9b1 100644
--- a/instat/dlgEndOfRainsSeason.Designer.vb
+++ b/instat/dlgEndOfRainsSeason.Designer.vb
@@ -52,6 +52,8 @@ Partial Class dlgEndOfRainsSeason
Me.rdoVariableEvaporation = New System.Windows.Forms.RadioButton()
Me.rdoValueEvaporation = New System.Windows.Forms.RadioButton()
Me.grpEndofSeason = New System.Windows.Forms.GroupBox()
+ Me.ucrInputFilled = New instat.ucrInputTextBox()
+ Me.ucrChkFilled = New instat.ucrCheck()
Me.ucrInputEndofSeasonOccurence = New instat.ucrInputTextBox()
Me.ucrInputSeasonDoy = New instat.ucrInputTextBox()
Me.ucrInputEndofSeasonDate = New instat.ucrInputTextBox()
@@ -214,19 +216,43 @@ Partial Class dlgEndOfRainsSeason
'
'grpEndofSeason
'
+ Me.grpEndofSeason.Controls.Add(Me.ucrInputFilled)
+ Me.grpEndofSeason.Controls.Add(Me.ucrChkFilled)
Me.grpEndofSeason.Controls.Add(Me.ucrInputEndofSeasonOccurence)
Me.grpEndofSeason.Controls.Add(Me.ucrInputSeasonDoy)
Me.grpEndofSeason.Controls.Add(Me.ucrInputEndofSeasonDate)
Me.grpEndofSeason.Controls.Add(Me.ucrChkEndofSeasonOccurence)
Me.grpEndofSeason.Controls.Add(Me.ucrChkEndofSeasonDate)
Me.grpEndofSeason.Controls.Add(Me.ucrChkEndofSeasonDoy)
- Me.grpEndofSeason.Location = New System.Drawing.Point(3, 426)
+ Me.grpEndofSeason.Location = New System.Drawing.Point(3, 403)
Me.grpEndofSeason.Name = "grpEndofSeason"
- Me.grpEndofSeason.Size = New System.Drawing.Size(472, 41)
+ Me.grpEndofSeason.Size = New System.Drawing.Size(472, 83)
Me.grpEndofSeason.TabIndex = 32
Me.grpEndofSeason.TabStop = False
Me.grpEndofSeason.Text = "End of Season"
'
+ 'ucrInputFilled
+ '
+ Me.ucrInputFilled.AddQuotesIfUnrecognised = True
+ Me.ucrInputFilled.AutoSize = True
+ Me.ucrInputFilled.IsMultiline = False
+ Me.ucrInputFilled.IsReadOnly = False
+ Me.ucrInputFilled.Location = New System.Drawing.Point(121, 53)
+ Me.ucrInputFilled.Margin = New System.Windows.Forms.Padding(9)
+ Me.ucrInputFilled.Name = "ucrInputFilled"
+ Me.ucrInputFilled.Size = New System.Drawing.Size(104, 21)
+ Me.ucrInputFilled.TabIndex = 49
+ '
+ 'ucrChkFilled
+ '
+ Me.ucrChkFilled.AutoSize = True
+ Me.ucrChkFilled.Checked = False
+ Me.ucrChkFilled.Location = New System.Drawing.Point(4, 53)
+ Me.ucrChkFilled.Margin = New System.Windows.Forms.Padding(6)
+ Me.ucrChkFilled.Name = "ucrChkFilled"
+ Me.ucrChkFilled.Size = New System.Drawing.Size(105, 25)
+ Me.ucrChkFilled.TabIndex = 50
+ '
'ucrInputEndofSeasonOccurence
'
Me.ucrInputEndofSeasonOccurence.AddQuotesIfUnrecognised = True
@@ -598,7 +624,7 @@ Partial Class dlgEndOfRainsSeason
'
Me.ucrBase.AutoSize = True
Me.ucrBase.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink
- Me.ucrBase.Location = New System.Drawing.Point(3, 472)
+ Me.ucrBase.Location = New System.Drawing.Point(3, 493)
Me.ucrBase.Margin = New System.Windows.Forms.Padding(4)
Me.ucrBase.Name = "ucrBase"
Me.ucrBase.Size = New System.Drawing.Size(408, 52)
@@ -732,4 +758,6 @@ Partial Class dlgEndOfRainsSeason
Friend WithEvents ucrInputEvaporation As ucrInputTextBox
Friend WithEvents ucrNudWB As ucrNud
Friend WithEvents ucrChkWB As ucrCheck
+ Friend WithEvents ucrInputFilled As ucrInputTextBox
+ Friend WithEvents ucrChkFilled As ucrCheck
End Class
\ No newline at end of file
diff --git a/instat/dlgEndOfRainsSeason.vb b/instat/dlgEndOfRainsSeason.vb
index 8bf2b645f9b..7b8056768be 100644
--- a/instat/dlgEndOfRainsSeason.vb
+++ b/instat/dlgEndOfRainsSeason.vb
@@ -23,13 +23,15 @@ Public Class dlgEndOfRainsSeason
Private strWBMin As String = "wb_min"
Private strWBMax As String = "wb_max"
Private strWB As String = "wb"
+ Private strCondCheck As String = "conditions_check"
Private strEvapReplaceNA As String = "evap_NA_as_value"
Private strCurrDataName As String = ""
Private iCapacityDefault As Integer = 60
+ Private strYearType As String = "year_type"
#Region "general_code_structures"
' General
- Private clsRunCalculation, clsListCalFunction, clsDummyFunction As New RFunction
+ Private clsVectorFunction, clsDeleteunusedrowFunction, clsStationtypeFunction, clsConvertColumnTypeStationFunction, clsConvertlinkedvariable1Function, clsConvertlinkedvariableFunction, clsConvertColumnType1Function, clsGetColumnDataTypeFunction, clsConvertColumnTypeFunction, clsRunCalculation, clsListCalFunction, clsDummyFunction As New RFunction
Private clsFirstOrLastFunction As New RFunction
' Group by
@@ -47,7 +49,7 @@ Public Class dlgEndOfRainsSeason
#Region "end_of_rains_code_structures"
' Rolling sum rain
- Private clsEndRainsRollingSumCalc, clsWBEvaporationMinFunction, clsWBEvaporationMaxFunction As New RFunction
+ Private clsEndRainsRollingSumCalc, clsElseIfENdRainStatusFunction, clsWBEvaporationMinFunction, clsWBEvaporationMaxFunction As New RFunction
Private clsRollSumRainFunction As New RFunction
Private clsWBOperator1, clsWBOperator2 As New ROperator
' Conditions filter
@@ -80,8 +82,7 @@ Public Class dlgEndOfRainsSeason
#Region "end_of_season_code_structures"
- Private clsEndSeasonIsNaRain As New RFunction
-
+ Private clsEndSeasonIsNaRain, clsLastFunction, clsnaIsRainFunction, clsElseIfRainFunction As New RFunction
' Rain min
Private clsEndSeasonRainMinCalc As New RFunction
Private clsIfElseRainMinFunction As New RFunction
@@ -131,6 +132,11 @@ Public Class dlgEndOfRainsSeason
Private clsIfElseVariableEvaporation As New RFunction
Private clsIsNaEvaporation As New RFunction
+ 'Check Condition
+ Private clsConditionCheckFunction, clsConvertColumnlinkeddataFunction, clsRunCalculationStatus2Function, clsSetNamesEndSeasonStatusFunction, clsSetNamesEndSeasonFunction, clsVectorCalFormListFunction, clsLinkeddataFunction, clsRunCalculationStatusFunction, clsAllStatusFunction, clsListCondCheckFilterFunction, clsIsnaSecondConditionFilterFunction, clsListCondCheckFunction, clsConditionsFilterCondCheckFunction, clsElseifCondCheckFunction, clsIsnaConditionCheckFunction As New RFunction
+
+ Private clsConditionCheckOperator, clsCheckSecondConditionFilterOperator, clsCheckConditionFilterOperator, clsConditionChecksecondOperator As ROperator
+
' Conditions filter
Private clsEndSeasonConditionsFilterCalc As New RFunction
Private clsEndSeasonConditionsFilterSubCalcsList As New RFunction
@@ -139,9 +145,12 @@ Public Class dlgEndOfRainsSeason
' Doy summary
Private clsEndSeasonFirstDoySummaryCalc As New RFunction
+ Private clsEndSeasonFirstDoySummaryCalcFilledFunction As New RFunction
Private clsIfElseFirstDoyFunction As New RFunction
- Private clsIsNaFirstWB As New RFunction
- Private clsFirstDoyFunction As New RFunction
+ Public clsIfElseFirstDoyFilledFunction As New RFunction
+ Private clsIfElseFirstDoyFilled1Function, clsrunfilledFunction, clsFirstFilledFunction, clsFirstFilled1Function, clsIsNafilledFunction As New RFunction
+ Private clsAssignOperator As New ROperator
+ Private clsFirstDoyFunction, clsIsNaFirstWB As New RFunction
Private clsFirstWBFunction As New RFunction
' Date summary
@@ -150,12 +159,12 @@ Public Class dlgEndOfRainsSeason
Private clsFirstDateFunction As New RFunction
' Status summary
- Private clsEndSeasonStatusSummaryCalc As New RFunction
+ Private clsEndSeasonStatusSummaryCalc, clsIfelseStatus2Function, clsIsnaStatus2Function, clsEndSeasonStatus2Function, clsIsNAStatusFunction, clsFirstStatusFunction, clsIfelseStatusFunction, clsIfelseStatus1Function As New RFunction
' Combination
- Private clsEndSeasonCombinationCalc As New RFunction
- Private clsEndSeasonCombinationManipulationList As New RFunction
- Private clsEndSeasonCombinationSubCalcList As New RFunction
+ Private clsEndSeasonCombinationCalc, clsEndSeasonCombiStatus2ListFunction, clsEndSeasonCombiStatus2Function, clsEndSeasonCombinationCalcStatusFunction As New RFunction
+ Private clsEndSeasonCombinationManipulationList, clsEndSeasonCombinationManipulationListStatusFunction As New RFunction
+ Private clsEndSeasonCombinationSubCalcList, clsEndSeasonCombinationSubCalcListStatusFunction As New RFunction
#End Region
Private Sub dlgEndOfRainsSeason_Load(sender As Object, e As EventArgs) Handles MyBase.Load
@@ -304,6 +313,15 @@ Public Class dlgEndOfRainsSeason
ucrInputEndofSeasonOccurence.SetDataFrameSelector(ucrSelectorForWaterBalance.ucrAvailableDataFrames)
ucrInputEndofSeasonOccurence.SetValidationTypeAsRVariable()
+ ucrChkFilled.AddParameterValuesCondition(True, "sub4", "True")
+ ucrChkFilled.AddParameterValuesCondition(False, "sub4", "False")
+ ucrChkFilled.SetText("Filled")
+
+ ucrInputFilled.SetParameter(New RParameter("result_name", 2))
+ ucrInputFilled.SetDataFrameSelector(ucrSelectorForWaterBalance.ucrAvailableDataFrames)
+ ucrInputFilled.SetValidationTypeAsRVariable()
+
+
ucrChkWB.AddParameterPresentCondition(True, "WB_evap", True)
ucrChkWB.AddParameterPresentCondition(False, "WB_evap", False)
ucrChkWB.SetText("Reducing")
@@ -319,6 +337,7 @@ Public Class dlgEndOfRainsSeason
ucrChkEndofSeasonOccurence.AddToLinkedControls(ucrInputEndofSeasonOccurence, {True}, bNewLinkedHideIfParameterMissing:=True)
ucrChkEndofSeasonDate.AddToLinkedControls(ucrInputEndofSeasonDate, {True}, bNewLinkedHideIfParameterMissing:=True)
ucrChkEndofSeasonDoy.AddToLinkedControls(ucrInputSeasonDoy, {True}, bNewLinkedHideIfParameterMissing:=True)
+ ucrChkFilled.AddToLinkedControls(ucrInputFilled, {True}, bNewLinkedHideIfParameterMissing:=True)
ucrChkWB.AddToLinkedControls(ucrNudWB, {True}, bNewLinkedAddRemoveParameter:=True, bNewLinkedHideIfParameterMissing:=True, bNewLinkedChangeToDefaultState:=True, objNewDefaultState:=0.5)
ucrPnlEvaporation.AddToLinkedControls(ucrInputEvaporation, {rdoValueEvaporation}, bNewLinkedAddRemoveParameter:=True, bNewLinkedHideIfParameterMissing:=True, bNewLinkedChangeToDefaultState:=True, objNewDefaultState:=5)
ucrPnlEvaporation.AddToLinkedControls(ucrReceiverEvaporation, {rdoVariableEvaporation}, bNewLinkedHideIfParameterMissing:=True)
@@ -328,7 +347,7 @@ Public Class dlgEndOfRainsSeason
ucrPnlEndOfRainsAndSeasons.AddToLinkedControls({ucrNudCapacity, ucrNudWBLessThan, ucrChkEndofSeasonDoy}, {rdoEndOfSeasons}, bNewLinkedAddRemoveParameter:=True, bNewLinkedHideIfParameterMissing:=True)
ucrPnlEndOfRainsAndSeasons.AddToLinkedControls({ucrPnlEvaporation}, {rdoEndOfSeasons}, bNewLinkedAddRemoveParameter:=True, bNewLinkedHideIfParameterMissing:=True)
ucrPnlEndOfRainsAndSeasons.AddToLinkedControls({ucrChkWB}, {rdoEndOfSeasons}, bNewLinkedAddRemoveParameter:=True, bNewLinkedHideIfParameterMissing:=True)
- ucrPnlEndOfRainsAndSeasons.AddToLinkedControls({ucrChkEndofSeasonDate, ucrChkEndofSeasonDoy, ucrChkEndofSeasonOccurence}, {rdoEndOfSeasons}, bNewLinkedAddRemoveParameter:=True, bNewLinkedHideIfParameterMissing:=True)
+ ucrPnlEndOfRainsAndSeasons.AddToLinkedControls({ucrChkEndofSeasonDate, ucrChkEndofSeasonDoy, ucrChkEndofSeasonOccurence, ucrChkFilled}, {rdoEndOfSeasons}, bNewLinkedAddRemoveParameter:=True, bNewLinkedHideIfParameterMissing:=True)
ucrPnlEndOfRainsAndSeasons.AddToLinkedControls({ucrChkEndofRainsDate, ucrChkEndofRainsDoy, ucrChkEndofRainsOccurence}, {rdoEndOfRains}, bNewLinkedAddRemoveParameter:=True, bNewLinkedHideIfParameterMissing:=True)
ucrChkEndofRainsDoy.SetLinkedDisplayControl(grpEndofRains)
@@ -349,22 +368,48 @@ Public Class dlgEndOfRainsSeason
Dim strWaterBalanceMin As String = "water_balance_min"
Dim strDifference As String = "difference"
Dim strConditionsFilter As String = "conditions_filter"
+ Dim strConditionFilterCondCheck As String = "conditions_filter"
Dim strRollSumRain As String = "roll_sum_rain"
Dim strEndRains As String = "end_rains"
Dim strEndRainsStatus As String = "end_rains_status"
Dim strEndRainsDate As String = "end_rains_date"
Dim strEndSeason As String = "end_season"
+ Dim strEndSeasonFilled As String = "end_season_filled"
Dim strEndSeasonStatus As String = "end_season_status"
Dim strEndSeasonDate As String = "end_season_date"
Dim strDoyFilter As String = "doy_filter"
Dim strEndofRains As String = "end_of_rains_combined"
Dim strEndofSeason As String = "end_of_season_combined"
+ Dim strEndofSeasonStatus As String = "end_of_season_combined_status"
+ Dim strEndSeasonStatus2 As String = "end_season_status_2"
+ Dim strEndSeasonCombiStatus2 As String = "end_season_combined_status_2"
+ Dim strStationType As String = "station_type"
+ Dim strLinkeddata As String = "linked_data_name"
+ Dim strCalformlist As String = "calculated_from_list"
+
+ clsVectorFunction = New RFunction
+ clsConvertlinkedvariableFunction = New RFunction
+ clsConvertlinkedvariable1Function = New RFunction
+ clsIfElseFirstDoyFilled1Function = New RFunction
+ clsFirstFilledFunction = New RFunction
+ clsIsNafilledFunction = New RFunction
+ clsFirstFilled1Function = New RFunction
+ clsDeleteunusedrowFunction = New RFunction
+ clsConditionCheckOperator = New ROperator
+ clsConditionChecksecondOperator = New ROperator
+ clsCheckConditionFilterOperator = New ROperator
+ clsCheckSecondConditionFilterOperator = New ROperator
#Region "clear_code_structures"
' General
clsRunCalculation.Clear()
clsListCalFunction.Clear()
clsFirstOrLastFunction.Clear()
+ clsConvertColumnTypeFunction.Clear()
+ clsGetColumnDataTypeFunction.Clear()
+ clsConvertColumnType1Function.Clear()
+ clsStationtypeFunction.Clear()
+ clsConvertColumnTypeStationFunction.Clear()
' Group by
clsGroupByStationYearCalc.Clear()
@@ -382,6 +427,10 @@ Public Class dlgEndOfRainsSeason
' Rolling sum rain
clsEndRainsRollingSumCalc.Clear()
clsRollSumRainFunction.Clear()
+ clsElseIfENdRainStatusFunction.Clear()
+ clsElseIfRainFunction.Clear()
+ clsnaIsRainFunction.Clear()
+ clsLastFunction.Clear()
' Conditions filter
clsEndRainsConditionsFilterCalc.Clear()
@@ -404,6 +453,10 @@ Public Class dlgEndOfRainsSeason
' Status summary
clsEndRainsStatusSummaryCalc.Clear()
+ clsIfelseStatusFunction.Clear()
+ clsIfelseStatus1Function.Clear()
+ clsFirstStatusFunction.Clear()
+ clsIsNAStatusFunction.Clear()
' Combination
clsEndRainsCombinationCalc.Clear()
@@ -464,6 +517,18 @@ Public Class dlgEndOfRainsSeason
clsIsNaEvaporation.Clear()
' Conditions filter
+ clsConditionCheckFunction.Clear()
+ clsElseifCondCheckFunction.Clear()
+ clsIsnaConditionCheckFunction.Clear()
+ clsListCondCheckFunction.Clear()
+ clsConditionsFilterCondCheckFunction.Clear()
+ clsIsnaSecondConditionFilterFunction.Clear()
+ clsListCondCheckFilterFunction.Clear()
+ clsEndSeasonStatus2Function.Clear()
+ clsIfelseStatus2Function.Clear()
+ clsIsnaStatus2Function.Clear()
+ clsEndSeasonCombiStatus2Function.Clear()
+ clsEndSeasonCombiStatus2ListFunction.Clear()
clsEndSeasonConditionsFilterCalc.Clear()
clsEndSeasonConditionsFilterSubCalcsList.Clear()
clsEndSeasonConditionsOperator.Clear()
@@ -471,10 +536,14 @@ Public Class dlgEndOfRainsSeason
' Doy summary
clsEndSeasonFirstDoySummaryCalc.Clear()
+ clsEndSeasonFirstDoySummaryCalcFilledFunction.Clear()
clsIfElseFirstDoyFunction.Clear()
+ clsIfElseFirstDoyFilledFunction.Clear()
+ clsAssignOperator.Clear()
clsIsNaFirstWB.Clear()
clsFirstDoyFunction.Clear()
clsFirstWBFunction.Clear()
+ clsrunfilledFunction.Clear()
' Date summary
clsEndSeasonFirstDateSummaryCalc.Clear()
@@ -486,9 +555,11 @@ Public Class dlgEndOfRainsSeason
' Combination
clsEndSeasonCombinationCalc.Clear()
+ clsEndSeasonCombinationCalcStatusFunction.Clear()
clsEndSeasonCombinationManipulationList.Clear()
+ clsEndSeasonCombinationManipulationListStatusFunction.Clear()
clsEndSeasonCombinationSubCalcList.Clear()
-
+ clsEndSeasonCombinationSubCalcListStatusFunction.Clear()
#End Region
ucrSelectorForWaterBalance.Reset()
@@ -513,17 +584,17 @@ Public Class dlgEndOfRainsSeason
clsGroupByStationCalc.SetAssignTo("grouping_by_station")
' Doy Filter
- clsDoyFilterCalcFromConvert.SetRCommand("calc_from_convert")
- clsDoyFilterCalcFromConvert.AddParameter("x", clsRFunctionParameter:=clsDoyFilterCalcFromList, iPosition:=0)
-
- clsDoyFilterCalcFromList.SetRCommand("list")
-
clsDoyFilterCalc.SetRCommand("instat_calculation$new")
clsDoyFilterCalc.AddParameter("type", Chr(34) & "filter" & Chr(34), iPosition:=0)
clsDoyFilterCalc.AddParameter("function_exp", clsROperatorParameter:=clsDoyFilterOperator, iPosition:=1)
clsDoyFilterCalc.AddParameter("calculated_from", clsRFunctionParameter:=clsDoyFilterCalcFromConvert, iPosition:=2)
clsDoyFilterCalc.SetAssignTo(strDoyFilter)
+ clsDoyFilterCalcFromConvert.SetRCommand("calc_from_convert")
+ clsDoyFilterCalcFromConvert.AddParameter("x", clsRFunctionParameter:=clsDoyFilterCalcFromList, iPosition:=0)
+
+ clsDoyFilterCalcFromList.SetRCommand("list")
+
clsDoyFilterOperator.SetOperation("&")
clsDoyFilterOperator.AddParameter("from_operator", clsROperatorParameter:=clsDayFromOperator, iPosition:=0)
clsDoyFilterOperator.AddParameter("to_operator", clsROperatorParameter:=clsDayToOperator, iPosition:=1)
@@ -619,11 +690,29 @@ Public Class dlgEndOfRainsSeason
' Status summary
clsEndRainsStatusSummaryCalc.SetRCommand("instat_calculation$new")
clsEndRainsStatusSummaryCalc.AddParameter("type", Chr(34) & "summary" & Chr(34), iPosition:=0)
- clsEndRainsStatusSummaryCalc.AddParameter("function_exp", Chr(34) & "n() > 0" & Chr(34), iPosition:=1)
+ clsEndRainsStatusSummaryCalc.AddParameter("function_exp", clsRFunctionParameter:=clsElseIfENdRainStatusFunction, iPosition:=1)
clsEndRainsStatusSummaryCalc.AddParameter("result_name", Chr(34) & strEndRainsStatus & Chr(34), iPosition:=3)
clsEndRainsStatusSummaryCalc.AddParameter("save", 2, iPosition:=4)
clsEndRainsStatusSummaryCalc.SetAssignTo(strEndRainsStatus)
+ clsElseIfENdRainStatusFunction.SetRCommand("ifelse")
+ clsElseIfENdRainStatusFunction.bToScriptAsRString = True
+ clsElseIfENdRainStatusFunction.AddParameter("x", "n() > 0", iPosition:=0, bIncludeArgumentName:=False)
+ clsElseIfENdRainStatusFunction.AddParameter("yes", clsRFunctionParameter:=clsElseIfRainFunction, iPosition:=1)
+ clsElseIfENdRainStatusFunction.AddParameter("no", "FALSE", iPosition:=2)
+
+ clsElseIfRainFunction.SetRCommand("ifelse")
+ clsElseIfRainFunction.AddParameter("y", clsRFunctionParameter:=clsnaIsRainFunction, iPosition:=0, bIncludeArgumentName:=False)
+ clsElseIfRainFunction.AddParameter("yes", "NA", iPosition:=1)
+ clsElseIfRainFunction.AddParameter("no", "TRUE", iPosition:=2)
+
+ clsnaIsRainFunction.SetRCommand("is.na")
+ clsnaIsRainFunction.AddParameter("x", clsRFunctionParameter:=clsLastFunction, iPosition:=1)
+
+ clsLastFunction.SetPackageName("dplyr")
+ clsLastFunction.SetRCommand("last")
+ clsLastFunction.AddParameter("x", strRollSumRain, iPosition:=0)
+
' Combined
clsEndRainsCombinationCalc.SetRCommand("instat_calculation$new")
clsEndRainsCombinationCalc.AddParameter("type", Chr(34) & "combination" & Chr(34), iPosition:=0)
@@ -648,16 +737,17 @@ Public Class dlgEndOfRainsSeason
clsEndRainsCombinationSubCalcList.SetRCommand("list")
clsEndRainsCombinationSubCalcList.AddParameter("sub1", clsRFunctionParameter:=clsEndRainsLastDoySummaryCalc, bIncludeArgumentName:=False, iPosition:=0)
+ clsEndRainsCombinationSubCalcList.AddParameter("sub2", clsRFunctionParameter:=clsEndRainsLastDateSummaryCalc, bIncludeArgumentName:=False, iPosition:=1)
+ clsEndRainsCombinationSubCalcList.AddParameter("sub3", clsRFunctionParameter:=clsEndRainsStatusSummaryCalc, bIncludeArgumentName:=False, iPosition:=2)
clsListCalFunction.SetRCommand("list")
clsListCalFunction.AddParameter("drop", "FALSE", iPosition:=0)
clsRunCalculation.SetRCommand(frmMain.clsRLink.strInstatDataObject & "$run_instat_calculation")
- clsRunCalculation.AddParameter("display", "FALSE")
- clsRunCalculation.AddParameter("calc", clsRFunctionParameter:=clsEndRainsCombinationCalc)
+ clsRunCalculation.AddParameter("display", "FALSE", iPosition:=0)
+ clsRunCalculation.AddParameter("calc", clsRFunctionParameter:=clsEndRainsCombinationCalc, iPosition:=1)
clsRunCalculation.AddParameter("param_list", clsRFunctionParameter:=clsListCalFunction, iPosition:=2)
- ucrBase.clsRsyntax.SetBaseRFunction(clsRunCalculation)
#End Region
#Region "end_of_season"
@@ -685,7 +775,7 @@ Public Class dlgEndOfRainsSeason
clsIfElseRainMaxFunction.bToScriptAsRString = True
clsIfElseRainMaxFunction.SetRCommand("ifelse")
clsIfElseRainMaxFunction.AddParameter("test", clsRFunctionParameter:=clsEndSeasonIsNaRain, iPosition:=0)
- clsIfElseRainMaxFunction.AddParameter("yes", 100, iPosition:=0)
+ clsIfElseRainMaxFunction.AddParameter("yes", 100, iPosition:=1)
'Pmax
clsPMaxFunction.SetRCommand("pmax")
@@ -713,15 +803,15 @@ Public Class dlgEndOfRainsSeason
clsReduceWBMinFunction1.bToScriptAsRString = True
clsReduceWBMinFunction1.SetPackageName("purrr")
clsReduceWBMinFunction1.SetRCommand("accumulate2")
- clsReduceWBMinFunction1.AddParameter(".f", clsRFunctionParameter:=clsPMinWBMinFunction, iPosition:=0)
- clsReduceWBMinFunction1.AddParameter(".x", clsRFunctionParameter:=clsWBMinTailFunction, iPosition:=1)
+ clsReduceWBMinFunction1.AddParameter(".x", clsRFunctionParameter:=clsWBMinTailFunction, iPosition:=0)
+ clsReduceWBMinFunction1.AddParameter(".f", clsRFunctionParameter:=clsPMinWBMinFunction, iPosition:=1)
clsReduceWBMinFunction1.AddParameter(".init", "0", iPosition:=2)
clsReduceWBMinFunction2.bToScriptAsRString = True
clsReduceWBMinFunction2.SetPackageName("purrr")
clsReduceWBMinFunction2.SetRCommand("accumulate")
- clsReduceWBMinFunction2.AddParameter(".f", clsRFunctionParameter:=clsPMinWBMinFunction, iPosition:=0)
- clsReduceWBMinFunction2.AddParameter(".x", clsRFunctionParameter:=clsWBMinTailFunction2, iPosition:=1)
+ clsReduceWBMinFunction2.AddParameter(".x", clsRFunctionParameter:=clsWBMinTailFunction2, iPosition:=0)
+ clsReduceWBMinFunction2.AddParameter(".f", clsRFunctionParameter:=clsPMinWBMinFunction, iPosition:=1)
clsReduceWBMinFunction2.AddParameter(".init", "0", iPosition:=2)
clsPMinWBMinFunction.SetRCommand(" ~ pmin")
@@ -841,12 +931,12 @@ Public Class dlgEndOfRainsSeason
' Conditions filter
clsEndSeasonConditionsFilterCalc.SetRCommand("instat_calculation$new")
clsEndSeasonConditionsFilterCalc.AddParameter("type", Chr(34) & "filter" & Chr(34), iPosition:=0)
- clsEndSeasonConditionsFilterCalc.AddParameter("function_exp", clsROperatorParameter:=clsEndSeasonConditionsOperator, iPosition:=1)
+ clsEndSeasonConditionsFilterCalc.AddParameter("function_exp", Chr(34) & "conditions_check == 1" & Chr(34), iPosition:=1)
clsEndSeasonConditionsFilterCalc.AddParameter("sub_calculations", clsRFunctionParameter:=clsEndSeasonConditionsFilterSubCalcsList, iPosition:=4)
clsEndSeasonConditionsFilterCalc.SetAssignTo(strConditionsFilter)
clsEndSeasonConditionsFilterSubCalcsList.SetRCommand("list")
- clsEndSeasonConditionsFilterSubCalcsList.AddParameter("sub1", clsRFunctionParameter:=clsEndSeasonWBCalc, iPosition:=0, bIncludeArgumentName:=False)
+ clsEndSeasonConditionsFilterSubCalcsList.AddParameter("sub1", clsRFunctionParameter:=clsConditionCheckFunction, iPosition:=0, bIncludeArgumentName:=False)
clsEndSeasonConditionsOperator.bToScriptAsRString = True
clsEndSeasonConditionsOperator.SetOperation("|")
@@ -865,12 +955,35 @@ Public Class dlgEndOfRainsSeason
clsEndSeasonFirstDoySummaryCalc.AddParameter("save", "2", iPosition:=6)
clsEndSeasonFirstDoySummaryCalc.SetAssignTo(strEndSeason)
+ clsEndSeasonFirstDoySummaryCalcFilledFunction.SetRCommand("instat_calculation$new")
+ clsEndSeasonFirstDoySummaryCalcFilledFunction.AddParameter("type", Chr(34) & "calculation" & Chr(34), iPosition:=0)
+ clsEndSeasonFirstDoySummaryCalcFilledFunction.AddParameter("function_exp", clsRFunctionParameter:=clsIfElseFirstDoyFilledFunction, iPosition:=1)
+ clsEndSeasonFirstDoySummaryCalcFilledFunction.AddParameter("result_name", Chr(34) & strEndSeasonFilled & Chr(34), iPosition:=3)
+ clsEndSeasonFirstDoySummaryCalcFilledFunction.AddParameter("save", "2", iPosition:=4)
+ clsEndSeasonFirstDoySummaryCalcFilledFunction.AddParameter("calculated_from", strCalformlist, iPosition:=2)
+ clsEndSeasonFirstDoySummaryCalcFilledFunction.SetAssignTo(strEndSeasonFilled)
+
clsIfElseFirstDoyFunction.bToScriptAsRString = True
clsIfElseFirstDoyFunction.SetRCommand("ifelse")
clsIfElseFirstDoyFunction.AddParameter("test", clsRFunctionParameter:=clsIsNaFirstWB, iPosition:=0)
clsIfElseFirstDoyFunction.AddParameter("yes", "NA", iPosition:=1)
clsIfElseFirstDoyFunction.AddParameter("no", clsRFunctionParameter:=clsFirstDoyFunction, iPosition:=2)
+ clsIfElseFirstDoyFilledFunction.bToScriptAsRString = True
+ clsIfElseFirstDoyFilledFunction.SetRCommand("ifelse")
+ clsIfElseFirstDoyFilledFunction.AddParameter("test", clsROperatorParameter:=clsAssignOperator, iPosition:=0, bIncludeArgumentName:=False)
+ clsIfElseFirstDoyFilledFunction.AddParameter("yes", "366", iPosition:=1)
+ clsIfElseFirstDoyFilledFunction.AddParameter("no", strEndSeason, iPosition:=2)
+
+ clsAssignOperator.SetOperation("==")
+ clsAssignOperator.AddParameter("left", strEndSeasonStatus, iPosition:=0, bIncludeArgumentName:=False)
+ clsAssignOperator.AddParameter("right", "FALSE", iPosition:=1, bIncludeArgumentName:=False)
+
+ clsrunfilledFunction.SetRCommand(frmMain.clsRLink.strInstatDataObject & "$run_instat_calculation")
+ clsrunfilledFunction.AddParameter("display", "FALSE", iPosition:=0)
+ clsrunfilledFunction.AddParameter("param_list", clsRFunctionParameter:=clsListCalFunction, iPosition:=1)
+ clsrunfilledFunction.AddParameter("calc", strEndSeasonFilled, iPosition:=2)
+
clsIsNaFirstWB.SetRCommand("is.na")
clsIsNaFirstWB.AddParameter("x", clsRFunctionParameter:=clsFirstWBFunction, iPosition:=0)
@@ -902,11 +1015,30 @@ Public Class dlgEndOfRainsSeason
' Status summary
clsEndSeasonStatusSummaryCalc.SetRCommand("instat_calculation$new")
clsEndSeasonStatusSummaryCalc.AddParameter("type", Chr(34) & "summary" & Chr(34), iPosition:=0)
- clsEndSeasonStatusSummaryCalc.AddParameter("function_exp", Chr(34) & "n() > 0" & Chr(34), iPosition:=1)
+ clsEndSeasonStatusSummaryCalc.AddParameter("function_exp", clsRFunctionParameter:=clsIfelseStatusFunction, iPosition:=1)
clsEndSeasonStatusSummaryCalc.AddParameter("result_name", Chr(34) & strEndSeasonStatus & Chr(34), iPosition:=3)
- clsEndSeasonStatusSummaryCalc.AddParameter("save", 2, iPosition:=4)
+ clsEndSeasonStatusSummaryCalc.AddParameter("sub_calculations", clsRFunctionParameter:=clsListCondCheckFilterFunction, iPosition:=4)
+ clsEndSeasonStatusSummaryCalc.AddParameter("save", 2, iPosition:=5)
clsEndSeasonStatusSummaryCalc.SetAssignTo(strEndSeasonStatus)
+ clsIfelseStatusFunction.SetRCommand("ifelse")
+ clsIfelseStatusFunction.bToScriptAsRString = True
+ clsIfelseStatusFunction.AddParameter("x", "n() == 0", iPosition:=0, bIncludeArgumentName:=False)
+ clsIfelseStatusFunction.AddParameter("y", "NA", iPosition:=1, bIncludeArgumentName:=False)
+ clsIfelseStatusFunction.AddParameter("z", clsRFunctionParameter:=clsIfelseStatus1Function, iPosition:=2, bIncludeArgumentName:=False)
+
+ clsIfelseStatus1Function.SetRCommand("ifelse")
+ clsIfelseStatus1Function.AddParameter("test", clsRFunctionParameter:=clsAllStatusFunction, iPosition:=0, bIncludeArgumentName:=False)
+ clsIfelseStatus1Function.AddParameter("yes", "FALSE", iPosition:=1, bIncludeArgumentName:=False)
+ clsIfelseStatus1Function.AddParameter("no", "NA", iPosition:=2, bIncludeArgumentName:=False)
+
+ clsAllStatusFunction.SetRCommand("all")
+ clsAllStatusFunction.AddParameter("x", "conditions_check == 0", iPosition:=0, bIncludeArgumentName:=False)
+ clsAllStatusFunction.AddParameter("na.rm", "TRUE", iPosition:=1)
+
+ clsIsNAStatusFunction.SetRCommand("is.na")
+ clsIsNAStatusFunction.AddParameter("x", strWB, iPosition:=0, bIncludeArgumentName:=False)
+
' Combined
clsEndSeasonCombinationCalc.SetRCommand("instat_calculation$new")
clsEndSeasonCombinationCalc.AddParameter("type", Chr(34) & "combination" & Chr(34), iPosition:=0)
@@ -921,18 +1053,173 @@ Public Class dlgEndOfRainsSeason
clsEndSeasonCombinationSubCalcList.SetRCommand("list")
clsEndSeasonCombinationSubCalcList.AddParameter("sub1", clsRFunctionParameter:=clsEndSeasonFirstDoySummaryCalc, bIncludeArgumentName:=False, iPosition:=0)
+ clsEndSeasonCombinationSubCalcList.AddParameter("sub2", clsRFunctionParameter:=clsEndSeasonFirstDateSummaryCalc, bIncludeArgumentName:=False, iPosition:=1)
+
+ clsGetColumnDataTypeFunction.SetRCommand(frmMain.clsRLink.strInstatDataObject & "$get_column_data_types")
+ clsGetColumnDataTypeFunction.SetAssignTo(strYearType)
+
+ clsConvertColumnTypeFunction.SetRCommand(frmMain.clsRLink.strInstatDataObject & "$convert_column_to_type")
+ clsConvertColumnTypeFunction.AddParameter("to_type", Chr(34) & "factor" & Chr(34), iPosition:=2)
+
+ clsVectorFunction.SetRCommand("c")
+
+ clsConvertColumnType1Function.SetRCommand(frmMain.clsRLink.strInstatDataObject & "$convert_column_to_type")
+ clsConvertColumnType1Function.AddParameter("to_type", "year_type", iPosition:=2)
+
+ clsConvertlinkedvariableFunction.SetRCommand(frmMain.clsRLink.strInstatDataObject & "$convert_linked_variable")
+
+ clsConvertlinkedvariable1Function.SetRCommand(frmMain.clsRLink.strInstatDataObject & "$convert_linked_variable")
+
+ clsConditionCheckFunction.SetRCommand("instat_calculation$new")
+ clsConditionCheckFunction.AddParameter("type", Chr(34) & "calculation" & Chr(34), iPosition:=0)
+ clsConditionCheckFunction.AddParameter("function_exp", clsRFunctionParameter:=clsElseifCondCheckFunction, iPosition:=1)
+ clsConditionCheckFunction.AddParameter("result_name", Chr(34) & strCondCheck & Chr(34), iPosition:=2)
+ clsConditionCheckFunction.AddParameter("sub_calculations", clsRFunctionParameter:=clsListCondCheckFunction, iPosition:=3)
+ clsConditionCheckFunction.SetAssignTo(strCondCheck)
+
+ clsListCondCheckFunction.SetRCommand("list")
+ clsListCondCheckFunction.AddParameter("x", clsRFunctionParameter:=clsEndSeasonWBCalc, iPosition:=0, bIncludeArgumentName:=False)
+
+ clsElseifCondCheckFunction.bToScriptAsRString = True
+ clsElseifCondCheckFunction.SetRCommand("ifelse")
+ clsElseifCondCheckFunction.AddParameter("test", clsROperatorParameter:=clsConditionCheckOperator, iPosition:=0, bIncludeArgumentName:=False)
+ clsElseifCondCheckFunction.AddParameter("yes", "1", iPosition:=1, bIncludeArgumentName:=False)
+ clsElseifCondCheckFunction.AddParameter("no", "0", iPosition:=2, bIncludeArgumentName:=False)
+
+ clsConditionCheckOperator.SetOperation("|")
+ clsConditionCheckOperator.AddParameter("left", clsROperatorParameter:=clsConditionChecksecondOperator, iPosition:=0, bIncludeArgumentName:=False)
+ clsConditionCheckOperator.AddParameter("riht", clsRFunctionParameter:=clsIsnaConditionCheckFunction, iPosition:=1, bIncludeArgumentName:=False)
+
+ clsConditionChecksecondOperator.SetOperation("<=")
+ clsConditionChecksecondOperator.AddParameter("left", strWB, iPosition:=0, bIncludeArgumentName:=False)
+ clsConditionChecksecondOperator.AddParameter("right", "0.5", iPosition:=1, bIncludeArgumentName:=False)
+
+ clsIsnaConditionCheckFunction.SetRCommand("is.na")
+
+ clsConditionsFilterCondCheckFunction.SetRCommand("instat_calculation$new")
+ clsConditionsFilterCondCheckFunction.AddParameter("type", Chr(34) & "filter" & Chr(34), iPosition:=0)
+ clsConditionsFilterCondCheckFunction.AddParameter("function_exp", clsROperatorParameter:=clsCheckConditionFilterOperator, iPosition:=1)
+ clsConditionsFilterCondCheckFunction.AddParameter("sub_calculations", clsRFunctionParameter:=clsListCondCheckFilterFunction, iPosition:=2)
+ clsConditionsFilterCondCheckFunction.SetAssignTo(strConditionFilterCondCheck)
+
+ clsListCondCheckFilterFunction.SetRCommand("list")
+ clsListCondCheckFilterFunction.AddParameter("x", strCondCheck, iPosition:=0, bIncludeArgumentName:=False)
+
+ clsCheckConditionFilterOperator.SetOperation("|")
+ clsCheckConditionFilterOperator.bToScriptAsRString = True
+ clsCheckConditionFilterOperator.AddParameter("left", "conditions_check == 1", iPosition:=0, bIncludeArgumentName:=False)
+ clsCheckConditionFilterOperator.AddParameter("right", clsROperatorParameter:=clsCheckSecondConditionFilterOperator, iPosition:=1, bIncludeArgumentName:=False)
+
+ clsCheckSecondConditionFilterOperator.SetOperation("|")
+ clsCheckSecondConditionFilterOperator.AddParameter("left", clsRFunctionParameter:=clsIsnaSecondConditionFilterFunction, iPosition:=0, bIncludeArgumentName:=False)
+ clsCheckSecondConditionFilterOperator.AddParameter("right", "conditions_check == 0", iPosition:=1, bIncludeArgumentName:=False)
+
+ clsIsnaSecondConditionFilterFunction.SetRCommand("is.na")
+ clsIsnaSecondConditionFilterFunction.AddParameter("x", "conditions_check", iPosition:=0, bIncludeArgumentName:=False)
+
+ clsEndSeasonCombinationCalcStatusFunction.SetRCommand("instat_calculation$new")
+ clsEndSeasonCombinationCalcStatusFunction.AddParameter("type", Chr(34) & "combination" & Chr(34), iPosition:=0)
+ clsEndSeasonCombinationCalcStatusFunction.AddParameter("manipulations", clsRFunctionParameter:=clsEndSeasonCombinationManipulationListStatusFunction, iPosition:=1)
+ clsEndSeasonCombinationCalcStatusFunction.AddParameter("sub_calculations", clsRFunctionParameter:=clsEndSeasonCombinationSubCalcListStatusFunction, iPosition:=2)
+ clsEndSeasonCombinationCalcStatusFunction.SetAssignTo(strEndofSeasonStatus)
+
+ clsEndSeasonCombinationManipulationListStatusFunction.SetRCommand("list")
+ clsEndSeasonCombinationManipulationListStatusFunction.AddParameter("manip1", strConditionsFilter, bIncludeArgumentName:=False, iPosition:=0)
+ clsEndSeasonCombinationManipulationListStatusFunction.AddParameter("manip2", "grouping_by_station_year", bIncludeArgumentName:=False, iPosition:=1)
+ clsEndSeasonCombinationManipulationListStatusFunction.AddParameter("manip3", strDoyFilter, bIncludeArgumentName:=False, iPosition:=2)
+
+ clsEndSeasonCombinationSubCalcListStatusFunction.SetRCommand("list")
+ clsEndSeasonCombinationSubCalcListStatusFunction.AddParameter("sub3", strEndSeasonStatus, bIncludeArgumentName:=False, iPosition:=0)
+
+ clsRunCalculationStatusFunction.SetRCommand(frmMain.clsRLink.strInstatDataObject & "$run_instat_calculation")
+ clsRunCalculationStatusFunction.AddParameter("display", "FALSE", iPosition:=0)
+ clsRunCalculationStatusFunction.AddParameter("param_list", clsRFunctionParameter:=clsListCalFunction, iPosition:=1)
+ clsRunCalculationStatusFunction.AddParameter("calc", strEndofSeasonStatus, iPosition:=2)
+
+ clsLinkeddataFunction.SetRCommand(frmMain.clsRLink.strInstatDataObject & "$get_linked_to_data_name")
+ clsLinkeddataFunction.SetAssignTo(strLinkeddata)
+
+ clsVectorCalFormListFunction.SetRCommand("c")
+ clsVectorCalFormListFunction.AddParameter("x", clsRFunctionParameter:=clsSetNamesEndSeasonStatusFunction, iPosition:=0, bIncludeArgumentName:=False)
+ clsVectorCalFormListFunction.AddParameter("y", clsRFunctionParameter:=clsSetNamesEndSeasonFunction, iPosition:=1, bIncludeArgumentName:=False)
+ clsVectorCalFormListFunction.SetAssignTo(strCalformlist)
+
+ clsSetNamesEndSeasonStatusFunction.SetRCommand("setNames")
+ clsSetNamesEndSeasonStatusFunction.AddParameter("x", Chr(34) & strEndSeasonStatus & Chr(34), iPosition:=0, bIncludeArgumentName:=False)
+ clsSetNamesEndSeasonStatusFunction.AddParameter("y", strLinkeddata, iPosition:=1, bIncludeArgumentName:=False)
+
+ clsSetNamesEndSeasonFunction.SetRCommand("setNames")
+ clsSetNamesEndSeasonFunction.AddParameter("x", Chr(34) & strEndSeason & Chr(34), iPosition:=0, bIncludeArgumentName:=False)
+ clsSetNamesEndSeasonFunction.AddParameter("y", strLinkeddata, iPosition:=1, bIncludeArgumentName:=False)
+
+ clsEndSeasonStatus2Function.SetRCommand("instat_calculation$new")
+ clsEndSeasonStatus2Function.AddParameter("type", Chr(34) & "calculation" & Chr(34), iPosition:=0)
+ clsEndSeasonStatus2Function.AddParameter("function_exp", clsRFunctionParameter:=clsIfelseStatus2Function, iPosition:=1)
+ clsEndSeasonStatus2Function.AddParameter("calculated_from", strCalformlist, iPosition:=2)
+ clsEndSeasonStatus2Function.AddParameter("result_name", Chr(34) & strEndSeasonStatus & Chr(34), iPosition:=4)
+ clsEndSeasonStatus2Function.AddParameter("save", 2, iPosition:=5)
+ clsEndSeasonStatus2Function.SetAssignTo(strEndSeasonStatus2)
+
+ clsIfelseStatus2Function.SetRCommand("ifelse")
+ clsIfelseStatus2Function.bToScriptAsRString = True
+ clsIfelseStatus2Function.AddParameter("test", clsRFunctionParameter:=clsIsnaStatus2Function, iPosition:=0, bIncludeArgumentName:=False)
+ clsIfelseStatus2Function.AddParameter("yes", "TRUE", iPosition:=1, bIncludeArgumentName:=False)
+ clsIfelseStatus2Function.AddParameter("no", strEndSeasonStatus, iPosition:=2, bIncludeArgumentName:=False)
+
+ clsIsnaStatus2Function.SetRCommand("!is.na")
+ clsIsnaStatus2Function.AddParameter("x", strEndSeason, iPosition:=0, bIncludeArgumentName:=False)
+
+ clsEndSeasonCombiStatus2Function.SetRCommand("instat_calculation$new")
+ clsEndSeasonCombiStatus2Function.AddParameter("type", Chr(34) & "combination" & Chr(34), iPosition:=0)
+ clsEndSeasonCombiStatus2Function.AddParameter("sub_calculations", clsRFunctionParameter:=clsEndSeasonCombiStatus2ListFunction, iPosition:=2)
+ clsEndSeasonCombiStatus2Function.SetAssignTo(strEndSeasonCombiStatus2)
+
+ clsEndSeasonCombiStatus2ListFunction.SetRCommand("list")
+ clsEndSeasonCombiStatus2ListFunction.AddParameter("x", strEndSeasonStatus2, iPosition:=0, bIncludeArgumentName:=False)
+
+ clsRunCalculationStatus2Function.SetRCommand(frmMain.clsRLink.strInstatDataObject & "$run_instat_calculation")
+ clsRunCalculationStatus2Function.AddParameter("display", "FALSE", iPosition:=0)
+ clsRunCalculationStatus2Function.AddParameter("param_list", clsRFunctionParameter:=clsListCalFunction, iPosition:=1)
+ clsRunCalculationStatus2Function.AddParameter("calc", strEndSeasonCombiStatus2, iPosition:=2)
+
+ clsConvertColumnlinkeddataFunction.SetRCommand(frmMain.clsRLink.strInstatDataObject & "$convert_column_to_type")
+ clsConvertColumnlinkeddataFunction.AddParameter("data_name", strLinkeddata, iPosition:=0)
+ clsConvertColumnlinkeddataFunction.AddParameter("to_type", "year_type", iPosition:=2)
+
+ clsStationtypeFunction.SetRCommand(frmMain.clsRLink.strInstatDataObject & "$get_column_data_types")
+ clsStationtypeFunction.SetAssignTo(strStationType)
+
+ clsConvertColumnTypeStationFunction.SetRCommand(frmMain.clsRLink.strInstatDataObject & "$convert_column_to_type")
+ clsConvertColumnTypeStationFunction.AddParameter("to_type", Chr(34) & "factor" & Chr(34), iPosition:=2)
+
+ clsDeleteunusedrowFunction.SetRCommand(frmMain.clsRLink.strInstatDataObject & "$remove_unused_station_year_combinations")
+
#End Region
+ ucrBase.clsRsyntax.ClearCodes()
+
+ ucrBase.clsRsyntax.AddToBeforeCodes(clsGetColumnDataTypeFunction, iPosition:=0)
+ ucrBase.clsRsyntax.AddToBeforeCodes(clsConvertColumnTypeFunction, iPosition:=1)
+ ucrBase.clsRsyntax.AddToBeforeCodes(clsConvertlinkedvariableFunction, iPosition:=4)
+ ucrBase.clsRsyntax.AddToAfterCodes(clsLinkeddataFunction, iPosition:=4)
+ ucrBase.clsRsyntax.AddToAfterCodes(clsConvertColumnType1Function, iPosition:=11)
+ ucrBase.clsRsyntax.AddToAfterCodes(clsConvertColumnlinkeddataFunction, iPosition:=12)
+ ucrBase.clsRsyntax.SetBaseRFunction(clsRunCalculation)
clsFirstOrLastFunction = clsLastDoyFunction
+ RemoveUnusedRow()
+ StationType()
+ EnableFilledvariable()
End Sub
Private Sub SetRCodeForControls(bReset As Boolean)
ucrReceiverDOY.AddAdditionalCodeParameterPair(clsDayFromOperator, New RParameter("doy", 0), iAdditionalPairNo:=1)
ucrReceiverDOY.AddAdditionalCodeParameterPair(clsLastDoyFunction, New RParameter("x", 0), iAdditionalPairNo:=2)
ucrReceiverDOY.AddAdditionalCodeParameterPair(clsFirstDoyFunction, New RParameter("x", 0), iAdditionalPairNo:=3)
+ ucrReceiverDOY.AddAdditionalCodeParameterPair(clsFirstFilled1Function, New RParameter("x", 0), iAdditionalPairNo:=4)
ucrReceiverRainfall.AddAdditionalCodeParameterPair(clsEndSeasonIsNaRain, New RParameter("x", 0), iAdditionalPairNo:=1)
ucrReceiverRainfall.AddAdditionalCodeParameterPair(clsIfElseRainMinFunction, New RParameter("no", 2), iAdditionalPairNo:=2)
ucrReceiverRainfall.AddAdditionalCodeParameterPair(clsIfElseRainMaxFunction, New RParameter("no", 2), iAdditionalPairNo:=3)
+ ucrReceiverRainfall.AddAdditionalCodeParameterPair(clsIsnaConditionCheckFunction, New RParameter("x", 0), iAdditionalPairNo:=4)
ucrReceiverEvaporation.AddAdditionalCodeParameterPair(clsWBMaxTailFunction1, New RParameter("x", 0), iAdditionalPairNo:=1)
ucrReceiverEvaporation.AddAdditionalCodeParameterPair(clsAsNumericFunction, New RParameter("x", 0), iAdditionalPairNo:=2)
ucrReceiverDate.AddAdditionalCodeParameterPair(clsFirstDateFunction, New RParameter("x", 0), iAdditionalPairNo:=1)
@@ -946,6 +1233,7 @@ Public Class dlgEndOfRainsSeason
ucrInputSeasonDoy.SetRCode(clsEndSeasonFirstDoySummaryCalc, bReset)
ucrInputEndofSeasonDate.SetRCode(clsEndSeasonFirstDateSummaryCalc, bReset)
ucrInputEndofSeasonOccurence.SetRCode(clsEndSeasonStatusSummaryCalc, bReset)
+ ucrInputFilled.SetRCode(clsEndSeasonFirstDoySummaryCalcFilledFunction, bReset)
ucrReceiverDate.SetRCode(clsLastDateFunction, bReset)
@@ -958,17 +1246,17 @@ Public Class dlgEndOfRainsSeason
ucrNudWB.SetRCode(clsWBEvaporationMinFunction, bReset)
ucrPnlEvaporation.SetRCode(clsWBMinEvapOperator, bReset)
ucrReceiverEvaporation.SetRCode(clsWBMinTailFunction1, bReset)
+ ucrChkFilled.SetRCode(clsEndSeasonCombinationSubCalcList, bReset)
+ ucrChkEndofRainsDoy.SetRCode(clsEndRainsCombinationSubCalcList, bReset)
+ ucrChkEndofRainsDate.SetRCode(clsDummyFunction, bReset)
+ ucrChkEndofRainsOccurence.SetRCode(clsDummyFunction, bReset)
+ ucrChkEndofSeasonDoy.SetRCode(clsEndSeasonCombinationSubCalcList, bReset)
+ ucrChkEndofSeasonDate.SetRCode(clsDummyFunction, bReset)
+ ucrChkEndofSeasonOccurence.SetRCode(clsDummyFunction, bReset)
End If
- ucrChkEndofSeasonDoy.SetRCode(clsEndSeasonCombinationSubCalcList, bReset)
- ucrChkEndofSeasonDate.SetRCode(clsDummyFunction, bReset)
- ucrChkEndofSeasonOccurence.SetRCode(clsDummyFunction, bReset)
-
ucrNudAmount.SetRCode(clsEndRainsRollSumRainConditionOperator, bReset)
ucrNudTotalOverDays.SetRCode(clsRollSumRainFunction, bReset)
- ucrChkEndofRainsDoy.SetRCode(clsEndRainsCombinationSubCalcList, bReset)
- ucrChkEndofRainsDate.SetRCode(clsDummyFunction, bReset)
- ucrChkEndofRainsOccurence.SetRCode(clsDummyFunction, bReset)
ucrPnlEndOfRainsAndSeasons.SetRCode(clsFirstOrLastFunction, bReset)
End Sub
@@ -999,6 +1287,8 @@ Public Class dlgEndOfRainsSeason
bOkEnabled = False
ElseIf ucrChkEndofSeasonOccurence.Checked AndAlso ucrInputEndofSeasonOccurence.IsEmpty Then
bOkEnabled = False
+ ElseIf ucrChkFilled.Checked AndAlso ucrInputFilled.IsEmpty Then
+ bOkEnabled = False
ElseIf rdoValueEvaporation.Checked AndAlso ucrInputEvaporation.IsEmpty Then
bOkEnabled = False
ElseIf rdoVariableEvaporation.Checked AndAlso ucrReceiverEvaporation.IsEmpty Then
@@ -1011,7 +1301,7 @@ Public Class dlgEndOfRainsSeason
End Sub
Private Sub cmdDoyRange_Click(sender As Object, e As EventArgs) Handles cmdDoyRange.Click
- sdgDoyRange.Setup(clsNewDoyFilterCalc:=clsDoyFilterCalc, clsNewDayFromOperator:=clsDayFromOperator, clsNewDayToOperator:=clsDayToOperator, clsNewCalcFromList:=clsDoyFilterCalcFromList, strNewMainDataFrame:=ucrSelectorForWaterBalance.ucrAvailableDataFrames.cboAvailableDataFrames.Text, strNewDoyColumn:=ucrReceiverDOY.GetVariableNames(False))
+ sdgDoyRange.Setup(clsNewDoyFilterCalc:=clsDoyFilterCalc, clsNewDayFromOperator:=clsDayFromOperator, clsNewIfElseFirstDoyFilledFunction:=clsIfElseFirstDoyFilledFunction, clsNewDayToOperator:=clsDayToOperator, clsNewCalcFromList:=clsDoyFilterCalcFromList, strNewMainDataFrame:=ucrSelectorForWaterBalance.ucrAvailableDataFrames.cboAvailableDataFrames.Text, strNewDoyColumn:=ucrReceiverDOY.GetVariableNames(False))
sdgDoyRange.ShowDialog()
UpdateDayFilterPreview()
End Sub
@@ -1043,6 +1333,7 @@ Public Class dlgEndOfRainsSeason
End Sub
Private Sub DayChange()
+ clsEndSeasonStatusSummaryCalc.AddParameter("calculated_from", "list(" & strCurrDataName & "=" & ucrReceiverDOY.GetVariableNames() & ")", iPosition:=3)
clsEndRainsLastDoySummaryCalc.AddParameter("calculated_from", "list(" & strCurrDataName & "=" & ucrReceiverDOY.GetVariableNames() & ")", iPosition:=3)
clsEndSeasonFirstDoySummaryCalc.AddParameter("calculated_from", "list(" & strCurrDataName & "=" & ucrReceiverDOY.GetVariableNames() & ")", iPosition:=3)
clsEndRainsLastDateSummaryCalc.AddParameter("calculated_from", "list(" & strCurrDataName & "=" & ucrReceiverDate.GetVariableNames() & ")", iPosition:=3)
@@ -1054,8 +1345,64 @@ Public Class dlgEndOfRainsSeason
clsEndSeasonRainMaxCalc.AddParameter("calculated_from", "list(" & strCurrDataName & "=" & ucrReceiverRainfall.GetVariableNames & ")", iPosition:=3)
End Sub
+ Private Sub RemoveUnusedRow()
+ If Not ucrReceiverStation.IsEmpty AndAlso Not ucrReceiverYear.IsEmpty Then
+ clsDeleteunusedrowFunction.AddParameter("station", ucrReceiverStation.GetVariableNames(), iPosition:=2)
+ clsDeleteunusedrowFunction.AddParameter("year", ucrReceiverYear.GetVariableNames(), iPosition:=1)
+ ucrBase.clsRsyntax.AddToAfterCodes(clsDeleteunusedrowFunction, iPosition:=13)
+ Else
+ ucrBase.clsRsyntax.RemoveFromAfterCodes(clsDeleteunusedrowFunction)
+ clsDeleteunusedrowFunction.RemoveParameterByName("station")
+ clsDeleteunusedrowFunction.RemoveParameterByName("year")
+ End If
+ End Sub
+
+ Private Sub StationType()
+ If Not ucrReceiverStation.IsEmpty Then
+ ucrBase.clsRsyntax.AddToBeforeCodes(clsConvertColumnTypeStationFunction, iPosition:=3)
+ ucrBase.clsRsyntax.AddToBeforeCodes(clsStationtypeFunction, iPosition:=2)
+ clsVectorFunction.AddParameter("y", ucrReceiverStation.GetVariableNames(), iPosition:=1, bIncludeArgumentName:=False)
+ clsStationtypeFunction.AddParameter("columns", ucrReceiverStation.GetVariableNames(), iPosition:=1)
+ clsConvertColumnTypeStationFunction.AddParameter("col_names", ucrReceiverStation.GetVariableNames(), iPosition:=1)
+ Else
+ ucrBase.clsRsyntax.RemoveFromBeforeCodes(clsConvertColumnTypeStationFunction)
+ ucrBase.clsRsyntax.RemoveFromBeforeCodes(clsStationtypeFunction)
+ clsVectorFunction.RemoveParameterByName("y")
+ clsConvertColumnTypeStationFunction.RemoveParameterByName("col_names")
+ clsStationtypeFunction.RemoveParameterByName("columns")
+ End If
+ End Sub
+
+ Private Sub YearStationVariable()
+ If Not ucrReceiverYear.IsEmpty Then
+ clsVectorFunction.AddParameter("x", ucrReceiverYear.GetVariableNames(), iPosition:=0, bIncludeArgumentName:=False)
+ clsConvertlinkedvariableFunction.AddParameter("link_cols", clsRFunctionParameter:=clsVectorFunction, iPosition:=1)
+ clsConvertlinkedvariable1Function.AddParameter("link_cols", clsRFunctionParameter:=clsVectorFunction, iPosition:=1)
+ clsLinkeddataFunction.AddParameter("link_cols", clsRFunctionParameter:=clsVectorFunction, iPosition:=1)
+ Else
+ clsLinkeddataFunction.RemoveParameterByName("link_cols")
+ clsConvertlinkedvariableFunction.RemoveParameterByName("link_cols")
+ clsConvertlinkedvariable1Function.RemoveParameterByName("link_cols")
+ clsVectorFunction.RemoveParameterByName("x")
+ End If
+ End Sub
+
Private Sub ucrReceiverStationYear_ControlValueChanged(ucrChangedControl As ucrCore) Handles ucrReceiverYear.ControlValueChanged, ucrReceiverStation.ControlValueChanged
GroupingBy()
+ YearStationVariable()
+ RemoveUnusedRow()
+ StationType()
+ If Not ucrReceiverYear.IsEmpty Then
+ clsGetColumnDataTypeFunction.AddParameter("columns", ucrReceiverYear.GetVariableNames(), iPosition:=1)
+ clsConvertColumnTypeFunction.AddParameter("col_names", ucrReceiverYear.GetVariableNames(), iPosition:=1)
+ clsConvertColumnType1Function.AddParameter("col_names", ucrReceiverYear.GetVariableNames(), iPosition:=1)
+ clsConvertColumnlinkeddataFunction.AddParameter("col_names", ucrReceiverYear.GetVariableNames(), iPosition:=1)
+ Else
+ clsConvertColumnlinkeddataFunction.RemoveParameterByName("col_names")
+ clsConvertColumnType1Function.RemoveParameterByName("col_names")
+ clsGetColumnDataTypeFunction.RemoveParameterByName("columns")
+ clsConvertColumnTypeFunction.RemoveParameterByName("col_names")
+ End If
End Sub
Private Sub ucrReceiverDOY_ControlValueChanged(ucrChangedControl As ucrCore) Handles ucrReceiverDOY.ControlValueChanged, ucrSelectorForWaterBalance.ControlValueChanged
@@ -1076,6 +1423,16 @@ Public Class dlgEndOfRainsSeason
Private Sub ucrSelectorForWaterBalance_DataFrameChanged() Handles ucrSelectorForWaterBalance.DataFrameChanged
clsDoyFilterCalcFromList.ClearParameters()
+ clsGetColumnDataTypeFunction.AddParameter("data_name", Chr(34) & ucrSelectorForWaterBalance.ucrAvailableDataFrames.cboAvailableDataFrames.Text & Chr(34), iPosition:=0)
+ clsConvertColumnTypeFunction.AddParameter("data_name", Chr(34) & ucrSelectorForWaterBalance.ucrAvailableDataFrames.cboAvailableDataFrames.Text & Chr(34), iPosition:=0)
+ clsConvertColumnType1Function.AddParameter("data_name", Chr(34) & ucrSelectorForWaterBalance.ucrAvailableDataFrames.cboAvailableDataFrames.Text & Chr(34), iPosition:=0)
+ clsConvertlinkedvariableFunction.AddParameter("from_data_frame", Chr(34) & ucrSelectorForWaterBalance.ucrAvailableDataFrames.cboAvailableDataFrames.Text & Chr(34), iPosition:=0)
+ clsConvertlinkedvariable1Function.AddParameter("from_data_frame", Chr(34) & ucrSelectorForWaterBalance.ucrAvailableDataFrames.cboAvailableDataFrames.Text & Chr(34), iPosition:=0)
+ clsConvertColumnTypeStationFunction.AddParameter("data_name", Chr(34) & ucrSelectorForWaterBalance.ucrAvailableDataFrames.cboAvailableDataFrames.Text & Chr(34), iPosition:=0)
+ clsStationtypeFunction.AddParameter("data_name", Chr(34) & ucrSelectorForWaterBalance.ucrAvailableDataFrames.cboAvailableDataFrames.Text & Chr(34), iPosition:=0)
+ clsConvertColumnTypeStationFunction.AddParameter("data_name", Chr(34) & ucrSelectorForWaterBalance.ucrAvailableDataFrames.cboAvailableDataFrames.Text & Chr(34), iPosition:=0)
+ clsLinkeddataFunction.AddParameter("data_name", Chr(34) & ucrSelectorForWaterBalance.ucrAvailableDataFrames.cboAvailableDataFrames.Text & Chr(34), iPosition:=0, bIncludeArgumentName:=False)
+ clsDeleteunusedrowFunction.AddParameter("data_name", Chr(34) & ucrSelectorForWaterBalance.ucrAvailableDataFrames.cboAvailableDataFrames.Text & Chr(34), iPosition:=0)
End Sub
Private Sub ucrPnlEvaporation_ControlValueChanged(ucrChangedControl As ucrCore) Handles ucrPnlEvaporation.ControlValueChanged, ucrReceiverEvaporation.ControlValueChanged, ucrInputEvaporation.ControlValueChanged
@@ -1135,11 +1492,39 @@ Public Class dlgEndOfRainsSeason
End If
End Sub
- Private Sub ucrPnlEndOfRainsAndSeasons_ControlValueChanged(ucrChangedControl As ucrCore) Handles ucrPnlEndOfRainsAndSeasons.ControlValueChanged
+ Private Sub ucrPnlEndOfRainsAndSeasons_ControlValueChanged(ucrChangedControl As ucrCore) Handles ucrPnlEndOfRainsAndSeasons.ControlValueChanged, ucrChkEndofSeasonOccurence.ControlValueChanged
If rdoEndOfRains.Checked Then
+ ucrBase.clsRsyntax.RemoveFromAfterCodes(clsConditionsFilterCondCheckFunction)
+ ucrBase.clsRsyntax.RemoveFromAfterCodes(clsEndSeasonStatusSummaryCalc)
+ ucrBase.clsRsyntax.RemoveFromAfterCodes(clsEndSeasonCombinationCalcStatusFunction)
+ ucrBase.clsRsyntax.RemoveFromAfterCodes(clsRunCalculationStatusFunction)
+ ucrBase.clsRsyntax.RemoveFromAfterCodes(clsVectorCalFormListFunction)
+ ucrBase.clsRsyntax.RemoveFromAfterCodes(clsEndSeasonStatus2Function)
+ ucrBase.clsRsyntax.RemoveFromAfterCodes(clsEndSeasonCombiStatus2Function)
+ ucrBase.clsRsyntax.RemoveFromAfterCodes(clsRunCalculationStatus2Function)
+
clsRunCalculation.AddParameter("calc", clsRFunctionParameter:=clsEndRainsCombinationCalc)
clsFirstOrLastFunction = clsLastDoyFunction
Else
+ If ucrChkEndofSeasonOccurence.Checked Then
+ ucrBase.clsRsyntax.AddToAfterCodes(clsConditionsFilterCondCheckFunction, iPosition:=0)
+ ucrBase.clsRsyntax.AddToAfterCodes(clsEndSeasonStatusSummaryCalc, iPosition:=1)
+ ucrBase.clsRsyntax.AddToAfterCodes(clsEndSeasonCombinationCalcStatusFunction, iPosition:=2)
+ ucrBase.clsRsyntax.AddToAfterCodes(clsRunCalculationStatusFunction, iPosition:=3)
+ ucrBase.clsRsyntax.AddToAfterCodes(clsVectorCalFormListFunction, iPosition:=5)
+ ucrBase.clsRsyntax.AddToAfterCodes(clsEndSeasonStatus2Function, iPosition:=6)
+ ucrBase.clsRsyntax.AddToAfterCodes(clsEndSeasonCombiStatus2Function, iPosition:=7)
+ ucrBase.clsRsyntax.AddToAfterCodes(clsRunCalculationStatus2Function, iPosition:=8)
+ Else
+ ucrBase.clsRsyntax.RemoveFromAfterCodes(clsConditionsFilterCondCheckFunction)
+ ucrBase.clsRsyntax.RemoveFromAfterCodes(clsEndSeasonStatusSummaryCalc)
+ ucrBase.clsRsyntax.RemoveFromAfterCodes(clsRunCalculationStatusFunction)
+ ucrBase.clsRsyntax.RemoveFromAfterCodes(clsEndSeasonCombinationCalcStatusFunction)
+ ucrBase.clsRsyntax.RemoveFromAfterCodes(clsVectorCalFormListFunction)
+ ucrBase.clsRsyntax.RemoveFromAfterCodes(clsEndSeasonStatus2Function)
+ ucrBase.clsRsyntax.RemoveFromAfterCodes(clsEndSeasonCombiStatus2Function)
+ ucrBase.clsRsyntax.RemoveFromAfterCodes(clsRunCalculationStatus2Function)
+ End If
clsRunCalculation.AddParameter("calc", clsRFunctionParameter:=clsEndSeasonCombinationCalc)
clsFirstOrLastFunction = clsFirstDoyFunction
Evaporation()
@@ -1162,14 +1547,6 @@ Public Class dlgEndOfRainsSeason
End If
End Sub
- Private Sub ucrChkEndofSeasonOccurence_ControlValueChanged(ucrChangedControl As ucrCore) Handles ucrChkEndofSeasonOccurence.ControlValueChanged
- If ucrChkEndofSeasonOccurence.Checked Then
- clsEndSeasonCombinationSubCalcList.AddParameter("sub3", clsRFunctionParameter:=clsEndSeasonStatusSummaryCalc, bIncludeArgumentName:=False, iPosition:=2)
- Else
- clsEndSeasonCombinationSubCalcList.RemoveParameterByName("sub3")
- End If
- End Sub
-
Private Sub ucrChkEndofSeasonDoy_ControlValueChanged(ucrChangedControl As ucrCore) Handles ucrChkEndofSeasonDoy.ControlValueChanged
If ucrChkEndofSeasonDoy.Checked Then
clsEndSeasonCombinationSubCalcList.AddParameter("sub1", clsRFunctionParameter:=clsEndSeasonFirstDoySummaryCalc, bIncludeArgumentName:=False, iPosition:=0)
@@ -1207,11 +1584,26 @@ Public Class dlgEndOfRainsSeason
End Sub
Private Sub ucrNudWBLessThan_ControlValueChanged(ucrChangedControl As ucrCore) Handles ucrNudWBLessThan.ControlValueChanged, ucrChkEndofSeasonOccurence.ControlValueChanged, ucrInputEndofSeasonOccurence.ControlValueChanged, ucrChkEndofSeasonDate.ControlValueChanged, ucrInputEndofSeasonDate.ControlValueChanged, ucrChkEndofSeasonDoy.ControlValueChanged, ucrInputSeasonDoy.ControlValueChanged, ucrSelectorForWaterBalance.ControlValueChanged
+ EnableFilledvariable()
If Not ucrNudWBLessThan.IsEmpty Then
clsEndSeasonWBConditionOperator.AddParameter("1", ucrNudWBLessThan.GetText(), iPosition:=1)
Else
clsEndSeasonWBConditionOperator.RemoveParameterByName("1")
End If
- 'Evaporation()
+ End Sub
+
+ Private Sub ucrChkFilled_ControlValueChanged(ucrChangedControl As ucrCore) Handles ucrChkFilled.ControlValueChanged
+ EnableFilledvariable()
+ End Sub
+
+ Private Sub EnableFilledvariable()
+ If ucrChkFilled.Checked Then
+ ucrBase.clsRsyntax.AddToAfterCodes(clsEndSeasonFirstDoySummaryCalcFilledFunction, iPosition:=9)
+ ucrBase.clsRsyntax.AddToAfterCodes(clsrunfilledFunction, iPosition:=10)
+ Else
+ ucrBase.clsRsyntax.RemoveFromAfterCodes(clsrunfilledFunction)
+ ucrBase.clsRsyntax.RemoveFromAfterCodes(clsEndSeasonFirstDoySummaryCalcFilledFunction)
+ End If
+ ucrChkFilled.Enabled = ucrChkEndofSeasonOccurence.Checked
End Sub
End Class
\ No newline at end of file
diff --git a/instat/dlgExtremesClimatic.vb b/instat/dlgExtremesClimatic.vb
index 06d745e640b..6fb03d26cb6 100644
--- a/instat/dlgExtremesClimatic.vb
+++ b/instat/dlgExtremesClimatic.vb
@@ -22,7 +22,7 @@ Public Class dlgExtremesClimatic
Private bUpdateMinMax As Boolean = True
Private clsExtreme As New RFunction
Private strCurrDataName As String = ""
- Private clsGroupByFunction, clsRunCalcFunction, clsDayFromAndTo, clsDayManipulation As New RFunction
+ Private clsGroupByFunction, clsIfElseFirstDoyFilledFunction, clsRunCalcFunction, clsDayFromAndTo, clsDayManipulation As New RFunction
Private clsDayFilterCalcFromConvert, clsDayFilterCalcFromList As New RFunction
Private clsDayFromAndToOperator, clsDayFromOperator, clsDayToOperator As New ROperator
Private clsCurrCalc As RFunction
@@ -334,6 +334,7 @@ Public Class dlgExtremesClimatic
clsPlotMrlFunction = New RFunction
clsThresholdPlotFunction = New RFunction
clsDeclusteringFunction = New RFunction
+ clsIfElseFirstDoyFilledFunction = New RFunction
clsDummyRfunction = clsPlotMrlFunction
ucrSelectorClimaticExtremes.Reset()
@@ -637,7 +638,7 @@ Public Class dlgExtremesClimatic
End Sub
Private Sub cmdDoyRange_Click(sender As Object, e As EventArgs) Handles cmdDoyRange.Click
- sdgDoyRange.Setup(clsNewDoyFilterCalc:=clsDayFromAndTo, clsNewDayFromOperator:=clsDayFromOperator, clsNewDayToOperator:=clsDayToOperator, clsNewCalcFromList:=clsDayFilterCalcFromList, strNewMainDataFrame:=ucrSelectorClimaticExtremes.ucrAvailableDataFrames.cboAvailableDataFrames.Text, strNewDoyColumn:=ucrReceiverDOY.GetVariableNames(False))
+ sdgDoyRange.Setup(clsNewDoyFilterCalc:=clsDayFromAndTo, clsNewIfElseFirstDoyFilledFunction:=clsIfElseFirstDoyFilledFunction, clsNewDayFromOperator:=clsDayFromOperator, clsNewDayToOperator:=clsDayToOperator, clsNewCalcFromList:=clsDayFilterCalcFromList, strNewMainDataFrame:=ucrSelectorClimaticExtremes.ucrAvailableDataFrames.cboAvailableDataFrames.Text, strNewDoyColumn:=ucrReceiverDOY.GetVariableNames(False))
sdgDoyRange.ShowDialog()
UpdateDayFilterPreview()
End Sub
diff --git a/instat/dlgHistogram.designer.vb b/instat/dlgHistogram.designer.vb
index cd3e8c675ef..628d1a4a15b 100644
--- a/instat/dlgHistogram.designer.vb
+++ b/instat/dlgHistogram.designer.vb
@@ -56,7 +56,6 @@ Partial Class dlgHistogram
Me.ucrNudMinHeight = New instat.ucrNud()
Me.ucrChkMinHeight = New instat.ucrCheck()
Me.ucrChkOmitYAxis = New instat.ucrCheck()
- Me.ucrNudBinwidth = New instat.ucrNud()
Me.ucrChkBinWidth = New instat.ucrCheck()
Me.ucrInputStation = New instat.ucrInputComboBox()
Me.ucr1stFactorReceiver = New instat.ucrReceiverSingle()
@@ -74,6 +73,7 @@ Partial Class dlgHistogram
Me.ucrHistogramSelector = New instat.ucrSelectorByDataFrameAddRemove()
Me.ucrBase = New instat.ucrButtons()
Me.ucrPnlOptions = New instat.UcrPanel()
+ Me.ucrInputWidth = New instat.ucrInputTextBox()
Me.contextMenuStripOptions.SuspendLayout()
Me.SuspendLayout()
'
@@ -241,19 +241,6 @@ Partial Class dlgHistogram
Me.ucrChkOmitYAxis.Size = New System.Drawing.Size(143, 23)
Me.ucrChkOmitYAxis.TabIndex = 42
'
- 'ucrNudBinwidth
- '
- Me.ucrNudBinwidth.AutoSize = True
- Me.ucrNudBinwidth.DecimalPlaces = New Decimal(New Integer() {0, 0, 0, 0})
- Me.ucrNudBinwidth.Increment = New Decimal(New Integer() {1, 0, 0, 0})
- Me.ucrNudBinwidth.Location = New System.Drawing.Point(139, 262)
- Me.ucrNudBinwidth.Maximum = New Decimal(New Integer() {100, 0, 0, 0})
- Me.ucrNudBinwidth.Minimum = New Decimal(New Integer() {0, 0, 0, 0})
- Me.ucrNudBinwidth.Name = "ucrNudBinwidth"
- Me.ucrNudBinwidth.Size = New System.Drawing.Size(50, 20)
- Me.ucrNudBinwidth.TabIndex = 41
- Me.ucrNudBinwidth.Value = New Decimal(New Integer() {0, 0, 0, 0})
- '
'ucrChkBinWidth
'
Me.ucrChkBinWidth.AutoSize = True
@@ -439,14 +426,26 @@ Partial Class dlgHistogram
Me.ucrPnlOptions.Size = New System.Drawing.Size(433, 30)
Me.ucrPnlOptions.TabIndex = 0
'
+ 'ucrInputWidth
+ '
+ Me.ucrInputWidth.AddQuotesIfUnrecognised = True
+ Me.ucrInputWidth.AutoSize = True
+ Me.ucrInputWidth.IsMultiline = False
+ Me.ucrInputWidth.IsReadOnly = False
+ Me.ucrInputWidth.Location = New System.Drawing.Point(139, 262)
+ Me.ucrInputWidth.Margin = New System.Windows.Forms.Padding(9)
+ Me.ucrInputWidth.Name = "ucrInputWidth"
+ Me.ucrInputWidth.Size = New System.Drawing.Size(69, 21)
+ Me.ucrInputWidth.TabIndex = 92
+ '
'dlgHistogram
'
Me.AutoScaleDimensions = New System.Drawing.SizeF(96.0!, 96.0!)
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi
Me.AutoSize = True
Me.ClientSize = New System.Drawing.Size(448, 461)
+ Me.Controls.Add(Me.ucrInputWidth)
Me.Controls.Add(Me.ucrNudMinHeight)
- Me.Controls.Add(Me.ucrNudBinwidth)
Me.Controls.Add(Me.ucrChkOmitYAxis)
Me.Controls.Add(Me.ucrInputStation)
Me.Controls.Add(Me.ucr1stFactorReceiver)
@@ -512,7 +511,6 @@ Partial Class dlgHistogram
Friend WithEvents ucrInputAddReorder As ucrInputComboBox
Friend WithEvents ucrChkBinWidth As ucrCheck
- Friend WithEvents ucrNudBinwidth As ucrNud
Friend WithEvents ucrChkOmitYAxis As ucrCheck
Friend WithEvents ucrNudMinHeight As ucrNud
Friend WithEvents ucrChkMinHeight As ucrCheck
@@ -522,5 +520,5 @@ Partial Class dlgHistogram
Friend WithEvents lblFacetBy As Label
Friend WithEvents ucrInputLegendPosition As ucrInputComboBox
Friend WithEvents ucrChkLegend As ucrCheck
-
+ Friend WithEvents ucrInputWidth As ucrInputTextBox
End Class
\ No newline at end of file
diff --git a/instat/dlgHistogram.vb b/instat/dlgHistogram.vb
index 17dbfb99324..6de82429e66 100644
--- a/instat/dlgHistogram.vb
+++ b/instat/dlgHistogram.vb
@@ -134,14 +134,10 @@ Public Class dlgHistogram
ucrChkOmitYAxis.SetText("Omit Y Axis")
ucrChkBinWidth.SetText("Binwidth")
- ucrChkBinWidth.AddToLinkedControls({ucrNudBinwidth}, {True}, bNewLinkedHideIfParameterMissing:=True)
-
- ucrNudBinwidth.SetParameter(New RParameter("binwidth", 3))
- ucrNudBinwidth.SetMinMax(0.00, 10.0)
- ucrNudBinwidth.DecimalPlaces = 2
- ucrNudBinwidth.Increment = 0.01
- ucrNudBinwidth.SetRDefault(1.5)
+ ucrChkBinWidth.AddToLinkedControls({ucrInputWidth}, {True}, bNewLinkedAddRemoveParameter:=True, bNewLinkedHideIfParameterMissing:=True, bNewLinkedChangeToDefaultState:=True, objNewDefaultState:=1.5)
+ ucrInputWidth.SetParameter(New RParameter("binwidth", 3))
+ ucrInputWidth.SetValidationTypeAsNumeric()
ucrChkRidges.SetText("Density Ridges")
ucrChkRidges.AddFunctionNamesCondition(True, "geom_density_ridges")
@@ -327,7 +323,7 @@ Public Class dlgHistogram
ucrChkLegend.SetRCode(clsThemeFunction, bReset, bCloneIfNeeded:=True)
ucrInputLegendPosition.SetRCode(clsThemeFunction, bReset, bCloneIfNeeded:=True)
- ucrNudBinwidth.SetRCode(clsRgeomPlotFunction, bReset)
+ ucrInputWidth.SetRCode(clsRgeomPlotFunction, bReset)
ucrNudMinHeight.SetRCode(clsRgeomPlotFunction, bReset)
ucrChkOmitYAxis.SetRCode(clsBaseOperator, bReset)
If bReset Then
@@ -493,7 +489,7 @@ Public Class dlgHistogram
End If
End Sub
- Private Sub ucrPnlOptions_Control() Handles ucrPnlOptions.ControlValueChanged, ucrChkDisplayAsDotPlot.ControlValueChanged, ucrChkRidges.ControlValueChanged, ucrFactorReceiver.ControlValueChanged, ucrVariablesAsFactorforHist.ControlValueChanged, ucrInputAddReorder.ControlValueChanged, ucrChkOmitYAxis.ControlValueChanged, ucrNudBinwidth.ControlValueChanged
+ Private Sub ucrPnlOptions_Control() Handles ucrPnlOptions.ControlValueChanged, ucrChkDisplayAsDotPlot.ControlValueChanged, ucrChkRidges.ControlValueChanged, ucrFactorReceiver.ControlValueChanged, ucrVariablesAsFactorforHist.ControlValueChanged, ucrInputAddReorder.ControlValueChanged, ucrChkOmitYAxis.ControlValueChanged, ucrInputWidth.ControlValueChanged
toolStripMenuItemHistogramOptions.Enabled = rdoHistogram.Checked AndAlso Not ucrChkDisplayAsDotPlot.Checked
toolStripMenuItemDotOptions.Enabled = rdoHistogram.Checked AndAlso ucrChkDisplayAsDotPlot.Checked
toolStripMenuItemDensityOptions.Enabled = rdoDensity_ridges.Checked AndAlso Not ucrChkRidges.Checked
@@ -604,7 +600,7 @@ Public Class dlgHistogram
Me.ucrChkLegend.Location = New Point(11, 329)
Me.ucrChkBinWidth.Location = New Point(10, 262)
Me.ucrChkOmitYAxis.Location = New Point(10, 287)
- Me.ucrNudBinwidth.Location = New Point(139, 262)
+ Me.ucrInputWidth.Location = New Point(139, 262)
Me.ucrInputStation.Location = New Point(318, 328)
Me.ucrInputLegendPosition.Location = New Point(87, 328)
Me.ucr1stFactorReceiver.Location = New Point(205, 329)
@@ -630,7 +626,7 @@ Public Class dlgHistogram
Me.ucrSaveHist.Location = New Point(10, 330)
Me.ucrChkBinWidth.Location = New Point(10, 262)
Me.ucrChkLegend.Location = New Point(11, 296)
- Me.ucrNudBinwidth.Location = New Point(139, 262)
+ Me.ucrInputWidth.Location = New Point(139, 262)
Me.ucrInputStation.Location = New Point(318, 294)
Me.ucrInputLegendPosition.Location = New Point(87, 294)
Me.ucr1stFactorReceiver.Location = New Point(205, 296)
@@ -760,9 +756,9 @@ Public Class dlgHistogram
End Sub
- Private Sub ucrChkBinWidth_ControlValueChanged(ucrChangedControl As ucrCore) Handles ucrChkBinWidth.ControlValueChanged, ucrNudBinwidth.ControlValueChanged
+ Private Sub ucrChkBinWidth_ControlValueChanged(ucrChangedControl As ucrCore) Handles ucrChkBinWidth.ControlValueChanged, ucrInputWidth.ControlValueChanged
If ucrChkBinWidth.Checked Then
- clsRgeomPlotFunction.AddParameter("binwidth", ucrNudBinwidth.GetText, iPosition:=4)
+ clsRgeomPlotFunction.AddParameter("binwidth", ucrInputWidth.GetText, iPosition:=4)
Else
clsRgeomPlotFunction.RemoveParameterByName("binwidth")
End If
@@ -822,7 +818,7 @@ Public Class dlgHistogram
SetPipeAssignTo()
End Sub
- Private Sub CoreControls_ControlContentsChanged() Handles ucrVariablesAsFactorforHist.ControlContentsChanged, ucrSaveHist.ControlContentsChanged, ucrFactorReceiver.ControlContentsChanged, ucrChkRidges.ControlContentsChanged, ucrInputAddReorder.ControlContentsChanged, ucrChkBinWidth.ControlContentsChanged, ucrNudBinwidth.ControlContentsChanged, ucrNudMinHeight.ControlContentsChanged
+ Private Sub CoreControls_ControlContentsChanged() Handles ucrVariablesAsFactorforHist.ControlContentsChanged, ucrSaveHist.ControlContentsChanged, ucrFactorReceiver.ControlContentsChanged, ucrChkRidges.ControlContentsChanged, ucrInputAddReorder.ControlContentsChanged, ucrChkBinWidth.ControlContentsChanged, ucrInputWidth.ControlContentsChanged, ucrNudMinHeight.ControlContentsChanged
TestOkEnabled()
End Sub
End Class
\ No newline at end of file
diff --git a/instat/dlgMakeDate.vb b/instat/dlgMakeDate.vb
index 44d4c52cc9d..799e6e30052 100644
--- a/instat/dlgMakeDate.vb
+++ b/instat/dlgMakeDate.vb
@@ -36,6 +36,7 @@ Public Class dlgMakeDate
Private clsGregorianDefault, clsJulianDateDefault, clsAsCharacterFunction, clsDummyFunction As New RFunction
Private clsDefaultFunction As New RFunction
Private clsConcFunction As New RFunction
+ Private clsNumericFunction As New RFunction
Private clsDivisionOperator, clsMultiplicationOperator As New ROperator
Private Sub dlgMakeDate_Load(sender As Object, e As EventArgs) Handles MyBase.Load
@@ -324,6 +325,7 @@ Public Class dlgMakeDate
clsDivisionOperator = New ROperator
clsMultiplicationOperator = New ROperator
clsDummyFunction = New RFunction
+ clsNumericFunction = New RFunction
clsDefaultFunction = New RFunction
clsConcFunction = New RFunction
@@ -351,9 +353,10 @@ Public Class dlgMakeDate
clsMakeYearMonthDay.AddParameter("month_format", Chr(34) & "%m" & Chr(34))
clsDateFunction.SetRCommand("as.Date")
- clsDateFunction.AddParameter("x", clsROperatorParameter:=clsDivisionOperator, iPosition:=0)
clsDateFunction.AddParameter("origin", clsRFunctionParameter:=clsDefaultDate, iPosition:=1)
+ clsNumericFunction.SetRCommand("as.numeric")
+
clsDivisionOperator.SetOperation("/")
clsDivisionOperator.bAllBrackets = True
@@ -524,22 +527,26 @@ Public Class dlgMakeDate
Private Sub ucrPnlFormat_ControlValueChanged(ucrChangedControl As ucrCore) Handles ucrPnlFormat.ControlValueChanged, ucrInputFormat.ControlValueChanged, ucrInputOrigin.ControlValueChanged
ucrReceiverForDate.RemoveIncludedMetadataProperty("class")
clsDateFunction.RemoveParameterByName("yearmoda")
- clsDateFunction.AddParameter("x", clsROperatorParameter:=clsDivisionOperator, iPosition:=0)
+ clsNumericFunction.RemoveParameterByName("number")
If rdoDefaultFormat.Checked Then
cmdHelp.Visible = False
- ucrReceiverForDate.SetExcludedDataTypes({"numeric"})
clsDateFunction.RemoveParameterByName("format")
clsDateFunction.RemoveParameterByName("origin")
+ clsDateFunction.AddParameter("x", clsROperatorParameter:=clsDivisionOperator, iPosition:=0)
ElseIf rdoOrigin.Checked Then
cmdHelp.Visible = False
- ucrReceiverForDate.SetIncludedDataTypes({"numeric", "date"})
If ucrInputOrigin.GetText = "Excel (1899/12/30)" Then
+ clsNumericFunction.AddParameter("number", clsROperatorParameter:=clsDivisionOperator, iPosition:=0, bIncludeArgumentName:=False)
+ clsDateFunction.AddParameter("x", clsRFunctionParameter:=clsNumericFunction, iPosition:=0)
clsDateFunction.AddParameter("origin", clsRFunctionParameter:=clsDefaultDate)
ElseIf ucrInputOrigin.GetText = "Gregorian (1600/03/01)" Then
+ clsDateFunction.AddParameter("x", clsROperatorParameter:=clsDivisionOperator, iPosition:=0)
clsDateFunction.AddParameter("origin", clsRFunctionParameter:=clsGregorianDefault)
ElseIf ucrInputOrigin.GetText = "Julian Day Number (-4713/11/24)" Then
+ clsDateFunction.AddParameter("x", clsROperatorParameter:=clsDivisionOperator, iPosition:=0)
clsDateFunction.AddParameter("origin", clsRFunctionParameter:=clsJulianDateDefault)
ElseIf ucrInputOrigin.GetText = "R (1970/01/01)" Then
+ clsDateFunction.AddParameter("x", clsROperatorParameter:=clsDivisionOperator, iPosition:=0)
clsDateFunction.AddParameter("origin", clsRFunctionParameter:=clsRDefaultDate)
End If
ElseIf rdoSpecifyFormat.Checked Then
diff --git a/instat/dlgMosaicPlot.Designer.vb b/instat/dlgMosaicPlot.Designer.vb
index dfe34001258..9bc671568e6 100644
--- a/instat/dlgMosaicPlot.Designer.vb
+++ b/instat/dlgMosaicPlot.Designer.vb
@@ -42,12 +42,24 @@ Partial Class dlgMosaicPlot
Me.contextMenuStripOptions = New System.Windows.Forms.ContextMenuStrip(Me.components)
Me.toolStripMenuItemPlotOptions = New System.Windows.Forms.ToolStripMenuItem()
Me.toolStripMenuItemMosaicOptions = New System.Windows.Forms.ToolStripMenuItem()
+ Me.ToolStripMenuItemMosaicJitter = New System.Windows.Forms.ToolStripMenuItem()
+ Me.ToolStripMenuItemMosaicText = New System.Windows.Forms.ToolStripMenuItem()
Me.cmdOptions = New instat.ucrSplitButton()
Me.ucrInputStation = New instat.ucrInputComboBox()
Me.ucr1stFactorReceiver = New instat.ucrReceiverSingle()
Me.lblFacetBy = New System.Windows.Forms.Label()
Me.ucrInputLegendPosition = New instat.ucrInputComboBox()
Me.ucrChkLegend = New instat.ucrCheck()
+ Me.ucrChkJitter = New instat.ucrCheck()
+ Me.lblSizeJitter = New System.Windows.Forms.Label()
+ Me.ucrNudJitter = New instat.ucrNud()
+ Me.lblColourJitter = New System.Windows.Forms.Label()
+ Me.ucrColors = New instat.ucrColors()
+ Me.ucrColorsLabel = New instat.ucrColors()
+ Me.lblColourLabel = New System.Windows.Forms.Label()
+ Me.ucrNudSizeLabel = New instat.ucrNud()
+ Me.lblSizeLabel = New System.Windows.Forms.Label()
+ Me.ucrChkLabel = New instat.ucrCheck()
Me.contextMenuStripOptions.SuspendLayout()
Me.SuspendLayout()
'
@@ -106,7 +118,7 @@ Partial Class dlgMosaicPlot
Me.ucrNudXAxisLabelsAngle.AutoSize = True
Me.ucrNudXAxisLabelsAngle.DecimalPlaces = New Decimal(New Integer() {0, 0, 0, 0})
Me.ucrNudXAxisLabelsAngle.Increment = New Decimal(New Integer() {1, 0, 0, 0})
- Me.ucrNudXAxisLabelsAngle.Location = New System.Drawing.Point(183, 326)
+ Me.ucrNudXAxisLabelsAngle.Location = New System.Drawing.Point(140, 326)
Me.ucrNudXAxisLabelsAngle.Maximum = New Decimal(New Integer() {100, 0, 0, 0})
Me.ucrNudXAxisLabelsAngle.Minimum = New Decimal(New Integer() {0, 0, 0, 0})
Me.ucrNudXAxisLabelsAngle.Name = "ucrNudXAxisLabelsAngle"
@@ -189,7 +201,7 @@ Partial Class dlgMosaicPlot
'ucrSaveMosaicPlot
'
Me.ucrSaveMosaicPlot.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink
- Me.ucrSaveMosaicPlot.Location = New System.Drawing.Point(9, 422)
+ Me.ucrSaveMosaicPlot.Location = New System.Drawing.Point(9, 513)
Me.ucrSaveMosaicPlot.Margin = New System.Windows.Forms.Padding(4, 5, 4, 5)
Me.ucrSaveMosaicPlot.Name = "ucrSaveMosaicPlot"
Me.ucrSaveMosaicPlot.Size = New System.Drawing.Size(317, 24)
@@ -220,29 +232,41 @@ Partial Class dlgMosaicPlot
'
Me.ucrBase.AutoSize = True
Me.ucrBase.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink
- Me.ucrBase.Location = New System.Drawing.Point(12, 455)
+ Me.ucrBase.Location = New System.Drawing.Point(14, 544)
Me.ucrBase.Name = "ucrBase"
Me.ucrBase.Size = New System.Drawing.Size(408, 52)
Me.ucrBase.TabIndex = 17
'
'contextMenuStripOptions
'
- Me.contextMenuStripOptions.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.toolStripMenuItemPlotOptions, Me.toolStripMenuItemMosaicOptions})
+ Me.contextMenuStripOptions.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.toolStripMenuItemPlotOptions, Me.toolStripMenuItemMosaicOptions, Me.ToolStripMenuItemMosaicJitter, Me.ToolStripMenuItemMosaicText})
Me.contextMenuStripOptions.Name = "contextMenuStripOk"
- Me.contextMenuStripOptions.Size = New System.Drawing.Size(158, 48)
+ Me.contextMenuStripOptions.Size = New System.Drawing.Size(186, 92)
'
'toolStripMenuItemPlotOptions
'
Me.toolStripMenuItemPlotOptions.Name = "toolStripMenuItemPlotOptions"
- Me.toolStripMenuItemPlotOptions.Size = New System.Drawing.Size(157, 22)
+ Me.toolStripMenuItemPlotOptions.Size = New System.Drawing.Size(185, 22)
Me.toolStripMenuItemPlotOptions.Text = "Plot Options"
'
'toolStripMenuItemMosaicOptions
'
Me.toolStripMenuItemMosaicOptions.Name = "toolStripMenuItemMosaicOptions"
- Me.toolStripMenuItemMosaicOptions.Size = New System.Drawing.Size(157, 22)
+ Me.toolStripMenuItemMosaicOptions.Size = New System.Drawing.Size(185, 22)
Me.toolStripMenuItemMosaicOptions.Text = "Mosaic Options"
'
+ 'ToolStripMenuItemMosaicJitter
+ '
+ Me.ToolStripMenuItemMosaicJitter.Name = "ToolStripMenuItemMosaicJitter"
+ Me.ToolStripMenuItemMosaicJitter.Size = New System.Drawing.Size(185, 22)
+ Me.ToolStripMenuItemMosaicJitter.Text = "Mosaic Jitter Options"
+ '
+ 'ToolStripMenuItemMosaicText
+ '
+ Me.ToolStripMenuItemMosaicText.Name = "ToolStripMenuItemMosaicText"
+ Me.ToolStripMenuItemMosaicText.Size = New System.Drawing.Size(185, 22)
+ Me.ToolStripMenuItemMosaicText.Text = "Mosaic Text Options"
+ '
'cmdOptions
'
Me.cmdOptions.AllowDrop = True
@@ -312,12 +336,132 @@ Partial Class dlgMosaicPlot
Me.ucrChkLegend.Size = New System.Drawing.Size(98, 24)
Me.ucrChkLegend.TabIndex = 97
'
+ 'ucrChkJitter
+ '
+ Me.ucrChkJitter.AutoSize = True
+ Me.ucrChkJitter.Checked = False
+ Me.ucrChkJitter.Location = New System.Drawing.Point(9, 429)
+ Me.ucrChkJitter.Name = "ucrChkJitter"
+ Me.ucrChkJitter.Size = New System.Drawing.Size(98, 24)
+ Me.ucrChkJitter.TabIndex = 99
+ '
+ 'lblSizeJitter
+ '
+ Me.lblSizeJitter.AutoSize = True
+ Me.lblSizeJitter.ImeMode = System.Windows.Forms.ImeMode.NoControl
+ Me.lblSizeJitter.Location = New System.Drawing.Point(104, 431)
+ Me.lblSizeJitter.Name = "lblSizeJitter"
+ Me.lblSizeJitter.Size = New System.Drawing.Size(30, 13)
+ Me.lblSizeJitter.TabIndex = 100
+ Me.lblSizeJitter.Tag = ""
+ Me.lblSizeJitter.Text = "Size:"
+ '
+ 'ucrNudJitter
+ '
+ Me.ucrNudJitter.AutoSize = True
+ Me.ucrNudJitter.DecimalPlaces = New Decimal(New Integer() {0, 0, 0, 0})
+ Me.ucrNudJitter.Increment = New Decimal(New Integer() {1, 0, 0, 0})
+ Me.ucrNudJitter.Location = New System.Drawing.Point(140, 430)
+ Me.ucrNudJitter.Maximum = New Decimal(New Integer() {100, 0, 0, 0})
+ Me.ucrNudJitter.Minimum = New Decimal(New Integer() {0, 0, 0, 0})
+ Me.ucrNudJitter.Name = "ucrNudJitter"
+ Me.ucrNudJitter.Size = New System.Drawing.Size(50, 20)
+ Me.ucrNudJitter.TabIndex = 101
+ Me.ucrNudJitter.Value = New Decimal(New Integer() {0, 0, 0, 0})
+ '
+ 'lblColourJitter
+ '
+ Me.lblColourJitter.AutoSize = True
+ Me.lblColourJitter.ImeMode = System.Windows.Forms.ImeMode.NoControl
+ Me.lblColourJitter.Location = New System.Drawing.Point(224, 431)
+ Me.lblColourJitter.Name = "lblColourJitter"
+ Me.lblColourJitter.Size = New System.Drawing.Size(40, 13)
+ Me.lblColourJitter.TabIndex = 102
+ Me.lblColourJitter.Tag = ""
+ Me.lblColourJitter.Text = "Colour:"
+ '
+ 'ucrColors
+ '
+ Me.ucrColors.AddQuotesIfUnrecognised = True
+ Me.ucrColors.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink
+ Me.ucrColors.GetSetSelectedIndex = -1
+ Me.ucrColors.IsReadOnly = False
+ Me.ucrColors.Location = New System.Drawing.Point(272, 428)
+ Me.ucrColors.Name = "ucrColors"
+ Me.ucrColors.Size = New System.Drawing.Size(70, 22)
+ Me.ucrColors.TabIndex = 202
+ '
+ 'ucrColorsLabel
+ '
+ Me.ucrColorsLabel.AddQuotesIfUnrecognised = True
+ Me.ucrColorsLabel.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink
+ Me.ucrColorsLabel.GetSetSelectedIndex = -1
+ Me.ucrColorsLabel.IsReadOnly = False
+ Me.ucrColorsLabel.Location = New System.Drawing.Point(272, 473)
+ Me.ucrColorsLabel.Name = "ucrColorsLabel"
+ Me.ucrColorsLabel.Size = New System.Drawing.Size(70, 22)
+ Me.ucrColorsLabel.TabIndex = 207
+ '
+ 'lblColourLabel
+ '
+ Me.lblColourLabel.AutoSize = True
+ Me.lblColourLabel.ImeMode = System.Windows.Forms.ImeMode.NoControl
+ Me.lblColourLabel.Location = New System.Drawing.Point(224, 475)
+ Me.lblColourLabel.Name = "lblColourLabel"
+ Me.lblColourLabel.Size = New System.Drawing.Size(40, 13)
+ Me.lblColourLabel.TabIndex = 206
+ Me.lblColourLabel.Tag = ""
+ Me.lblColourLabel.Text = "Colour:"
+ '
+ 'ucrNudSizeLabel
+ '
+ Me.ucrNudSizeLabel.AutoSize = True
+ Me.ucrNudSizeLabel.DecimalPlaces = New Decimal(New Integer() {0, 0, 0, 0})
+ Me.ucrNudSizeLabel.Increment = New Decimal(New Integer() {1, 0, 0, 0})
+ Me.ucrNudSizeLabel.Location = New System.Drawing.Point(140, 475)
+ Me.ucrNudSizeLabel.Maximum = New Decimal(New Integer() {100, 0, 0, 0})
+ Me.ucrNudSizeLabel.Minimum = New Decimal(New Integer() {0, 0, 0, 0})
+ Me.ucrNudSizeLabel.Name = "ucrNudSizeLabel"
+ Me.ucrNudSizeLabel.Size = New System.Drawing.Size(50, 20)
+ Me.ucrNudSizeLabel.TabIndex = 205
+ Me.ucrNudSizeLabel.Value = New Decimal(New Integer() {0, 0, 0, 0})
+ '
+ 'lblSizeLabel
+ '
+ Me.lblSizeLabel.AutoSize = True
+ Me.lblSizeLabel.ImeMode = System.Windows.Forms.ImeMode.NoControl
+ Me.lblSizeLabel.Location = New System.Drawing.Point(104, 475)
+ Me.lblSizeLabel.Name = "lblSizeLabel"
+ Me.lblSizeLabel.Size = New System.Drawing.Size(30, 13)
+ Me.lblSizeLabel.TabIndex = 204
+ Me.lblSizeLabel.Tag = ""
+ Me.lblSizeLabel.Text = "Size:"
+ '
+ 'ucrChkLabel
+ '
+ Me.ucrChkLabel.AutoSize = True
+ Me.ucrChkLabel.Checked = False
+ Me.ucrChkLabel.Location = New System.Drawing.Point(9, 471)
+ Me.ucrChkLabel.Name = "ucrChkLabel"
+ Me.ucrChkLabel.Size = New System.Drawing.Size(98, 24)
+ Me.ucrChkLabel.TabIndex = 203
+ '
'dlgMosaicPlot
'
Me.AutoScaleDimensions = New System.Drawing.SizeF(96.0!, 96.0!)
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi
Me.AutoSize = True
- Me.ClientSize = New System.Drawing.Size(441, 510)
+ Me.ClientSize = New System.Drawing.Size(441, 605)
+ Me.Controls.Add(Me.ucrColorsLabel)
+ Me.Controls.Add(Me.lblColourLabel)
+ Me.Controls.Add(Me.ucrNudSizeLabel)
+ Me.Controls.Add(Me.lblSizeLabel)
+ Me.Controls.Add(Me.ucrChkLabel)
+ Me.Controls.Add(Me.ucrColors)
+ Me.Controls.Add(Me.lblColourJitter)
+ Me.Controls.Add(Me.ucrNudJitter)
+ Me.Controls.Add(Me.lblSizeJitter)
+ Me.Controls.Add(Me.ucrChkJitter)
Me.Controls.Add(Me.ucrInputStation)
Me.Controls.Add(Me.ucr1stFactorReceiver)
Me.Controls.Add(Me.lblFacetBy)
@@ -378,4 +522,16 @@ Partial Class dlgMosaicPlot
Friend WithEvents lblFacetBy As Label
Friend WithEvents ucrInputLegendPosition As ucrInputComboBox
Friend WithEvents ucrChkLegend As ucrCheck
+ Friend WithEvents ToolStripMenuItemMosaicJitter As ToolStripMenuItem
+ Friend WithEvents ToolStripMenuItemMosaicText As ToolStripMenuItem
+ Friend WithEvents lblColourJitter As Label
+ Friend WithEvents ucrNudJitter As ucrNud
+ Friend WithEvents lblSizeJitter As Label
+ Friend WithEvents ucrChkJitter As ucrCheck
+ Friend WithEvents ucrColors As ucrColors
+ Friend WithEvents ucrColorsLabel As ucrColors
+ Friend WithEvents lblColourLabel As Label
+ Friend WithEvents ucrNudSizeLabel As ucrNud
+ Friend WithEvents lblSizeLabel As Label
+ Friend WithEvents ucrChkLabel As ucrCheck
End Class
diff --git a/instat/dlgMosaicPlot.vb b/instat/dlgMosaicPlot.vb
index 0b00c5c9d2d..d7417a9c538 100644
--- a/instat/dlgMosaicPlot.vb
+++ b/instat/dlgMosaicPlot.vb
@@ -19,7 +19,7 @@ Imports instat.Translations
Public Class dlgMosaicPlot
Private clsGgplotFunction As New RFunction
- Private clsMosaicGeomFunction As New RFunction
+ Private clsMosaicGeomFunction, clsMosaicJitterFunction, clsMosaicTextFunction As New RFunction
Private clsAesFunction As New RFunction
Private clsBaseOperator As New ROperator
Private clsLocalAesFunction As New RFunction
@@ -82,6 +82,7 @@ Public Class dlgMosaicPlot
Private Sub InitialiseDialog()
Dim dctPartitionOptions As New Dictionary(Of String, String)
Dim dctLegendPosition As New Dictionary(Of String, String)
+ Dim dctLabelColours As New Dictionary(Of String, String)
ucrBase.clsRsyntax.bExcludeAssignedFunctionOutput = False
ucrBase.iHelpTopicID = 594
@@ -172,6 +173,38 @@ Public Class dlgMosaicPlot
ucrInputStation.SetItems({strFacetWrap, strFacetRow, strFacetCol, strNone})
ucrInputStation.SetDropDownStyleAsNonEditable()
+ ucrChkJitter.SetText("Jitter")
+ ucrChkJitter.AddParameterPresentCondition(True, "geom_mosaic_jitter")
+ ucrChkJitter.AddParameterPresentCondition(False, "geom_mosaic_jitter", False)
+ ucrChkJitter.AddToLinkedControls(ucrNudJitter, {True}, bNewLinkedAddRemoveParameter:=True, bNewLinkedHideIfParameterMissing:=True)
+ ucrChkJitter.AddToLinkedControls(ucrColors, {True}, bNewLinkedAddRemoveParameter:=True, bNewLinkedHideIfParameterMissing:=True, bNewLinkedChangeToDefaultState:=True, objNewDefaultState:="black")
+ ucrColors.SetParameter(New RParameter("colour", 1))
+ ucrColors.SetColours()
+ ucrColors.SetLinkedDisplayControl(lblColourJitter)
+
+ ucrNudJitter.SetParameter(New RParameter("size", 0))
+ ucrNudJitter.SetMinMax(0, 100)
+ ucrNudJitter.Increment = 0.1
+ ucrNudJitter.DecimalPlaces = 1
+ ucrNudJitter.SetLinkedDisplayControl(lblSizeJitter)
+ ucrNudJitter.SetRDefault(1.0)
+
+ ucrChkLabel.SetText("Label")
+ ucrChkLabel.AddParameterPresentCondition(True, "geom_mosaic_text")
+ ucrChkLabel.AddParameterPresentCondition(False, "geom_mosaic_text", False)
+ ucrChkLabel.AddToLinkedControls(ucrNudSizeLabel, {True}, bNewLinkedAddRemoveParameter:=True, bNewLinkedHideIfParameterMissing:=True)
+ ucrChkLabel.AddToLinkedControls(ucrColorsLabel, {True}, bNewLinkedAddRemoveParameter:=True, bNewLinkedHideIfParameterMissing:=True, bNewLinkedChangeToDefaultState:=True, objNewDefaultState:="black")
+ ucrColorsLabel.SetParameter(New RParameter("colour", 1))
+ ucrColorsLabel.SetColours()
+ ucrColorsLabel.SetLinkedDisplayControl(lblColourLabel)
+
+ ucrNudSizeLabel.SetParameter(New RParameter("size", 0))
+ ucrNudSizeLabel.SetMinMax(0, 100)
+ ucrNudSizeLabel.Increment = 0.1
+ ucrNudSizeLabel.DecimalPlaces = 1
+ ucrNudSizeLabel.SetLinkedDisplayControl(lblSizeLabel)
+ ucrNudSizeLabel.SetRDefault(1.0)
+
ucrSaveMosaicPlot.SetPrefix("mosaic")
ucrSaveMosaicPlot.SetIsComboBox()
ucrSaveMosaicPlot.SetCheckBoxText("Store Graph")
@@ -184,6 +217,8 @@ Public Class dlgMosaicPlot
clsBaseOperator = New ROperator
clsGgplotFunction = New RFunction
clsMosaicGeomFunction = New RFunction
+ clsMosaicJitterFunction = New RFunction
+ clsMosaicTextFunction = New RFunction
clsAesFunction = New RFunction
clsLocalAesFunction = New RFunction
@@ -199,7 +234,6 @@ Public Class dlgMosaicPlot
ucrInputStation.SetName(strFacetWrap)
ucrInputStation.bUpdateRCodeFromControl = True
-
ucrSelectorMosaicPlot.Reset()
ucrSelectorMosaicPlot.SetGgplotFunction(clsBaseOperator)
@@ -213,6 +247,14 @@ Public Class dlgMosaicPlot
clsMosaicGeomFunction.SetRCommand("geom_mosaic")
clsMosaicGeomFunction.AddParameter("mapping", clsRFunctionParameter:=clsLocalAesFunction, iPosition:=1)
+ clsMosaicJitterFunction.SetPackageName("ggmosaic")
+ clsMosaicJitterFunction.SetRCommand("geom_mosaic_jitter")
+ clsMosaicJitterFunction.AddParameter("mapping", clsRFunctionParameter:=clsLocalAesFunction, iPosition:=1)
+
+ clsMosaicTextFunction.SetPackageName("ggmosaic")
+ clsMosaicTextFunction.SetRCommand("geom_mosaic_text")
+ clsMosaicTextFunction.AddParameter("mapping", clsRFunctionParameter:=clsLocalAesFunction, iPosition:=1)
+
clsLocalAesFunction.SetPackageName("ggplot2")
clsLocalAesFunction.SetRCommand("aes")
@@ -273,8 +315,16 @@ Public Class dlgMosaicPlot
bRCodeSet = False
ucrSelectorMosaicPlot.SetRCode(clsGgplotFunction, bReset)
- ucrReceiverX.SetRCode(clsLocalAesFunction, bReset)
- ucrReceiverFill.SetRCode(clsLocalAesFunction, bReset)
+ If bReset Then
+ ucrReceiverX.SetRCode(clsLocalAesFunction, bReset)
+ ucrReceiverFill.SetRCode(clsLocalAesFunction, bReset)
+ ucrColors.SetRCode(clsMosaicJitterFunction, bReset)
+ ucrNudJitter.SetRCode(clsMosaicJitterFunction, bReset)
+ ucrChkJitter.SetRCode(clsMosaicJitterFunction, bReset)
+ ucrColorsLabel.SetRCode(clsMosaicTextFunction, bReset)
+ ucrNudSizeLabel.SetRCode(clsMosaicTextFunction, bReset)
+ ucrChkLabel.SetRCode(clsMosaicTextFunction, bReset)
+ End If
ucrReceiverConditions.SetRCode(clsLocalAesFunction, bReset)
ucrReceiverWeights.SetRCode(clsLocalAesFunction, bReset)
@@ -472,7 +522,6 @@ Public Class dlgMosaicPlot
Private Sub ucrReceiverX_ControlValueChanged(ucrChangedControl As ucrCore) Handles ucrReceiverX.ControlValueChanged
Dim iXVarCount As Integer
-
iXVarCount = lstPreviousXVars.Count
If bRCodeSet Then
If lstPreviousXVars.Contains(ucrReceiverFill.GetVariableNames(False)) AndAlso Not ucrReceiverX.GetVariableNamesAsList().Contains(ucrReceiverFill.GetVariableNames(False)) Then
@@ -545,7 +594,7 @@ Public Class dlgMosaicPlot
End Sub
Private Sub toolStripMenuItemMosaicOptions_Click(sender As Object, e As EventArgs) Handles toolStripMenuItemMosaicOptions.Click
- sdgLayerOptions.SetupLayer(clsNewGgPlot:=clsGgplotFunction, clsNewGeomFunc:=clsMosaicGeomFunction, clsNewGlobalAesFunc:=clsAesFunction, clsNewLocalAes:=clsLocalAesFunction, bFixGeom:=True, ucrNewBaseSelector:=ucrSelectorMosaicPlot, bApplyAesGlobally:=False, bReset:=bResetBoxLayerSubdialog)
+ sdgLayerOptions.SetupLayer(clsNewGgPlot:=clsGgplotFunction, clsNewGeomFunc:=clsMosaicGeomFunction, clsNewGlobalAesFunc:=clsLocalAesFunction, clsNewLocalAes:=clsAesFunction, bFixGeom:=True, ucrNewBaseSelector:=ucrSelectorMosaicPlot, bApplyAesGlobally:=False, bReset:=bResetBoxLayerSubdialog)
sdgLayerOptions.tbcLayers.SelectedTab = sdgLayerOptions.tbpGeomParameters
sdgLayerOptions.tbpAesthetics.Enabled = False
sdgLayerOptions.ShowDialog()
@@ -553,4 +602,90 @@ Public Class dlgMosaicPlot
bResetBoxLayerSubdialog = False
SetRCodeForControls(False)
End Sub
+
+ Private Sub openSdgLayerOptions(clsNewGeomFunc As RFunction)
+ sdgLayerOptions.SetupLayer(clsNewGgPlot:=clsGgplotFunction, clsNewGeomFunc:=clsNewGeomFunc,
+ clsNewGlobalAesFunc:=clsAesFunction, clsNewLocalAes:=clsLocalAesFunction,
+ bFixGeom:=True, ucrNewBaseSelector:=ucrSelectorMosaicPlot,
+ bApplyAesGlobally:=False, bReset:=bResetBoxLayerSubdialog)
+ sdgLayerOptions.ShowDialog()
+ bResetBoxLayerSubdialog = False
+ 'Coming from the sdgLayerOptions, clsRaesFunction and others have been modified.
+ ' One then needs to display these modifications on the dlgScatteredPlot.
+
+ 'The aesthetics parameters on the main dialog are repopulated as required.
+ For Each clsParam In clsLocalAesFunction.clsParameters
+ If clsParam.strArgumentName = "x" Then
+ If clsParam.strArgumentValue = Chr(34) & Chr(34) Then
+ ucrReceiverX.Clear()
+ Else
+ ucrReceiverX.Add(clsParam.strArgumentValue)
+ End If
+ 'In the y case, the value stored in the clsReasFunction in the multiple variables
+ ' case is "value", however that one shouldn't be written in the multiple
+ ' variables receiver (otherwise it would stack all variables and the stack
+ ' ("value") itself!).
+ 'Warning: what if someone used the name value for one of it's variables
+ ' independently from the multiple variables method? Here if the receiver is
+ ' actually in single mode, the variable "value" will still be given back, which
+ ' throws the problem back to the creation of "value" in the multiple receiver case.
+ ElseIf clsParam.strArgumentName = "conds" AndAlso (clsParam.strArgumentValue <> "value") Then
+ 'Still might be in the case of bSingleVariable with mapping y="".
+ If clsParam.strArgumentValue = Chr(34) & Chr(34) Then
+ 'ucrReceiverConditions.Clear()
+ Else
+ ucrReceiverConditions.Add(clsParam.strArgumentValue)
+ End If
+ ElseIf clsParam.strArgumentName = "fill" Then
+ ucrReceiverFill.Add(clsParam.strArgumentValue)
+ End If
+ Next
+ TestOkEnabled()
+ End Sub
+
+ Private Sub ToolStripMenuItemMosaicJitter_Click(sender As Object, e As EventArgs) Handles ToolStripMenuItemMosaicJitter.Click
+ openSdgLayerOptions(clsMosaicJitterFunction)
+ End Sub
+
+ Private Sub ToolStripMenuItemMosaicText_Click(sender As Object, e As EventArgs) Handles ToolStripMenuItemMosaicText.Click
+ openSdgLayerOptions(clsMosaicTextFunction)
+ End Sub
+
+ Private Sub ucrChkJitter_ControlValueChanged(ucrChangedControl As ucrCore) Handles ucrChkJitter.ControlValueChanged, ucrColors.ControlValueChanged, ucrNudJitter.ControlValueChanged
+ If ucrChkJitter.Checked Then
+ clsBaseOperator.AddParameter("geom_mosaic_jitter", clsRFunctionParameter:=clsMosaicJitterFunction)
+ If Not ucrColors.IsEmpty Then
+ clsMosaicJitterFunction.AddParameter("colour", Chr(34) & ucrColors.GetText & Chr(34), iPosition:=1)
+ Else
+ clsMosaicJitterFunction.RemoveParameterByName("colour")
+ End If
+ If Not ucrNudJitter.IsEmpty Then
+ clsMosaicJitterFunction.AddParameter("size", ucrNudJitter.GetText(), iPosition:=0)
+ Else
+ clsMosaicJitterFunction.RemoveParameterByName("size")
+ End If
+ Else
+ clsBaseOperator.RemoveParameterByName("geom_mosaic_jitter")
+ End If
+ ToolStripMenuItemMosaicJitter.Enabled = ucrChkJitter.Checked
+ End Sub
+
+ Private Sub ucrChkLabel_ControlValueChanged(ucrChangedControl As ucrCore) Handles ucrChkLabel.ControlValueChanged, ucrColorsLabel.ControlValueChanged, ucrNudSizeLabel.ControlValueChanged
+ If ucrChkLabel.Checked Then
+ clsBaseOperator.AddParameter("geom_mosaic_text", clsRFunctionParameter:=clsMosaicTextFunction)
+ If Not ucrColorsLabel.IsEmpty Then
+ clsMosaicTextFunction.AddParameter("colour", Chr(34) & ucrColorsLabel.GetText & Chr(34), iPosition:=1)
+ Else
+ clsMosaicTextFunction.RemoveParameterByName("colour")
+ End If
+ If Not ucrNudSizeLabel.IsEmpty Then
+ clsMosaicTextFunction.AddParameter("size", ucrNudSizeLabel.GetText(), iPosition:=0)
+ Else
+ clsMosaicTextFunction.RemoveParameterByName("size")
+ End If
+ Else
+ clsBaseOperator.RemoveParameterByName("geom_mosaic_text")
+ End If
+ ToolStripMenuItemMosaicText.Enabled = ucrChkLabel.Checked
+ End Sub
End Class
\ No newline at end of file
diff --git a/instat/dlgName.vb b/instat/dlgName.vb
index 0be8141d4ab..aa20aad2e66 100644
--- a/instat/dlgName.vb
+++ b/instat/dlgName.vb
@@ -34,6 +34,7 @@ Public Class dlgName
Private clsStartwithFunction, clsRegexFunction, clsEndswithFunction, clsMatchesFunction, clsContainsFunction As New RFunction
Private WithEvents grdCurrentWorkSheet As Worksheet
Private dctRowsNewNameChanged As New Dictionary(Of Integer, String)
+ Private dctRowsCurrentName As New Dictionary(Of Integer, String)
Private dctRowsNewLabelChanged As New Dictionary(Of Integer, String)
Private dctNameRowsValues As New Dictionary(Of Integer, String)
Private dctCaseOptions As New Dictionary(Of String, String)
@@ -99,7 +100,7 @@ Public Class dlgName
ucrPnlCase.AddRadioButton(rdoAbbreviate, "abbreviate")
ucrPnlCase.AddRadioButton(rdoReplace, "stringr::str_replace")
- ucrPnlSelectData.SetParameter(New RParameter("data", 0))
+
ucrPnlSelectData.AddRadioButton(rdoWholeDataFrame)
ucrPnlSelectData.AddRadioButton(rdoSelectedColumn)
ucrPnlSelectData.AddParameterValuesCondition(rdoWholeDataFrame, "checked", "whole")
@@ -189,6 +190,7 @@ Public Class dlgName
ucrSelectVariables.Reset()
dctRowsNewNameChanged.Clear()
dctRowsNewLabelChanged.Clear()
+ dctRowsCurrentName.Clear()
bCurrentCell = False
clsNewColNameDataframeFunction.SetRCommand("data.frame")
@@ -353,10 +355,14 @@ Public Class dlgName
If e.Range.Rows > 1 Then
For iRow As Integer = iStartRowIndex To grdCurrentWorkSheet.SelectionRange.EndRow
Dim strNewData As String = ValidateRVariable(grdCurrentWorkSheet.GetCellData(row:=iRow, col:=iColIndex), iColIndex)
+ Dim strOldData As String = grdCurrentWorkSheet.GetCellData(row:=iRow, col:=0)
+ GetOldNames(iRow, strOldData)
RenameColumns(strNewData, iRow, iColIndex)
Next
Else
Dim strNewData As String = ValidateRVariable(grdCurrentWorkSheet.GetCellData(row:=e.Range.Row, col:=iColIndex), iColIndex)
+ Dim strOldData As String = grdCurrentWorkSheet.GetCellData(row:=e.Range.Row, col:=0)
+ GetOldNames(e.Range.Row, strOldData)
RenameColumns(strNewData, iStartRowIndex, iColIndex)
End If
ValidateNamesFromDictionary(iColIndex)
@@ -406,10 +412,22 @@ Public Class dlgName
Private Sub grdCurrSheet_AfterCellEdit(sender As Object, e As CellAfterEditEventArgs) Handles grdCurrentWorkSheet.AfterCellEdit
Dim iCol As Integer = e.Cell.Column
Dim strNewData As String = ValidateRVariable(e.NewData, iCol)
+
+ Dim strFirstColumnData As String = grdCurrentWorkSheet(e.Cell.Row, 0).ToString()
+
+ GetOldNames(e.Cell.Row, strFirstColumnData)
RenameColumns(strNewData, e.Cell.Row, iCol)
ValidateNamesFromDictionary(iCol)
End Sub
+ Private Sub GetOldNames(iRow As Integer, strOldName As String)
+ If Not dctRowsCurrentName.ContainsKey(iRow) Then
+ dctRowsCurrentName.Add(iRow, strOldName)
+ Else
+ dctRowsCurrentName(iRow) = strOldName
+ End If
+ End Sub
+
Private Sub GetVariables(strNewData As String, iRowIndex As Integer, iColIndex As Integer)
If rdoMultiple.Checked Then
If iColIndex = 1 Then
@@ -417,7 +435,7 @@ Public Class dlgName
AddChangedNewNameRows(iRowIndex, strNewData)
clsNewColNameDataframeFunction.AddParameter("cols", GetValuesAsVector(dctRowsNewNameChanged), iPosition:=0)
- clsNewColNameDataframeFunction.AddParameter("index", "c(" & String.Join(",", dctRowsNewNameChanged.Keys.ToArray) & ")", iPosition:=1)
+ clsNewColNameDataframeFunction.AddParameter("old_names", GetValuesAsVector(dctRowsCurrentName), iPosition:=1)
clsDefaultRFunction.AddParameter("new_column_names_df", clsRFunctionParameter:=clsNewColNameDataframeFunction, iPosition:=8)
Else
clsNewColNameDataframeFunction.RemoveParameterByName("cols")
@@ -602,7 +620,9 @@ Public Class dlgName
rdoReplace.Visible = rdoWholeDataFrame.Checked
If rdoWholeDataFrame.Checked Then
ucrReceiverColumns.Visible = False
+ clsDummyFunction.AddParameter("checked", "whole", iPosition:=1)
Else
+ clsDummyFunction.AddParameter("checked", "selected", iPosition:=1)
ucrReceiverColumns.SetMeAsReceiver()
If rdoReplace.Checked Then
rdoMakeCleanNames.Checked = True
@@ -681,6 +701,8 @@ Public Class dlgName
Dim parsedValue As Boolean
Dim strNewData As String = ValidateRVariable(e.Text, iCol)
If Not strNewData.ToLower.Equals("t") AndAlso Not strNewData.ToLower.Equals("f") AndAlso Not IsNumeric(strNewData) AndAlso Not Boolean.TryParse(strNewData, parsedValue) Then
+ Dim strFirstColumnData As String = grdCurrentWorkSheet(e.Cell.Row, 0).ToString()
+ GetOldNames(e.Cell.Row, strFirstColumnData)
RenameColumns(strNewData, e.Cell.Row, iCol)
ValidateNamesFromDictionary(iCol)
End If
@@ -713,6 +735,7 @@ Public Class dlgName
clsDefaultRFunction.AddParameter(".cols", clsRFunctionParameter:=clsContainsFunction, iPosition:=3)
clsDefaultRFunction.AddParameter(".fn", "stringr::str_replace_all", iPosition:=2)
End Select
+
Else
clsDefaultRFunction.RemoveParameterByName("replacement")
clsDefaultRFunction.RemoveParameterByName(".cols")
diff --git a/instat/dlgOneVariableSummarise.vb b/instat/dlgOneVariableSummarise.vb
index d91b5a62f91..e6aa640b043 100644
--- a/instat/dlgOneVariableSummarise.vb
+++ b/instat/dlgOneVariableSummarise.vb
@@ -32,8 +32,7 @@ Public Class dlgOneVariableSummarise
clsSkimrFunction, clsPivotWiderFunction As New RFunction
Private clsPipeOperator, clsJoiningPipeOperator As New ROperator
- Private clsGetGtTableFunction As New RFunction
- Private clsGtTableROperator As New ROperator
+ Private clsSummaryOperator As New ROperator
Private bResetSubdialog As Boolean = False
Private bResetFormatSubdialog As Boolean = False
Public strDefaultDataFrame As String = ""
@@ -134,17 +133,13 @@ Public Class dlgOneVariableSummarise
clsPipeOperator = New ROperator
- clsGtTableROperator = New ROperator
- clsGetGtTableFunction = New RFunction
+ clsSummaryOperator = New ROperator
ucrSelectorOneVarSummarise.Reset()
clsPipeOperator.SetOperation("%>%")
clsPipeOperator.bBrackets = False
- clsGetGtTableFunction.SetPackageName("gt")
- clsGetGtTableFunction.SetRCommand("gt")
-
clsSkimrFunction.SetPackageName("skimr")
clsSkimrFunction.SetRCommand("skim_without_charts")
clsSkimrFunction.AddParameter("data", clsRFunctionParameter:=ucrSelectorOneVarSummarise.ucrAvailableDataFrames.clsCurrDataFrame, iPosition:=0)
@@ -167,13 +162,14 @@ Public Class dlgOneVariableSummarise
clsGtFunction.SetPackageName("gt")
clsGtFunction.SetRCommand("gt")
- clsGtTableROperator.SetOperation("%>%")
- clsGtTableROperator.bBrackets = False
- clsGtTableROperator.AddParameter("tableFun", clsRFunctionParameter:=clsSummaryTableFunction, iPosition:=0)
- clsGtTableROperator.AddParameter(strParameterName:="gt_tbl", clsRFunctionParameter:=clsGtFunction, iPosition:=1, bIncludeArgumentName:=False)
+
+ clsSummaryOperator.SetOperation("%>%")
+ clsSummaryOperator.AddParameter("tableFun", clsRFunctionParameter:=clsSummaryTableFunction, iPosition:=0)
+ clsSummaryOperator.AddParameter(strParameterName:="gt_tbl", clsRFunctionParameter:=clsGtFunction, iPosition:=2, bIncludeArgumentName:=False)
+
clsJoiningPipeOperator.SetOperation("%>%")
- clsJoiningPipeOperator.AddParameter("mutable", clsROperatorParameter:=clsGtTableROperator, iPosition:=0)
+ clsJoiningPipeOperator.AddParameter("mutable", clsROperatorParameter:=clsSummaryOperator, iPosition:=0)
clsJoiningPipeOperator.SetAssignToOutputObject(strRObjectToAssignTo:="last_table",
strRObjectTypeLabelToAssignTo:=RObjectTypeLabel.Table,
strRObjectFormatToAssignTo:=RObjectFormat.Html,
@@ -196,7 +192,6 @@ Public Class dlgOneVariableSummarise
strObjectName:="last_summary")
clsSummaryTableFunction.SetRCommand(frmMain.clsRLink.strInstatDataObject & "$summary_table")
- clsSummaryTableFunction.AddParameter("data", clsRFunctionParameter:=ucrSelectorOneVarSummarise.ucrAvailableDataFrames.clsCurrDataFrame, iPosition:=0)
clsSummaryTableFunction.AddParameter("treat_columns_as_factor", "TRUE", iPosition:=1)
clsSummaryTableFunction.AddParameter("margins", Chr(34) & "summary" & Chr(34), iPosition:=2)
clsSummaryTableFunction.AddParameter("summaries", clsRFunctionParameter:=clsSummariesList, iPosition:=5)
@@ -211,15 +206,13 @@ Public Class dlgOneVariableSummarise
ucrChkOmitMissing.AddAdditionalCodeParameterPair(clsSummaryTableFunction, New RParameter("na.rm", iNewPosition:=2), iAdditionalPairNo:=1)
ucrSaveSummary.AddAdditionalRCode(clsSummaryFunction, iAdditionalPairNo:=1)
ucrSaveSummary.AddAdditionalRCode(clsJoiningPipeOperator, iAdditionalPairNo:=2)
- ucrReceiverOneVarSummarise.SetRCode(clsSummaryFunction, bReset)
+ ucrReceiverOneVarSummarise.AddAdditionalCodeParameterPair(clsSummaryFunction, New RParameter("object", iNewPosition:=2), iAdditionalPairNo:=1)
ucrChkOmitMissing.SetRCode(clsSummaryFunction, bReset)
ucrPnlSummaries.SetRCode(clsDummyFunction, bReset)
ucrSelectorOneVarSummarise.SetRCode(clsSummaryTableFunction, bReset)
ucrInputDisplayMissing.SetRCode(clsSummaryTableFunction, bReset)
ucrSaveSummary.SetRCode(clsSkimrFunction, bReset)
- ucrSelectorOneVarSummarise.SetRCode(clsGetGtTableFunction, bReset)
- ucrReceiverOneVarSummarise.SetRCode(clsGetGtTableFunction, bReset)
If bReset Then
ucrChkDisplayMissing.SetRCode(clsDummyFunction, bReset)
@@ -335,6 +328,7 @@ Public Class dlgOneVariableSummarise
End If
cmdSummaries.Visible = rdoCustomised.Checked
cmdTableOptions.Visible = rdoCustomised.Checked
+ ConfigureColumnFactorsAndNames()
End Sub
Private Sub FillListView()
@@ -368,28 +362,36 @@ Public Class dlgOneVariableSummarise
End Sub
Private Sub cmdTableOptions_Click(sender As Object, e As EventArgs) Handles cmdTableOptions.Click
- sdgTableOptions.Setup(ucrSelectorOneVarSummarise.strCurrentDataFrame, clsGtTableROperator)
+ sdgTableOptions.Setup(ucrSelectorOneVarSummarise.strCurrentDataFrame, clsSummaryOperator)
sdgTableOptions.ShowDialog(Me)
bResetFormatSubdialog = False
End Sub
Private Sub Display_ControlValueChanged(ucrChangedControl As ucrCore) Handles ucrPnlColumnFactor.ControlValueChanged
- 'If bRCodeSet Then
- If rdoNoColumnFactor.Checked Then
- clsGtTableROperator.RemoveParameterByName("col_factor")
- clsDummyFunction.AddParameter("factor_cols", "NoColFactor", iPosition:=1)
- Else
- clsGtTableROperator.AddParameter("col_factor", clsRFunctionParameter:=clsPivotWiderFunction, iPosition:=1)
- If rdoSummary.Checked Then
- clsDummyFunction.AddParameter("factor_cols", "Sum", iPosition:=1)
- clsPivotWiderFunction.AddParameter("names_from", "summary", iPosition:=0)
- ElseIf rdoVariable.Checked Then
- clsDummyFunction.AddParameter("factor_cols", "Var", iPosition:=1)
- clsPivotWiderFunction.AddParameter("names_from", "variable", iPosition:=0)
+ ConfigureColumnFactorsAndNames()
+ End Sub
+
+ Private Sub ConfigureColumnFactorsAndNames()
+ If rdoCustomised.Checked Then
+ If rdoNoColumnFactor.Checked Then
+ clsSummaryOperator.RemoveParameterByName("col_factor")
+ clsDummyFunction.AddParameter("factor_cols", "NoColFactor", iPosition:=1)
+ Else
+ clsSummaryOperator.AddParameter("col_factor", clsRFunctionParameter:=clsPivotWiderFunction, iPosition:=1)
+ If rdoSummary.Checked Then
+ clsDummyFunction.AddParameter("factor_cols", "Sum", iPosition:=1)
+ clsPivotWiderFunction.AddParameter("names_from", "summary", iPosition:=0)
+ ElseIf rdoVariable.Checked Then
+ clsDummyFunction.AddParameter("factor_cols", "Var", iPosition:=1)
+ clsPivotWiderFunction.AddParameter("names_from", "variable", iPosition:=0)
+ End If
End If
+ Else
+ clsSummaryOperator.RemoveParameterByName("col_factor")
+ clsPivotWiderFunction.RemoveParameterByName("names_from")
End If
- 'End If
End Sub
+
Private Sub Controls_ControlContentsChanged(ucrChangedControl As ucrCore) Handles ucrReceiverOneVarSummarise.ControlContentsChanged, ucrNudMaxSum.ControlContentsChanged, ucrSaveSummary.ControlContentsChanged
TestOKEnabled()
End Sub
diff --git a/instat/dlgOneWayFrequencies.vb b/instat/dlgOneWayFrequencies.vb
index a4a08b5d66c..bfbff835df5 100644
--- a/instat/dlgOneWayFrequencies.vb
+++ b/instat/dlgOneWayFrequencies.vb
@@ -284,6 +284,7 @@ Public Class dlgOneWayFrequencies
ucrReceiverTableGraph.SetMeAsReceiver()
ucrChkTableGraphWeights.Checked = clsTableSjMiscFrqRFunction.ContainsParameter("weight.by") OrElse clsGraphSjGGFreqPlotRFunction.ContainsParameter("weight.by")
ucrChkTableGraphGroupData.Checked = clsTableSjMiscFrqRFunction.ContainsParameter("auto.group") OrElse clsGraphSjGGFreqPlotRFunction.ContainsParameter("auto.grp")
+ ucrReceiverStemAndLeaf.Clear()
If rdoFrqTable.Checked Then
'the ideal way to determine the checked radio button would be to use AddFunctionNamesCondition()
@@ -299,6 +300,7 @@ Public Class dlgOneWayFrequencies
End If
ElseIf rdoFrqStemLeaf.Checked Then
+ ucrReceiverTableGraph.Clear()
ucrReceiverStemAndLeaf.SetMeAsReceiver()
ucrChkStemLeafWidth.Checked = clsStemLeafRFunction.ContainsParameter("width")
ucrChkStemLeafScale.Checked = clsStemLeafRFunction.ContainsParameter("scale")
diff --git a/instat/dlgPICSACrops.Designer.vb b/instat/dlgPICSACrops.Designer.vb
index e787f1db1b8..d7db6283afc 100644
--- a/instat/dlgPICSACrops.Designer.vb
+++ b/instat/dlgPICSACrops.Designer.vb
@@ -49,6 +49,7 @@ Partial Class dlgPICSACrops
Me.ucrReceiverStart = New instat.ucrReceiverSingle()
Me.ucrReceiverEnd = New instat.ucrReceiverSingle()
Me.grpCropDefinitions = New System.Windows.Forms.GroupBox()
+ Me.lblStarts = New System.Windows.Forms.Label()
Me.ucrInputCropLengths = New instat.ucrInputComboBox()
Me.ucrInputWaterAmounts = New instat.ucrInputComboBox()
Me.ucrInputPlantingDates = New instat.ucrInputComboBox()
@@ -60,14 +61,13 @@ Partial Class dlgPICSACrops
Me.lblWaterAmounts = New System.Windows.Forms.Label()
Me.ucrPnlStartCheck = New instat.UcrPanel()
Me.ucrChkDataProp = New instat.ucrCheck()
- Me.ucrChkPrintDataProp = New instat.ucrCheck()
+ Me.ucrChkDataCrops = New instat.ucrCheck()
Me.ucrReceiverRainfall = New instat.ucrReceiverSingle()
Me.ucrReceiverDay = New instat.ucrReceiverSingle()
Me.ucrReceiverYear = New instat.ucrReceiverSingle()
Me.ucrReceiverStation = New instat.ucrReceiverSingle()
Me.ucrSelectorForCrops = New instat.ucrSelectorByDataFrameAddRemove()
Me.ucrBase = New instat.ucrButtons()
- Me.lblStarts = New System.Windows.Forms.Label()
Me.grpSeasonReceivers.SuspendLayout()
Me.grpCropDefinitions.SuspendLayout()
Me.SuspendLayout()
@@ -75,9 +75,10 @@ Partial Class dlgPICSACrops
'lblSelectedSet
'
Me.lblSelectedSet.AutoSize = True
- Me.lblSelectedSet.Location = New System.Drawing.Point(232, 21)
+ Me.lblSelectedSet.Location = New System.Drawing.Point(348, 32)
+ Me.lblSelectedSet.Margin = New System.Windows.Forms.Padding(4, 0, 4, 0)
Me.lblSelectedSet.Name = "lblSelectedSet"
- Me.lblSelectedSet.Size = New System.Drawing.Size(43, 13)
+ Me.lblSelectedSet.Size = New System.Drawing.Size(64, 20)
Me.lblSelectedSet.TabIndex = 15
Me.lblSelectedSet.Tag = ""
Me.lblSelectedSet.Text = "Station:"
@@ -85,9 +86,10 @@ Partial Class dlgPICSACrops
'Label2
'
Me.Label2.AutoSize = True
- Me.Label2.Location = New System.Drawing.Point(365, 21)
+ Me.Label2.Location = New System.Drawing.Point(548, 32)
+ Me.Label2.Margin = New System.Windows.Forms.Padding(4, 0, 4, 0)
Me.Label2.Name = "Label2"
- Me.Label2.Size = New System.Drawing.Size(32, 13)
+ Me.Label2.Size = New System.Drawing.Size(47, 20)
Me.Label2.TabIndex = 21
Me.Label2.Tag = ""
Me.Label2.Text = "Year:"
@@ -95,9 +97,10 @@ Partial Class dlgPICSACrops
'Label3
'
Me.Label3.AutoSize = True
- Me.Label3.Location = New System.Drawing.Point(365, 66)
+ Me.Label3.Location = New System.Drawing.Point(548, 99)
+ Me.Label3.Margin = New System.Windows.Forms.Padding(4, 0, 4, 0)
Me.Label3.Name = "Label3"
- Me.Label3.Size = New System.Drawing.Size(65, 13)
+ Me.Label3.Size = New System.Drawing.Size(95, 20)
Me.Label3.TabIndex = 22
Me.Label3.Tag = ""
Me.Label3.Text = "Day in Year:"
@@ -105,9 +108,10 @@ Partial Class dlgPICSACrops
'lblRain
'
Me.lblRain.AutoSize = True
- Me.lblRain.Location = New System.Drawing.Point(232, 66)
+ Me.lblRain.Location = New System.Drawing.Point(348, 99)
+ Me.lblRain.Margin = New System.Windows.Forms.Padding(4, 0, 4, 0)
Me.lblRain.Name = "lblRain"
- Me.lblRain.Size = New System.Drawing.Size(32, 13)
+ Me.lblRain.Size = New System.Drawing.Size(46, 20)
Me.lblRain.TabIndex = 23
Me.lblRain.Tag = ""
Me.lblRain.Text = "Rain:"
@@ -115,9 +119,10 @@ Partial Class dlgPICSACrops
'Label5
'
Me.Label5.AutoSize = True
- Me.Label5.Location = New System.Drawing.Point(6, 17)
+ Me.Label5.Location = New System.Drawing.Point(9, 26)
+ Me.Label5.Margin = New System.Windows.Forms.Padding(4, 0, 4, 0)
Me.Label5.Name = "Label5"
- Me.Label5.Size = New System.Drawing.Size(32, 13)
+ Me.Label5.Size = New System.Drawing.Size(48, 20)
Me.Label5.TabIndex = 24
Me.Label5.Tag = ""
Me.Label5.Text = "Start:"
@@ -125,9 +130,10 @@ Partial Class dlgPICSACrops
'Label6
'
Me.Label6.AutoSize = True
- Me.Label6.Location = New System.Drawing.Point(139, 19)
+ Me.Label6.Location = New System.Drawing.Point(208, 28)
+ Me.Label6.Margin = New System.Windows.Forms.Padding(4, 0, 4, 0)
Me.Label6.Name = "Label6"
- Me.Label6.Size = New System.Drawing.Size(32, 13)
+ Me.Label6.Size = New System.Drawing.Size(46, 20)
Me.Label6.TabIndex = 25
Me.Label6.Tag = ""
Me.Label6.Text = "End :"
@@ -135,9 +141,10 @@ Partial Class dlgPICSACrops
'cmdOptions
'
Me.cmdOptions.ImeMode = System.Windows.Forms.ImeMode.NoControl
- Me.cmdOptions.Location = New System.Drawing.Point(368, 358)
+ Me.cmdOptions.Location = New System.Drawing.Point(552, 537)
+ Me.cmdOptions.Margin = New System.Windows.Forms.Padding(4, 4, 4, 4)
Me.cmdOptions.Name = "cmdOptions"
- Me.cmdOptions.Size = New System.Drawing.Size(120, 25)
+ Me.cmdOptions.Size = New System.Drawing.Size(180, 38)
Me.cmdOptions.TabIndex = 31
Me.cmdOptions.Tag = "Options"
Me.cmdOptions.Text = "Options"
@@ -149,9 +156,11 @@ Partial Class dlgPICSACrops
Me.grpSeasonReceivers.Controls.Add(Me.ucrReceiverStart)
Me.grpSeasonReceivers.Controls.Add(Me.Label6)
Me.grpSeasonReceivers.Controls.Add(Me.ucrReceiverEnd)
- Me.grpSeasonReceivers.Location = New System.Drawing.Point(226, 111)
+ Me.grpSeasonReceivers.Location = New System.Drawing.Point(339, 166)
+ Me.grpSeasonReceivers.Margin = New System.Windows.Forms.Padding(4, 4, 4, 4)
Me.grpSeasonReceivers.Name = "grpSeasonReceivers"
- Me.grpSeasonReceivers.Size = New System.Drawing.Size(272, 66)
+ Me.grpSeasonReceivers.Padding = New System.Windows.Forms.Padding(4, 4, 4, 4)
+ Me.grpSeasonReceivers.Size = New System.Drawing.Size(408, 99)
Me.grpSeasonReceivers.TabIndex = 38
Me.grpSeasonReceivers.TabStop = False
Me.grpSeasonReceivers.Text = "Season Dates"
@@ -160,11 +169,11 @@ Partial Class dlgPICSACrops
'
Me.ucrReceiverStart.AutoSize = True
Me.ucrReceiverStart.frmParent = Me
- Me.ucrReceiverStart.Location = New System.Drawing.Point(10, 34)
+ Me.ucrReceiverStart.Location = New System.Drawing.Point(15, 51)
Me.ucrReceiverStart.Margin = New System.Windows.Forms.Padding(0)
Me.ucrReceiverStart.Name = "ucrReceiverStart"
Me.ucrReceiverStart.Selector = Nothing
- Me.ucrReceiverStart.Size = New System.Drawing.Size(120, 20)
+ Me.ucrReceiverStart.Size = New System.Drawing.Size(180, 30)
Me.ucrReceiverStart.strNcFilePath = ""
Me.ucrReceiverStart.TabIndex = 19
Me.ucrReceiverStart.ucrSelector = Nothing
@@ -173,11 +182,11 @@ Partial Class dlgPICSACrops
'
Me.ucrReceiverEnd.AutoSize = True
Me.ucrReceiverEnd.frmParent = Me
- Me.ucrReceiverEnd.Location = New System.Drawing.Point(142, 34)
+ Me.ucrReceiverEnd.Location = New System.Drawing.Point(213, 51)
Me.ucrReceiverEnd.Margin = New System.Windows.Forms.Padding(0)
Me.ucrReceiverEnd.Name = "ucrReceiverEnd"
Me.ucrReceiverEnd.Selector = Nothing
- Me.ucrReceiverEnd.Size = New System.Drawing.Size(120, 22)
+ Me.ucrReceiverEnd.Size = New System.Drawing.Size(180, 33)
Me.ucrReceiverEnd.strNcFilePath = ""
Me.ucrReceiverEnd.TabIndex = 26
Me.ucrReceiverEnd.ucrSelector = Nothing
@@ -195,23 +204,35 @@ Partial Class dlgPICSACrops
Me.grpCropDefinitions.Controls.Add(Me.lblCropLengthDays)
Me.grpCropDefinitions.Controls.Add(Me.lblWaterAmounts)
Me.grpCropDefinitions.Controls.Add(Me.ucrPnlStartCheck)
- Me.grpCropDefinitions.Location = New System.Drawing.Point(6, 194)
+ Me.grpCropDefinitions.Location = New System.Drawing.Point(9, 291)
+ Me.grpCropDefinitions.Margin = New System.Windows.Forms.Padding(4, 4, 4, 4)
Me.grpCropDefinitions.Name = "grpCropDefinitions"
- Me.grpCropDefinitions.Size = New System.Drawing.Size(292, 158)
+ Me.grpCropDefinitions.Padding = New System.Windows.Forms.Padding(4, 4, 4, 4)
+ Me.grpCropDefinitions.Size = New System.Drawing.Size(438, 237)
Me.grpCropDefinitions.TabIndex = 39
Me.grpCropDefinitions.TabStop = False
Me.grpCropDefinitions.Text = "Crop Definitions"
'
+ 'lblStarts
+ '
+ Me.lblStarts.AutoSize = True
+ Me.lblStarts.Location = New System.Drawing.Point(9, 40)
+ Me.lblStarts.Margin = New System.Windows.Forms.Padding(4, 0, 4, 0)
+ Me.lblStarts.Name = "lblStarts"
+ Me.lblStarts.Size = New System.Drawing.Size(104, 20)
+ Me.lblStarts.TabIndex = 56
+ Me.lblStarts.Text = "Include Start:"
+ '
'ucrInputCropLengths
'
Me.ucrInputCropLengths.AddQuotesIfUnrecognised = True
Me.ucrInputCropLengths.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink
Me.ucrInputCropLengths.GetSetSelectedIndex = -1
Me.ucrInputCropLengths.IsReadOnly = False
- Me.ucrInputCropLengths.Location = New System.Drawing.Point(106, 129)
- Me.ucrInputCropLengths.Margin = New System.Windows.Forms.Padding(6)
+ Me.ucrInputCropLengths.Location = New System.Drawing.Point(159, 194)
+ Me.ucrInputCropLengths.Margin = New System.Windows.Forms.Padding(9, 9, 9, 9)
Me.ucrInputCropLengths.Name = "ucrInputCropLengths"
- Me.ucrInputCropLengths.Size = New System.Drawing.Size(170, 21)
+ Me.ucrInputCropLengths.Size = New System.Drawing.Size(255, 32)
Me.ucrInputCropLengths.TabIndex = 55
'
'ucrInputWaterAmounts
@@ -220,10 +241,10 @@ Partial Class dlgPICSACrops
Me.ucrInputWaterAmounts.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink
Me.ucrInputWaterAmounts.GetSetSelectedIndex = -1
Me.ucrInputWaterAmounts.IsReadOnly = False
- Me.ucrInputWaterAmounts.Location = New System.Drawing.Point(107, 92)
- Me.ucrInputWaterAmounts.Margin = New System.Windows.Forms.Padding(9)
+ Me.ucrInputWaterAmounts.Location = New System.Drawing.Point(160, 138)
+ Me.ucrInputWaterAmounts.Margin = New System.Windows.Forms.Padding(14, 14, 14, 14)
Me.ucrInputWaterAmounts.Name = "ucrInputWaterAmounts"
- Me.ucrInputWaterAmounts.Size = New System.Drawing.Size(169, 21)
+ Me.ucrInputWaterAmounts.Size = New System.Drawing.Size(254, 32)
Me.ucrInputWaterAmounts.TabIndex = 40
'
'ucrInputPlantingDates
@@ -232,19 +253,18 @@ Partial Class dlgPICSACrops
Me.ucrInputPlantingDates.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink
Me.ucrInputPlantingDates.GetSetSelectedIndex = -1
Me.ucrInputPlantingDates.IsReadOnly = False
- Me.ucrInputPlantingDates.Location = New System.Drawing.Point(107, 58)
- Me.ucrInputPlantingDates.Margin = New System.Windows.Forms.Padding(9)
+ Me.ucrInputPlantingDates.Location = New System.Drawing.Point(160, 87)
+ Me.ucrInputPlantingDates.Margin = New System.Windows.Forms.Padding(14, 14, 14, 14)
Me.ucrInputPlantingDates.Name = "ucrInputPlantingDates"
- Me.ucrInputPlantingDates.Size = New System.Drawing.Size(169, 21)
+ Me.ucrInputPlantingDates.Size = New System.Drawing.Size(254, 32)
Me.ucrInputPlantingDates.TabIndex = 53
'
'rdoBoth
'
Me.rdoBoth.AutoSize = True
- Me.rdoBoth.Location = New System.Drawing.Point(225, 25)
- Me.rdoBoth.Margin = New System.Windows.Forms.Padding(2)
+ Me.rdoBoth.Location = New System.Drawing.Point(338, 38)
Me.rdoBoth.Name = "rdoBoth"
- Me.rdoBoth.Size = New System.Drawing.Size(47, 17)
+ Me.rdoBoth.Size = New System.Drawing.Size(68, 24)
Me.rdoBoth.TabIndex = 44
Me.rdoBoth.TabStop = True
Me.rdoBoth.Text = "Both"
@@ -253,10 +273,9 @@ Partial Class dlgPICSACrops
'rdoNo
'
Me.rdoNo.AutoSize = True
- Me.rdoNo.Location = New System.Drawing.Point(153, 25)
- Me.rdoNo.Margin = New System.Windows.Forms.Padding(2)
+ Me.rdoNo.Location = New System.Drawing.Point(230, 38)
Me.rdoNo.Name = "rdoNo"
- Me.rdoNo.Size = New System.Drawing.Size(39, 17)
+ Me.rdoNo.Size = New System.Drawing.Size(54, 24)
Me.rdoNo.TabIndex = 45
Me.rdoNo.TabStop = True
Me.rdoNo.Text = "No"
@@ -265,10 +284,9 @@ Partial Class dlgPICSACrops
'rdoYes
'
Me.rdoYes.AutoSize = True
- Me.rdoYes.Location = New System.Drawing.Point(81, 25)
- Me.rdoYes.Margin = New System.Windows.Forms.Padding(2)
+ Me.rdoYes.Location = New System.Drawing.Point(122, 38)
Me.rdoYes.Name = "rdoYes"
- Me.rdoYes.Size = New System.Drawing.Size(43, 17)
+ Me.rdoYes.Size = New System.Drawing.Size(62, 24)
Me.rdoYes.TabIndex = 43
Me.rdoYes.TabStop = True
Me.rdoYes.Text = "Yes"
@@ -277,68 +295,71 @@ Partial Class dlgPICSACrops
'lblPlantingDays
'
Me.lblPlantingDays.AutoSize = True
- Me.lblPlantingDays.Location = New System.Drawing.Point(3, 60)
+ Me.lblPlantingDays.Location = New System.Drawing.Point(4, 90)
+ Me.lblPlantingDays.Margin = New System.Windows.Forms.Padding(4, 0, 4, 0)
Me.lblPlantingDays.Name = "lblPlantingDays"
- Me.lblPlantingDays.Size = New System.Drawing.Size(81, 13)
+ Me.lblPlantingDays.Size = New System.Drawing.Size(120, 20)
Me.lblPlantingDays.TabIndex = 42
Me.lblPlantingDays.Text = "Planting Day(s):"
'
'lblCropLengthDays
'
Me.lblCropLengthDays.AutoSize = True
- Me.lblCropLengthDays.Location = New System.Drawing.Point(5, 133)
+ Me.lblCropLengthDays.Location = New System.Drawing.Point(8, 200)
+ Me.lblCropLengthDays.Margin = New System.Windows.Forms.Padding(4, 0, 4, 0)
Me.lblCropLengthDays.Name = "lblCropLengthDays"
- Me.lblCropLengthDays.Size = New System.Drawing.Size(101, 13)
+ Me.lblCropLengthDays.Size = New System.Drawing.Size(151, 20)
Me.lblCropLengthDays.TabIndex = 41
Me.lblCropLengthDays.Text = "Crop Length Day(s):"
'
'lblWaterAmounts
'
Me.lblWaterAmounts.AutoSize = True
- Me.lblWaterAmounts.Location = New System.Drawing.Point(5, 95)
+ Me.lblWaterAmounts.Location = New System.Drawing.Point(8, 142)
+ Me.lblWaterAmounts.Margin = New System.Windows.Forms.Padding(4, 0, 4, 0)
Me.lblWaterAmounts.Name = "lblWaterAmounts"
- Me.lblWaterAmounts.Size = New System.Drawing.Size(89, 13)
+ Me.lblWaterAmounts.Size = New System.Drawing.Size(134, 20)
Me.lblWaterAmounts.TabIndex = 40
Me.lblWaterAmounts.Text = "Water Amount(s):"
'
'ucrPnlStartCheck
'
Me.ucrPnlStartCheck.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink
- Me.ucrPnlStartCheck.Location = New System.Drawing.Point(75, 14)
- Me.ucrPnlStartCheck.Margin = New System.Windows.Forms.Padding(6)
+ Me.ucrPnlStartCheck.Location = New System.Drawing.Point(112, 21)
+ Me.ucrPnlStartCheck.Margin = New System.Windows.Forms.Padding(9, 9, 9, 9)
Me.ucrPnlStartCheck.Name = "ucrPnlStartCheck"
- Me.ucrPnlStartCheck.Size = New System.Drawing.Size(201, 37)
+ Me.ucrPnlStartCheck.Size = New System.Drawing.Size(302, 56)
Me.ucrPnlStartCheck.TabIndex = 46
'
'ucrChkDataProp
'
Me.ucrChkDataProp.AutoSize = True
Me.ucrChkDataProp.Checked = False
- Me.ucrChkDataProp.Location = New System.Drawing.Point(10, 358)
- Me.ucrChkDataProp.Margin = New System.Windows.Forms.Padding(6)
+ Me.ucrChkDataProp.Location = New System.Drawing.Point(281, 539)
+ Me.ucrChkDataProp.Margin = New System.Windows.Forms.Padding(9, 9, 9, 9)
Me.ucrChkDataProp.Name = "ucrChkDataProp"
- Me.ucrChkDataProp.Size = New System.Drawing.Size(172, 23)
+ Me.ucrChkDataProp.Size = New System.Drawing.Size(258, 34)
Me.ucrChkDataProp.TabIndex = 37
'
- 'ucrChkPrintDataProp
+ 'ucrChkDataCrops
'
- Me.ucrChkPrintDataProp.AutoSize = True
- Me.ucrChkPrintDataProp.Checked = False
- Me.ucrChkPrintDataProp.Location = New System.Drawing.Point(188, 358)
- Me.ucrChkPrintDataProp.Margin = New System.Windows.Forms.Padding(6)
- Me.ucrChkPrintDataProp.Name = "ucrChkPrintDataProp"
- Me.ucrChkPrintDataProp.Size = New System.Drawing.Size(255, 23)
- Me.ucrChkPrintDataProp.TabIndex = 36
+ Me.ucrChkDataCrops.AutoSize = True
+ Me.ucrChkDataCrops.Checked = False
+ Me.ucrChkDataCrops.Location = New System.Drawing.Point(9, 539)
+ Me.ucrChkDataCrops.Margin = New System.Windows.Forms.Padding(9, 9, 9, 9)
+ Me.ucrChkDataCrops.Name = "ucrChkDataCrops"
+ Me.ucrChkDataCrops.Size = New System.Drawing.Size(382, 34)
+ Me.ucrChkDataCrops.TabIndex = 36
'
'ucrReceiverRainfall
'
Me.ucrReceiverRainfall.AutoSize = True
Me.ucrReceiverRainfall.frmParent = Me
- Me.ucrReceiverRainfall.Location = New System.Drawing.Point(236, 81)
+ Me.ucrReceiverRainfall.Location = New System.Drawing.Point(354, 122)
Me.ucrReceiverRainfall.Margin = New System.Windows.Forms.Padding(0)
Me.ucrReceiverRainfall.Name = "ucrReceiverRainfall"
Me.ucrReceiverRainfall.Selector = Nothing
- Me.ucrReceiverRainfall.Size = New System.Drawing.Size(120, 20)
+ Me.ucrReceiverRainfall.Size = New System.Drawing.Size(180, 30)
Me.ucrReceiverRainfall.strNcFilePath = ""
Me.ucrReceiverRainfall.TabIndex = 17
Me.ucrReceiverRainfall.ucrSelector = Nothing
@@ -347,11 +368,11 @@ Partial Class dlgPICSACrops
'
Me.ucrReceiverDay.AutoSize = True
Me.ucrReceiverDay.frmParent = Me
- Me.ucrReceiverDay.Location = New System.Drawing.Point(368, 81)
+ Me.ucrReceiverDay.Location = New System.Drawing.Point(552, 122)
Me.ucrReceiverDay.Margin = New System.Windows.Forms.Padding(0)
Me.ucrReceiverDay.Name = "ucrReceiverDay"
Me.ucrReceiverDay.Selector = Nothing
- Me.ucrReceiverDay.Size = New System.Drawing.Size(120, 20)
+ Me.ucrReceiverDay.Size = New System.Drawing.Size(180, 30)
Me.ucrReceiverDay.strNcFilePath = ""
Me.ucrReceiverDay.TabIndex = 16
Me.ucrReceiverDay.ucrSelector = Nothing
@@ -360,11 +381,11 @@ Partial Class dlgPICSACrops
'
Me.ucrReceiverYear.AutoSize = True
Me.ucrReceiverYear.frmParent = Me
- Me.ucrReceiverYear.Location = New System.Drawing.Point(368, 37)
+ Me.ucrReceiverYear.Location = New System.Drawing.Point(552, 56)
Me.ucrReceiverYear.Margin = New System.Windows.Forms.Padding(0)
Me.ucrReceiverYear.Name = "ucrReceiverYear"
Me.ucrReceiverYear.Selector = Nothing
- Me.ucrReceiverYear.Size = New System.Drawing.Size(120, 20)
+ Me.ucrReceiverYear.Size = New System.Drawing.Size(180, 30)
Me.ucrReceiverYear.strNcFilePath = ""
Me.ucrReceiverYear.TabIndex = 3
Me.ucrReceiverYear.ucrSelector = Nothing
@@ -373,11 +394,11 @@ Partial Class dlgPICSACrops
'
Me.ucrReceiverStation.AutoSize = True
Me.ucrReceiverStation.frmParent = Me
- Me.ucrReceiverStation.Location = New System.Drawing.Point(236, 37)
+ Me.ucrReceiverStation.Location = New System.Drawing.Point(354, 56)
Me.ucrReceiverStation.Margin = New System.Windows.Forms.Padding(0)
Me.ucrReceiverStation.Name = "ucrReceiverStation"
Me.ucrReceiverStation.Selector = Nothing
- Me.ucrReceiverStation.Size = New System.Drawing.Size(120, 20)
+ Me.ucrReceiverStation.Size = New System.Drawing.Size(180, 30)
Me.ucrReceiverStation.strNcFilePath = ""
Me.ucrReceiverStation.TabIndex = 2
Me.ucrReceiverStation.ucrSelector = Nothing
@@ -388,41 +409,32 @@ Partial Class dlgPICSACrops
Me.ucrSelectorForCrops.bDropUnusedFilterLevels = False
Me.ucrSelectorForCrops.bShowHiddenColumns = False
Me.ucrSelectorForCrops.bUseCurrentFilter = True
- Me.ucrSelectorForCrops.Location = New System.Drawing.Point(6, 5)
+ Me.ucrSelectorForCrops.Location = New System.Drawing.Point(9, 8)
Me.ucrSelectorForCrops.Margin = New System.Windows.Forms.Padding(0)
Me.ucrSelectorForCrops.Name = "ucrSelectorForCrops"
- Me.ucrSelectorForCrops.Size = New System.Drawing.Size(213, 183)
+ Me.ucrSelectorForCrops.Size = New System.Drawing.Size(320, 274)
Me.ucrSelectorForCrops.TabIndex = 1
'
'ucrBase
'
Me.ucrBase.AutoSize = True
Me.ucrBase.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink
- Me.ucrBase.Location = New System.Drawing.Point(10, 392)
- Me.ucrBase.Margin = New System.Windows.Forms.Padding(4)
+ Me.ucrBase.Location = New System.Drawing.Point(15, 588)
+ Me.ucrBase.Margin = New System.Windows.Forms.Padding(6, 6, 6, 6)
Me.ucrBase.Name = "ucrBase"
- Me.ucrBase.Size = New System.Drawing.Size(408, 52)
+ Me.ucrBase.Size = New System.Drawing.Size(611, 77)
Me.ucrBase.TabIndex = 0
'
- 'lblStarts
- '
- Me.lblStarts.AutoSize = True
- Me.lblStarts.Location = New System.Drawing.Point(6, 27)
- Me.lblStarts.Name = "lblStarts"
- Me.lblStarts.Size = New System.Drawing.Size(70, 13)
- Me.lblStarts.TabIndex = 56
- Me.lblStarts.Text = "Include Start:"
- '
'dlgPICSACrops
'
- Me.AutoScaleDimensions = New System.Drawing.SizeF(96.0!, 96.0!)
+ Me.AutoScaleDimensions = New System.Drawing.SizeF(144.0!, 144.0!)
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi
Me.AutoSize = True
- Me.ClientSize = New System.Drawing.Size(504, 449)
+ Me.ClientSize = New System.Drawing.Size(756, 674)
Me.Controls.Add(Me.grpCropDefinitions)
Me.Controls.Add(Me.grpSeasonReceivers)
Me.Controls.Add(Me.ucrChkDataProp)
- Me.Controls.Add(Me.ucrChkPrintDataProp)
+ Me.Controls.Add(Me.ucrChkDataCrops)
Me.Controls.Add(Me.cmdOptions)
Me.Controls.Add(Me.lblRain)
Me.Controls.Add(Me.Label3)
@@ -435,6 +447,7 @@ Partial Class dlgPICSACrops
Me.Controls.Add(Me.ucrSelectorForCrops)
Me.Controls.Add(Me.ucrBase)
Me.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedToolWindow
+ Me.Margin = New System.Windows.Forms.Padding(4, 4, 4, 4)
Me.MaximizeBox = False
Me.MinimizeBox = False
Me.Name = "dlgPICSACrops"
@@ -464,7 +477,7 @@ Partial Class dlgPICSACrops
Friend WithEvents Label5 As Label
Friend WithEvents lblRain As Label
Friend WithEvents cmdOptions As Button
- Friend WithEvents ucrChkPrintDataProp As ucrCheck
+ Friend WithEvents ucrChkDataCrops As ucrCheck
Friend WithEvents ucrChkDataProp As ucrCheck
Friend WithEvents grpSeasonReceivers As GroupBox
Friend WithEvents grpCropDefinitions As GroupBox
diff --git a/instat/dlgPICSACrops.vb b/instat/dlgPICSACrops.vb
index a340b3716cc..5ef3b22f511 100644
--- a/instat/dlgPICSACrops.vb
+++ b/instat/dlgPICSACrops.vb
@@ -169,16 +169,16 @@ Public Class dlgPICSACrops
'ucrNudWaterSeqStep.SetParameter(New RParameter("step", clsSeqRainfall))
'ucrNudWaterSeqTo.SetParameter(New RParameter("to", clsSeqRainfall))
+ ucrChkDataCrops.SetText("Return Crops Data")
+ ucrChkDataCrops.SetParameter(New RParameter("return_crops_table", 11), bNewChangeParameterValue:=True, strNewValueIfChecked:="TRUE", strNewValueIfUnchecked:="FALSE")
+ ucrChkDataCrops.SetRDefault("TRUE")
+
ucrChkDataProp.SetText("Calculate Proportions")
- ucrChkDataProp.SetParameter(New RParameter("definition_props", 8), bNewChangeParameterValue:=True, strNewValueIfChecked:="TRUE", strNewValueIfUnchecked:="FALSE")
+ ucrChkDataProp.SetParameter(New RParameter("definition_props", 12), bNewChangeParameterValue:=True, strNewValueIfChecked:="TRUE", strNewValueIfUnchecked:="FALSE")
ucrChkDataProp.SetRDefault("TRUE")
- ucrChkPrintDataProp.SetText("Print Proportions Table(s)")
- ucrChkPrintDataProp.SetParameter(New RParameter("print_table", 9), bNewChangeParameterValue:=True, strNewValueIfChecked:="TRUE", strNewValueIfUnchecked:="FALSE")
- ucrChkPrintDataProp.SetRDefault("TRUE")
-
'Linking of controls
- ucrChkDataProp.AddToLinkedControls(ucrChkPrintDataProp, {True}, bNewLinkedAddRemoveParameter:=True, bNewLinkedDisabledIfParameterMissing:=True)
+ ucrChkDataProp.AddToLinkedControls(ucrChkDataCrops, {True}, bNewLinkedAddRemoveParameter:=True, bNewLinkedDisabledIfParameterMissing:=True)
End Sub
Private Sub SetDefaults()
@@ -206,8 +206,8 @@ Public Class dlgPICSACrops
ucrInputPlantingDates.SetName("160")
ucrInputCropLengths.SetName("120")
ucrInputWaterAmounts.SetName("600")
- clsCropsFunction.AddParameter("definition_props", "TRUE", iPosition:=11)
- clsCropsFunction.AddParameter("print_table", "TRUE", iPosition:=12)
+ clsCropsFunction.AddParameter("return_crops_table", "TRUE", iPosition:=11)
+ clsCropsFunction.AddParameter("definition_props", "TRUE", iPosition:=12)
ucrBase.clsRsyntax.SetBaseRFunction(clsCropsFunction)
ucrBase.clsRsyntax.iCallType = 2
TestOkEnabled()
@@ -232,7 +232,7 @@ Public Class dlgPICSACrops
' Disabled as list validation not working correctly with reading/writing controls
ucrChkDataProp.SetRCode(clsCropsFunction, bReset)
- ucrChkPrintDataProp.SetRCode(clsCropsFunction, bReset)
+ ucrChkDataCrops.SetRCode(clsCropsFunction, bReset)
If bReset Then
ucrPnlStartCheck.SetRCode(clsDummyFunction, bReset)
End If
@@ -246,7 +246,7 @@ Public Class dlgPICSACrops
End Sub
Private Sub TestOkEnabled()
- If Not ucrReceiverYear.IsEmpty AndAlso Not ucrReceiverRainfall.IsEmpty AndAlso Not ucrReceiverStart.IsEmpty AndAlso Not ucrReceiverDay.IsEmpty AndAlso Not ucrReceiverEnd.IsEmpty AndAlso Not ucrInputPlantingDates.IsEmpty AndAlso Not ucrInputCropLengths.IsEmpty AndAlso Not ucrInputWaterAmounts.IsEmpty Then
+ If Not ucrReceiverYear.IsEmpty AndAlso Not ucrReceiverRainfall.IsEmpty AndAlso Not ucrReceiverStart.IsEmpty AndAlso Not ucrReceiverDay.IsEmpty AndAlso Not ucrReceiverEnd.IsEmpty AndAlso Not ucrInputPlantingDates.IsEmpty AndAlso Not ucrInputCropLengths.IsEmpty AndAlso Not ucrInputWaterAmounts.IsEmpty AndAlso (ucrChkDataCrops.Checked OrElse ucrChkDataProp.Checked) Then
ucrBase.OKEnabled(True)
Else
ucrBase.OKEnabled(False)
diff --git a/instat/dlgRPackages.vb b/instat/dlgRPackages.vb
index 488477f7658..31635f28e95 100644
--- a/instat/dlgRPackages.vb
+++ b/instat/dlgRPackages.vb
@@ -43,6 +43,7 @@ Public Class dlgInstallRPackage
dctPackages.Add("rapidpror", Chr(34) & "rapidpror" & Chr(34))
dctPackages.Add("openappr", Chr(34) & "openappr" & Chr(34))
dctPackages.Add("networkGraphsR", Chr(34) & "networkGraphsR" & Chr(34))
+ dctPackages.Add("climdex.pcic", Chr(34) & "climdex.pcic" & Chr(34))
ucrInputPackage.SetItems(dctPackages)
ucrPnlRPackages.AddParameterValuesCondition(rdoCRAN, "checked", "cran")
diff --git a/instat/dlgReplaceValues.vb b/instat/dlgReplaceValues.vb
index 5afcef5523e..a7b076cf8ed 100644
--- a/instat/dlgReplaceValues.vb
+++ b/instat/dlgReplaceValues.vb
@@ -54,7 +54,7 @@ Public Class dlgReplaceValues
ucrReceiverReplace.SetParameter(New RParameter("col_names", 1))
ucrReceiverReplace.Selector = ucrSelectorReplace
ucrReceiverReplace.SetMeAsReceiver()
- ucrReceiverReplace.SetSingleTypeStatus(True)
+ ucrReceiverReplace.SetSingleTypeStatus(True, bIsCategoricalNumeric:=True)
ucrReceiverReplace.SetParameterIsString()
'Old Values
diff --git a/instat/dlgScript.Designer.vb b/instat/dlgScript.Designer.vb
index ba37efac17a..8df12cb676a 100644
--- a/instat/dlgScript.Designer.vb
+++ b/instat/dlgScript.Designer.vb
@@ -25,20 +25,43 @@ Partial Class dlgScript
Me.tbFeatures = New System.Windows.Forms.TabControl()
Me.tbPageSaveData = New System.Windows.Forms.TabPage()
Me.rdoFromRFile = New System.Windows.Forms.RadioButton()
+ Me.ucrInputSaveRFile = New instat.ucrInputTextBox()
+ Me.lblSaveText = New System.Windows.Forms.Label()
+ Me.lblSaveDataFrame = New System.Windows.Forms.Label()
+ Me.lblSaveColumn = New System.Windows.Forms.Label()
+ Me.ucrInputDataframeColumn = New instat.ucrInputTextBox()
+ Me.ucrInputSaveColumn = New instat.ucrInputTextBox()
+ Me.rdoVariable = New System.Windows.Forms.RadioButton()
Me.rdoDataFrame = New System.Windows.Forms.RadioButton()
+ Me.ucrChkDisplayGraph = New instat.ucrCheck()
+ Me.ucrChkSaveDataFrameSingle = New instat.ucrCheck()
+ Me.ucrInputSaveDataFrame = New instat.ucrInputTextBox()
Me.lblSaveObjectFormat = New System.Windows.Forms.Label()
+ Me.ucrCboSaveOutputObjectFormat = New instat.ucrInputComboBox()
Me.lblSaveObjectType = New System.Windows.Forms.Label()
+ Me.ucrCboSaveOutputObjectType = New instat.ucrInputComboBox()
Me.rdoSaveOutputObject = New System.Windows.Forms.RadioButton()
Me.rdoSaveDataFrame = New System.Windows.Forms.RadioButton()
Me.rdoSaveColumn = New System.Windows.Forms.RadioButton()
+ Me.ucrSaveObject = New instat.ucrSave()
+ Me.ucrDataFrameSaveOutputSelect = New instat.ucrDataFrame()
+ Me.ucrPnlSaveData = New instat.UcrPanel()
+ Me.ucrPnlSaveDataFrame = New instat.UcrPanel()
Me.tbPageGetData = New System.Windows.Forms.TabPage()
+ Me.ucrReceiverGetOutputObject = New instat.ucrReceiverSingle()
+ Me.ucrReceiverGetColumns = New instat.ucrReceiverMultiple()
Me.lblGetColumn = New System.Windows.Forms.Label()
Me.lblGetObjectType = New System.Windows.Forms.Label()
Me.rdoGetOutputObject = New System.Windows.Forms.RadioButton()
Me.lblGetOutputObject = New System.Windows.Forms.Label()
Me.rdoGetDataFrame = New System.Windows.Forms.RadioButton()
Me.rdoGetColumn = New System.Windows.Forms.RadioButton()
+ Me.ucrDataFrameGetDF = New instat.ucrDataFrame()
+ Me.ucrCboGetOutputObjectType = New instat.ucrInputComboBox()
+ Me.ucrPnlGetData = New instat.UcrPanel()
+ Me.ucrSelectorGetObject = New instat.ucrSelectorByDataFrameAddRemove()
Me.tbPageCommand = New System.Windows.Forms.TabPage()
+ Me.ucrChkWindow = New instat.ucrCheck()
Me.rdoWindow = New System.Windows.Forms.RadioButton()
Me.rdoListData = New System.Windows.Forms.RadioButton()
Me.rdoViewData = New System.Windows.Forms.RadioButton()
@@ -48,33 +71,6 @@ Partial Class dlgScript
Me.rdoGgplotify = New System.Windows.Forms.RadioButton()
Me.rdoCommandPackage = New System.Windows.Forms.RadioButton()
Me.rdoCommandObject = New System.Windows.Forms.RadioButton()
- Me.tbPageExamples = New System.Windows.Forms.TabPage()
- Me.cmdHelp = New System.Windows.Forms.Button()
- Me.rdoExampleData = New System.Windows.Forms.RadioButton()
- Me.rdoExampleFunction = New System.Windows.Forms.RadioButton()
- Me.lstExampleCollection = New System.Windows.Forms.ListView()
- Me.clmDatasets = CType(New System.Windows.Forms.ColumnHeader(), System.Windows.Forms.ColumnHeader)
- Me.clmDesc = CType(New System.Windows.Forms.ColumnHeader(), System.Windows.Forms.ColumnHeader)
- Me.Label3 = New System.Windows.Forms.Label()
- Me.lblPreview = New System.Windows.Forms.Label()
- Me.txtScript = New System.Windows.Forms.TextBox()
- Me.ucrInputSaveRFile = New instat.ucrInputTextBox()
- Me.ucrChkDisplayGraph = New instat.ucrCheck()
- Me.ucrChkSaveDataFrameSingle = New instat.ucrCheck()
- Me.ucrInputSaveDataFrame = New instat.ucrInputTextBox()
- Me.ucrCboSaveOutputObjectFormat = New instat.ucrInputComboBox()
- Me.ucrCboSaveOutputObjectType = New instat.ucrInputComboBox()
- Me.ucrSaveObject = New instat.ucrSave()
- Me.ucrDataFrameSaveOutputSelect = New instat.ucrDataFrame()
- Me.ucrPnlSaveData = New instat.UcrPanel()
- Me.ucrPnlSaveDataFrame = New instat.UcrPanel()
- Me.ucrReceiverGetOutputObject = New instat.ucrReceiverSingle()
- Me.ucrReceiverGetColumns = New instat.ucrReceiverMultiple()
- Me.ucrDataFrameGetDF = New instat.ucrDataFrame()
- Me.ucrCboGetOutputObjectType = New instat.ucrInputComboBox()
- Me.ucrPnlGetData = New instat.UcrPanel()
- Me.ucrSelectorGetObject = New instat.ucrSelectorByDataFrameAddRemove()
- Me.ucrChkWindow = New instat.ucrCheck()
Me.ucrChkInto = New instat.ucrCheck()
Me.ucrInputSaveData = New instat.ucrInputTextBox()
Me.ucrCboCommandDataPackage = New instat.ucrInputComboBox()
@@ -86,14 +82,33 @@ Partial Class dlgScript
Me.ucrInputRemoveObjects = New instat.ucrInputTextBox()
Me.ucrCboCommandPackage = New instat.ucrInputComboBox()
Me.ucrPnlCommands = New instat.UcrPanel()
+ Me.tbPageExamples = New System.Windows.Forms.TabPage()
+ Me.cmdHelp = New System.Windows.Forms.Button()
+ Me.rdoExampleData = New System.Windows.Forms.RadioButton()
+ Me.rdoExampleFunction = New System.Windows.Forms.RadioButton()
Me.ucrPnlExample = New instat.UcrPanel()
+ Me.lstExampleCollection = New System.Windows.Forms.ListView()
+ Me.clmDatasets = CType(New System.Windows.Forms.ColumnHeader(), System.Windows.Forms.ColumnHeader)
+ Me.clmDesc = CType(New System.Windows.Forms.ColumnHeader(), System.Windows.Forms.ColumnHeader)
+ Me.Label3 = New System.Windows.Forms.Label()
Me.ucrCboExamplePackages = New instat.ucrInputComboBox()
+ Me.tbPageRepeat = New System.Windows.Forms.TabPage()
+ Me.lblColumns = New System.Windows.Forms.Label()
+ Me.ucrReceiverColumns = New instat.ucrReceiverSingle()
+ Me.lblExpression = New System.Windows.Forms.Label()
+ Me.ucrReceiverForCalculation = New instat.ucrReceiverExpression()
+ Me.lblSelectColumns = New System.Windows.Forms.Label()
+ Me.ucrReceiverRank = New instat.ucrReceiverSingle()
+ Me.ucrSelectorForRank = New instat.ucrSelectorByDataFrameAddRemove()
+ Me.lblPreview = New System.Windows.Forms.Label()
+ Me.txtScript = New System.Windows.Forms.TextBox()
Me.ucrBase = New instat.ucrButtons()
Me.tbFeatures.SuspendLayout()
Me.tbPageSaveData.SuspendLayout()
Me.tbPageGetData.SuspendLayout()
Me.tbPageCommand.SuspendLayout()
Me.tbPageExamples.SuspendLayout()
+ Me.tbPageRepeat.SuspendLayout()
Me.SuspendLayout()
'
'tbFeatures
@@ -102,16 +117,23 @@ Partial Class dlgScript
Me.tbFeatures.Controls.Add(Me.tbPageGetData)
Me.tbFeatures.Controls.Add(Me.tbPageCommand)
Me.tbFeatures.Controls.Add(Me.tbPageExamples)
+ Me.tbFeatures.Controls.Add(Me.tbPageRepeat)
Me.tbFeatures.Location = New System.Drawing.Point(8, 7)
Me.tbFeatures.Name = "tbFeatures"
Me.tbFeatures.SelectedIndex = 0
- Me.tbFeatures.Size = New System.Drawing.Size(446, 271)
+ Me.tbFeatures.Size = New System.Drawing.Size(446, 304)
Me.tbFeatures.TabIndex = 31
'
'tbPageSaveData
'
- Me.tbPageSaveData.Controls.Add(Me.ucrInputSaveRFile)
Me.tbPageSaveData.Controls.Add(Me.rdoFromRFile)
+ Me.tbPageSaveData.Controls.Add(Me.ucrInputSaveRFile)
+ Me.tbPageSaveData.Controls.Add(Me.lblSaveText)
+ Me.tbPageSaveData.Controls.Add(Me.lblSaveDataFrame)
+ Me.tbPageSaveData.Controls.Add(Me.lblSaveColumn)
+ Me.tbPageSaveData.Controls.Add(Me.ucrInputDataframeColumn)
+ Me.tbPageSaveData.Controls.Add(Me.ucrInputSaveColumn)
+ Me.tbPageSaveData.Controls.Add(Me.rdoVariable)
Me.tbPageSaveData.Controls.Add(Me.rdoDataFrame)
Me.tbPageSaveData.Controls.Add(Me.ucrChkDisplayGraph)
Me.tbPageSaveData.Controls.Add(Me.ucrChkSaveDataFrameSingle)
@@ -129,7 +151,7 @@ Partial Class dlgScript
Me.tbPageSaveData.Controls.Add(Me.ucrPnlSaveDataFrame)
Me.tbPageSaveData.Location = New System.Drawing.Point(4, 22)
Me.tbPageSaveData.Name = "tbPageSaveData"
- Me.tbPageSaveData.Size = New System.Drawing.Size(438, 245)
+ Me.tbPageSaveData.Size = New System.Drawing.Size(438, 278)
Me.tbPageSaveData.TabIndex = 2
Me.tbPageSaveData.Text = "Save Data"
Me.tbPageSaveData.UseVisualStyleBackColor = True
@@ -137,7 +159,7 @@ Partial Class dlgScript
'rdoFromRFile
'
Me.rdoFromRFile.AutoSize = True
- Me.rdoFromRFile.Location = New System.Drawing.Point(83, 125)
+ Me.rdoFromRFile.Location = New System.Drawing.Point(49, 202)
Me.rdoFromRFile.Margin = New System.Windows.Forms.Padding(2)
Me.rdoFromRFile.Name = "rdoFromRFile"
Me.rdoFromRFile.Size = New System.Drawing.Size(81, 17)
@@ -146,18 +168,125 @@ Partial Class dlgScript
Me.rdoFromRFile.Text = "From R File:"
Me.rdoFromRFile.UseVisualStyleBackColor = True
'
+ 'ucrInputSaveRFile
+ '
+ Me.ucrInputSaveRFile.AddQuotesIfUnrecognised = True
+ Me.ucrInputSaveRFile.AutoSize = True
+ Me.ucrInputSaveRFile.IsMultiline = False
+ Me.ucrInputSaveRFile.IsReadOnly = False
+ Me.ucrInputSaveRFile.Location = New System.Drawing.Point(67, 228)
+ Me.ucrInputSaveRFile.Margin = New System.Windows.Forms.Padding(9)
+ Me.ucrInputSaveRFile.Name = "ucrInputSaveRFile"
+ Me.ucrInputSaveRFile.Size = New System.Drawing.Size(145, 21)
+ Me.ucrInputSaveRFile.TabIndex = 64
+ '
+ 'lblSaveText
+ '
+ Me.lblSaveText.AutoSize = True
+ Me.lblSaveText.Location = New System.Drawing.Point(299, 72)
+ Me.lblSaveText.Name = "lblSaveText"
+ Me.lblSaveText.Size = New System.Drawing.Size(116, 13)
+ Me.lblSaveText.TabIndex = 71
+ Me.lblSaveText.Text = "(separated by commas)"
+ '
+ 'lblSaveDataFrame
+ '
+ Me.lblSaveDataFrame.AutoSize = True
+ Me.lblSaveDataFrame.Location = New System.Drawing.Point(64, 103)
+ Me.lblSaveDataFrame.Name = "lblSaveDataFrame"
+ Me.lblSaveDataFrame.Size = New System.Drawing.Size(65, 13)
+ Me.lblSaveDataFrame.TabIndex = 70
+ Me.lblSaveDataFrame.Text = "Data Frame:"
+ '
+ 'lblSaveColumn
+ '
+ Me.lblSaveColumn.AutoSize = True
+ Me.lblSaveColumn.Location = New System.Drawing.Point(64, 72)
+ Me.lblSaveColumn.Name = "lblSaveColumn"
+ Me.lblSaveColumn.Size = New System.Drawing.Size(49, 13)
+ Me.lblSaveColumn.TabIndex = 69
+ Me.lblSaveColumn.Text = "Name(s):"
+ '
+ 'ucrInputDataframeColumn
+ '
+ Me.ucrInputDataframeColumn.AddQuotesIfUnrecognised = True
+ Me.ucrInputDataframeColumn.AutoSize = True
+ Me.ucrInputDataframeColumn.IsMultiline = False
+ Me.ucrInputDataframeColumn.IsReadOnly = False
+ Me.ucrInputDataframeColumn.Location = New System.Drawing.Point(131, 103)
+ Me.ucrInputDataframeColumn.Margin = New System.Windows.Forms.Padding(9)
+ Me.ucrInputDataframeColumn.Name = "ucrInputDataframeColumn"
+ Me.ucrInputDataframeColumn.Size = New System.Drawing.Size(155, 21)
+ Me.ucrInputDataframeColumn.TabIndex = 68
+ '
+ 'ucrInputSaveColumn
+ '
+ Me.ucrInputSaveColumn.AddQuotesIfUnrecognised = True
+ Me.ucrInputSaveColumn.AutoSize = True
+ Me.ucrInputSaveColumn.IsMultiline = False
+ Me.ucrInputSaveColumn.IsReadOnly = False
+ Me.ucrInputSaveColumn.Location = New System.Drawing.Point(132, 72)
+ Me.ucrInputSaveColumn.Margin = New System.Windows.Forms.Padding(9)
+ Me.ucrInputSaveColumn.Name = "ucrInputSaveColumn"
+ Me.ucrInputSaveColumn.Size = New System.Drawing.Size(154, 21)
+ Me.ucrInputSaveColumn.TabIndex = 67
+ '
+ 'rdoVariable
+ '
+ Me.rdoVariable.AutoSize = True
+ Me.rdoVariable.Location = New System.Drawing.Point(49, 48)
+ Me.rdoVariable.Margin = New System.Windows.Forms.Padding(2)
+ Me.rdoVariable.Name = "rdoVariable"
+ Me.rdoVariable.Size = New System.Drawing.Size(97, 17)
+ Me.rdoVariable.TabIndex = 66
+ Me.rdoVariable.TabStop = True
+ Me.rdoVariable.Text = "From Variables:"
+ Me.rdoVariable.UseVisualStyleBackColor = True
+ '
'rdoDataFrame
'
Me.rdoDataFrame.AutoSize = True
- Me.rdoDataFrame.Location = New System.Drawing.Point(83, 48)
+ Me.rdoDataFrame.Location = New System.Drawing.Point(48, 126)
Me.rdoDataFrame.Margin = New System.Windows.Forms.Padding(2)
Me.rdoDataFrame.Name = "rdoDataFrame"
- Me.rdoDataFrame.Size = New System.Drawing.Size(109, 17)
+ Me.rdoDataFrame.Size = New System.Drawing.Size(104, 17)
Me.rdoDataFrame.TabIndex = 62
Me.rdoDataFrame.TabStop = True
- Me.rdoDataFrame.Text = "From Data Frame:"
+ Me.rdoDataFrame.Text = "Into Data Frame:"
Me.rdoDataFrame.UseVisualStyleBackColor = True
'
+ 'ucrChkDisplayGraph
+ '
+ Me.ucrChkDisplayGraph.AutoSize = True
+ Me.ucrChkDisplayGraph.Checked = False
+ Me.ucrChkDisplayGraph.Location = New System.Drawing.Point(88, 217)
+ Me.ucrChkDisplayGraph.Margin = New System.Windows.Forms.Padding(6)
+ Me.ucrChkDisplayGraph.Name = "ucrChkDisplayGraph"
+ Me.ucrChkDisplayGraph.Size = New System.Drawing.Size(113, 34)
+ Me.ucrChkDisplayGraph.TabIndex = 60
+ '
+ 'ucrChkSaveDataFrameSingle
+ '
+ Me.ucrChkSaveDataFrameSingle.AutoSize = True
+ Me.ucrChkSaveDataFrameSingle.Checked = False
+ Me.ucrChkSaveDataFrameSingle.Location = New System.Drawing.Point(55, 174)
+ Me.ucrChkSaveDataFrameSingle.Margin = New System.Windows.Forms.Padding(6)
+ Me.ucrChkSaveDataFrameSingle.Name = "ucrChkSaveDataFrameSingle"
+ Me.ucrChkSaveDataFrameSingle.Size = New System.Drawing.Size(146, 34)
+ Me.ucrChkSaveDataFrameSingle.TabIndex = 59
+ '
+ 'ucrInputSaveDataFrame
+ '
+ Me.ucrInputSaveDataFrame.AddQuotesIfUnrecognised = True
+ Me.ucrInputSaveDataFrame.AutoSize = True
+ Me.ucrInputSaveDataFrame.IsMultiline = False
+ Me.ucrInputSaveDataFrame.IsReadOnly = False
+ Me.ucrInputSaveDataFrame.Location = New System.Drawing.Point(67, 147)
+ Me.ucrInputSaveDataFrame.Margin = New System.Windows.Forms.Padding(9)
+ Me.ucrInputSaveDataFrame.Name = "ucrInputSaveDataFrame"
+ Me.ucrInputSaveDataFrame.Size = New System.Drawing.Size(145, 21)
+ Me.ucrInputSaveDataFrame.TabIndex = 57
+ '
'lblSaveObjectFormat
'
Me.lblSaveObjectFormat.AutoSize = True
@@ -167,6 +296,18 @@ Partial Class dlgScript
Me.lblSaveObjectFormat.TabIndex = 56
Me.lblSaveObjectFormat.Text = "Format:"
'
+ 'ucrCboSaveOutputObjectFormat
+ '
+ Me.ucrCboSaveOutputObjectFormat.AddQuotesIfUnrecognised = True
+ Me.ucrCboSaveOutputObjectFormat.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink
+ Me.ucrCboSaveOutputObjectFormat.GetSetSelectedIndex = -1
+ Me.ucrCboSaveOutputObjectFormat.IsReadOnly = False
+ Me.ucrCboSaveOutputObjectFormat.Location = New System.Drawing.Point(88, 160)
+ Me.ucrCboSaveOutputObjectFormat.Margin = New System.Windows.Forms.Padding(9)
+ Me.ucrCboSaveOutputObjectFormat.Name = "ucrCboSaveOutputObjectFormat"
+ Me.ucrCboSaveOutputObjectFormat.Size = New System.Drawing.Size(141, 21)
+ Me.ucrCboSaveOutputObjectFormat.TabIndex = 55
+ '
'lblSaveObjectType
'
Me.lblSaveObjectType.AutoSize = True
@@ -176,6 +317,18 @@ Partial Class dlgScript
Me.lblSaveObjectType.TabIndex = 54
Me.lblSaveObjectType.Text = "Type:"
'
+ 'ucrCboSaveOutputObjectType
+ '
+ Me.ucrCboSaveOutputObjectType.AddQuotesIfUnrecognised = True
+ Me.ucrCboSaveOutputObjectType.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink
+ Me.ucrCboSaveOutputObjectType.GetSetSelectedIndex = -1
+ Me.ucrCboSaveOutputObjectType.IsReadOnly = False
+ Me.ucrCboSaveOutputObjectType.Location = New System.Drawing.Point(87, 116)
+ Me.ucrCboSaveOutputObjectType.Margin = New System.Windows.Forms.Padding(9)
+ Me.ucrCboSaveOutputObjectType.Name = "ucrCboSaveOutputObjectType"
+ Me.ucrCboSaveOutputObjectType.Size = New System.Drawing.Size(144, 21)
+ Me.ucrCboSaveOutputObjectType.TabIndex = 53
+ '
'rdoSaveOutputObject
'
Me.rdoSaveOutputObject.Appearance = System.Windows.Forms.Appearance.Button
@@ -227,6 +380,44 @@ Partial Class dlgScript
Me.rdoSaveColumn.TextAlign = System.Drawing.ContentAlignment.MiddleCenter
Me.rdoSaveColumn.UseVisualStyleBackColor = True
'
+ 'ucrSaveObject
+ '
+ Me.ucrSaveObject.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink
+ Me.ucrSaveObject.Location = New System.Drawing.Point(88, 193)
+ Me.ucrSaveObject.Margin = New System.Windows.Forms.Padding(4, 5, 4, 5)
+ Me.ucrSaveObject.Name = "ucrSaveObject"
+ Me.ucrSaveObject.Size = New System.Drawing.Size(258, 22)
+ Me.ucrSaveObject.TabIndex = 35
+ '
+ 'ucrDataFrameSaveOutputSelect
+ '
+ Me.ucrDataFrameSaveOutputSelect.AutoSize = True
+ Me.ucrDataFrameSaveOutputSelect.bDropUnusedFilterLevels = False
+ Me.ucrDataFrameSaveOutputSelect.bUseCurrentFilter = True
+ Me.ucrDataFrameSaveOutputSelect.Location = New System.Drawing.Point(86, 54)
+ Me.ucrDataFrameSaveOutputSelect.Margin = New System.Windows.Forms.Padding(0)
+ Me.ucrDataFrameSaveOutputSelect.Name = "ucrDataFrameSaveOutputSelect"
+ Me.ucrDataFrameSaveOutputSelect.Size = New System.Drawing.Size(224, 59)
+ Me.ucrDataFrameSaveOutputSelect.TabIndex = 29
+ '
+ 'ucrPnlSaveData
+ '
+ Me.ucrPnlSaveData.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink
+ Me.ucrPnlSaveData.Location = New System.Drawing.Point(13, 12)
+ Me.ucrPnlSaveData.Margin = New System.Windows.Forms.Padding(6)
+ Me.ucrPnlSaveData.Name = "ucrPnlSaveData"
+ Me.ucrPnlSaveData.Size = New System.Drawing.Size(402, 36)
+ Me.ucrPnlSaveData.TabIndex = 47
+ '
+ 'ucrPnlSaveDataFrame
+ '
+ Me.ucrPnlSaveDataFrame.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink
+ Me.ucrPnlSaveDataFrame.Location = New System.Drawing.Point(5, 48)
+ Me.ucrPnlSaveDataFrame.Margin = New System.Windows.Forms.Padding(6)
+ Me.ucrPnlSaveDataFrame.Name = "ucrPnlSaveDataFrame"
+ Me.ucrPnlSaveDataFrame.Size = New System.Drawing.Size(429, 208)
+ Me.ucrPnlSaveDataFrame.TabIndex = 65
+ '
'tbPageGetData
'
Me.tbPageGetData.Controls.Add(Me.ucrReceiverGetOutputObject)
@@ -244,11 +435,37 @@ Partial Class dlgScript
Me.tbPageGetData.Location = New System.Drawing.Point(4, 22)
Me.tbPageGetData.Name = "tbPageGetData"
Me.tbPageGetData.Padding = New System.Windows.Forms.Padding(3)
- Me.tbPageGetData.Size = New System.Drawing.Size(438, 245)
+ Me.tbPageGetData.Size = New System.Drawing.Size(438, 278)
Me.tbPageGetData.TabIndex = 1
Me.tbPageGetData.Text = "Get Data"
Me.tbPageGetData.UseVisualStyleBackColor = True
'
+ 'ucrReceiverGetOutputObject
+ '
+ Me.ucrReceiverGetOutputObject.AutoSize = True
+ Me.ucrReceiverGetOutputObject.frmParent = Nothing
+ Me.ucrReceiverGetOutputObject.Location = New System.Drawing.Point(240, 117)
+ Me.ucrReceiverGetOutputObject.Margin = New System.Windows.Forms.Padding(0)
+ Me.ucrReceiverGetOutputObject.Name = "ucrReceiverGetOutputObject"
+ Me.ucrReceiverGetOutputObject.Selector = Nothing
+ Me.ucrReceiverGetOutputObject.Size = New System.Drawing.Size(138, 20)
+ Me.ucrReceiverGetOutputObject.strNcFilePath = ""
+ Me.ucrReceiverGetOutputObject.TabIndex = 27
+ Me.ucrReceiverGetOutputObject.ucrSelector = Nothing
+ '
+ 'ucrReceiverGetColumns
+ '
+ Me.ucrReceiverGetColumns.AutoSize = True
+ Me.ucrReceiverGetColumns.frmParent = Nothing
+ Me.ucrReceiverGetColumns.Location = New System.Drawing.Point(243, 104)
+ Me.ucrReceiverGetColumns.Margin = New System.Windows.Forms.Padding(0)
+ Me.ucrReceiverGetColumns.Name = "ucrReceiverGetColumns"
+ Me.ucrReceiverGetColumns.Selector = Nothing
+ Me.ucrReceiverGetColumns.Size = New System.Drawing.Size(137, 105)
+ Me.ucrReceiverGetColumns.strNcFilePath = ""
+ Me.ucrReceiverGetColumns.TabIndex = 49
+ Me.ucrReceiverGetColumns.ucrSelector = Nothing
+ '
'lblGetColumn
'
Me.lblGetColumn.AutoSize = True
@@ -329,6 +546,50 @@ Partial Class dlgScript
Me.rdoGetColumn.TextAlign = System.Drawing.ContentAlignment.MiddleCenter
Me.rdoGetColumn.UseVisualStyleBackColor = True
'
+ 'ucrDataFrameGetDF
+ '
+ Me.ucrDataFrameGetDF.AutoSize = True
+ Me.ucrDataFrameGetDF.bDropUnusedFilterLevels = False
+ Me.ucrDataFrameGetDF.bUseCurrentFilter = True
+ Me.ucrDataFrameGetDF.Location = New System.Drawing.Point(81, 55)
+ Me.ucrDataFrameGetDF.Margin = New System.Windows.Forms.Padding(0)
+ Me.ucrDataFrameGetDF.Name = "ucrDataFrameGetDF"
+ Me.ucrDataFrameGetDF.Size = New System.Drawing.Size(224, 59)
+ Me.ucrDataFrameGetDF.TabIndex = 31
+ '
+ 'ucrCboGetOutputObjectType
+ '
+ Me.ucrCboGetOutputObjectType.AddQuotesIfUnrecognised = True
+ Me.ucrCboGetOutputObjectType.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink
+ Me.ucrCboGetOutputObjectType.GetSetSelectedIndex = -1
+ Me.ucrCboGetOutputObjectType.IsReadOnly = False
+ Me.ucrCboGetOutputObjectType.Location = New System.Drawing.Point(241, 72)
+ Me.ucrCboGetOutputObjectType.Margin = New System.Windows.Forms.Padding(9)
+ Me.ucrCboGetOutputObjectType.Name = "ucrCboGetOutputObjectType"
+ Me.ucrCboGetOutputObjectType.Size = New System.Drawing.Size(137, 21)
+ Me.ucrCboGetOutputObjectType.TabIndex = 47
+ '
+ 'ucrPnlGetData
+ '
+ Me.ucrPnlGetData.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink
+ Me.ucrPnlGetData.Location = New System.Drawing.Point(5, 10)
+ Me.ucrPnlGetData.Margin = New System.Windows.Forms.Padding(6)
+ Me.ucrPnlGetData.Name = "ucrPnlGetData"
+ Me.ucrPnlGetData.Size = New System.Drawing.Size(402, 36)
+ Me.ucrPnlGetData.TabIndex = 42
+ '
+ 'ucrSelectorGetObject
+ '
+ Me.ucrSelectorGetObject.AutoSize = True
+ Me.ucrSelectorGetObject.bDropUnusedFilterLevels = False
+ Me.ucrSelectorGetObject.bShowHiddenColumns = False
+ Me.ucrSelectorGetObject.bUseCurrentFilter = True
+ Me.ucrSelectorGetObject.Location = New System.Drawing.Point(9, 52)
+ Me.ucrSelectorGetObject.Margin = New System.Windows.Forms.Padding(0)
+ Me.ucrSelectorGetObject.Name = "ucrSelectorGetObject"
+ Me.ucrSelectorGetObject.Size = New System.Drawing.Size(320, 274)
+ Me.ucrSelectorGetObject.TabIndex = 34
+ '
'tbPageCommand
'
Me.tbPageCommand.Controls.Add(Me.ucrChkWindow)
@@ -354,11 +615,21 @@ Partial Class dlgScript
Me.tbPageCommand.Controls.Add(Me.ucrPnlCommands)
Me.tbPageCommand.Location = New System.Drawing.Point(4, 22)
Me.tbPageCommand.Name = "tbPageCommand"
- Me.tbPageCommand.Size = New System.Drawing.Size(438, 245)
+ Me.tbPageCommand.Size = New System.Drawing.Size(438, 278)
Me.tbPageCommand.TabIndex = 3
Me.tbPageCommand.Text = "Commands"
Me.tbPageCommand.UseVisualStyleBackColor = True
'
+ 'ucrChkWindow
+ '
+ Me.ucrChkWindow.AutoSize = True
+ Me.ucrChkWindow.Checked = False
+ Me.ucrChkWindow.Location = New System.Drawing.Point(233, 94)
+ Me.ucrChkWindow.Margin = New System.Windows.Forms.Padding(6)
+ Me.ucrChkWindow.Name = "ucrChkWindow"
+ Me.ucrChkWindow.Size = New System.Drawing.Size(126, 34)
+ Me.ucrChkWindow.TabIndex = 67
+ '
'rdoWindow
'
Me.rdoWindow.AutoSize = True
@@ -461,313 +732,17 @@ Partial Class dlgScript
Me.rdoCommandObject.Text = "Remove Object(s):"
Me.rdoCommandObject.UseVisualStyleBackColor = True
'
- 'tbPageExamples
+ 'ucrChkInto
'
- Me.tbPageExamples.Controls.Add(Me.cmdHelp)
- Me.tbPageExamples.Controls.Add(Me.rdoExampleData)
- Me.tbPageExamples.Controls.Add(Me.rdoExampleFunction)
- Me.tbPageExamples.Controls.Add(Me.ucrPnlExample)
- Me.tbPageExamples.Controls.Add(Me.lstExampleCollection)
- Me.tbPageExamples.Controls.Add(Me.Label3)
- Me.tbPageExamples.Controls.Add(Me.ucrCboExamplePackages)
- Me.tbPageExamples.Location = New System.Drawing.Point(4, 22)
- Me.tbPageExamples.Name = "tbPageExamples"
- Me.tbPageExamples.Size = New System.Drawing.Size(438, 245)
- Me.tbPageExamples.TabIndex = 4
- Me.tbPageExamples.Text = "Library"
- Me.tbPageExamples.UseVisualStyleBackColor = True
+ Me.ucrChkInto.AutoSize = True
+ Me.ucrChkInto.Checked = False
+ Me.ucrChkInto.Location = New System.Drawing.Point(233, 33)
+ Me.ucrChkInto.Margin = New System.Windows.Forms.Padding(6)
+ Me.ucrChkInto.Name = "ucrChkInto"
+ Me.ucrChkInto.Size = New System.Drawing.Size(84, 34)
+ Me.ucrChkInto.TabIndex = 63
'
- 'cmdHelp
- '
- Me.cmdHelp.Location = New System.Drawing.Point(361, 4)
- Me.cmdHelp.Name = "cmdHelp"
- Me.cmdHelp.Size = New System.Drawing.Size(75, 23)
- Me.cmdHelp.TabIndex = 61
- Me.cmdHelp.Text = "R Help"
- Me.cmdHelp.UseVisualStyleBackColor = True
- '
- 'rdoExampleData
- '
- Me.rdoExampleData.Appearance = System.Windows.Forms.Appearance.Button
- Me.rdoExampleData.FlatAppearance.BorderColor = System.Drawing.SystemColors.ActiveCaption
- Me.rdoExampleData.FlatAppearance.BorderSize = 2
- Me.rdoExampleData.FlatAppearance.CheckedBackColor = System.Drawing.SystemColors.ActiveCaption
- Me.rdoExampleData.FlatStyle = System.Windows.Forms.FlatStyle.Flat
- Me.rdoExampleData.ImeMode = System.Windows.Forms.ImeMode.NoControl
- Me.rdoExampleData.Location = New System.Drawing.Point(14, 54)
- Me.rdoExampleData.Name = "rdoExampleData"
- Me.rdoExampleData.Size = New System.Drawing.Size(80, 30)
- Me.rdoExampleData.TabIndex = 57
- Me.rdoExampleData.TabStop = True
- Me.rdoExampleData.Text = "Data"
- Me.rdoExampleData.TextAlign = System.Drawing.ContentAlignment.MiddleCenter
- Me.rdoExampleData.UseVisualStyleBackColor = True
- '
- 'rdoExampleFunction
- '
- Me.rdoExampleFunction.Appearance = System.Windows.Forms.Appearance.Button
- Me.rdoExampleFunction.FlatAppearance.BorderColor = System.Drawing.SystemColors.ActiveCaption
- Me.rdoExampleFunction.FlatAppearance.BorderSize = 2
- Me.rdoExampleFunction.FlatAppearance.CheckedBackColor = System.Drawing.SystemColors.ActiveCaption
- Me.rdoExampleFunction.FlatStyle = System.Windows.Forms.FlatStyle.Flat
- Me.rdoExampleFunction.ImeMode = System.Windows.Forms.ImeMode.NoControl
- Me.rdoExampleFunction.Location = New System.Drawing.Point(92, 54)
- Me.rdoExampleFunction.Name = "rdoExampleFunction"
- Me.rdoExampleFunction.Size = New System.Drawing.Size(80, 30)
- Me.rdoExampleFunction.TabIndex = 58
- Me.rdoExampleFunction.TabStop = True
- Me.rdoExampleFunction.Text = "Function"
- Me.rdoExampleFunction.TextAlign = System.Drawing.ContentAlignment.MiddleCenter
- Me.rdoExampleFunction.UseVisualStyleBackColor = True
- '
- 'lstExampleCollection
- '
- Me.lstExampleCollection.Columns.AddRange(New System.Windows.Forms.ColumnHeader() {Me.clmDatasets, Me.clmDesc})
- Me.lstExampleCollection.FullRowSelect = True
- Me.lstExampleCollection.HideSelection = False
- Me.lstExampleCollection.Location = New System.Drawing.Point(3, 93)
- Me.lstExampleCollection.MultiSelect = False
- Me.lstExampleCollection.Name = "lstExampleCollection"
- Me.lstExampleCollection.ShowGroups = False
- Me.lstExampleCollection.ShowItemToolTips = True
- Me.lstExampleCollection.Size = New System.Drawing.Size(415, 146)
- Me.lstExampleCollection.Sorting = System.Windows.Forms.SortOrder.Ascending
- Me.lstExampleCollection.TabIndex = 53
- Me.lstExampleCollection.UseCompatibleStateImageBehavior = False
- Me.lstExampleCollection.View = System.Windows.Forms.View.Details
- '
- 'clmDatasets
- '
- Me.clmDatasets.Text = "Data"
- Me.clmDatasets.Width = 142
- '
- 'clmDesc
- '
- Me.clmDesc.Text = "Description"
- Me.clmDesc.Width = 266
- '
- 'Label3
- '
- Me.Label3.AutoSize = True
- Me.Label3.Location = New System.Drawing.Point(13, 5)
- Me.Label3.Margin = New System.Windows.Forms.Padding(2, 0, 2, 0)
- Me.Label3.Name = "Label3"
- Me.Label3.Size = New System.Drawing.Size(50, 13)
- Me.Label3.TabIndex = 52
- Me.Label3.Text = "Package"
- '
- 'lblPreview
- '
- Me.lblPreview.AutoSize = True
- Me.lblPreview.ImeMode = System.Windows.Forms.ImeMode.NoControl
- Me.lblPreview.Location = New System.Drawing.Point(9, 281)
- Me.lblPreview.Name = "lblPreview"
- Me.lblPreview.Size = New System.Drawing.Size(48, 13)
- Me.lblPreview.TabIndex = 30
- Me.lblPreview.Text = "Preview:"
- '
- 'txtScript
- '
- Me.txtScript.Location = New System.Drawing.Point(5, 299)
- Me.txtScript.Multiline = True
- Me.txtScript.Name = "txtScript"
- Me.txtScript.ScrollBars = System.Windows.Forms.ScrollBars.Both
- Me.txtScript.Size = New System.Drawing.Size(445, 96)
- Me.txtScript.TabIndex = 32
- '
- 'ucrInputSaveRFile
- '
- Me.ucrInputSaveRFile.AddQuotesIfUnrecognised = True
- Me.ucrInputSaveRFile.AutoSize = True
- Me.ucrInputSaveRFile.IsMultiline = False
- Me.ucrInputSaveRFile.IsReadOnly = False
- Me.ucrInputSaveRFile.Location = New System.Drawing.Point(92, 150)
- Me.ucrInputSaveRFile.Margin = New System.Windows.Forms.Padding(9)
- Me.ucrInputSaveRFile.Name = "ucrInputSaveRFile"
- Me.ucrInputSaveRFile.Size = New System.Drawing.Size(145, 21)
- Me.ucrInputSaveRFile.TabIndex = 64
- '
- 'ucrChkDisplayGraph
- '
- Me.ucrChkDisplayGraph.AutoSize = True
- Me.ucrChkDisplayGraph.Checked = False
- Me.ucrChkDisplayGraph.Location = New System.Drawing.Point(88, 217)
- Me.ucrChkDisplayGraph.Name = "ucrChkDisplayGraph"
- Me.ucrChkDisplayGraph.Size = New System.Drawing.Size(113, 23)
- Me.ucrChkDisplayGraph.TabIndex = 60
- '
- 'ucrChkSaveDataFrameSingle
- '
- Me.ucrChkSaveDataFrameSingle.AutoSize = True
- Me.ucrChkSaveDataFrameSingle.Checked = False
- Me.ucrChkSaveDataFrameSingle.Location = New System.Drawing.Point(91, 101)
- Me.ucrChkSaveDataFrameSingle.Name = "ucrChkSaveDataFrameSingle"
- Me.ucrChkSaveDataFrameSingle.Size = New System.Drawing.Size(146, 23)
- Me.ucrChkSaveDataFrameSingle.TabIndex = 59
- '
- 'ucrInputSaveDataFrame
- '
- Me.ucrInputSaveDataFrame.AddQuotesIfUnrecognised = True
- Me.ucrInputSaveDataFrame.AutoSize = True
- Me.ucrInputSaveDataFrame.IsMultiline = False
- Me.ucrInputSaveDataFrame.IsReadOnly = False
- Me.ucrInputSaveDataFrame.Location = New System.Drawing.Point(92, 70)
- Me.ucrInputSaveDataFrame.Margin = New System.Windows.Forms.Padding(9)
- Me.ucrInputSaveDataFrame.Name = "ucrInputSaveDataFrame"
- Me.ucrInputSaveDataFrame.Size = New System.Drawing.Size(145, 21)
- Me.ucrInputSaveDataFrame.TabIndex = 57
- '
- 'ucrCboSaveOutputObjectFormat
- '
- Me.ucrCboSaveOutputObjectFormat.AddQuotesIfUnrecognised = True
- Me.ucrCboSaveOutputObjectFormat.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink
- Me.ucrCboSaveOutputObjectFormat.GetSetSelectedIndex = -1
- Me.ucrCboSaveOutputObjectFormat.IsReadOnly = False
- Me.ucrCboSaveOutputObjectFormat.Location = New System.Drawing.Point(88, 160)
- Me.ucrCboSaveOutputObjectFormat.Margin = New System.Windows.Forms.Padding(9)
- Me.ucrCboSaveOutputObjectFormat.Name = "ucrCboSaveOutputObjectFormat"
- Me.ucrCboSaveOutputObjectFormat.Size = New System.Drawing.Size(141, 21)
- Me.ucrCboSaveOutputObjectFormat.TabIndex = 55
- '
- 'ucrCboSaveOutputObjectType
- '
- Me.ucrCboSaveOutputObjectType.AddQuotesIfUnrecognised = True
- Me.ucrCboSaveOutputObjectType.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink
- Me.ucrCboSaveOutputObjectType.GetSetSelectedIndex = -1
- Me.ucrCboSaveOutputObjectType.IsReadOnly = False
- Me.ucrCboSaveOutputObjectType.Location = New System.Drawing.Point(87, 116)
- Me.ucrCboSaveOutputObjectType.Margin = New System.Windows.Forms.Padding(9)
- Me.ucrCboSaveOutputObjectType.Name = "ucrCboSaveOutputObjectType"
- Me.ucrCboSaveOutputObjectType.Size = New System.Drawing.Size(144, 21)
- Me.ucrCboSaveOutputObjectType.TabIndex = 53
- '
- 'ucrSaveObject
- '
- Me.ucrSaveObject.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink
- Me.ucrSaveObject.Location = New System.Drawing.Point(88, 193)
- Me.ucrSaveObject.Margin = New System.Windows.Forms.Padding(4, 5, 4, 5)
- Me.ucrSaveObject.Name = "ucrSaveObject"
- Me.ucrSaveObject.Size = New System.Drawing.Size(258, 22)
- Me.ucrSaveObject.TabIndex = 35
- '
- 'ucrDataFrameSaveOutputSelect
- '
- Me.ucrDataFrameSaveOutputSelect.AutoSize = True
- Me.ucrDataFrameSaveOutputSelect.bDropUnusedFilterLevels = False
- Me.ucrDataFrameSaveOutputSelect.bUseCurrentFilter = True
- Me.ucrDataFrameSaveOutputSelect.Location = New System.Drawing.Point(86, 54)
- Me.ucrDataFrameSaveOutputSelect.Margin = New System.Windows.Forms.Padding(0)
- Me.ucrDataFrameSaveOutputSelect.Name = "ucrDataFrameSaveOutputSelect"
- Me.ucrDataFrameSaveOutputSelect.Size = New System.Drawing.Size(224, 59)
- Me.ucrDataFrameSaveOutputSelect.TabIndex = 29
- '
- 'ucrPnlSaveData
- '
- Me.ucrPnlSaveData.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink
- Me.ucrPnlSaveData.Location = New System.Drawing.Point(13, 12)
- Me.ucrPnlSaveData.Margin = New System.Windows.Forms.Padding(6)
- Me.ucrPnlSaveData.Name = "ucrPnlSaveData"
- Me.ucrPnlSaveData.Size = New System.Drawing.Size(402, 36)
- Me.ucrPnlSaveData.TabIndex = 47
- '
- 'ucrPnlSaveDataFrame
- '
- Me.ucrPnlSaveDataFrame.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink
- Me.ucrPnlSaveDataFrame.Location = New System.Drawing.Point(5, 48)
- Me.ucrPnlSaveDataFrame.Margin = New System.Windows.Forms.Padding(6)
- Me.ucrPnlSaveDataFrame.Name = "ucrPnlSaveDataFrame"
- Me.ucrPnlSaveDataFrame.Size = New System.Drawing.Size(429, 134)
- Me.ucrPnlSaveDataFrame.TabIndex = 65
- '
- 'ucrReceiverGetOutputObject
- '
- Me.ucrReceiverGetOutputObject.AutoSize = True
- Me.ucrReceiverGetOutputObject.frmParent = Nothing
- Me.ucrReceiverGetOutputObject.Location = New System.Drawing.Point(240, 117)
- Me.ucrReceiverGetOutputObject.Margin = New System.Windows.Forms.Padding(0)
- Me.ucrReceiverGetOutputObject.Name = "ucrReceiverGetOutputObject"
- Me.ucrReceiverGetOutputObject.Selector = Nothing
- Me.ucrReceiverGetOutputObject.Size = New System.Drawing.Size(138, 20)
- Me.ucrReceiverGetOutputObject.strNcFilePath = ""
- Me.ucrReceiverGetOutputObject.TabIndex = 27
- Me.ucrReceiverGetOutputObject.ucrSelector = Nothing
- '
- 'ucrReceiverGetColumns
- '
- Me.ucrReceiverGetColumns.AutoSize = True
- Me.ucrReceiverGetColumns.frmParent = Nothing
- Me.ucrReceiverGetColumns.Location = New System.Drawing.Point(243, 104)
- Me.ucrReceiverGetColumns.Margin = New System.Windows.Forms.Padding(0)
- Me.ucrReceiverGetColumns.Name = "ucrReceiverGetColumns"
- Me.ucrReceiverGetColumns.Selector = Nothing
- Me.ucrReceiverGetColumns.Size = New System.Drawing.Size(137, 105)
- Me.ucrReceiverGetColumns.strNcFilePath = ""
- Me.ucrReceiverGetColumns.TabIndex = 49
- Me.ucrReceiverGetColumns.ucrSelector = Nothing
- '
- 'ucrDataFrameGetDF
- '
- Me.ucrDataFrameGetDF.AutoSize = True
- Me.ucrDataFrameGetDF.bDropUnusedFilterLevels = False
- Me.ucrDataFrameGetDF.bUseCurrentFilter = True
- Me.ucrDataFrameGetDF.Location = New System.Drawing.Point(81, 55)
- Me.ucrDataFrameGetDF.Margin = New System.Windows.Forms.Padding(0)
- Me.ucrDataFrameGetDF.Name = "ucrDataFrameGetDF"
- Me.ucrDataFrameGetDF.Size = New System.Drawing.Size(224, 59)
- Me.ucrDataFrameGetDF.TabIndex = 31
- '
- 'ucrCboGetOutputObjectType
- '
- Me.ucrCboGetOutputObjectType.AddQuotesIfUnrecognised = True
- Me.ucrCboGetOutputObjectType.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink
- Me.ucrCboGetOutputObjectType.GetSetSelectedIndex = -1
- Me.ucrCboGetOutputObjectType.IsReadOnly = False
- Me.ucrCboGetOutputObjectType.Location = New System.Drawing.Point(241, 72)
- Me.ucrCboGetOutputObjectType.Margin = New System.Windows.Forms.Padding(9)
- Me.ucrCboGetOutputObjectType.Name = "ucrCboGetOutputObjectType"
- Me.ucrCboGetOutputObjectType.Size = New System.Drawing.Size(137, 21)
- Me.ucrCboGetOutputObjectType.TabIndex = 47
- '
- 'ucrPnlGetData
- '
- Me.ucrPnlGetData.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink
- Me.ucrPnlGetData.Location = New System.Drawing.Point(5, 10)
- Me.ucrPnlGetData.Margin = New System.Windows.Forms.Padding(6)
- Me.ucrPnlGetData.Name = "ucrPnlGetData"
- Me.ucrPnlGetData.Size = New System.Drawing.Size(402, 36)
- Me.ucrPnlGetData.TabIndex = 42
- '
- 'ucrSelectorGetObject
- '
- Me.ucrSelectorGetObject.AutoSize = True
- Me.ucrSelectorGetObject.bDropUnusedFilterLevels = False
- Me.ucrSelectorGetObject.bShowHiddenColumns = False
- Me.ucrSelectorGetObject.bUseCurrentFilter = True
- Me.ucrSelectorGetObject.Location = New System.Drawing.Point(9, 52)
- Me.ucrSelectorGetObject.Margin = New System.Windows.Forms.Padding(0)
- Me.ucrSelectorGetObject.Name = "ucrSelectorGetObject"
- Me.ucrSelectorGetObject.Size = New System.Drawing.Size(320, 274)
- Me.ucrSelectorGetObject.TabIndex = 34
- '
- 'ucrChkWindow
- '
- Me.ucrChkWindow.AutoSize = True
- Me.ucrChkWindow.Checked = False
- Me.ucrChkWindow.Location = New System.Drawing.Point(233, 94)
- Me.ucrChkWindow.Name = "ucrChkWindow"
- Me.ucrChkWindow.Size = New System.Drawing.Size(126, 23)
- Me.ucrChkWindow.TabIndex = 67
- '
- 'ucrChkInto
- '
- Me.ucrChkInto.AutoSize = True
- Me.ucrChkInto.Checked = False
- Me.ucrChkInto.Location = New System.Drawing.Point(233, 33)
- Me.ucrChkInto.Name = "ucrChkInto"
- Me.ucrChkInto.Size = New System.Drawing.Size(84, 23)
- Me.ucrChkInto.TabIndex = 63
- '
- 'ucrInputSaveData
+ 'ucrInputSaveData
'
Me.ucrInputSaveData.AddQuotesIfUnrecognised = True
Me.ucrInputSaveData.AutoSize = True
@@ -820,8 +795,9 @@ Partial Class dlgScript
Me.ucrChkOpenRFile.AutoSize = True
Me.ucrChkOpenRFile.Checked = False
Me.ucrChkOpenRFile.Location = New System.Drawing.Point(156, 64)
+ Me.ucrChkOpenRFile.Margin = New System.Windows.Forms.Padding(6)
Me.ucrChkOpenRFile.Name = "ucrChkOpenRFile"
- Me.ucrChkOpenRFile.Size = New System.Drawing.Size(100, 23)
+ Me.ucrChkOpenRFile.Size = New System.Drawing.Size(100, 34)
Me.ucrChkOpenRFile.TabIndex = 53
'
'ucrInputChooseFile
@@ -881,6 +857,65 @@ Partial Class dlgScript
Me.ucrPnlCommands.Size = New System.Drawing.Size(429, 238)
Me.ucrPnlCommands.TabIndex = 47
'
+ 'tbPageExamples
+ '
+ Me.tbPageExamples.Controls.Add(Me.cmdHelp)
+ Me.tbPageExamples.Controls.Add(Me.rdoExampleData)
+ Me.tbPageExamples.Controls.Add(Me.rdoExampleFunction)
+ Me.tbPageExamples.Controls.Add(Me.ucrPnlExample)
+ Me.tbPageExamples.Controls.Add(Me.lstExampleCollection)
+ Me.tbPageExamples.Controls.Add(Me.Label3)
+ Me.tbPageExamples.Controls.Add(Me.ucrCboExamplePackages)
+ Me.tbPageExamples.Location = New System.Drawing.Point(4, 22)
+ Me.tbPageExamples.Name = "tbPageExamples"
+ Me.tbPageExamples.Size = New System.Drawing.Size(438, 278)
+ Me.tbPageExamples.TabIndex = 4
+ Me.tbPageExamples.Text = "Library"
+ Me.tbPageExamples.UseVisualStyleBackColor = True
+ '
+ 'cmdHelp
+ '
+ Me.cmdHelp.Location = New System.Drawing.Point(361, 4)
+ Me.cmdHelp.Name = "cmdHelp"
+ Me.cmdHelp.Size = New System.Drawing.Size(75, 23)
+ Me.cmdHelp.TabIndex = 61
+ Me.cmdHelp.Text = "R Help"
+ Me.cmdHelp.UseVisualStyleBackColor = True
+ '
+ 'rdoExampleData
+ '
+ Me.rdoExampleData.Appearance = System.Windows.Forms.Appearance.Button
+ Me.rdoExampleData.FlatAppearance.BorderColor = System.Drawing.SystemColors.ActiveCaption
+ Me.rdoExampleData.FlatAppearance.BorderSize = 2
+ Me.rdoExampleData.FlatAppearance.CheckedBackColor = System.Drawing.SystemColors.ActiveCaption
+ Me.rdoExampleData.FlatStyle = System.Windows.Forms.FlatStyle.Flat
+ Me.rdoExampleData.ImeMode = System.Windows.Forms.ImeMode.NoControl
+ Me.rdoExampleData.Location = New System.Drawing.Point(14, 54)
+ Me.rdoExampleData.Name = "rdoExampleData"
+ Me.rdoExampleData.Size = New System.Drawing.Size(80, 30)
+ Me.rdoExampleData.TabIndex = 57
+ Me.rdoExampleData.TabStop = True
+ Me.rdoExampleData.Text = "Data"
+ Me.rdoExampleData.TextAlign = System.Drawing.ContentAlignment.MiddleCenter
+ Me.rdoExampleData.UseVisualStyleBackColor = True
+ '
+ 'rdoExampleFunction
+ '
+ Me.rdoExampleFunction.Appearance = System.Windows.Forms.Appearance.Button
+ Me.rdoExampleFunction.FlatAppearance.BorderColor = System.Drawing.SystemColors.ActiveCaption
+ Me.rdoExampleFunction.FlatAppearance.BorderSize = 2
+ Me.rdoExampleFunction.FlatAppearance.CheckedBackColor = System.Drawing.SystemColors.ActiveCaption
+ Me.rdoExampleFunction.FlatStyle = System.Windows.Forms.FlatStyle.Flat
+ Me.rdoExampleFunction.ImeMode = System.Windows.Forms.ImeMode.NoControl
+ Me.rdoExampleFunction.Location = New System.Drawing.Point(92, 54)
+ Me.rdoExampleFunction.Name = "rdoExampleFunction"
+ Me.rdoExampleFunction.Size = New System.Drawing.Size(80, 30)
+ Me.rdoExampleFunction.TabIndex = 58
+ Me.rdoExampleFunction.TabStop = True
+ Me.rdoExampleFunction.Text = "Function"
+ Me.rdoExampleFunction.TextAlign = System.Drawing.ContentAlignment.MiddleCenter
+ Me.rdoExampleFunction.UseVisualStyleBackColor = True
+ '
'ucrPnlExample
'
Me.ucrPnlExample.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink
@@ -890,6 +925,42 @@ Partial Class dlgScript
Me.ucrPnlExample.Size = New System.Drawing.Size(402, 34)
Me.ucrPnlExample.TabIndex = 56
'
+ 'lstExampleCollection
+ '
+ Me.lstExampleCollection.Columns.AddRange(New System.Windows.Forms.ColumnHeader() {Me.clmDatasets, Me.clmDesc})
+ Me.lstExampleCollection.FullRowSelect = True
+ Me.lstExampleCollection.HideSelection = False
+ Me.lstExampleCollection.Location = New System.Drawing.Point(3, 93)
+ Me.lstExampleCollection.MultiSelect = False
+ Me.lstExampleCollection.Name = "lstExampleCollection"
+ Me.lstExampleCollection.ShowGroups = False
+ Me.lstExampleCollection.ShowItemToolTips = True
+ Me.lstExampleCollection.Size = New System.Drawing.Size(415, 146)
+ Me.lstExampleCollection.Sorting = System.Windows.Forms.SortOrder.Ascending
+ Me.lstExampleCollection.TabIndex = 53
+ Me.lstExampleCollection.UseCompatibleStateImageBehavior = False
+ Me.lstExampleCollection.View = System.Windows.Forms.View.Details
+ '
+ 'clmDatasets
+ '
+ Me.clmDatasets.Text = "Data"
+ Me.clmDatasets.Width = 142
+ '
+ 'clmDesc
+ '
+ Me.clmDesc.Text = "Description"
+ Me.clmDesc.Width = 266
+ '
+ 'Label3
+ '
+ Me.Label3.AutoSize = True
+ Me.Label3.Location = New System.Drawing.Point(13, 5)
+ Me.Label3.Margin = New System.Windows.Forms.Padding(2, 0, 2, 0)
+ Me.Label3.Name = "Label3"
+ Me.Label3.Size = New System.Drawing.Size(50, 13)
+ Me.Label3.TabIndex = 52
+ Me.Label3.Text = "Package"
+ '
'ucrCboExamplePackages
'
Me.ucrCboExamplePackages.AddQuotesIfUnrecognised = True
@@ -902,11 +973,132 @@ Partial Class dlgScript
Me.ucrCboExamplePackages.Size = New System.Drawing.Size(137, 21)
Me.ucrCboExamplePackages.TabIndex = 51
'
+ 'tbPageRepeat
+ '
+ Me.tbPageRepeat.Controls.Add(Me.lblColumns)
+ Me.tbPageRepeat.Controls.Add(Me.ucrReceiverColumns)
+ Me.tbPageRepeat.Controls.Add(Me.lblExpression)
+ Me.tbPageRepeat.Controls.Add(Me.ucrReceiverForCalculation)
+ Me.tbPageRepeat.Controls.Add(Me.lblSelectColumns)
+ Me.tbPageRepeat.Controls.Add(Me.ucrReceiverRank)
+ Me.tbPageRepeat.Controls.Add(Me.ucrSelectorForRank)
+ Me.tbPageRepeat.Location = New System.Drawing.Point(4, 22)
+ Me.tbPageRepeat.Name = "tbPageRepeat"
+ Me.tbPageRepeat.Padding = New System.Windows.Forms.Padding(3)
+ Me.tbPageRepeat.Size = New System.Drawing.Size(438, 278)
+ Me.tbPageRepeat.TabIndex = 5
+ Me.tbPageRepeat.Text = "Repeat"
+ Me.tbPageRepeat.UseVisualStyleBackColor = True
+ '
+ 'lblColumns
+ '
+ Me.lblColumns.AutoSize = True
+ Me.lblColumns.ImeMode = System.Windows.Forms.ImeMode.NoControl
+ Me.lblColumns.Location = New System.Drawing.Point(248, 83)
+ Me.lblColumns.Name = "lblColumns"
+ Me.lblColumns.Size = New System.Drawing.Size(50, 13)
+ Me.lblColumns.TabIndex = 124
+ Me.lblColumns.Tag = ""
+ Me.lblColumns.Text = "Columns:"
+ '
+ 'ucrReceiverColumns
+ '
+ Me.ucrReceiverColumns.AutoSize = True
+ Me.ucrReceiverColumns.frmParent = Nothing
+ Me.ucrReceiverColumns.Location = New System.Drawing.Point(246, 101)
+ Me.ucrReceiverColumns.Margin = New System.Windows.Forms.Padding(0)
+ Me.ucrReceiverColumns.Name = "ucrReceiverColumns"
+ Me.ucrReceiverColumns.Selector = Nothing
+ Me.ucrReceiverColumns.Size = New System.Drawing.Size(120, 20)
+ Me.ucrReceiverColumns.strNcFilePath = ""
+ Me.ucrReceiverColumns.TabIndex = 123
+ Me.ucrReceiverColumns.ucrSelector = Nothing
+ '
+ 'lblExpression
+ '
+ Me.lblExpression.AutoSize = True
+ Me.lblExpression.ImeMode = System.Windows.Forms.ImeMode.NoControl
+ Me.lblExpression.Location = New System.Drawing.Point(12, 213)
+ Me.lblExpression.Margin = New System.Windows.Forms.Padding(2, 0, 2, 0)
+ Me.lblExpression.Name = "lblExpression"
+ Me.lblExpression.Size = New System.Drawing.Size(58, 13)
+ Me.lblExpression.TabIndex = 122
+ Me.lblExpression.Tag = "Expression"
+ Me.lblExpression.Text = "Statement:"
+ '
+ 'ucrReceiverForCalculation
+ '
+ Me.ucrReceiverForCalculation.AutoSize = True
+ Me.ucrReceiverForCalculation.frmParent = Nothing
+ Me.ucrReceiverForCalculation.Location = New System.Drawing.Point(9, 235)
+ Me.ucrReceiverForCalculation.Margin = New System.Windows.Forms.Padding(2)
+ Me.ucrReceiverForCalculation.Name = "ucrReceiverForCalculation"
+ Me.ucrReceiverForCalculation.Selector = Nothing
+ Me.ucrReceiverForCalculation.Size = New System.Drawing.Size(390, 30)
+ Me.ucrReceiverForCalculation.strNcFilePath = ""
+ Me.ucrReceiverForCalculation.TabIndex = 121
+ Me.ucrReceiverForCalculation.ucrSelector = Nothing
+ '
+ 'lblSelectColumns
+ '
+ Me.lblSelectColumns.AutoSize = True
+ Me.lblSelectColumns.ImeMode = System.Windows.Forms.ImeMode.NoControl
+ Me.lblSelectColumns.Location = New System.Drawing.Point(248, 32)
+ Me.lblSelectColumns.Name = "lblSelectColumns"
+ Me.lblSelectColumns.Size = New System.Drawing.Size(40, 13)
+ Me.lblSelectColumns.TabIndex = 10
+ Me.lblSelectColumns.Tag = ""
+ Me.lblSelectColumns.Text = "Select:"
+ '
+ 'ucrReceiverRank
+ '
+ Me.ucrReceiverRank.AutoSize = True
+ Me.ucrReceiverRank.frmParent = Nothing
+ Me.ucrReceiverRank.Location = New System.Drawing.Point(246, 48)
+ Me.ucrReceiverRank.Margin = New System.Windows.Forms.Padding(0)
+ Me.ucrReceiverRank.Name = "ucrReceiverRank"
+ Me.ucrReceiverRank.Selector = Nothing
+ Me.ucrReceiverRank.Size = New System.Drawing.Size(145, 20)
+ Me.ucrReceiverRank.strNcFilePath = ""
+ Me.ucrReceiverRank.TabIndex = 11
+ Me.ucrReceiverRank.ucrSelector = Nothing
+ '
+ 'ucrSelectorForRank
+ '
+ Me.ucrSelectorForRank.AutoSize = True
+ Me.ucrSelectorForRank.bDropUnusedFilterLevels = False
+ Me.ucrSelectorForRank.bShowHiddenColumns = False
+ Me.ucrSelectorForRank.bUseCurrentFilter = True
+ Me.ucrSelectorForRank.Location = New System.Drawing.Point(12, 16)
+ Me.ucrSelectorForRank.Margin = New System.Windows.Forms.Padding(0)
+ Me.ucrSelectorForRank.Name = "ucrSelectorForRank"
+ Me.ucrSelectorForRank.Size = New System.Drawing.Size(318, 274)
+ Me.ucrSelectorForRank.TabIndex = 9
+ '
+ 'lblPreview
+ '
+ Me.lblPreview.AutoSize = True
+ Me.lblPreview.ImeMode = System.Windows.Forms.ImeMode.NoControl
+ Me.lblPreview.Location = New System.Drawing.Point(9, 314)
+ Me.lblPreview.Name = "lblPreview"
+ Me.lblPreview.Size = New System.Drawing.Size(48, 13)
+ Me.lblPreview.TabIndex = 30
+ Me.lblPreview.Text = "Preview:"
+ '
+ 'txtScript
+ '
+ Me.txtScript.Location = New System.Drawing.Point(5, 332)
+ Me.txtScript.Multiline = True
+ Me.txtScript.Name = "txtScript"
+ Me.txtScript.ScrollBars = System.Windows.Forms.ScrollBars.Both
+ Me.txtScript.Size = New System.Drawing.Size(445, 96)
+ Me.txtScript.TabIndex = 32
+ '
'ucrBase
'
Me.ucrBase.AutoSize = True
Me.ucrBase.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink
- Me.ucrBase.Location = New System.Drawing.Point(6, 399)
+ Me.ucrBase.Location = New System.Drawing.Point(6, 431)
Me.ucrBase.Margin = New System.Windows.Forms.Padding(4, 5, 4, 5)
Me.ucrBase.Name = "ucrBase"
Me.ucrBase.Size = New System.Drawing.Size(408, 52)
@@ -917,7 +1109,7 @@ Partial Class dlgScript
Me.AutoScaleDimensions = New System.Drawing.SizeF(96.0!, 96.0!)
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi
Me.AutoSize = True
- Me.ClientSize = New System.Drawing.Size(458, 458)
+ Me.ClientSize = New System.Drawing.Size(458, 467)
Me.Controls.Add(Me.txtScript)
Me.Controls.Add(Me.lblPreview)
Me.Controls.Add(Me.tbFeatures)
@@ -937,6 +1129,8 @@ Partial Class dlgScript
Me.tbPageCommand.PerformLayout()
Me.tbPageExamples.ResumeLayout(False)
Me.tbPageExamples.PerformLayout()
+ Me.tbPageRepeat.ResumeLayout(False)
+ Me.tbPageRepeat.PerformLayout()
Me.ResumeLayout(False)
Me.PerformLayout()
@@ -1009,4 +1203,18 @@ Partial Class dlgScript
Friend WithEvents rdoFromRFile As RadioButton
Friend WithEvents rdoDataFrame As RadioButton
Friend WithEvents ucrPnlSaveDataFrame As UcrPanel
+ Friend WithEvents lblSaveText As Label
+ Friend WithEvents lblSaveDataFrame As Label
+ Friend WithEvents lblSaveColumn As Label
+ Friend WithEvents ucrInputDataframeColumn As ucrInputTextBox
+ Friend WithEvents ucrInputSaveColumn As ucrInputTextBox
+ Friend WithEvents rdoVariable As RadioButton
+ Friend WithEvents tbPageRepeat As TabPage
+ Friend WithEvents lblSelectColumns As Label
+ Friend WithEvents ucrReceiverRank As ucrReceiverSingle
+ Friend WithEvents ucrSelectorForRank As ucrSelectorByDataFrameAddRemove
+ Friend WithEvents ucrReceiverForCalculation As ucrReceiverExpression
+ Friend WithEvents lblExpression As Label
+ Friend WithEvents lblColumns As Label
+ Friend WithEvents ucrReceiverColumns As ucrReceiverSingle
End Class
diff --git a/instat/dlgScript.vb b/instat/dlgScript.vb
index 7ca7d373b6e..8604fd5f5c0 100644
--- a/instat/dlgScript.vb
+++ b/instat/dlgScript.vb
@@ -20,7 +20,7 @@ Public Class dlgScript
Private strComment As String = "Code generated by the dialog, Script"
Private bFirstload As Boolean = True
Private clsSaveDataFunction As New RFunction
- Private clsGetRObjectFunction As New RFunction
+ Private clsGetRObjectFunction, clsGetSelectedDataFrameFunction As New RFunction
Private dctOutputObjectTypes As New Dictionary(Of String, String)
Private dctOutputObjectFormats As New Dictionary(Of String, String)
@@ -78,6 +78,7 @@ Public Class dlgScript
ucrPnlSaveDataFrame.AddRadioButton(rdoDataFrame)
ucrPnlSaveDataFrame.AddRadioButton(rdoFromRFile)
+ ucrPnlSaveDataFrame.AddRadioButton(rdoVariable)
ucrChkSaveDataFrameSingle.SetText("Single")
@@ -95,6 +96,8 @@ Public Class dlgScript
ucrReceiverGetColumns.Selector = ucrSelectorGetObject
ucrReceiverGetColumns.SetLinkedDisplayControl(lblGetColumn)
+ ucrReceiverColumns.Selector = ucrSelectorForRank
+
ucrCboGetOutputObjectType.SetItems(dctOutputObjectTypes, bSetConditions:=False)
ucrCboGetOutputObjectType.SetDropDownStyleAsNonEditable()
ucrCboGetOutputObjectType.SetLinkedDisplayControl(lblGetObjectType)
@@ -151,6 +154,15 @@ Public Class dlgScript
ucrBase.bAddScriptToScriptWindowOnClickOk = False
ucrBase.bMakeVisibleScriptWindow = False
+ ucrReceiverRank.SetParameter(New RParameter("x", 0))
+ ucrReceiverRank.Selector = ucrSelectorForRank
+ ucrReceiverRank.SetMeAsReceiver()
+ ucrReceiverRank.bUseFilteredData = False
+ ucrReceiverRank.SetParameterIsRFunction()
+
+ ucrSelectorForRank.SetItemType("column_selection")
+ ucrReceiverRank.strSelectorHeading = "Column selections"
+
End Sub
'todo. this function should eventually be removed once we have a control that displays packages
@@ -196,7 +208,8 @@ Public Class dlgScript
ucrDataFrameGetDF.Reset()
rdoGetDataFrame.Checked = True
rdoDataFrame.Checked = True
-
+ ucrSelectorForRank.Reset()
+ ucrReceiverForCalculation.Clear()
'activate the selected tab to library tab
tbFeatures.SelectedIndex = -1
tbFeatures.SelectedTab = tbPageSaveData
@@ -675,12 +688,28 @@ Public Class dlgScript
End Sub
Private Sub PreviewScript(strNewScript As String)
- txtScript.Text = strNewScript & Environment.NewLine
+ txtScript.Text = GetFormattedScript(strNewScript & Environment.NewLine)
txtScript.SelectionStart = txtScript.Text.Length
txtScript.ScrollToCaret()
txtScript.Refresh()
End Sub
+ Private Function GetFormattedScript(strScript As String) As String
+ Dim strReconstructedstrScript As String = ""
+ Dim arrCommentParts As String()
+ If strScript.Length > 0 Then
+ arrCommentParts = strScript.Split(Environment.NewLine.ToCharArray(), StringSplitOptions.RemoveEmptyEntries)
+ For Each strPart As String In arrCommentParts
+ If strReconstructedstrScript = "" Then
+ strReconstructedstrScript = strPart
+ Else
+ strReconstructedstrScript = strReconstructedstrScript & Environment.NewLine & strPart
+ End If
+ Next
+ End If
+ Return strReconstructedstrScript
+ End Function
+
Private Sub ucrInputChooseFile_ControlValueChanged(ucrChangedControl As ucrCore) Handles ucrInputChooseFile.ControlContentsChanged, ucrChkOpenRFile.ControlContentsChanged
UpdateScript()
ucrInputChooseFile.Visible = ucrChkOpenRFile.Checked
@@ -761,6 +790,11 @@ Public Class dlgScript
Private Sub HideShowSaveDataFrameControls()
ucrInputSaveRFile.SetVisible(False)
ucrInputSaveDataFrame.SetVisible(False)
+ ucrInputSaveColumn.SetVisible(False)
+ ucrInputDataframeColumn.SetVisible(False)
+ lblSaveColumn.Visible = False
+ lblSaveDataFrame.Visible = False
+ lblSaveText.Visible = False
ucrChkSaveDataFrameSingle.SetVisible(False)
If rdoDataFrame.Checked Then
ucrInputSaveDataFrame.SetVisible(True)
@@ -770,7 +804,95 @@ Public Class dlgScript
ElseIf rdoFromRFile.Checked Then
ucrInputSaveRFile.SetVisible(True)
ucrInputSaveRFile.OnControlValueChanged()
+ ElseIf rdoVariable.Checked Then
+ ucrInputSaveColumn.SetVisible(True)
+ ucrInputDataframeColumn.SetVisible(True)
+ lblSaveText.Visible = True
+ lblSaveColumn.Visible = True
+ lblSaveDataFrame.Visible = True
+ ucrChkSaveDataFrameSingle.SetVisible(True)
+ ucrInputSaveDataFrame.OnControlValueChanged()
End If
End Sub
+ Private Sub ucrInputDataframeColumn_ControlContentsChanged(ucrChangedControl As ucrCore) Handles ucrInputDataframeColumn.ControlContentsChanged, ucrInputSaveColumn.ControlContentsChanged,
+ ucrChkSaveDataFrameSingle.ControlContentsChanged
+ Dim strScript As String = ""
+
+ If rdoVariable.Checked Then
+ If Not ucrInputDataframeColumn.IsEmpty() AndAlso Not ucrInputSaveColumn.IsEmpty Then
+ Dim clsDataFrameFunction As New RFunction
+ Dim clsImportRFunction As New RFunction
+ Dim strColumneName As String = ucrInputSaveColumn.GetText()
+ Dim strDataFrameName As String = ucrInputDataframeColumn.GetText()
+
+ clsImportRFunction.SetRCommand(frmMain.clsRLink.strInstatDataObject & "$import_data")
+ clsDataFrameFunction.SetRCommand("data.frame")
+
+ Dim strAssignedScript As String = ""
+ clsDataFrameFunction.AddParameter("dataframe", ucrInputSaveColumn.GetText(), bIncludeArgumentName:=False)
+ clsDataFrameFunction.SetAssignTo(ucrInputDataframeColumn.GetText)
+ clsDataFrameFunction.ToScript(strScript:=strAssignedScript)
+
+ If ucrChkSaveDataFrameSingle.Checked Then
+ ' If it's a single data frame then wrap it into a list
+ Dim clsDataListRFunction As New RFunction
+ clsDataListRFunction.SetRCommand("list")
+ clsDataListRFunction.AddParameter(strParameterName:=strDataFrameName, strParameterValue:=strDataFrameName)
+ clsImportRFunction.AddParameter(strParameterName:="data_tables", clsRFunctionParameter:=clsDataListRFunction)
+ Else
+ ' If it's already a list of data frames, then add the name directly
+ clsImportRFunction.AddParameter(strParameterName:="data_tables", strParameterValue:=strDataFrameName)
+ End If
+
+ strScript = "# Save variables " & """" & strColumneName & """" & " into data frame " & """" & strDataFrameName & """" & Environment.NewLine & strAssignedScript & clsImportRFunction.ToScript()
+
+ End If
+ End If
+ PreviewScript(strScript)
+ End Sub
+
+ Private Function ConstructScript(strSelectedScript As String, strVariable As String, strDataFrame As String) As String
+
+ ' Extract the LHS variable
+ Dim match As System.Text.RegularExpressions.Match = System.Text.RegularExpressions.Regex.Match(strSelectedScript, "(\S+)\s*<-\s*(.*)")
+ Dim lhsVariable As String = If(match.Success, match.Groups(1).Value, "calc") ' Default to "calc" if no match
+ Dim rhs As String = If(match.Success, match.Groups(2).Value, strSelectedScript)
+
+ ' Modify RHS with the selected variable
+ Dim modifiedRhs As String = If(Not String.IsNullOrEmpty(strVariable), rhs.Replace(strVariable, $"{strDataFrame}[[.x]]"), rhs)
+
+ ' Construct the main script using string interpolation
+ Dim strConstructedScript As String = $"
+ {lhsVariable} <- purrr::map(.x = {"names(" & lhsVariable & ")"},
+ .f = ~{modifiedRhs}) %>%
+ dplyr::bind_cols(.)"
+ Dim strAssignedScript As String = ""
+
+ ' Get the selected data frame columns
+ Dim clsGetSelectedDataFrameFunction As New RFunction
+ clsGetSelectedDataFrameFunction.SetRCommand(frmMain.clsRLink.strInstatDataObject & "$get_data_frame")
+ clsGetSelectedDataFrameFunction.AddParameter("data_name", Chr(34) & ucrSelectorForRank.strCurrentDataFrame & Chr(34), iPosition:=0, bIncludeArgumentName:=False)
+ clsGetSelectedDataFrameFunction.AddParameter("column_selection_name ", ucrReceiverRank.GetVariableNames, iPosition:=1)
+ clsGetSelectedDataFrameFunction.SetAssignTo(lhsVariable)
+ clsGetSelectedDataFrameFunction.ToScript(strScript:=strAssignedScript)
+
+ ' Prepend the dataframe selection script
+ strConstructedScript = "#Get the variables in the chosen select." & Environment.NewLine & "# Then do the calculation for each variable in turn, " & Environment.NewLine & "# So produce a new column for each variable in the select." & Environment.NewLine & strAssignedScript & Environment.NewLine & strConstructedScript.Trim()
+
+ Return strConstructedScript
+ End Function
+
+ Private Sub ucrReceiverForCalculation_ControlValueChanged(ucrChangedControl As ucrCore) Handles ucrReceiverForCalculation.ControlValueChanged
+ PreviewScript(ConstructScript(ucrReceiverForCalculation.GetVariableNames(False), ucrReceiverColumns.GetVariableNames(False), ucrSelectorForRank.strCurrentDataFrame))
+ End Sub
+
+ Private Sub ucrReceiverColumns_Enter(sender As Object, e As EventArgs) Handles ucrReceiverColumns.Enter
+ ucrReceiverColumns.SetItemType("column")
+ End Sub
+
+ Private Sub ucrReceiverRank_Enter(sender As Object, e As EventArgs) Handles ucrReceiverRank.Enter
+ ucrSelectorForRank.SetItemType("column_selection")
+ End Sub
+
End Class
\ No newline at end of file
diff --git a/instat/dlgSelect.vb b/instat/dlgSelect.vb
index 2bc3630c75e..9d9d2acc09f 100644
--- a/instat/dlgSelect.vb
+++ b/instat/dlgSelect.vb
@@ -137,6 +137,12 @@ Public Class dlgSelect
End Sub
Private Sub cmdDefineNewSelect_Click(sender As Object, e As EventArgs) Handles cmdDefineNewSelect.Click
+ If frmMain.IsColumnSelectionApplied Then
+ Dim clsRemoveCurrentSelection As New RFunction
+ clsRemoveCurrentSelection.SetRCommand(frmMain.clsRLink.strInstatDataObject & "$remove_current_column_selection")
+ clsRemoveCurrentSelection.AddParameter("data_name", Chr(34) & ucrSelectorForSelectColumns.strCurrentDataFrame & Chr(34))
+ frmMain.clsRLink.RunScript(clsRemoveCurrentSelection.ToScript, strComment:="Remove current selection")
+ End If
dlgSelectColumns.SetDefaultDataFrame(ucrSelectorForSelectColumns.ucrAvailableDataFrames.strCurrDataFrame)
dlgSelectColumns.ShowDialog()
ucrSelectorForSelectColumns.LoadList()
diff --git a/instat/dlgSpells.vb b/instat/dlgSpells.vb
index d8db2c82eab..81b979c7045 100644
--- a/instat/dlgSpells.vb
+++ b/instat/dlgSpells.vb
@@ -18,7 +18,7 @@ Imports instat.Translations
Public Class dlgSpells
Private bFirstload As Boolean = True
Private bReset As Boolean = True
- Private clsSpellLength, clsMaxSpellManipulation, clsSubSpellLength1 As New RFunction
+ Private clsSpellLength, clsMaxSpellManipulation, clsIfElseFirstDoyFilledFunction, clsSubSpellLength1 As New RFunction
Private clsMaxSpellSummary, clsMaxValueList, clsMaxFunction, clsMaxSpellSubCalcs As New RFunction
Private clsDayFilter, clsGroupBy, clsGroupByStation, clsDayFilterCalcFromConvert, clsDayFilterCalcFromList As New RFunction
Private clsDayFromAndToOperator, clsDayFromOperator, clsDayToOperator As New ROperator
@@ -135,6 +135,7 @@ Public Class dlgSpells
clsRSpellFilterSubFunct = New RFunction
clsSpellFilterFunction = New RFunction
clsDotSpellsFunction = New RFunction
+ clsIfElseFirstDoyFilledFunction = New RFunction
Dim strSpellLogical As String = "spell_day"
Dim strSpellName As String = "spell_length"
@@ -348,7 +349,7 @@ Public Class dlgSpells
End Sub
Private Sub cmdDoyRange_Click(sender As Object, e As EventArgs) Handles cmdDoyRange.Click
- sdgDoyRange.Setup(clsNewDoyFilterCalc:=clsDayFilter, clsNewDayFromOperator:=clsDayFromOperator, clsNewDayToOperator:=clsDayToOperator, clsNewCalcFromList:=clsDayFilterCalcFromList, strNewMainDataFrame:=ucrSelectorForSpells.ucrAvailableDataFrames.cboAvailableDataFrames.Text, strNewDoyColumn:=ucrReceiverDOY.GetVariableNames(False))
+ sdgDoyRange.Setup(clsNewDoyFilterCalc:=clsDayFilter, clsNewIfElseFirstDoyFilledFunction:=clsIfElseFirstDoyFilledFunction, clsNewDayFromOperator:=clsDayFromOperator, clsNewDayToOperator:=clsDayToOperator, clsNewCalcFromList:=clsDayFilterCalcFromList, strNewMainDataFrame:=ucrSelectorForSpells.ucrAvailableDataFrames.cboAvailableDataFrames.Text, strNewDoyColumn:=ucrReceiverDOY.GetVariableNames(False))
sdgDoyRange.ShowDialog()
UpdateDayFilterPreview()
End Sub
diff --git a/instat/dlgStack.vb b/instat/dlgStack.vb
index 0fd8973dba3..e52428347c6 100644
--- a/instat/dlgStack.vb
+++ b/instat/dlgStack.vb
@@ -125,8 +125,8 @@ Public Class dlgStack
ucrPnlCarryColumns.AddRadioButton(rdoCarryAllColumns)
ucrPnlCarryColumns.AddRadioButton(rdoCarryColumns)
- ucrPnlCarryColumns.AddParameterIsRFunctionCondition(rdoCarryAllColumns, "data")
- ucrPnlCarryColumns.AddParameterIsROperatorCondition(rdoCarryColumns, "%>%")
+ ucrPnlCarryColumns.AddParameterValuesCondition(rdoCarryAllColumns, "checked", "all_columns")
+ ucrPnlCarryColumns.AddParameterValuesCondition(rdoCarryColumns, "checked", "columns")
ucrInputValuesTo.SetParameter(New RParameter(" values_to", 4))
ucrInputValuesTo.SetRDefault(Chr(34) & "value" & Chr(34))
@@ -237,6 +237,7 @@ Public Class dlgStack
ucrReceiverColumnsToBeStack.SetMeAsReceiver()
clsDummyFunction.AddParameter("drop", "False", iPosition:=0)
+ clsDummyFunction.AddParameter("checked", "all_columns", iPosition:=1)
clsPivotLongerFunction.SetRCommand("pivot_longer")
clsPivotLongerFunction.SetPackageName("tidyr")
@@ -300,7 +301,6 @@ Public Class dlgStack
ucrChkDropMissingValues.SetRCode(clsPivotLongerFunction, bReset)
ucrInputValuesTo.SetRCode(clsPivotLongerFunction, bReset)
ucrPnlStack.SetRCode(ucrBase.clsRsyntax.clsBaseFunction, bReset)
- ucrPnlCarryColumns.SetRCode(clsPivotLongerFunction, bReset)
ucrInputDropPrefix.SetRCode(clsPivotLongerFunction, bReset)
ucrChkDropPrefix.SetRCode(clsPivotLongerFunction, bReset)
ucrFactorInto.SetRCode(clsReshapeFunction, bReset)
@@ -309,6 +309,7 @@ Public Class dlgStack
ucrReceiverDropValues.SetRCode(clsReshapeFunction, bReset)
ucrChkDropVariables.SetRCode(clsDummyFunction, bReset)
ucrReceiverColumnsToBeStack.SetRCode(clsPivotLongerFunction, bReset)
+ ucrPnlCarryColumns.SetRCode(clsDummyFunction, bReset)
End If
End Sub
diff --git a/instat/dlgStartofRains.vb b/instat/dlgStartofRains.vb
index ca242b4e7c5..a64ddd626b0 100644
--- a/instat/dlgStartofRains.vb
+++ b/instat/dlgStartofRains.vb
@@ -18,12 +18,12 @@ Imports instat.Translations
Public Class dlgStartofRains
Private bResetSubdialog As Boolean = True
- Private clsCalcRainDay, clsCalcStartDOY, clsVectorFunction, clsGetlinkeddataFunction, clsGetDataFrameFunction, clsListevapFunction, clsRollEvaporationFunction, clsFractionEvapFunction, clsSumEvapFunction, clsConvertColumnType1Function, clsConvertColumnType2Function, clsConvertColumnTypeFunction, clsGetColumnDataTypeFunction, clsDummyFunction, clsIfelseStatusFunction, clsIfelseStatus1Function, clsFirstStatusFunction, clsIsNAStatusFunction, clsCalcStartDate, clsCombinationCalc, clsListCalFunction, clsCombinationManipList, clsCombinationSubCalcList, clsListSubCalc, clsManipulationFirstDOYPerYear, clsConditionsFilter, clsCombinedList As New RFunction
+ Private clsCalcRainDay, clsCalcStartDOY, clsConvertssndLinkedVariableFunction, clsDeleteunusedrowFunction, clsRunStartStatus2Function, clsStartRainCombine2Function, clsListFunction, clsNastatus2Function, clsIfElseStatus2Function, clsStatRainStatus2Function, clsSetnameRainStatusFunction, clsSetnameRainFunction, clsCalculatedListformFunction, clsConvertLinkedvariablesvectorFunction, clsConvertLinkedVariablesFunction, clsStationTypeFunction, clsConvertStationtypeFunction, clsVectorFunction, clsGetlinkeddataFunction, clsGetDataFrameFunction, clsListevapFunction, clsRollEvaporationFunction, clsFractionEvapFunction, clsSumEvapFunction, clsConvertColumnType1Function, clsConvertColumnType2Function, clsConvertColumnTypeFunction, clsGetColumnDataTypeFunction, clsDummyFunction, clsIfelseStatusFunction, clsIfelseStatus1Function, clsFirstStatusFunction, clsIsNAStatusFunction, clsCalcStartDate, clsCombinationCalc, clsListCalFunction, clsCombinationManipList, clsCombinationSubCalcList, clsListSubCalc, clsManipulationFirstDOYPerYear, clsConditionsFilter, clsCombinedList As New RFunction
Private clsDayFromAndTo, clsGroupByStation, clsGroupByYear, clsListToTalRain, clsApplyInstatFunction, clsFirstDOY, clsFirstDate As New RFunction
Private clsDayFromAndToOperator, clsEvapOperator, clsDayFromOperator, clsDayToOperator, clsRainDayOperator, clsRainDayConditionOperator, clsConditionsAndOperator, clsTRCombineOperator, clsRollingSumRainDayOperator, clsDSCombineOperator, clsDPCombineOperator As New ROperator
Private clsDayFilterCalcFromConvert, clsDayFilterCalcFromList As New RFunction
- Private clsSpellsFunction As New RFunction
+ Private clsSpellsFunction, clsIfElseFirstDoyFilledFunction As New RFunction
Private clsRainDaySpellsOperator As New ROperator
Private clsConditionsOrOverallOperator As New ROperator
@@ -238,6 +238,10 @@ Public Class dlgStartofRains
Dim strStartDoy As String = "start_rain"
Dim strRollSumRainDryPeriod As String = "roll_sum_rain_dry_period"
Dim strYearType As String = "year_type"
+ Dim strStationType As String = "station_type"
+ Dim strcalculatedfromlist As String = "calculated_from_list"
+ Dim strStartStatus2 As String = "start_rain_status2"
+ Dim strstartraincombinedstatus2 As String = "start_rain_combined_status_2"
clsRainRollingSumFunction = New RFunction
clsGetlinkeddataFunction = New RFunction
@@ -246,6 +250,13 @@ Public Class dlgStartofRains
clsDayFilterCalcFromConvert = New RFunction
clsDayFilterCalcFromList = New RFunction
clsDummyFunction = New RFunction
+ clsIfElseFirstDoyFilledFunction = New RFunction
+ clsConvertLinkedvariablesvectorFunction = New RFunction
+ clsSetnameRainStatusFunction = New RFunction
+ clsSetnameRainFunction = New RFunction
+ clsIfElseStatus2Function = New RFunction
+ clsNastatus2Function = New RFunction
+ clsListFunction = New RFunction
clsDayFromAndTo.Clear()
clsDayFromAndToOperator.Clear()
@@ -275,6 +286,15 @@ Public Class dlgStartofRains
clsEvapOperator.Clear()
clsRollEvaporationFunction.Clear()
clsListevapFunction.Clear()
+ clsStationTypeFunction.Clear()
+ clsConvertStationtypeFunction.Clear()
+ clsConvertLinkedVariablesFunction.Clear()
+ clsCalculatedListformFunction.Clear()
+ clsStatRainStatus2Function.Clear()
+ clsStartRainCombine2Function.Clear()
+ clsRunStartStatus2Function.Clear()
+ clsConvertssndLinkedVariableFunction.Clear()
+ clsDeleteunusedrowFunction.Clear()
clsSpellsFunction.Clear()
clsRainDaySpellsOperator.Clear()
@@ -390,7 +410,7 @@ Public Class dlgStartofRains
clsConvertColumnType1Function.SetRCommand(frmMain.clsRLink.strInstatDataObject & "$convert_column_to_type")
clsConvertColumnType1Function.AddParameter("data_name", Chr(34) & ucrSelectorForStartofRains.ucrAvailableDataFrames.cboAvailableDataFrames.Text & Chr(34), iPosition:=0)
- clsConvertColumnType1Function.AddParameter("to_type", "year_type", iPosition:=2)
+ clsConvertColumnType1Function.AddParameter("to_type", strYearType, iPosition:=2)
'TOTAL RAIN: associated with ucrChkTotalRainfall
clsCalcRainRollingSum.SetRCommand("instat_calculation$new")
@@ -768,8 +788,8 @@ Public Class dlgStartofRains
clsVectorFunction.SetRCommand("c")
clsConvertColumnType2Function.SetRCommand(frmMain.clsRLink.strInstatDataObject & "$convert_column_to_type")
- clsConvertColumnType2Function.AddParameter("data_name", "linked_data_name", iPosition:=0)
- clsConvertColumnType2Function.AddParameter("to_type", "year_type", iPosition:=2)
+ clsConvertColumnType2Function.AddParameter("data_name", Chr(34) & ucrSelectorForStartofRains.ucrAvailableDataFrames.cboAvailableDataFrames.Text & Chr(34), iPosition:=0)
+ clsConvertColumnType2Function.AddParameter("to_type", strStationType, iPosition:=2)
'Run Calculations
clsListCalFunction.SetRCommand("list")
@@ -780,17 +800,82 @@ Public Class dlgStartofRains
clsApplyInstatFunction.AddParameter("calc", clsRFunctionParameter:=clsCombinationCalc, iPosition:=0)
clsApplyInstatFunction.AddParameter("param_list", clsRFunctionParameter:=clsListCalFunction, iPosition:=2)
+ clsStationTypeFunction.SetRCommand(frmMain.clsRLink.strInstatDataObject & "$get_column_data_types")
+ clsStationTypeFunction.AddParameter("data_name", Chr(34) & ucrSelectorForStartofRains.ucrAvailableDataFrames.cboAvailableDataFrames.Text & Chr(34), iPosition:=0)
+ clsStationTypeFunction.SetAssignTo(strStationType)
+
+ clsConvertStationtypeFunction.SetRCommand(frmMain.clsRLink.strInstatDataObject & "$convert_column_to_type")
+ clsConvertStationtypeFunction.AddParameter("data_name", Chr(34) & ucrSelectorForStartofRains.ucrAvailableDataFrames.cboAvailableDataFrames.Text & Chr(34), iPosition:=0)
+ clsConvertStationtypeFunction.AddParameter("to_type", Chr(34) & "factor" & Chr(34), iPosition:=2)
+
+ clsConvertLinkedVariablesFunction.SetRCommand(frmMain.clsRLink.strInstatDataObject & "$convert_linked_variable")
+ clsConvertLinkedVariablesFunction.AddParameter("from_data_frame", Chr(34) & ucrSelectorForStartofRains.ucrAvailableDataFrames.cboAvailableDataFrames.Text & Chr(34), iPosition:=0)
+ clsConvertLinkedVariablesFunction.AddParameter("link_cols", clsRFunctionParameter:=clsConvertLinkedvariablesvectorFunction, iPosition:=2)
+
+ clsConvertLinkedvariablesvectorFunction.SetRCommand("c")
+
+ clsCalculatedListformFunction.SetRCommand("c")
+ clsCalculatedListformFunction.AddParameter("x", clsRFunctionParameter:=clsSetnameRainStatusFunction, iPosition:=0, bIncludeArgumentName:=False)
+ clsCalculatedListformFunction.AddParameter("y", clsRFunctionParameter:=clsSetNameRainFunction, iPosition:=1, bIncludeArgumentName:=False)
+ clsCalculatedListformFunction.SetAssignTo(strcalculatedfromlist)
+
+ clsSetnameRainStatusFunction.SetRCommand("setNames")
+ clsSetnameRainStatusFunction.AddParameter("x", Chr(34) & strStartStatus & Chr(34), iPosition:=0, bIncludeArgumentName:=False)
+ clsSetnameRainStatusFunction.AddParameter("y", "linked_data_name", iPosition:=1, bIncludeArgumentName:=False)
+
+ clsSetnameRainFunction.SetRCommand("setNames")
+ clsSetnameRainFunction.AddParameter("x", Chr(34) & strStartDoy & Chr(34), iPosition:=0, bIncludeArgumentName:=False)
+ clsSetnameRainFunction.AddParameter("y", "linked_data_name", iPosition:=1, bIncludeArgumentName:=False)
+
+ clsStatRainStatus2Function.SetRCommand("instat_calculation$new")
+ clsStatRainStatus2Function.AddParameter("type", Chr(34) & "calculation" & Chr(34), iPosition:=0)
+ clsStatRainStatus2Function.AddParameter("function_exp", clsRFunctionParameter:=clsIfElseStatus2Function, iPosition:=1)
+ clsStatRainStatus2Function.AddParameter("calculated_from", strcalculatedfromlist, iPosition:=2)
+ clsStatRainStatus2Function.AddParameter("result_name", Chr(34) & "start_rain_status" & Chr(34), iPosition:=3)
+ clsStatRainStatus2Function.AddParameter("save", "2", iPosition:=4)
+ clsStatRainStatus2Function.SetAssignTo(strStartStatus2)
+ clsIfElseStatus2Function.SetRCommand("ifelse")
+ clsIfElseStatus2Function.bToScriptAsRString = True
+ clsIfElseStatus2Function.AddParameter("test", clsRFunctionParameter:=clsNastatus2Function, iPosition:=0, bIncludeArgumentName:=False)
+ clsIfElseStatus2Function.AddParameter("yes", "TRUE", iPosition:=1, bIncludeArgumentName:=False)
+ clsIfElseStatus2Function.AddParameter("no", strStartStatus, iPosition:=2, bIncludeArgumentName:=False)
+
+ clsNastatus2Function.SetRCommand("!is.na")
+ clsNastatus2Function.AddParameter("x", strStartDoy, iPosition:=0, bIncludeArgumentName:=False)
+
+ clsStartRainCombine2Function.SetRCommand("instat_calculation$new")
+ clsStartRainCombine2Function.AddParameter("type", Chr(34) & "combination" & Chr(34), iPosition:=0)
+ clsStartRainCombine2Function.AddParameter("sub_calculations", clsRFunctionParameter:=clsListFunction, iPosition:=1)
+ clsStartRainCombine2Function.SetAssignTo(strstartraincombinedstatus2)
+
+ clsListFunction.SetRCommand("list")
+ clsListFunction.AddParameter("x", strStartStatus2, iPosition:=0, bIncludeArgumentName:=False)
+
+ clsRunStartStatus2Function.SetRCommand(frmMain.clsRLink.strInstatDataObject & "$run_instat_calculation")
+ clsRunStartStatus2Function.AddParameter("calc", strstartraincombinedstatus2, iPosition:=0)
+ clsRunStartStatus2Function.AddParameter("display", "FALSE", iPosition:=1)
+ clsRunStartStatus2Function.AddParameter("param_list", clsRFunctionParameter:=clsListCalFunction, iPosition:=2)
+
+ clsConvertssndLinkedVariableFunction.SetRCommand(frmMain.clsRLink.strInstatDataObject & "$convert_linked_variable")
+ clsConvertssndLinkedVariableFunction.AddParameter("from_data_frame", Chr(34) & ucrSelectorForStartofRains.ucrAvailableDataFrames.cboAvailableDataFrames.Text & Chr(34), iPosition:=0)
+ clsConvertssndLinkedVariableFunction.AddParameter("link_cols", clsRFunctionParameter:=clsConvertLinkedvariablesvectorFunction, iPosition:=1)
+
+ clsDeleteunusedrowFunction.SetRCommand(frmMain.clsRLink.strInstatDataObject & "$remove_unused_station_year_combinations")
+ clsDeleteunusedrowFunction.AddParameter("data_name", Chr(34) & ucrSelectorForStartofRains.ucrAvailableDataFrames.cboAvailableDataFrames.Text & Chr(34), iPosition:=0)
+
ucrBase.clsRsyntax.ClearCodes()
ucrBase.clsRsyntax.SetBaseRFunction(clsApplyInstatFunction)
ucrBase.clsRsyntax.AddToBeforeCodes(clsGetColumnDataTypeFunction, iPosition:=0)
ucrBase.clsRsyntax.AddToBeforeCodes(clsConvertColumnTypeFunction, iPosition:=1)
- ucrBase.clsRsyntax.AddToAfterCodes(clsGetlinkeddataFunction, iPosition:=0)
- ucrBase.clsRsyntax.AddToAfterCodes(clsConvertColumnType1Function, iPosition:=1)
- ucrBase.clsRsyntax.AddToAfterCodes(clsConvertColumnType2Function, iPosition:=2)
+ ucrBase.clsRsyntax.AddToBeforeCodes(clsConvertLinkedVariablesFunction, iPosition:=4)
+ ucrBase.clsRsyntax.AddToAfterCodes(clsConvertColumnType1Function, iPosition:=5)
+ ucrBase.clsRsyntax.AddToAfterCodes(clsConvertssndLinkedVariableFunction, iPosition:=8)
SetReceiver()
ChangeDSValue()
AdditionalCondition()
+ GroupByStationOptions()
+ AddRemoveStartStatus()
End Sub
Private Sub SetRCodeForControls(bReset As Boolean)
@@ -807,10 +892,10 @@ Public Class dlgStartofRains
ucrNudTROverDays.AddAdditionalCodeParameterPair(clsRollEvaporationFunction, New RParameter("n", 1), iAdditionalPairNo:=1)
ucrReceiverDOY.SetRCode(clsDayToOperator, bReset)
- ucrChkAsDoy.SetRCode(clsCombinationSubCalcList, bReset)
- ucrChkStatus.SetRCode(clsDummyFunction, bReset)
- ucrChkAsDate.SetRCode(clsDummyFunction, bReset)
If bReset Then
+ ucrChkAsDoy.SetRCode(clsCombinationSubCalcList, bReset)
+ ucrChkStatus.SetRCode(clsDummyFunction, bReset)
+ ucrChkAsDate.SetRCode(clsDummyFunction, bReset)
ucrChkAdditional.SetRCode(clsDummyFunction, bReset)
End If
ucrInputThreshold.SetRCode(clsRainDayOperator, bReset)
@@ -865,7 +950,7 @@ Public Class dlgStartofRains
End Sub
Private Sub cmdDoyRange_Click(sender As Object, e As EventArgs) Handles cmdDoyRange.Click
- sdgDoyRange.Setup(clsNewDoyFilterCalc:=clsDayFromAndTo, clsNewDayFromOperator:=clsDayFromOperator, clsNewDayToOperator:=clsDayToOperator, clsNewCalcFromList:=clsDayFilterCalcFromList, strNewMainDataFrame:=ucrSelectorForStartofRains.ucrAvailableDataFrames.cboAvailableDataFrames.Text, strNewDoyColumn:=ucrReceiverDOY.GetVariableNames(False))
+ sdgDoyRange.Setup(clsNewDoyFilterCalc:=clsDayFromAndTo, clsNewIfElseFirstDoyFilledFunction:=clsIfElseFirstDoyFilledFunction, clsNewDayFromOperator:=clsDayFromOperator, clsNewDayToOperator:=clsDayToOperator, clsNewCalcFromList:=clsDayFilterCalcFromList, strNewMainDataFrame:=ucrSelectorForStartofRains.ucrAvailableDataFrames.cboAvailableDataFrames.Text, strNewDoyColumn:=ucrReceiverDOY.GetVariableNames(False))
sdgDoyRange.ShowDialog()
UpdateDayFilterPreview()
End Sub
@@ -927,15 +1012,31 @@ Public Class dlgStartofRains
Private Sub GroupByStationOptions()
If Not ucrReceiverStation.IsEmpty Then
+ clsDeleteunusedrowFunction.AddParameter("station", ucrReceiverStation.GetVariableNames(), iPosition:=2)
clsCombinationManipList.AddParameter("manip1", clsRFunctionParameter:=clsGroupByStation, bIncludeArgumentName:=False, iPosition:=0)
clsListToTalRain.AddParameter("manip1", clsRFunctionParameter:=clsGroupByStation, bIncludeArgumentName:=False)
clsCalcRainRollingSum.AddParameter("manipulations", clsRFunctionParameter:=clsListToTalRain, iPosition:=4)
clsGroupByStation.AddParameter("calculated_from", "list(" & strCurrDataName & "=" & ucrReceiverStation.GetVariableNames & ")", iPosition:=3)
+ clsConvertStationtypeFunction.AddParameter("col_names", ucrReceiverStation.GetVariableNames(), iPosition:=1)
+ clsConvertLinkedvariablesvectorFunction.AddParameter("y", ucrReceiverStation.GetVariableNames(), iPosition:=1, bIncludeArgumentName:=False)
+ clsStationTypeFunction.AddParameter("columns", ucrReceiverStation.GetVariableNames(), iPosition:=1)
+ clsConvertColumnType2Function.AddParameter("col_names", ucrReceiverStation.GetVariableNames(), iPosition:=1)
+ ucrBase.clsRsyntax.AddToBeforeCodes(clsStationTypeFunction, iPosition:=2)
+ ucrBase.clsRsyntax.AddToBeforeCodes(clsConvertStationtypeFunction, iPosition:=3)
+ ucrBase.clsRsyntax.AddToAfterCodes(clsDeleteunusedrowFunction, iPosition:=7)
Else
+ ucrBase.clsRsyntax.RemoveFromAfterCodes(clsDeleteunusedrowFunction)
+ ucrBase.clsRsyntax.RemoveFromBeforeCodes(clsStationTypeFunction)
+ ucrBase.clsRsyntax.RemoveFromBeforeCodes(clsConvertStationtypeFunction)
+ clsDeleteunusedrowFunction.RemoveParameterByName("station")
+ clsConvertStationtypeFunction.RemoveParameterByName("col_names")
clsCombinationManipList.RemoveParameterByName("manip1")
clsListToTalRain.RemoveParameterByName("manip1")
clsCalcRainRollingSum.RemoveParameterByName("manipulations")
clsGroupByStation.RemoveParameterByName("calculated_from")
+ clsConvertLinkedvariablesvectorFunction.RemoveParameterByName("y")
+ clsStationTypeFunction.RemoveParameterByName("columns")
+ clsConvertColumnType2Function.RemoveParameterByName("col_names")
End If
End Sub
@@ -944,14 +1045,16 @@ Public Class dlgStartofRains
clsGetColumnDataTypeFunction.AddParameter("columns", ucrReceiverYear.GetVariableNames(), iPosition:=1)
clsConvertColumnTypeFunction.AddParameter("col_names", ucrReceiverYear.GetVariableNames(), iPosition:=1)
clsConvertColumnType1Function.AddParameter("col_names", ucrReceiverYear.GetVariableNames(), iPosition:=1)
- clsConvertColumnType2Function.AddParameter("col_names", ucrReceiverYear.GetVariableNames(), iPosition:=1)
+ clsDeleteunusedrowFunction.AddParameter("year", ucrReceiverYear.GetVariableNames(), iPosition:=1)
clsGroupByYear.AddParameter("calculated_from", "list(" & strCurrDataName & "=" & ucrReceiverYear.GetVariableNames & ")", iPosition:=3)
+ clsConvertLinkedvariablesvectorFunction.AddParameter("x", ucrReceiverYear.GetVariableNames(), iPosition:=0, bIncludeArgumentName:=False)
Else
+ clsDeleteunusedrowFunction.RemoveParameterByName("year")
clsGroupByYear.RemoveParameterByName("calculated_from")
clsGetColumnDataTypeFunction.RemoveParameterByName("columns")
clsConvertColumnTypeFunction.RemoveParameterByName("col_names")
clsConvertColumnType1Function.RemoveParameterByName("col_names")
- clsConvertColumnType2Function.RemoveParameterByName("col_names")
+ clsConvertLinkedvariablesvectorFunction.RemoveParameterByName("x")
End If
End Sub
@@ -1024,6 +1127,13 @@ Public Class dlgStartofRains
clsConvertColumnTypeFunction.AddParameter("data_name", Chr(34) & ucrSelectorForStartofRains.ucrAvailableDataFrames.cboAvailableDataFrames.Text & Chr(34), iPosition:=0)
clsConvertColumnType1Function.AddParameter("data_name", Chr(34) & ucrSelectorForStartofRains.ucrAvailableDataFrames.cboAvailableDataFrames.Text & Chr(34), iPosition:=0)
clsGetlinkeddataFunction.AddParameter("data_name", Chr(34) & ucrSelectorForStartofRains.ucrAvailableDataFrames.cboAvailableDataFrames.Text & Chr(34), iPosition:=0, bIncludeArgumentName:=False)
+ clsStationTypeFunction.AddParameter("data_name", Chr(34) & ucrSelectorForStartofRains.ucrAvailableDataFrames.cboAvailableDataFrames.Text & Chr(34), iPosition:=0)
+ clsConvertStationtypeFunction.AddParameter("data_name", Chr(34) & ucrSelectorForStartofRains.ucrAvailableDataFrames.cboAvailableDataFrames.Text & Chr(34), iPosition:=0)
+ clsConvertLinkedVariablesFunction.AddParameter("from_data_frame", Chr(34) & ucrSelectorForStartofRains.ucrAvailableDataFrames.cboAvailableDataFrames.Text & Chr(34), iPosition:=0)
+ clsConvertssndLinkedVariableFunction.AddParameter("from_data_frame", Chr(34) & ucrSelectorForStartofRains.ucrAvailableDataFrames.cboAvailableDataFrames.Text & Chr(34), iPosition:=0)
+ clsDeleteunusedrowFunction.AddParameter("data_name", Chr(34) & ucrSelectorForStartofRains.ucrAvailableDataFrames.cboAvailableDataFrames.Text & Chr(34), iPosition:=0)
+ clsConvertColumnType2Function.AddParameter("data_name", Chr(34) & ucrSelectorForStartofRains.ucrAvailableDataFrames.cboAvailableDataFrames.Text & Chr(34), iPosition:=0)
+
clsDayFilterCalcFromList.ClearParameters()
End Sub
@@ -1056,7 +1166,24 @@ Public Class dlgStartofRains
clsSORStatusSummary.clsSORFilterOperator.AddParameter("left", strParameterValue:=ucrInputNewDoyColumnName.GetText, bIncludeArgumentName:=False, iPosition:=0)
End Sub
+ Private Sub AddRemoveStartStatus()
+ If ucrChkStatus.Checked Then
+ ucrBase.clsRsyntax.AddToAfterCodes(clsGetlinkeddataFunction, iPosition:=0)
+ ucrBase.clsRsyntax.AddToAfterCodes(clsCalculatedListformFunction, iPosition:=1)
+ ucrBase.clsRsyntax.AddToAfterCodes(clsStatRainStatus2Function, iPosition:=2)
+ ucrBase.clsRsyntax.AddToAfterCodes(clsStartRainCombine2Function, iPosition:=3)
+ ucrBase.clsRsyntax.AddToAfterCodes(clsRunStartStatus2Function, iPosition:=4)
+ Else
+ ucrBase.clsRsyntax.RemoveFromAfterCodes(clsGetlinkeddataFunction)
+ ucrBase.clsRsyntax.RemoveFromAfterCodes(clsCalculatedListformFunction)
+ ucrBase.clsRsyntax.RemoveFromAfterCodes(clsStatRainStatus2Function)
+ ucrBase.clsRsyntax.RemoveFromAfterCodes(clsStartRainCombine2Function)
+ ucrBase.clsRsyntax.RemoveFromAfterCodes(clsRunStartStatus2Function)
+ End If
+ End Sub
+
Private Sub ucrChkStatus_ControlValueChanged(ucrChangedControl As ucrCore) Handles ucrChkStatus.ControlValueChanged
+ AddRemoveStartStatus()
If ucrChkStatus.Checked Then
clsCombinationSubCalcList.AddParameter("sub3", clsRFunctionParameter:=clsCalcStatus, bIncludeArgumentName:=False, iPosition:=2)
clsListSubCalc.AddParameter("sub3", clsRFunctionParameter:=clsCalcStatus, bIncludeArgumentName:=False, iPosition:=2)
diff --git a/instat/dlgView.vb b/instat/dlgView.vb
index 2da68d9390f..ad07e6cd2a0 100644
--- a/instat/dlgView.vb
+++ b/instat/dlgView.vb
@@ -61,12 +61,11 @@ Public Class dlgView
ucrChkRowNumbers.AddToLinkedControls(ucrNudNumberRows, {True}, bNewLinkedHideIfParameterMissing:=True, bNewLinkedAddRemoveParameter:=True, bNewLinkedChangeToDefaultState:=True, objNewDefaultState:=6)
-
ucrNudNumberRows.Visible = rdoDispOutputWindow.Checked
ucrReceiverView.SetParameter(New RParameter("x", 1, bNewIncludeArgumentName:=False))
ucrNudNumberRows.SetParameter(New RParameter("n", 1))
- 'ucrNudNumberRows.Minimum = 1
+
ucrNudNumberRows.SetRDefault(6)
ucrNudNumberRows.SetLinkedDisplayControl(lblNumberofRows)
@@ -158,6 +157,7 @@ Public Class dlgView
clsViewColumnsFunction.SetPackageName("utils")
clsViewColumnsFunction.SetRCommand("View")
+
End Sub
Private Sub SetRCodeForControls(bReset As Boolean)
@@ -198,7 +198,6 @@ Public Class dlgView
Else
ucrBase.OKEnabled(False)
End If
-
End Sub
Private Sub ucrBase_ClickReset(sender As Object, e As EventArgs) Handles ucrBase.ClickReset
@@ -217,7 +216,6 @@ Public Class dlgView
ucrSaveData.SetSaveType(RObjectTypeLabel.Table, strRObjectFormat:=RObjectFormat.Text)
If ucrNudNumberRows.GetText <> "" OrElse ucrChkDisplayFromTop.Checked Then
ucrBase.clsRsyntax.SetBaseRFunction(clsOutputWindowFunction)
-
If ucrChkDisplayFromTop.Checked Then
clsOutputWindowFunction.SetRCommand("head")
Else
@@ -231,6 +229,7 @@ Public Class dlgView
ucrBase.clsRsyntax.RemoveFromAfterCodes(clsGetObjectDataFunction)
ucrBase.clsRsyntax.iCallType = 0
ucrBase.clsRsyntax.SetBaseRFunction(clsViewColumnsFunction)
+ clsViewColumnsFunction.AddParameter(strParameterName:="title", Chr(34) & ucrSelectorForView.strCurrentDataFrame & Chr(34), iPosition:=2)
ucrSaveData.Visible = False
cmdTableOptions.Visible = False
ucrSaveData.Visible = False
@@ -271,6 +270,8 @@ Public Class dlgView
Private Sub ucrSelectorForView_ControlValueChanged(ucrChangedControl As ucrCore) Handles ucrSelectorForView.ControlValueChanged
DataFrameLength()
+ clsOutputWindowFunction.AddParameter("data", clsRFunctionParameter:=ucrSelectorForView.ucrAvailableDataFrames.clsCurrDataFrame, iPosition:=0)
+ clsHeadRFunction.AddParameter("data", clsRFunctionParameter:=ucrSelectorForView.ucrAvailableDataFrames.clsCurrDataFrame, iPosition:=0)
End Sub
Private Sub cmdTableOptions_Click(sender As Object, e As EventArgs) Handles cmdTableOptions.Click
diff --git a/instat/dlgViewGraph.Designer.vb b/instat/dlgViewGraph.Designer.vb
index e92f9875b32..8b80ba15a17 100644
--- a/instat/dlgViewGraph.Designer.vb
+++ b/instat/dlgViewGraph.Designer.vb
@@ -39,15 +39,15 @@ Partial Class dlgViewGraph
Private Sub InitializeComponent()
Me.grpDisplayOptions = New System.Windows.Forms.GroupBox()
+ Me.rdoMaximised = New System.Windows.Forms.RadioButton()
Me.rdoInteractiveView = New System.Windows.Forms.RadioButton()
Me.rdoRViewer = New System.Windows.Forms.RadioButton()
Me.rdoOutputWindow = New System.Windows.Forms.RadioButton()
+ Me.ucrPnlDisplayOptions = New instat.UcrPanel()
Me.lblGraphtoUse = New System.Windows.Forms.Label()
Me.ucrGraphReceiver = New instat.ucrReceiverSingle()
- Me.ucrPnlDisplayOptions = New instat.UcrPanel()
Me.ucrGraphsSelector = New instat.ucrSelectorByDataFrameAddRemove()
Me.ucrBase = New instat.ucrButtons()
- Me.rdoMaximised = New System.Windows.Forms.RadioButton()
Me.grpDisplayOptions.SuspendLayout()
Me.SuspendLayout()
'
@@ -58,22 +58,30 @@ Partial Class dlgViewGraph
Me.grpDisplayOptions.Controls.Add(Me.rdoRViewer)
Me.grpDisplayOptions.Controls.Add(Me.rdoOutputWindow)
Me.grpDisplayOptions.Controls.Add(Me.ucrPnlDisplayOptions)
- Me.grpDisplayOptions.Location = New System.Drawing.Point(369, 135)
- Me.grpDisplayOptions.Margin = New System.Windows.Forms.Padding(4, 4, 4, 4)
+ Me.grpDisplayOptions.Location = New System.Drawing.Point(246, 90)
Me.grpDisplayOptions.Name = "grpDisplayOptions"
- Me.grpDisplayOptions.Padding = New System.Windows.Forms.Padding(4, 4, 4, 4)
- Me.grpDisplayOptions.Size = New System.Drawing.Size(326, 186)
+ Me.grpDisplayOptions.Size = New System.Drawing.Size(217, 124)
Me.grpDisplayOptions.TabIndex = 3
Me.grpDisplayOptions.TabStop = False
Me.grpDisplayOptions.Text = "Display Options"
'
+ 'rdoMaximised
+ '
+ Me.rdoMaximised.AutoSize = True
+ Me.rdoMaximised.Location = New System.Drawing.Point(9, 43)
+ Me.rdoMaximised.Name = "rdoMaximised"
+ Me.rdoMaximised.Size = New System.Drawing.Size(113, 17)
+ Me.rdoMaximised.TabIndex = 4
+ Me.rdoMaximised.TabStop = True
+ Me.rdoMaximised.Text = "Maximised window"
+ Me.rdoMaximised.UseVisualStyleBackColor = True
+ '
'rdoInteractiveView
'
Me.rdoInteractiveView.AutoSize = True
- Me.rdoInteractiveView.Location = New System.Drawing.Point(14, 98)
- Me.rdoInteractiveView.Margin = New System.Windows.Forms.Padding(4, 4, 4, 4)
+ Me.rdoInteractiveView.Location = New System.Drawing.Point(9, 65)
Me.rdoInteractiveView.Name = "rdoInteractiveView"
- Me.rdoInteractiveView.Size = New System.Drawing.Size(203, 24)
+ Me.rdoInteractiveView.Size = New System.Drawing.Size(140, 17)
Me.rdoInteractiveView.TabIndex = 1
Me.rdoInteractiveView.TabStop = True
Me.rdoInteractiveView.Text = "Interactive viewer(Plotly)"
@@ -82,10 +90,9 @@ Partial Class dlgViewGraph
'rdoRViewer
'
Me.rdoRViewer.AutoSize = True
- Me.rdoRViewer.Location = New System.Drawing.Point(10, 130)
- Me.rdoRViewer.Margin = New System.Windows.Forms.Padding(4, 4, 4, 4)
+ Me.rdoRViewer.Location = New System.Drawing.Point(9, 87)
Me.rdoRViewer.Name = "rdoRViewer"
- Me.rdoRViewer.Size = New System.Drawing.Size(99, 24)
+ Me.rdoRViewer.Size = New System.Drawing.Size(68, 17)
Me.rdoRViewer.TabIndex = 2
Me.rdoRViewer.TabStop = True
Me.rdoRViewer.Text = "R-Viewer"
@@ -94,22 +101,29 @@ Partial Class dlgViewGraph
'rdoOutputWindow
'
Me.rdoOutputWindow.AutoSize = True
- Me.rdoOutputWindow.Location = New System.Drawing.Point(14, 33)
- Me.rdoOutputWindow.Margin = New System.Windows.Forms.Padding(4, 4, 4, 4)
+ Me.rdoOutputWindow.Location = New System.Drawing.Point(9, 22)
Me.rdoOutputWindow.Name = "rdoOutputWindow"
- Me.rdoOutputWindow.Size = New System.Drawing.Size(139, 24)
+ Me.rdoOutputWindow.Size = New System.Drawing.Size(96, 17)
Me.rdoOutputWindow.TabIndex = 3
Me.rdoOutputWindow.TabStop = True
Me.rdoOutputWindow.Text = "Output window"
Me.rdoOutputWindow.UseVisualStyleBackColor = True
'
+ 'ucrPnlDisplayOptions
+ '
+ Me.ucrPnlDisplayOptions.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink
+ Me.ucrPnlDisplayOptions.Location = New System.Drawing.Point(6, 19)
+ Me.ucrPnlDisplayOptions.Margin = New System.Windows.Forms.Padding(6, 6, 6, 6)
+ Me.ucrPnlDisplayOptions.Name = "ucrPnlDisplayOptions"
+ Me.ucrPnlDisplayOptions.Size = New System.Drawing.Size(203, 99)
+ Me.ucrPnlDisplayOptions.TabIndex = 0
+ '
'lblGraphtoUse
'
Me.lblGraphtoUse.AutoSize = True
- Me.lblGraphtoUse.Location = New System.Drawing.Point(375, 68)
- Me.lblGraphtoUse.Margin = New System.Windows.Forms.Padding(4, 0, 4, 0)
+ Me.lblGraphtoUse.Location = New System.Drawing.Point(250, 45)
Me.lblGraphtoUse.Name = "lblGraphtoUse"
- Me.lblGraphtoUse.Size = New System.Drawing.Size(114, 20)
+ Me.lblGraphtoUse.Size = New System.Drawing.Size(77, 13)
Me.lblGraphtoUse.TabIndex = 1
Me.lblGraphtoUse.Text = "Graph to View:"
'
@@ -117,71 +131,49 @@ Partial Class dlgViewGraph
'
Me.ucrGraphReceiver.AutoSize = True
Me.ucrGraphReceiver.frmParent = Me
- Me.ucrGraphReceiver.Location = New System.Drawing.Point(375, 90)
+ Me.ucrGraphReceiver.Location = New System.Drawing.Point(250, 60)
Me.ucrGraphReceiver.Margin = New System.Windows.Forms.Padding(0)
Me.ucrGraphReceiver.Name = "ucrGraphReceiver"
Me.ucrGraphReceiver.Selector = Nothing
- Me.ucrGraphReceiver.Size = New System.Drawing.Size(180, 30)
+ Me.ucrGraphReceiver.Size = New System.Drawing.Size(120, 20)
Me.ucrGraphReceiver.strNcFilePath = ""
Me.ucrGraphReceiver.TabIndex = 2
Me.ucrGraphReceiver.ucrSelector = Nothing
'
- 'ucrPnlDisplayOptions
- '
- Me.ucrPnlDisplayOptions.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink
- Me.ucrPnlDisplayOptions.Location = New System.Drawing.Point(9, 28)
- Me.ucrPnlDisplayOptions.Margin = New System.Windows.Forms.Padding(9)
- Me.ucrPnlDisplayOptions.Name = "ucrPnlDisplayOptions"
- Me.ucrPnlDisplayOptions.Size = New System.Drawing.Size(304, 148)
- Me.ucrPnlDisplayOptions.TabIndex = 0
- '
'ucrGraphsSelector
'
Me.ucrGraphsSelector.AutoSize = True
Me.ucrGraphsSelector.bDropUnusedFilterLevels = False
Me.ucrGraphsSelector.bShowHiddenColumns = False
Me.ucrGraphsSelector.bUseCurrentFilter = True
- Me.ucrGraphsSelector.Location = New System.Drawing.Point(15, 15)
+ Me.ucrGraphsSelector.Location = New System.Drawing.Point(10, 10)
Me.ucrGraphsSelector.Margin = New System.Windows.Forms.Padding(0)
Me.ucrGraphsSelector.Name = "ucrGraphsSelector"
- Me.ucrGraphsSelector.Size = New System.Drawing.Size(320, 274)
+ Me.ucrGraphsSelector.Size = New System.Drawing.Size(213, 183)
Me.ucrGraphsSelector.TabIndex = 0
'
'ucrBase
'
Me.ucrBase.AutoSize = True
Me.ucrBase.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink
- Me.ucrBase.Location = New System.Drawing.Point(15, 330)
- Me.ucrBase.Margin = New System.Windows.Forms.Padding(6)
+ Me.ucrBase.Location = New System.Drawing.Point(10, 220)
+ Me.ucrBase.Margin = New System.Windows.Forms.Padding(4, 4, 4, 4)
Me.ucrBase.Name = "ucrBase"
- Me.ucrBase.Size = New System.Drawing.Size(611, 77)
+ Me.ucrBase.Size = New System.Drawing.Size(408, 52)
Me.ucrBase.TabIndex = 4
'
- 'rdoMaximised
- '
- Me.rdoMaximised.AutoSize = True
- Me.rdoMaximised.Location = New System.Drawing.Point(14, 65)
- Me.rdoMaximised.Margin = New System.Windows.Forms.Padding(4)
- Me.rdoMaximised.Name = "rdoMaximised"
- Me.rdoMaximised.Size = New System.Drawing.Size(164, 24)
- Me.rdoMaximised.TabIndex = 4
- Me.rdoMaximised.TabStop = True
- Me.rdoMaximised.Text = "Maximised window"
- Me.rdoMaximised.UseVisualStyleBackColor = True
- '
'dlgViewGraph
'
- Me.AutoScaleDimensions = New System.Drawing.SizeF(144.0!, 144.0!)
+ Me.AutoScaleDimensions = New System.Drawing.SizeF(96.0!, 96.0!)
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi
Me.AutoSize = True
- Me.ClientSize = New System.Drawing.Size(706, 414)
+ Me.ClientSize = New System.Drawing.Size(471, 276)
Me.Controls.Add(Me.ucrGraphReceiver)
Me.Controls.Add(Me.lblGraphtoUse)
Me.Controls.Add(Me.grpDisplayOptions)
Me.Controls.Add(Me.ucrGraphsSelector)
Me.Controls.Add(Me.ucrBase)
Me.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedToolWindow
- Me.Margin = New System.Windows.Forms.Padding(4, 4, 4, 4)
Me.MaximizeBox = False
Me.MinimizeBox = False
Me.Name = "dlgViewGraph"
diff --git a/instat/dlgViewGraph.vb b/instat/dlgViewGraph.vb
index 4151d80d9c4..151b125fda4 100644
--- a/instat/dlgViewGraph.vb
+++ b/instat/dlgViewGraph.vb
@@ -40,6 +40,7 @@ Public Class dlgViewGraph
Private Sub InitialiseDialog()
ucrBase.iHelpTopicID = 525
+ ucrBase.clsRsyntax.bSeparateThread = False
'Selector
ucrGraphsSelector.SetParameter(New RParameter("data_name", 0))
@@ -63,7 +64,6 @@ Public Class dlgViewGraph
'todo. Calling print() from this dialog doesn't work. investigate why
'temporarily disabled
- rdoRViewer.Enabled = False
End Sub
Private Sub SetDefaults()
@@ -125,8 +125,7 @@ Public Class dlgViewGraph
clsGetObjectRFunction.AddParameter("as_file", strParameterValue:="FALSE", iPosition:=2)
ucrBase.clsRsyntax.SetBaseRFunction(clsViewObjectRFunction)
ElseIf rdoRViewer.Checked Then
- 'clsViewObjectRFunction.AddParameter("object", clsRFunctionParameter:=clsGetObjectRFunction)
- 'clsViewObjectRFunction.RemoveParameterByName("object_format")
+ clsGetObjectRFunction.AddParameter("as_file", strParameterValue:="FALSE", iPosition:=2)
ucrBase.clsRsyntax.SetBaseRFunction(clsPrintRFunction)
End If
End Sub
diff --git a/instat/frmMain.Designer.vb b/instat/frmMain.Designer.vb
index a12244e8138..eea0678acb3 100644
--- a/instat/frmMain.Designer.vb
+++ b/instat/frmMain.Designer.vb
@@ -322,6 +322,7 @@ Partial Class frmMain
Me.mnuClimaticMappingMap = New System.Windows.Forms.ToolStripMenuItem()
Me.mnuClimaticMappingCheckStationLocations = New System.Windows.Forms.ToolStripMenuItem()
Me.mnuClimaticModel = New System.Windows.Forms.ToolStripMenuItem()
+ Me.mnuClimaticModelOutfilling = New System.Windows.Forms.ToolStripMenuItem()
Me.mnuClimaticModelsExtremes = New System.Windows.Forms.ToolStripMenuItem()
Me.mnuClimaticModelCircular = New System.Windows.Forms.ToolStripMenuItem()
Me.mnuClimaticModelMarkovModelling = New System.Windows.Forms.ToolStripMenuItem()
@@ -1512,7 +1513,7 @@ Partial Class frmMain
'ToolStripSeparator22
'
Me.ToolStripSeparator22.Name = "ToolStripSeparator22"
- Me.ToolStripSeparator22.Size = New System.Drawing.Size(210, 6)
+ Me.ToolStripSeparator22.Size = New System.Drawing.Size(323, 6)
'
'mnuViewStructuredMenu
'
@@ -1521,13 +1522,6 @@ Partial Class frmMain
Me.mnuViewStructuredMenu.Size = New System.Drawing.Size(326, 34)
Me.mnuViewStructuredMenu.Text = "Structured Menu"
'
-
- 'ToolStripSeparator22
- '
- Me.ToolStripSeparator22.Name = "ToolStripSeparator22"
- Me.ToolStripSeparator22.Size = New System.Drawing.Size(323, 6)
- '
-
'mnuViewClimaticMenu
'
Me.mnuViewClimaticMenu.ImageScaling = System.Windows.Forms.ToolStripItemImageScaling.None
@@ -1548,13 +1542,8 @@ Partial Class frmMain
'
Me.mnuViewOptionsByContextMenu.ImageScaling = System.Windows.Forms.ToolStripItemImageScaling.None
Me.mnuViewOptionsByContextMenu.Name = "mnuViewOptionsByContextMenu"
-
- Me.mnuViewOptionsByContextMenu.Size = New System.Drawing.Size(213, 22)
- Me.mnuViewOptionsByContextMenu.Text = "Experiments Menu"
-
Me.mnuViewOptionsByContextMenu.Size = New System.Drawing.Size(326, 34)
Me.mnuViewOptionsByContextMenu.Text = "Experiments"
-
'
'ToolStripSeparator39
'
@@ -2574,11 +2563,18 @@ Partial Class frmMain
'
'mnuClimaticModel
'
- Me.mnuClimaticModel.DropDownItems.AddRange(New System.Windows.Forms.ToolStripItem() {Me.mnuClimaticModelsExtremes, Me.mnuClimaticModelCircular, Me.mnuClimaticModelMarkovModelling})
+ Me.mnuClimaticModel.DropDownItems.AddRange(New System.Windows.Forms.ToolStripItem() {Me.mnuClimaticModelOutfilling, Me.mnuClimaticModelsExtremes, Me.mnuClimaticModelCircular, Me.mnuClimaticModelMarkovModelling})
Me.mnuClimaticModel.Name = "mnuClimaticModel"
Me.mnuClimaticModel.Size = New System.Drawing.Size(325, 34)
Me.mnuClimaticModel.Text = "Model"
'
+ 'mnuClimaticModelOutfilling
+ '
+ Me.mnuClimaticModelOutfilling.Enabled = False
+ Me.mnuClimaticModelOutfilling.Name = "mnuClimaticModelOutfilling"
+ Me.mnuClimaticModelOutfilling.Size = New System.Drawing.Size(271, 34)
+ Me.mnuClimaticModelOutfilling.Text = "Outfilling..."
+ '
'mnuClimaticModelsExtremes
'
Me.mnuClimaticModelsExtremes.Name = "mnuClimaticModelsExtremes"
@@ -3229,16 +3225,13 @@ Partial Class frmMain
Me.mnuDataViewWindow.ImageScaling = System.Windows.Forms.ToolStripItemImageScaling.None
Me.mnuDataViewWindow.Name = "mnuDataViewWindow"
Me.mnuDataViewWindow.Size = New System.Drawing.Size(226, 34)
- Me.mnuDataViewWindow.Size = New System.Drawing.Size(148, 22)
Me.mnuDataViewWindow.Text = "Data View"
'
'mnuRDataViewerWindow
'
- Me.mnuRDataViewerWindow.Enabled = False
Me.mnuRDataViewerWindow.ImageScaling = System.Windows.Forms.ToolStripItemImageScaling.None
Me.mnuRDataViewerWindow.Name = "mnuRDataViewerWindow"
Me.mnuRDataViewerWindow.Size = New System.Drawing.Size(226, 34)
- Me.mnuRDataViewerWindow.Size = New System.Drawing.Size(148, 22)
Me.mnuRDataViewerWindow.Text = "R-Data Viewer"
'
'mnuTbOutput
@@ -3462,7 +3455,6 @@ Partial Class frmMain
Me.mnuBar.LayoutStyle = System.Windows.Forms.ToolStripLayoutStyle.HorizontalStackWithOverflow
Me.mnuBar.Location = New System.Drawing.Point(0, 0)
Me.mnuBar.Name = "mnuBar"
- Me.mnuBar.Padding = New System.Windows.Forms.Padding(6, 2, 0, 2)
Me.mnuBar.RenderMode = System.Windows.Forms.ToolStripRenderMode.System
Me.mnuBar.ShowItemToolTips = True
Me.mnuBar.Size = New System.Drawing.Size(1251, 33)
@@ -4916,11 +4908,7 @@ Partial Class frmMain
'
Me.mnuOptionsByContextCheckData.DropDownItems.AddRange(New System.Windows.Forms.ToolStripItem() {Me.mnuOptionsByContextCheckDataDuplicateRows, Me.mnuOptionsByContextCheckDataCompareColumns, Me.ToolStripSeparator47, Me.mnuOptionsByContextCheckDataOneVariableSummarise, Me.mnuOptionsByContextCheckDataOneVariableGraph, Me.mnuOptionsByContextCheckDataOneVariableFrequencies})
Me.mnuOptionsByContextCheckData.Name = "mnuOptionsByContextCheckData"
-
- Me.mnuOptionsByContextCheckData.Size = New System.Drawing.Size(180, 22)
-
Me.mnuOptionsByContextCheckData.Size = New System.Drawing.Size(209, 34)
-
Me.mnuOptionsByContextCheckData.Text = "Check Data"
'
'mnuOptionsByContextCheckDataDuplicateRows
@@ -4962,11 +4950,7 @@ Partial Class frmMain
'
Me.mnuOptionsByContextDefine.DropDownItems.AddRange(New System.Windows.Forms.ToolStripItem() {Me.mnuOptionsByContextDefineOnStation, Me.mnuOptionsByContextDefineOnFarm})
Me.mnuOptionsByContextDefine.Name = "mnuOptionsByContextDefine"
-
- Me.mnuOptionsByContextDefine.Size = New System.Drawing.Size(180, 22)
-
Me.mnuOptionsByContextDefine.Size = New System.Drawing.Size(209, 34)
-
Me.mnuOptionsByContextDefine.Text = "Define"
'
'mnuOptionsByContextDefineOnStation
@@ -4985,11 +4969,7 @@ Partial Class frmMain
'
Me.mnuOptionsByContextPrepare.DropDownItems.AddRange(New System.Windows.Forms.ToolStripItem() {Me.mnuOptionsByContextPrepareCalculateDIfferenceBetweenOptions, Me.ToolStripSeparator48, Me.mnuOptionsByContextMergeAdditionalData, Me.mnuOptionsByContextPrepareStack, Me.mnuOptionsByContextPrepareUnstack})
Me.mnuOptionsByContextPrepare.Name = "mnuOptionsByContextPrepare"
-
- Me.mnuOptionsByContextPrepare.Size = New System.Drawing.Size(180, 22)
-
Me.mnuOptionsByContextPrepare.Size = New System.Drawing.Size(209, 34)
-
Me.mnuOptionsByContextPrepare.Text = "Prepare"
'
'mnuOptionsByContextPrepareCalculateDIfferenceBetweenOptions
@@ -5025,11 +5005,7 @@ Partial Class frmMain
'
Me.mnuOptionsByContextDescribe.DropDownItems.AddRange(New System.Windows.Forms.ToolStripItem() {Me.mnuOptionsByContextDescribeCompareTwoTreatments, Me.mnuOptionsByContextDescribeCompareMultipleTreatments, Me.mnuOptionsByContextDescribeBoxplot})
Me.mnuOptionsByContextDescribe.Name = "mnuOptionsByContextDescribe"
-
- Me.mnuOptionsByContextDescribe.Size = New System.Drawing.Size(180, 22)
-
Me.mnuOptionsByContextDescribe.Size = New System.Drawing.Size(209, 34)
-
Me.mnuOptionsByContextDescribe.Text = "Describe"
'
'mnuOptionsByContextDescribeCompareTwoTreatments
@@ -5055,11 +5031,7 @@ Partial Class frmMain
'
Me.mnuOptionsByContextModel.DropDownItems.AddRange(New System.Windows.Forms.ToolStripItem() {Me.mnuOptionsByContextModelFitModel, Me.mnuOptionsByContextGeneralFitModel})
Me.mnuOptionsByContextModel.Name = "mnuOptionsByContextModel"
-
- Me.mnuOptionsByContextModel.Size = New System.Drawing.Size(180, 22)
-
Me.mnuOptionsByContextModel.Size = New System.Drawing.Size(209, 34)
-
Me.mnuOptionsByContextModel.Text = "Model"
'
'mnuOptionsByContextModelFitModel
@@ -5078,11 +5050,7 @@ Partial Class frmMain
'
Me.mnuOptionsByContextCropModel.DropDownItems.AddRange(New System.Windows.Forms.ToolStripItem() {Me.mnuOptionsByContextCropModelApsimxExamples})
Me.mnuOptionsByContextCropModel.Name = "mnuOptionsByContextCropModel"
-
- Me.mnuOptionsByContextCropModel.Size = New System.Drawing.Size(180, 22)
-
Me.mnuOptionsByContextCropModel.Size = New System.Drawing.Size(209, 34)
-
Me.mnuOptionsByContextCropModel.Text = "Crop Model"
'
'mnuOptionsByContextCropModelApsimxExamples
@@ -5172,7 +5140,7 @@ Partial Class frmMain
Me.splOverall.BackColor = System.Drawing.Color.LightGray
Me.splOverall.Dock = System.Windows.Forms.DockStyle.Fill
Me.splOverall.Location = New System.Drawing.Point(0, 72)
- Me.splOverall.Margin = New System.Windows.Forms.Padding(4, 4, 4, 4)
+ Me.splOverall.Margin = New System.Windows.Forms.Padding(4)
Me.splOverall.Name = "splOverall"
Me.splOverall.Orientation = System.Windows.Forms.Orientation.Horizontal
'
@@ -5186,7 +5154,7 @@ Partial Class frmMain
Me.splOverall.Panel2.BackColor = System.Drawing.SystemColors.Control
Me.splOverall.Panel2.Controls.Add(Me.splDataOutput)
Me.splOverall.Size = New System.Drawing.Size(1251, 619)
- Me.splOverall.SplitterDistance = 246
+ Me.splOverall.SplitterDistance = 245
Me.splOverall.SplitterWidth = 8
Me.splOverall.TabIndex = 10
'
@@ -5195,7 +5163,7 @@ Partial Class frmMain
Me.splExtraWindows.BackColor = System.Drawing.Color.LightGray
Me.splExtraWindows.Dock = System.Windows.Forms.DockStyle.Fill
Me.splExtraWindows.Location = New System.Drawing.Point(0, 0)
- Me.splExtraWindows.Margin = New System.Windows.Forms.Padding(4, 4, 4, 4)
+ Me.splExtraWindows.Margin = New System.Windows.Forms.Padding(4)
Me.splExtraWindows.Name = "splExtraWindows"
'
'splExtraWindows.Panel1
@@ -5207,7 +5175,7 @@ Partial Class frmMain
'
Me.splExtraWindows.Panel2.BackColor = System.Drawing.SystemColors.Control
Me.splExtraWindows.Panel2.Controls.Add(Me.ucrScriptWindow)
- Me.splExtraWindows.Size = New System.Drawing.Size(1251, 246)
+ Me.splExtraWindows.Size = New System.Drawing.Size(1251, 245)
Me.splExtraWindows.SplitterDistance = 378
Me.splExtraWindows.SplitterWidth = 8
Me.splExtraWindows.TabIndex = 0
@@ -5217,7 +5185,7 @@ Partial Class frmMain
Me.splMetadata.BackColor = System.Drawing.Color.LightGray
Me.splMetadata.Dock = System.Windows.Forms.DockStyle.Fill
Me.splMetadata.Location = New System.Drawing.Point(0, 0)
- Me.splMetadata.Margin = New System.Windows.Forms.Padding(4, 4, 4, 4)
+ Me.splMetadata.Margin = New System.Windows.Forms.Padding(4)
Me.splMetadata.Name = "splMetadata"
'
'splMetadata.Panel1
@@ -5228,7 +5196,7 @@ Partial Class frmMain
'
Me.splMetadata.Panel2.BackColor = System.Drawing.SystemColors.Control
Me.splMetadata.Panel2.Controls.Add(Me.ucrDataFrameMeta)
- Me.splMetadata.Size = New System.Drawing.Size(378, 246)
+ Me.splMetadata.Size = New System.Drawing.Size(378, 245)
Me.splMetadata.SplitterDistance = 102
Me.splMetadata.SplitterWidth = 8
Me.splMetadata.TabIndex = 0
@@ -5242,7 +5210,7 @@ Partial Class frmMain
Me.ucrColumnMeta.Location = New System.Drawing.Point(0, 0)
Me.ucrColumnMeta.Margin = New System.Windows.Forms.Padding(6, 8, 6, 8)
Me.ucrColumnMeta.Name = "ucrColumnMeta"
- Me.ucrColumnMeta.Size = New System.Drawing.Size(102, 246)
+ Me.ucrColumnMeta.Size = New System.Drawing.Size(102, 245)
Me.ucrColumnMeta.TabIndex = 0
'
'ucrDataFrameMeta
@@ -5253,7 +5221,7 @@ Partial Class frmMain
Me.ucrDataFrameMeta.Location = New System.Drawing.Point(0, 0)
Me.ucrDataFrameMeta.Margin = New System.Windows.Forms.Padding(6, 8, 6, 8)
Me.ucrDataFrameMeta.Name = "ucrDataFrameMeta"
- Me.ucrDataFrameMeta.Size = New System.Drawing.Size(268, 246)
+ Me.ucrDataFrameMeta.Size = New System.Drawing.Size(268, 245)
Me.ucrDataFrameMeta.TabIndex = 0
'
'ucrScriptWindow
@@ -5264,7 +5232,7 @@ Partial Class frmMain
Me.ucrScriptWindow.Location = New System.Drawing.Point(0, 0)
Me.ucrScriptWindow.Margin = New System.Windows.Forms.Padding(6, 8, 6, 8)
Me.ucrScriptWindow.Name = "ucrScriptWindow"
- Me.ucrScriptWindow.Size = New System.Drawing.Size(865, 246)
+ Me.ucrScriptWindow.Size = New System.Drawing.Size(865, 245)
Me.ucrScriptWindow.strActiveTabText = ""
Me.ucrScriptWindow.TabIndex = 2
Me.ucrScriptWindow.Tag = "Script_Window"
@@ -5274,7 +5242,7 @@ Partial Class frmMain
Me.splDataOutput.BackColor = System.Drawing.Color.LightGray
Me.splDataOutput.Dock = System.Windows.Forms.DockStyle.Fill
Me.splDataOutput.Location = New System.Drawing.Point(0, 0)
- Me.splDataOutput.Margin = New System.Windows.Forms.Padding(4, 4, 4, 4)
+ Me.splDataOutput.Margin = New System.Windows.Forms.Padding(4)
Me.splDataOutput.Name = "splDataOutput"
'
'splDataOutput.Panel1
@@ -5286,7 +5254,7 @@ Partial Class frmMain
'
Me.splDataOutput.Panel2.BackColor = System.Drawing.SystemColors.Control
Me.splDataOutput.Panel2.Controls.Add(Me.ucrOutput)
- Me.splDataOutput.Size = New System.Drawing.Size(1251, 365)
+ Me.splDataOutput.Size = New System.Drawing.Size(1251, 366)
Me.splDataOutput.SplitterDistance = 573
Me.splDataOutput.SplitterWidth = 8
Me.splDataOutput.TabIndex = 0
@@ -5300,7 +5268,7 @@ Partial Class frmMain
Me.ucrDataViewer.Location = New System.Drawing.Point(0, 0)
Me.ucrDataViewer.Margin = New System.Windows.Forms.Padding(6, 8, 6, 8)
Me.ucrDataViewer.Name = "ucrDataViewer"
- Me.ucrDataViewer.Size = New System.Drawing.Size(573, 365)
+ Me.ucrDataViewer.Size = New System.Drawing.Size(573, 366)
Me.ucrDataViewer.TabIndex = 0
Me.ucrDataViewer.Tag = "Data_View"
'
@@ -5312,7 +5280,7 @@ Partial Class frmMain
Me.ucrOutput.Location = New System.Drawing.Point(0, 0)
Me.ucrOutput.Margin = New System.Windows.Forms.Padding(6, 8, 6, 8)
Me.ucrOutput.Name = "ucrOutput"
- Me.ucrOutput.Size = New System.Drawing.Size(670, 365)
+ Me.ucrOutput.Size = New System.Drawing.Size(670, 366)
Me.ucrOutput.TabIndex = 0
'
'mnuPlotly
@@ -5362,7 +5330,7 @@ Partial Class frmMain
Me.Icon = CType(resources.GetObject("$this.Icon"), System.Drawing.Icon)
Me.IsMdiContainer = True
Me.MainMenuStrip = Me.mnuBar
- Me.Margin = New System.Windows.Forms.Padding(4, 4, 4, 4)
+ Me.Margin = New System.Windows.Forms.Padding(4)
Me.Name = "frmMain"
Me.Text = "R-Instat .."
Me.WindowState = System.Windows.Forms.FormWindowState.Maximized
@@ -6082,4 +6050,5 @@ Partial Class frmMain
Friend WithEvents mnuTbDataView As ToolStripSplitButton
Friend WithEvents mnuDataViewWindow As ToolStripMenuItem
Friend WithEvents mnuRDataViewerWindow As ToolStripMenuItem
+ Friend WithEvents mnuClimaticModelOutfilling As ToolStripMenuItem
End Class
diff --git a/instat/frmMain.vb b/instat/frmMain.vb
index 15ba754f7a2..5542b19b797 100644
--- a/instat/frmMain.vb
+++ b/instat/frmMain.vb
@@ -223,9 +223,15 @@ Public Class frmMain
'---------------------------------------
'--------------------------------------
- CreateAdditionalLibraryDirectory()
+ Dim strVersion As String = My.Application.Info.Version.Major.ToString() & "." &
+ My.Application.Info.Version.Minor.ToString() & "." &
+ My.Application.Info.Version.Build.ToString()
+
+ Me.Text = "R-Instat " & strVersion
+
+ CreateAdditionalLibraryDirectory(strVersion)
'-------------------------------------
- SetAppVersionNumber()
+
isMaximised = True 'Need to get the windowstate when the application is loaded
SetHideMenus()
@@ -413,9 +419,9 @@ Public Class frmMain
End If
End Function
- Private Sub CreateAdditionalLibraryDirectory()
+ Private Sub CreateAdditionalLibraryDirectory(strVersion As String)
' Define the custom library path in the ApplicationData folder
- Dim strLibraryPath As String = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData), "R-Instat", "library")
+ Dim strLibraryPath As String = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData), "R-Instat", strVersion, "library")
Try
' Check if the directory exists, if not, create it
@@ -423,18 +429,15 @@ Public Class frmMain
Directory.CreateDirectory(strLibraryPath)
End If
+
'To ensure this part of the code only runs when the application Is Not in the Debug mode (i.e., in Release mode)
#If Not DEBUG Then
- ' Add the custom library path to R's .libPaths for user-level package installation
- Dim strScript As String = $".libPaths(c('{strLibraryPath.Replace("\", "/")}', .libPaths()))" & Environment.NewLine &
- "if (length(.libPaths()) > 2) {
- current_paths <- .libPaths()
- valid_indices <- c(1, 3)[c(1, 3) <= length(current_paths)]
- .libPaths(current_paths[valid_indices])
- }"
+ Dim clsSetLibPathsFunction As New RFunction
+ clsSetLibPathsFunction.SetRCommand("set_library_paths")
+ clsSetLibPathsFunction.AddParameter("library_path", Chr(34) & strLibraryPath.Replace("\", "/") & Chr(34))
' Execute the R script to update the library paths
- clsRLink.RunScript(strScript:=strScript, bSeparateThread:=False, bSilent:=False)
+ clsRLink.RunScript(strScript:=clsSetLibPathsFunction.ToScript, bSeparateThread:=False, bSilent:=False)
#End If
Catch ex As Exception
' Handle potential errors (e.g., directory creation failure)
@@ -605,10 +608,8 @@ Public Class frmMain
mnuTbLan.Visible = bVisible
End Sub
- Public Sub SetAppVersionNumber()
- Me.Text = "R-Instat " & My.Application.Info.Version.Major.ToString() & "." &
- My.Application.Info.Version.Minor.ToString() & "." &
- My.Application.Info.Version.Build.ToString()
+ Public Sub SetAppVersionNumber(strVersionNumber As String)
+
End Sub
Private Sub SetHideMenus()
@@ -1186,7 +1187,7 @@ Public Class frmMain
Dim strCurrentStatus As String
strCurrentStatus = tstatus.Text
- If clsRLink.bInstatObjectExists Then
+ If clsRLink.bInstatObjectExists AndAlso ucrDataViewer.HasDataChanged Then
tstatus.Text = GetTranslation("Auto saving data...")
Cursor = Cursors.WaitCursor
If Not Directory.Exists(strAutoSaveDataFolderPath) Then
@@ -1197,7 +1198,7 @@ Public Class frmMain
strTempFile = "data_" & DateTime.Now.ToString("yyyyMMdd_HHmmss") & ".rds"
strCurrentAutoSaveDataFilePath = Path.Combine(strAutoSaveDataFolderPath, strTempFile)
- Dim strBackupMessage As String = $"##########{vbCrLf}## Backing up data and log files on: {DateTime.Now}{vbCrLf}##########"
+ Dim strBackupMessage As String = $"##########{vbCrLf}## Backing up data and metadata on: {DateTime.Now}{vbCrLf}##########"
Me.ucrScriptWindow.LogText(strBackupMessage)
clsRLink.AppendToAutoSaveLog(strBackupMessage)
@@ -1209,6 +1210,7 @@ Public Class frmMain
tstatus.Text = strCurrentStatus
Cursor = Cursors.Default
bFirstBackupDone = True
+ ucrDataViewer.HasDataChanged = False
End If
End Sub
@@ -1749,6 +1751,10 @@ Public Class frmMain
ucrDataViewer.UseColumnSelectionInDataView(bUseColumnSelecion)
End Sub
+ Public Function IsColumnSelectionApplied() As Boolean
+ Return ucrDataViewer.IsColumnSelectionApplied
+ End Function
+
Public Sub SetCurrentDataFrame(strDataName As String)
ucrDataViewer.SetCurrentDataFrame(strDataName)
ucrColumnMeta.SetCurrentDataFrame(strDataName)
@@ -2974,4 +2980,13 @@ Public Class frmMain
End If
End Sub
+ Private Sub mnuRDataViewerWindow_Click(sender As Object, e As EventArgs) Handles mnuRDataViewerWindow.Click
+ ucrDataViewer.StartWait()
+ ucrDataViewer.GetCurrentDataFrameFocus().clsPrepareFunctions.ViewDataFrame()
+ ucrDataViewer.EndWait()
+ End Sub
+
+ Private Sub mnuClimaticModelOutfilling_Click(sender As Object, e As EventArgs) Handles mnuClimaticModelOutfilling.Click
+ dlgOutfillingStationData.ShowDialog()
+ End Sub
End Class
diff --git a/instat/instat.vbproj b/instat/instat.vbproj
index 8f72bfeb211..22cb6700b6a 100644
--- a/instat/instat.vbproj
+++ b/instat/instat.vbproj
@@ -391,6 +391,12 @@
Form
+
+ dlgOutfillingStationData.vb
+
+
+ Form
+
ucrCellsFootNotes.vb
@@ -3444,6 +3450,9 @@
sdgSummaryThemes.vb
+
+ dlgOutfillingStationData.vb
+
ucrCellsFootNotes.vb
diff --git a/instat/sdgDoyRange.vb b/instat/sdgDoyRange.vb
index a8a2d55b020..cab5c87e4e7 100644
--- a/instat/sdgDoyRange.vb
+++ b/instat/sdgDoyRange.vb
@@ -21,6 +21,7 @@ Public Class sdgDoyRange
Private clsDoyFilterCalc As RFunction
Private clsCalcFromList As RFunction
Private clsCalcFromMainDataFrame As RFunction
+ Public clsIfElseFirstDoyFilledFunction As RFunction
Private clsDayFromOperator As ROperator
Private clsDayToOperator As ROperator
Private bControlsInitialised As Boolean = False
@@ -32,7 +33,7 @@ Public Class sdgDoyRange
autoTranslate(Me)
End Sub
- Public Sub Setup(clsNewDoyFilterCalc As RFunction, clsNewDayFromOperator As ROperator, clsNewDayToOperator As ROperator, clsNewCalcFromList As RFunction, strNewMainDataFrame As String, strNewDoyColumn As String)
+ Public Sub Setup(clsNewDoyFilterCalc As RFunction, clsNewDayFromOperator As ROperator, clsNewDayToOperator As ROperator, clsNewCalcFromList As RFunction, strNewMainDataFrame As String, strNewDoyColumn As String, Optional clsNewIfElseFirstDoyFilledFunction As RFunction = Nothing)
Dim iFrom As Integer
Dim iTo As Integer
Dim iDiff As Integer
@@ -55,6 +56,7 @@ Public Class sdgDoyRange
End If
clsDoyFilterCalc = clsNewDoyFilterCalc
clsCalcFromList = clsNewCalcFromList
+ clsIfElseFirstDoyFilledFunction = clsNewIfElseFirstDoyFilledFunction
strMainDataFrame = strNewMainDataFrame
strDoyColumn = strNewDoyColumn
@@ -217,8 +219,10 @@ Public Class sdgDoyRange
If bUpdate Then
If rdoToFixed.Checked Then
clsDayToOperator.AddParameter("to", strParameterValue:=ucrDoyTo.GetValue(), iPosition:=1)
+ clsIfElseFirstDoyFilledFunction.AddParameter("yes", strParameterValue:=ucrDoyTo.GetValue(), iPosition:=1)
ElseIf rdoToVariable.Checked Then
clsDayToOperator.AddParameter("to", strParameterValue:=ucrReceiverTo.GetVariableNames(False), iPosition:=1)
+ clsIfElseFirstDoyFilledFunction.AddParameter("yes", strParameterValue:=ucrReceiverTo.GetVariableNames(False), iPosition:=1)
ElseIf rdoLength.Checked Then
clsFixedDiffOp.SetOperation("+")
If clsDayFromOperator.ContainsParameter("from") Then
@@ -226,6 +230,7 @@ Public Class sdgDoyRange
clsFixedDiffOp.AddParameter("diff", strParameterValue:=ucrNudToDiff.Value, iPosition:=1)
clsFixedDiffOp.bBrackets = True
clsDayToOperator.AddParameter("to", clsROperatorParameter:=clsFixedDiffOp, iPosition:=1)
+ clsIfElseFirstDoyFilledFunction.AddParameter("yes", clsROperatorParameter:=clsFixedDiffOp, iPosition:=1)
End If
End If
UpdateCalculatedFrom()
diff --git a/instat/static/InstatObject/R/Backend_Components/calculations.R b/instat/static/InstatObject/R/Backend_Components/calculations.R
index ebb95254ec6..e7a52f6259a 100644
--- a/instat/static/InstatObject/R/Backend_Components/calculations.R
+++ b/instat/static/InstatObject/R/Backend_Components/calculations.R
@@ -448,8 +448,29 @@ DataBook$set("public", "apply_instat_calculation", function(calc, curr_data_list
if(length(by) == 0) {
stop("Cannot find linking columns to merge output from sub calculations with data for calculated_from.")
}
- if(join_into_overall) curr_data_list[[c_data_label]] <- dplyr::full_join(curr_data_list[[c_data_label]], self$get_data_frame(data_frame_name, use_current_filter = FALSE), by = by)
- else {
+ if(join_into_overall){
+ new_data_list <- self$get_data_frame(data_frame_name, use_current_filter = FALSE)
+ by_col_attributes <- list()
+ for(i in seq_along(by)) {
+ # Collect column attributes
+ by_col_attributes[[by[[i]]]] <- get_column_attributes(new_data_list[[by[[i]]]])
+
+ # Check and align the data types for each "by" column
+ if (class(new_data_list[[by[[i]]]]) != class(curr_data_list[[c_data_label]][[by[[i]]]])) {
+ warning(paste0("Type is different for ", by[[i]], " in the two data frames. Setting as numeric in both data frames."))
+
+ # Convert factors to numeric if necessary
+ if (class(new_data_list[[by[[i]]]]) == "factor") {
+ new_data_list[[by[[i]]]] <- as.numeric(as.character(new_data_list[[by[[i]]]]))
+ } else if (class(curr_data_list[[c_data_label]][[by[[i]]]]) == "factor") {
+ curr_data_list[[c_data_label]][[by[[i]]]] <- as.numeric(as.character(curr_data_list[[c_data_label]][[by[[i]]]]))
+ } else {
+ stop(paste0("Type is different for ", by[[i]], " in the two data frames and cannot be coerced."))
+ }
+ }
+ }
+ curr_data_list[[c_data_label]] <- dplyr::full_join(curr_data_list[[c_data_label]], self$get_data_frame(data_frame_name, use_current_filter = FALSE), by = by)
+ } else {
curr_groups <- dplyr::groups(curr_data_list[[c_data_label]])
curr_data_list[[c_data_label]] <- dplyr::full_join(self$get_data_frame(data_frame_name, use_current_filter = FALSE), curr_data_list[[c_data_label]], by = by)
#TODO investigate better way to do this
@@ -853,3 +874,27 @@ find_df_from_calc_from <- function(x, column) {
}
return("")
}
+
+DataBook$set("public", "remove_unused_station_year_combinations", function(data_name, year, station){
+ # Create linked data name
+ linked_data_name <- self$get_linked_to_data_name(data_name, link_cols=c(year, station))
+
+ # Column Summaries
+ self$calculate_summary(data_name = data_name,
+ store_results=TRUE,
+ factors=c(year, station),
+ summaries=c("summary_count"),
+ silent=TRUE)
+
+ self$rename_column_in_data(data_name = linked_data_name, column_name="count_all", new_val="count_year_station_combination_for_linking", label="")
+
+ # Create Filter subdialog: Created new filter
+ self$add_filter(filter=list(C0=list(column="count_year_station_combination_for_linking", operation="! is.na")), data_name = linked_data_name, filter_name = "removing_additional_years")
+
+ # Dialog: Filter
+ self$copy_data_object(data_name = linked_data_name, new_name = linked_data_name, filter_name="removing_additional_years")
+
+ # Right click menu: Delete Column(s)
+ self$remove_columns_in_data(data_name=linked_data_name, cols="count_year_station_combination_for_linking")
+}
+)
diff --git a/instat/static/InstatObject/R/Backend_Components/link.R b/instat/static/InstatObject/R/Backend_Components/link.R
index ccd14b356e7..47219b1b139 100644
--- a/instat/static/InstatObject/R/Backend_Components/link.R
+++ b/instat/static/InstatObject/R/Backend_Components/link.R
@@ -379,4 +379,23 @@ DataBook$set("public", "view_link", function(link_name) {
paste("Link columns:", paste(names(temp_link$link_columns), "=", temp_link$link_columns, collapse = ", ")), sep = "\n"))
}
}
-)
\ No newline at end of file
+)
+
+# A function to convert the variables in the linked "to data frame"" to be the same class as that of the "from data frame"".
+DataBook$set("public", "convert_linked_variable", function(from_data_frame, link_cols) {
+ to_data_name <- self$get_linked_to_data_name(from_data_frame, link_cols=c(link_cols))
+ if (!is.null(to_data_name)){
+ linked_variable_name <- self$get_link_between(from_data_frame, to_data_name)$link_columns[[1]]
+
+ # loop through all columns given in variable argument
+ for (i in seq_along(linked_variable_name)){
+ variable_type <- self$get_column_data_types(data_name = from_data_frame, columns = names(linked_variable_name[i]))
+ linked_variable_type <- self$get_column_data_types(data_name = to_data_name, columns=linked_variable_name[i])
+
+ if (variable_type != linked_variable_type){
+ self$convert_column_to_type(data_name=to_data_name, col_names=linked_variable_name[i], to_type=variable_type)
+ }
+ }
+ }
+}
+)
diff --git a/instat/static/InstatObject/R/data_object_R6.R b/instat/static/InstatObject/R/data_object_R6.R
index b123c0a54eb..c188e3d8f03 100644
--- a/instat/static/InstatObject/R/data_object_R6.R
+++ b/instat/static/InstatObject/R/data_object_R6.R
@@ -921,6 +921,36 @@ DataSheet$set("public", "cor", function(x_col_names, y_col_name, use = "everythi
}
)
+DataSheet$set("public", "update_selection", function(new_values, column_selection_name = NULL) {
+ if (missing(new_values)) stop("new_values is required")
+ if (missing(column_selection_name)) stop("column_selection_name is required")
+
+ column_selection_obj <- private$column_selections[[column_selection_name]]
+
+ if (is.null(column_selection_obj)) {
+ stop("No column selection found with the name: ", column_selection_name)
+ }
+
+ # Update conditions in the column selection with new values
+ updated_conditions <- lapply(column_selection_obj$conditions, function(condition) {
+ # Check if the parameters exist and replace them with new values
+ if ("parameters" %in% names(condition)) {
+ condition$parameters$x <- new_values
+ }
+ return(condition)
+ })
+
+ # Update the column selection object with the new conditions
+ column_selection_obj$conditions <- updated_conditions
+ private$column_selections[[column_selection_name]] <- column_selection_obj
+
+ # Optionally, mark data as changed
+ self$data_changed <- TRUE
+
+ message("Column selection '", column_selection_name, "' updated successfully with new values.")
+})
+
+
DataSheet$set("public", "rename_column_in_data", function(curr_col_name = "", new_col_name = "", label = "", type = "single", .fn, .cols = everything(), new_column_names_df, new_labels_df, ...) {
curr_data <- self$get_data_frame(use_current_filter = FALSE, use_column_selection = FALSE)
@@ -954,8 +984,18 @@ DataSheet$set("public", "rename_column_in_data", function(curr_col_name = "", ne
purrr::map(.x = keys_to_delete, .f = ~self$remove_key(key_name = names(active_keys[.x])))
}
}
- if(self$column_selection_applied()) self$remove_current_column_selection()
# Need to use private$data here because changing names of data field
+ names(private$data)[names(curr_data) == curr_col_name] <- new_col_name
+
+ column_names <- self$get_column_names()
+
+ if (anyNA(column_names)) {
+ column_names[is.na(column_names)] <- new_col_name
+ } else {
+ column_names <- new_col_name
+ }
+
+ self$update_selection(column_names, private$.current_column_selection$name)
if(any(c("sfc", "sfc_MULTIPOLYGON") %in% class(private$data[[curr_col_name]]))){
# Update the geometry column reference
sf::st_geometry(private$data) <- new_col_name
@@ -976,11 +1016,22 @@ DataSheet$set("public", "rename_column_in_data", function(curr_col_name = "", ne
} else if (type == "multiple") {
if (!missing(new_column_names_df)) {
new_col_names <- new_column_names_df[, 1]
- cols_changed_index <- new_column_names_df[, 2]
+ cols_changed_index <- which(names(private$data) %in% new_column_names_df[, 2])
curr_col_names <- names(private$data)
curr_col_names[cols_changed_index] <- new_col_names
if(any(duplicated(curr_col_names))) stop("Cannot rename columns. Column names must be unique.")
- if(self$column_selection_applied()) self$remove_current_column_selection()
+ names(private$data)[cols_changed_index] <- new_col_names
+
+ column_names <- self$get_column_names()
+
+ if (anyNA(column_names)) {
+ column_names[is.na(column_names)] <- new_col_names
+ } else {
+ column_names <- new_col_names
+ }
+
+ self$update_selection(column_names, private$.current_column_selection$name)
+
if(any(c("sfc", "sfc_MULTIPOLYGON") %in% class(private$dataprivate$data)[cols_changed_index])){
# Update the geometry column reference
sf::st_geometry(private$data) <- new_col_names
@@ -1005,19 +1056,29 @@ DataSheet$set("public", "rename_column_in_data", function(curr_col_name = "", ne
} else if (type == "rename_with") {
if (missing(.fn)) stop(.fn, "is missing with no default.")
curr_col_names <- names(curr_data)
+ column_names <- self$get_column_names()
private$data <- curr_data |>
dplyr::rename_with(
.fn = .fn,
.cols = {{ .cols }}, ...
)
- if(self$column_selection_applied()) self$remove_current_column_selection()
new_col_names <- names(private$data)
if (!all(new_col_names %in% curr_col_names)) {
new_col_names <- new_col_names[!(new_col_names %in% curr_col_names)]
for (i in seq_along(new_col_names)) {
self$append_to_variables_metadata(new_col_names[i], name_label, new_col_names[i])
}
+
+ column_names <- self$get_column_names()
+ if (anyNA(column_names)) {
+ column_names[is.na(column_names)] <- new_col_names
+ } else {
+ column_names <- new_col_names
+ }
+
+ self$update_selection(column_names, private$.current_column_selection$name)
+
self$data_changed <- TRUE
self$variables_metadata_changed <- TRUE
}
@@ -1545,7 +1606,7 @@ DataSheet$set("public", "get_data_frame_length", function(use_current_filter = F
DataSheet$set("public", "get_factor_data_frame", function(col_name = "", include_levels = TRUE, include_NA_level = FALSE) {
if(!(col_name %in% self$get_column_names())) stop(col_name, " is not a column name,")
- col_data <- self$get_columns_from_data(col_name, use_current_filter = FALSE)
+ col_data <- self$get_columns_from_data(col_name, use_current_filter = TRUE)
if(!(is.factor(col_data))) stop(col_name, " is not a factor column")
counts <- data.frame(table(col_data))
diff --git a/instat/static/InstatObject/R/dlgOutfillingStationData.Designer.vb b/instat/static/InstatObject/R/dlgOutfillingStationData.Designer.vb
new file mode 100644
index 00000000000..0847923f087
--- /dev/null
+++ b/instat/static/InstatObject/R/dlgOutfillingStationData.Designer.vb
@@ -0,0 +1,54 @@
+ _
+Partial Class dlgOutfillingStationData
+ 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.ucrBase = New instat.ucrButtons()
+ Me.SuspendLayout()
+ '
+ 'ucrBase
+ '
+ Me.ucrBase.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink
+ Me.ucrBase.Location = New System.Drawing.Point(16, 439)
+ Me.ucrBase.Margin = New System.Windows.Forms.Padding(4, 4, 4, 4)
+ Me.ucrBase.Name = "ucrBase"
+ Me.ucrBase.Size = New System.Drawing.Size(615, 78)
+ Me.ucrBase.TabIndex = 0
+ '
+ 'dlgOutfillingStationData
+ '
+ Me.AutoScaleDimensions = New System.Drawing.SizeF(9.0!, 20.0!)
+ Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
+ Me.ClientSize = New System.Drawing.Size(669, 531)
+ Me.Controls.Add(Me.ucrBase)
+ Me.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedToolWindow
+ Me.MaximizeBox = False
+ Me.MinimizeBox = False
+ Me.Name = "dlgOutfillingStationData"
+ Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen
+ Me.Text = "Outfilling Station Data"
+ Me.ResumeLayout(False)
+
+ End Sub
+
+ Friend WithEvents ucrBase As ucrButtons
+End Class
diff --git a/instat/static/InstatObject/R/dlgOutfillingStationData.resx b/instat/static/InstatObject/R/dlgOutfillingStationData.resx
new file mode 100644
index 00000000000..1af7de150c9
--- /dev/null
+++ b/instat/static/InstatObject/R/dlgOutfillingStationData.resx
@@ -0,0 +1,120 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 2.0
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
\ No newline at end of file
diff --git a/instat/static/InstatObject/R/dlgOutfillingStationData.vb b/instat/static/InstatObject/R/dlgOutfillingStationData.vb
new file mode 100644
index 00000000000..89fdc2ec562
--- /dev/null
+++ b/instat/static/InstatObject/R/dlgOutfillingStationData.vb
@@ -0,0 +1,3 @@
+Public Class dlgOutfillingStationData
+
+End Class
\ No newline at end of file
diff --git a/instat/static/InstatObject/R/instat_object_R6.R b/instat/static/InstatObject/R/instat_object_R6.R
index 5f7a6c88e45..98e0063279f 100644
--- a/instat/static/InstatObject/R/instat_object_R6.R
+++ b/instat/static/InstatObject/R/instat_object_R6.R
@@ -2215,12 +2215,10 @@ DataBook$set("public","get_variable_sets", function(data_name, set_names, force_
}
)
-DataBook$set("public", "crops_definitions", function(data_name, year, station, rain, day, rain_totals, plant_days, plant_lengths, start_check = TRUE, season_data_name, start_day, end_day, definition_props = TRUE, print_table = TRUE) {
- plant_day_name <- "plant_day"
- plant_length_name <- "plant_length"
- rain_total_name <- "rain_total"
-
+DataBook$set("public", "crops_definitions", function(data_name, year, station, rain, day, rain_totals, plant_days, plant_lengths, start_check = c("both", "yes", "no"), season_data_name, start_day, end_day, return_crops_table = TRUE, definition_props = TRUE){
+ # Run checks
is_station <- !missing(station)
+ start_check <- match.arg(start_check)
if(missing(year)) stop("Year column must be specified.")
if(!is_station) by <- year
@@ -2233,17 +2231,26 @@ DataBook$set("public", "crops_definitions", function(data_name, year, station, r
year_col <- self$get_columns_from_data(data_name, year)
unique_year <- na.omit(unique(year_col))
- expand_list <- list(rain_totals, plant_lengths, plant_days, unique_year)
- names_list <- c(rain_total_name, plant_length_name, plant_day_name, year)
-
+ # creating our combinations
+ # if there's a station, we only want to consider the year-station combinations that actually exist
if(is_station) {
- station_col <- self$get_columns_from_data(data_name, station)
- unique_station <- na.omit(unique(station_col))
- expand_list[[length(expand_list) + 1]] <- unique_station
- names_list[length(names_list) + 1] <- station
+ expanded_df <- unique(self$get_data_frame(data_name) %>% dplyr::select(year, station))
+ } else {
+ expanded_df <- unique(self$get_data_frame(data_name) %>% dplyr::select(year))
}
- df <- setNames(expand.grid(expand_list), names_list)
+ # Set names
+ plant_day_name <- "plant_day"
+ plant_length_name <- "plant_length"
+ rain_total_name <- "rain_total"
+
+ # Create all combinations of X and Y
+ condition_combinations <- expand.grid(rain_totals, plant_lengths, plant_days)
+ names_list <- c(rain_total_name, plant_length_name, plant_day_name)
+ condition_combinations <- setNames(condition_combinations, names_list)
+
+ # Expand the df with xy_combinations
+ df <- merge(expanded_df, condition_combinations, by = NULL)
daily_data <- self$get_data_frame(data_name)
if(season_data_name != data_name) {
@@ -2253,8 +2260,7 @@ DataBook$set("public", "crops_definitions", function(data_name, year, station, r
vars <- c(season_by, start_day, end_day)
season_data <- season_data %>% dplyr::select(!!! rlang::syms(vars))
df <- dplyr::left_join(df, season_data, by = join_by)
- }
- else {
+ } else {
col_names <- c(by, start_day, end_day)
season_data <- daily_data %>%
dplyr::select(!!! rlang::syms(col_names)) %>%
@@ -2264,133 +2270,148 @@ DataBook$set("public", "crops_definitions", function(data_name, year, station, r
df <- dplyr::left_join(df, season_data, by = by)
}
- # Plant day condition
- if(start_check %in% c("yes", "both")) {
- df$plant_day_cond <- (df[[start_day]] <= df[[plant_day_name]])
- }
-
- # Plant length condition
- df$length_cond <- (df[[plant_day_name]] + df[[plant_length_name]] <= df[[end_day]])
+ ## Onto the calculation
+ proportion_df <- NULL
+ crops_def_table <- NULL
+ i <- 1
- # Rain total condition
- # Create a column for the rain total actuals initialised with NA
- df[["rain_total_actual"]] <- NA
+ calculate_rain_condition <- function(data){
+ data <- data %>% dplyr::select(-rain_total_name) %>% unique()
- # Vectorise the conditions for each
- for (i in 1:nrow(df)) {
- # Create a condition to filter the daily data based on the year, day, and plant day/length
- ind <- daily_data[[year]] == df[[year]][i] &
- daily_data[[day]] >= df[[plant_day_name]][i] &
- daily_data[[day]] < (df[[plant_day_name]][i] + df[[plant_length_name]][i])
+ for (i in 1:nrow(data)) {
+ # Create a condition to filter the daily data based on the year, day, and plant day/length
+ ind <- daily_data[[year]] == data[[year]][i] &
+ daily_data[[day]] >= data[[plant_day_name]][i] &
+ daily_data[[day]] < (data[[plant_day_name]][i] + data[[plant_length_name]][i])
- if (is_station) {
- ind <- ind & (daily_data[[station]] == df[[station]][i])
- }
+ if (is_station) {
+ ind <- ind & (daily_data[[station]] == data[[station]][i])
+ }
- # Filter the daily data based on the condition
- rain_values <- daily_data[[rain]][ind]
+ # Filter the daily data based on the condition
+ rain_values <- daily_data[[rain]][ind]
- # Calculate the sum of rain values and check conditions
- sum_rain <- sum(rain_values, na.rm = TRUE)
+ # Calculate the sum of rain values and check conditions
+ sum_rain <- sum(rain_values, na.rm = TRUE)
- if (length(rain_values) + 1 < df[[plant_length_name]][i] || (anyNA(rain_values) && sum_rain < df[[rain_total_name]][i])) {
- sum_rain <- NA
- }
+ # Set as NA for certain cases: This anyNA is fixed later when we have the total_rainfall value of interest
+ if (anyNA(rain_values)) sum_rain <- -1 * sum_rain # as a way to tag the sum_rain value for later, we set as -ve value.
+ #&& sum_rain < data[[rain_total_name]][i]){
+ if (length(rain_values) + 1 < data[[plant_length_name]][i]) sum_rain <- NA
+ if (all(is.na(rain_values))) sum_rain <- NA
- # Assign the calculated sum to the respective row in the result dataframe
- df[["rain_total_actual"]][i] <- sum_rain
- }
- df$rain_cond <- df[[rain_total_name]] <= df[["rain_total_actual"]]
-
- # All three conditions met
- if (start_check == "yes"){
- df$overall_cond <- df$plant_day_cond & df$length_cond & df$rain_cond
- } else if (start_check == "no"){
- df$overall_cond <- TRUE & df$length_cond & df$rain_cond
- } else {
- df$overall_cond_with_start <- df$plant_day_cond & df$length_cond & df$rain_cond
- df$overall_cond_no_start <- TRUE & df$length_cond & df$rain_cond
- }
-
- crops_name <- "crop_def"
- crops_name <- next_default_item(prefix = crops_name, existing_names = self$get_data_names(), include_index = FALSE)
- data_tables <- list(df)
- names(data_tables) <- crops_name
- self$import_data(data_tables = data_tables)
+ # Assign the calculated sum to the respective row in the result dataframe
+ data[["rain_total_actual"]][i] <- sum_rain
+ }
+ return(data)
+}
- if(season_data_name != data_name) {
- crops_by <- season_by
- names(crops_by) <- by
- self$add_link(crops_name, season_data_name, crops_by, keyed_link_label)
- }
-
- if(definition_props) {
- calc_from <- list()
- if(!missing(station)) calc_from[[length(calc_from) + 1]] <- station
- calc_from[[length(calc_from) + 1]] <- plant_day_name
- calc_from[[length(calc_from) + 1]] <- plant_length_name
- calc_from[[length(calc_from) + 1]] <- rain_total_name
- names(calc_from) <- rep(crops_name, length(calc_from))
- grouping <- instat_calculation$new(type = "by", calculated_from = calc_from)
-
- if (start_check %in% c("yes", "no")){
- prop_calc_from <- list("overall_cond")
- names(prop_calc_from) <- crops_name
- propor_table <- instat_calculation$new(function_exp="sum(overall_cond, na.rm = TRUE)/length(na.omit(overall_cond))",
- save = 2, calculated_from = prop_calc_from,
- manipulations = list(grouping),
- type="summary", result_name = "prop_success", result_data_frame = "crop_prop")
- prop_data_frame <- self$run_instat_calculation(propor_table, display = TRUE)
- if(print_table) {
- prop_data_frame$prop_success <- round(prop_data_frame$prop_success, 2)
- prop_table_unstacked <- reshape2::dcast(formula = as.formula(paste(if(!missing(station)) paste(station, "+"), plant_length_name, "+", rain_total_name, "~", plant_day_name)), data = prop_data_frame, value.var = "prop_success")
- if(!missing(station)) f <- interaction(prop_table_unstacked[[station]], prop_table_unstacked[[plant_length_name]], lex.order = TRUE)
- else f <- prop_table_unstacked[[plant_length_name]]
- prop_table_split <- split(prop_table_unstacked, f)
- return(prop_table_split)
- }
- } else {
- prop_calc_from_with_start <- list("overall_cond_with_start")
- names(prop_calc_from_with_start) <- crops_name
- propor_table_with_start <- instat_calculation$new(function_exp="sum(overall_cond_with_start, na.rm = TRUE)/length(na.omit(overall_cond_with_start))",
- save = 2, calculated_from = prop_calc_from_with_start,
- manipulations = list(grouping),
- type="summary", result_name = "prop_success", result_data_frame = "crop_prop_with_start")
- prop_data_frame_with_start <- self$run_instat_calculation(propor_table_with_start, display = TRUE)
+ # run by plant day and plant_length
+ for (day_i in plant_days){
+ for (length_i in plant_lengths){
- prop_calc_from_no_start <- list("overall_cond_no_start")
- names(prop_calc_from_no_start) <- crops_name
- propor_table_no_start <- instat_calculation$new(function_exp="sum(overall_cond_no_start, na.rm = TRUE)/length(na.omit(overall_cond_no_start))",
- save = 2, calculated_from = prop_calc_from_no_start,
- manipulations = list(grouping),
- type="summary", result_name = "prop_success", result_data_frame = "crop_prop_no_start")
- prop_data_frame_no_start <- self$run_instat_calculation(propor_table_no_start, display = TRUE)
+ # for each plant length and plant day combination, calculate the total rainfall in that period.
+ filtered_data_1 <- df %>% filter(plant_day == day_i) %>% filter(plant_length == length_i)
- if(print_table) {
- prop_data_frame_with_start$prop_success <- round(prop_data_frame_with_start$prop_success, 2)
- prop_table_unstacked_with_start <- reshape2::dcast(formula = as.formula(paste(if(!missing(station)) paste(station, "+"), plant_length_name, "+", rain_total_name, "~", plant_day_name)), data = prop_data_frame_with_start, value.var = "prop_success")
- if(!missing(station)) f <- interaction(prop_table_unstacked_with_start[[station]], prop_table_unstacked_with_start[[plant_length_name]], lex.order = TRUE)
- else f <- prop_table_unstacked_with_start[[plant_length_name]]
- prop_table_split_with_start <- split(prop_table_unstacked_with_start, f)
-
- prop_data_frame_no_start$prop_success <- round(prop_data_frame_no_start$prop_success, 2)
- prop_table_unstacked_no_start <- reshape2::dcast(formula = as.formula(paste(if(!missing(station)) paste(station, "+"), plant_length_name, "+", rain_total_name, "~", plant_day_name)), data = prop_data_frame_no_start, value.var = "prop_success")
- if(!missing(station)) f <- interaction(prop_table_unstacked_no_start[[station]], prop_table_unstacked_no_start[[plant_length_name]], lex.order = TRUE)
- else f <- prop_table_unstacked_no_start[[plant_length_name]]
- prop_table_split_no_start <- split(prop_table_unstacked_no_start, f)
+ # Now run to get the rain conditions
+ filtered_data_1 <- calculate_rain_condition(data = filtered_data_1)
+
+ # so: filtered_data_1 contains the total rainfall that occurred in that period for all the plant_day and plant_length combinations
+ # we now split by our different rain_total_actual conditions.
+ # we do this here to avoid calculating it multiple times.
+ for (rain_i in rain_totals){
+ filtered_data <- filtered_data_1 %>% dplyr::mutate(rain_total = rain_i)
+
+ # take the rows < 0 and run a check. We want to check
+ # if (anyNA(rain_values) && sum_rain < data[[rain_total_name]][i]) { sum_rain <- NA
+ # we do this here because we want to avoid running rain_total in calculate_rain_condition for efficiency purposes.
+ filtered_data <- filtered_data %>%
+ dplyr::mutate(rain_total_actual = ifelse(rain_total_actual < 0, ifelse(-1*rain_total_actual < rain_total, NA, -1*rain_total_actual), rain_total_actual))
+
+ if (!missing(station)) filtered_data <- filtered_data %>% dplyr::group_by(.data[[station]], .data[[year]])
+ else filtered_data <- filtered_data %>% dplyr::group_by(.data[[year]])
- # Create an empty list to store the merged data
- merged_list <- list()
+ filtered_data <- filtered_data %>%
+ # first add a column (T/F) that states that it is in the rainfall period or not.
+ dplyr::mutate(plant_day_cond = .data[[start_day]] <= plant_day,
+ length_cond = plant_day + plant_length <= .data[[end_day]],
+ rain_cond = rain_i <= rain_total_actual) %>%
+ dplyr::ungroup()
+
+ if (start_check == "both"){
+
+ filtered_data <- filtered_data %>%
+ dplyr::mutate(
+ overall_cond_with_start = plant_day_cond & length_cond & rain_cond,
+ overall_cond_no_start = length_cond & rain_cond)
+ if (!missing(station)) filtered_data <- filtered_data %>% dplyr::group_by(.data[[station]])
+ proportion_data <- filtered_data %>%
+ dplyr::summarise(prop_success_with_start = sum(overall_cond_with_start, na.rm = TRUE)/length(na.omit(overall_cond_with_start)),
+ prop_success_no_start = sum(overall_cond_no_start, na.rm = TRUE)/length(na.omit(overall_cond_no_start)))
+ } else {
+ filtered_data <- filtered_data %>%
+ dplyr::mutate(
+ overall_cond = case_when(
+ start_check == "yes" ~ plant_day_cond & length_cond & rain_cond,
+ start_check == "no" ~ TRUE & length_cond & rain_cond)
+ )
+ if (!missing(station)) filtered_data <- filtered_data %>% dplyr::group_by(.data[[station]])
+ proportion_data <- filtered_data %>%
+ dplyr::summarise(prop_success = sum(overall_cond, na.rm = TRUE)/length(na.omit(overall_cond)))
+ }
- # Vectorize the addition of source indicators and merging of data frames
- prop_table_split_with_start <- lapply(prop_table_split_with_start, function(df) {
- df$source <- 'with start'
- return(df)
- })
+ if (return_crops_table){
+ crops_def_table[[i]] <- filtered_data %>% dplyr::mutate(rain_total = rain_i,
+ plant_length = length_i,
+ plant_day = day_i)
+ }
+ if (definition_props){
+ proportion_df[[i]] <- proportion_data %>% dplyr::mutate(rain_total = rain_i,
+ plant_length = length_i,
+ plant_day = day_i)
+ }
+ i <- i + 1
}
}
}
-})
+
+ if (!missing(station)) column_order <- c(station, plant_day_name, plant_length_name, rain_total_name)
+ else column_order <- c(plant_day_name, plant_length_name, rain_total_name)
+
+ if (return_crops_table){
+ # here we get crop_def and import it as a new DF
+ crops_def_table <- dplyr::bind_rows(crops_def_table) %>% dplyr::select(c(all_of(column_order), everything())) %>% dplyr::arrange(dplyr::across(dplyr::all_of(column_order)))
+ crops_name <- "crop_def"
+ crops_name <- next_default_item(prefix = crops_name, existing_names = self$get_data_names(), include_index = FALSE)
+ data_tables <- list(crops_def_table)
+ names(data_tables) <- crops_name
+ if(season_data_name != data_name) {
+ crops_by <- season_by
+ names(crops_by) <- by
+ self$add_link(crops_name, season_data_name, crops_by, keyed_link_label)
+ }
+ self$import_data(data_tables = data_tables)
+ }
+ if (definition_props){
+ prop_data_frame <- dplyr::bind_rows(proportion_df) %>% dplyr::select(c(all_of(column_order), everything())) %>% dplyr::arrange(dplyr::across(dplyr::all_of(column_order)))
+
+ prop_name <- "crop_prop"
+ prop_name <- next_default_item(prefix = prop_name, existing_names = self$get_data_names(), include_index = FALSE)
+ data_tables <- list(prop_data_frame)
+ names(data_tables) <- prop_name
+ self$import_data(data_tables = data_tables)
+
+ # Add Link
+ if (return_crops_table){
+ if (!missing(station)){
+ self$add_link(from_data_frame = crops_name, to_data_frame = prop_name, link_pairs=c(station = station, rain_total = rain_total_name, plant_length = plant_length_name, plant_day = plant_day_name), type="keyed_link")
+ } else {
+ self$add_link(from_data_frame = crops_name, to_data_frame = prop_name, link_pairs=c(rain_total = rain_total_name, plant_length = plant_length_name, plant_day = plant_day_name), type="keyed_link")
+ }
+ }
+ }
+}
+)
#' Converting grid (wide) format daily climatic data into tidy (long format) data
#' @param x Input data frame
diff --git a/instat/static/InstatObject/R/stand_alone_functions.R b/instat/static/InstatObject/R/stand_alone_functions.R
index ef7ae16ee90..be519ef0b07 100644
--- a/instat/static/InstatObject/R/stand_alone_functions.R
+++ b/instat/static/InstatObject/R/stand_alone_functions.R
@@ -3429,4 +3429,21 @@ monitor_memory <- function() {
time_operation <- function(expr) {
timing <- system.time(expr)
print(timing)
-}
\ No newline at end of file
+}
+
+set_library_paths <- function(library_path) {
+ # Update the library paths
+ .libPaths(c(library_path, .libPaths()))
+
+ # Check if there are more than 2 library paths
+ if (length(.libPaths()) > 2) {
+ # Get the current library paths
+ current_paths <- .libPaths()
+
+ # Select valid indices (1 and 3) only if they exist
+ valid_indices <- c(1, 3)[c(1, 3) <= length(current_paths)]
+
+ # Set the library paths to the valid ones
+ .libPaths(current_paths[valid_indices])
+ }
+}
diff --git a/instat/translations/rInstatTranslations.db b/instat/translations/rInstatTranslations.db
index 992781e4402..208404f14e2 100644
Binary files a/instat/translations/rInstatTranslations.db and b/instat/translations/rInstatTranslations.db differ
diff --git a/instat/ucrColumnMetadata.Designer.vb b/instat/ucrColumnMetadata.Designer.vb
index 23b0067bd9c..301a3b4519b 100644
--- a/instat/ucrColumnMetadata.Designer.vb
+++ b/instat/ucrColumnMetadata.Designer.vb
@@ -49,7 +49,6 @@ Partial Class ucrColumnMetadata
Me.unhideSheet = New System.Windows.Forms.ToolStripMenuItem()
Me.copySheet = New System.Windows.Forms.ToolStripMenuItem()
Me.reorderSheet = New System.Windows.Forms.ToolStripMenuItem()
- Me.viewSheet = New System.Windows.Forms.ToolStripMenuItem()
Me.ToolStripSeparator4 = New System.Windows.Forms.ToolStripSeparator()
Me.mnuHelp2 = New System.Windows.Forms.ToolStripMenuItem()
Me.propertiesContextMenuStrip = New System.Windows.Forms.ContextMenuStrip(Me.components)
@@ -82,6 +81,7 @@ Partial Class ucrColumnMetadata
Me.columnContextMenuStrip = New System.Windows.Forms.ContextMenuStrip(Me.components)
Me.ToolStripSeparator3 = New System.Windows.Forms.ToolStripSeparator()
Me.mnuHelp1 = New System.Windows.Forms.ToolStripMenuItem()
+ Me.ToolStripSeparator5 = New System.Windows.Forms.ToolStripSeparator()
Me.cellContextMenuStrip.SuspendLayout()
Me.statusColumnMenu.SuspendLayout()
Me.propertiesContextMenuStrip.SuspendLayout()
@@ -105,9 +105,9 @@ Partial Class ucrColumnMetadata
'statusColumnMenu
'
Me.statusColumnMenu.ImageScalingSize = New System.Drawing.Size(20, 20)
- Me.statusColumnMenu.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.deleteDataFrame, Me.renameSheet, Me.mnuBottomAddComment, Me.hideSheet, Me.unhideSheet, Me.copySheet, Me.reorderSheet, Me.viewSheet, Me.ToolStripSeparator4, Me.mnuHelp2})
+ Me.statusColumnMenu.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.renameSheet, Me.reorderSheet, Me.copySheet, Me.deleteDataFrame, Me.hideSheet, Me.unhideSheet, Me.ToolStripSeparator5, Me.mnuBottomAddComment, Me.ToolStripSeparator4, Me.mnuHelp2})
Me.statusColumnMenu.Name = "statusColumnMenu"
- Me.statusColumnMenu.Size = New System.Drawing.Size(181, 230)
+ Me.statusColumnMenu.Size = New System.Drawing.Size(181, 214)
'
'deleteDataFrame
'
@@ -151,12 +151,6 @@ Partial Class ucrColumnMetadata
Me.reorderSheet.Size = New System.Drawing.Size(180, 22)
Me.reorderSheet.Text = "Reorder..."
'
- 'viewSheet
- '
- Me.viewSheet.Name = "viewSheet"
- Me.viewSheet.Size = New System.Drawing.Size(180, 22)
- Me.viewSheet.Text = "View Data Frame"
- '
'ToolStripSeparator4
'
Me.ToolStripSeparator4.Name = "ToolStripSeparator4"
@@ -373,6 +367,11 @@ Partial Class ucrColumnMetadata
Me.mnuHelp1.Size = New System.Drawing.Size(214, 22)
Me.mnuHelp1.Text = "Help"
'
+ 'ToolStripSeparator5
+ '
+ Me.ToolStripSeparator5.Name = "ToolStripSeparator5"
+ Me.ToolStripSeparator5.Size = New System.Drawing.Size(177, 6)
+ '
'ucrColumnMetadata
'
Me.AutoScaleDimensions = New System.Drawing.SizeF(96.0!, 96.0!)
@@ -403,7 +402,6 @@ Partial Class ucrColumnMetadata
Friend WithEvents unhideSheet As ToolStripMenuItem
Friend WithEvents copySheet As ToolStripMenuItem
Friend WithEvents reorderSheet As ToolStripMenuItem
- Friend WithEvents viewSheet As ToolStripMenuItem
Friend WithEvents mnuBottomAddComment As ToolStripMenuItem
Friend WithEvents ucrLinuxGrid As ucrColumnMetadataLinuxGrid
Friend WithEvents ucrReoGrid As ucrColumnMetadataReoGrid
@@ -433,4 +431,5 @@ Partial Class ucrColumnMetadata
Friend WithEvents mnuHelp1 As ToolStripMenuItem
Friend WithEvents ToolStripSeparator4 As ToolStripSeparator
Friend WithEvents mnuHelp2 As ToolStripMenuItem
+ Friend WithEvents ToolStripSeparator5 As ToolStripSeparator
End Class
diff --git a/instat/ucrColumnMetadata.vb b/instat/ucrColumnMetadata.vb
index 2d102ea97c4..f7df8f6fc14 100644
--- a/instat/ucrColumnMetadata.vb
+++ b/instat/ucrColumnMetadata.vb
@@ -473,12 +473,6 @@ Public Class ucrColumnMetadata
dlgCopyDataFrame.ShowDialog()
End Sub
- Private Sub viewSheet_Click(sender As Object, e As EventArgs) Handles viewSheet.Click
- StartWait()
- GetCurrentDataFrameFocus().clsPrepareFunctions.ViewDataFrame()
- EndWait()
- End Sub
-
Private Sub reorderSheet_Click(sender As Object, e As EventArgs) Handles reorderSheet.Click
dlgReorderDataFrame.ShowDialog()
End Sub
diff --git a/instat/ucrDataFrameMetadata.Designer.vb b/instat/ucrDataFrameMetadata.Designer.vb
index 94ceb188edc..371422d6c61 100644
--- a/instat/ucrDataFrameMetadata.Designer.vb
+++ b/instat/ucrDataFrameMetadata.Designer.vb
@@ -50,12 +50,12 @@ Partial Class ucrDataFrameMetadata
Me.unhideSheet = New System.Windows.Forms.ToolStripMenuItem()
Me.ToolStripSeparator11 = New System.Windows.Forms.ToolStripSeparator()
Me.mnuAddComment = New System.Windows.Forms.ToolStripMenuItem()
- Me.mnuViewHTML = New System.Windows.Forms.ToolStripMenuItem()
- Me.viewSheet = New System.Windows.Forms.ToolStripMenuItem()
Me.lblHeaderDataFrameMetaData = New System.Windows.Forms.Label()
Me.tlpTableContainer = New System.Windows.Forms.TableLayoutPanel()
Me.ucrLinuxGrid = New instat.ucrDataframeMetadataLinuxGrid()
Me.ucrReoGrid = New instat.ucrDataframeMetadataReoGrid()
+ Me.HelpToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem()
+ Me.ToolStripSeparator1 = New System.Windows.Forms.ToolStripSeparator()
Me.cellContextMenuStrip.SuspendLayout()
Me.rowRightClickMenu.SuspendLayout()
Me.tlpTableContainer.SuspendLayout()
@@ -77,71 +77,58 @@ Partial Class ucrDataFrameMetadata
'rowRightClickMenu
'
Me.rowRightClickMenu.ImageScalingSize = New System.Drawing.Size(20, 20)
- Me.rowRightClickMenu.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.renameSheet, Me.reorderSheet, Me.copySheet, Me.deleteDataFrame, Me.hideSheet, Me.unhideSheet, Me.ToolStripSeparator11, Me.mnuAddComment, Me.mnuViewHTML, Me.viewSheet})
+ Me.rowRightClickMenu.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.renameSheet, Me.reorderSheet, Me.copySheet, Me.deleteDataFrame, Me.hideSheet, Me.unhideSheet, Me.ToolStripSeparator1, Me.mnuAddComment, Me.ToolStripSeparator11, Me.HelpToolStripMenuItem})
Me.rowRightClickMenu.Name = "statusColumnMenu"
- Me.rowRightClickMenu.Size = New System.Drawing.Size(163, 208)
+ Me.rowRightClickMenu.Size = New System.Drawing.Size(181, 214)
'
'renameSheet
'
Me.renameSheet.Name = "renameSheet"
- Me.renameSheet.Size = New System.Drawing.Size(162, 22)
+ Me.renameSheet.Size = New System.Drawing.Size(180, 22)
Me.renameSheet.Text = "Rename..."
'
'reorderSheet
'
Me.reorderSheet.Enabled = False
Me.reorderSheet.Name = "reorderSheet"
- Me.reorderSheet.Size = New System.Drawing.Size(162, 22)
+ Me.reorderSheet.Size = New System.Drawing.Size(180, 22)
Me.reorderSheet.Text = "Reorder..."
'
'copySheet
'
Me.copySheet.Name = "copySheet"
- Me.copySheet.Size = New System.Drawing.Size(162, 22)
+ Me.copySheet.Size = New System.Drawing.Size(180, 22)
Me.copySheet.Text = "Copy..."
'
'deleteDataFrame
'
Me.deleteDataFrame.Name = "deleteDataFrame"
- Me.deleteDataFrame.Size = New System.Drawing.Size(162, 22)
+ Me.deleteDataFrame.Size = New System.Drawing.Size(180, 22)
Me.deleteDataFrame.Text = "Delete..."
'
'hideSheet
'
Me.hideSheet.Name = "hideSheet"
- Me.hideSheet.Size = New System.Drawing.Size(162, 22)
+ Me.hideSheet.Size = New System.Drawing.Size(180, 22)
Me.hideSheet.Text = "Hide"
'
'unhideSheet
'
Me.unhideSheet.Name = "unhideSheet"
- Me.unhideSheet.Size = New System.Drawing.Size(162, 22)
+ Me.unhideSheet.Size = New System.Drawing.Size(180, 22)
Me.unhideSheet.Text = "Unhide..."
'
'ToolStripSeparator11
'
Me.ToolStripSeparator11.Name = "ToolStripSeparator11"
- Me.ToolStripSeparator11.Size = New System.Drawing.Size(159, 6)
+ Me.ToolStripSeparator11.Size = New System.Drawing.Size(177, 6)
'
'mnuAddComment
'
Me.mnuAddComment.Name = "mnuAddComment"
- Me.mnuAddComment.Size = New System.Drawing.Size(162, 22)
+ Me.mnuAddComment.Size = New System.Drawing.Size(180, 22)
Me.mnuAddComment.Text = "Add Comment..."
'
- 'mnuViewHTML
- '
- Me.mnuViewHTML.Enabled = False
- Me.mnuViewHTML.Name = "mnuViewHTML"
- Me.mnuViewHTML.Size = New System.Drawing.Size(162, 22)
- Me.mnuViewHTML.Text = "View HTML"
- '
- 'viewSheet
- '
- Me.viewSheet.Name = "viewSheet"
- Me.viewSheet.Size = New System.Drawing.Size(162, 22)
- Me.viewSheet.Text = "View Data Frame"
- '
'lblHeaderDataFrameMetaData
'
Me.lblHeaderDataFrameMetaData.BackColor = System.Drawing.Color.FromArgb(CType(CType(35, Byte), Integer), CType(CType(105, Byte), Integer), CType(CType(190, Byte), Integer))
@@ -192,6 +179,17 @@ Partial Class ucrDataFrameMetadata
Me.ucrReoGrid.Size = New System.Drawing.Size(324, 381)
Me.ucrReoGrid.TabIndex = 9
'
+ 'HelpToolStripMenuItem
+ '
+ Me.HelpToolStripMenuItem.Name = "HelpToolStripMenuItem"
+ Me.HelpToolStripMenuItem.Size = New System.Drawing.Size(180, 22)
+ Me.HelpToolStripMenuItem.Text = "Help"
+ '
+ 'ToolStripSeparator1
+ '
+ Me.ToolStripSeparator1.Name = "ToolStripSeparator1"
+ Me.ToolStripSeparator1.Size = New System.Drawing.Size(177, 6)
+ '
'ucrDataFrameMetadata
'
Me.AutoScaleDimensions = New System.Drawing.SizeF(96.0!, 96.0!)
@@ -217,10 +215,10 @@ Partial Class ucrDataFrameMetadata
Friend WithEvents unhideSheet As ToolStripMenuItem
Friend WithEvents copySheet As ToolStripMenuItem
Friend WithEvents reorderSheet As ToolStripMenuItem
- Friend WithEvents viewSheet As ToolStripMenuItem
Friend WithEvents mnuAddComment As ToolStripMenuItem
Friend WithEvents ucrLinuxGrid As ucrDataframeMetadataLinuxGrid
Friend WithEvents ucrReoGrid As ucrDataframeMetadataReoGrid
- Friend WithEvents mnuViewHTML As ToolStripMenuItem
Friend WithEvents ToolStripSeparator11 As ToolStripSeparator
+ Friend WithEvents ToolStripSeparator1 As ToolStripSeparator
+ Friend WithEvents HelpToolStripMenuItem As ToolStripMenuItem
End Class
diff --git a/instat/ucrDataFrameMetadata.vb b/instat/ucrDataFrameMetadata.vb
index 821ff413084..29d90deadfe 100644
--- a/instat/ucrDataFrameMetadata.vb
+++ b/instat/ucrDataFrameMetadata.vb
@@ -200,16 +200,6 @@ Public Class ucrDataFrameMetadata
dlgCopyDataFrame.ShowDialog()
End Sub
- Private Sub viewSheet_Click(sender As Object, e As EventArgs) Handles viewSheet.Click
- Dim strScript As String = ""
- Dim strTemp As String
- clsGetDataFrame.AddParameter("data_name", Chr(34) & GetSelectedDataframeNameFromSelectedRow() & Chr(34), iPosition:=0)
- clsViewDataFrame.AddParameter("x", clsRFunctionParameter:=clsGetDataFrame, iPosition:=0)
- clsGetDataFrame.SetAssignTo(GetSelectedDataframeNameFromSelectedRow)
- strTemp = clsViewDataFrame.ToScript(strScript)
- RunScriptFromDataFrameMetadata(strScript & strTemp, strComment:="Right click menu: View R Data Frame", bSeparateThread:=False)
- End Sub
-
Private Sub reorderSheet_Click(sender As Object, e As EventArgs) Handles reorderSheet.Click
dlgReorderDataFrame.ShowDialog()
End Sub
@@ -222,4 +212,8 @@ Public Class ucrDataFrameMetadata
dlgAddComment.SetPosition(strDataFrame:=_grid.CurrentWorksheet.Name)
dlgAddComment.ShowDialog()
End Sub
+
+ Private Sub HelpToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles HelpToolStripMenuItem.Click
+ Help.ShowHelp(Me, frmMain.strStaticPath & "\" & frmMain.strHelpFilePath, HelpNavigator.TopicId, "544")
+ End Sub
End Class
\ No newline at end of file
diff --git a/instat/ucrDataView.Designer.vb b/instat/ucrDataView.Designer.vb
index 6f86b446e0f..b9cfb81ec5d 100644
--- a/instat/ucrDataView.Designer.vb
+++ b/instat/ucrDataView.Designer.vb
@@ -113,8 +113,6 @@ Partial Class ucrDataView
Me.unhideSheet = New System.Windows.Forms.ToolStripMenuItem()
Me.ToolStripSeparator12 = New System.Windows.Forms.ToolStripSeparator()
Me.mnuBottomAddComment = New System.Windows.Forms.ToolStripMenuItem()
- Me.mnuViewHTML = New System.Windows.Forms.ToolStripMenuItem()
- Me.ViewSheet = New System.Windows.Forms.ToolStripMenuItem()
Me.ToolStripSeparator11 = New System.Windows.Forms.ToolStripSeparator()
Me.mnuHelp3 = New System.Windows.Forms.ToolStripMenuItem()
Me.lblHeaderDataView = New System.Windows.Forms.Label()
@@ -150,9 +148,9 @@ Partial Class ucrDataView
Me.lblRowNext = New System.Windows.Forms.Label()
Me.lblColLast = New System.Windows.Forms.Label()
Me.lblRowBack = New System.Windows.Forms.Label()
- Me.ttGoToRowOrColPage = New System.Windows.Forms.ToolTip(Me.components)
Me.ucrReoGrid = New instat.ucrDataViewReoGrid()
Me.ucrLinuxGrid = New instat.ucrDataViewLinuxGrid()
+ Me.ttGoToRowOrColPage = New System.Windows.Forms.ToolTip(Me.components)
Me.columnContextMenuStrip.SuspendLayout()
Me.cellContextMenuStrip.SuspendLayout()
Me.rowContextMenuStrip.SuspendLayout()
@@ -171,159 +169,159 @@ Partial Class ucrDataView
Me.columnContextMenuStrip.ImageScalingSize = New System.Drawing.Size(20, 20)
Me.columnContextMenuStrip.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.mnuColumnRename, Me.mnuDuplicateColumn, Me.mnuReorderColumns, Me.mnuInsertColsBefore, Me.mnuInsertColsAfter, Me.mnuDeleteCol, Me.ToolStripSeparator13, Me.mnuEditCell2, Me.mnuDeleteCells2, Me.toolStripMenuItem2, Me.mnuConvertToFactor, Me.mnuCovertToOrderedFactors, Me.mnuConvertText, Me.mnuConvertToLogical, Me.mnuConvertVariate, Me.ToolStripSeparator1, Me.mnuLevelsLabels, Me.toolStripMenuItem21, Me.mnuSort, Me.mnuColumnAddComment, Me.mnuColumnFilterRows, Me.mnuColumnContextColumnSelection, Me.mnuColumnContextRemoveCurrentColumnSelection, Me.mnuClearColumnFilter, Me.ToolStripSeparator8, Me.mnuHelp})
Me.columnContextMenuStrip.Name = "columnContextMenuStrip"
- Me.columnContextMenuStrip.Size = New System.Drawing.Size(293, 706)
+ Me.columnContextMenuStrip.Size = New System.Drawing.Size(215, 496)
'
'mnuColumnRename
'
Me.mnuColumnRename.Name = "mnuColumnRename"
- Me.mnuColumnRename.Size = New System.Drawing.Size(292, 32)
+ Me.mnuColumnRename.Size = New System.Drawing.Size(214, 22)
Me.mnuColumnRename.Text = "Rename Column..."
'
'mnuDuplicateColumn
'
Me.mnuDuplicateColumn.Name = "mnuDuplicateColumn"
- Me.mnuDuplicateColumn.Size = New System.Drawing.Size(292, 32)
+ Me.mnuDuplicateColumn.Size = New System.Drawing.Size(214, 22)
Me.mnuDuplicateColumn.Text = "Duplicate Column..."
'
'mnuReorderColumns
'
Me.mnuReorderColumns.Name = "mnuReorderColumns"
- Me.mnuReorderColumns.Size = New System.Drawing.Size(292, 32)
+ Me.mnuReorderColumns.Size = New System.Drawing.Size(214, 22)
Me.mnuReorderColumns.Text = "Reorder Column(s)..."
'
'mnuInsertColsBefore
'
Me.mnuInsertColsBefore.Name = "mnuInsertColsBefore"
- Me.mnuInsertColsBefore.Size = New System.Drawing.Size(292, 32)
+ Me.mnuInsertColsBefore.Size = New System.Drawing.Size(214, 22)
Me.mnuInsertColsBefore.Text = "Insert Column(s) Before"
'
'mnuInsertColsAfter
'
Me.mnuInsertColsAfter.Name = "mnuInsertColsAfter"
- Me.mnuInsertColsAfter.Size = New System.Drawing.Size(292, 32)
+ Me.mnuInsertColsAfter.Size = New System.Drawing.Size(214, 22)
Me.mnuInsertColsAfter.Text = "Insert Column(s) After"
'
'mnuDeleteCol
'
Me.mnuDeleteCol.Name = "mnuDeleteCol"
- Me.mnuDeleteCol.Size = New System.Drawing.Size(292, 32)
+ Me.mnuDeleteCol.Size = New System.Drawing.Size(214, 22)
Me.mnuDeleteCol.Text = "Delete Column(s)"
'
'ToolStripSeparator13
'
Me.ToolStripSeparator13.Name = "ToolStripSeparator13"
- Me.ToolStripSeparator13.Size = New System.Drawing.Size(289, 6)
+ Me.ToolStripSeparator13.Size = New System.Drawing.Size(211, 6)
'
'mnuEditCell2
'
Me.mnuEditCell2.Enabled = False
Me.mnuEditCell2.Name = "mnuEditCell2"
- Me.mnuEditCell2.Size = New System.Drawing.Size(292, 32)
+ Me.mnuEditCell2.Size = New System.Drawing.Size(214, 22)
Me.mnuEditCell2.Text = "Edit Cell..."
'
'mnuDeleteCells2
'
Me.mnuDeleteCells2.Enabled = False
Me.mnuDeleteCells2.Name = "mnuDeleteCells2"
- Me.mnuDeleteCells2.Size = New System.Drawing.Size(292, 32)
+ Me.mnuDeleteCells2.Size = New System.Drawing.Size(214, 22)
Me.mnuDeleteCells2.Text = "Delete Cell(s)"
'
'toolStripMenuItem2
'
Me.toolStripMenuItem2.Name = "toolStripMenuItem2"
- Me.toolStripMenuItem2.Size = New System.Drawing.Size(289, 6)
+ Me.toolStripMenuItem2.Size = New System.Drawing.Size(211, 6)
'
'mnuConvertToFactor
'
Me.mnuConvertToFactor.Name = "mnuConvertToFactor"
- Me.mnuConvertToFactor.Size = New System.Drawing.Size(292, 32)
+ Me.mnuConvertToFactor.Size = New System.Drawing.Size(214, 22)
Me.mnuConvertToFactor.Text = "Convert to Factor"
'
'mnuCovertToOrderedFactors
'
Me.mnuCovertToOrderedFactors.Name = "mnuCovertToOrderedFactors"
- Me.mnuCovertToOrderedFactors.Size = New System.Drawing.Size(292, 32)
+ Me.mnuCovertToOrderedFactors.Size = New System.Drawing.Size(214, 22)
Me.mnuCovertToOrderedFactors.Text = "Convert to Ordered Factor"
'
'mnuConvertText
'
Me.mnuConvertText.Name = "mnuConvertText"
- Me.mnuConvertText.Size = New System.Drawing.Size(292, 32)
+ Me.mnuConvertText.Size = New System.Drawing.Size(214, 22)
Me.mnuConvertText.Text = "Convert to Character"
'
'mnuConvertToLogical
'
Me.mnuConvertToLogical.Name = "mnuConvertToLogical"
- Me.mnuConvertToLogical.Size = New System.Drawing.Size(292, 32)
+ Me.mnuConvertToLogical.Size = New System.Drawing.Size(214, 22)
Me.mnuConvertToLogical.Text = "Convert to Logical"
'
'mnuConvertVariate
'
Me.mnuConvertVariate.Name = "mnuConvertVariate"
- Me.mnuConvertVariate.Size = New System.Drawing.Size(292, 32)
+ Me.mnuConvertVariate.Size = New System.Drawing.Size(214, 22)
Me.mnuConvertVariate.Text = "Convert to Numeric"
'
'ToolStripSeparator1
'
Me.ToolStripSeparator1.Name = "ToolStripSeparator1"
- Me.ToolStripSeparator1.Size = New System.Drawing.Size(289, 6)
+ Me.ToolStripSeparator1.Size = New System.Drawing.Size(211, 6)
'
'mnuLevelsLabels
'
Me.mnuLevelsLabels.Name = "mnuLevelsLabels"
- Me.mnuLevelsLabels.Size = New System.Drawing.Size(292, 32)
+ Me.mnuLevelsLabels.Size = New System.Drawing.Size(214, 22)
Me.mnuLevelsLabels.Text = "Levels/Labels..."
'
'toolStripMenuItem21
'
Me.toolStripMenuItem21.Name = "toolStripMenuItem21"
- Me.toolStripMenuItem21.Size = New System.Drawing.Size(289, 6)
+ Me.toolStripMenuItem21.Size = New System.Drawing.Size(211, 6)
'
'mnuSort
'
Me.mnuSort.Name = "mnuSort"
- Me.mnuSort.Size = New System.Drawing.Size(292, 32)
+ Me.mnuSort.Size = New System.Drawing.Size(214, 22)
Me.mnuSort.Text = "Sort..."
'
'mnuColumnAddComment
'
Me.mnuColumnAddComment.Name = "mnuColumnAddComment"
- Me.mnuColumnAddComment.Size = New System.Drawing.Size(292, 32)
+ Me.mnuColumnAddComment.Size = New System.Drawing.Size(214, 22)
Me.mnuColumnAddComment.Text = "Add Comment..."
'
'mnuColumnFilterRows
'
Me.mnuColumnFilterRows.Name = "mnuColumnFilterRows"
- Me.mnuColumnFilterRows.Size = New System.Drawing.Size(292, 32)
+ Me.mnuColumnFilterRows.Size = New System.Drawing.Size(214, 22)
Me.mnuColumnFilterRows.Text = "Filter Rows..."
'
'mnuColumnContextColumnSelection
'
Me.mnuColumnContextColumnSelection.Name = "mnuColumnContextColumnSelection"
- Me.mnuColumnContextColumnSelection.Size = New System.Drawing.Size(292, 32)
+ Me.mnuColumnContextColumnSelection.Size = New System.Drawing.Size(214, 22)
Me.mnuColumnContextColumnSelection.Text = "Select Columns..."
'
'mnuColumnContextRemoveCurrentColumnSelection
'
Me.mnuColumnContextRemoveCurrentColumnSelection.Name = "mnuColumnContextRemoveCurrentColumnSelection"
- Me.mnuColumnContextRemoveCurrentColumnSelection.Size = New System.Drawing.Size(292, 32)
+ Me.mnuColumnContextRemoveCurrentColumnSelection.Size = New System.Drawing.Size(214, 22)
Me.mnuColumnContextRemoveCurrentColumnSelection.Text = "Remove Column Selection"
'
'mnuClearColumnFilter
'
Me.mnuClearColumnFilter.Name = "mnuClearColumnFilter"
- Me.mnuClearColumnFilter.Size = New System.Drawing.Size(292, 32)
+ Me.mnuClearColumnFilter.Size = New System.Drawing.Size(214, 22)
Me.mnuClearColumnFilter.Text = "Remove Current Filter"
'
'ToolStripSeparator8
'
Me.ToolStripSeparator8.Name = "ToolStripSeparator8"
- Me.ToolStripSeparator8.Size = New System.Drawing.Size(289, 6)
+ Me.ToolStripSeparator8.Size = New System.Drawing.Size(211, 6)
'
'mnuHelp
'
Me.mnuHelp.Name = "mnuHelp"
- Me.mnuHelp.Size = New System.Drawing.Size(292, 32)
+ Me.mnuHelp.Size = New System.Drawing.Size(214, 22)
Me.mnuHelp.Text = "Help"
'
'cellContextMenuStrip
@@ -331,146 +329,146 @@ Partial Class ucrDataView
Me.cellContextMenuStrip.ImageScalingSize = New System.Drawing.Size(20, 20)
Me.cellContextMenuStrip.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.mnuRenameColumn, Me.mnuDuplColumn, Me.mnuReorderColumn, Me.mnuDeleteCol2, Me.ToolStripSeparator14, Me.mnuEditCell, Me.mnuDeleteCells, Me.ToolStripSeparator5, Me.mnuConvertToFact, Me.mnuConvertToOrderedFactor, Me.mnuConvertToCharacter, Me.mnuConvertToLogic, Me.mnuConvertToNumeric, Me.ToolStripSeparator6, Me.mnuLabelsLevel, Me.ToolStripSeparator7, Me.mnuSorts, Me.mnuComment, Me.mnuFilterRows, Me.mnuCellContextColumnSelection, Me.mnuCellContextRemoveCurrentColumnSelection, Me.mnuRemoveCurrentFilters, Me.ToolStripSeparator9, Me.mnuHelp1})
Me.cellContextMenuStrip.Name = "cellContextMenuStrip"
- Me.cellContextMenuStrip.Size = New System.Drawing.Size(293, 642)
+ Me.cellContextMenuStrip.Size = New System.Drawing.Size(215, 452)
'
'mnuRenameColumn
'
Me.mnuRenameColumn.Name = "mnuRenameColumn"
- Me.mnuRenameColumn.Size = New System.Drawing.Size(292, 32)
+ Me.mnuRenameColumn.Size = New System.Drawing.Size(214, 22)
Me.mnuRenameColumn.Text = "Rename Column..."
'
'mnuDuplColumn
'
Me.mnuDuplColumn.Name = "mnuDuplColumn"
- Me.mnuDuplColumn.Size = New System.Drawing.Size(292, 32)
+ Me.mnuDuplColumn.Size = New System.Drawing.Size(214, 22)
Me.mnuDuplColumn.Text = "Duplicate Column..."
'
'mnuReorderColumn
'
Me.mnuReorderColumn.Name = "mnuReorderColumn"
- Me.mnuReorderColumn.Size = New System.Drawing.Size(292, 32)
+ Me.mnuReorderColumn.Size = New System.Drawing.Size(214, 22)
Me.mnuReorderColumn.Text = "Reorder Column(s)..."
'
'mnuDeleteCol2
'
Me.mnuDeleteCol2.Enabled = False
Me.mnuDeleteCol2.Name = "mnuDeleteCol2"
- Me.mnuDeleteCol2.Size = New System.Drawing.Size(292, 32)
+ Me.mnuDeleteCol2.Size = New System.Drawing.Size(214, 22)
Me.mnuDeleteCol2.Text = "Delete Column(s)"
'
'ToolStripSeparator14
'
Me.ToolStripSeparator14.Name = "ToolStripSeparator14"
- Me.ToolStripSeparator14.Size = New System.Drawing.Size(289, 6)
+ Me.ToolStripSeparator14.Size = New System.Drawing.Size(211, 6)
'
'mnuEditCell
'
Me.mnuEditCell.Name = "mnuEditCell"
- Me.mnuEditCell.Size = New System.Drawing.Size(292, 32)
+ Me.mnuEditCell.Size = New System.Drawing.Size(214, 22)
Me.mnuEditCell.Text = "Edit Cell..."
'
'mnuDeleteCells
'
Me.mnuDeleteCells.Name = "mnuDeleteCells"
- Me.mnuDeleteCells.Size = New System.Drawing.Size(292, 32)
+ Me.mnuDeleteCells.Size = New System.Drawing.Size(214, 22)
Me.mnuDeleteCells.Text = "Delete Cell(s)"
'
'ToolStripSeparator5
'
Me.ToolStripSeparator5.Name = "ToolStripSeparator5"
- Me.ToolStripSeparator5.Size = New System.Drawing.Size(289, 6)
+ Me.ToolStripSeparator5.Size = New System.Drawing.Size(211, 6)
'
'mnuConvertToFact
'
Me.mnuConvertToFact.Name = "mnuConvertToFact"
- Me.mnuConvertToFact.Size = New System.Drawing.Size(292, 32)
+ Me.mnuConvertToFact.Size = New System.Drawing.Size(214, 22)
Me.mnuConvertToFact.Text = "Convert to Factor"
'
'mnuConvertToOrderedFactor
'
Me.mnuConvertToOrderedFactor.Name = "mnuConvertToOrderedFactor"
- Me.mnuConvertToOrderedFactor.Size = New System.Drawing.Size(292, 32)
+ Me.mnuConvertToOrderedFactor.Size = New System.Drawing.Size(214, 22)
Me.mnuConvertToOrderedFactor.Text = "Convert to Ordered Factor"
'
'mnuConvertToCharacter
'
Me.mnuConvertToCharacter.Name = "mnuConvertToCharacter"
- Me.mnuConvertToCharacter.Size = New System.Drawing.Size(292, 32)
+ Me.mnuConvertToCharacter.Size = New System.Drawing.Size(214, 22)
Me.mnuConvertToCharacter.Text = "Convert to Character"
'
'mnuConvertToLogic
'
Me.mnuConvertToLogic.Name = "mnuConvertToLogic"
- Me.mnuConvertToLogic.Size = New System.Drawing.Size(292, 32)
+ Me.mnuConvertToLogic.Size = New System.Drawing.Size(214, 22)
Me.mnuConvertToLogic.Text = "Convert to Logical"
'
'mnuConvertToNumeric
'
Me.mnuConvertToNumeric.Name = "mnuConvertToNumeric"
- Me.mnuConvertToNumeric.Size = New System.Drawing.Size(292, 32)
+ Me.mnuConvertToNumeric.Size = New System.Drawing.Size(214, 22)
Me.mnuConvertToNumeric.Text = "Convert to Numeric"
'
'ToolStripSeparator6
'
Me.ToolStripSeparator6.Name = "ToolStripSeparator6"
- Me.ToolStripSeparator6.Size = New System.Drawing.Size(289, 6)
+ Me.ToolStripSeparator6.Size = New System.Drawing.Size(211, 6)
'
'mnuLabelsLevel
'
Me.mnuLabelsLevel.Name = "mnuLabelsLevel"
- Me.mnuLabelsLevel.Size = New System.Drawing.Size(292, 32)
+ Me.mnuLabelsLevel.Size = New System.Drawing.Size(214, 22)
Me.mnuLabelsLevel.Text = "Levels/Labels..."
'
'ToolStripSeparator7
'
Me.ToolStripSeparator7.Name = "ToolStripSeparator7"
- Me.ToolStripSeparator7.Size = New System.Drawing.Size(289, 6)
+ Me.ToolStripSeparator7.Size = New System.Drawing.Size(211, 6)
'
'mnuSorts
'
Me.mnuSorts.Name = "mnuSorts"
- Me.mnuSorts.Size = New System.Drawing.Size(292, 32)
+ Me.mnuSorts.Size = New System.Drawing.Size(214, 22)
Me.mnuSorts.Text = "Sort..."
'
'mnuComment
'
Me.mnuComment.Name = "mnuComment"
- Me.mnuComment.Size = New System.Drawing.Size(292, 32)
+ Me.mnuComment.Size = New System.Drawing.Size(214, 22)
Me.mnuComment.Text = "Add Comment..."
'
'mnuFilterRows
'
Me.mnuFilterRows.Name = "mnuFilterRows"
- Me.mnuFilterRows.Size = New System.Drawing.Size(292, 32)
+ Me.mnuFilterRows.Size = New System.Drawing.Size(214, 22)
Me.mnuFilterRows.Text = "Filter Rows..."
'
'mnuCellContextColumnSelection
'
Me.mnuCellContextColumnSelection.Name = "mnuCellContextColumnSelection"
- Me.mnuCellContextColumnSelection.Size = New System.Drawing.Size(292, 32)
+ Me.mnuCellContextColumnSelection.Size = New System.Drawing.Size(214, 22)
Me.mnuCellContextColumnSelection.Text = "Select Columns..."
'
'mnuCellContextRemoveCurrentColumnSelection
'
Me.mnuCellContextRemoveCurrentColumnSelection.Name = "mnuCellContextRemoveCurrentColumnSelection"
- Me.mnuCellContextRemoveCurrentColumnSelection.Size = New System.Drawing.Size(292, 32)
+ Me.mnuCellContextRemoveCurrentColumnSelection.Size = New System.Drawing.Size(214, 22)
Me.mnuCellContextRemoveCurrentColumnSelection.Text = "Remove Column Selection"
'
'mnuRemoveCurrentFilters
'
Me.mnuRemoveCurrentFilters.Name = "mnuRemoveCurrentFilters"
- Me.mnuRemoveCurrentFilters.Size = New System.Drawing.Size(292, 32)
+ Me.mnuRemoveCurrentFilters.Size = New System.Drawing.Size(214, 22)
Me.mnuRemoveCurrentFilters.Text = "Remove Current Filter"
'
'ToolStripSeparator9
'
Me.ToolStripSeparator9.Name = "ToolStripSeparator9"
- Me.ToolStripSeparator9.Size = New System.Drawing.Size(289, 6)
+ Me.ToolStripSeparator9.Size = New System.Drawing.Size(211, 6)
'
'mnuHelp1
'
Me.mnuHelp1.Name = "mnuHelp1"
- Me.mnuHelp1.Size = New System.Drawing.Size(292, 32)
+ Me.mnuHelp1.Size = New System.Drawing.Size(214, 22)
Me.mnuHelp1.Text = "Help"
'
'rowContextMenuStrip
@@ -478,155 +476,142 @@ Partial Class ucrDataView
Me.rowContextMenuStrip.ImageScalingSize = New System.Drawing.Size(20, 20)
Me.rowContextMenuStrip.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.mnuInsertRowsBefore, Me.mnuInsertRowsAfter, Me.mnuDeleteRows, Me.ToolStripSeparator2, Me.mnuAddComment, Me.ToolStripSeparator4, Me.mnuFilter, Me.mnuRowContextColumnSelection, Me.mnuRowContextRemoveCurrentColumnSelection, Me.mnuRemoveCurrentFilter, Me.ToolStripSeparator10, Me.mnuHelp2})
Me.rowContextMenuStrip.Name = "columnContextMenuStrip"
- Me.rowContextMenuStrip.Size = New System.Drawing.Size(292, 343)
+ Me.rowContextMenuStrip.Size = New System.Drawing.Size(215, 220)
'
'mnuInsertRowsBefore
'
Me.mnuInsertRowsBefore.Name = "mnuInsertRowsBefore"
- Me.mnuInsertRowsBefore.Size = New System.Drawing.Size(291, 32)
+ Me.mnuInsertRowsBefore.Size = New System.Drawing.Size(214, 22)
Me.mnuInsertRowsBefore.Text = "Insert Row(s) Before"
'
'mnuInsertRowsAfter
'
Me.mnuInsertRowsAfter.Name = "mnuInsertRowsAfter"
- Me.mnuInsertRowsAfter.Size = New System.Drawing.Size(291, 32)
+ Me.mnuInsertRowsAfter.Size = New System.Drawing.Size(214, 22)
Me.mnuInsertRowsAfter.Text = "Insert Row(s) After"
'
'mnuDeleteRows
'
Me.mnuDeleteRows.Name = "mnuDeleteRows"
- Me.mnuDeleteRows.Size = New System.Drawing.Size(291, 32)
+ Me.mnuDeleteRows.Size = New System.Drawing.Size(214, 22)
Me.mnuDeleteRows.Text = "Delete Row(s)"
'
'ToolStripSeparator2
'
Me.ToolStripSeparator2.Name = "ToolStripSeparator2"
- Me.ToolStripSeparator2.Size = New System.Drawing.Size(288, 6)
+ Me.ToolStripSeparator2.Size = New System.Drawing.Size(211, 6)
'
'mnuAddComment
'
Me.mnuAddComment.Name = "mnuAddComment"
- Me.mnuAddComment.Size = New System.Drawing.Size(291, 32)
+ Me.mnuAddComment.Size = New System.Drawing.Size(214, 22)
Me.mnuAddComment.Text = "Add Comment..."
'
'ToolStripSeparator4
'
Me.ToolStripSeparator4.Name = "ToolStripSeparator4"
- Me.ToolStripSeparator4.Size = New System.Drawing.Size(288, 6)
+ Me.ToolStripSeparator4.Size = New System.Drawing.Size(211, 6)
'
'mnuFilter
'
Me.mnuFilter.Name = "mnuFilter"
- Me.mnuFilter.Size = New System.Drawing.Size(291, 32)
+ Me.mnuFilter.Size = New System.Drawing.Size(214, 22)
Me.mnuFilter.Tag = "Filter..."
Me.mnuFilter.Text = "Filter Rows..."
'
'mnuRowContextColumnSelection
'
Me.mnuRowContextColumnSelection.Name = "mnuRowContextColumnSelection"
- Me.mnuRowContextColumnSelection.Size = New System.Drawing.Size(291, 32)
+ Me.mnuRowContextColumnSelection.Size = New System.Drawing.Size(214, 22)
Me.mnuRowContextColumnSelection.Text = "Select Columns..."
'
'mnuRowContextRemoveCurrentColumnSelection
'
Me.mnuRowContextRemoveCurrentColumnSelection.Name = "mnuRowContextRemoveCurrentColumnSelection"
- Me.mnuRowContextRemoveCurrentColumnSelection.Size = New System.Drawing.Size(291, 32)
+ Me.mnuRowContextRemoveCurrentColumnSelection.Size = New System.Drawing.Size(214, 22)
Me.mnuRowContextRemoveCurrentColumnSelection.Text = "Remove Column Selection"
'
'mnuRemoveCurrentFilter
'
Me.mnuRemoveCurrentFilter.Name = "mnuRemoveCurrentFilter"
- Me.mnuRemoveCurrentFilter.Size = New System.Drawing.Size(291, 32)
+ Me.mnuRemoveCurrentFilter.Size = New System.Drawing.Size(214, 22)
Me.mnuRemoveCurrentFilter.Tag = "Remove_Current_Filter"
Me.mnuRemoveCurrentFilter.Text = "Remove Current Filter"
'
'ToolStripSeparator10
'
Me.ToolStripSeparator10.Name = "ToolStripSeparator10"
- Me.ToolStripSeparator10.Size = New System.Drawing.Size(288, 6)
+ Me.ToolStripSeparator10.Size = New System.Drawing.Size(211, 6)
'
'mnuHelp2
'
Me.mnuHelp2.Name = "mnuHelp2"
- Me.mnuHelp2.Size = New System.Drawing.Size(291, 32)
+ Me.mnuHelp2.Size = New System.Drawing.Size(214, 22)
Me.mnuHelp2.Text = "Help"
'
'statusColumnMenu
'
Me.statusColumnMenu.ImageScalingSize = New System.Drawing.Size(20, 20)
- Me.statusColumnMenu.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.renameSheet, Me.reorderSheet, Me.CopySheet, Me.deleteDataFrame, Me.HideSheet, Me.unhideSheet, Me.ToolStripSeparator12, Me.mnuBottomAddComment, Me.mnuViewHTML, Me.ViewSheet, Me.ToolStripSeparator11, Me.mnuHelp3})
+ Me.statusColumnMenu.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.renameSheet, Me.reorderSheet, Me.CopySheet, Me.deleteDataFrame, Me.HideSheet, Me.unhideSheet, Me.ToolStripSeparator12, Me.mnuBottomAddComment, Me.ToolStripSeparator11, Me.mnuHelp3})
Me.statusColumnMenu.Name = "statusColumnMenu"
- Me.statusColumnMenu.Size = New System.Drawing.Size(218, 336)
+ Me.statusColumnMenu.Size = New System.Drawing.Size(181, 214)
'
'renameSheet
'
Me.renameSheet.Name = "renameSheet"
- Me.renameSheet.Size = New System.Drawing.Size(217, 32)
+ Me.renameSheet.Size = New System.Drawing.Size(180, 22)
Me.renameSheet.Text = "Rename..."
'
'reorderSheet
'
Me.reorderSheet.Name = "reorderSheet"
- Me.reorderSheet.Size = New System.Drawing.Size(217, 32)
+ Me.reorderSheet.Size = New System.Drawing.Size(180, 22)
Me.reorderSheet.Text = "Reorder..."
'
'CopySheet
'
Me.CopySheet.Name = "CopySheet"
- Me.CopySheet.Size = New System.Drawing.Size(217, 32)
+ Me.CopySheet.Size = New System.Drawing.Size(180, 22)
Me.CopySheet.Text = "Copy..."
'
'deleteDataFrame
'
Me.deleteDataFrame.Name = "deleteDataFrame"
- Me.deleteDataFrame.Size = New System.Drawing.Size(217, 32)
+ Me.deleteDataFrame.Size = New System.Drawing.Size(180, 22)
Me.deleteDataFrame.Text = "Delete..."
'
'HideSheet
'
Me.HideSheet.Name = "HideSheet"
- Me.HideSheet.Size = New System.Drawing.Size(217, 32)
+ Me.HideSheet.Size = New System.Drawing.Size(180, 22)
Me.HideSheet.Text = "Hide"
'
'unhideSheet
'
Me.unhideSheet.Name = "unhideSheet"
- Me.unhideSheet.Size = New System.Drawing.Size(217, 32)
+ Me.unhideSheet.Size = New System.Drawing.Size(180, 22)
Me.unhideSheet.Text = "Unhide..."
'
'ToolStripSeparator12
'
Me.ToolStripSeparator12.Name = "ToolStripSeparator12"
- Me.ToolStripSeparator12.Size = New System.Drawing.Size(214, 6)
+ Me.ToolStripSeparator12.Size = New System.Drawing.Size(177, 6)
'
'mnuBottomAddComment
'
Me.mnuBottomAddComment.Name = "mnuBottomAddComment"
- Me.mnuBottomAddComment.Size = New System.Drawing.Size(217, 32)
+ Me.mnuBottomAddComment.Size = New System.Drawing.Size(180, 22)
Me.mnuBottomAddComment.Text = "Add Comment..."
'
- 'mnuViewHTML
- '
- Me.mnuViewHTML.Enabled = False
- Me.mnuViewHTML.Name = "mnuViewHTML"
- Me.mnuViewHTML.Size = New System.Drawing.Size(217, 32)
- Me.mnuViewHTML.Text = "View HTML"
- '
- 'ViewSheet
- '
- Me.ViewSheet.Name = "ViewSheet"
- Me.ViewSheet.Size = New System.Drawing.Size(217, 32)
- Me.ViewSheet.Text = "View Data Frame"
- '
'ToolStripSeparator11
'
Me.ToolStripSeparator11.Name = "ToolStripSeparator11"
- Me.ToolStripSeparator11.Size = New System.Drawing.Size(214, 6)
+ Me.ToolStripSeparator11.Size = New System.Drawing.Size(177, 6)
'
'mnuHelp3
'
Me.mnuHelp3.Name = "mnuHelp3"
- Me.mnuHelp3.Size = New System.Drawing.Size(217, 32)
+ Me.mnuHelp3.Size = New System.Drawing.Size(180, 22)
Me.mnuHelp3.Text = "Help"
'
'lblHeaderDataView
@@ -636,10 +621,9 @@ Partial Class ucrDataView
Me.lblHeaderDataView.Dock = System.Windows.Forms.DockStyle.Fill
Me.lblHeaderDataView.Font = New System.Drawing.Font("Microsoft Sans Serif", 12.0!)
Me.lblHeaderDataView.ForeColor = System.Drawing.SystemColors.Control
- Me.lblHeaderDataView.Location = New System.Drawing.Point(4, 0)
- Me.lblHeaderDataView.Margin = New System.Windows.Forms.Padding(4, 0, 4, 0)
+ Me.lblHeaderDataView.Location = New System.Drawing.Point(3, 0)
Me.lblHeaderDataView.Name = "lblHeaderDataView"
- Me.lblHeaderDataView.Size = New System.Drawing.Size(1114, 30)
+ Me.lblHeaderDataView.Size = New System.Drawing.Size(742, 20)
Me.lblHeaderDataView.TabIndex = 5
Me.lblHeaderDataView.Text = "Data View"
Me.lblHeaderDataView.TextAlign = System.Drawing.ContentAlignment.MiddleCenter
@@ -650,7 +634,7 @@ Partial Class ucrDataView
Me.tlpTableContainer.ColumnStyles.Add(New System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 33.33333!))
Me.tlpTableContainer.ColumnStyles.Add(New System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 33.33333!))
Me.tlpTableContainer.ColumnStyles.Add(New System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 33.33333!))
- Me.tlpTableContainer.ColumnStyles.Add(New System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 20.0!))
+ Me.tlpTableContainer.ColumnStyles.Add(New System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 13.0!))
Me.tlpTableContainer.Controls.Add(Me.panelSectionsAll, 0, 1)
Me.tlpTableContainer.Controls.Add(Me.lblHeaderDataView, 0, 0)
Me.tlpTableContainer.Controls.Add(Me.TblPanPageDisplay, 1, 2)
@@ -658,13 +642,12 @@ Partial Class ucrDataView
Me.tlpTableContainer.Controls.Add(Me.ucrLinuxGrid, 1, 1)
Me.tlpTableContainer.Dock = System.Windows.Forms.DockStyle.Fill
Me.tlpTableContainer.Location = New System.Drawing.Point(0, 0)
- Me.tlpTableContainer.Margin = New System.Windows.Forms.Padding(4, 4, 4, 4)
Me.tlpTableContainer.Name = "tlpTableContainer"
Me.tlpTableContainer.RowCount = 3
- Me.tlpTableContainer.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 30.0!))
+ Me.tlpTableContainer.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 20.0!))
Me.tlpTableContainer.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100.0!))
- Me.tlpTableContainer.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 30.0!))
- Me.tlpTableContainer.Size = New System.Drawing.Size(1122, 722)
+ Me.tlpTableContainer.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 20.0!))
+ Me.tlpTableContainer.Size = New System.Drawing.Size(748, 481)
Me.tlpTableContainer.TabIndex = 6
'
'panelSectionsAll
@@ -674,11 +657,10 @@ Partial Class ucrDataView
Me.panelSectionsAll.Controls.Add(Me.panelSectionStart)
Me.panelSectionsAll.Controls.Add(Me.panelSectionRecent)
Me.panelSectionsAll.Dock = System.Windows.Forms.DockStyle.Fill
- Me.panelSectionsAll.Location = New System.Drawing.Point(4, 34)
- Me.panelSectionsAll.Margin = New System.Windows.Forms.Padding(4, 4, 4, 4)
+ Me.panelSectionsAll.Location = New System.Drawing.Point(3, 23)
Me.panelSectionsAll.Name = "panelSectionsAll"
Me.tlpTableContainer.SetRowSpan(Me.panelSectionsAll, 2)
- Me.panelSectionsAll.Size = New System.Drawing.Size(366, 684)
+ Me.panelSectionsAll.Size = New System.Drawing.Size(243, 455)
Me.panelSectionsAll.TabIndex = 9
'
'panelSectionAdvanced
@@ -687,10 +669,9 @@ Partial Class ucrDataView
Me.panelSectionAdvanced.Controls.Add(Me.lblAdvanced)
Me.panelSectionAdvanced.Controls.Add(Me.linkStartRestoreBackup)
Me.panelSectionAdvanced.Controls.Add(Me.linkStartPasteScriptfromClipboard)
- Me.panelSectionAdvanced.Location = New System.Drawing.Point(40, 618)
- Me.panelSectionAdvanced.Margin = New System.Windows.Forms.Padding(4, 4, 4, 4)
+ Me.panelSectionAdvanced.Location = New System.Drawing.Point(27, 412)
Me.panelSectionAdvanced.Name = "panelSectionAdvanced"
- Me.panelSectionAdvanced.Size = New System.Drawing.Size(561, 124)
+ Me.panelSectionAdvanced.Size = New System.Drawing.Size(374, 83)
Me.panelSectionAdvanced.TabIndex = 12
'
'linkStartAddRPackage
@@ -699,10 +680,9 @@ Partial Class ucrDataView
Me.linkStartAddRPackage.AutoSize = True
Me.linkStartAddRPackage.ImeMode = System.Windows.Forms.ImeMode.NoControl
Me.linkStartAddRPackage.LinkBehavior = System.Windows.Forms.LinkBehavior.NeverUnderline
- Me.linkStartAddRPackage.Location = New System.Drawing.Point(8, 96)
- Me.linkStartAddRPackage.Margin = New System.Windows.Forms.Padding(4, 0, 4, 0)
+ Me.linkStartAddRPackage.Location = New System.Drawing.Point(5, 64)
Me.linkStartAddRPackage.Name = "linkStartAddRPackage"
- Me.linkStartAddRPackage.Size = New System.Drawing.Size(275, 20)
+ Me.linkStartAddRPackage.Size = New System.Drawing.Size(187, 13)
Me.linkStartAddRPackage.TabIndex = 6
Me.linkStartAddRPackage.TabStop = True
Me.linkStartAddRPackage.Text = "Add R Package To R-Instat... (Online)"
@@ -712,10 +692,9 @@ Partial Class ucrDataView
Me.lblAdvanced.AutoSize = True
Me.lblAdvanced.Font = New System.Drawing.Font("Microsoft Sans Serif", 15.75!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.lblAdvanced.ImeMode = System.Windows.Forms.ImeMode.NoControl
- Me.lblAdvanced.Location = New System.Drawing.Point(4, 6)
- Me.lblAdvanced.Margin = New System.Windows.Forms.Padding(4, 0, 4, 0)
+ Me.lblAdvanced.Location = New System.Drawing.Point(3, 4)
Me.lblAdvanced.Name = "lblAdvanced"
- Me.lblAdvanced.Size = New System.Drawing.Size(159, 37)
+ Me.lblAdvanced.Size = New System.Drawing.Size(108, 25)
Me.lblAdvanced.TabIndex = 0
Me.lblAdvanced.Text = "Advanced"
'
@@ -725,10 +704,9 @@ Partial Class ucrDataView
Me.linkStartRestoreBackup.AutoSize = True
Me.linkStartRestoreBackup.ImeMode = System.Windows.Forms.ImeMode.NoControl
Me.linkStartRestoreBackup.LinkBehavior = System.Windows.Forms.LinkBehavior.NeverUnderline
- Me.linkStartRestoreBackup.Location = New System.Drawing.Point(8, 70)
- Me.linkStartRestoreBackup.Margin = New System.Windows.Forms.Padding(4, 0, 4, 0)
+ Me.linkStartRestoreBackup.Location = New System.Drawing.Point(5, 47)
Me.linkStartRestoreBackup.Name = "linkStartRestoreBackup"
- Me.linkStartRestoreBackup.Size = New System.Drawing.Size(216, 20)
+ Me.linkStartRestoreBackup.Size = New System.Drawing.Size(145, 13)
Me.linkStartRestoreBackup.TabIndex = 4
Me.linkStartRestoreBackup.TabStop = True
Me.linkStartRestoreBackup.Text = "Restore Data From Backup..."
@@ -739,10 +717,9 @@ Partial Class ucrDataView
Me.linkStartPasteScriptfromClipboard.AutoSize = True
Me.linkStartPasteScriptfromClipboard.ImeMode = System.Windows.Forms.ImeMode.NoControl
Me.linkStartPasteScriptfromClipboard.LinkBehavior = System.Windows.Forms.LinkBehavior.NeverUnderline
- Me.linkStartPasteScriptfromClipboard.Location = New System.Drawing.Point(8, 45)
- Me.linkStartPasteScriptfromClipboard.Margin = New System.Windows.Forms.Padding(4, 0, 4, 0)
+ Me.linkStartPasteScriptfromClipboard.Location = New System.Drawing.Point(5, 30)
Me.linkStartPasteScriptfromClipboard.Name = "linkStartPasteScriptfromClipboard"
- Me.linkStartPasteScriptfromClipboard.Size = New System.Drawing.Size(207, 20)
+ Me.linkStartPasteScriptfromClipboard.Size = New System.Drawing.Size(137, 13)
Me.linkStartPasteScriptfromClipboard.TabIndex = 5
Me.linkStartPasteScriptfromClipboard.TabStop = True
Me.linkStartPasteScriptfromClipboard.Text = "Paste Script From Clipboard"
@@ -753,10 +730,9 @@ Partial Class ucrDataView
Me.panelSectionHelp.Controls.Add(Me.linkHelpGettingStarted)
Me.panelSectionHelp.Controls.Add(Me.lblHelp)
Me.panelSectionHelp.Controls.Add(Me.linkHelpRInstatResourcesSite)
- Me.panelSectionHelp.Location = New System.Drawing.Point(42, 476)
- Me.panelSectionHelp.Margin = New System.Windows.Forms.Padding(4, 4, 4, 4)
+ Me.panelSectionHelp.Location = New System.Drawing.Point(28, 317)
Me.panelSectionHelp.Name = "panelSectionHelp"
- Me.panelSectionHelp.Size = New System.Drawing.Size(561, 122)
+ Me.panelSectionHelp.Size = New System.Drawing.Size(374, 81)
Me.panelSectionHelp.TabIndex = 12
'
'linkHelpData
@@ -765,10 +741,9 @@ Partial Class ucrDataView
Me.linkHelpData.AutoSize = True
Me.linkHelpData.ImeMode = System.Windows.Forms.ImeMode.NoControl
Me.linkHelpData.LinkBehavior = System.Windows.Forms.LinkBehavior.NeverUnderline
- Me.linkHelpData.Location = New System.Drawing.Point(8, 70)
- Me.linkHelpData.Margin = New System.Windows.Forms.Padding(4, 0, 4, 0)
+ Me.linkHelpData.Location = New System.Drawing.Point(5, 47)
Me.linkHelpData.Name = "linkHelpData"
- Me.linkHelpData.Size = New System.Drawing.Size(56, 20)
+ Me.linkHelpData.Size = New System.Drawing.Size(39, 13)
Me.linkHelpData.TabIndex = 12
Me.linkHelpData.TabStop = True
Me.linkHelpData.Text = "Data..."
@@ -779,10 +754,9 @@ Partial Class ucrDataView
Me.linkHelpGettingStarted.AutoSize = True
Me.linkHelpGettingStarted.ImeMode = System.Windows.Forms.ImeMode.NoControl
Me.linkHelpGettingStarted.LinkBehavior = System.Windows.Forms.LinkBehavior.NeverUnderline
- Me.linkHelpGettingStarted.Location = New System.Drawing.Point(8, 45)
- Me.linkHelpGettingStarted.Margin = New System.Windows.Forms.Padding(4, 0, 4, 0)
+ Me.linkHelpGettingStarted.Location = New System.Drawing.Point(5, 30)
Me.linkHelpGettingStarted.Name = "linkHelpGettingStarted"
- Me.linkHelpGettingStarted.Size = New System.Drawing.Size(131, 20)
+ Me.linkHelpGettingStarted.Size = New System.Drawing.Size(87, 13)
Me.linkHelpGettingStarted.TabIndex = 11
Me.linkHelpGettingStarted.TabStop = True
Me.linkHelpGettingStarted.Text = "Getting Started..."
@@ -792,10 +766,9 @@ Partial Class ucrDataView
Me.lblHelp.AutoSize = True
Me.lblHelp.Font = New System.Drawing.Font("Microsoft Sans Serif", 15.75!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.lblHelp.ImeMode = System.Windows.Forms.ImeMode.NoControl
- Me.lblHelp.Location = New System.Drawing.Point(4, 6)
- Me.lblHelp.Margin = New System.Windows.Forms.Padding(4, 0, 4, 0)
+ Me.lblHelp.Location = New System.Drawing.Point(3, 4)
Me.lblHelp.Name = "lblHelp"
- Me.lblHelp.Size = New System.Drawing.Size(82, 37)
+ Me.lblHelp.Size = New System.Drawing.Size(56, 25)
Me.lblHelp.TabIndex = 2
Me.lblHelp.Text = "Help"
'
@@ -805,10 +778,9 @@ Partial Class ucrDataView
Me.linkHelpRInstatResourcesSite.AutoSize = True
Me.linkHelpRInstatResourcesSite.ImeMode = System.Windows.Forms.ImeMode.NoControl
Me.linkHelpRInstatResourcesSite.LinkBehavior = System.Windows.Forms.LinkBehavior.NeverUnderline
- Me.linkHelpRInstatResourcesSite.Location = New System.Drawing.Point(8, 96)
- Me.linkHelpRInstatResourcesSite.Margin = New System.Windows.Forms.Padding(4, 0, 4, 0)
+ Me.linkHelpRInstatResourcesSite.Location = New System.Drawing.Point(5, 64)
Me.linkHelpRInstatResourcesSite.Name = "linkHelpRInstatResourcesSite"
- Me.linkHelpRInstatResourcesSite.Size = New System.Drawing.Size(239, 20)
+ Me.linkHelpRInstatResourcesSite.Size = New System.Drawing.Size(158, 13)
Me.linkHelpRInstatResourcesSite.TabIndex = 9
Me.linkHelpRInstatResourcesSite.TabStop = True
Me.linkHelpRInstatResourcesSite.Text = "R-Instat Resources Site (Online)"
@@ -820,10 +792,9 @@ Partial Class ucrDataView
Me.panelSectionStart.Controls.Add(Me.linkStartNewDataFrame)
Me.panelSectionStart.Controls.Add(Me.linkStartOpenFile)
Me.panelSectionStart.Controls.Add(Me.linkStartOpenLibrary)
- Me.panelSectionStart.Location = New System.Drawing.Point(42, 22)
- Me.panelSectionStart.Margin = New System.Windows.Forms.Padding(4, 4, 4, 4)
+ Me.panelSectionStart.Location = New System.Drawing.Point(28, 15)
Me.panelSectionStart.Name = "panelSectionStart"
- Me.panelSectionStart.Size = New System.Drawing.Size(561, 150)
+ Me.panelSectionStart.Size = New System.Drawing.Size(374, 100)
Me.panelSectionStart.TabIndex = 11
'
'linkStartPasteData
@@ -832,10 +803,9 @@ Partial Class ucrDataView
Me.linkStartPasteData.AutoSize = True
Me.linkStartPasteData.ImeMode = System.Windows.Forms.ImeMode.NoControl
Me.linkStartPasteData.LinkBehavior = System.Windows.Forms.LinkBehavior.NeverUnderline
- Me.linkStartPasteData.Location = New System.Drawing.Point(8, 122)
- Me.linkStartPasteData.Margin = New System.Windows.Forms.Padding(4, 0, 4, 0)
+ Me.linkStartPasteData.Location = New System.Drawing.Point(5, 81)
Me.linkStartPasteData.Name = "linkStartPasteData"
- Me.linkStartPasteData.Size = New System.Drawing.Size(213, 20)
+ Me.linkStartPasteData.Size = New System.Drawing.Size(142, 13)
Me.linkStartPasteData.TabIndex = 7
Me.linkStartPasteData.TabStop = True
Me.linkStartPasteData.Text = "Paste Data From Clipboard..."
@@ -845,10 +815,9 @@ Partial Class ucrDataView
Me.lblStart.AutoSize = True
Me.lblStart.Font = New System.Drawing.Font("Microsoft Sans Serif", 15.75!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.lblStart.ImeMode = System.Windows.Forms.ImeMode.NoControl
- Me.lblStart.Location = New System.Drawing.Point(4, 6)
- Me.lblStart.Margin = New System.Windows.Forms.Padding(4, 0, 4, 0)
+ Me.lblStart.Location = New System.Drawing.Point(3, 4)
Me.lblStart.Name = "lblStart"
- Me.lblStart.Size = New System.Drawing.Size(85, 37)
+ Me.lblStart.Size = New System.Drawing.Size(57, 25)
Me.lblStart.TabIndex = 0
Me.lblStart.Text = "Start"
'
@@ -858,10 +827,9 @@ Partial Class ucrDataView
Me.linkStartNewDataFrame.AutoSize = True
Me.linkStartNewDataFrame.ImeMode = System.Windows.Forms.ImeMode.NoControl
Me.linkStartNewDataFrame.LinkBehavior = System.Windows.Forms.LinkBehavior.NeverUnderline
- Me.linkStartNewDataFrame.Location = New System.Drawing.Point(8, 45)
- Me.linkStartNewDataFrame.Margin = New System.Windows.Forms.Padding(4, 0, 4, 0)
+ Me.linkStartNewDataFrame.Location = New System.Drawing.Point(5, 30)
Me.linkStartNewDataFrame.Name = "linkStartNewDataFrame"
- Me.linkStartNewDataFrame.Size = New System.Drawing.Size(141, 20)
+ Me.linkStartNewDataFrame.Size = New System.Drawing.Size(96, 13)
Me.linkStartNewDataFrame.TabIndex = 3
Me.linkStartNewDataFrame.TabStop = True
Me.linkStartNewDataFrame.Text = "New Data Frame..."
@@ -872,10 +840,9 @@ Partial Class ucrDataView
Me.linkStartOpenFile.AutoSize = True
Me.linkStartOpenFile.ImeMode = System.Windows.Forms.ImeMode.NoControl
Me.linkStartOpenFile.LinkBehavior = System.Windows.Forms.LinkBehavior.NeverUnderline
- Me.linkStartOpenFile.Location = New System.Drawing.Point(8, 70)
- Me.linkStartOpenFile.Margin = New System.Windows.Forms.Padding(4, 0, 4, 0)
+ Me.linkStartOpenFile.Location = New System.Drawing.Point(5, 47)
Me.linkStartOpenFile.Name = "linkStartOpenFile"
- Me.linkStartOpenFile.Size = New System.Drawing.Size(137, 20)
+ Me.linkStartOpenFile.Size = New System.Drawing.Size(90, 13)
Me.linkStartOpenFile.TabIndex = 4
Me.linkStartOpenFile.TabStop = True
Me.linkStartOpenFile.Text = "Import From File..."
@@ -886,10 +853,9 @@ Partial Class ucrDataView
Me.linkStartOpenLibrary.AutoSize = True
Me.linkStartOpenLibrary.ImeMode = System.Windows.Forms.ImeMode.NoControl
Me.linkStartOpenLibrary.LinkBehavior = System.Windows.Forms.LinkBehavior.NeverUnderline
- Me.linkStartOpenLibrary.Location = New System.Drawing.Point(8, 96)
- Me.linkStartOpenLibrary.Margin = New System.Windows.Forms.Padding(4, 0, 4, 0)
+ Me.linkStartOpenLibrary.Location = New System.Drawing.Point(5, 64)
Me.linkStartOpenLibrary.Name = "linkStartOpenLibrary"
- Me.linkStartOpenLibrary.Size = New System.Drawing.Size(159, 20)
+ Me.linkStartOpenLibrary.Size = New System.Drawing.Size(105, 13)
Me.linkStartOpenLibrary.TabIndex = 5
Me.linkStartOpenLibrary.TabStop = True
Me.linkStartOpenLibrary.Text = "Import From Library..."
@@ -900,10 +866,9 @@ Partial Class ucrDataView
Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
Me.panelSectionRecent.Controls.Add(Me.lblRecent)
Me.panelSectionRecent.Controls.Add(Me.panelRecentMenuItems)
- Me.panelSectionRecent.Location = New System.Drawing.Point(42, 186)
- Me.panelSectionRecent.Margin = New System.Windows.Forms.Padding(4, 4, 4, 4)
+ Me.panelSectionRecent.Location = New System.Drawing.Point(28, 124)
Me.panelSectionRecent.Name = "panelSectionRecent"
- Me.panelSectionRecent.Size = New System.Drawing.Size(270, 279)
+ Me.panelSectionRecent.Size = New System.Drawing.Size(179, 186)
Me.panelSectionRecent.TabIndex = 13
'
'lblRecent
@@ -911,10 +876,9 @@ Partial Class ucrDataView
Me.lblRecent.AutoSize = True
Me.lblRecent.Font = New System.Drawing.Font("Microsoft Sans Serif", 15.75!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
Me.lblRecent.ImeMode = System.Windows.Forms.ImeMode.NoControl
- Me.lblRecent.Location = New System.Drawing.Point(4, 6)
- Me.lblRecent.Margin = New System.Windows.Forms.Padding(4, 0, 4, 0)
+ Me.lblRecent.Location = New System.Drawing.Point(3, 4)
Me.lblRecent.Name = "lblRecent"
- Me.lblRecent.Size = New System.Drawing.Size(116, 37)
+ Me.lblRecent.Size = New System.Drawing.Size(80, 25)
Me.lblRecent.TabIndex = 1
Me.lblRecent.Text = "Recent"
'
@@ -923,10 +887,9 @@ Partial Class ucrDataView
Me.panelRecentMenuItems.Anchor = CType(((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Left) _
Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
Me.panelRecentMenuItems.AutoScroll = True
- Me.panelRecentMenuItems.Location = New System.Drawing.Point(8, 45)
- Me.panelRecentMenuItems.Margin = New System.Windows.Forms.Padding(4, 4, 4, 4)
+ Me.panelRecentMenuItems.Location = New System.Drawing.Point(5, 30)
Me.panelRecentMenuItems.Name = "panelRecentMenuItems"
- Me.panelRecentMenuItems.Size = New System.Drawing.Size(240, 207)
+ Me.panelRecentMenuItems.Size = New System.Drawing.Size(159, 138)
Me.panelRecentMenuItems.TabIndex = 6
'
'TblPanPageDisplay
@@ -958,22 +921,21 @@ Partial Class ucrDataView
Me.TblPanPageDisplay.Controls.Add(Me.lblRowBack, 3, 0)
Me.TblPanPageDisplay.Dock = System.Windows.Forms.DockStyle.Fill
Me.TblPanPageDisplay.Font = New System.Drawing.Font("Microsoft Sans Serif", 12.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
- Me.TblPanPageDisplay.Location = New System.Drawing.Point(374, 692)
+ Me.TblPanPageDisplay.Location = New System.Drawing.Point(249, 461)
Me.TblPanPageDisplay.Margin = New System.Windows.Forms.Padding(0)
Me.TblPanPageDisplay.Name = "TblPanPageDisplay"
Me.TblPanPageDisplay.RowCount = 1
Me.TblPanPageDisplay.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100.0!))
- Me.TblPanPageDisplay.Size = New System.Drawing.Size(748, 30)
+ Me.TblPanPageDisplay.Size = New System.Drawing.Size(499, 20)
Me.TblPanPageDisplay.TabIndex = 8
'
'lblColFirst
'
Me.lblColFirst.AutoSize = True
Me.lblColFirst.Dock = System.Windows.Forms.DockStyle.Fill
- Me.lblColFirst.Location = New System.Drawing.Point(472, 0)
- Me.lblColFirst.Margin = New System.Windows.Forms.Padding(4, 0, 4, 0)
+ Me.lblColFirst.Location = New System.Drawing.Point(315, 0)
Me.lblColFirst.Name = "lblColFirst"
- Me.lblColFirst.Size = New System.Drawing.Size(26, 30)
+ Me.lblColFirst.Size = New System.Drawing.Size(18, 20)
Me.lblColFirst.TabIndex = 15
Me.lblColFirst.Text = "«"
Me.lblColFirst.TextAlign = System.Drawing.ContentAlignment.MiddleCenter
@@ -982,10 +944,9 @@ Partial Class ucrDataView
'
Me.lblColDisplay.AutoSize = True
Me.lblColDisplay.Dock = System.Windows.Forms.DockStyle.Fill
- Me.lblColDisplay.Location = New System.Drawing.Point(378, 0)
- Me.lblColDisplay.Margin = New System.Windows.Forms.Padding(4, 0, 4, 0)
+ Me.lblColDisplay.Location = New System.Drawing.Point(252, 0)
Me.lblColDisplay.Name = "lblColDisplay"
- Me.lblColDisplay.Size = New System.Drawing.Size(86, 30)
+ Me.lblColDisplay.Size = New System.Drawing.Size(57, 20)
Me.lblColDisplay.TabIndex = 14
Me.lblColDisplay.Text = "Label1"
Me.lblColDisplay.TextAlign = System.Drawing.ContentAlignment.MiddleCenter
@@ -994,10 +955,9 @@ Partial Class ucrDataView
'
Me.lblColNext.AutoSize = True
Me.lblColNext.Dock = System.Windows.Forms.DockStyle.Fill
- Me.lblColNext.Location = New System.Drawing.Point(541, 0)
- Me.lblColNext.Margin = New System.Windows.Forms.Padding(4, 0, 4, 0)
+ Me.lblColNext.Location = New System.Drawing.Point(363, 0)
Me.lblColNext.Name = "lblColNext"
- Me.lblColNext.Size = New System.Drawing.Size(27, 30)
+ Me.lblColNext.Size = New System.Drawing.Size(18, 20)
Me.lblColNext.TabIndex = 13
Me.lblColNext.Text = ">"
Me.lblColNext.TextAlign = System.Drawing.ContentAlignment.MiddleCenter
@@ -1006,10 +966,9 @@ Partial Class ucrDataView
'
Me.lblColBack.AutoSize = True
Me.lblColBack.Dock = System.Windows.Forms.DockStyle.Fill
- Me.lblColBack.Location = New System.Drawing.Point(506, 0)
- Me.lblColBack.Margin = New System.Windows.Forms.Padding(4, 0, 4, 0)
+ Me.lblColBack.Location = New System.Drawing.Point(339, 0)
Me.lblColBack.Name = "lblColBack"
- Me.lblColBack.Size = New System.Drawing.Size(27, 30)
+ Me.lblColBack.Size = New System.Drawing.Size(18, 20)
Me.lblColBack.TabIndex = 12
Me.lblColBack.Text = "<"
Me.lblColBack.TextAlign = System.Drawing.ContentAlignment.MiddleCenter
@@ -1018,10 +977,9 @@ Partial Class ucrDataView
'
Me.lblRowLast.AutoSize = True
Me.lblRowLast.Dock = System.Windows.Forms.DockStyle.Fill
- Me.lblRowLast.Location = New System.Drawing.Point(344, 0)
- Me.lblRowLast.Margin = New System.Windows.Forms.Padding(4, 0, 4, 0)
+ Me.lblRowLast.Location = New System.Drawing.Point(228, 0)
Me.lblRowLast.Name = "lblRowLast"
- Me.lblRowLast.Size = New System.Drawing.Size(26, 30)
+ Me.lblRowLast.Size = New System.Drawing.Size(18, 20)
Me.lblRowLast.TabIndex = 11
Me.lblRowLast.Text = "»"
Me.lblRowLast.TextAlign = System.Drawing.ContentAlignment.MiddleCenter
@@ -1030,10 +988,9 @@ Partial Class ucrDataView
'
Me.lblRowFirst.AutoSize = True
Me.lblRowFirst.Dock = System.Windows.Forms.DockStyle.Fill
- Me.lblRowFirst.Location = New System.Drawing.Point(240, 0)
- Me.lblRowFirst.Margin = New System.Windows.Forms.Padding(4, 0, 4, 0)
+ Me.lblRowFirst.Location = New System.Drawing.Point(156, 0)
Me.lblRowFirst.Name = "lblRowFirst"
- Me.lblRowFirst.Size = New System.Drawing.Size(26, 30)
+ Me.lblRowFirst.Size = New System.Drawing.Size(18, 20)
Me.lblRowFirst.TabIndex = 10
Me.lblRowFirst.Text = "«"
Me.lblRowFirst.TextAlign = System.Drawing.ContentAlignment.MiddleCenter
@@ -1043,10 +1000,9 @@ Partial Class ucrDataView
Me.lblRowDisplay.AutoSize = True
Me.lblRowDisplay.Dock = System.Windows.Forms.DockStyle.Fill
Me.lblRowDisplay.ImageAlign = System.Drawing.ContentAlignment.TopCenter
- Me.lblRowDisplay.Location = New System.Drawing.Point(146, 0)
- Me.lblRowDisplay.Margin = New System.Windows.Forms.Padding(4, 0, 4, 0)
+ Me.lblRowDisplay.Location = New System.Drawing.Point(93, 0)
Me.lblRowDisplay.Name = "lblRowDisplay"
- Me.lblRowDisplay.Size = New System.Drawing.Size(86, 30)
+ Me.lblRowDisplay.Size = New System.Drawing.Size(57, 20)
Me.lblRowDisplay.TabIndex = 9
Me.lblRowDisplay.Text = "Label1"
Me.lblRowDisplay.TextAlign = System.Drawing.ContentAlignment.MiddleRight
@@ -1055,10 +1011,9 @@ Partial Class ucrDataView
'
Me.lblRowNext.AutoSize = True
Me.lblRowNext.Dock = System.Windows.Forms.DockStyle.Fill
- Me.lblRowNext.Location = New System.Drawing.Point(309, 0)
- Me.lblRowNext.Margin = New System.Windows.Forms.Padding(4, 0, 4, 0)
+ Me.lblRowNext.Location = New System.Drawing.Point(204, 0)
Me.lblRowNext.Name = "lblRowNext"
- Me.lblRowNext.Size = New System.Drawing.Size(27, 30)
+ Me.lblRowNext.Size = New System.Drawing.Size(18, 20)
Me.lblRowNext.TabIndex = 8
Me.lblRowNext.Text = ">"
Me.lblRowNext.TextAlign = System.Drawing.ContentAlignment.MiddleCenter
@@ -1067,10 +1022,9 @@ Partial Class ucrDataView
'
Me.lblColLast.AutoSize = True
Me.lblColLast.Dock = System.Windows.Forms.DockStyle.Fill
- Me.lblColLast.Location = New System.Drawing.Point(576, 0)
- Me.lblColLast.Margin = New System.Windows.Forms.Padding(4, 0, 4, 0)
+ Me.lblColLast.Location = New System.Drawing.Point(387, 0)
Me.lblColLast.Name = "lblColLast"
- Me.lblColLast.Size = New System.Drawing.Size(26, 30)
+ Me.lblColLast.Size = New System.Drawing.Size(18, 20)
Me.lblColLast.TabIndex = 7
Me.lblColLast.Text = "»"
Me.lblColLast.TextAlign = System.Drawing.ContentAlignment.MiddleCenter
@@ -1079,10 +1033,9 @@ Partial Class ucrDataView
'
Me.lblRowBack.AutoSize = True
Me.lblRowBack.Dock = System.Windows.Forms.DockStyle.Fill
- Me.lblRowBack.Location = New System.Drawing.Point(274, 0)
- Me.lblRowBack.Margin = New System.Windows.Forms.Padding(4, 0, 4, 0)
+ Me.lblRowBack.Location = New System.Drawing.Point(180, 0)
Me.lblRowBack.Name = "lblRowBack"
- Me.lblRowBack.Size = New System.Drawing.Size(27, 30)
+ Me.lblRowBack.Size = New System.Drawing.Size(18, 20)
Me.lblRowBack.TabIndex = 5
Me.lblRowBack.Text = "<"
Me.lblRowBack.TextAlign = System.Drawing.ContentAlignment.MiddleCenter
@@ -1090,28 +1043,29 @@ Partial Class ucrDataView
'ucrReoGrid
'
Me.ucrReoGrid.Dock = System.Windows.Forms.DockStyle.Fill
- Me.ucrReoGrid.Location = New System.Drawing.Point(751, 33)
+ Me.ucrReoGrid.Location = New System.Drawing.Point(499, 21)
+ Me.ucrReoGrid.Margin = New System.Windows.Forms.Padding(1)
Me.ucrReoGrid.Name = "ucrReoGrid"
- Me.ucrReoGrid.Size = New System.Drawing.Size(368, 656)
+ Me.ucrReoGrid.Size = New System.Drawing.Size(248, 439)
Me.ucrReoGrid.TabIndex = 12
'
'ucrLinuxGrid
'
Me.ucrLinuxGrid.Dock = System.Windows.Forms.DockStyle.Fill
- Me.ucrLinuxGrid.Location = New System.Drawing.Point(377, 33)
+ Me.ucrLinuxGrid.Location = New System.Drawing.Point(250, 21)
+ Me.ucrLinuxGrid.Margin = New System.Windows.Forms.Padding(1)
Me.ucrLinuxGrid.Name = "ucrLinuxGrid"
- Me.ucrLinuxGrid.Size = New System.Drawing.Size(368, 656)
+ Me.ucrLinuxGrid.Size = New System.Drawing.Size(247, 439)
Me.ucrLinuxGrid.TabIndex = 13
'
'ucrDataView
'
- Me.AutoScaleDimensions = New System.Drawing.SizeF(144.0!, 144.0!)
+ Me.AutoScaleDimensions = New System.Drawing.SizeF(96.0!, 96.0!)
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi
Me.AutoSize = True
Me.Controls.Add(Me.tlpTableContainer)
- Me.Margin = New System.Windows.Forms.Padding(4, 4, 4, 4)
Me.Name = "ucrDataView"
- Me.Size = New System.Drawing.Size(1122, 722)
+ Me.Size = New System.Drawing.Size(748, 481)
Me.Tag = "Data_View"
Me.columnContextMenuStrip.ResumeLayout(False)
Me.cellContextMenuStrip.ResumeLayout(False)
@@ -1161,7 +1115,6 @@ Partial Class ucrDataView
Friend WithEvents mnuFilter As ToolStripMenuItem
Friend WithEvents mnuRemoveCurrentFilter As ToolStripMenuItem
Friend WithEvents mnuSort As ToolStripMenuItem
- Friend WithEvents ViewSheet As ToolStripMenuItem
Friend WithEvents mnuCovertToOrderedFactors As ToolStripMenuItem
Friend WithEvents mnuDuplicateColumn As ToolStripMenuItem
Friend WithEvents mnuAddComment As ToolStripMenuItem
@@ -1234,7 +1187,6 @@ Partial Class ucrDataView
Friend WithEvents ToolStripSeparator11 As ToolStripSeparator
Friend WithEvents mnuHelp3 As ToolStripMenuItem
Friend WithEvents ttGoToRowOrColPage As ToolTip
- Friend WithEvents mnuViewHTML As ToolStripMenuItem
Friend WithEvents ToolStripSeparator12 As ToolStripSeparator
Private WithEvents ToolStripSeparator13 As ToolStripSeparator
Friend WithEvents mnuEditCell2 As ToolStripMenuItem
diff --git a/instat/ucrDataView.vb b/instat/ucrDataView.vb
index 109af059b47..8a29fd41628 100644
--- a/instat/ucrDataView.vb
+++ b/instat/ucrDataView.vb
@@ -23,6 +23,7 @@ Public Class ucrDataView
Private _clsDataBook As clsDataBook
Private _grid As IDataViewGrid
Private bOnlyUpdateOneCell As Boolean = False
+ Private _hasChanged As Boolean
Public WriteOnly Property DataBook() As clsDataBook
Set(value As clsDataBook)
@@ -157,6 +158,7 @@ Public Class ucrDataView
RefreshDisplayInformation()
End If
End If
+ _hasChanged = True
EnableDisableUndoMenu()
_grid.Focus()
End Sub
@@ -185,6 +187,23 @@ Public Class ucrDataView
Return If(_grid.CurrentWorksheet Is Nothing, Nothing, _grid.CurrentWorksheet.Name)
End Function
+ Public Property HasDataChanged() As Boolean
+ Get
+ Dim currentDataFrame = GetCurrentDataFrameFocus()
+ If currentDataFrame IsNot Nothing AndAlso currentDataFrame.clsVisibleDataFramePage IsNot Nothing Then
+ Return currentDataFrame.clsVisibleDataFramePage.HasDataChangedForAutoSave
+ End If
+ Return False ' Or a default value
+ End Get
+ Set(ByVal value As Boolean)
+ Dim currentDataFrame = GetCurrentDataFrameFocus()
+ If currentDataFrame IsNot Nothing AndAlso currentDataFrame.clsVisibleDataFramePage IsNot Nothing Then
+ currentDataFrame.clsVisibleDataFramePage.HasDataChangedForAutoSave = value
+ End If
+ ' Optionally handle the case where currentDataFrame is Nothing
+ End Set
+ End Property
+
Private Sub mnuDeleteCol_Click(sender As Object, e As EventArgs) Handles mnuDeleteCol.Click
If GetSelectedColumns.Count = GetCurrentDataFrameFocus()?.iTotalColumnCount Then
MsgBox("Cannot delete all visible columns." & Environment.NewLine & "Use Prepare > Data Object > Delete Data Frame if you wish to delete the data.", MsgBoxStyle.Information, "Cannot Delete All Columns")
@@ -466,6 +485,10 @@ Public Class ucrDataView
End If
End Sub
+ Public Function IsColumnSelectionApplied() As Boolean
+ Return GetCurrentDataFrameFocus().clsFilterOrColumnSelection.bColumnSelectionApplied
+ End Function
+
Private Function GetSelectedColumns() As List(Of clsColumnHeaderDisplay)
Return _grid.GetSelectedColumns()
End Function
@@ -506,12 +529,12 @@ Public Class ucrDataView
Return GetSelectedRows.LastOrDefault()
End Function
- Private Sub StartWait()
+ Public Sub StartWait()
Cursor = Cursors.WaitCursor
_grid.bEnabled = False
End Sub
- Private Sub EndWait()
+ Public Sub EndWait()
_grid.bEnabled = True
Cursor = Cursors.Default
End Sub
@@ -579,12 +602,6 @@ Public Class ucrDataView
EndWait()
End Sub
- Private Sub ViewSheet_Click(sender As Object, e As EventArgs) Handles ViewSheet.Click
- StartWait()
- GetCurrentDataFrameFocus().clsPrepareFunctions.ViewDataFrame()
- EndWait()
- End Sub
-
Private Sub mnuCovertToOrderedFactors_Click(sender As Object, e As EventArgs) Handles mnuCovertToOrderedFactors.Click
StartWait()
GetCurrentDataFrameFocus().clsPrepareFunctions.ConvertToOrderedFactor(GetSelectedColumnNames())
@@ -694,7 +711,20 @@ Public Class ucrDataView
Else
Dim bCheckLabels As Boolean = GetCurrentDataFrameFocus().clsPrepareFunctions.CheckHasLabels(strColumn)
If bCheckLabels Then
- GetCurrentDataFrameFocus().clsPrepareFunctions.ConvertToNumeric(strColumn, True)
+ frmConvertToNumeric.SetDataFrameName(GetCurrentDataFrameFocus().strName)
+ frmConvertToNumeric.SetColumnName(strColumn)
+ frmConvertToNumeric.CheckLabels(bCheckLabels)
+ frmConvertToNumeric.SetNonNumeric(iNonNumericValues)
+ frmConvertToNumeric.ShowDialog()
+ ' Yes for "normal" convert and No for "labelled" convert
+ Select Case frmConvertToNumeric.DialogResult
+ Case DialogResult.Yes
+ GetCurrentDataFrameFocus().clsPrepareFunctions.ConvertToNumeric(strColumn, True)
+ Case DialogResult.No
+ GetCurrentDataFrameFocus().clsPrepareFunctions.ConvertToNumeric(strColumn, False)
+ Case DialogResult.Cancel
+ Continue For
+ End Select
Else
frmConvertToNumeric.SetDataFrameName(GetCurrentDataFrameFocus().strName)
frmConvertToNumeric.SetColumnName(strColumn)
diff --git a/instat/ucrReceiverMultiple.vb b/instat/ucrReceiverMultiple.vb
index 5206b0554cd..889f3434ca3 100644
--- a/instat/ucrReceiverMultiple.vb
+++ b/instat/ucrReceiverMultiple.vb
@@ -47,11 +47,19 @@ Public Class ucrReceiverMultiple
'first eliminate all items that already exist
'this improves perfomance significantly for wide data sets
For Each kvpTempItem As KeyValuePair(Of String, String) In lstItems
- If lstSelectedVariables.FindItemWithText(kvpTempItem.Value) Is Nothing Then
+ Dim isMatchFound As Boolean = False
+ For Each item As ListViewItem In lstSelectedVariables.Items
+ If item.Text.Equals(kvpTempItem.Value, StringComparison.Ordinal) Then
+ isMatchFound = True
+ Exit For
+ End If
+ Next
+ If Not isMatchFound Then
lstActualItemsToAdd.Add(kvpTempItem)
End If
Next
+
If lstActualItemsToAdd.Count = 0 Then
Exit Sub
End If
@@ -411,7 +419,7 @@ Public Class ucrReceiverMultiple
If bIsCategoricalNumeric Then
' logical can be considered as both categorical or numeric so should be dealt with on individual dialogs
For i As Integer = 0 To strDataTypes.Count - 1
- If strDataTypes(i).Contains("factor") OrElse strDataTypes(i).Contains("character") Then
+ If strDataTypes(i).Contains("factor") OrElse strDataTypes(i).Contains("character") OrElse strDataTypes(i).Contains("ordered") Then
strDataTypes(i) = "categorical"
ElseIf Not strDataTypes(i).Contains("logical") Then
strDataTypes(i) = "numeric"
diff --git a/instat/ucrScript.Designer.vb b/instat/ucrScript.Designer.vb
index e1240b0807b..e06e66e2152 100644
--- a/instat/ucrScript.Designer.vb
+++ b/instat/ucrScript.Designer.vb
@@ -51,6 +51,8 @@ Partial Class ucrScript
Me.ToolStripSeparator2 = New System.Windows.Forms.ToolStripSeparator()
Me.mnuRunCurrentStatementSelection = New System.Windows.Forms.ToolStripMenuItem()
Me.mnuRunAllText = New System.Windows.Forms.ToolStripMenuItem()
+ Me.ToolStripSeparator5 = New System.Windows.Forms.ToolStripSeparator()
+ Me.mnuReformatCode = New System.Windows.Forms.ToolStripMenuItem()
Me.ToolStripSeparator3 = New System.Windows.Forms.ToolStripSeparator()
Me.mnuOpenScriptasFile = New System.Windows.Forms.ToolStripMenuItem()
Me.mnuInsertScript = New System.Windows.Forms.ToolStripMenuItem()
@@ -61,7 +63,10 @@ Partial Class ucrScript
Me.lblHeaderScript = New System.Windows.Forms.Label()
Me.tlpTableContainer = New System.Windows.Forms.TableLayoutPanel()
Me.Panel = New System.Windows.Forms.Panel()
- Me.cmdInsertScript = New System.Windows.Forms.Button()
+ Me.cmdInsert = New instat.ucrSplitButton()
+ Me.contextMenuStriptInsert = New System.Windows.Forms.ContextMenuStrip(Me.components)
+ Me.toolStripMenuItemInsertStatement = New System.Windows.Forms.ToolStripMenuItem()
+ Me.toolStripMenuItemInsertCommentUncomment = New System.Windows.Forms.ToolStripMenuItem()
Me.cmdSave = New System.Windows.Forms.Button()
Me.cmdLoadScript = New System.Windows.Forms.Button()
Me.cmdRemoveTab = New System.Windows.Forms.Button()
@@ -72,11 +77,10 @@ Partial Class ucrScript
Me.cmdRunStatementSelection = New System.Windows.Forms.Button()
Me.TabControl = New System.Windows.Forms.TabControl()
Me.toolTipScriptWindow = New System.Windows.Forms.ToolTip(Me.components)
- Me.mnuReformatCode = New System.Windows.Forms.ToolStripMenuItem()
- Me.ToolStripSeparator5 = New System.Windows.Forms.ToolStripSeparator()
Me.mnuContextScript.SuspendLayout()
Me.tlpTableContainer.SuspendLayout()
Me.Panel.SuspendLayout()
+ Me.contextMenuStriptInsert.SuspendLayout()
Me.SuspendLayout()
'
'mnuContextScript
@@ -84,7 +88,7 @@ Partial Class ucrScript
Me.mnuContextScript.ImageScalingSize = New System.Drawing.Size(24, 24)
Me.mnuContextScript.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.mnuUndo, Me.mnuRedo, Me.ToolStripSeparator1, Me.mnuCut, Me.mnuCopy, Me.mnuPaste, Me.mnuSelectAll, Me.mnuClear, Me.ToolStripSeparator2, Me.mnuRunCurrentStatementSelection, Me.mnuRunAllText, Me.ToolStripSeparator5, Me.mnuReformatCode, Me.ToolStripSeparator3, Me.mnuOpenScriptasFile, Me.mnuInsertScript, Me.mnuLoadScriptFromFile, Me.mnuSaveScript, Me.ToolStripSeparator4, Me.mnuHelp})
Me.mnuContextScript.Name = "mnuContextLogFile"
- Me.mnuContextScript.Size = New System.Drawing.Size(426, 547)
+ Me.mnuContextScript.Size = New System.Drawing.Size(426, 514)
'
'mnuUndo
'
@@ -159,6 +163,17 @@ Partial Class ucrScript
Me.mnuRunAllText.Size = New System.Drawing.Size(425, 32)
Me.mnuRunAllText.Text = "Run All Text"
'
+ 'ToolStripSeparator5
+ '
+ Me.ToolStripSeparator5.Name = "ToolStripSeparator5"
+ Me.ToolStripSeparator5.Size = New System.Drawing.Size(422, 6)
+ '
+ 'mnuReformatCode
+ '
+ Me.mnuReformatCode.Name = "mnuReformatCode"
+ Me.mnuReformatCode.Size = New System.Drawing.Size(425, 32)
+ Me.mnuReformatCode.Text = "Reformat Code"
+ '
'ToolStripSeparator3
'
Me.ToolStripSeparator3.Name = "ToolStripSeparator3"
@@ -236,7 +251,7 @@ Partial Class ucrScript
'
'Panel
'
- Me.Panel.Controls.Add(Me.cmdInsertScript)
+ Me.Panel.Controls.Add(Me.cmdInsert)
Me.Panel.Controls.Add(Me.cmdSave)
Me.Panel.Controls.Add(Me.cmdLoadScript)
Me.Panel.Controls.Add(Me.cmdRemoveTab)
@@ -252,15 +267,38 @@ Partial Class ucrScript
Me.Panel.Size = New System.Drawing.Size(997, 42)
Me.Panel.TabIndex = 10
'
- 'cmdInsertScript
+ 'cmdInsert
+ '
+ Me.cmdInsert.AutoSize = True
+ Me.cmdInsert.ContextMenuStrip = Me.contextMenuStriptInsert
+ Me.cmdInsert.Location = New System.Drawing.Point(506, 2)
+ Me.cmdInsert.Margin = New System.Windows.Forms.Padding(4)
+ Me.cmdInsert.Name = "cmdInsert"
+ Me.cmdInsert.Size = New System.Drawing.Size(106, 34)
+ Me.cmdInsert.SplitMenuStrip = Me.contextMenuStriptInsert
+ Me.cmdInsert.TabIndex = 11
+ Me.cmdInsert.Tag = "Insert"
+ Me.cmdInsert.Text = "Insert"
+ Me.cmdInsert.UseVisualStyleBackColor = True
'
- Me.cmdInsertScript.Location = New System.Drawing.Point(503, 2)
- Me.cmdInsertScript.Margin = New System.Windows.Forms.Padding(4)
- Me.cmdInsertScript.Name = "cmdInsertScript"
- Me.cmdInsertScript.Size = New System.Drawing.Size(112, 34)
- Me.cmdInsertScript.TabIndex = 8
- Me.cmdInsertScript.Text = "Insert"
- Me.cmdInsertScript.UseVisualStyleBackColor = True
+ 'contextMenuStriptInsert
+ '
+ Me.contextMenuStriptInsert.ImageScalingSize = New System.Drawing.Size(24, 24)
+ Me.contextMenuStriptInsert.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.toolStripMenuItemInsertStatement, Me.toolStripMenuItemInsertCommentUncomment})
+ Me.contextMenuStriptInsert.Name = "contextMenuStripToScript"
+ Me.contextMenuStriptInsert.Size = New System.Drawing.Size(269, 101)
+ '
+ 'toolStripMenuItemInsertStatement
+ '
+ Me.toolStripMenuItemInsertStatement.Name = "toolStripMenuItemInsertStatement"
+ Me.toolStripMenuItemInsertStatement.Size = New System.Drawing.Size(268, 32)
+ Me.toolStripMenuItemInsertStatement.Text = "Statements"
+ '
+ 'toolStripMenuItemInsertCommentUncomment
+ '
+ Me.toolStripMenuItemInsertCommentUncomment.Name = "toolStripMenuItemInsertCommentUncomment"
+ Me.toolStripMenuItemInsertCommentUncomment.Size = New System.Drawing.Size(268, 32)
+ Me.toolStripMenuItemInsertCommentUncomment.Text = "Comment/Uncomment"
'
'cmdSave
'
@@ -352,17 +390,6 @@ Partial Class ucrScript
Me.TabControl.Size = New System.Drawing.Size(997, 662)
Me.TabControl.TabIndex = 1
'
- 'mnuReformatCode
- '
- Me.mnuReformatCode.Name = "mnuReformatCode"
- Me.mnuReformatCode.Size = New System.Drawing.Size(425, 32)
- Me.mnuReformatCode.Text = "Reformat Code"
- '
- 'ToolStripSeparator5
- '
- Me.ToolStripSeparator5.Name = "ToolStripSeparator5"
- Me.ToolStripSeparator5.Size = New System.Drawing.Size(422, 6)
- '
'ucrScript
'
Me.AutoScaleDimensions = New System.Drawing.SizeF(144.0!, 144.0!)
@@ -376,6 +403,8 @@ Partial Class ucrScript
Me.mnuContextScript.ResumeLayout(False)
Me.tlpTableContainer.ResumeLayout(False)
Me.Panel.ResumeLayout(False)
+ Me.Panel.PerformLayout()
+ Me.contextMenuStriptInsert.ResumeLayout(False)
Me.ResumeLayout(False)
End Sub
@@ -410,8 +439,11 @@ Partial Class ucrScript
Friend WithEvents cmdRemoveTab As Button
Friend WithEvents cmdSave As Button
Friend WithEvents cmdLoadScript As Button
- Friend WithEvents cmdInsertScript As Button
Friend WithEvents mnuInsertScript As ToolStripMenuItem
Friend WithEvents ToolStripSeparator5 As ToolStripSeparator
Friend WithEvents mnuReformatCode As ToolStripMenuItem
+ Friend WithEvents cmdInsert As ucrSplitButton
+ Friend WithEvents contextMenuStriptInsert As ContextMenuStrip
+ Friend WithEvents toolStripMenuItemInsertStatement As ToolStripMenuItem
+ Friend WithEvents toolStripMenuItemInsertCommentUncomment As ToolStripMenuItem
End Class
\ No newline at end of file
diff --git a/instat/ucrScript.resx b/instat/ucrScript.resx
index af5c5c70b70..90bb36c80a0 100644
--- a/instat/ucrScript.resx
+++ b/instat/ucrScript.resx
@@ -120,6 +120,9 @@
17, 17
+
+ 449, 17
+
167, 17
diff --git a/instat/ucrScript.vb b/instat/ucrScript.vb
index 794614210ce..019cc9217f4 100644
--- a/instat/ucrScript.vb
+++ b/instat/ucrScript.vb
@@ -787,10 +787,6 @@ Public Class ucrScript
LoadScript()
End Sub
- Private Sub mnuInsertScript_Click(sender As Object, e As EventArgs) Handles mnuInsertScript.Click, cmdInsertScript.Click
- dlgScript.ShowDialog()
- End Sub
-
Private Sub cmdRemoveTab_Click(sender As Object, e As EventArgs) Handles cmdRemoveTab.Click
'never remove last script tab
If TabControl.TabCount < 2 Then
@@ -1050,4 +1046,61 @@ Public Class ucrScript
End If
End Sub
+ Private Sub cmdInsert_Click(sender As Object, e As EventArgs) Handles cmdInsert.Click, toolStripMenuItemInsertStatement.Click
+ dlgScript.ShowDialog()
+ End Sub
+
+ Private Sub toolStripMenuItemInsertCommentUncomment_Click(sender As Object, e As EventArgs) Handles toolStripMenuItemInsertCommentUncomment.Click
+ Dim originalCaretPosition As Integer = clsScriptActive.CurrentPosition
+
+ ' Get the start and end positions of the selected text
+ Dim selectionStart As Integer = clsScriptActive.SelectionStart
+ Dim selectionEnd As Integer = clsScriptActive.SelectionEnd
+
+ ' Get the start and end lines of the selection
+ Dim startLine As Integer = clsScriptActive.LineFromPosition(selectionStart)
+ Dim endLine As Integer = clsScriptActive.LineFromPosition(selectionEnd)
+
+ ' Begin updating text
+ clsScriptActive.BeginUndoAction()
+
+ Try
+ ' Check if all lines are commented or not
+ Dim allCommented As Boolean = True
+ For lineIndex As Integer = startLine To endLine
+ Dim lineText As String = clsScriptActive.Lines(lineIndex).Text.TrimStart()
+ If Not lineText.StartsWith("#") Then
+ allCommented = False
+ Exit For
+ End If
+ Next
+
+ ' Toggle comment status for each line
+ For lineIndex As Integer = startLine To endLine
+ Dim line As Line = clsScriptActive.Lines(lineIndex)
+ Dim lineStartPos As Integer = line.Position
+ Dim lineEndPos As Integer = lineStartPos + line.Length
+ Dim lineText As String = line.Text
+ Dim iCountSpace As Integer = System.Text.RegularExpressions.Regex.Matches(lineText, "#\s#").Count
+ If iCountSpace > 0 Then iCountSpace += 1
+
+ If allCommented Then
+ ' Set the target range to the matched text
+ clsScriptActive.TargetStart = lineStartPos
+ clsScriptActive.TargetEnd = lineStartPos + lineText.Count(Function(c) c = "#"c) + iCountSpace
+ ' Replace the target range with an empty string to remove the `#`
+ clsScriptActive.ReplaceTarget("")
+ Else
+ ' Comment: Add `#` at the start
+ clsScriptActive.InsertText(lineStartPos, "# ")
+ End If
+ Next
+ Finally
+ clsScriptActive.EndUndoAction()
+ End Try
+
+ clsScriptActive.Focus()
+ clsScriptActive.GotoPosition(originalCaretPosition)
+ End Sub
+
End Class