// Action-creating event handlers... private void OnInsertText(object sender, InsertTextArgs args) { if (frozen_cnt == 0) { InsertAction action = new InsertAction(args.Pos, args.Text, args.Text.Length, chop_buffer); AddUndoAction(action); } }
private void OnBufferInsertText(object o, InsertTextArgs args) { if (!isBufferInsertManual) { int index = args.Pos.Offset; string insertion = args.NewText; ExecuteInsertCommand(index, insertion); } ApplyTags(); UpdateLineColStatus(); }
private void OnBufferInsertText(object o, InsertTextArgs args) { TextInsertedHandler handler = TextInserted; if (handler != null) { TextInsertedArgs raise_args = new TextInsertedArgs(); raise_args.Args = new object [] { args.Text, args.Length, args.Pos.Offset }; handler(this, raise_args); } }
void OnBufferInsertText(object o, InsertTextArgs args) { var handler = TextInserted; if (handler != null) { var raise_args = new TextInsertedArgs { Args = new object[] { args.Text, args.Length, args.Pos.Offset } }; handler(this, raise_args); } }
private void InsertTextHandler(object sender, InsertTextArgs args) { var startIt = args.Pos; if (startIt.BackwardChars(args.NewTextLength) && // Can go to start applyIter.Equals(startIt)) { // User wants special applied tags here var endIt = args.Pos; Buffer.RemoveAllTags(startIt, endIt); foreach (var tag in activeTags) { Buffer.ApplyTag(tag, startIt, endIt); } applyIter = endIt; // Add CursorPosition } }
void OnInsertText(object sender, InsertTextArgs args) { int lines = 0; for (int i = 0; i < args.Text.Length; i++) { if (args.Text [i] == '\n') { lines++; } } TextIter iter = this.GetIterAtOffset(args.Pos.Offset - args.Length); if (lines != 0) { OnLineCountChanged(iter.Line, lines, iter.LineOffset); } OnTextChanged(args.Pos.Offset, args.Pos.Offset + args.Length); }
private void OnInsertText(object sender, InsertTextArgs args) { int offset = args.Pos.Offset - args.Length; string text = args.Text; TextIter previousIter = GetIterAtOffset(offset - 1); // Previous is the iter before the insert offset. TextIter startIter = GetIterAtOffset(offset); TextIter endIter = GetIterAtOffset(offset + text.Length); // Only handle special inserting cases when we have a fully loaded document. if (document_loaded) { #if DEBUG Console.WriteLine("DEBUG: Inserting: {0}", text); Console.WriteLine("DEBUG: Start Offset: {0} Char: {1}", startIter.Offset, startIter.Char); Console.WriteLine("DEBUG: End Offset: {0} Char: {1}", endIter.Offset, endIter.Char); #endif TextTag lastEnd = DocumentUtils.GetLastTag(endIter); TextTag lastPrevious = DocumentUtils.GetLastTag(previousIter); if (endIter.BeginsTag(lastEnd) && lastEnd.Editable) { #if DEBUG Console.WriteLine("DEBUG: Inserting text at start of editable region."); Console.WriteLine("DEBUG: Tag Name: {0} Char: {1}", lastEnd.Name, endIter.Char); #endif ApplyTag(lastEnd, startIter, endIter); } else if (DocumentUtils.TagEndsHere(lastPrevious, previousIter, startIter) && lastPrevious.Editable) { #if DEBUG Console.WriteLine("DEBUG: Inserting text at end of editable region."); Console.WriteLine("DEBUG: Tag Name: {0} Char: {1}", lastPrevious.Name, previousIter.Char); #endif ApplyTag(lastPrevious, startIter, endIter); } } }
private void OnTextBufferBackupOnInsertText(object o, InsertTextArgs args) { ScrollToEnd(_textViewBackup, _textBufferBackup); }
void InsertText(object o, InsertTextArgs args) { args.RetVal = args.Length <= _maxLength; }
public void Buffer_InsertText(object o, InsertTextArgs args) { Modificado[count] = true; Caracteres.Text = "Caracteres: " + Convert.ToString(Texto[count].Buffer.Text.Length); Lineas.Text = "Lineas: " + Convert.ToString(Texto[count].Buffer.LineCount); }