Add an UI to enable/disable specific overlay handlers.
[TortoiseGit.git] / ext / scintilla / src / Style.h
blobb145ea821e79a760a287a176db53bbd099a906ed
1 // Scintilla source code edit control
2 /** @file Style.h
3 ** Defines the font and colour style for a class of text.
4 **/
5 // Copyright 1998-2001 by Neil Hodgson <neilh@scintilla.org>
6 // The License.txt file describes the conditions under which this software may be distributed.
8 #ifndef STYLE_H
9 #define STYLE_H
11 #ifdef SCI_NAMESPACE
12 namespace Scintilla {
13 #endif
15 /**
17 class Style {
18 public:
19 ColourPair fore;
20 ColourPair back;
21 bool aliasOfDefaultFont;
22 bool bold;
23 bool italic;
24 int size;
25 const char *fontName;
26 int characterSet;
27 bool eolFilled;
28 bool underline;
29 enum ecaseForced {caseMixed, caseUpper, caseLower};
30 ecaseForced caseForce;
31 bool visible;
32 bool changeable;
33 bool hotspot;
35 Font font;
36 int sizeZoomed;
37 unsigned int lineHeight;
38 unsigned int ascent;
39 unsigned int descent;
40 unsigned int externalLeading;
41 unsigned int aveCharWidth;
42 unsigned int spaceWidth;
44 Style();
45 Style(const Style &source);
46 ~Style();
47 Style &operator=(const Style &source);
48 void Clear(ColourDesired fore_, ColourDesired back_,
49 int size_,
50 const char *fontName_, int characterSet_,
51 bool bold_, bool italic_, bool eolFilled_,
52 bool underline_, ecaseForced caseForce_,
53 bool visible_, bool changeable_, bool hotspot_);
54 void ClearTo(const Style &source);
55 bool EquivalentFontTo(const Style *other) const;
56 void Realise(Surface &surface, int zoomLevel, Style *defaultStyle = 0, bool extraFontFlag = false);
57 bool IsProtected() const { return !(changeable && visible);};
60 #ifdef SCI_NAMESPACE
62 #endif
64 #endif