protected sealed override void Initialize() { base.Initialize(); Variables = new ObservableCollection <WatchVariableViewModel>(); Configuration = new ConfigurationViewModel(); FsmGraph = new FsmGraphViewModel(); EvaluationResult = string.Empty; SetupEvents(); _interpreter = TclVoiceInterpreter.Create(_cancellationTokenSource); if (DelayedExecutionEnabled) { _interpreter.EnableDelayedExecution(TimeSpan.FromMilliseconds(ExecutionDelay)); } _interpreter.EvaluateCompleted += InterpreterOnEvaluateCompleted; _interpreter.WatchVariablesChanged += (sender, args) => Variables = new ObservableCollection <WatchVariableViewModel>(_interpreter.WatchVariables.Select(Mapper.Map)); _interpreter.BreakpointHitChanged += OnBreakpointHitChanged; _interpreter.OnInputDigitsRequested += OnInputDigitsRequested; _interpreter.FsmStateChanged += (sender, args) => Application.Current.Dispatcher.Invoke(() => FsmGraph.SetNewState(args.CurrentState)); _interpreter.FsmGenerated += (sender, args) => Application.Current.Dispatcher.Invoke(() => FsmGraph.ResetFsmGraph(args.CurrentState, args.Transitions)); }
protected override void EvaluateInternal(TclVoiceInterpreter interpreter) { interpreter.EvaluateScript(_scriptToEvalute); }