protected void RemoveSplitTags(Gtk.TextBuffer buffer) { foreach (TagData tag in splitTags) { Gtk.TextIter start = buffer.GetIterAtOffset(tag.start); Gtk.TextIter end = buffer.GetIterAtOffset(tag.end); buffer.RemoveTag(tag.tag, start, end); } }
public void Redo(Gtk.TextBuffer buffer) { Gtk.TextIter start_iter, end_iter; start_iter = buffer.GetIterAtOffset(start); end_iter = buffer.GetIterAtOffset(end); buffer.MoveMark(buffer.SelectionBound, start_iter); buffer.RemoveTag(tag, start_iter, end_iter); buffer.MoveMark(buffer.InsertMark, end_iter); }
public void Split(Gtk.TextIter iter, Gtk.TextBuffer buffer) { foreach (Gtk.TextTag tag in iter.Tags) { NoteTag noteTag = tag as NoteTag; if (noteTag != null && !noteTag.CanSplit) { Gtk.TextIter start = iter; Gtk.TextIter end = iter; // We only care about enclosing tags if (start.TogglesTag(tag) || end.TogglesTag(tag)) { continue; } start.BackwardToTagToggle(tag); end.ForwardToTagToggle(tag); AddSplitTag(start, end, tag); buffer.RemoveTag(tag, start, end); } } }
public void RemoveTag(Gtk.TextTag tag) { buffer.RemoveTag(tag, Start, End); }