2
** Data structure used to store sparse styles.
4
// Copyright 1998-2007 by Neil Hodgson <neilh@scintilla.org>
5
// The License.txt file describes the conditions under which this software may be distributed.
7
/// Styling buffer using one element for each run rather than using
14
#include "Partitioning.h"
24
SplitVector<int> *styles;
25
int RunFromPosition(int position) const;
26
int SplitRun(int position);
27
void RemoveRun(int run);
28
void RemoveRunIfEmpty(int run);
29
void RemoveRunIfSameAsPrevious(int run);
30
// Private so RunStyles objects can not be copied
31
RunStyles(const RunStyles &);
36
int ValueAt(int position) const;
37
int FindNextChange(int position, int end) const;
38
int StartRun(int position) const;
39
int EndRun(int position) const;
40
// Returns true if some values may have changed
41
bool FillRange(int &position, int value, int &fillLength);
42
void SetValueAt(int position, int value);
43
void InsertSpace(int position, int insertLength);
45
void DeleteRange(int position, int deleteLength);
48
bool AllSameAs(int value) const;
49
int Find(int value, int start) const;
54
char *PersistantForm() const;
55
void FromPersistant(const char *form);
56
static bool PersistantSame(const char *form1, const char *form2);