author | sheepluva |
Thu, 06 Dec 2012 10:01:01 +0100 | |
changeset 8258 | c14b27abe452 |
parent 8226 | 67f07ff5b593 |
child 8266 | 927da572bcdc |
permissions | -rw-r--r-- |
184 | 1 |
/* |
1066 | 2 |
* Hedgewars, a free turn based strategy game |
6952 | 3 |
* Copyright (c) 2004-2012 Andrey Korotaev <unC0Rr@gmail.com> |
184 | 4 |
* |
5 |
* This program is free software; you can redistribute it and/or modify |
|
6 |
* it under the terms of the GNU General Public License as published by |
|
7 |
* the Free Software Foundation; version 2 of the License |
|
8 |
* |
|
9 |
* This program is distributed in the hope that it will be useful, |
|
10 |
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
11 |
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
12 |
* GNU General Public License for more details. |
|
13 |
* |
|
14 |
* You should have received a copy of the GNU General Public License |
|
15 |
* along with this program; if not, write to the Free Software |
|
16 |
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA |
|
17 |
*/ |
|
18 |
||
471 | 19 |
#include <QCheckBox> |
20 |
#include <QLineEdit> |
|
603 | 21 |
#include <QDesktopWidget> |
2334
3cf9290a518e
Ask user for a nickname on first run, suggest login name
unc0rr
parents:
2276
diff
changeset
|
22 |
#include <QInputDialog> |
5229
148d581b17ab
Attempt to fix issue 125. The password pop-up doesn't appear every time when going into the official server anymore, now it only does it when the password is blank. If a user enters an invalid password, the password is set blank to avoid the user going back to the official server just to be rejected. When entering an invalid password, the unknown error dialog doesn't show up anymore, but the connection lost to server one still does. This fixes the bug where the user would be spammed with error messages. The user can also now change his password in the settings page.
Zorg <zorgiepoo@gmail.com>
parents:
5204
diff
changeset
|
23 |
#include <QCryptographicHash> |
7541
e51b11349637
Allow customization of colors in ui, store custom colors in config
unc0rr
parents:
7313
diff
changeset
|
24 |
#include <QStandardItemModel> |
7700 | 25 |
#include <QNetworkProxy> |
7702 | 26 |
#include <QNetworkProxyFactory> |
471 | 27 |
|
184 | 28 |
#include "gameuiconfig.h" |
29 |
#include "hwform.h" |
|
5204 | 30 |
#include "pageoptions.h" |
7235
baa69bd025d9
1. Implement new page in frontend with options for video recording.
Stepan777 <stepik-777@mail.ru>
parents:
7153
diff
changeset
|
31 |
#include "pagevideos.h" |
5204 | 32 |
#include "pagenetserver.h" |
184 | 33 |
#include "hwconsts.h" |
297 | 34 |
#include "fpsedit.h" |
5252 | 35 |
#include "HWApplication.h" |
7541
e51b11349637
Allow customization of colors in ui, store custom colors in config
unc0rr
parents:
7313
diff
changeset
|
36 |
#include "DataManager.h" |
184 | 37 |
|
7703 | 38 |
|
39 |
const QNetworkProxy::ProxyType proxyTypesMap[] = { |
|
40 |
QNetworkProxy::NoProxy |
|
41 |
, QNetworkProxy::NoProxy // dummy value |
|
42 |
, QNetworkProxy::Socks5Proxy |
|
43 |
, QNetworkProxy::HttpProxy}; |
|
44 |
||
45 |
||
301 | 46 |
GameUIConfig::GameUIConfig(HWForm * FormWidgets, const QString & fileName) |
8098 | 47 |
: QSettings(fileName, QSettings::IniFormat, FormWidgets) |
184 | 48 |
{ |
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2913
diff
changeset
|
49 |
Form = FormWidgets; |
184 | 50 |
|
8098 | 51 |
setIniCodec("UTF-8"); |
52 |
||
8226
67f07ff5b593
Removed redundant "enable"s on checkboxes and variable names.
Mitchell Kember <mk12360@gmail.com>
parents:
8217
diff
changeset
|
53 |
connect(Form->ui.pageOptions->CBFrontendMusic, SIGNAL(toggled(bool)), Form, SLOT(Music(bool))); |
1235 | 54 |
|
3019 | 55 |
//Form->resize(value("frontend/width", 640).toUInt(), value("frontend/height", 450).toUInt()); |
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2913
diff
changeset
|
56 |
resizeToConfigValues(); |
674 | 57 |
|
6911
1cda333286e0
added savepassword checkbox to options page, which now reloads values at every acces
koda
parents:
6700
diff
changeset
|
58 |
reloadValues(); |
7235
baa69bd025d9
1. Implement new page in frontend with options for video recording.
Stepan777 <stepik-777@mail.ru>
parents:
7153
diff
changeset
|
59 |
reloadVideosValues(); |
6911
1cda333286e0
added savepassword checkbox to options page, which now reloads values at every acces
koda
parents:
6700
diff
changeset
|
60 |
} |
1cda333286e0
added savepassword checkbox to options page, which now reloads values at every acces
koda
parents:
6700
diff
changeset
|
61 |
|
1cda333286e0
added savepassword checkbox to options page, which now reloads values at every acces
koda
parents:
6700
diff
changeset
|
62 |
void GameUIConfig::reloadValues(void) |
1cda333286e0
added savepassword checkbox to options page, which now reloads values at every acces
koda
parents:
6700
diff
changeset
|
63 |
{ |
3019 | 64 |
Form->ui.pageOptions->WeaponTooltip->setChecked(value("misc/weaponTooltips", true).toBool()); |
2747 | 65 |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2913
diff
changeset
|
66 |
int t = Form->ui.pageOptions->CBResolution->findText(value("video/resolution").toString()); |
6616
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6583
diff
changeset
|
67 |
if (t < 0) |
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6583
diff
changeset
|
68 |
{ |
5237
963d787a25c2
If 2 or more resolutions are available, use the 2nd in the list. This should (usually) be smaller than the desktop resolution, which should reduce noob fail (not realising part of interface is obscured)
nemo
parents:
5229
diff
changeset
|
69 |
if (Form->ui.pageOptions->CBResolution->count() > 1) |
963d787a25c2
If 2 or more resolutions are available, use the 2nd in the list. This should (usually) be smaller than the desktop resolution, which should reduce noob fail (not realising part of interface is obscured)
nemo
parents:
5229
diff
changeset
|
70 |
Form->ui.pageOptions->CBResolution->setCurrentIndex(1); |
6616
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6583
diff
changeset
|
71 |
else |
5237
963d787a25c2
If 2 or more resolutions are available, use the 2nd in the list. This should (usually) be smaller than the desktop resolution, which should reduce noob fail (not realising part of interface is obscured)
nemo
parents:
5229
diff
changeset
|
72 |
Form->ui.pageOptions->CBResolution->setCurrentIndex(0); |
963d787a25c2
If 2 or more resolutions are available, use the 2nd in the list. This should (usually) be smaller than the desktop resolution, which should reduce noob fail (not realising part of interface is obscured)
nemo
parents:
5229
diff
changeset
|
73 |
} |
963d787a25c2
If 2 or more resolutions are available, use the 2nd in the list. This should (usually) be smaller than the desktop resolution, which should reduce noob fail (not realising part of interface is obscured)
nemo
parents:
5229
diff
changeset
|
74 |
else Form->ui.pageOptions->CBResolution->setCurrentIndex(t); |
963d787a25c2
If 2 or more resolutions are available, use the 2nd in the list. This should (usually) be smaller than the desktop resolution, which should reduce noob fail (not realising part of interface is obscured)
nemo
parents:
5229
diff
changeset
|
75 |
Form->ui.pageOptions->CBResolution->setCurrentIndex((t < 0) ? 1 : t); |
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2913
diff
changeset
|
76 |
Form->ui.pageOptions->CBFullscreen->setChecked(value("video/fullscreen", false).toBool()); |
3019 | 77 |
bool ffscr=value("frontend/fullscreen", false).toBool(); |
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2913
diff
changeset
|
78 |
Form->ui.pageOptions->CBFrontendFullscreen->setChecked(ffscr); |
301 | 79 |
|
3694
3e9c0634065c
new quality slider widget (needs to be customized), removed obsolete arguments
koda
parents:
3690
diff
changeset
|
80 |
Form->ui.pageOptions->SLQuality->setValue(value("video/quality", 5).toUInt()); |
3696 | 81 |
Form->ui.pageOptions->CBStereoMode->setCurrentIndex(value("video/stereo", 0).toUInt()); |
8098 | 82 |
Form->ui.pageOptions->CBFrontendEffects->setChecked(value("frontend/effects", true).toBool()); |
8226
67f07ff5b593
Removed redundant "enable"s on checkboxes and variable names.
Mitchell Kember <mk12360@gmail.com>
parents:
8217
diff
changeset
|
83 |
Form->ui.pageOptions->CBSound->setChecked(value("audio/sound", true).toBool()); |
67f07ff5b593
Removed redundant "enable"s on checkboxes and variable names.
Mitchell Kember <mk12360@gmail.com>
parents:
8217
diff
changeset
|
84 |
Form->ui.pageOptions->CBFrontendSound->setChecked(value("frontend/sound", true).toBool()); |
67f07ff5b593
Removed redundant "enable"s on checkboxes and variable names.
Mitchell Kember <mk12360@gmail.com>
parents:
8217
diff
changeset
|
85 |
Form->ui.pageOptions->CBMusic->setChecked(value("audio/music", true).toBool()); |
67f07ff5b593
Removed redundant "enable"s on checkboxes and variable names.
Mitchell Kember <mk12360@gmail.com>
parents:
8217
diff
changeset
|
86 |
Form->ui.pageOptions->CBFrontendMusic->setChecked(value("frontend/music", true).toBool()); |
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2913
diff
changeset
|
87 |
Form->ui.pageOptions->volumeBox->setValue(value("audio/volume", 100).toUInt()); |
184 | 88 |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2913
diff
changeset
|
89 |
QString netNick = value("net/nick", "").toString(); |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2913
diff
changeset
|
90 |
Form->ui.pageOptions->editNetNick->setText(netNick); |
6911
1cda333286e0
added savepassword checkbox to options page, which now reloads values at every acces
koda
parents:
6700
diff
changeset
|
91 |
bool savePwd = value("net/savepassword",true).toBool(); |
1cda333286e0
added savepassword checkbox to options page, which now reloads values at every acces
koda
parents:
6700
diff
changeset
|
92 |
Form->ui.pageOptions->CBSavePassword->setChecked(savePwd); |
6616
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6583
diff
changeset
|
93 |
|
5260
f50f620771ee
When the password field is filled with null characters and when the user tries to edit the field, clear it.
Zorg <zorgiepoo@gmail.com>
parents:
5252
diff
changeset
|
94 |
Form->ui.pageOptions->editNetPassword->installEventFilter(this); |
6616
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6583
diff
changeset
|
95 |
|
5229
148d581b17ab
Attempt to fix issue 125. The password pop-up doesn't appear every time when going into the official server anymore, now it only does it when the password is blank. If a user enters an invalid password, the password is set blank to avoid the user going back to the official server just to be rejected. When entering an invalid password, the unknown error dialog doesn't show up anymore, but the connection lost to server one still does. This fixes the bug where the user would be spammed with error messages. The user can also now change his password in the settings page.
Zorg <zorgiepoo@gmail.com>
parents:
5204
diff
changeset
|
96 |
int passLength = value("net/passwordlength", 0).toInt(); |
8179
a1ffcb559f99
Refactor: get rid of excessive QSettings instances on the same poor hedgewars.ini file
unc0rr
parents:
8098
diff
changeset
|
97 |
if (!savePwd) { |
a1ffcb559f99
Refactor: get rid of excessive QSettings instances on the same poor hedgewars.ini file
unc0rr
parents:
8098
diff
changeset
|
98 |
Form->ui.pageOptions->editNetPassword->setEnabled(false); |
6911
1cda333286e0
added savepassword checkbox to options page, which now reloads values at every acces
koda
parents:
6700
diff
changeset
|
99 |
Form->ui.pageOptions->editNetPassword->setText(""); |
8098 | 100 |
setNetPasswordLength(0); |
8179
a1ffcb559f99
Refactor: get rid of excessive QSettings instances on the same poor hedgewars.ini file
unc0rr
parents:
8098
diff
changeset
|
101 |
} else |
a1ffcb559f99
Refactor: get rid of excessive QSettings instances on the same poor hedgewars.ini file
unc0rr
parents:
8098
diff
changeset
|
102 |
{ |
a1ffcb559f99
Refactor: get rid of excessive QSettings instances on the same poor hedgewars.ini file
unc0rr
parents:
8098
diff
changeset
|
103 |
setNetPasswordLength(passLength); |
6911
1cda333286e0
added savepassword checkbox to options page, which now reloads values at every acces
koda
parents:
6700
diff
changeset
|
104 |
} |
654 | 105 |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2913
diff
changeset
|
106 |
delete netHost; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2913
diff
changeset
|
107 |
netHost = new QString(value("net/ip", "").toString()); |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2913
diff
changeset
|
108 |
netPort = value("net/port", 46631).toUInt(); |
529 | 109 |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2913
diff
changeset
|
110 |
Form->ui.pageNetServer->leServerDescr->setText(value("net/servername", "hedgewars server").toString()); |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2913
diff
changeset
|
111 |
Form->ui.pageNetServer->sbPort->setValue(value("net/serverport", 46631).toUInt()); |
657
b34fc518a48a
Basic concept for net server options page (subject to change)
unc0rr
parents:
654
diff
changeset
|
112 |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2913
diff
changeset
|
113 |
Form->ui.pageOptions->CBShowFPS->setChecked(value("fps/show", false).toBool()); |
3019 | 114 |
Form->ui.pageOptions->fpsedit->setValue(value("fps/limit", 27).toUInt()); |
529 | 115 |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2913
diff
changeset
|
116 |
Form->ui.pageOptions->CBAltDamage->setChecked(value("misc/altdamage", false).toBool()); |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2913
diff
changeset
|
117 |
Form->ui.pageOptions->CBNameWithDate->setChecked(value("misc/appendTimeToRecords", false).toBool()); |
2377 | 118 |
|
2395 | 119 |
#ifdef SPARKLE_ENABLED |
6616
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6583
diff
changeset
|
120 |
Form->ui.pageOptions->CBAutoUpdate->setChecked(value("misc/autoUpdate", true).toBool()); |
2261 | 121 |
#endif |
2377 | 122 |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2913
diff
changeset
|
123 |
Form->ui.pageOptions->CBLanguage->setCurrentIndex(Form->ui.pageOptions->CBLanguage->findData(value("misc/locale", "").toString())); |
2898 | 124 |
|
7700 | 125 |
Form->ui.pageOptions->cbProxyType->setCurrentIndex(value("proxy/type", 0).toInt()); |
126 |
Form->ui.pageOptions->leProxy->setText(value("proxy/host", "").toString()); |
|
127 |
Form->ui.pageOptions->sbProxyPort->setValue(value("proxy/port", "8080").toInt()); |
|
128 |
Form->ui.pageOptions->leProxyLogin->setText(value("proxy/login", "").toString()); |
|
129 |
Form->ui.pageOptions->leProxyPassword->setText(value("proxy/password", "").toString()); |
|
130 |
||
5252 | 131 |
depth = HWApplication::desktop()->depth(); |
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2913
diff
changeset
|
132 |
if (depth < 16) depth = 16; |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2913
diff
changeset
|
133 |
else if (depth > 16) depth = 32; |
7541
e51b11349637
Allow customization of colors in ui, store custom colors in config
unc0rr
parents:
7313
diff
changeset
|
134 |
|
e51b11349637
Allow customization of colors in ui, store custom colors in config
unc0rr
parents:
7313
diff
changeset
|
135 |
{ // load colors |
e51b11349637
Allow customization of colors in ui, store custom colors in config
unc0rr
parents:
7313
diff
changeset
|
136 |
QStandardItemModel * model = DataManager::instance().colorsModel(); |
e51b11349637
Allow customization of colors in ui, store custom colors in config
unc0rr
parents:
7313
diff
changeset
|
137 |
for(int i = model->rowCount() - 1; i >= 0; --i) |
e51b11349637
Allow customization of colors in ui, store custom colors in config
unc0rr
parents:
7313
diff
changeset
|
138 |
model->item(i)->setData(QColor(value(QString("colors/color%1").arg(i), model->item(i)->data().value<QColor>()).value<QColor>())); |
e51b11349637
Allow customization of colors in ui, store custom colors in config
unc0rr
parents:
7313
diff
changeset
|
139 |
} |
184 | 140 |
} |
141 |
||
7235
baa69bd025d9
1. Implement new page in frontend with options for video recording.
Stepan777 <stepik-777@mail.ru>
parents:
7153
diff
changeset
|
142 |
void GameUIConfig::reloadVideosValues(void) |
baa69bd025d9
1. Implement new page in frontend with options for video recording.
Stepan777 <stepik-777@mail.ru>
parents:
7153
diff
changeset
|
143 |
{ |
8186
4ff8690df1b0
unify default videorec values loading/reloading, fix setting index/value from previous commit
koda
parents:
8185
diff
changeset
|
144 |
// one pass with default values |
8190 | 145 |
Form->ui.pageOptions->setDefaultOptions(); |
8185
1c3739ba4352
GCI2012: Check for Non-Standard Recorder Framerate
O. Michael Hartman
parents:
8184
diff
changeset
|
146 |
|
8186
4ff8690df1b0
unify default videorec values loading/reloading, fix setting index/value from previous commit
koda
parents:
8185
diff
changeset
|
147 |
// then load user configuration |
8190 | 148 |
Form->ui.pageOptions->framerateBox->setCurrentIndex( |
149 |
Form->ui.pageOptions->framerateBox->findData( |
|
8186
4ff8690df1b0
unify default videorec values loading/reloading, fix setting index/value from previous commit
koda
parents:
8185
diff
changeset
|
150 |
value("videorec/framerate", rec_Framerate()).toString() + " fps", |
4ff8690df1b0
unify default videorec values loading/reloading, fix setting index/value from previous commit
koda
parents:
8185
diff
changeset
|
151 |
Qt::MatchExactly) ); |
8190 | 152 |
Form->ui.pageOptions->bitrateBox->setValue(value("videorec/bitrate", rec_Bitrate()).toUInt()); |
153 |
bool useGameRes = value("videorec/usegameres",Form->ui.pageOptions->checkUseGameRes->isChecked()).toBool(); |
|
7235
baa69bd025d9
1. Implement new page in frontend with options for video recording.
Stepan777 <stepik-777@mail.ru>
parents:
7153
diff
changeset
|
154 |
if (useGameRes) |
baa69bd025d9
1. Implement new page in frontend with options for video recording.
Stepan777 <stepik-777@mail.ru>
parents:
7153
diff
changeset
|
155 |
{ |
baa69bd025d9
1. Implement new page in frontend with options for video recording.
Stepan777 <stepik-777@mail.ru>
parents:
7153
diff
changeset
|
156 |
QRect res = vid_Resolution(); |
8151
25b95d6224fc
Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents:
8098
diff
changeset
|
157 |
Form->ui.pageOptions->widthEdit->setText(QString::number(res.width())); |
25b95d6224fc
Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents:
8098
diff
changeset
|
158 |
Form->ui.pageOptions->heightEdit->setText(QString::number(res.height())); |
7235
baa69bd025d9
1. Implement new page in frontend with options for video recording.
Stepan777 <stepik-777@mail.ru>
parents:
7153
diff
changeset
|
159 |
} |
baa69bd025d9
1. Implement new page in frontend with options for video recording.
Stepan777 <stepik-777@mail.ru>
parents:
7153
diff
changeset
|
160 |
else |
baa69bd025d9
1. Implement new page in frontend with options for video recording.
Stepan777 <stepik-777@mail.ru>
parents:
7153
diff
changeset
|
161 |
{ |
8151
25b95d6224fc
Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents:
8098
diff
changeset
|
162 |
Form->ui.pageOptions->widthEdit->setText(value("videorec/width","800").toString()); |
25b95d6224fc
Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents:
8098
diff
changeset
|
163 |
Form->ui.pageOptions->heightEdit->setText(value("videorec/height","600").toString()); |
7235
baa69bd025d9
1. Implement new page in frontend with options for video recording.
Stepan777 <stepik-777@mail.ru>
parents:
7153
diff
changeset
|
164 |
} |
8151
25b95d6224fc
Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents:
8098
diff
changeset
|
165 |
Form->ui.pageOptions->checkUseGameRes->setChecked(useGameRes); |
8190 | 166 |
Form->ui.pageOptions->checkRecordAudio->setChecked( |
167 |
value("videorec/audio",Form->ui.pageOptions->checkRecordAudio->isChecked()).toBool() ); |
|
8151
25b95d6224fc
Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents:
8098
diff
changeset
|
168 |
if (!Form->ui.pageOptions->tryCodecs(value("videorec/format","no").toString(), |
7235
baa69bd025d9
1. Implement new page in frontend with options for video recording.
Stepan777 <stepik-777@mail.ru>
parents:
7153
diff
changeset
|
169 |
value("videorec/videocodec","no").toString(), |
baa69bd025d9
1. Implement new page in frontend with options for video recording.
Stepan777 <stepik-777@mail.ru>
parents:
7153
diff
changeset
|
170 |
value("videorec/audiocodec","no").toString())) |
8151
25b95d6224fc
Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents:
8098
diff
changeset
|
171 |
Form->ui.pageOptions->setDefaultCodecs(); |
7235
baa69bd025d9
1. Implement new page in frontend with options for video recording.
Stepan777 <stepik-777@mail.ru>
parents:
7153
diff
changeset
|
172 |
} |
baa69bd025d9
1. Implement new page in frontend with options for video recording.
Stepan777 <stepik-777@mail.ru>
parents:
7153
diff
changeset
|
173 |
|
184 | 174 |
QStringList GameUIConfig::GetTeamsList() |
175 |
{ |
|
3333 | 176 |
QDir teamdir; |
177 |
teamdir.cd(cfgdir->absolutePath() + "/Teams"); |
|
4817 | 178 |
QStringList teamslist = teamdir.entryList(QStringList("*.hwt"),QDir::Files|QDir::Hidden); |
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2913
diff
changeset
|
179 |
QStringList cleanedList; |
6616
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6583
diff
changeset
|
180 |
for (QStringList::Iterator it = teamslist.begin(); it != teamslist.end(); ++it ) |
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6583
diff
changeset
|
181 |
{ |
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6583
diff
changeset
|
182 |
QString tmpTeamStr=(*it).replace(QRegExp("^(.*)\\.hwt$"), "\\1"); |
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6583
diff
changeset
|
183 |
cleanedList.push_back(tmpTeamStr); |
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2913
diff
changeset
|
184 |
} |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2913
diff
changeset
|
185 |
return cleanedList; |
184 | 186 |
} |
187 |
||
1165
40eeae82e70b
correct restoring window size after fullscreen mode
displacer
parents:
1162
diff
changeset
|
188 |
void GameUIConfig::resizeToConfigValues() |
40eeae82e70b
correct restoring window size after fullscreen mode
displacer
parents:
1162
diff
changeset
|
189 |
{ |
8184
e0c8fad98022
resize the qt window to fill 2/3 of the screen size (no more crammed widgets on first launch) and always center it
koda
parents:
8179
diff
changeset
|
190 |
// fill 2/3 of the screen desktop |
e0c8fad98022
resize the qt window to fill 2/3 of the screen size (no more crammed widgets on first launch) and always center it
koda
parents:
8179
diff
changeset
|
191 |
const QRect deskSize = QApplication::desktop()->screenGeometry(-1); |
e0c8fad98022
resize the qt window to fill 2/3 of the screen size (no more crammed widgets on first launch) and always center it
koda
parents:
8179
diff
changeset
|
192 |
Form->resize(value("frontend/width", deskSize.width()*2/3).toUInt(), |
e0c8fad98022
resize the qt window to fill 2/3 of the screen size (no more crammed widgets on first launch) and always center it
koda
parents:
8179
diff
changeset
|
193 |
value("frontend/height", deskSize.height()*2/3).toUInt()); |
e0c8fad98022
resize the qt window to fill 2/3 of the screen size (no more crammed widgets on first launch) and always center it
koda
parents:
8179
diff
changeset
|
194 |
|
e0c8fad98022
resize the qt window to fill 2/3 of the screen size (no more crammed widgets on first launch) and always center it
koda
parents:
8179
diff
changeset
|
195 |
// move the window to the center of the screen |
e0c8fad98022
resize the qt window to fill 2/3 of the screen size (no more crammed widgets on first launch) and always center it
koda
parents:
8179
diff
changeset
|
196 |
QPoint center = QApplication::desktop()->availableGeometry(-1).center(); |
e0c8fad98022
resize the qt window to fill 2/3 of the screen size (no more crammed widgets on first launch) and always center it
koda
parents:
8179
diff
changeset
|
197 |
center.setX(center.x() - (Form->width()/2)); |
e0c8fad98022
resize the qt window to fill 2/3 of the screen size (no more crammed widgets on first launch) and always center it
koda
parents:
8179
diff
changeset
|
198 |
center.setY(center.y() - (Form->height()/2)); |
e0c8fad98022
resize the qt window to fill 2/3 of the screen size (no more crammed widgets on first launch) and always center it
koda
parents:
8179
diff
changeset
|
199 |
Form->move(center); |
1165
40eeae82e70b
correct restoring window size after fullscreen mode
displacer
parents:
1162
diff
changeset
|
200 |
} |
40eeae82e70b
correct restoring window size after fullscreen mode
displacer
parents:
1162
diff
changeset
|
201 |
|
184 | 202 |
void GameUIConfig::SaveOptions() |
203 |
{ |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2913
diff
changeset
|
204 |
setValue("video/resolution", Form->ui.pageOptions->CBResolution->currentText()); |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2913
diff
changeset
|
205 |
setValue("video/fullscreen", vid_Fullscreen()); |
1812 | 206 |
|
3694
3e9c0634065c
new quality slider widget (needs to be customized), removed obsolete arguments
koda
parents:
3690
diff
changeset
|
207 |
setValue("video/quality", Form->ui.pageOptions->SLQuality->value()); |
3696 | 208 |
setValue("video/stereo", stereoMode()); |
1812 | 209 |
|
3019 | 210 |
setValue("frontend/effects", isFrontendEffects()); |
2098
c977d7f2aa09
Toggle for stars ("frontend effects") - also turns off optimisations for stars that were causing problems onone machine
nemo
parents:
1812
diff
changeset
|
211 |
|
3694
3e9c0634065c
new quality slider widget (needs to be customized), removed obsolete arguments
koda
parents:
3690
diff
changeset
|
212 |
setValue("misc/weaponTooltips", Form->ui.pageOptions->WeaponTooltip->isChecked()); |
2747 | 213 |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2913
diff
changeset
|
214 |
bool ffscr = isFrontendFullscreen(); |
3019 | 215 |
setValue("frontend/fullscreen", ffscr); |
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2913
diff
changeset
|
216 |
emit frontendFullscreen(ffscr); |
6616
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6583
diff
changeset
|
217 |
if (!ffscr) |
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6583
diff
changeset
|
218 |
{ |
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6583
diff
changeset
|
219 |
setValue("frontend/width", Form->width()); |
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6583
diff
changeset
|
220 |
setValue("frontend/height", Form->height()); |
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6583
diff
changeset
|
221 |
} |
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6583
diff
changeset
|
222 |
else |
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6583
diff
changeset
|
223 |
{ |
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6583
diff
changeset
|
224 |
//resizeToConfigValues(); // TODO: why this has been made? |
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2913
diff
changeset
|
225 |
} |
301 | 226 |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2913
diff
changeset
|
227 |
setValue("audio/sound", isSoundEnabled()); |
3019 | 228 |
setValue("frontend/sound", isFrontendSoundEnabled()); |
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2913
diff
changeset
|
229 |
setValue("audio/music", isMusicEnabled()); |
3019 | 230 |
setValue("frontend/music", isFrontendMusicEnabled()); |
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2913
diff
changeset
|
231 |
setValue("audio/volume", Form->ui.pageOptions->volumeBox->value()); |
301 | 232 |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2913
diff
changeset
|
233 |
setValue("net/nick", netNick()); |
6911
1cda333286e0
added savepassword checkbox to options page, which now reloads values at every acces
koda
parents:
6700
diff
changeset
|
234 |
if (netPasswordIsValid() && Form->ui.pageOptions->CBSavePassword->isChecked()) |
5229
148d581b17ab
Attempt to fix issue 125. The password pop-up doesn't appear every time when going into the official server anymore, now it only does it when the password is blank. If a user enters an invalid password, the password is set blank to avoid the user going back to the official server just to be rejected. When entering an invalid password, the unknown error dialog doesn't show up anymore, but the connection lost to server one still does. This fixes the bug where the user would be spammed with error messages. The user can also now change his password in the settings page.
Zorg <zorgiepoo@gmail.com>
parents:
5204
diff
changeset
|
235 |
{ |
148d581b17ab
Attempt to fix issue 125. The password pop-up doesn't appear every time when going into the official server anymore, now it only does it when the password is blank. If a user enters an invalid password, the password is set blank to avoid the user going back to the official server just to be rejected. When entering an invalid password, the unknown error dialog doesn't show up anymore, but the connection lost to server one still does. This fixes the bug where the user would be spammed with error messages. The user can also now change his password in the settings page.
Zorg <zorgiepoo@gmail.com>
parents:
5204
diff
changeset
|
236 |
setValue("net/passwordhash", netPasswordHash()); |
148d581b17ab
Attempt to fix issue 125. The password pop-up doesn't appear every time when going into the official server anymore, now it only does it when the password is blank. If a user enters an invalid password, the password is set blank to avoid the user going back to the official server just to be rejected. When entering an invalid password, the unknown error dialog doesn't show up anymore, but the connection lost to server one still does. This fixes the bug where the user would be spammed with error messages. The user can also now change his password in the settings page.
Zorg <zorgiepoo@gmail.com>
parents:
5204
diff
changeset
|
237 |
setValue("net/passwordlength", netPasswordLength()); |
148d581b17ab
Attempt to fix issue 125. The password pop-up doesn't appear every time when going into the official server anymore, now it only does it when the password is blank. If a user enters an invalid password, the password is set blank to avoid the user going back to the official server just to be rejected. When entering an invalid password, the unknown error dialog doesn't show up anymore, but the connection lost to server one still does. This fixes the bug where the user would be spammed with error messages. The user can also now change his password in the settings page.
Zorg <zorgiepoo@gmail.com>
parents:
5204
diff
changeset
|
238 |
} |
6911
1cda333286e0
added savepassword checkbox to options page, which now reloads values at every acces
koda
parents:
6700
diff
changeset
|
239 |
setValue("net/savepassword", Form->ui.pageOptions->CBSavePassword->isChecked()); |
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2913
diff
changeset
|
240 |
setValue("net/ip", *netHost); |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2913
diff
changeset
|
241 |
setValue("net/port", netPort); |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2913
diff
changeset
|
242 |
setValue("net/servername", Form->ui.pageNetServer->leServerDescr->text()); |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2913
diff
changeset
|
243 |
setValue("net/serverport", Form->ui.pageNetServer->sbPort->value()); |
301 | 244 |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2913
diff
changeset
|
245 |
setValue("fps/show", isShowFPSEnabled()); |
3019 | 246 |
setValue("fps/limit", Form->ui.pageOptions->fpsedit->value()); |
6616
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6583
diff
changeset
|
247 |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2913
diff
changeset
|
248 |
setValue("misc/altdamage", isAltDamageEnabled()); |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2913
diff
changeset
|
249 |
setValue("misc/appendTimeToRecords", appendDateTimeToRecordName()); |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2913
diff
changeset
|
250 |
setValue("misc/locale", language()); |
2377 | 251 |
|
2395 | 252 |
#ifdef SPARKLE_ENABLED |
6616
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6583
diff
changeset
|
253 |
setValue("misc/autoUpdate", isAutoUpdateEnabled()); |
2377 | 254 |
#endif |
7235
baa69bd025d9
1. Implement new page in frontend with options for video recording.
Stepan777 <stepik-777@mail.ru>
parents:
7153
diff
changeset
|
255 |
|
7702 | 256 |
{ // setup proxy |
257 |
int proxyType = Form->ui.pageOptions->cbProxyType->currentIndex(); |
|
258 |
setValue("proxy/type", proxyType); |
|
7700 | 259 |
|
7703 | 260 |
if(proxyType == PageOptions::Socks5Proxy || proxyType == PageOptions::HTTPProxy) |
7702 | 261 |
{ |
262 |
setValue("proxy/host", Form->ui.pageOptions->leProxy->text()); |
|
263 |
setValue("proxy/port", Form->ui.pageOptions->sbProxyPort->value()); |
|
264 |
setValue("proxy/login", Form->ui.pageOptions->leProxyLogin->text()); |
|
265 |
setValue("proxy/password", Form->ui.pageOptions->leProxyPassword->text()); |
|
266 |
} |
|
267 |
||
268 |
QNetworkProxy proxy; |
|
7700 | 269 |
|
7703 | 270 |
if(proxyType == PageOptions::SystemProxy) |
7702 | 271 |
{ |
272 |
// use system proxy settings |
|
273 |
proxy = QNetworkProxyFactory::systemProxyForQuery().at(0); |
|
274 |
} else |
|
275 |
{ |
|
276 |
proxy.setType(proxyTypesMap[proxyType]); |
|
277 |
proxy.setHostName(Form->ui.pageOptions->leProxy->text()); |
|
278 |
proxy.setPort(Form->ui.pageOptions->sbProxyPort->value()); |
|
279 |
proxy.setUser(Form->ui.pageOptions->leProxyLogin->text()); |
|
280 |
proxy.setPassword(Form->ui.pageOptions->leProxyPassword->text()); |
|
281 |
} |
|
7700 | 282 |
|
7702 | 283 |
QNetworkProxy::setApplicationProxy(proxy); |
284 |
} |
|
7700 | 285 |
|
7541
e51b11349637
Allow customization of colors in ui, store custom colors in config
unc0rr
parents:
7313
diff
changeset
|
286 |
{ // save colors |
e51b11349637
Allow customization of colors in ui, store custom colors in config
unc0rr
parents:
7313
diff
changeset
|
287 |
QStandardItemModel * model = DataManager::instance().colorsModel(); |
e51b11349637
Allow customization of colors in ui, store custom colors in config
unc0rr
parents:
7313
diff
changeset
|
288 |
for(int i = model->rowCount() - 1; i >= 0; --i) |
e51b11349637
Allow customization of colors in ui, store custom colors in config
unc0rr
parents:
7313
diff
changeset
|
289 |
setValue(QString("colors/color%1").arg(i), model->item(i)->data()); |
e51b11349637
Allow customization of colors in ui, store custom colors in config
unc0rr
parents:
7313
diff
changeset
|
290 |
} |
e51b11349637
Allow customization of colors in ui, store custom colors in config
unc0rr
parents:
7313
diff
changeset
|
291 |
|
8179
a1ffcb559f99
Refactor: get rid of excessive QSettings instances on the same poor hedgewars.ini file
unc0rr
parents:
8098
diff
changeset
|
292 |
sync(); |
7235
baa69bd025d9
1. Implement new page in frontend with options for video recording.
Stepan777 <stepik-777@mail.ru>
parents:
7153
diff
changeset
|
293 |
} |
baa69bd025d9
1. Implement new page in frontend with options for video recording.
Stepan777 <stepik-777@mail.ru>
parents:
7153
diff
changeset
|
294 |
|
baa69bd025d9
1. Implement new page in frontend with options for video recording.
Stepan777 <stepik-777@mail.ru>
parents:
7153
diff
changeset
|
295 |
void GameUIConfig::SaveVideosOptions() |
baa69bd025d9
1. Implement new page in frontend with options for video recording.
Stepan777 <stepik-777@mail.ru>
parents:
7153
diff
changeset
|
296 |
{ |
baa69bd025d9
1. Implement new page in frontend with options for video recording.
Stepan777 <stepik-777@mail.ru>
parents:
7153
diff
changeset
|
297 |
QRect res = rec_Resolution(); |
baa69bd025d9
1. Implement new page in frontend with options for video recording.
Stepan777 <stepik-777@mail.ru>
parents:
7153
diff
changeset
|
298 |
setValue("videorec/format", AVFormat()); |
baa69bd025d9
1. Implement new page in frontend with options for video recording.
Stepan777 <stepik-777@mail.ru>
parents:
7153
diff
changeset
|
299 |
setValue("videorec/videocodec", videoCodec()); |
baa69bd025d9
1. Implement new page in frontend with options for video recording.
Stepan777 <stepik-777@mail.ru>
parents:
7153
diff
changeset
|
300 |
setValue("videorec/audiocodec", audioCodec()); |
8186
4ff8690df1b0
unify default videorec values loading/reloading, fix setting index/value from previous commit
koda
parents:
8185
diff
changeset
|
301 |
setValue("videorec/framerate", rec_Framerate()); |
7633
d4251e519062
Allow adjusting bitrate so that I can get a somewhat usable webm video. The audio is still tinny and unlistenable. Configuration option for that might be helpful, or just adjusting defaults in the wrapper.
nemo
parents:
7565
diff
changeset
|
302 |
setValue("videorec/bitrate", rec_Bitrate()); |
7235
baa69bd025d9
1. Implement new page in frontend with options for video recording.
Stepan777 <stepik-777@mail.ru>
parents:
7153
diff
changeset
|
303 |
setValue("videorec/width", res.width()); |
baa69bd025d9
1. Implement new page in frontend with options for video recording.
Stepan777 <stepik-777@mail.ru>
parents:
7153
diff
changeset
|
304 |
setValue("videorec/height", res.height()); |
8151
25b95d6224fc
Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents:
8098
diff
changeset
|
305 |
setValue("videorec/usegameres", Form->ui.pageOptions->checkUseGameRes->isChecked()); |
7235
baa69bd025d9
1. Implement new page in frontend with options for video recording.
Stepan777 <stepik-777@mail.ru>
parents:
7153
diff
changeset
|
306 |
setValue("videorec/audio", recordAudio()); |
baa69bd025d9
1. Implement new page in frontend with options for video recording.
Stepan777 <stepik-777@mail.ru>
parents:
7153
diff
changeset
|
307 |
|
8179
a1ffcb559f99
Refactor: get rid of excessive QSettings instances on the same poor hedgewars.ini file
unc0rr
parents:
8098
diff
changeset
|
308 |
sync(); |
a1ffcb559f99
Refactor: get rid of excessive QSettings instances on the same poor hedgewars.ini file
unc0rr
parents:
8098
diff
changeset
|
309 |
} |
a1ffcb559f99
Refactor: get rid of excessive QSettings instances on the same poor hedgewars.ini file
unc0rr
parents:
8098
diff
changeset
|
310 |
|
a1ffcb559f99
Refactor: get rid of excessive QSettings instances on the same poor hedgewars.ini file
unc0rr
parents:
8098
diff
changeset
|
311 |
void GameUIConfig::setValue(const QString &key, const QVariant &value) |
a1ffcb559f99
Refactor: get rid of excessive QSettings instances on the same poor hedgewars.ini file
unc0rr
parents:
8098
diff
changeset
|
312 |
{ |
8217
e3f47a1d6f2b
readd this debug line, commented out, could be useful
koda
parents:
8206
diff
changeset
|
313 |
//qDebug() << "[settings]" << key << value; |
8179
a1ffcb559f99
Refactor: get rid of excessive QSettings instances on the same poor hedgewars.ini file
unc0rr
parents:
8098
diff
changeset
|
314 |
QSettings::setValue(key, value); |
184 | 315 |
} |
316 |
||
2898 | 317 |
QString GameUIConfig::language() |
318 |
{ |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2913
diff
changeset
|
319 |
return Form->ui.pageOptions->CBLanguage->itemData(Form->ui.pageOptions->CBLanguage->currentIndex()).toString(); |
2898 | 320 |
} |
321 |
||
555 | 322 |
QRect GameUIConfig::vid_Resolution() |
184 | 323 |
{ |
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2913
diff
changeset
|
324 |
QRect result(0, 0, 640, 480); |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2913
diff
changeset
|
325 |
QStringList wh = Form->ui.pageOptions->CBResolution->currentText().split('x'); |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2913
diff
changeset
|
326 |
if (wh.size() == 2) |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2913
diff
changeset
|
327 |
{ |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2913
diff
changeset
|
328 |
result.setWidth(wh[0].toInt()); |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2913
diff
changeset
|
329 |
result.setHeight(wh[1].toInt()); |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2913
diff
changeset
|
330 |
} |
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2913
diff
changeset
|
331 |
return result; |
184 | 332 |
} |
333 |
||
334 |
bool GameUIConfig::vid_Fullscreen() |
|
335 |
{ |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2913
diff
changeset
|
336 |
return Form->ui.pageOptions->CBFullscreen->isChecked(); |
184 | 337 |
} |
338 |
||
3694
3e9c0634065c
new quality slider widget (needs to be customized), removed obsolete arguments
koda
parents:
3690
diff
changeset
|
339 |
quint32 GameUIConfig::translateQuality() |
1812 | 340 |
{ |
3694
3e9c0634065c
new quality slider widget (needs to be customized), removed obsolete arguments
koda
parents:
3690
diff
changeset
|
341 |
quint32 rqNone = 0x00000000; // don't reduce quality |
3937 | 342 |
//quint32 rqLowRes = 0x00000001; // use half land array |
3694
3e9c0634065c
new quality slider widget (needs to be customized), removed obsolete arguments
koda
parents:
3690
diff
changeset
|
343 |
quint32 rqBlurryLand = 0x00000002; // downscaled terrain |
3e9c0634065c
new quality slider widget (needs to be customized), removed obsolete arguments
koda
parents:
3690
diff
changeset
|
344 |
quint32 rqNoBackground = 0x00000004; // don't draw background |
3e9c0634065c
new quality slider widget (needs to be customized), removed obsolete arguments
koda
parents:
3690
diff
changeset
|
345 |
quint32 rqSimpleRope = 0x00000008; // avoid drawing rope |
3e9c0634065c
new quality slider widget (needs to be customized), removed obsolete arguments
koda
parents:
3690
diff
changeset
|
346 |
quint32 rq2DWater = 0x00000010; // disabe 3D water effect |
4809
9c7d5f802618
rearrange quality flags a little, disable snow rendering on rqLowRes
koda
parents:
3937
diff
changeset
|
347 |
quint32 rqAntiBoom = 0x00000020; // no fancy explosion effects |
3694
3e9c0634065c
new quality slider widget (needs to be customized), removed obsolete arguments
koda
parents:
3690
diff
changeset
|
348 |
quint32 rqKillFlakes = 0x00000040; // no flakes |
3e9c0634065c
new quality slider widget (needs to be customized), removed obsolete arguments
koda
parents:
3690
diff
changeset
|
349 |
quint32 rqSlowMenu = 0x00000080; // ammomenu appears with no animation |
3e9c0634065c
new quality slider widget (needs to be customized), removed obsolete arguments
koda
parents:
3690
diff
changeset
|
350 |
quint32 rqPlainSplash = 0x00000100; // no droplets |
3e9c0634065c
new quality slider widget (needs to be customized), removed obsolete arguments
koda
parents:
3690
diff
changeset
|
351 |
quint32 rqClampLess = 0x00000200; // don't clamp textures |
3e9c0634065c
new quality slider widget (needs to be customized), removed obsolete arguments
koda
parents:
3690
diff
changeset
|
352 |
quint32 rqTooltipsOff = 0x00000400; // tooltips are not drawn |
3e9c0634065c
new quality slider widget (needs to be customized), removed obsolete arguments
koda
parents:
3690
diff
changeset
|
353 |
quint32 rqDesyncVBlank = 0x00000800; // don't sync on vblank |
6616
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6583
diff
changeset
|
354 |
|
3694
3e9c0634065c
new quality slider widget (needs to be customized), removed obsolete arguments
koda
parents:
3690
diff
changeset
|
355 |
quint32 result = (Form->ui.pageOptions->WeaponTooltip->isChecked()) ? rqNone : rqTooltipsOff; |
6616
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6583
diff
changeset
|
356 |
|
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6583
diff
changeset
|
357 |
switch (Form->ui.pageOptions->SLQuality->value()) |
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6583
diff
changeset
|
358 |
{ |
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6583
diff
changeset
|
359 |
case 5: |
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6583
diff
changeset
|
360 |
break; |
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6583
diff
changeset
|
361 |
case 4: |
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6583
diff
changeset
|
362 |
result |= rqBlurryLand; |
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6583
diff
changeset
|
363 |
break; |
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6583
diff
changeset
|
364 |
case 3: |
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6583
diff
changeset
|
365 |
result |= rqBlurryLand | rqKillFlakes | rqPlainSplash; |
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6583
diff
changeset
|
366 |
break; |
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6583
diff
changeset
|
367 |
case 2: |
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6583
diff
changeset
|
368 |
result |= rqBlurryLand | rqKillFlakes | rqPlainSplash | rq2DWater | |
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6583
diff
changeset
|
369 |
rqAntiBoom | rqSlowMenu; |
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6583
diff
changeset
|
370 |
break; |
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6583
diff
changeset
|
371 |
case 1: |
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6583
diff
changeset
|
372 |
result |= rqBlurryLand | rqKillFlakes | rqPlainSplash | rq2DWater | |
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6583
diff
changeset
|
373 |
rqAntiBoom | rqSlowMenu | rqSimpleRope | rqDesyncVBlank; |
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6583
diff
changeset
|
374 |
break; |
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6583
diff
changeset
|
375 |
case 0: |
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6583
diff
changeset
|
376 |
result |= rqBlurryLand | rqKillFlakes | rqPlainSplash | rq2DWater | |
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6583
diff
changeset
|
377 |
rqAntiBoom | rqSlowMenu | rqSimpleRope | rqDesyncVBlank | |
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6583
diff
changeset
|
378 |
rqNoBackground | rqClampLess; |
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6583
diff
changeset
|
379 |
break; |
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6583
diff
changeset
|
380 |
default: |
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6583
diff
changeset
|
381 |
fprintf(stderr,"unset value from slider"); |
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6583
diff
changeset
|
382 |
break; |
3694
3e9c0634065c
new quality slider widget (needs to be customized), removed obsolete arguments
koda
parents:
3690
diff
changeset
|
383 |
} |
6616
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6583
diff
changeset
|
384 |
|
3694
3e9c0634065c
new quality slider widget (needs to be customized), removed obsolete arguments
koda
parents:
3690
diff
changeset
|
385 |
return result; |
1812 | 386 |
} |
3694
3e9c0634065c
new quality slider widget (needs to be customized), removed obsolete arguments
koda
parents:
3690
diff
changeset
|
387 |
|
2098
c977d7f2aa09
Toggle for stars ("frontend effects") - also turns off optimisations for stars that were causing problems onone machine
nemo
parents:
1812
diff
changeset
|
388 |
bool GameUIConfig::isFrontendEffects() const |
c977d7f2aa09
Toggle for stars ("frontend effects") - also turns off optimisations for stars that were causing problems onone machine
nemo
parents:
1812
diff
changeset
|
389 |
{ |
6616
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6583
diff
changeset
|
390 |
return Form->ui.pageOptions->CBFrontendEffects->isChecked(); |
2098
c977d7f2aa09
Toggle for stars ("frontend effects") - also turns off optimisations for stars that were causing problems onone machine
nemo
parents:
1812
diff
changeset
|
391 |
} |
1812 | 392 |
|
1162 | 393 |
bool GameUIConfig::isFrontendFullscreen() const |
394 |
{ |
|
6616
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6583
diff
changeset
|
395 |
return Form->ui.pageOptions->CBFrontendFullscreen->isChecked(); |
1162 | 396 |
} |
397 |
||
184 | 398 |
bool GameUIConfig::isSoundEnabled() |
399 |
{ |
|
8226
67f07ff5b593
Removed redundant "enable"s on checkboxes and variable names.
Mitchell Kember <mk12360@gmail.com>
parents:
8217
diff
changeset
|
400 |
return Form->ui.pageOptions->CBSound->isChecked(); |
184 | 401 |
} |
2776 | 402 |
bool GameUIConfig::isFrontendSoundEnabled() |
403 |
{ |
|
8226
67f07ff5b593
Removed redundant "enable"s on checkboxes and variable names.
Mitchell Kember <mk12360@gmail.com>
parents:
8217
diff
changeset
|
404 |
return Form->ui.pageOptions->CBFrontendSound->isChecked(); |
2776 | 405 |
} |
184 | 406 |
|
1129 | 407 |
bool GameUIConfig::isMusicEnabled() |
408 |
{ |
|
8226
67f07ff5b593
Removed redundant "enable"s on checkboxes and variable names.
Mitchell Kember <mk12360@gmail.com>
parents:
8217
diff
changeset
|
409 |
return Form->ui.pageOptions->CBMusic->isChecked(); |
1129 | 410 |
} |
2776 | 411 |
bool GameUIConfig::isFrontendMusicEnabled() |
412 |
{ |
|
8226
67f07ff5b593
Removed redundant "enable"s on checkboxes and variable names.
Mitchell Kember <mk12360@gmail.com>
parents:
8217
diff
changeset
|
413 |
return Form->ui.pageOptions->CBFrontendMusic->isChecked(); |
2776 | 414 |
} |
1129 | 415 |
|
297 | 416 |
bool GameUIConfig::isShowFPSEnabled() |
417 |
{ |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2913
diff
changeset
|
418 |
return Form->ui.pageOptions->CBShowFPS->isChecked(); |
297 | 419 |
} |
420 |
||
529 | 421 |
bool GameUIConfig::isAltDamageEnabled() |
422 |
{ |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2913
diff
changeset
|
423 |
return Form->ui.pageOptions->CBAltDamage->isChecked(); |
1487
b4cc59a6d50a
Add an option to name records with current date and time
unc0rr
parents:
1235
diff
changeset
|
424 |
} |
b4cc59a6d50a
Add an option to name records with current date and time
unc0rr
parents:
1235
diff
changeset
|
425 |
|
3696 | 426 |
quint32 GameUIConfig::stereoMode() const |
3691 | 427 |
{ |
3696 | 428 |
return Form->ui.pageOptions->CBStereoMode->currentIndex(); |
3691 | 429 |
} |
430 |
||
1487
b4cc59a6d50a
Add an option to name records with current date and time
unc0rr
parents:
1235
diff
changeset
|
431 |
bool GameUIConfig::appendDateTimeToRecordName() |
b4cc59a6d50a
Add an option to name records with current date and time
unc0rr
parents:
1235
diff
changeset
|
432 |
{ |
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2913
diff
changeset
|
433 |
return Form->ui.pageOptions->CBNameWithDate->isChecked(); |
529 | 434 |
} |
435 |
||
2395 | 436 |
#ifdef SPARKLE_ENABLED |
2261 | 437 |
bool GameUIConfig::isAutoUpdateEnabled() |
438 |
{ |
|
439 |
return Form->ui.pageOptions->CBAutoUpdate->isChecked(); |
|
440 |
} |
|
441 |
#endif |
|
442 |
||
297 | 443 |
quint8 GameUIConfig::timerInterval() |
444 |
{ |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2913
diff
changeset
|
445 |
return 35 - Form->ui.pageOptions->fpsedit->value(); |
297 | 446 |
} |
603 | 447 |
|
448 |
quint8 GameUIConfig::bitDepth() |
|
449 |
{ |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2913
diff
changeset
|
450 |
return depth; |
603 | 451 |
} |
949 | 452 |
|
453 |
QString GameUIConfig::netNick() |
|
454 |
{ |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2913
diff
changeset
|
455 |
return Form->ui.pageOptions->editNetNick->text(); |
949 | 456 |
} |
1777 | 457 |
|
5390
f41e87de8989
(fix issue 126) moved initial nickname popup to the netconnection page
koda
parents:
5262
diff
changeset
|
458 |
void GameUIConfig::updNetNick() |
f41e87de8989
(fix issue 126) moved initial nickname popup to the netconnection page
koda
parents:
5262
diff
changeset
|
459 |
{ |
f41e87de8989
(fix issue 126) moved initial nickname popup to the netconnection page
koda
parents:
5262
diff
changeset
|
460 |
Form->ui.pageOptions->editNetNick->setText(value("net/nick", "").toString()); |
f41e87de8989
(fix issue 126) moved initial nickname popup to the netconnection page
koda
parents:
5262
diff
changeset
|
461 |
} |
f41e87de8989
(fix issue 126) moved initial nickname popup to the netconnection page
koda
parents:
5262
diff
changeset
|
462 |
|
5229
148d581b17ab
Attempt to fix issue 125. The password pop-up doesn't appear every time when going into the official server anymore, now it only does it when the password is blank. If a user enters an invalid password, the password is set blank to avoid the user going back to the official server just to be rejected. When entering an invalid password, the unknown error dialog doesn't show up anymore, but the connection lost to server one still does. This fixes the bug where the user would be spammed with error messages. The user can also now change his password in the settings page.
Zorg <zorgiepoo@gmail.com>
parents:
5204
diff
changeset
|
463 |
QByteArray GameUIConfig::netPasswordHash() |
148d581b17ab
Attempt to fix issue 125. The password pop-up doesn't appear every time when going into the official server anymore, now it only does it when the password is blank. If a user enters an invalid password, the password is set blank to avoid the user going back to the official server just to be rejected. When entering an invalid password, the unknown error dialog doesn't show up anymore, but the connection lost to server one still does. This fixes the bug where the user would be spammed with error messages. The user can also now change his password in the settings page.
Zorg <zorgiepoo@gmail.com>
parents:
5204
diff
changeset
|
464 |
{ |
7313
162bc562335b
Use toUtf8 instead TODO - find out 'sactly what the website is using for hashes.
nemo
parents:
7153
diff
changeset
|
465 |
return QCryptographicHash::hash(Form->ui.pageOptions->editNetPassword->text().toUtf8(), QCryptographicHash::Md5).toHex(); |
5229
148d581b17ab
Attempt to fix issue 125. The password pop-up doesn't appear every time when going into the official server anymore, now it only does it when the password is blank. If a user enters an invalid password, the password is set blank to avoid the user going back to the official server just to be rejected. When entering an invalid password, the unknown error dialog doesn't show up anymore, but the connection lost to server one still does. This fixes the bug where the user would be spammed with error messages. The user can also now change his password in the settings page.
Zorg <zorgiepoo@gmail.com>
parents:
5204
diff
changeset
|
466 |
} |
148d581b17ab
Attempt to fix issue 125. The password pop-up doesn't appear every time when going into the official server anymore, now it only does it when the password is blank. If a user enters an invalid password, the password is set blank to avoid the user going back to the official server just to be rejected. When entering an invalid password, the unknown error dialog doesn't show up anymore, but the connection lost to server one still does. This fixes the bug where the user would be spammed with error messages. The user can also now change his password in the settings page.
Zorg <zorgiepoo@gmail.com>
parents:
5204
diff
changeset
|
467 |
|
148d581b17ab
Attempt to fix issue 125. The password pop-up doesn't appear every time when going into the official server anymore, now it only does it when the password is blank. If a user enters an invalid password, the password is set blank to avoid the user going back to the official server just to be rejected. When entering an invalid password, the unknown error dialog doesn't show up anymore, but the connection lost to server one still does. This fixes the bug where the user would be spammed with error messages. The user can also now change his password in the settings page.
Zorg <zorgiepoo@gmail.com>
parents:
5204
diff
changeset
|
468 |
int GameUIConfig::netPasswordLength() |
148d581b17ab
Attempt to fix issue 125. The password pop-up doesn't appear every time when going into the official server anymore, now it only does it when the password is blank. If a user enters an invalid password, the password is set blank to avoid the user going back to the official server just to be rejected. When entering an invalid password, the unknown error dialog doesn't show up anymore, but the connection lost to server one still does. This fixes the bug where the user would be spammed with error messages. The user can also now change his password in the settings page.
Zorg <zorgiepoo@gmail.com>
parents:
5204
diff
changeset
|
469 |
{ |
148d581b17ab
Attempt to fix issue 125. The password pop-up doesn't appear every time when going into the official server anymore, now it only does it when the password is blank. If a user enters an invalid password, the password is set blank to avoid the user going back to the official server just to be rejected. When entering an invalid password, the unknown error dialog doesn't show up anymore, but the connection lost to server one still does. This fixes the bug where the user would be spammed with error messages. The user can also now change his password in the settings page.
Zorg <zorgiepoo@gmail.com>
parents:
5204
diff
changeset
|
470 |
return Form->ui.pageOptions->editNetPassword->text().size(); |
148d581b17ab
Attempt to fix issue 125. The password pop-up doesn't appear every time when going into the official server anymore, now it only does it when the password is blank. If a user enters an invalid password, the password is set blank to avoid the user going back to the official server just to be rejected. When entering an invalid password, the unknown error dialog doesn't show up anymore, but the connection lost to server one still does. This fixes the bug where the user would be spammed with error messages. The user can also now change his password in the settings page.
Zorg <zorgiepoo@gmail.com>
parents:
5204
diff
changeset
|
471 |
} |
148d581b17ab
Attempt to fix issue 125. The password pop-up doesn't appear every time when going into the official server anymore, now it only does it when the password is blank. If a user enters an invalid password, the password is set blank to avoid the user going back to the official server just to be rejected. When entering an invalid password, the unknown error dialog doesn't show up anymore, but the connection lost to server one still does. This fixes the bug where the user would be spammed with error messages. The user can also now change his password in the settings page.
Zorg <zorgiepoo@gmail.com>
parents:
5204
diff
changeset
|
472 |
|
148d581b17ab
Attempt to fix issue 125. The password pop-up doesn't appear every time when going into the official server anymore, now it only does it when the password is blank. If a user enters an invalid password, the password is set blank to avoid the user going back to the official server just to be rejected. When entering an invalid password, the unknown error dialog doesn't show up anymore, but the connection lost to server one still does. This fixes the bug where the user would be spammed with error messages. The user can also now change his password in the settings page.
Zorg <zorgiepoo@gmail.com>
parents:
5204
diff
changeset
|
473 |
bool GameUIConfig::netPasswordIsValid() |
148d581b17ab
Attempt to fix issue 125. The password pop-up doesn't appear every time when going into the official server anymore, now it only does it when the password is blank. If a user enters an invalid password, the password is set blank to avoid the user going back to the official server just to be rejected. When entering an invalid password, the unknown error dialog doesn't show up anymore, but the connection lost to server one still does. This fixes the bug where the user would be spammed with error messages. The user can also now change his password in the settings page.
Zorg <zorgiepoo@gmail.com>
parents:
5204
diff
changeset
|
474 |
{ |
8179
a1ffcb559f99
Refactor: get rid of excessive QSettings instances on the same poor hedgewars.ini file
unc0rr
parents:
8098
diff
changeset
|
475 |
return (netPasswordLength() == 0 || Form->ui.pageOptions->editNetPassword->text() != QString(netPasswordLength(), '*')); |
5229
148d581b17ab
Attempt to fix issue 125. The password pop-up doesn't appear every time when going into the official server anymore, now it only does it when the password is blank. If a user enters an invalid password, the password is set blank to avoid the user going back to the official server just to be rejected. When entering an invalid password, the unknown error dialog doesn't show up anymore, but the connection lost to server one still does. This fixes the bug where the user would be spammed with error messages. The user can also now change his password in the settings page.
Zorg <zorgiepoo@gmail.com>
parents:
5204
diff
changeset
|
476 |
} |
148d581b17ab
Attempt to fix issue 125. The password pop-up doesn't appear every time when going into the official server anymore, now it only does it when the password is blank. If a user enters an invalid password, the password is set blank to avoid the user going back to the official server just to be rejected. When entering an invalid password, the unknown error dialog doesn't show up anymore, but the connection lost to server one still does. This fixes the bug where the user would be spammed with error messages. The user can also now change his password in the settings page.
Zorg <zorgiepoo@gmail.com>
parents:
5204
diff
changeset
|
477 |
|
5260
f50f620771ee
When the password field is filled with null characters and when the user tries to edit the field, clear it.
Zorg <zorgiepoo@gmail.com>
parents:
5252
diff
changeset
|
478 |
// When hedgewars launches, the password field is set with null characters. If the user tries to edit the field and there are such characters, then clear the field |
f50f620771ee
When the password field is filled with null characters and when the user tries to edit the field, clear it.
Zorg <zorgiepoo@gmail.com>
parents:
5252
diff
changeset
|
479 |
bool GameUIConfig::eventFilter(QObject *object, QEvent *event) |
f50f620771ee
When the password field is filled with null characters and when the user tries to edit the field, clear it.
Zorg <zorgiepoo@gmail.com>
parents:
5252
diff
changeset
|
480 |
{ |
f50f620771ee
When the password field is filled with null characters and when the user tries to edit the field, clear it.
Zorg <zorgiepoo@gmail.com>
parents:
5252
diff
changeset
|
481 |
if (event->type() == QEvent::FocusIn) |
f50f620771ee
When the password field is filled with null characters and when the user tries to edit the field, clear it.
Zorg <zorgiepoo@gmail.com>
parents:
5252
diff
changeset
|
482 |
{ |
f50f620771ee
When the password field is filled with null characters and when the user tries to edit the field, clear it.
Zorg <zorgiepoo@gmail.com>
parents:
5252
diff
changeset
|
483 |
if ((QLineEdit *)object == Form->ui.pageOptions->editNetPassword) |
f50f620771ee
When the password field is filled with null characters and when the user tries to edit the field, clear it.
Zorg <zorgiepoo@gmail.com>
parents:
5252
diff
changeset
|
484 |
{ |
f50f620771ee
When the password field is filled with null characters and when the user tries to edit the field, clear it.
Zorg <zorgiepoo@gmail.com>
parents:
5252
diff
changeset
|
485 |
if (!netPasswordIsValid()) |
f50f620771ee
When the password field is filled with null characters and when the user tries to edit the field, clear it.
Zorg <zorgiepoo@gmail.com>
parents:
5252
diff
changeset
|
486 |
{ |
f50f620771ee
When the password field is filled with null characters and when the user tries to edit the field, clear it.
Zorg <zorgiepoo@gmail.com>
parents:
5252
diff
changeset
|
487 |
Form->ui.pageOptions->editNetPassword->clear(); |
f50f620771ee
When the password field is filled with null characters and when the user tries to edit the field, clear it.
Zorg <zorgiepoo@gmail.com>
parents:
5252
diff
changeset
|
488 |
} |
f50f620771ee
When the password field is filled with null characters and when the user tries to edit the field, clear it.
Zorg <zorgiepoo@gmail.com>
parents:
5252
diff
changeset
|
489 |
} |
f50f620771ee
When the password field is filled with null characters and when the user tries to edit the field, clear it.
Zorg <zorgiepoo@gmail.com>
parents:
5252
diff
changeset
|
490 |
} |
6616
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6583
diff
changeset
|
491 |
|
5260
f50f620771ee
When the password field is filled with null characters and when the user tries to edit the field, clear it.
Zorg <zorgiepoo@gmail.com>
parents:
5252
diff
changeset
|
492 |
// Don't filter anything |
f50f620771ee
When the password field is filled with null characters and when the user tries to edit the field, clear it.
Zorg <zorgiepoo@gmail.com>
parents:
5252
diff
changeset
|
493 |
return false; |
f50f620771ee
When the password field is filled with null characters and when the user tries to edit the field, clear it.
Zorg <zorgiepoo@gmail.com>
parents:
5252
diff
changeset
|
494 |
} |
f50f620771ee
When the password field is filled with null characters and when the user tries to edit the field, clear it.
Zorg <zorgiepoo@gmail.com>
parents:
5252
diff
changeset
|
495 |
|
5229
148d581b17ab
Attempt to fix issue 125. The password pop-up doesn't appear every time when going into the official server anymore, now it only does it when the password is blank. If a user enters an invalid password, the password is set blank to avoid the user going back to the official server just to be rejected. When entering an invalid password, the unknown error dialog doesn't show up anymore, but the connection lost to server one still does. This fixes the bug where the user would be spammed with error messages. The user can also now change his password in the settings page.
Zorg <zorgiepoo@gmail.com>
parents:
5204
diff
changeset
|
496 |
void GameUIConfig::setNetPasswordLength(int passwordLength) |
148d581b17ab
Attempt to fix issue 125. The password pop-up doesn't appear every time when going into the official server anymore, now it only does it when the password is blank. If a user enters an invalid password, the password is set blank to avoid the user going back to the official server just to be rejected. When entering an invalid password, the unknown error dialog doesn't show up anymore, but the connection lost to server one still does. This fixes the bug where the user would be spammed with error messages. The user can also now change his password in the settings page.
Zorg <zorgiepoo@gmail.com>
parents:
5204
diff
changeset
|
497 |
{ |
148d581b17ab
Attempt to fix issue 125. The password pop-up doesn't appear every time when going into the official server anymore, now it only does it when the password is blank. If a user enters an invalid password, the password is set blank to avoid the user going back to the official server just to be rejected. When entering an invalid password, the unknown error dialog doesn't show up anymore, but the connection lost to server one still does. This fixes the bug where the user would be spammed with error messages. The user can also now change his password in the settings page.
Zorg <zorgiepoo@gmail.com>
parents:
5204
diff
changeset
|
498 |
if (passwordLength > 0) |
148d581b17ab
Attempt to fix issue 125. The password pop-up doesn't appear every time when going into the official server anymore, now it only does it when the password is blank. If a user enters an invalid password, the password is set blank to avoid the user going back to the official server just to be rejected. When entering an invalid password, the unknown error dialog doesn't show up anymore, but the connection lost to server one still does. This fixes the bug where the user would be spammed with error messages. The user can also now change his password in the settings page.
Zorg <zorgiepoo@gmail.com>
parents:
5204
diff
changeset
|
499 |
{ |
8179
a1ffcb559f99
Refactor: get rid of excessive QSettings instances on the same poor hedgewars.ini file
unc0rr
parents:
8098
diff
changeset
|
500 |
Form->ui.pageOptions->editNetPassword->setText(QString(passwordLength, '*')); |
5229
148d581b17ab
Attempt to fix issue 125. The password pop-up doesn't appear every time when going into the official server anymore, now it only does it when the password is blank. If a user enters an invalid password, the password is set blank to avoid the user going back to the official server just to be rejected. When entering an invalid password, the unknown error dialog doesn't show up anymore, but the connection lost to server one still does. This fixes the bug where the user would be spammed with error messages. The user can also now change his password in the settings page.
Zorg <zorgiepoo@gmail.com>
parents:
5204
diff
changeset
|
501 |
} |
148d581b17ab
Attempt to fix issue 125. The password pop-up doesn't appear every time when going into the official server anymore, now it only does it when the password is blank. If a user enters an invalid password, the password is set blank to avoid the user going back to the official server just to be rejected. When entering an invalid password, the unknown error dialog doesn't show up anymore, but the connection lost to server one still does. This fixes the bug where the user would be spammed with error messages. The user can also now change his password in the settings page.
Zorg <zorgiepoo@gmail.com>
parents:
5204
diff
changeset
|
502 |
else |
148d581b17ab
Attempt to fix issue 125. The password pop-up doesn't appear every time when going into the official server anymore, now it only does it when the password is blank. If a user enters an invalid password, the password is set blank to avoid the user going back to the official server just to be rejected. When entering an invalid password, the unknown error dialog doesn't show up anymore, but the connection lost to server one still does. This fixes the bug where the user would be spammed with error messages. The user can also now change his password in the settings page.
Zorg <zorgiepoo@gmail.com>
parents:
5204
diff
changeset
|
503 |
{ |
148d581b17ab
Attempt to fix issue 125. The password pop-up doesn't appear every time when going into the official server anymore, now it only does it when the password is blank. If a user enters an invalid password, the password is set blank to avoid the user going back to the official server just to be rejected. When entering an invalid password, the unknown error dialog doesn't show up anymore, but the connection lost to server one still does. This fixes the bug where the user would be spammed with error messages. The user can also now change his password in the settings page.
Zorg <zorgiepoo@gmail.com>
parents:
5204
diff
changeset
|
504 |
Form->ui.pageOptions->editNetPassword->setText(""); |
148d581b17ab
Attempt to fix issue 125. The password pop-up doesn't appear every time when going into the official server anymore, now it only does it when the password is blank. If a user enters an invalid password, the password is set blank to avoid the user going back to the official server just to be rejected. When entering an invalid password, the unknown error dialog doesn't show up anymore, but the connection lost to server one still does. This fixes the bug where the user would be spammed with error messages. The user can also now change his password in the settings page.
Zorg <zorgiepoo@gmail.com>
parents:
5204
diff
changeset
|
505 |
} |
148d581b17ab
Attempt to fix issue 125. The password pop-up doesn't appear every time when going into the official server anymore, now it only does it when the password is blank. If a user enters an invalid password, the password is set blank to avoid the user going back to the official server just to be rejected. When entering an invalid password, the unknown error dialog doesn't show up anymore, but the connection lost to server one still does. This fixes the bug where the user would be spammed with error messages. The user can also now change his password in the settings page.
Zorg <zorgiepoo@gmail.com>
parents:
5204
diff
changeset
|
506 |
} |
148d581b17ab
Attempt to fix issue 125. The password pop-up doesn't appear every time when going into the official server anymore, now it only does it when the password is blank. If a user enters an invalid password, the password is set blank to avoid the user going back to the official server just to be rejected. When entering an invalid password, the unknown error dialog doesn't show up anymore, but the connection lost to server one still does. This fixes the bug where the user would be spammed with error messages. The user can also now change his password in the settings page.
Zorg <zorgiepoo@gmail.com>
parents:
5204
diff
changeset
|
507 |
|
1777 | 508 |
quint8 GameUIConfig::volume() |
509 |
{ |
|
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents:
2913
diff
changeset
|
510 |
return Form->ui.pageOptions->volumeBox->value() * 128 / 100; |
1777 | 511 |
} |
7235
baa69bd025d9
1. Implement new page in frontend with options for video recording.
Stepan777 <stepik-777@mail.ru>
parents:
7153
diff
changeset
|
512 |
|
baa69bd025d9
1. Implement new page in frontend with options for video recording.
Stepan777 <stepik-777@mail.ru>
parents:
7153
diff
changeset
|
513 |
QString GameUIConfig::AVFormat() |
baa69bd025d9
1. Implement new page in frontend with options for video recording.
Stepan777 <stepik-777@mail.ru>
parents:
7153
diff
changeset
|
514 |
{ |
8151
25b95d6224fc
Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents:
8098
diff
changeset
|
515 |
return Form->ui.pageOptions->format(); |
7235
baa69bd025d9
1. Implement new page in frontend with options for video recording.
Stepan777 <stepik-777@mail.ru>
parents:
7153
diff
changeset
|
516 |
} |
baa69bd025d9
1. Implement new page in frontend with options for video recording.
Stepan777 <stepik-777@mail.ru>
parents:
7153
diff
changeset
|
517 |
|
baa69bd025d9
1. Implement new page in frontend with options for video recording.
Stepan777 <stepik-777@mail.ru>
parents:
7153
diff
changeset
|
518 |
QString GameUIConfig::videoCodec() |
baa69bd025d9
1. Implement new page in frontend with options for video recording.
Stepan777 <stepik-777@mail.ru>
parents:
7153
diff
changeset
|
519 |
{ |
8151
25b95d6224fc
Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents:
8098
diff
changeset
|
520 |
return Form->ui.pageOptions->videoCodec(); |
7235
baa69bd025d9
1. Implement new page in frontend with options for video recording.
Stepan777 <stepik-777@mail.ru>
parents:
7153
diff
changeset
|
521 |
} |
baa69bd025d9
1. Implement new page in frontend with options for video recording.
Stepan777 <stepik-777@mail.ru>
parents:
7153
diff
changeset
|
522 |
|
baa69bd025d9
1. Implement new page in frontend with options for video recording.
Stepan777 <stepik-777@mail.ru>
parents:
7153
diff
changeset
|
523 |
QString GameUIConfig::audioCodec() |
baa69bd025d9
1. Implement new page in frontend with options for video recording.
Stepan777 <stepik-777@mail.ru>
parents:
7153
diff
changeset
|
524 |
{ |
8151
25b95d6224fc
Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents:
8098
diff
changeset
|
525 |
return Form->ui.pageOptions->audioCodec(); |
7235
baa69bd025d9
1. Implement new page in frontend with options for video recording.
Stepan777 <stepik-777@mail.ru>
parents:
7153
diff
changeset
|
526 |
} |
baa69bd025d9
1. Implement new page in frontend with options for video recording.
Stepan777 <stepik-777@mail.ru>
parents:
7153
diff
changeset
|
527 |
|
baa69bd025d9
1. Implement new page in frontend with options for video recording.
Stepan777 <stepik-777@mail.ru>
parents:
7153
diff
changeset
|
528 |
QRect GameUIConfig::rec_Resolution() |
baa69bd025d9
1. Implement new page in frontend with options for video recording.
Stepan777 <stepik-777@mail.ru>
parents:
7153
diff
changeset
|
529 |
{ |
8151
25b95d6224fc
Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents:
8098
diff
changeset
|
530 |
if (Form->ui.pageOptions->checkUseGameRes->isChecked()) |
7235
baa69bd025d9
1. Implement new page in frontend with options for video recording.
Stepan777 <stepik-777@mail.ru>
parents:
7153
diff
changeset
|
531 |
return vid_Resolution(); |
baa69bd025d9
1. Implement new page in frontend with options for video recording.
Stepan777 <stepik-777@mail.ru>
parents:
7153
diff
changeset
|
532 |
QRect res(0,0,0,0); |
8151
25b95d6224fc
Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents:
8098
diff
changeset
|
533 |
res.setWidth(Form->ui.pageOptions->widthEdit->text().toUInt()); |
25b95d6224fc
Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents:
8098
diff
changeset
|
534 |
res.setHeight(Form->ui.pageOptions->heightEdit->text().toUInt()); |
7238 | 535 |
return res; |
7235
baa69bd025d9
1. Implement new page in frontend with options for video recording.
Stepan777 <stepik-777@mail.ru>
parents:
7153
diff
changeset
|
536 |
} |
baa69bd025d9
1. Implement new page in frontend with options for video recording.
Stepan777 <stepik-777@mail.ru>
parents:
7153
diff
changeset
|
537 |
|
baa69bd025d9
1. Implement new page in frontend with options for video recording.
Stepan777 <stepik-777@mail.ru>
parents:
7153
diff
changeset
|
538 |
int GameUIConfig::rec_Framerate() |
baa69bd025d9
1. Implement new page in frontend with options for video recording.
Stepan777 <stepik-777@mail.ru>
parents:
7153
diff
changeset
|
539 |
{ |
8186
4ff8690df1b0
unify default videorec values loading/reloading, fix setting index/value from previous commit
koda
parents:
8185
diff
changeset
|
540 |
// remove the "fps" label |
8190 | 541 |
QString fpsText = Form->ui.pageOptions->framerateBox->currentText(); |
8186
4ff8690df1b0
unify default videorec values loading/reloading, fix setting index/value from previous commit
koda
parents:
8185
diff
changeset
|
542 |
QStringList fpsList = fpsText.split(" "); |
4ff8690df1b0
unify default videorec values loading/reloading, fix setting index/value from previous commit
koda
parents:
8185
diff
changeset
|
543 |
return fpsList.first().toInt(); |
7235
baa69bd025d9
1. Implement new page in frontend with options for video recording.
Stepan777 <stepik-777@mail.ru>
parents:
7153
diff
changeset
|
544 |
} |
baa69bd025d9
1. Implement new page in frontend with options for video recording.
Stepan777 <stepik-777@mail.ru>
parents:
7153
diff
changeset
|
545 |
|
7633
d4251e519062
Allow adjusting bitrate so that I can get a somewhat usable webm video. The audio is still tinny and unlistenable. Configuration option for that might be helpful, or just adjusting defaults in the wrapper.
nemo
parents:
7565
diff
changeset
|
546 |
int GameUIConfig::rec_Bitrate() |
d4251e519062
Allow adjusting bitrate so that I can get a somewhat usable webm video. The audio is still tinny and unlistenable. Configuration option for that might be helpful, or just adjusting defaults in the wrapper.
nemo
parents:
7565
diff
changeset
|
547 |
{ |
8151
25b95d6224fc
Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents:
8098
diff
changeset
|
548 |
return Form->ui.pageOptions->bitrateBox->value(); |
7633
d4251e519062
Allow adjusting bitrate so that I can get a somewhat usable webm video. The audio is still tinny and unlistenable. Configuration option for that might be helpful, or just adjusting defaults in the wrapper.
nemo
parents:
7565
diff
changeset
|
549 |
} |
d4251e519062
Allow adjusting bitrate so that I can get a somewhat usable webm video. The audio is still tinny and unlistenable. Configuration option for that might be helpful, or just adjusting defaults in the wrapper.
nemo
parents:
7565
diff
changeset
|
550 |
|
7235
baa69bd025d9
1. Implement new page in frontend with options for video recording.
Stepan777 <stepik-777@mail.ru>
parents:
7153
diff
changeset
|
551 |
bool GameUIConfig::recordAudio() |
baa69bd025d9
1. Implement new page in frontend with options for video recording.
Stepan777 <stepik-777@mail.ru>
parents:
7153
diff
changeset
|
552 |
{ |
8151
25b95d6224fc
Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents:
8098
diff
changeset
|
553 |
return Form->ui.pageOptions->checkRecordAudio->isChecked(); |
7235
baa69bd025d9
1. Implement new page in frontend with options for video recording.
Stepan777 <stepik-777@mail.ru>
parents:
7153
diff
changeset
|
554 |
} |