protected override Completion ExecuteImpl(ExecutionEnvironment enviroment) { if (Message == null) { return(Completion.Void); } var c = Message.Execute(enviroment); if (c.Type != CompletionType.Value) { return(c); } var value = c.ReturnValue; ConsoleWindow wnd = GetConsole(enviroment); wnd.Write(value); return(Completion.Void); }
public static ConsoleWindow GetConsole(ExecutionEnvironment enviroment) { if (!enviroment.HasValue("#$Console$#")) { Application.Current.Dispatcher.Invoke(() => { consoleWindow = new ConsoleWindow(); consoleWindow.Owner = Application.Current.MainWindow; consoleWindow.Show(); }); enviroment.GetBaseEnvironment().RegisterValue("#$Console$#", consoleWindow); } else { consoleWindow = enviroment.GetValue("#$Console$#") as ConsoleWindow; } return(consoleWindow); }
public static ConsoleWindow GetConsole(ExecutionEnvironment enviroment) { ConsoleWindow wnd = null; if (!enviroment.HasValue("#$Console$#")) { Application.Current.Dispatcher.Invoke(() => { wnd = new ConsoleWindow(); wnd.Owner = Application.Current.MainWindow; wnd.Show(); }); enviroment.GetBaseEnvironment().RegisterValue("#$Console$#", wnd); ConsoleBaseStatement.consoleWindow = wnd; } else { wnd = enviroment.GetValue("#$Console$#") as ConsoleWindow; } return(wnd); }
protected override Completion ExecuteImpl(ExecutionEnvironment enviroment) { ConsoleWindow wnd = GetConsole(enviroment); return(new Completion(wnd.Read())); }