public JSConsole(string[] args) : base("Rhino JavaScript Console") { JMenuBar menubar = new JMenuBar(); CreateFileChooser(); string[] fileItems = new string[] { "Load...", "Exit" }; string[] fileCmds = new string[] { "Load", "Exit" }; char[] fileShortCuts = new char[] { 'L', 'X' }; string[] editItems = new string[] { "Cut", "Copy", "Paste" }; char[] editShortCuts = new char[] { 'T', 'C', 'P' }; string[] plafItems = new string[] { "Metal", "Windows", "Motif" }; bool[] plafState = new bool[] { true, false, false }; JMenu fileMenu = new JMenu("File"); fileMenu.SetMnemonic('F'); JMenu editMenu = new JMenu("Edit"); editMenu.SetMnemonic('E'); JMenu plafMenu = new JMenu("Platform"); plafMenu.SetMnemonic('P'); for (int i = 0; i < fileItems.Length; ++i) { JMenuItem item = new JMenuItem(fileItems[i], fileShortCuts[i]); item.SetActionCommand(fileCmds[i]); item.AddActionListener(this); fileMenu.Add(item); } for (int i_1 = 0; i_1 < editItems.Length; ++i_1) { JMenuItem item = new JMenuItem(editItems[i_1], editShortCuts[i_1]); item.AddActionListener(this); editMenu.Add(item); } ButtonGroup group = new ButtonGroup(); for (int i_2 = 0; i_2 < plafItems.Length; ++i_2) { JRadioButtonMenuItem item = new JRadioButtonMenuItem(plafItems[i_2], plafState[i_2]); group.Add(item); item.AddActionListener(this); plafMenu.Add(item); } menubar.Add(fileMenu); menubar.Add(editMenu); menubar.Add(plafMenu); SetJMenuBar(menubar); consoleTextArea = new ConsoleTextArea(args); JScrollPane scroller = new JScrollPane(consoleTextArea); SetContentPane(scroller); consoleTextArea.SetRows(24); consoleTextArea.SetColumns(80); AddWindowListener(new _WindowAdapter_135()); Pack(); SetVisible(true); // System.setIn(consoleTextArea.getIn()); // System.setOut(consoleTextArea.getOut()); // System.setErr(consoleTextArea.getErr()); Program.SetIn(consoleTextArea.GetIn()); Program.SetOut(consoleTextArea.GetOut()); Program.SetErr(consoleTextArea.GetErr()); Program.Main(args); }