aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/Document.h
diff options
context:
space:
mode:
authorNeil <nyamatongwe@gmail.com>2023-12-20 09:24:23 +1100
committerNeil <nyamatongwe@gmail.com>2023-12-20 09:24:23 +1100
commit1b153f8d8d4b2f09afc2d039256c958e94bd3b05 (patch)
tree00cdb1c67b137efb5715e90cc29640a78773b7a3 /src/Document.h
parentef42bb46c5182037e276ceb251e604b1bcff8f38 (diff)
downloadscintilla-mirror-1b153f8d8d4b2f09afc2d039256c958e94bd3b05.tar.gz
Add IDocumentEditable interface for efficient interaction with document objects.
Diffstat (limited to 'src/Document.h')
-rw-r--r--src/Document.h6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/Document.h b/src/Document.h
index f7f4eeedd..9f51fc719 100644
--- a/src/Document.h
+++ b/src/Document.h
@@ -259,7 +259,7 @@ struct CharacterExtracted {
/**
*/
-class Document : PerLine, public Scintilla::IDocument, public Scintilla::ILoader {
+class Document : PerLine, public Scintilla::IDocument, public Scintilla::ILoader, public Scintilla::IDocumentEditable {
public:
/** Used to pair watcher pointer with user data. */
@@ -329,7 +329,7 @@ public:
Document &operator=(Document &&) = delete;
~Document() override;
- int AddRef();
+ int SCI_METHOD AddRef() noexcept override;
int SCI_METHOD Release() override;
// From PerLine
@@ -347,6 +347,7 @@ public:
int SCI_METHOD Version() const override {
return Scintilla::dvRelease4;
}
+ int SCI_METHOD DEVersion() const noexcept override;
void SCI_METHOD SetErrorStatus(int status) override;
@@ -383,6 +384,7 @@ public:
Sci::Position InsertString(Sci::Position position, std::string_view sv);
void ChangeInsertion(const char *s, Sci::Position length);
int SCI_METHOD AddData(const char *data, Sci_Position length) override;
+ IDocumentEditable *AsDocumentEditable() noexcept;
void * SCI_METHOD ConvertToDocument() override;
Sci::Position Undo();
Sci::Position Redo();