Browse Source

CodeDocument new method + internal tweaks.

tags/2021-05-28
jules 13 years ago
parent
commit
331e102663
2 changed files with 15 additions and 3 deletions
  1. +10
    -3
      modules/juce_gui_extra/code_editor/juce_CodeDocument.cpp
  2. +5
    -0
      modules/juce_gui_extra/code_editor/juce_CodeDocument.h

+ 10
- 3
modules/juce_gui_extra/code_editor/juce_CodeDocument.cpp View File

@@ -552,7 +552,7 @@ void CodeDocument::deleteSection (const Position& startPosition, const Position&
deleteSection (startPosition.getPosition(), endPosition.getPosition());
}
void CodeDocument::deleteSection (int start, int end)
void CodeDocument::deleteSection (const int start, const int end)
{
remove (start, end, true);
}
@@ -562,11 +562,18 @@ void CodeDocument::insertText (const Position& position, const String& text)
insertText (position.getPosition(), text);
}
void CodeDocument::insertText (int insertIndex, const String& text)
void CodeDocument::insertText (const int insertIndex, const String& text)
{
insert (text, insertIndex, true);
}
void CodeDocument::replaceSection (const int start, const int end, const String& newText)
{
insertText (start, newText);
const int newTextLen = newText.length();
deleteSection (start + newTextLen, end + newTextLen);
}
void CodeDocument::replaceAllContent (const String& newContent)
{
TextDiff diff (getAllContent(), newContent);
@@ -864,7 +871,7 @@ void CodeDocument::insert (const String& text, const int insertPos, const bool u
{
CodeDocument::Position& p = *positionsToMaintain.getUnchecked(i);
if (p.getPosition() >= insertPos)
if (p.getPosition() > insertPos)
p.setPosition (p.getPosition() + newTextLength);
}


+ 5
- 0
modules/juce_gui_extra/code_editor/juce_CodeDocument.h View File

@@ -222,6 +222,11 @@ public:
*/
void insertText (int insertIndex, const String& text);
/** Replaces a section of the text with a new string.
This operation is undoable.
*/
void replaceSection (int startIndex, int endIndex, const String& newText);
/** Clears the document and replaces it with some new text.
This operation is undoable - if you're trying to completely reset the document, you


Loading…
Cancel
Save