public Scintilla() { Lines = new LineCollection(); Styles = new StyleCollection(); Margins = new MarginCollection(); Markers = new MarkerCollection(); Indicators = new IndicatorCollection(); textbox = new TextBox(); textbox.Location = new Point(0, 0); textbox.Multiline = true; textbox.Font = new Font(FontFamily.GenericMonospace, 10.0f); Controls.Add(textbox); Size = textbox.PreferredSize; }
/// <summary> /// Initializes a new instance of the <see cref="Scintilla" /> class. /// </summary> public Scintilla() { // WM_DESTROY workaround if (Scintilla.reparentGlobal.HasValue) reparent = (bool)Scintilla.reparentGlobal; // We don't want .NET to use GetWindowText because we manage ('cache') our own text base.SetStyle(ControlStyles.CacheText, true); // Necessary control styles (see TextBoxBase) base.SetStyle(ControlStyles.StandardClick | ControlStyles.StandardDoubleClick | ControlStyles.UseTextForAccessibility | ControlStyles.UserPaint, false); this.borderStyle = BorderStyle.Fixed3D; Lines = new LineCollection(this); Styles = new StyleCollection(this); Indicators = new IndicatorCollection(this); Margins = new MarginCollection(this); Markers = new MarkerCollection(this); Selections = new SelectionCollection(this); }
public Scintilla() { this._state = new BitVector32(0); this._state[_acceptsReturnState] = true; this._state[_acceptsTabState] = true; _ns = (INativeScintilla)this; _caption = GetType().FullName; // Set up default encoding to UTF-8 which is the Scintilla's best supported. // .NET strings are UTF-16 but should be able to convert without any problems this.Encoding = Encoding.UTF8; // Ensure all style values have at least defaults _ns.StyleClearAll(); _caret = new CaretInfo(this); _lines = new LineCollection(this); _selection = new Selection(this); _indicators = new IndicatorCollection(this); _snippets = new SnippetManager(this); _margins = new MarginCollection(this); _scrolling = new Scrolling(this); _whitespace = new Whitespace(this); _endOfLine = new EndOfLine(this); _clipboard = new Clipboard(this); _undoRedo = new UndoRedo(this); _dropMarkers = new DropMarkers(this); _hotspotStyle = new HotspotStyle(this); _callTip = new CallTip(this); _styles = new StyleCollection(this); _indentation = new Indentation(this); _markers = new MarkerCollection(this); _autoComplete = new AutoComplete(this); _documentHandler = new DocumentHandler(this); _lexing = new Lexing(this); _longLines = new LongLines(this); _commands = new Commands(this); _folding = new Folding(this); _configurationManager = new ConfigurationManager(this); _printing = new Printing(this); _findReplace = new FindReplace(this); _documentNavigation = new DocumentNavigation(this); _goto = new GoTo(this); _helpers.AddRange(new TopLevelHelper[] { _caret, _lines, _selection, _indicators, _snippets, _margins, _scrolling, _whitespace, _endOfLine, _clipboard, _undoRedo, _dropMarkers, _hotspotStyle, _styles, _indentation, _markers, _autoComplete, _documentHandler, _lexing, _longLines, _commands, _folding, _configurationManager, _printing, _findReplace, _documentNavigation, _goto }); // Change from Scintilla's default black on white to // platform defaults for edit controls. base.BackColor = SystemColors.Window; base.ForeColor = SystemColors.WindowText; Styles[0].Font = Font; Styles[0].ForeColor = ForeColor; Styles[0].BackColor = BackColor; Styles.Default.BackColor = BackColor; }
public LinesEnumerator(LineCollection lines) { _lines = lines; _count = lines.Count; }
public Scintilla() { // We don't want .NET to use GetWindowText because we manage ('cache') our own text SetStyle(ControlStyles.CacheText, true); // Necessary control styles (see TextBoxBase) SetStyle(ControlStyles.StandardClick | ControlStyles.StandardDoubleClick | ControlStyles.UseTextForAccessibility | ControlStyles.UserPaint, false); // It's critical that we initialize helpers that listen for notifications early and // in the correct order. They have to be the first to know when notifications occur. _lineStorage = new LineStorage(this); _stringAdapter = new StringAdapter(this, _lineStorage); _state = new BitVector32(0); _state[_acceptsReturnState] = true; _state[_acceptsTabState] = true; _ns = (INativeScintilla)this; _caption = GetType().FullName; // Most Windows Forms controls delay-load everything until a handle is created. // That's a major pain so we just explicity create a handle right away. CreateControl(); // Set up default encoding to UTF-8 which is the Scintilla's best supported. // .NET strings are UTF-16 but should be able to convert without any problems this.Encoding = Encoding.UTF8; // Ensure all style values have at least defaults _ns.StyleClearAll(); _caret = new CaretInfo(this); _lines = new LineCollection(this); _selection = new Selection(this); _snippets = new SnippetManager(this); _margins = new MarginCollection(this); _whitespace = new Whitespace(this); _endOfLine = new EndOfLine(this); _clipboard = new Clipboard(this); _undoRedo = new UndoRedo(this); _dropMarkers = new DropMarkers(this); _hotspotStyle = new HotspotStyle(this); _callTip = new CallTip(this); _styles = new StyleCollection(this); _indentation = new Indentation(this); _markers = new MarkerCollection(this); _autoComplete = new AutoComplete(this); _documentHandler = new DocumentHandler(this); _lexing = new Lexing(this); _longLines = new LongLines(this); _commands = new Commands(this); _folding = new Folding(this); _configurationManager = new ConfigurationManager(this); _printing = new Printing(this); _findReplace = CreateFindReplaceInstance(); _documentNavigation = new DocumentNavigation(this); _goto = new GoTo(this); _helpers.AddRange(new TopLevelHelper[] { _caret, _lines, _selection, _snippets, _margins, _whitespace, _endOfLine, _clipboard, _undoRedo, _dropMarkers, _hotspotStyle, _styles, _indentation, _markers, _autoComplete, _documentHandler, _lexing, _longLines, _commands, _folding, _configurationManager, _printing, _findReplace, _documentNavigation, _goto }); // Change from Scintilla's default black on white to // platform defaults for edit controls. base.BackColor = SystemColors.Window; base.ForeColor = SystemColors.WindowText; Styles[0].Font = Font; Styles[0].ForeColor = ForeColor; Styles[0].BackColor = BackColor; Styles.Default.BackColor = BackColor; // Change scrolling defaults DirectMessage(NativeMethods.SCI_SETSCROLLWIDTH, new IntPtr(1), IntPtr.Zero); DirectMessage(NativeMethods.SCI_SETSCROLLWIDTHTRACKING, new IntPtr(1), IntPtr.Zero); }