/// <remarks> /// Undo last operation /// </remarks> public void Undo() { // we clear all selection direct, because the redraw // is done per refresh at the end of the action // document.SelectionCollection.Clear(); document.UndoStack.AcceptChanges = false; document.Replace(offset, text.Length, origText); // document.Caret.Offset = Math.Min(document.TextLength, Math.Max(0, oldCaretPos)); document.UndoStack.AcceptChanges = true; }
protected override void Convert(Document.Document document, int startLine, int endLine) { List <string> lines = new List <string>(); for (int i = startLine; i <= endLine; ++i) { LineSegment line = document.GetLineSegment(i); lines.Add(document.GetText(line.Offset, line.Length)); } for (int i = 0; i < lines.Count - 1; ++i) { if (lines[i] == "") { lines.RemoveAt(i); --i; } } for (int i = 0; i < lines.Count; ++i) { LineSegment line = document.GetLineSegment(startLine + i); document.Replace(line.Offset, line.Length, lines[i].ToString()); } // remove removed lines for (int i = startLine + lines.Count; i <= endLine; ++i) { LineSegment line = document.GetLineSegment(startLine + lines.Count); document.Remove(line.Offset, line.TotalLength); } }
protected override void Convert(Document.Document document, int startOffset, int length) { StringBuilder sb = new StringBuilder(); string sin = document.GetText(startOffset, length); char lastChar = '_'; // Fix any errant spaces. sin = sin.Replace(' ', '_'); if (sin != null) { foreach (char c in sin) { if (c == '_') { sb.Append(' '); } else if (lastChar == '_') { sb.Append(char.ToUpper(c)); } else { sb.Append(char.ToLower(c)); } lastChar = c; } } document.Replace(startOffset, length, sb.ToString()); }
protected override void Convert(Document.Document document, int y1, int y2) { for (int i = y2; i >= y1; --i) { LineSegment line = document.GetLineSegment(i); if (line.Length > 0) { // count how many whitespace characters there are at the start int whiteSpace; for (whiteSpace = 0; whiteSpace < line.Length && char.IsWhiteSpace(document.GetCharAt(line.Offset + whiteSpace)); whiteSpace++) { // deliberately empty } if (whiteSpace > 0) { string newLine = document.GetText(line.Offset, whiteSpace); string newPrefix = newLine.Replace("\t", new string(' ', Shared.TEP.TabIndent)); document.Replace(line.Offset, whiteSpace, newPrefix); } } } }
protected override void Convert(Document.Document document, int startOffset, int length) { string what = document.GetText(startOffset, length); string spaces = new string(' ', Shared.TEP.TabIndent); document.Replace(startOffset, length, what.Replace(spaces, "\t")); }
protected override void Convert(Document.Document document, int startOffset, int length) { StringBuilder what = new StringBuilder(document.GetText(startOffset, length)); for (int i = 0; i < what.Length; ++i) { what[i] = char.IsUpper(what[i]) ? Char.ToLower(what[i]) : Char.ToUpper(what[i]); } document.Replace(startOffset, length, what.ToString()); }
protected override void Convert(Document.Document document, int startOffset, int length) { StringBuilder what = new StringBuilder(document.GetText(startOffset, length)); for (int i = 0; i < what.Length; ++i) { if (!char.IsLetter(what[i]) && i < what.Length - 1) { what[i + 1] = char.ToUpper(what[i + 1]); } } document.Replace(startOffset, length, what.ToString()); }
protected override void Convert(Document.Document document, int y1, int y2) { for (int i = y2; i >= y1; --i) { LineSegment line = document.GetLineSegment(i); if (line.Length > 0) { // note: some users may prefer a more radical ConvertLeadingSpacesToTabs that // means there can be no spaces before the first character even if the spaces // didn't add up to a whole number of tabs string newLine = TextUtilities.LeadingWhiteSpaceToTabs(document.GetText(line.Offset, line.Length), Shared.TEP.TabIndent); document.Replace(line.Offset, line.Length, newLine); } } }
protected override void Convert(Document.Document document, int startOffset, int length) { string sin = document.GetText(startOffset, length); string sout; try { XDocument doc = XDocument.Parse(sin); sout = doc.ToString(); } catch (Exception) { sout = sin; } document.Replace(startOffset, length, sout); }
protected override void Convert(Document.Document document, int startOffset, int length) { StringBuilder sb = new StringBuilder(); string sin = document.GetText(startOffset, length); char lastChar = sin[0]; foreach (char c in sin) { if (char.IsUpper(c) && char.IsLower(lastChar)) { sb.Append(' '); sb.Append(c); } else { sb.Append(c); } lastChar = c; } document.Replace(startOffset, length, sb.ToString()); }
protected override void Convert(Document.Document document, int startOffset, int length) { string sin = document.GetText(startOffset, length); document.Replace(startOffset, length, sin.Replace(' ', '_').ToUpper()); }
protected override void Convert(Document.Document document, int startOffset, int length) { string what = document.GetText(startOffset, length).ToLower(); document.Replace(startOffset, length, what); }