public IronPythonConsoleControl() { InitializeComponent(); pad = new PythonConsolePad(); grid.Children.Add(pad.Control); // Load our custom highlighting definition IHighlightingDefinition pythonHighlighting; using (Stream s = typeof(IronPythonConsoleControl).Assembly.GetManifestResourceStream("PythonConsoleControl.Resources.Python.xshd")) { if (s == null) throw new InvalidOperationException("Could not find embedded resource"); using (XmlReader reader = new XmlTextReader(s)) { pythonHighlighting = ICSharpCode.AvalonEdit.Highlighting.Xshd. HighlightingLoader.Load(reader, HighlightingManager.Instance); } } // and register it in the HighlightingManager HighlightingManager.Instance.RegisterHighlighting("Python Highlighting", new string[] { ".cool" }, pythonHighlighting); pad.Control.SyntaxHighlighting = pythonHighlighting; IList<IVisualLineTransformer> transformers = pad.Control.TextArea.TextView.LineTransformers; for (int i = 0; i < transformers.Count; ++i) { if (transformers[i] is HighlightingColorizer) transformers[i] = new PythonConsoleHighlightingColorizer(pythonHighlighting, pad.Control.Document); } pad.Control.Loaded += (sender, args) => pad.Control.Focus(); }
public IronPythonConsoleControl() { InitializeComponent(); pad = new PythonConsolePad(); grid.Children.Add(pad.Control); IHighlightingDefinition pythonHighlighting; using (Stream s = typeof(IronPythonConsoleControl).Assembly.GetManifestResourceStream("IronPythonConsoleForm.Resources.Python.xshd")) { if (s == null) { throw new InvalidOperationException("Could not find embedded resource"); } using (XmlReader reader = new XmlTextReader(s)) { pythonHighlighting = ICSharpCode.AvalonEdit.Highlighting.Xshd. HighlightingLoader.Load(reader, HighlightingManager.Instance); } } // and register it in the HighlightingManager HighlightingManager.Instance.RegisterHighlighting("Python Highlighting", new string[] { ".cool" }, pythonHighlighting); pad.Control.SyntaxHighlighting = pythonHighlighting; IList <IVisualLineTransformer> transformers = pad.Control.TextArea.TextView.LineTransformers; for (int i = 0; i < transformers.Count; ++i) { if (transformers[i] is HighlightingColorizer) { transformers[i] = new PythonConsoleHighlightingColorizer(pythonHighlighting, pad.Control.Document); } } }
public ConsoleOptions(PythonConsolePad pad) { this.textEditor = pad.Control; this.pad = pad; }