diff options
Diffstat (limited to 'src/RunStyles.h')
-rw-r--r-- | src/RunStyles.h | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/src/RunStyles.h b/src/RunStyles.h new file mode 100644 index 000000000..539e5de47 --- /dev/null +++ b/src/RunStyles.h @@ -0,0 +1,31 @@ +/** @file RunStyles.h + ** Data structure used to store sparse styles. + **/ +// Copyright 1998-2007 by Neil Hodgson <neilh@scintilla.org> +// The License.txt file describes the conditions under which this software may be distributed. + +/// Styling buffer using one element for each run rather than using +/// a filled buffer. + +class RunStyles { +public: + Partitioning *starts; + SplitVector<int> *styles; + int RunFromPosition(int position); + void SplitRun(int position); + void RemoveRun(int run); + void RemoveRunIfEmpty(int run); + void RemoveRunIfSameAsPrevious(int run); +public: + RunStyles(); + ~RunStyles(); + int Length(); + int ValueAt(int position); + int FindNextChange(int position, int end); + int StartRun(int position); + int EndRun(int position); + void FillRange(int position, int value, int fillLength); + void InsertSpace(int position, int insertLength); + void DeleteAll(); + void DeleteRange(int position, int deleteLength); +}; |