]> git.lyx.org Git - lyx.git/blob - src/frontends/controllers/character.C
John's character.C patch (bug fix).
[lyx.git] / src / frontends / controllers / character.C
1 /* This file is part of
2  * ====================================================== 
3  *
4  *           LyX, The Document Processor
5  *
6  *           Copyright 2001 The LyX Team.
7  *
8  * ======================================================
9  *
10  * \file character.h
11  * \author Angus Leeming <a.leeming@ic.ac.uk>
12  */
13
14 #include <config.h>
15 #include <vector>
16
17 #ifdef __GNUG__
18 #pragma implementation
19 #endif
20
21 #include "gettext.h"
22 #include "character.h"
23 #include "language.h"
24
25 using std::vector;
26
27 namespace character {
28
29 vector<FamilyPair> const getFamilyData()
30 {
31         vector<FamilyPair> family(5);
32
33         FamilyPair pr;
34         pr.first = _("No change");  pr.second = LyXFont::IGNORE_FAMILY;
35         family[0] = pr;
36         pr.first = _("Roman");      pr.second = LyXFont::ROMAN_FAMILY;
37         family[1] = pr;
38         pr.first = _("Sans Serif"); pr.second = LyXFont::SANS_FAMILY;
39         family[2] = pr;
40         pr.first = _("Typewriter"); pr.second = LyXFont::TYPEWRITER_FAMILY;
41         family[3] = pr;
42         pr.first = _("Reset");      pr.second = LyXFont::INHERIT_FAMILY;
43         family[4] = pr;
44
45         return family;
46 }
47
48
49 vector<SeriesPair> const getSeriesData()
50 {
51         vector<SeriesPair> series(4);
52
53         SeriesPair pr;
54         pr.first = _("No change"); pr.second = LyXFont::IGNORE_SERIES;
55         series[0] = pr;
56         pr.first = _("Medium");    pr.second = LyXFont::MEDIUM_SERIES;
57         series[1] = pr;
58         pr.first = _("Bold");      pr.second = LyXFont::BOLD_SERIES;
59         series[2] = pr;
60         pr.first = _("Reset");     pr.second = LyXFont::INHERIT_SERIES;
61         series[3] = pr;
62         
63         return series;
64 }
65
66
67 vector<ShapePair> const getShapeData()
68 {
69         vector<ShapePair> shape(6);
70
71         ShapePair pr;
72         pr.first = _("No change");  pr.second = LyXFont::IGNORE_SHAPE;
73         shape[0] = pr;
74         pr.first = _("Upright");    pr.second = LyXFont::UP_SHAPE;
75         shape[1] = pr;
76         pr.first = _("Italic");     pr.second = LyXFont::ITALIC_SHAPE;
77         shape[2] = pr;
78         pr.first = _("Slanted");    pr.second = LyXFont::SLANTED_SHAPE;
79         shape[3] = pr;
80         pr.first = _("Small Caps"); pr.second = LyXFont::SMALLCAPS_SHAPE;
81         shape[4] = pr;
82         pr.first = _("Reset");      pr.second = LyXFont::INHERIT_SHAPE;
83         shape[5] = pr;
84         
85         return shape;
86 }
87
88
89 vector<SizePair> const getSizeData()
90 {
91         vector<SizePair> size(14);
92
93         SizePair pr;
94         pr.first = _("No change"); pr.second = LyXFont::IGNORE_SIZE;
95         size[0] = pr;
96         pr.first = _("Tiny");      pr.second = LyXFont::SIZE_TINY;
97         size[1] = pr;
98         pr.first = _("Smallest");  pr.second = LyXFont::SIZE_SCRIPT;
99         size[2] = pr;
100         pr.first = _("Smaller");   pr.second = LyXFont::SIZE_FOOTNOTE;
101         size[3] = pr;
102         pr.first = _("Small");     pr.second = LyXFont::SIZE_SMALL;
103         size[4] = pr;
104         pr.first = _("Normal");    pr.second = LyXFont::SIZE_NORMAL;
105         size[5] = pr;
106         pr.first = _("Large");     pr.second = LyXFont::SIZE_LARGE;
107         size[6] = pr;
108         pr.first = _("Larger");    pr.second = LyXFont::SIZE_LARGER;
109         size[7] = pr;
110         pr.first = _("Largest");   pr.second = LyXFont::SIZE_LARGEST;
111         size[8] = pr;
112         pr.first = _("Huge");      pr.second = LyXFont::SIZE_HUGE;
113         size[9] = pr;
114         pr.first = _("Huger");     pr.second = LyXFont::SIZE_HUGER;
115         size[10] = pr;
116         pr.first = _("Increase");  pr.second = LyXFont::INCREASE_SIZE;
117         size[11] = pr;
118         pr.first = _("Decrease");  pr.second = LyXFont::DECREASE_SIZE;
119         size[12] = pr;
120         pr.first = _("Reset");     pr.second = LyXFont::INHERIT_SIZE;
121         size[13] = pr;
122         
123         return size;
124 }
125
126
127 vector<BarPair> const getBarData()
128 {
129         vector<BarPair> bar(5);
130
131         BarPair pr;
132         pr.first = _("No change");  pr.second = IGNORE;
133         bar[0] = pr;
134         pr.first = _("Emph");       pr.second = EMPH_TOGGLE;
135         bar[1] = pr;
136         pr.first = _("Underbar");   pr.second = UNDERBAR_TOGGLE;
137         bar[2] = pr;
138         pr.first = _("Noun");       pr.second = NOUN_TOGGLE;
139         bar[3] = pr;
140         pr.first = _("Reset");      pr.second = INHERIT;
141         bar[4] = pr;
142         
143         return bar;
144 }
145
146
147 vector<ColorPair> const getColorData()
148 {
149         vector<ColorPair> color(11);
150
151         ColorPair pr;
152         pr.first = _("No change"); pr.second = LColor::ignore;
153         color[0] = pr;
154         pr.first = _("No color");  pr.second = LColor::none;
155         color[1] = pr;
156         pr.first = _("Black");     pr.second = LColor::black;
157         color[2] = pr;
158         pr.first = _("White");     pr.second = LColor::white;
159         color[3] = pr;
160         pr.first = _("Red");       pr.second = LColor::red;
161         color[4] = pr;
162         pr.first = _("Green");     pr.second = LColor::green;
163         color[5] = pr;
164         pr.first = _("Blue");      pr.second = LColor::blue;
165         color[6] = pr;
166         pr.first = _("Cyan");      pr.second = LColor::cyan;
167         color[7] = pr;
168         pr.first = _("Magenta");   pr.second = LColor::magenta;
169         color[8] = pr;
170         pr.first = _("Yellow");    pr.second = LColor::yellow;
171         color[9] = pr;
172         pr.first = _("Reset");     pr.second = LColor::inherit;
173         color[10] = pr;
174         
175         return color;
176 }
177
178
179 vector<string> const getLanguageData()
180 {
181         vector<string> langs(languages.size() + 2);
182
183         langs[0] = _("No change");
184         langs[1] = _("Reset");
185
186         vector<string>::size_type i = 1;
187         for (Languages::const_iterator cit = languages.begin(); 
188              cit != languages.end(); ++cit) {
189                 langs[++i] = cit->second.lang();
190         }
191
192         return langs;
193 }
194  
195 } // namespace character