aboutsummaryrefslogtreecommitdiffhomepage
path: root/include/ILoader.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 /include/ILoader.h
parentef42bb46c5182037e276ceb251e604b1bcff8f38 (diff)
downloadscintilla-mirror-1b153f8d8d4b2f09afc2d039256c958e94bd3b05.tar.gz
Add IDocumentEditable interface for efficient interaction with document objects.
Diffstat (limited to 'include/ILoader.h')
-rw-r--r--include/ILoader.h13
1 files changed, 13 insertions, 0 deletions
diff --git a/include/ILoader.h b/include/ILoader.h
index 2fa69f527..5d2eb2571 100644
--- a/include/ILoader.h
+++ b/include/ILoader.h
@@ -1,6 +1,7 @@
// Scintilla source code edit control
/** @file ILoader.h
** Interface for loading into a Scintilla document from a background thread.
+ ** Interface for manipulating a document without a view.
**/
// Copyright 1998-2017 by Neil Hodgson <neilh@scintilla.org>
// The License.txt file describes the conditions under which this software may be distributed.
@@ -20,6 +21,18 @@ public:
virtual void * SCI_METHOD ConvertToDocument() = 0;
};
+static constexpr int deRelease0 = 0;
+
+class IDocumentEditable {
+public:
+ // Allow this interface to add methods over time and discover whether new methods available.
+ virtual int SCI_METHOD DEVersion() const noexcept = 0;
+
+ // Lifetime control
+ virtual int SCI_METHOD AddRef() noexcept = 0;
+ virtual int SCI_METHOD Release() = 0;
+};
+
}
#endif