aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/Editor.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/Editor.h')
-rw-r--r--src/Editor.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/Editor.h b/src/Editor.h
index d95f552ad..655184a31 100644
--- a/src/Editor.h
+++ b/src/Editor.h
@@ -178,6 +178,8 @@ constexpr XYScrollOptions operator|(XYScrollOptions a, XYScrollOptions b) noexce
return static_cast<XYScrollOptions>(static_cast<int>(a) | static_cast<int>(b));
}
+struct SelectionStack;
+
/**
*/
class Editor : public EditModel, public DocWatcher {
@@ -367,6 +369,9 @@ protected: // ScintillaBase subclass needs access to much of Editor
SelectionPosition MovePositionSoVisible(Sci::Position pos, int moveDir);
Point PointMainCaret();
void SetLastXChosen();
+ void RememberSelectionForUndo(int index);
+ void RememberSelectionOntoStack(int index);
+ void RememberCurrentSelectionForRedoOntoStack();
void ScrollTo(Sci::Line line, bool moveThumb=true);
virtual void ScrollText(Sci::Line linesToMove);
@@ -443,6 +448,7 @@ protected: // ScintillaBase subclass needs access to much of Editor
virtual void Paste() = 0;
void Clear();
virtual void SelectAll();
+ void RestoreSelection(Sci::Position newPos, UndoRedo history);
virtual void Undo();
virtual void Redo();
void DelCharBack(bool allowLineStartDeletion);
@@ -477,6 +483,7 @@ protected: // ScintillaBase subclass needs access to much of Editor
void NotifyDeleted(Document *document, void *userData) noexcept override;
void NotifyStyleNeeded(Document *doc, void *userData, Sci::Position endStyleNeeded) override;
void NotifyErrorOccurred(Document *doc, void *userData, Scintilla::Status status) override;
+ void NotifyGroupCompleted(Document *, void *) noexcept override;
void NotifyMacroRecord(Scintilla::Message iMessage, Scintilla::uptr_t wParam, Scintilla::sptr_t lParam);
void ContainerNeedsUpdate(Scintilla::Update flags) noexcept;