aboutsummaryrefslogtreecommitdiffhomepage
path: root/include
diff options
context:
space:
mode:
authorNeil <nyamatongwe@gmail.com>2024-02-09 21:45:35 +1100
committerNeil <nyamatongwe@gmail.com>2024-02-09 21:45:35 +1100
commitbd53ffcbefe4e7a22fc493b1916939bae5f9dc1d (patch)
treebfe435d75b222d464a9cbb21e25583d33c591936 /include
parent07a7683902feb4b9944394b9378f0a1a51972497 (diff)
downloadscintilla-mirror-bd53ffcbefe4e7a22fc493b1916939bae5f9dc1d.tar.gz
Implement API to read and write undo history from applications.
Diffstat (limited to 'include')
-rw-r--r--include/Scintilla.h12
-rw-r--r--include/Scintilla.iface36
-rw-r--r--include/ScintillaCall.h13
-rw-r--r--include/ScintillaMessages.h12
4 files changed, 73 insertions, 0 deletions
diff --git a/include/Scintilla.h b/include/Scintilla.h
index 8c555352c..be537abad 100644
--- a/include/Scintilla.h
+++ b/include/Scintilla.h
@@ -339,6 +339,18 @@ typedef sptr_t (*SciFnDirectStatus)(sptr_t ptr, unsigned int iMessage, uptr_t wP
#define SCI_GETCHARACTERCATEGORYOPTIMIZATION 2721
#define SCI_BEGINUNDOACTION 2078
#define SCI_ENDUNDOACTION 2079
+#define SCI_GETUNDOACTIONS 2790
+#define SCI_SETUNDOSAVEPOINT 2791
+#define SCI_GETUNDOSAVEPOINT 2792
+#define SCI_SETUNDOCURRENT 2793
+#define SCI_GETUNDOCURRENT 2794
+#define SCI_SETUNDOTENTATIVE 2795
+#define SCI_GETUNDOTENTATIVE 2796
+#define SCI_PUSHUNDOACTIONTYPE 2797
+#define SCI_CHANGELASTUNDOACTIONTEXT 2798
+#define SCI_GETUNDOACTIONTYPE 2799
+#define SCI_GETUNDOACTIONPOSITION 2800
+#define SCI_GETUNDOACTIONTEXT 2801
#define INDIC_PLAIN 0
#define INDIC_SQUIGGLE 1
#define INDIC_TT 2
diff --git a/include/Scintilla.iface b/include/Scintilla.iface
index 918121596..dd7495a6f 100644
--- a/include/Scintilla.iface
+++ b/include/Scintilla.iface
@@ -833,6 +833,42 @@ fun void BeginUndoAction=2078(,)
# End a sequence of actions that is undone and redone as a unit.
fun void EndUndoAction=2079(,)
+# How many undo actions are in the history?
+get int GetUndoActions=2790(,)
+
+# Set action as the save point
+set void SetUndoSavePoint=2791(int action,)
+
+# Which action is the save point?
+get int GetUndoSavePoint=2792(,)
+
+# Set action as the current point
+set void SetUndoCurrent=2793(int action,)
+
+# Which action is the current point?
+get int GetUndoCurrent=2794(,)
+
+# Set action as the tentative point
+set void SetUndoTentative=2795(int action,)
+
+# Which action is the tentative point?
+get int GetUndoTentative=2796(,)
+
+# Push one action onto undo history with no text
+fun void PushUndoActionType=2797(int type, position pos)
+
+# Set the text and length of the most recently pushed action
+fun void ChangeLastUndoActionText=2798(position length, string text)
+
+# What is the type of an action?
+get int GetUndoActionType=2799(int action,)
+
+# What is the position of an action?
+get position GetUndoActionPosition=2800(int action,)
+
+# What is the text of an action?
+get int GetUndoActionText=2801(int action, stringresult text)
+
# Indicator style enumeration and some constants
enu IndicatorStyle=INDIC_
val INDIC_PLAIN=0
diff --git a/include/ScintillaCall.h b/include/ScintillaCall.h
index 0ce4366d7..47122fcfe 100644
--- a/include/ScintillaCall.h
+++ b/include/ScintillaCall.h
@@ -245,6 +245,19 @@ public:
int CharacterCategoryOptimization();
void BeginUndoAction();
void EndUndoAction();
+ int UndoActions();
+ void SetUndoSavePoint(int action);
+ int UndoSavePoint();
+ void SetUndoCurrent(int action);
+ int UndoCurrent();
+ void SetUndoTentative(int action);
+ int UndoTentative();
+ void PushUndoActionType(int type, Position pos);
+ void ChangeLastUndoActionText(Position length, const char *text);
+ int UndoActionType(int action);
+ Position UndoActionPosition(int action);
+ int UndoActionText(int action, char *text);
+ std::string UndoActionText(int action);
void IndicSetStyle(int indicator, Scintilla::IndicatorStyle indicatorStyle);
Scintilla::IndicatorStyle IndicGetStyle(int indicator);
void IndicSetFore(int indicator, Colour fore);
diff --git a/include/ScintillaMessages.h b/include/ScintillaMessages.h
index 4b9421242..5cff5ed26 100644
--- a/include/ScintillaMessages.h
+++ b/include/ScintillaMessages.h
@@ -171,6 +171,18 @@ enum class Message {
GetCharacterCategoryOptimization = 2721,
BeginUndoAction = 2078,
EndUndoAction = 2079,
+ GetUndoActions = 2790,
+ SetUndoSavePoint = 2791,
+ GetUndoSavePoint = 2792,
+ SetUndoCurrent = 2793,
+ GetUndoCurrent = 2794,
+ SetUndoTentative = 2795,
+ GetUndoTentative = 2796,
+ PushUndoActionType = 2797,
+ ChangeLastUndoActionText = 2798,
+ GetUndoActionType = 2799,
+ GetUndoActionPosition = 2800,
+ GetUndoActionText = 2801,
IndicSetStyle = 2080,
IndicGetStyle = 2081,
IndicSetFore = 2082,