]> git.lyx.org Git - lyx.git/blob - src/FontEnums.h
Avoid full metrics computation with Update:FitCursor
[lyx.git] / src / FontEnums.h
1 // -*- C++ -*-
2 /**
3  * \file src/FontEnums.h
4  * This file is part of LyX, the document processor.
5  * Licence details can be found in the file COPYING.
6  *
7  * \author Lars Gullik Bjønnes
8  * \author Jean-Marc Lasgouttes
9  * \author Angus Leeming
10  * \author Dekel Tsur
11  *
12  * Full author contact details are available in file CREDITS.
13  */
14
15 #ifndef FONT_ENUMS_H
16 #define FONT_ENUMS_H
17
18 namespace lyx {
19
20 /** The value INHERIT_* means that the font attribute is
21 inherited from the layout. In the case of layout fonts, the
22 attribute is inherited from the default font.
23 The value IGNORE_* is used with Font::update() when the
24 attribute should not be changed.
25 */
26 enum FontFamily {
27         ///
28         ROMAN_FAMILY = 0,
29         ///
30         SANS_FAMILY,
31         ///
32         TYPEWRITER_FAMILY,
33         ///
34         SYMBOL_FAMILY,
35         ///
36         CMR_FAMILY,
37         ///
38         CMSY_FAMILY,
39         ///
40         CMM_FAMILY,
41         ///
42         CMEX_FAMILY,
43         ///
44         MSA_FAMILY,
45         ///
46         MSB_FAMILY,
47         ///
48         DS_FAMILY,
49         ///
50         EUFRAK_FAMILY,
51         ///
52         RSFS_FAMILY,
53         ///
54         STMARY_FAMILY,
55         ///
56         WASY_FAMILY,
57         ///
58         ESINT_FAMILY,
59         ///
60         INHERIT_FAMILY,
61         ///
62         IGNORE_FAMILY,
63         ///
64         NUM_FAMILIES = INHERIT_FAMILY
65 };
66
67 ///
68 enum FontSeries {
69         ///
70         MEDIUM_SERIES = 0,
71         ///
72         BOLD_SERIES,
73         ///
74         INHERIT_SERIES,
75         ///
76         IGNORE_SERIES,
77         ///
78         NUM_SERIES = INHERIT_SERIES
79 };
80
81 ///
82 enum FontShape {
83         ///
84         UP_SHAPE = 0,
85         ///
86         ITALIC_SHAPE,
87         ///
88         SLANTED_SHAPE,
89         ///
90         SMALLCAPS_SHAPE,
91         ///
92         INHERIT_SHAPE,
93         ///
94         IGNORE_SHAPE,
95         ///
96         NUM_SHAPE = INHERIT_SHAPE
97 };
98
99 ///
100 enum FontSize {
101         ///
102         TINY_SIZE = 0,
103         ///
104         SCRIPT_SIZE,
105         ///
106         FOOTNOTE_SIZE,
107         ///
108         SMALL_SIZE,
109         ///
110         NORMAL_SIZE,
111         ///
112         LARGE_SIZE,
113         ///
114         LARGER_SIZE,
115         ///
116         LARGEST_SIZE,
117         ///
118         HUGE_SIZE,
119         ///
120         HUGER_SIZE,
121         ///
122         INCREASE_SIZE,
123         ///
124         DECREASE_SIZE,
125         ///
126         INHERIT_SIZE,
127         ///
128         IGNORE_SIZE,
129         ///
130         NUM_SIZE = INCREASE_SIZE
131 };
132
133 /// Used for emph, underbar, noun and latex toggles
134 enum FontState {
135         ///
136         FONT_OFF,
137         ///
138         FONT_ON,
139         ///
140         FONT_TOGGLE,
141         ///
142         FONT_INHERIT,
143         ///
144         FONT_IGNORE
145 };
146
147
148 /// Math styles
149 enum MathStyle {
150         ///
151         SCRIPTSCRIPT_STYLE = 0,
152         ///
153         SCRIPT_STYLE,
154         ///
155         TEXT_STYLE,
156         ///
157         DISPLAY_STYLE,
158         ///
159         INHERIT_STYLE,
160         ///
161         IGNORE_STYLE,
162         /// the text and display fonts are the same
163         NUM_STYLE = DISPLAY_STYLE
164 };
165
166
167 } // namespace lyx
168 #endif