aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/ViewStyle.h
diff options
context:
space:
mode:
authornyamatongwe <unknown>2000-03-08 01:43:56 +0000
committernyamatongwe <unknown>2000-03-08 01:43:56 +0000
commitc196d2fc7c3ece7ccb7d89c425499a75ead7e59b (patch)
tree3ea3c536f04e88499b86ed82e8a9a457f96b4978 /src/ViewStyle.h
parent7fbd8e2a34d2f5084ce26ad95d7c70ae4de6a233 (diff)
downloadscintilla-mirror-c196d2fc7c3ece7ccb7d89c425499a75ead7e59b.tar.gz
Initial revision
Diffstat (limited to 'src/ViewStyle.h')
-rw-r--r--src/ViewStyle.h72
1 files changed, 72 insertions, 0 deletions
diff --git a/src/ViewStyle.h b/src/ViewStyle.h
new file mode 100644
index 000000000..4436e83ff
--- /dev/null
+++ b/src/ViewStyle.h
@@ -0,0 +1,72 @@
+// Scintilla source code edit control
+// ViewStyle.h - store information on how the document is to be viewed
+// Copyright 1998-2000 by Neil Hodgson <neilh@scintilla.org>
+// The License.txt file describes the conditions under which this software may be distributed.
+
+#ifndef VIEWSTYLE_H
+#define VIEWSTYLE_H
+
+class MarginStyle {
+public:
+ bool symbol;
+ int width;
+ int mask;
+ bool sensitive;
+ MarginStyle();
+};
+
+class FontNames {
+private:
+ char *names[STYLE_MAX + 1];
+ int max;
+public:
+ FontNames();
+ ~FontNames();
+ void Clear();
+ const char *Save(const char *name);
+};
+
+class ViewStyle {
+public:
+ FontNames fontNames;
+ Style styles[STYLE_MAX + 1];
+ LineMarker markers[MARKER_MAX + 1];
+ Indicator indicators[INDIC_MAX + 1];
+ int lineHeight;
+ unsigned int maxAscent;
+ unsigned int maxDescent;
+ unsigned int aveCharWidth;
+ unsigned int spaceWidth;
+ bool selforeset;
+ ColourPair selforeground;
+ bool selbackset;
+ ColourPair selbackground;
+ ColourPair selbar;
+ ColourPair selbarlight;
+ // Margins are ordered: Line Numbers, Selection Margin, Spacing Margin
+ int leftMarginWidth; // Spacing margin on left of text
+ int rightMarginWidth; // Spacing margin on left of text
+ enum { margins=3 };
+ bool symbolMargin;
+ int maskInLine; // Mask for markers to be put into text because there is nowhere for them to go in margin
+ MarginStyle ms[margins];
+ int fixedColumnWidth;
+ int zoomLevel;
+ bool viewWhitespace;
+ bool viewEOL;
+ bool showMarkedLines;
+ ColourPair caretcolour;
+ ColourPair edgecolour;
+
+ ViewStyle();
+ ViewStyle(const ViewStyle &source);
+ ~ViewStyle();
+ void Init();
+ void RefreshColourPalette(Palette &pal, bool want);
+ void Refresh(Surface &surface);
+ void ResetDefaultStyle();
+ void ClearStyles();
+ void SetStyleFontName(int styleIndex, const char *name);
+};
+
+#endif