From d72cae4c2952ff0fc4f5a7a090744c03ea51de20 Mon Sep 17 00:00:00 2001 From: Stephen Lloyd Date: Sun, 24 Dec 2023 09:30:58 +0100 Subject: [PATCH 1/9] Test C# version of RScript NuGet package --- instat/Model/Options/OutputFont.vb | 76 ++++++++---------- instat/Model/Output/clsOutputElement.vb | 11 +-- instat/Model/Output/clsRScriptElement.vb | 4 +- instat/UserControl/ucrOutputPage.vb | 5 +- instat/clsInstatOptions.vb | 2 - instat/clsRLink.vb | 17 ++-- instat/instat.vbproj | 4 +- instat/packages.config | 2 +- instat/ucrScript.vb | 11 +-- packages/RInsightF461.1.0.0/.signature.p7s | Bin 0 -> 11515 bytes .../lib/net461/RInsightF461.dll | Bin 0 -> 31232 bytes 11 files changed, 61 insertions(+), 71 deletions(-) create mode 100644 packages/RInsightF461.1.0.0/.signature.p7s create mode 100644 packages/RInsightF461.1.0.0/lib/net461/RInsightF461.dll diff --git a/instat/Model/Options/OutputFont.vb b/instat/Model/Options/OutputFont.vb index 7ab76143eb1..b545364c6d9 100644 --- a/instat/Model/Options/OutputFont.vb +++ b/instat/Model/Options/OutputFont.vb @@ -14,7 +14,7 @@ ' You should have received a copy of the GNU General Public License ' along with this program. If not, see . -Imports RScript +Imports RInsightF461 ''' ''' Fonts and Colours for all text within the output screen @@ -27,8 +27,6 @@ Public Class OutputFont Public Shared Property RCommentFont As Font = clsInstatOptionsDefaults.DEFAULTfntComment Public Shared Property RConstantStringColour As Color = clsInstatOptionsDefaults.DEFAULTclrScript Public Shared Property RConstantStringFont As Font = clsInstatOptionsDefaults.DEFAULTfntScript - Public Shared Property REndScriptColour As Color = clsInstatOptionsDefaults.DEFAULTclrScript - Public Shared Property REndScriptFont As Font = clsInstatOptionsDefaults.DEFAULTfntScript Public Shared Property REndStatementColour As Color = clsInstatOptionsDefaults.DEFAULTclrScript Public Shared Property REndStatementFont As Font = clsInstatOptionsDefaults.DEFAULTfntScript Public Shared Property RFunctionNameColour As Color = clsInstatOptionsDefaults.DEFAULTclrScript @@ -62,42 +60,38 @@ Public Class OutputFont ''' ''' ''' - Public Shared Function GetColourForScriptType(scriptType As clsRToken.typToken) As Color + Public Shared Function GetColourForScriptType(scriptType As RToken.TokenTypes) As Color Select Case scriptType - Case clsRToken.typToken.RSyntacticName + Case RToken.TokenTypes.RSyntacticName Return RSyntacticNameColour - Case clsRToken.typToken.RFunctionName + Case RToken.TokenTypes.RFunctionName Return RFunctionNameColour - Case clsRToken.typToken.RKeyWord + Case RToken.TokenTypes.RKeyWord Return RKeyWordColour - Case clsRToken.typToken.RConstantString + Case RToken.TokenTypes.RConstantString Return RConstantStringColour - Case clsRToken.typToken.RComment + Case RToken.TokenTypes.RComment Return RCommentColour - Case clsRToken.typToken.RSpace + Case RToken.TokenTypes.RSpace Return RSpaceColour - Case clsRToken.typToken.RBracket + Case RToken.TokenTypes.RBracket Return RBracketColour - Case clsRToken.typToken.RSeparator + Case RToken.TokenTypes.RSeparator Return RSeparatorColour - Case clsRToken.typToken.REndStatement + Case RToken.TokenTypes.REndStatement Return REndStatementColour - Case clsRToken.typToken.REndScript - Return REndScriptColour - Case clsRToken.typToken.RNewLine + Case RToken.TokenTypes.RNewLine Return RNewLineColour - Case clsRToken.typToken.ROperatorUnaryLeft + Case RToken.TokenTypes.ROperatorUnaryLeft Return ROperatorUnaryLeftColour - Case clsRToken.typToken.ROperatorUnaryRight + Case RToken.TokenTypes.ROperatorUnaryRight Return ROperatorUnaryRightColour - Case clsRToken.typToken.ROperatorBinary + Case RToken.TokenTypes.ROperatorBinary Return ROperatorBinaryColour - Case clsRToken.typToken.ROperatorBracket + Case RToken.TokenTypes.ROperatorBracket Return ROperatorBracketColour - Case clsRToken.typToken.RPresentation + Case RToken.TokenTypes.RPresentation Return RPresentationColour - Case clsRToken.typToken.RInvalid - Return RInvalidColour Case Else Return Color.Black End Select @@ -108,42 +102,38 @@ Public Class OutputFont ''' ''' ''' - Public Shared Function GetFontForScriptType(scriptType As clsRToken.typToken) As Font + Public Shared Function GetFontForScriptType(scriptType As RToken.TokenTypes) As Font Select Case scriptType - Case clsRToken.typToken.RSyntacticName + Case RToken.TokenTypes.RSyntacticName Return RSyntacticNameFont - Case clsRToken.typToken.RFunctionName + Case RToken.TokenTypes.RFunctionName Return RFunctionNameFont - Case clsRToken.typToken.RKeyWord + Case RToken.TokenTypes.RKeyWord Return RKeyWordFont - Case clsRToken.typToken.RConstantString + Case RToken.TokenTypes.RConstantString Return RConstantStringFont - Case clsRToken.typToken.RComment + Case RToken.TokenTypes.RComment Return RCommentFont - Case clsRToken.typToken.RSpace + Case RToken.TokenTypes.RSpace Return RSpaceFont - Case clsRToken.typToken.RBracket + Case RToken.TokenTypes.RBracket Return RBracketFont - Case clsRToken.typToken.RSeparator + Case RToken.TokenTypes.RSeparator Return RSeparatorFont - Case clsRToken.typToken.REndStatement + Case RToken.TokenTypes.REndStatement Return REndStatementFont - Case clsRToken.typToken.REndScript - Return REndScriptFont - Case clsRToken.typToken.RNewLine + Case RToken.TokenTypes.RNewLine Return RNewLineFont - Case clsRToken.typToken.ROperatorUnaryLeft + Case RToken.TokenTypes.ROperatorUnaryLeft Return ROperatorUnaryLeftFont - Case clsRToken.typToken.ROperatorUnaryRight + Case RToken.TokenTypes.ROperatorUnaryRight Return ROperatorUnaryRightFont - Case clsRToken.typToken.ROperatorBinary + Case RToken.TokenTypes.ROperatorBinary Return ROperatorBinaryFont - Case clsRToken.typToken.ROperatorBracket + Case RToken.TokenTypes.ROperatorBracket Return ROperatorBracketFont - Case clsRToken.typToken.RPresentation + Case RToken.TokenTypes.RPresentation Return RPresentationFont - Case clsRToken.typToken.RInvalid - Return RInvalidFont Case Else Return New Font("Ariel", 12, FontStyle.Bold) End Select diff --git a/instat/Model/Output/clsOutputElement.vb b/instat/Model/Output/clsOutputElement.vb index f7666ab51c8..da880a8aa29 100644 --- a/instat/Model/Output/clsOutputElement.vb +++ b/instat/Model/Output/clsOutputElement.vb @@ -14,7 +14,7 @@ ' You should have received a copy of the GNU General Public License ' along with this program. If not, see . Imports System.IO -Imports RScript +Imports RInsightF461 ''' ''' Output element for an R script. @@ -97,14 +97,15 @@ Public Class clsOutputElement Get Dim _lstRScriptElements As New List(Of clsRScriptElement) Try - Dim rScript As New clsRScript("") - Dim lstTokens As List(Of clsRToken) = rScript.GetLstTokens(rScript.GetLstLexemes(_strScript)) 'rScript.lstTokens + Dim rScript As New RScript("") + Dim lstTokens As List(Of RToken) = New RTokenList(_strScript).Tokens + 'todo Dim lstTokens As List(Of RToken) = rScript.GetLstTokens(rScript.GetLstLexemes(_strScript)) 'rScript.lstTokens If lstTokens IsNot Nothing Then For Each rToken In lstTokens _lstRScriptElements.Add(New clsRScriptElement With { - .Text = rToken.strTxt, - .Type = rToken.enuToken + .Text = rToken.Lexeme.Text, + .Type = rToken.TokenType }) Next End If diff --git a/instat/Model/Output/clsRScriptElement.vb b/instat/Model/Output/clsRScriptElement.vb index c817f819498..5b2e77124cc 100644 --- a/instat/Model/Output/clsRScriptElement.vb +++ b/instat/Model/Output/clsRScriptElement.vb @@ -14,12 +14,12 @@ ' You should have received a copy of the GNU General Public License ' along with this program. If not, see . -Imports RScript +Imports RInsightF461 ''' ''' R script element containing the text and type token of the text ''' Public Class clsRScriptElement Public Property Text As String - Public Property Type As clsRToken.typToken + Public Property Type As RToken.TokenTypes End Class \ No newline at end of file diff --git a/instat/UserControl/ucrOutputPage.vb b/instat/UserControl/ucrOutputPage.vb index 50d49de8c82..7a3534d8e42 100644 --- a/instat/UserControl/ucrOutputPage.vb +++ b/instat/UserControl/ucrOutputPage.vb @@ -15,7 +15,6 @@ ' along with this program. If not, see . Imports System.Runtime.InteropServices -Imports RScript ''' ''' Output page for R outputs ''' @@ -192,7 +191,7 @@ Public Class ucrOutputPage If frmMain.clsInstatOptions.bIncludeCommentDefault Then 'show comments only For Each line As clsRScriptElement In formattedRScript - If line.Type = clsRToken.typToken.RComment Then + If line.Type = RInsightF461.RToken.TokenTypes.RComment Then AddFormatedTextToRichTextBox(richTextBox, line.Text, OutputFont.GetFontForScriptType(line.Type), OutputFont.GetColourForScriptType(line.Type)) End If Next @@ -200,7 +199,7 @@ Public Class ucrOutputPage ElseIf frmMain.clsInstatOptions.bCommandsinOutput Then 'show command lines that are not comments For Each line As clsRScriptElement In formattedRScript - If Not (line.Type = clsRToken.typToken.RComment) Then + If Not (line.Type = RInsightF461.RToken.TokenTypes.RComment) Then AddFormatedTextToRichTextBox(richTextBox, line.Text, OutputFont.GetFontForScriptType(line.Type), OutputFont.GetColourForScriptType(line.Type)) End If Next diff --git a/instat/clsInstatOptions.vb b/instat/clsInstatOptions.vb index 52516d13d5b..1bd05535f48 100644 --- a/instat/clsInstatOptions.vb +++ b/instat/clsInstatOptions.vb @@ -384,7 +384,6 @@ Imports RDotNet OutputFont.RBracketFont = fntNew OutputFont.RSeparatorFont = fntNew OutputFont.REndStatementFont = fntNew - OutputFont.REndScriptFont = fntNew OutputFont.RNewLineFont = fntNew OutputFont.ROperatorUnaryLeftFont = fntNew OutputFont.ROperatorUnaryRightFont = fntNew @@ -401,7 +400,6 @@ Imports RDotNet OutputFont.RBracketColour = clrNew OutputFont.RSeparatorColour = clrNew OutputFont.REndStatementColour = clrNew - OutputFont.REndScriptColour = clrNew OutputFont.RNewLineColour = clrNew OutputFont.ROperatorUnaryLeftColour = clrNew OutputFont.ROperatorUnaryRightColour = clrNew diff --git a/instat/clsRLink.vb b/instat/clsRLink.vb index 39b67124550..61d77e8fb54 100644 --- a/instat/clsRLink.vb +++ b/instat/clsRLink.vb @@ -18,7 +18,8 @@ Imports System.Runtime.InteropServices Imports RDotNet Imports unvell.ReoGrid Imports System.IO -Imports RScript +'Imports RScript +Imports RInsightF461 '''-------------------------------------------------------------------------------------------- ''' An object of this class represents an R interface. @@ -724,7 +725,7 @@ Public Class RLink ''' ''' The R code statement to execute '''-------------------------------------------------------------------------------------------- - Public Sub RunRStatement(clsRStatement As clsRStatement) + Public Sub RunRStatement(clsRStatement As RInsightF461.RStatement) Dim strRStatement = clsRStatement.GetAsExecutableScript() @@ -2218,7 +2219,7 @@ Public Class RLink ''' ''' The list of clsRParameters. '''-------------------------------------------------------------------------------------------- - Private Function GetRFunctionDefinitionParameters(strFunctionName As String) As List(Of clsRParameter) + Private Function GetRFunctionDefinitionParameters(strFunctionName As String) As List(Of RInsightF461.RParameter) 'Note: this function is not currently called but it will be used in future ' functionality to populate dialogs from script. ' Please do not delete this function. (@lloyddewit 24/11/21) @@ -2227,7 +2228,7 @@ Public Class RLink Dim strTempAssignTo As String = ".temp_func" Dim expTemp As SymbolicExpression Dim clsFormalsFunction As New RFunction - Dim lstRParameters As New List(Of clsRParameter) + Dim lstRParameters As New List(Of RInsightF461.RParameter) Dim clsAsListFunction As New RFunction clsAsListFunction.SetRCommand("as.list") @@ -2261,7 +2262,7 @@ Public Class RLink 'parameter value position Dim iParameterValue As Integer = 1 While (iParameterName < expTemp.AsCharacter().Length) - Dim clsNewRParameter As New clsRParameter + Dim clsNewRParameter As New RInsightF461.RParameter 'Assign the parameter Name clsNewRParameter.strArgName = expTemp.AsCharacter(iParameterName).TrimStart("$") @@ -2269,13 +2270,13 @@ Public Class RLink 'check to remove the [1] notation before some parameter values If expTemp.AsCharacter(iParameterValue).Contains("[1]") Then Dim strcleanArgument As String = expTemp.AsCharacter(iParameterValue).Remove(expTemp.AsCharacter(iParameterValue).IndexOf("["), 3) - clsNewRParameter.clsArgValueDefault = New clsRScript(strcleanArgument).dctRStatements(0).clsElement + clsNewRParameter.clsArgValueDefault = New RInsightF461.RScript(strcleanArgument).statements(0).clsElement Else 'Empty String are Not accepted hence the modification below If String.IsNullOrEmpty(expTemp.AsCharacter(iParameterValue)) Then - clsNewRParameter.clsArgValueDefault = New clsRScript("NODEFAULTVALUE").dctRStatements(0).clsElement + clsNewRParameter.clsArgValueDefault = New RInsightF461.RScript("NODEFAULTVALUE").statements(0).clsElement Else - clsNewRParameter.clsArgValueDefault = New clsRScript(expTemp.AsCharacter(iParameterValue)).dctRStatements(0).clsElement + clsNewRParameter.clsArgValueDefault = New RInsightF461.RScript(expTemp.AsCharacter(iParameterValue)).statements(0).clsElement End If End If diff --git a/instat/instat.vbproj b/instat/instat.vbproj index eb03c008b07..79809aa90df 100644 --- a/instat/instat.vbproj +++ b/instat/instat.vbproj @@ -155,8 +155,8 @@ ..\packages\R.NET.1.8.2\lib\netstandard2.0\RDotNet.dll - - ..\packages\RScript.1.0.11\lib\net461\RScript.dll + + ..\packages\RInsightF461.1.0.0\lib\net461\RInsightF461.dll ..\packages\jacobslusser.ScintillaNET.3.6.3\lib\net40\ScintillaNET.dll diff --git a/instat/packages.config b/instat/packages.config index e6ea1174ecd..93ee0c027b9 100644 --- a/instat/packages.config +++ b/instat/packages.config @@ -11,7 +11,7 @@ - + diff --git a/instat/ucrScript.vb b/instat/ucrScript.vb index b61537e146f..7d0436590a8 100644 --- a/instat/ucrScript.vb +++ b/instat/ucrScript.vb @@ -17,7 +17,8 @@ Imports System.Collections.Specialized Imports System.IO Imports System.Windows.Controls -Imports RScript +'Imports RScript +Imports RInsightF461 Imports ScintillaNET Public Class ucrScript @@ -642,7 +643,7 @@ Public Class ucrScript Try Dim dctRStatements As OrderedDictionary Try - dctRStatements = New clsRScript(clsScriptActive.Text).dctRStatements + dctRStatements = New RScript(clsScriptActive.Text).statements Catch ex As Exception MsgBox("R script parsing failed with message:" & Environment.NewLine _ & Environment.NewLine & ex.Message & Environment.NewLine & Environment.NewLine _ @@ -657,7 +658,7 @@ Public Class ucrScript Dim iCaretPos As Integer = clsScriptActive.CurrentPosition Dim iNextStatementPos As Integer = 0 - Dim clsRStatement As clsRStatement = Nothing + Dim clsRStatement As RStatement = Nothing For Each kvpDictEntry As DictionaryEntry In dctRStatements If kvpDictEntry.Key > iCaretPos Then @@ -708,8 +709,8 @@ Public Class ucrScript Dim dctRStatements As OrderedDictionary Try - dctRStatements = New clsRScript(frmMain.clsRLink.GetFormattedComment(strComment) _ - & Environment.NewLine & strScript).dctRStatements + dctRStatements = New RScript(frmMain.clsRLink.GetFormattedComment(strComment) _ + & Environment.NewLine & strScript).statements Catch ex As Exception MsgBox("R script parsing failed with message:" & Environment.NewLine _ & Environment.NewLine & ex.Message & Environment.NewLine & Environment.NewLine _ diff --git a/packages/RInsightF461.1.0.0/.signature.p7s b/packages/RInsightF461.1.0.0/.signature.p7s new file mode 100644 index 0000000000000000000000000000000000000000..f018365e79bd2e0acdd74ad744061c062defcb8d GIT binary patch literal 11515 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 literal 0 HcmV?d00001 diff --git a/packages/RInsightF461.1.0.0/lib/net461/RInsightF461.dll b/packages/RInsightF461.1.0.0/lib/net461/RInsightF461.dll new file mode 100644 index 0000000000000000000000000000000000000000..cebeef4295f478cb8482db6d1db6754fa64a8927 GIT binary patch literal 31232 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 OUuMJpkI(;i68PV4%Cuns literal 0 HcmV?d00001 From 1e14958f4a7f9879a4bdc4bc75c6a525e6764dc3 Mon Sep 17 00:00:00 2001 From: Stephen Lloyd Date: Sun, 24 Dec 2023 11:30:53 +0100 Subject: [PATCH 2/9] upgraded to RInsightF461 0.0.2 --- .gitignore | 2 +- instat/Model/Output/clsOutputElement.vb | 2 +- instat/instat.vbproj | 4 ++-- instat/packages.config | 2 +- packages/RInsightF461.1.0.0/.signature.p7s | Bin 11515 -> 0 bytes .../lib/net461/RInsightF461.dll | Bin 31232 -> 0 bytes 6 files changed, 5 insertions(+), 5 deletions(-) delete mode 100644 packages/RInsightF461.1.0.0/.signature.p7s delete mode 100644 packages/RInsightF461.1.0.0/lib/net461/RInsightF461.dll diff --git a/.gitignore b/.gitignore index 1ed6e973e09..a0831e0af12 100644 --- a/.gitignore +++ b/.gitignore @@ -254,5 +254,5 @@ installer/Output/ /packages/Newtonsoft.Json.*/ # RScript package and dependencies -/packages/RScript.*/ +/packages/RInsightF461.*/ /packages/System.Collections.Specialized.*/ diff --git a/instat/Model/Output/clsOutputElement.vb b/instat/Model/Output/clsOutputElement.vb index da880a8aa29..bb40bef7452 100644 --- a/instat/Model/Output/clsOutputElement.vb +++ b/instat/Model/Output/clsOutputElement.vb @@ -98,7 +98,7 @@ Public Class clsOutputElement Dim _lstRScriptElements As New List(Of clsRScriptElement) Try Dim rScript As New RScript("") - Dim lstTokens As List(Of RToken) = New RTokenList(_strScript).Tokens + Dim lstTokens As List(Of RToken) = New RTokenList(_strScript).TokensFlat 'todo Dim lstTokens As List(Of RToken) = rScript.GetLstTokens(rScript.GetLstLexemes(_strScript)) 'rScript.lstTokens If lstTokens IsNot Nothing Then For Each rToken In lstTokens diff --git a/instat/instat.vbproj b/instat/instat.vbproj index 79809aa90df..1d7fbb1645a 100644 --- a/instat/instat.vbproj +++ b/instat/instat.vbproj @@ -155,8 +155,8 @@ ..\packages\R.NET.1.8.2\lib\netstandard2.0\RDotNet.dll - - ..\packages\RInsightF461.1.0.0\lib\net461\RInsightF461.dll + + ..\packages\RInsightF461.0.0.2\lib\net461\RInsightF461.dll ..\packages\jacobslusser.ScintillaNET.3.6.3\lib\net40\ScintillaNET.dll diff --git a/instat/packages.config b/instat/packages.config index 93ee0c027b9..473c05d53f0 100644 --- a/instat/packages.config +++ b/instat/packages.config @@ -11,7 +11,7 @@ - + diff --git a/packages/RInsightF461.1.0.0/.signature.p7s b/packages/RInsightF461.1.0.0/.signature.p7s deleted file mode 100644 index f018365e79bd2e0acdd74ad744061c062defcb8d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 11515 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 diff --git a/packages/RInsightF461.1.0.0/lib/net461/RInsightF461.dll b/packages/RInsightF461.1.0.0/lib/net461/RInsightF461.dll deleted file mode 100644 index cebeef4295f478cb8482db6d1db6754fa64a8927..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 31232 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 OUuMJpkI(;i68PV4%Cuns From c07d46311ed413cca341cb9d4db276958b40ae58 Mon Sep 17 00:00:00 2001 From: Stephen Lloyd Date: Sun, 24 Dec 2023 11:41:45 +0100 Subject: [PATCH 3/9] Refactored --- instat/Model/Output/clsOutputElement.vb | 1 - instat/UserControl/ucrOutputPage.vb | 6 ++++-- instat/clsRLink.vb | 8 ++++---- instat/ucrScript.vb | 1 - 4 files changed, 8 insertions(+), 8 deletions(-) diff --git a/instat/Model/Output/clsOutputElement.vb b/instat/Model/Output/clsOutputElement.vb index bb40bef7452..b566dd0ecb6 100644 --- a/instat/Model/Output/clsOutputElement.vb +++ b/instat/Model/Output/clsOutputElement.vb @@ -99,7 +99,6 @@ Public Class clsOutputElement Try Dim rScript As New RScript("") Dim lstTokens As List(Of RToken) = New RTokenList(_strScript).TokensFlat - 'todo Dim lstTokens As List(Of RToken) = rScript.GetLstTokens(rScript.GetLstLexemes(_strScript)) 'rScript.lstTokens If lstTokens IsNot Nothing Then For Each rToken In lstTokens _lstRScriptElements.Add(New clsRScriptElement With diff --git a/instat/UserControl/ucrOutputPage.vb b/instat/UserControl/ucrOutputPage.vb index 7a3534d8e42..bed07629c36 100644 --- a/instat/UserControl/ucrOutputPage.vb +++ b/instat/UserControl/ucrOutputPage.vb @@ -15,6 +15,8 @@ ' along with this program. If not, see . Imports System.Runtime.InteropServices +Imports RInsightF461 + ''' ''' Output page for R outputs ''' @@ -191,7 +193,7 @@ Public Class ucrOutputPage If frmMain.clsInstatOptions.bIncludeCommentDefault Then 'show comments only For Each line As clsRScriptElement In formattedRScript - If line.Type = RInsightF461.RToken.TokenTypes.RComment Then + If line.Type = RToken.TokenTypes.RComment Then AddFormatedTextToRichTextBox(richTextBox, line.Text, OutputFont.GetFontForScriptType(line.Type), OutputFont.GetColourForScriptType(line.Type)) End If Next @@ -199,7 +201,7 @@ Public Class ucrOutputPage ElseIf frmMain.clsInstatOptions.bCommandsinOutput Then 'show command lines that are not comments For Each line As clsRScriptElement In formattedRScript - If Not (line.Type = RInsightF461.RToken.TokenTypes.RComment) Then + If Not (line.Type = RToken.TokenTypes.RComment) Then AddFormatedTextToRichTextBox(richTextBox, line.Text, OutputFont.GetFontForScriptType(line.Type), OutputFont.GetColourForScriptType(line.Type)) End If Next diff --git a/instat/clsRLink.vb b/instat/clsRLink.vb index 61d77e8fb54..b19eff22cf3 100644 --- a/instat/clsRLink.vb +++ b/instat/clsRLink.vb @@ -725,7 +725,7 @@ Public Class RLink ''' ''' The R code statement to execute '''-------------------------------------------------------------------------------------------- - Public Sub RunRStatement(clsRStatement As RInsightF461.RStatement) + Public Sub RunRStatement(clsRStatement As RStatement) Dim strRStatement = clsRStatement.GetAsExecutableScript() @@ -2270,13 +2270,13 @@ Public Class RLink 'check to remove the [1] notation before some parameter values If expTemp.AsCharacter(iParameterValue).Contains("[1]") Then Dim strcleanArgument As String = expTemp.AsCharacter(iParameterValue).Remove(expTemp.AsCharacter(iParameterValue).IndexOf("["), 3) - clsNewRParameter.clsArgValueDefault = New RInsightF461.RScript(strcleanArgument).statements(0).clsElement + clsNewRParameter.clsArgValueDefault = New RScript(strcleanArgument).statements(0).clsElement Else 'Empty String are Not accepted hence the modification below If String.IsNullOrEmpty(expTemp.AsCharacter(iParameterValue)) Then - clsNewRParameter.clsArgValueDefault = New RInsightF461.RScript("NODEFAULTVALUE").statements(0).clsElement + clsNewRParameter.clsArgValueDefault = New RScript("NODEFAULTVALUE").statements(0).clsElement Else - clsNewRParameter.clsArgValueDefault = New RInsightF461.RScript(expTemp.AsCharacter(iParameterValue)).statements(0).clsElement + clsNewRParameter.clsArgValueDefault = New RScript(expTemp.AsCharacter(iParameterValue)).statements(0).clsElement End If End If diff --git a/instat/ucrScript.vb b/instat/ucrScript.vb index 7d0436590a8..aceeef13e56 100644 --- a/instat/ucrScript.vb +++ b/instat/ucrScript.vb @@ -17,7 +17,6 @@ Imports System.Collections.Specialized Imports System.IO Imports System.Windows.Controls -'Imports RScript Imports RInsightF461 Imports ScintillaNET From b2c0dae1292d70a7a9f0dedb0016799422e6dcd9 Mon Sep 17 00:00:00 2001 From: Stephen Lloyd Date: Wed, 27 Dec 2023 09:59:32 +0100 Subject: [PATCH 4/9] Added RScript to ignore file to avoid commit problems during transition to RInsight --- .gitignore | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitignore b/.gitignore index a0831e0af12..b9e574c6471 100644 --- a/.gitignore +++ b/.gitignore @@ -254,5 +254,6 @@ installer/Output/ /packages/Newtonsoft.Json.*/ # RScript package and dependencies +/packages/RScript.*/ /packages/RInsightF461.*/ /packages/System.Collections.Specialized.*/ From ff96adf86f1c889ff1b01f6d5d2d65442eb26099 Mon Sep 17 00:00:00 2001 From: Stephen Lloyd Date: Thu, 28 Dec 2023 15:03:22 +0100 Subject: [PATCH 5/9] small refactoring --- instat/Model/Output/clsOutputElement.vb | 1 - 1 file changed, 1 deletion(-) diff --git a/instat/Model/Output/clsOutputElement.vb b/instat/Model/Output/clsOutputElement.vb index b566dd0ecb6..acf74f951ef 100644 --- a/instat/Model/Output/clsOutputElement.vb +++ b/instat/Model/Output/clsOutputElement.vb @@ -97,7 +97,6 @@ Public Class clsOutputElement Get Dim _lstRScriptElements As New List(Of clsRScriptElement) Try - Dim rScript As New RScript("") Dim lstTokens As List(Of RToken) = New RTokenList(_strScript).TokensFlat If lstTokens IsNot Nothing Then For Each rToken In lstTokens From aacfc000efc32939dbb088f304db1cc25e763438 Mon Sep 17 00:00:00 2001 From: Stephen Lloyd Date: Sun, 31 Dec 2023 11:21:42 +0100 Subject: [PATCH 6/9] ensured that script window code, executed in non-strict mode, is displayed in output window --- instat/Model/Output/clsOutputElement.vb | 6 +----- instat/UserControl/ucrOutputPage.vb | 15 +++++++++++++-- 2 files changed, 14 insertions(+), 7 deletions(-) diff --git a/instat/Model/Output/clsOutputElement.vb b/instat/Model/Output/clsOutputElement.vb index acf74f951ef..f8ea0e051e0 100644 --- a/instat/Model/Output/clsOutputElement.vb +++ b/instat/Model/Output/clsOutputElement.vb @@ -108,11 +108,7 @@ Public Class clsOutputElement Next End If Catch ex As Exception - MessageBox.Show("Unable to parse the following R Script: '" & _strScript & "'." & - Environment.NewLine & ex.Message, - "Developer Error", - MessageBoxButtons.OK, - MessageBoxIcon.Error) + Return New List(Of clsRScriptElement) End Try Return _lstRScriptElements End Get diff --git a/instat/UserControl/ucrOutputPage.vb b/instat/UserControl/ucrOutputPage.vb index bed07629c36..0d8972109b5 100644 --- a/instat/UserControl/ucrOutputPage.vb +++ b/instat/UserControl/ucrOutputPage.vb @@ -165,8 +165,13 @@ Public Class ucrOutputPage .BorderStyle = BorderStyle.None } + Dim formattedRScript As List(Of clsRScriptElement) = outputElement.FormattedRScript 'if settings are not available or both show commands and comments settings are enabled then just show the whole script - FillRichTextWithRScriptBasedOnSettings(richTextBox, outputElement.FormattedRScript) + If formattedRScript.Count > 0 Then + FillRichTextWithRScriptBasedOnSettings(richTextBox, formattedRScript) + Else + AddFormatedTextToRichTextBox(richTextBox, outputElement.Script, OutputFont.RPresentationFont, OutputFont.RPresentationColour) + End If 'if no contents added just exit sub If richTextBox.TextLength = 0 Then @@ -419,7 +424,13 @@ Public Class ucrOutputPage Private Sub AddElementToRichTextBox(element As clsOutputElement, richText As RichTextBox) Select Case element.OutputType Case OutputType.Script - FillRichTextWithRScriptBasedOnSettings(richText, element.FormattedRScript) + Dim formattedRScript As List(Of clsRScriptElement) = element.FormattedRScript + 'if settings are not available or both show commands and comments settings are enabled then just show the whole script + If formattedRScript.Count > 0 Then + FillRichTextWithRScriptBasedOnSettings(richText, formattedRScript) + Else + AddFormatedTextToRichTextBox(richText, element.Script, OutputFont.RPresentationFont, OutputFont.RPresentationColour) + End If Case OutputType.TextOutput Dim strOutput As String = "" If element.IsFile Then From 522cfa16f8c88fa4c1efba5f16c007ed691d78c8 Mon Sep 17 00:00:00 2001 From: Stephen Lloyd Date: Fri, 5 Jan 2024 15:42:19 +0100 Subject: [PATCH 7/9] upgraded to RInsightF461 0.0.4 --- instat/instat.vbproj | 2 +- instat/packages.config | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/instat/instat.vbproj b/instat/instat.vbproj index 1d7fbb1645a..457f5ffaa8c 100644 --- a/instat/instat.vbproj +++ b/instat/instat.vbproj @@ -156,7 +156,7 @@ ..\packages\R.NET.1.8.2\lib\netstandard2.0\RDotNet.dll - ..\packages\RInsightF461.0.0.2\lib\net461\RInsightF461.dll + ..\packages\RInsightF461.0.0.4\lib\net461\RInsightF461.dll ..\packages\jacobslusser.ScintillaNET.3.6.3\lib\net40\ScintillaNET.dll diff --git a/instat/packages.config b/instat/packages.config index 473c05d53f0..c0347fd7db6 100644 --- a/instat/packages.config +++ b/instat/packages.config @@ -11,7 +11,7 @@ - + From 097f26f070b132343df2527b42c1240c6cca7688 Mon Sep 17 00:00:00 2001 From: Stephen Lloyd Date: Mon, 8 Jan 2024 09:34:01 +0100 Subject: [PATCH 8/9] upgraded to RInsightF461 0.0.7 --- instat/clsRLink.vb | 127 ++++------------------------------------- instat/instat.vbproj | 4 +- instat/packages.config | 2 +- 3 files changed, 14 insertions(+), 119 deletions(-) diff --git a/instat/clsRLink.vb b/instat/clsRLink.vb index b19eff22cf3..751ffea0ff3 100644 --- a/instat/clsRLink.vb +++ b/instat/clsRLink.vb @@ -727,10 +727,8 @@ Public Class RLink '''-------------------------------------------------------------------------------------------- Public Sub RunRStatement(clsRStatement As RStatement) - Dim strRStatement = clsRStatement.GetAsExecutableScript() - 'if there is no script to run then just ignore and exit sub - If String.IsNullOrWhiteSpace(strRStatement) Then + If String.IsNullOrWhiteSpace(clsRStatement.Text) Then Exit Sub End If @@ -738,30 +736,28 @@ Public Class RLink Dim strOutput As String = "" 'if not an assignment operation, then capture the output - Dim strRStatementNoFormatting As String = - clsRStatement.GetAsExecutableScript(bIncludeFormatting:=False) - If IsStatementViewObject(strRStatementNoFormatting) Then - strOutput = GetFileOutput(strRStatementNoFormatting, bSilent:=False, + If IsStatementViewObject(clsRStatement.TextNoFormatting) Then + strOutput = GetFileOutput(clsRStatement.TextNoFormatting, bSilent:=False, bSeparateThread:=False, bShowWaitDialogOverride:=Nothing) - ElseIf clsRStatement.clsAssignment Is Nothing _ - AndAlso Not String.IsNullOrWhiteSpace(strRStatementNoFormatting) Then + ElseIf Not clsRStatement.IsAssignment _ + AndAlso Not String.IsNullOrWhiteSpace(clsRStatement.TextNoFormatting) Then strOutput = GetFileOutput("view_object_data(object = " _ - & strRStatementNoFormatting _ + & clsRStatement.TextNoFormatting _ & " , object_format = 'text' )", bSilent:=False, bSeparateThread:=False, bShowWaitDialogOverride:=Nothing) Else - Evaluate(strRStatement, bSilent:=False, bSeparateThread:=False, + Evaluate(clsRStatement.Text, bSilent:=False, bSeparateThread:=False, bShowWaitDialogOverride:=Nothing) End If - clsOutputLogger.AddOutput(strRStatement, strOutput, bAsFile:=True, - bDisplayOutputInExternalViewer:=strRStatementNoFormatting.StartsWith("view_object_data")) - LogScript(strRStatement.TrimEnd(vbCr, vbLf)) + clsOutputLogger.AddOutput(clsRStatement.Text, strOutput, bAsFile:=True, + bDisplayOutputInExternalViewer:=clsRStatement.TextNoFormatting.StartsWith("view_object_data")) + LogScript(clsRStatement.Text.TrimEnd(vbCr, vbLf)) Catch e As Exception MsgBox(e.Message & Environment.NewLine & "The error occurred in attempting to run the following R command:" & - Environment.NewLine & strRStatement, MsgBoxStyle.Critical, + Environment.NewLine & clsRStatement.Text, MsgBoxStyle.Critical, "Error running R command") End Try End Sub @@ -2197,107 +2193,6 @@ Public Class RLink Return strReconstructedComment End Function - '''-------------------------------------------------------------------------------------------- - ''' - ''' Gets the list of clsRParameters from the function - ''' definition. - ''' For example, the function "str_split(string, pattern, n = Inf, simplify = FALSE)" returns - ''' the following parameters: - ''' - ''' - ''' clsParameter 1: Argument Name ="string" , Parameter position = 0 , Default value = NOTHING - ''' - ''' clsParameter 2: Argument Name = "patterm" , Parameter position = 1 , Default value = NOTHING - ''' - ''' clsParameter 3: Argument Name="n" , Parameter position = 2 , Default value = "Inf" - ''' - ''' clsParameter 4: Argument Name="simplify" , Parameter position = 3 , Default value = "FALSE") - ''' - ''' - ''' - ''' The function name provided. - ''' - ''' The list of clsRParameters. - '''-------------------------------------------------------------------------------------------- - Private Function GetRFunctionDefinitionParameters(strFunctionName As String) As List(Of RInsightF461.RParameter) - 'Note: this function is not currently called but it will be used in future - ' functionality to populate dialogs from script. - ' Please do not delete this function. (@lloyddewit 24/11/21) - - 'temporary object that retrieves the output from the environment - Dim strTempAssignTo As String = ".temp_func" - Dim expTemp As SymbolicExpression - Dim clsFormalsFunction As New RFunction - Dim lstRParameters As New List(Of RInsightF461.RParameter) - Dim clsAsListFunction As New RFunction - - clsAsListFunction.SetRCommand("as.list") - clsAsListFunction.AddParameter(clsRFunctionParameter:=clsFormalsFunction, bIncludeArgumentName:=False, iPosition:=0) - - 'The 'formals' function returns the parameters for a specified function. - 'for example, for the function "str_split(string, pattern, n = Inf, simplify = FALSE)", formals returns - ' $string - ' $pattern - ' $n - ' [1] Inf - ' $simplify - ' [1] FALSE - clsFormalsFunction.SetRCommand("formals") - clsFormalsFunction.AddParameter(strParameterValue:=strFunctionName, bIncludeArgumentName:=False, iPosition:=0) - - 'TODO check that the fuction name provided has no pening and closing brackets at the end - '?QUESTION /CLARIFICATION Parameters value fror the function ?gt::cols_merge() are being split into different parts - If Not Evaluate(strTempAssignTo & " <- " & "capture.output(" & clsAsListFunction.ToScript() & ")", bSilent:=True) Then - 'Error getting the parameters either the function name provided is incorrect/package containing the function isn't loaded - Return Nothing - End If - expTemp = GetSymbol(strTempAssignTo) - Evaluate("rm(" & strTempAssignTo & ")", bSilent:=True) - If expTemp Is Nothing Then - Return Nothing - End If - Dim iNewArgPosition As Integer = 0 - 'parameter name position - Dim iParameterName As Integer = 0 - 'parameter value position - Dim iParameterValue As Integer = 1 - While (iParameterName < expTemp.AsCharacter().Length) - Dim clsNewRParameter As New RInsightF461.RParameter - - 'Assign the parameter Name - clsNewRParameter.strArgName = expTemp.AsCharacter(iParameterName).TrimStart("$") - 'Adding the parameter value - 'check to remove the [1] notation before some parameter values - If expTemp.AsCharacter(iParameterValue).Contains("[1]") Then - Dim strcleanArgument As String = expTemp.AsCharacter(iParameterValue).Remove(expTemp.AsCharacter(iParameterValue).IndexOf("["), 3) - clsNewRParameter.clsArgValueDefault = New RScript(strcleanArgument).statements(0).clsElement - Else - 'Empty String are Not accepted hence the modification below - If String.IsNullOrEmpty(expTemp.AsCharacter(iParameterValue)) Then - clsNewRParameter.clsArgValueDefault = New RScript("NODEFAULTVALUE").statements(0).clsElement - Else - clsNewRParameter.clsArgValueDefault = New RScript(expTemp.AsCharacter(iParameterValue)).statements(0).clsElement - End If - - End If - 'Assign the parameter Value - clsNewRParameter.iArgPosDefinition = iNewArgPosition - - 'TEMPORARY FUNCTIONALITY FOR PRESENTATION - Console.WriteLine("PARAMETER" & clsNewRParameter.iArgPosDefinition) - Console.WriteLine("..strArgumentName:" & clsNewRParameter.strArgName) - Console.WriteLine("..strArgumentValue:" & clsNewRParameter.clsArgValueDefault.strTxt) - Console.WriteLine("..ArgumentPosition:" & clsNewRParameter.iArgPosDefinition) - - iNewArgPosition += 1 - iParameterName += 3 - iParameterValue += 3 - lstRParameters.Add(clsNewRParameter) - End While - - Return lstRParameters - End Function - Private Function IsStatementAssignment(strRStatement As String) As Boolean Return strRStatement.Contains("<-") End Function diff --git a/instat/instat.vbproj b/instat/instat.vbproj index 457f5ffaa8c..7715943d2db 100644 --- a/instat/instat.vbproj +++ b/instat/instat.vbproj @@ -155,8 +155,8 @@ ..\packages\R.NET.1.8.2\lib\netstandard2.0\RDotNet.dll - - ..\packages\RInsightF461.0.0.4\lib\net461\RInsightF461.dll + + ..\packages\RInsightF461.0.0.7\lib\net461\RInsightF461.dll ..\packages\jacobslusser.ScintillaNET.3.6.3\lib\net40\ScintillaNET.dll diff --git a/instat/packages.config b/instat/packages.config index c0347fd7db6..82fa6c86ff3 100644 --- a/instat/packages.config +++ b/instat/packages.config @@ -11,7 +11,7 @@ - + From 123aeb22d28b152730bffcc93391884f21424c1b Mon Sep 17 00:00:00 2001 From: Stephen Lloyd Date: Wed, 10 Jan 2024 09:27:56 +0100 Subject: [PATCH 9/9] removed unnecessary comment - no impact on functionality --- instat/clsRLink.vb | 1 - 1 file changed, 1 deletion(-) diff --git a/instat/clsRLink.vb b/instat/clsRLink.vb index 751ffea0ff3..91b7e41a18d 100644 --- a/instat/clsRLink.vb +++ b/instat/clsRLink.vb @@ -18,7 +18,6 @@ Imports System.Runtime.InteropServices Imports RDotNet Imports unvell.ReoGrid Imports System.IO -'Imports RScript Imports RInsightF461 '''--------------------------------------------------------------------------------------------