aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/Decoration.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/Decoration.h')
-rw-r--r--src/Decoration.h55
1 files changed, 55 insertions, 0 deletions
diff --git a/src/Decoration.h b/src/Decoration.h
new file mode 100644
index 000000000..1810b0fb3
--- /dev/null
+++ b/src/Decoration.h
@@ -0,0 +1,55 @@
+/** @file Decoration.h
+ ** Visual elements added over text.
+ **/
+// Copyright 1998-2007 by Neil Hodgson <neilh@scintilla.org>
+// The License.txt file describes the conditions under which this software may be distributed.
+
+#ifndef DECORATION_H
+#define DECORATION_H
+
+class Decoration {
+public:
+ Decoration *next;
+ RunStyles rs;
+ int indicator;
+
+ Decoration(int indicator_);
+ ~Decoration();
+
+ bool Empty();
+};
+
+class DecorationList {
+ int currentIndicator;
+ int currentValue;
+ Decoration *current;
+ int lengthDocument;
+ Decoration *DecorationFromIndicator(int indicator);
+ Decoration *Create(int indicator, int length);
+ void Delete(int indicator);
+ void DeleteAnyEmpty();
+public:
+ Decoration *root;
+ bool clickNotified;
+
+ DecorationList();
+ ~DecorationList();
+
+ void SetCurrentIndicator(int indicator);
+ int GetCurrentIndicator() { return currentIndicator; }
+
+ void SetCurrentValue(int value);
+ int GetCurrentValue() { return currentValue; }
+
+ void FillRange(int position, int value, int fillLength);
+
+ void InsertSpace(int position, int insertLength);
+ void DeleteRange(int position, int deleteLength);
+
+ int AllOnFor(int position);
+ int ValueAt(int indicator, int position);
+ int Start(int indicator, int position);
+ int End(int indicator, int position);
+};
+
+#endif