185 groupMisc->setIcon(QIcon(":/res/miscicon.png")); |
185 groupMisc->setIcon(QIcon(":/res/miscicon.png")); |
186 //groupMisc->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed); |
186 //groupMisc->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed); |
187 groupMisc->setTitle(QGroupBox::tr("Misc")); |
187 groupMisc->setTitle(QGroupBox::tr("Misc")); |
188 QGridLayout * MiscLayout = new QGridLayout(groupMisc); |
188 QGridLayout * MiscLayout = new QGridLayout(groupMisc); |
189 |
189 |
190 labelNN = new QLabel(groupMisc); |
190 // Label for "Language" |
191 labelNN->setText(QLabel::tr("Net nick")); |
|
192 MiscLayout->addWidget(labelNN, 0, 0); |
|
193 |
|
194 editNetNick = new QLineEdit(groupMisc); |
|
195 editNetNick->setMaxLength(20); |
|
196 editNetNick->setText(QLineEdit::tr("unnamed")); |
|
197 connect(editNetNick, SIGNAL(editingFinished()), this, SLOT(trimNetNick())); |
|
198 MiscLayout->addWidget(editNetNick, 0, 1); |
|
199 |
|
200 labelNetPassword = new QLabel(groupMisc); |
|
201 labelNetPassword->setText(QLabel::tr("Password")); |
|
202 MiscLayout->addWidget(labelNetPassword, 1, 0); |
|
203 |
|
204 editNetPassword = new QLineEdit(groupMisc); |
|
205 editNetPassword->setEchoMode(QLineEdit::Password); |
|
206 MiscLayout->addWidget(editNetPassword, 1, 1); |
|
207 |
|
208 QLabel *labelLanguage = new QLabel(groupMisc); |
191 QLabel *labelLanguage = new QLabel(groupMisc); |
209 labelLanguage->setText(QLabel::tr("Locale") + " *"); |
192 labelLanguage->setText(QLabel::tr("Locale") + " *"); |
210 MiscLayout->addWidget(labelLanguage, 2, 0); |
193 MiscLayout->addWidget(labelLanguage, 0, 0); |
211 |
194 |
|
195 // List of installed languages |
212 CBLanguage = new QComboBox(groupMisc); |
196 CBLanguage = new QComboBox(groupMisc); |
213 QDir tmpdir; |
197 QDir tmpdir; |
214 tmpdir.cd(cfgdir->absolutePath()); |
198 tmpdir.cd(cfgdir->absolutePath()); |
215 tmpdir.cd("Data/Locale"); |
199 tmpdir.cd("Data/Locale"); |
216 tmpdir.setFilter(QDir::Files); |
200 tmpdir.setFilter(QDir::Files); |
231 if (locs.contains(tmplist[i])) continue; |
215 if (locs.contains(tmplist[i])) continue; |
232 QLocale loc(tmplist[i].replace(QRegExp("hedgewars_(.*)\\.qm"), "\\1")); |
216 QLocale loc(tmplist[i].replace(QRegExp("hedgewars_(.*)\\.qm"), "\\1")); |
233 CBLanguage->addItem(QLocale::languageToString(loc.language()) + " (" + QLocale::countryToString(loc.country()) + ")", loc.name()); |
217 CBLanguage->addItem(QLocale::languageToString(loc.language()) + " (" + QLocale::countryToString(loc.country()) + ")", loc.name()); |
234 } |
218 } |
235 |
219 |
236 MiscLayout->addWidget(CBLanguage, 2, 1); |
220 MiscLayout->addWidget(CBLanguage, 0, 1); |
|
221 |
|
222 // Label and field for net nick |
|
223 labelNN = new QLabel(groupMisc); |
|
224 labelNN->setText(QLabel::tr("Nickname")); |
|
225 MiscLayout->addWidget(labelNN, 1, 0); |
|
226 |
|
227 editNetNick = new QLineEdit(groupMisc); |
|
228 editNetNick->setMaxLength(20); |
|
229 editNetNick->setText(QLineEdit::tr("anonymous")); |
|
230 MiscLayout->addWidget(editNetNick, 1, 1); |
|
231 |
|
232 // Label and field for password |
|
233 labelNetPassword = new QLabel(groupMisc); |
|
234 labelNetPassword->setText(QLabel::tr("Password")); |
|
235 MiscLayout->addWidget(labelNetPassword, 2, 0); |
|
236 |
|
237 editNetPassword = new QLineEdit(groupMisc); |
|
238 editNetPassword->setEchoMode(QLineEdit::Password); |
|
239 MiscLayout->addWidget(editNetPassword, 2, 1); |
|
240 |
|
241 CBSavePassword = new QCheckBox(groupMisc); |
|
242 CBSavePassword->setText(QCheckBox::tr("Save password")); |
|
243 MiscLayout->addWidget(CBSavePassword, 3, 0, 1, 2); |
237 |
244 |
238 CBAltDamage = new QCheckBox(groupMisc); |
245 CBAltDamage = new QCheckBox(groupMisc); |
239 CBAltDamage->setText(QCheckBox::tr("Alternative damage show")); |
246 CBAltDamage->setText(QCheckBox::tr("Alternative damage show")); |
240 MiscLayout->addWidget(CBAltDamage, 3, 0, 1, 2); |
247 MiscLayout->addWidget(CBAltDamage, 4, 0, 1, 2); |
241 |
248 |
242 CBNameWithDate = new QCheckBox(groupMisc); |
249 CBNameWithDate = new QCheckBox(groupMisc); |
243 CBNameWithDate->setText(QCheckBox::tr("Append date and time to record file name")); |
250 CBNameWithDate->setText(QCheckBox::tr("Append date and time to record file name")); |
244 MiscLayout->addWidget(CBNameWithDate, 4, 0, 1, 2); |
251 MiscLayout->addWidget(CBNameWithDate, 5, 0, 1, 2); |
245 |
252 |
246 BtnAssociateFiles = new QPushButton(groupMisc); |
253 BtnAssociateFiles = new QPushButton(groupMisc); |
247 BtnAssociateFiles->setText(QPushButton::tr("Associate file extensions")); |
254 BtnAssociateFiles->setText(QPushButton::tr("Associate file extensions")); |
248 BtnAssociateFiles->setEnabled(!custom_data && !custom_config); |
255 BtnAssociateFiles->setEnabled(!custom_data && !custom_config); |
249 MiscLayout->addWidget(BtnAssociateFiles, 5, 0, 1, 2); |
256 MiscLayout->addWidget(BtnAssociateFiles, 6, 0, 1, 2); |
250 |
257 |
251 #ifdef __APPLE__ |
258 #ifdef __APPLE__ |
252 #ifdef SPARKLE_ENABLED |
259 #ifdef SPARKLE_ENABLED |
253 CBAutoUpdate = new QCheckBox(groupMisc); |
260 CBAutoUpdate = new QCheckBox(groupMisc); |
254 CBAutoUpdate->setText(QCheckBox::tr("Check for updates at startup")); |
261 CBAutoUpdate->setText(QCheckBox::tr("Check for updates at startup")); |
255 MiscLayout->addWidget(CBAutoUpdate, 6, 0, 1, 3); |
262 MiscLayout->addWidget(CBAutoUpdate, 7, 0, 1, 3); |
256 #endif |
263 #endif |
257 #endif |
264 #endif |
258 gbTBLayout->addWidget(groupMisc, 2, 0); |
265 gbTBLayout->addWidget(groupMisc, 2, 0); |
259 } |
266 } |
260 |
267 |
336 CBStereoMode->addItem(QComboBox::tr("Cyan/Red grayscale")); |
343 CBStereoMode->addItem(QComboBox::tr("Cyan/Red grayscale")); |
337 CBStereoMode->addItem(QComboBox::tr("Red/Blue grayscale")); |
344 CBStereoMode->addItem(QComboBox::tr("Red/Blue grayscale")); |
338 CBStereoMode->addItem(QComboBox::tr("Blue/Red grayscale")); |
345 CBStereoMode->addItem(QComboBox::tr("Blue/Red grayscale")); |
339 CBStereoMode->addItem(QComboBox::tr("Red/Green grayscale")); |
346 CBStereoMode->addItem(QComboBox::tr("Red/Green grayscale")); |
340 CBStereoMode->addItem(QComboBox::tr("Green/Red grayscale")); |
347 CBStereoMode->addItem(QComboBox::tr("Green/Red grayscale")); |
341 connect(CBStereoMode, SIGNAL(currentIndexChanged(int)), this, SLOT(forceFullscreen(int))); |
|
342 |
348 |
343 GBAstereolayout->addWidget(CBStereoMode); |
349 GBAstereolayout->addWidget(CBStereoMode); |
344 GBAlayout->addLayout(GBAstereolayout); |
350 GBAlayout->addLayout(GBAstereolayout); |
345 |
351 |
346 hr = new QFrame(AGGroupBox); |
352 hr = new QFrame(AGGroupBox); |
400 return NULL; |
406 return NULL; |
401 } |
407 } |
402 |
408 |
403 void PageOptions::connectSignals() |
409 void PageOptions::connectSignals() |
404 { |
410 { |
|
411 connect(SLQuality, SIGNAL(valueChanged(int)), this, SLOT(setQuality(int))); |
405 connect(CBResolution, SIGNAL(currentIndexChanged(int)), this, SLOT(setResolution(int))); |
412 connect(CBResolution, SIGNAL(currentIndexChanged(int)), this, SLOT(setResolution(int))); |
406 connect(CBFullscreen, SIGNAL(stateChanged(int)), this, SLOT(setFullscreen(int))); |
413 connect(CBFullscreen, SIGNAL(stateChanged(int)), this, SLOT(setFullscreen(int))); |
407 connect(SLQuality, SIGNAL(valueChanged(int)), this, SLOT(setQuality(int))); |
414 connect(CBStereoMode, SIGNAL(currentIndexChanged(int)), this, SLOT(forceFullscreen(int))); |
|
415 connect(editNetNick, SIGNAL(editingFinished()), this, SLOT(trimNetNick())); |
|
416 connect(CBSavePassword, SIGNAL(stateChanged(int)), this, SLOT(savePwdChanged(int))); |
408 } |
417 } |
409 |
418 |
410 PageOptions::PageOptions(QWidget* parent) : AbstractPage(parent) |
419 PageOptions::PageOptions(QWidget* parent) : AbstractPage(parent) |
411 { |
420 { |
412 initPage(); |
421 initPage(); |