diff options
author | nyamatongwe <devnull@localhost> | 2000-04-05 00:43:35 +0000 |
---|---|---|
committer | nyamatongwe <devnull@localhost> | 2000-04-05 00:43:35 +0000 |
commit | 79f23a6ce721bbf1f4ae89d0f2bc86d83fbe52b7 (patch) | |
tree | f7f0730f68c2c83f2c8eab420cfe3c0e81be6188 /include/WindowAccessor.h | |
parent | 78562c158305d7d238cb12ba4cd186517364b6d9 (diff) | |
download | scintilla-mirror-79f23a6ce721bbf1f4ae89d0f2bc86d83fbe52b7.tar.gz |
Moved performance critical functionality back up into Accessor from
sub classes.
Diffstat (limited to 'include/WindowAccessor.h')
-rw-r--r-- | include/WindowAccessor.h | 31 |
1 files changed, 1 insertions, 30 deletions
diff --git a/include/WindowAccessor.h b/include/WindowAccessor.h index a24ef9fa3..9f1750d52 100644 --- a/include/WindowAccessor.h +++ b/include/WindowAccessor.h @@ -4,16 +4,9 @@ class WindowAccessor : public Accessor { protected: - // bufferSize is a trade off between time taken to copy the characters and SendMessage overhead - // slopSize positions the buffer before the desired position in case there is some backtracking - enum {bufferSize=4000, slopSize=bufferSize/8}; - char buf[bufferSize+1]; WindowID id; PropSet &props; - int startPos; - int endPos; int lenDoc; - int codePage; char styleBuf[bufferSize]; int validLen; @@ -25,29 +18,7 @@ protected: void Fill(int position); public: WindowAccessor(WindowID id_, PropSet &props_) : - id(id_), props(props_), startPos(0x7FFFFFFF), endPos(0), - lenDoc(-1), codePage(0), validLen(0), chFlags(0) { - } - void SetCodePage(int codePage_) { codePage = codePage_; } - char operator[](int position) { - if (position < startPos || position >= endPos) { - Fill(position); - } - return buf[position - startPos]; - } - char SafeGetCharAt(int position, char chDefault=' ') { - // Safe version of operator[], returning a defined value for invalid position - if (position < startPos || position >= endPos) { - Fill(position); - if (position < startPos || position >= endPos) { - // Position is outside range of document - return chDefault; - } - } - return buf[position - startPos]; - } - bool IsLeadByte(char ch) { - return codePage && InternalIsLeadByte(ch); + id(id_), props(props_), lenDoc(-1), validLen(0), chFlags(0) { } char StyleAt(int position); int GetLine(int position); |