81
const int maxFontSizes = 11;
81
const int maxFontSizes = 16;
83
83
const char *SIZE_NAME[maxFontSizes] =
85
// TRANSLATORS: font size
87
// TRANSLATORS: font size
85
88
N_("Very small (9)"),
89
// TRANSLATORS: font size
91
// TRANSLATORS: font size
93
// TRANSLATORS: font size
95
// TRANSLATORS: font size
97
// TRANSLATORS: font size
91
N_("Very large (15)"),
99
// TRANSLATORS: font size
101
// TRANSLATORS: font size
103
// TRANSLATORS: font size
105
// TRANSLATORS: font size
107
// TRANSLATORS: font size
109
// TRANSLATORS: font size
111
// TRANSLATORS: font size
113
// TRANSLATORS: font size
115
// TRANSLATORS: font size
98
119
class FontSizeChoiceListModel final : public gcn::ListModel
125
146
const Language LANG_NAME[langs_count] =
148
// TRANSLATORS: language
127
149
{N_("(default)"), "", ""},
150
// TRANSLATORS: language
128
151
{N_("Chinese (China)"), "zh_CN", "cn.png"},
152
// TRANSLATORS: language
129
153
{N_("Czech"), "cs_CZ", "cz.png"},
154
// TRANSLATORS: language
130
155
{N_("English"), "C", "en.png"},
156
// TRANSLATORS: language
131
157
{N_("Finnish"), "fi_FI", "fi.png"},
158
// TRANSLATORS: language
132
159
{N_("French"), "fr_FR", "fr.png"},
160
// TRANSLATORS: language
133
161
{N_("German"), "de_DE", "de.png"},
162
// TRANSLATORS: language
134
163
{N_("Indonesian"), "id_ID", "id.png"},
164
// TRANSLATORS: language
135
165
{N_("Italian"), "it_IT", "it.png"},
166
// TRANSLATORS: language
136
167
{N_("Polish"), "pl_PL", "pl.png"},
168
// TRANSLATORS: language
137
169
{N_("Japanese"), "ja_JP", "jp.png"},
170
// TRANSLATORS: language
138
171
{N_("Dutch (Belgium/Flemish)"), "nl_BE", "nl_BE.png"},
172
// TRANSLATORS: language
139
173
{N_("Portuguese"), "pt_PT", "pt.png"},
174
// TRANSLATORS: language
140
175
{N_("Portuguese (Brazilian)"), "pt_BR", "pt_BR.png"},
176
// TRANSLATORS: language
141
177
{N_("Russian"), "ru_RU", "ru.png"},
178
// TRANSLATORS: language
142
179
{N_("Spanish (Castilian)"), "es_ES", "es.png"},
180
// TRANSLATORS: language
143
181
{N_("Turkish"), "tr_TR", "tr.png"}
192
230
Setup_Theme::Setup_Theme(const Widget2 *const widget) :
193
231
SetupTab(widget),
232
// TRANSLATORS: theme settings label
194
233
mThemeLabel(new Label(this, _("Gui theme"))),
195
234
mThemesModel(new ThemesModel),
196
235
mThemeDropDown(new DropDown(this, mThemesModel)),
197
236
mTheme(config.getStringValue("theme")),
237
mInfo(Theme::loadInfo(mTheme)),
198
238
mFontsModel(new FontsModel),
239
// TRANSLATORS: theme settings label
199
240
mFontLabel(new Label(this, _("Main Font"))),
200
241
mFontDropDown(new DropDown(this, mFontsModel)),
201
242
mFont(config.getStringValue("font")),
202
243
mLangListModel(new LangListModel),
244
// TRANSLATORS: theme settings label
203
245
mLangLabel(new Label(this, _("Language"))),
204
246
mLangDropDown(new DropDown(this, mLangListModel, true)),
205
247
mLang(config.getStringValue("lang")),
248
// TRANSLATORS: theme settings label
206
249
mBoldFontLabel(new Label(this, _("Bold font"))),
207
250
mBoldFontDropDown(new DropDown(this, mFontsModel)),
208
251
mBoldFont(config.getStringValue("boldFont")),
252
// TRANSLATORS: theme settings label
209
253
mParticleFontLabel(new Label(this, _("Particle font"))),
210
254
mParticleFontDropDown(new DropDown(this, mFontsModel)),
211
255
mParticleFont(config.getStringValue("particleFont")),
256
// TRANSLATORS: theme settings label
212
257
mHelpFontLabel(new Label(this, _("Help font"))),
213
258
mHelpFontDropDown(new DropDown(this, mFontsModel)),
214
259
mHelpFont(config.getStringValue("helpFont")),
260
// TRANSLATORS: theme settings label
215
261
mSecureFontLabel(new Label(this, _("Secure font"))),
216
262
mSecureFontDropDown(new DropDown(this, mFontsModel)),
217
263
mSecureFont(config.getStringValue("secureFont")),
264
// TRANSLATORS: theme settings label
218
265
mJapanFontLabel(new Label(this, _("Japanese font"))),
219
266
mJapanFontDropDown(new DropDown(this, mFontsModel)),
220
267
mJapanFont(config.getStringValue("japanFont")),
221
268
mFontSizeListModel(new FontSizeChoiceListModel),
269
// TRANSLATORS: theme settings label
222
270
mFontSizeLabel(new Label(this, _("Font size"))),
223
271
mFontSize(config.getIntValue("fontSize")),
224
272
mFontSizeDropDown(new DropDown(this, mFontSizeListModel)),
225
273
mNpcFontSizeListModel(new FontSizeChoiceListModel),
274
// TRANSLATORS: theme settings label
226
275
mNpcFontSizeLabel(new Label(this, _("Npc font size"))),
227
276
mNpcFontSize(config.getIntValue("npcfontSize")),
228
277
mNpcFontSizeDropDown(new DropDown(this, mNpcFontSizeListModel)),
413
466
mJapanFont = getFileName(config.getStringValue("japanFont"));
469
#define updateField(name1, name2) if (!mInfo->name1.empty()) \
470
name2 = mInfo->name1;
416
472
void Setup_Theme::apply()
418
474
if (config.getStringValue("theme") != mTheme)
476
// TRANSLATORS: theme message dialog
420
477
new OkDialog(_("Theme Changed"), _("Restart your client for "
421
478
"the change to take effect."));
424
481
config.setValue("selectedSkin", "");
482
if (config.getStringValue("theme") != mTheme && mInfo)
484
updateField(font, mFont);
485
updateField(boldFont, mBoldFont);
486
updateField(particleFont, mParticleFont);
487
updateField(helpFont, mHelpFont);
488
updateField(secureFont, mSecureFont);
489
updateField(japanFont, mJapanFont);
492
const int size = mInfo->fontSize - 9;
494
mFontSizeDropDown->setSelected(size);
496
if (mInfo->npcfontSize)
498
const int size = mInfo->npcfontSize - 9;
500
mNpcFontSizeDropDown->setSelected(size);
425
503
config.setValue("theme", mTheme);
426
504
config.setValue("lang", mLang);
427
505
if (config.getValue("font", "dejavusans.ttf") != mFont