aboutsummaryrefslogtreecommitdiffhomepage
path: root/include
diff options
context:
space:
mode:
authornyamatongwe <devnull@localhost>2013-01-19 10:43:41 +1100
committernyamatongwe <devnull@localhost>2013-01-19 10:43:41 +1100
commit6bddf57deb97b522c7b8e0293fcd15c95a2d9823 (patch)
tree3744a05ec38acdcfd51247e179cb52403add34e9 /include
parent6db2d5521e08c79dd8ac0baccf90f1317321cf26 (diff)
downloadscintilla-mirror-6bddf57deb97b522c7b8e0293fcd15c95a2d9823.tar.gz
Add methods for Unicode line ends and substyles to IDocument and ILexer
producing IDocumentWithLineEnd and ILexerWithSubStyles.
Diffstat (limited to 'include')
-rw-r--r--include/ILexer.h21
1 files changed, 19 insertions, 2 deletions
diff --git a/include/ILexer.h b/include/ILexer.h
index e08b8701c..1260c1373 100644
--- a/include/ILexer.h
+++ b/include/ILexer.h
@@ -18,7 +18,7 @@ namespace Scintilla {
#define SCI_METHOD
#endif
-enum { dvOriginal=0 };
+enum { dvOriginal=0, dvLineEnd=1 };
class IDocument {
public:
@@ -45,7 +45,12 @@ public:
virtual int SCI_METHOD GetLineIndentation(int line) = 0;
};
-enum { lvOriginal=0 };
+class IDocumentWithLineEnd : public IDocument {
+public:
+ virtual int SCI_METHOD LineEnd(int line) const = 0;
+};
+
+enum { lvOriginal=0, lvSubStyles=1 };
class ILexer {
public:
@@ -62,6 +67,18 @@ public:
virtual void * SCI_METHOD PrivateCall(int operation, void *pointer) = 0;
};
+class ILexerWithSubStyles : public ILexer {
+public:
+ virtual int SCI_METHOD LineEndTypesSupported() = 0;
+ virtual int SCI_METHOD AllocateSubStyles(int styleBase, int numberStyles) = 0;
+ virtual int SCI_METHOD SubStylesStart(int styleBase) = 0;
+ virtual int SCI_METHOD SubStylesLength(int styleBase) = 0;
+ virtual void SCI_METHOD FreeSubStyles() = 0;
+ virtual void SCI_METHOD SetIdentifiers(int style, const char *identifiers) = 0;
+ virtual int SCI_METHOD DistanceToSecondaryStyles() = 0;
+ virtual const char * SCI_METHOD GetSubStyleBases() = 0;
+};
+
class ILoader {
public:
virtual int SCI_METHOD Release() = 0;