public FullScriptingReplForm(ScriptParsingPlugin scriptParsingPlugin) { InitializeComponent(); mScriptParsingPlugin = scriptParsingPlugin; ClassScopeTextBox.AllowDrop = true; ClassScopeTextBox.DragDrop += HandleDragDrop; ClassScopeTextBox.SelectAll(); int numberOfTabs = 30; int[] tabs = new int[numberOfTabs]; for (int i = 0; i < tabs.Length; i++) { tabs[i] = 14 * i; } ClassScopeTextBox.SelectionTabs = tabs; InitializeTextBox.AllowDrop = true; InitializeTextBox.DragDrop += HandleDragDrop; InitializeTextBox.SelectionTabs = tabs; UpdateTextBox.AllowDrop = true; UpdateTextBox.DragDrop += HandleDragDrop; UpdateTextBox.SelectionTabs = tabs; // does not work on rich text boxes //SetCueText(InitializeTextBox, "<Add Intialize Code Here>"); //SetCueText(UpdateTextBox, "<Add Update Code Here>"); }
public void Initialize() { OverallInitializer.Initialize(); mPlugin = new ScriptParsingPlugin(); mPlugin.StartUpForTests(); mExpressionParser = new ExpressionParser(); mExpressionParser.LogStringBuilder = mLog; CreateElementRuntime("ExpressionParserTestEntity"); CreateParentElementRuntime(); List <string> languages = new List <string>(); languages.Add("ID"); languages.Add("English"); languages.Add("Spanish"); Dictionary <string, string[]> entries = new Dictionary <string, string[]>(); entries.Add("T_Test", new string[] { "T_Test", "Test in English", "Test in Spanish" }); LocalizationManager.AddDatabase(entries, languages); }
public bool DetermineIfShouldExecute( ScriptParsingPlugin plugin, CodeContext codeContext, ConditionalCodeBlock ccb, ExpressionParser expressionParser, bool isFirstExecution) { bool shouldExecute = false; if (ccb.BlockType == BlockType.Else) { shouldExecute = true; } else if (ccb.BlockType == BlockType.For) { Statement[] statements = new CSharpParser().ParseStatements(ccb.ConditionExpression) as Statement[]; if (isFirstExecution) { VariableDeclarationStatement declaration = statements[0] as VariableDeclarationStatement; var variable = declaration.Variables.FirstOrDefault(); plugin.ApplyAssignment(variable, declaration, codeContext); } var predicateExpression = (statements[1] as ExpressionStatement).Expression; var resultAsObject = expressionParser.EvaluateExpression(predicateExpression, codeContext); return((bool)resultAsObject); } else if (ccb.BlockType == BlockType.While) { shouldExecute = (bool)expressionParser.EvaluateExpression(ccb.ConditionExpression, codeContext); } else { try { shouldExecute = (bool)expressionParser.EvaluateExpression(ccb.ConditionExpression, codeContext); } catch (Exception e) { throw e; } } return(shouldExecute); }