QTfrontend/main.cpp
author unc0rr
Mon, 29 Sep 2008 22:14:23 +0000
changeset 1301 c6fe8a4bfd34
parent 1289 789db262d90d
child 1377 a9e768739345
permissions -rw-r--r--
Fix a bug screwing team selection up in network game (REMOVETEAM message doesn't have teamID, and after removing the team QMap still contains old info, when add and remove team with the same name, total hedgehogs number will be decreased by first team hh number)
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
579
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
     1
/*
1066
1f1b3686a2b0 Update copyright headers a bit
unc0rr
parents: 579
diff changeset
     2
 * Hedgewars, a free turn based strategy game
579
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
     3
 * Copyright (c) 2005-2007 Andrey Korotaev <unC0Rr@gmail.com>
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
     4
 *
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
     5
 * This program is free software; you can redistribute it and/or modify
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
     6
 * it under the terms of the GNU General Public License as published by
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
     7
 * the Free Software Foundation; version 2 of the License
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
     8
 *
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
     9
 * This program is distributed in the hope that it will be useful,
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    10
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    11
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    12
 * GNU General Public License for more details.
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    13
 *
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    14
 * You should have received a copy of the GNU General Public License
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    15
 * along with this program; if not, write to the Free Software
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    16
 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    17
 */
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    18
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    19
#include <QApplication>
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    20
#include <QTranslator>
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    21
#include <QLocale>
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    22
#include <QMessageBox>
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    23
#include <QFileInfo>
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    24
#include <QDateTime>
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    25
#include <QTextStream>
1146
0bc17a69b3d8 Background for Hedgewars is ready
displacer
parents: 1066
diff changeset
    26
#include <QDesktopWidget>
0bc17a69b3d8 Background for Hedgewars is ready
displacer
parents: 1066
diff changeset
    27
579
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    28
#include "hwform.h"
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    29
#include "hwconsts.h"
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    30
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    31
bool checkForDir(const QString & dir)
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    32
{
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    33
	QDir tmpdir;
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    34
	if (!tmpdir.exists(dir))
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    35
		if (!tmpdir.mkdir(dir))
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    36
		{
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    37
			QMessageBox::critical(0,
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    38
					QObject::tr("Error"),
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    39
					QObject::tr("Cannot create directory %1").arg(dir),
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    40
					QObject::tr("OK"));
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    41
			return false;
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    42
		}
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    43
	return true;
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    44
}
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    45
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    46
int main(int argc, char *argv[])
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    47
{
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    48
	QApplication app(argc, argv);
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    49
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    50
	QDateTime now = QDateTime::currentDateTime();
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    51
	QDateTime zero;
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    52
	srand(now.secsTo(zero));
1215
0c1c294c0f7e Themes list now works
unc0rr
parents: 1214
diff changeset
    53
	rand();
579
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    54
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    55
	Q_INIT_RESOURCE(hedgewars);
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    56
1146
0bc17a69b3d8 Background for Hedgewars is ready
displacer
parents: 1066
diff changeset
    57
	qApp->setStyleSheet
1152
c72b939c00df Make buttons border have different colors when mouse is over or it is pressed
unc0rr
parents: 1150
diff changeset
    58
		(QString(
1219
89babaafe99d Make dialogs and messageboxes be customized like main form
unc0rr
parents: 1217
diff changeset
    59
			"HWForm,QDialog{"
1152
c72b939c00df Make buttons border have different colors when mouse is over or it is pressed
unc0rr
parents: 1150
diff changeset
    60
				"background-image: url(\":/res/Background.png\");"
c72b939c00df Make buttons border have different colors when mouse is over or it is pressed
unc0rr
parents: 1150
diff changeset
    61
				"background-position: bottom center;"
c72b939c00df Make buttons border have different colors when mouse is over or it is pressed
unc0rr
parents: 1150
diff changeset
    62
				"background-repeat: repeat-x;"
c72b939c00df Make buttons border have different colors when mouse is over or it is pressed
unc0rr
parents: 1150
diff changeset
    63
				"background-color: #870c8f;"
c72b939c00df Make buttons border have different colors when mouse is over or it is pressed
unc0rr
parents: 1150
diff changeset
    64
				"}"
1154
03cc0ab9c013 Customize comboboxes look
unc0rr
parents: 1153
diff changeset
    65
03cc0ab9c013 Customize comboboxes look
unc0rr
parents: 1153
diff changeset
    66
			"QPushButton{"
1152
c72b939c00df Make buttons border have different colors when mouse is over or it is pressed
unc0rr
parents: 1150
diff changeset
    67
				"border: solid;"
1214
090f94cd663e - Make border 3px width
unc0rr
parents: 1211
diff changeset
    68
				"border-width: 3px;"
1157
c2e02c52dcad Try to modify QGroupBox view
unc0rr
parents: 1155
diff changeset
    69
				"border-radius: 10px;"
1214
090f94cd663e - Make border 3px width
unc0rr
parents: 1211
diff changeset
    70
				"border-color: #ffcc00;"
1168
f3c68684ef88 Finally fix save button look
unc0rr
parents: 1167
diff changeset
    71
				"background-origin: margin;"
f3c68684ef88 Finally fix save button look
unc0rr
parents: 1167
diff changeset
    72
				"background-position: top left;"
1167
2aa93ec4718b Set bg color for QPushButton
unc0rr
parents: 1161
diff changeset
    73
				"background-color: #00351d;"
1214
090f94cd663e - Make border 3px width
unc0rr
parents: 1211
diff changeset
    74
				"color: #ffcc00;"
1152
c72b939c00df Make buttons border have different colors when mouse is over or it is pressed
unc0rr
parents: 1150
diff changeset
    75
				"}"
1153
825931b81ad4 Iconed "Back" button everywhere
unc0rr
parents: 1152
diff changeset
    76
				"QPushButton:hover{"
1152
c72b939c00df Make buttons border have different colors when mouse is over or it is pressed
unc0rr
parents: 1150
diff changeset
    77
				"border-color: yellow;"
c72b939c00df Make buttons border have different colors when mouse is over or it is pressed
unc0rr
parents: 1150
diff changeset
    78
				"}"
1153
825931b81ad4 Iconed "Back" button everywhere
unc0rr
parents: 1152
diff changeset
    79
				"QPushButton:pressed{"
1152
c72b939c00df Make buttons border have different colors when mouse is over or it is pressed
unc0rr
parents: 1150
diff changeset
    80
				"border-color: white;"
c72b939c00df Make buttons border have different colors when mouse is over or it is pressed
unc0rr
parents: 1150
diff changeset
    81
				"}"
1154
03cc0ab9c013 Customize comboboxes look
unc0rr
parents: 1153
diff changeset
    82
1160
216dc01354a2 Customize LineEdit look
unc0rr
parents: 1157
diff changeset
    83
			"QLineEdit{"
216dc01354a2 Customize LineEdit look
unc0rr
parents: 1157
diff changeset
    84
				"border: solid;"
1214
090f94cd663e - Make border 3px width
unc0rr
parents: 1211
diff changeset
    85
				"border-width: 3px;"
1160
216dc01354a2 Customize LineEdit look
unc0rr
parents: 1157
diff changeset
    86
				"border-radius: 12px;"
1214
090f94cd663e - Make border 3px width
unc0rr
parents: 1211
diff changeset
    87
				"border-color: #ffcc00;"
1160
216dc01354a2 Customize LineEdit look
unc0rr
parents: 1157
diff changeset
    88
				"background-color: #0d0544;"
1214
090f94cd663e - Make border 3px width
unc0rr
parents: 1211
diff changeset
    89
				"color: #ffcc00;"
1160
216dc01354a2 Customize LineEdit look
unc0rr
parents: 1157
diff changeset
    90
				"font: bold 14px;"
216dc01354a2 Customize LineEdit look
unc0rr
parents: 1157
diff changeset
    91
				"}"
216dc01354a2 Customize LineEdit look
unc0rr
parents: 1157
diff changeset
    92
			"QLineEdit:hover{"
216dc01354a2 Customize LineEdit look
unc0rr
parents: 1157
diff changeset
    93
				"border-color: yellow;"
216dc01354a2 Customize LineEdit look
unc0rr
parents: 1157
diff changeset
    94
				"}"
216dc01354a2 Customize LineEdit look
unc0rr
parents: 1157
diff changeset
    95
1172
8542fc1ff5cf Some more customizations
unc0rr
parents: 1171
diff changeset
    96
			"QLabel{"
1214
090f94cd663e - Make border 3px width
unc0rr
parents: 1211
diff changeset
    97
				"color: #ffcc00;"
1172
8542fc1ff5cf Some more customizations
unc0rr
parents: 1171
diff changeset
    98
				"font: bold 14px;"
8542fc1ff5cf Some more customizations
unc0rr
parents: 1171
diff changeset
    99
				"}"
8542fc1ff5cf Some more customizations
unc0rr
parents: 1171
diff changeset
   100
1171
ab9932feda49 - Start work on team select widget
unc0rr
parents: 1168
diff changeset
   101
			"QListWidget{"
ab9932feda49 - Start work on team select widget
unc0rr
parents: 1168
diff changeset
   102
				"border: solid;"
1214
090f94cd663e - Make border 3px width
unc0rr
parents: 1211
diff changeset
   103
				"border-width: 3px;"
1171
ab9932feda49 - Start work on team select widget
unc0rr
parents: 1168
diff changeset
   104
				"border-radius: 12px;"
1214
090f94cd663e - Make border 3px width
unc0rr
parents: 1211
diff changeset
   105
				"border-color: #ffcc00;"
1171
ab9932feda49 - Start work on team select widget
unc0rr
parents: 1168
diff changeset
   106
				"background-color: #0d0544;"
1211
94c4f20abdda Fill themes list with themes
unc0rr
parents: 1210
diff changeset
   107
//				"alternate-background-color: #2f213a;" //what's it?
1214
090f94cd663e - Make border 3px width
unc0rr
parents: 1211
diff changeset
   108
				"color: #ffcc00;"
1171
ab9932feda49 - Start work on team select widget
unc0rr
parents: 1168
diff changeset
   109
				"font: bold 14px;"
ab9932feda49 - Start work on team select widget
unc0rr
parents: 1168
diff changeset
   110
				"}"
ab9932feda49 - Start work on team select widget
unc0rr
parents: 1168
diff changeset
   111
			"QListWidget:hover{"
ab9932feda49 - Start work on team select widget
unc0rr
parents: 1168
diff changeset
   112
				"border-color: yellow;"
ab9932feda49 - Start work on team select widget
unc0rr
parents: 1168
diff changeset
   113
				"}"
1211
94c4f20abdda Fill themes list with themes
unc0rr
parents: 1210
diff changeset
   114
//			"QListWidget::item:alternate{"
94c4f20abdda Fill themes list with themes
unc0rr
parents: 1210
diff changeset
   115
//				"background: #2f213a;"
94c4f20abdda Fill themes list with themes
unc0rr
parents: 1210
diff changeset
   116
//				"}"
1171
ab9932feda49 - Start work on team select widget
unc0rr
parents: 1168
diff changeset
   117
1161
edf18b880beb Customize SpinBox look (not finished)
unc0rr
parents: 1160
diff changeset
   118
			"QSpinBox{"
edf18b880beb Customize SpinBox look (not finished)
unc0rr
parents: 1160
diff changeset
   119
				"border: solid;"
1214
090f94cd663e - Make border 3px width
unc0rr
parents: 1211
diff changeset
   120
				"border-width: 3px;"
1161
edf18b880beb Customize SpinBox look (not finished)
unc0rr
parents: 1160
diff changeset
   121
				"border-radius: 12px;"
1214
090f94cd663e - Make border 3px width
unc0rr
parents: 1211
diff changeset
   122
				"border-color: #ffcc00;"
1161
edf18b880beb Customize SpinBox look (not finished)
unc0rr
parents: 1160
diff changeset
   123
				"background-color: #0d0544;"
1214
090f94cd663e - Make border 3px width
unc0rr
parents: 1211
diff changeset
   124
				"color: #ffcc00;"
1161
edf18b880beb Customize SpinBox look (not finished)
unc0rr
parents: 1160
diff changeset
   125
				"font: bold 14px;"
edf18b880beb Customize SpinBox look (not finished)
unc0rr
parents: 1160
diff changeset
   126
				"}"
edf18b880beb Customize SpinBox look (not finished)
unc0rr
parents: 1160
diff changeset
   127
			"QSpinBox:hover{"
edf18b880beb Customize SpinBox look (not finished)
unc0rr
parents: 1160
diff changeset
   128
				"border-color: yellow;"
edf18b880beb Customize SpinBox look (not finished)
unc0rr
parents: 1160
diff changeset
   129
				"}"
1289
789db262d90d - Customize spinbox arrows
unc0rr
parents: 1252
diff changeset
   130
			"QSpinBox::up-button{"
789db262d90d - Customize spinbox arrows
unc0rr
parents: 1252
diff changeset
   131
				"background: transparent;"
789db262d90d - Customize spinbox arrows
unc0rr
parents: 1252
diff changeset
   132
				"width: 16px;"
789db262d90d - Customize spinbox arrows
unc0rr
parents: 1252
diff changeset
   133
				"height: 10px;"
789db262d90d - Customize spinbox arrows
unc0rr
parents: 1252
diff changeset
   134
				"}"
789db262d90d - Customize spinbox arrows
unc0rr
parents: 1252
diff changeset
   135
			"QSpinBox::up-arrow{"
789db262d90d - Customize spinbox arrows
unc0rr
parents: 1252
diff changeset
   136
				"image: url(\":/res/spin_up.png\");"
789db262d90d - Customize spinbox arrows
unc0rr
parents: 1252
diff changeset
   137
				//"width: 5px;"
789db262d90d - Customize spinbox arrows
unc0rr
parents: 1252
diff changeset
   138
				//"height: 5px;"
789db262d90d - Customize spinbox arrows
unc0rr
parents: 1252
diff changeset
   139
				"}"
789db262d90d - Customize spinbox arrows
unc0rr
parents: 1252
diff changeset
   140
			"QSpinBox::down-button{"
789db262d90d - Customize spinbox arrows
unc0rr
parents: 1252
diff changeset
   141
				"background: transparent;"
789db262d90d - Customize spinbox arrows
unc0rr
parents: 1252
diff changeset
   142
				"width: 16px;"
789db262d90d - Customize spinbox arrows
unc0rr
parents: 1252
diff changeset
   143
				"height: 10px;"
789db262d90d - Customize spinbox arrows
unc0rr
parents: 1252
diff changeset
   144
				"}"
789db262d90d - Customize spinbox arrows
unc0rr
parents: 1252
diff changeset
   145
			"QSpinBox::down-arrow{"
789db262d90d - Customize spinbox arrows
unc0rr
parents: 1252
diff changeset
   146
				"image: url(\":/res/spin_down.png\");"
789db262d90d - Customize spinbox arrows
unc0rr
parents: 1252
diff changeset
   147
				"}"
1161
edf18b880beb Customize SpinBox look (not finished)
unc0rr
parents: 1160
diff changeset
   148
1172
8542fc1ff5cf Some more customizations
unc0rr
parents: 1171
diff changeset
   149
			"QToolBox{"
8542fc1ff5cf Some more customizations
unc0rr
parents: 1171
diff changeset
   150
				"border: solid;"
1214
090f94cd663e - Make border 3px width
unc0rr
parents: 1211
diff changeset
   151
				"border-width: 3px;"
1172
8542fc1ff5cf Some more customizations
unc0rr
parents: 1171
diff changeset
   152
				"border-radius: 12px;"
1214
090f94cd663e - Make border 3px width
unc0rr
parents: 1211
diff changeset
   153
				"border-color: #ffcc00;"
1252
2e2719c0a397 - Reorganize headers according to Qt's style guide
unc0rr
parents: 1228
diff changeset
   154
				//"background-color: #0d0544;"
1172
8542fc1ff5cf Some more customizations
unc0rr
parents: 1171
diff changeset
   155
			"}"
8542fc1ff5cf Some more customizations
unc0rr
parents: 1171
diff changeset
   156
			"QToolBox::tab{"
1214
090f94cd663e - Make border 3px width
unc0rr
parents: 1211
diff changeset
   157
				"color: #ffcc00;"
1172
8542fc1ff5cf Some more customizations
unc0rr
parents: 1171
diff changeset
   158
				"font: bold 14px;"
8542fc1ff5cf Some more customizations
unc0rr
parents: 1171
diff changeset
   159
				"}"
8542fc1ff5cf Some more customizations
unc0rr
parents: 1171
diff changeset
   160
			"QToolBox:hover{"
8542fc1ff5cf Some more customizations
unc0rr
parents: 1171
diff changeset
   161
				"border-color: yellow;"
8542fc1ff5cf Some more customizations
unc0rr
parents: 1171
diff changeset
   162
				"}"
8542fc1ff5cf Some more customizations
unc0rr
parents: 1171
diff changeset
   163
1154
03cc0ab9c013 Customize comboboxes look
unc0rr
parents: 1153
diff changeset
   164
			"QComboBox{"
03cc0ab9c013 Customize comboboxes look
unc0rr
parents: 1153
diff changeset
   165
				"border: solid;"
1214
090f94cd663e - Make border 3px width
unc0rr
parents: 1211
diff changeset
   166
				"border-width: 3px;"
1161
edf18b880beb Customize SpinBox look (not finished)
unc0rr
parents: 1160
diff changeset
   167
				"border-radius: 15px;"
1214
090f94cd663e - Make border 3px width
unc0rr
parents: 1211
diff changeset
   168
				"border-color: #ffcc00;"
1154
03cc0ab9c013 Customize comboboxes look
unc0rr
parents: 1153
diff changeset
   169
				"background-color: #0d0544;"
1214
090f94cd663e - Make border 3px width
unc0rr
parents: 1211
diff changeset
   170
				"color: #ffcc00;"
1154
03cc0ab9c013 Customize comboboxes look
unc0rr
parents: 1153
diff changeset
   171
				"font: bold 14px;"
03cc0ab9c013 Customize comboboxes look
unc0rr
parents: 1153
diff changeset
   172
				"padding: 3px;"
03cc0ab9c013 Customize comboboxes look
unc0rr
parents: 1153
diff changeset
   173
//				"text-align: center;"
03cc0ab9c013 Customize comboboxes look
unc0rr
parents: 1153
diff changeset
   174
				"}"
03cc0ab9c013 Customize comboboxes look
unc0rr
parents: 1153
diff changeset
   175
			"QComboBox:hover{"
03cc0ab9c013 Customize comboboxes look
unc0rr
parents: 1153
diff changeset
   176
				"border-color: yellow;"
03cc0ab9c013 Customize comboboxes look
unc0rr
parents: 1153
diff changeset
   177
				"}"
03cc0ab9c013 Customize comboboxes look
unc0rr
parents: 1153
diff changeset
   178
			"QComboBox:pressed{"
03cc0ab9c013 Customize comboboxes look
unc0rr
parents: 1153
diff changeset
   179
				"border-color: white;"
03cc0ab9c013 Customize comboboxes look
unc0rr
parents: 1153
diff changeset
   180
				"}"
03cc0ab9c013 Customize comboboxes look
unc0rr
parents: 1153
diff changeset
   181
			"QComboBox::drop-down{"
03cc0ab9c013 Customize comboboxes look
unc0rr
parents: 1153
diff changeset
   182
				"border: transparent;"
03cc0ab9c013 Customize comboboxes look
unc0rr
parents: 1153
diff changeset
   183
				"width: 25px;"
03cc0ab9c013 Customize comboboxes look
unc0rr
parents: 1153
diff changeset
   184
				"}"
03cc0ab9c013 Customize comboboxes look
unc0rr
parents: 1153
diff changeset
   185
			"QComboBox::down-arrow {"
1155
ffd0a34171f1 Customize checkboxes
unc0rr
parents: 1154
diff changeset
   186
				"image: url(\":/res/dropdown.png\");"
1154
03cc0ab9c013 Customize comboboxes look
unc0rr
parents: 1153
diff changeset
   187
				"}"
03cc0ab9c013 Customize comboboxes look
unc0rr
parents: 1153
diff changeset
   188
			"QComboBox QAbstractItemView{"
03cc0ab9c013 Customize comboboxes look
unc0rr
parents: 1153
diff changeset
   189
				"border: solid transparent;"
1214
090f94cd663e - Make border 3px width
unc0rr
parents: 1211
diff changeset
   190
				"border-width: 3px;"
1157
c2e02c52dcad Try to modify QGroupBox view
unc0rr
parents: 1155
diff changeset
   191
				//"border-radius: 12px;" -- bad corners look
1214
090f94cd663e - Make border 3px width
unc0rr
parents: 1211
diff changeset
   192
				"border-color: #ffcc00;"
1154
03cc0ab9c013 Customize comboboxes look
unc0rr
parents: 1153
diff changeset
   193
				"background-color: #0d0544;"
1214
090f94cd663e - Make border 3px width
unc0rr
parents: 1211
diff changeset
   194
				"color: #ffcc00;"
1154
03cc0ab9c013 Customize comboboxes look
unc0rr
parents: 1153
diff changeset
   195
				"font: bold 14px;"
03cc0ab9c013 Customize comboboxes look
unc0rr
parents: 1153
diff changeset
   196
				"}"
1155
ffd0a34171f1 Customize checkboxes
unc0rr
parents: 1154
diff changeset
   197
1198
b600b0d9408c Reorganize widgets on options page
unc0rr
parents: 1197
diff changeset
   198
b600b0d9408c Reorganize widgets on options page
unc0rr
parents: 1197
diff changeset
   199
			"IconedGroupBox{"
b600b0d9408c Reorganize widgets on options page
unc0rr
parents: 1197
diff changeset
   200
				"border: solid;"
1214
090f94cd663e - Make border 3px width
unc0rr
parents: 1211
diff changeset
   201
				"border-width: 3px;"
1198
b600b0d9408c Reorganize widgets on options page
unc0rr
parents: 1197
diff changeset
   202
				"border-radius: 16px;"
1214
090f94cd663e - Make border 3px width
unc0rr
parents: 1211
diff changeset
   203
				"border-color: #ffcc00;"
1198
b600b0d9408c Reorganize widgets on options page
unc0rr
parents: 1197
diff changeset
   204
				"background-color: #130f2c;"
1214
090f94cd663e - Make border 3px width
unc0rr
parents: 1211
diff changeset
   205
				"color: #ffcc00;"
1198
b600b0d9408c Reorganize widgets on options page
unc0rr
parents: 1197
diff changeset
   206
				"font: bold 14px;"
1228
8fa4a7055aff - Update copyrights
unc0rr
parents: 1219
diff changeset
   207
				"padding: 2px;"
1198
b600b0d9408c Reorganize widgets on options page
unc0rr
parents: 1197
diff changeset
   208
				"}"
1217
d6d91eec00f2 Remake gamecfgwidget
unc0rr
parents: 1215
diff changeset
   209
			".QGroupBox,GameCFGWidget,TeamSelWidget{"
1197
0d935c599fa3 Add background to groupboxes
unc0rr
parents: 1195
diff changeset
   210
				"background-image: url(\":/res/panelbg.png\");"
0d935c599fa3 Add background to groupboxes
unc0rr
parents: 1195
diff changeset
   211
				"background-position: bottom center;"
0d935c599fa3 Add background to groupboxes
unc0rr
parents: 1195
diff changeset
   212
				"background-repeat: repeat-x;"
1155
ffd0a34171f1 Customize checkboxes
unc0rr
parents: 1154
diff changeset
   213
				"border: solid;"
1214
090f94cd663e - Make border 3px width
unc0rr
parents: 1211
diff changeset
   214
				"border-width: 3px;"
1155
ffd0a34171f1 Customize checkboxes
unc0rr
parents: 1154
diff changeset
   215
				"border-radius: 16px;"
1214
090f94cd663e - Make border 3px width
unc0rr
parents: 1211
diff changeset
   216
				"border-color: #ffcc00;"
1198
b600b0d9408c Reorganize widgets on options page
unc0rr
parents: 1197
diff changeset
   217
				"background-color: #040200;"
1199
543d1268847b More work on options page
unc0rr
parents: 1198
diff changeset
   218
				"padding: 6px;"
1214
090f94cd663e - Make border 3px width
unc0rr
parents: 1211
diff changeset
   219
				"color: #ffcc00;"
1155
ffd0a34171f1 Customize checkboxes
unc0rr
parents: 1154
diff changeset
   220
				"font: bold 14px;"
1209
7f6cb1d7be2a Start remaking multiplayer page
unc0rr
parents: 1201
diff changeset
   221
				//"margin-top: 24px;"
1201
4390e7343542 Move QGroupBox title a bit
unc0rr
parents: 1199
diff changeset
   222
				"}"
4390e7343542 Move QGroupBox title a bit
unc0rr
parents: 1199
diff changeset
   223
			".QGroupBox::title{"
4390e7343542 Move QGroupBox title a bit
unc0rr
parents: 1199
diff changeset
   224
				"subcontrol-origin: margin;"
4390e7343542 Move QGroupBox title a bit
unc0rr
parents: 1199
diff changeset
   225
				"subcontrol-position: top left;"
4390e7343542 Move QGroupBox title a bit
unc0rr
parents: 1199
diff changeset
   226
				//"padding-left: 82px;"
4390e7343542 Move QGroupBox title a bit
unc0rr
parents: 1199
diff changeset
   227
				//"padding-top: 26px;"
4390e7343542 Move QGroupBox title a bit
unc0rr
parents: 1199
diff changeset
   228
				"text-align: left;"
1155
ffd0a34171f1 Customize checkboxes
unc0rr
parents: 1154
diff changeset
   229
				"}"
ffd0a34171f1 Customize checkboxes
unc0rr
parents: 1154
diff changeset
   230
ffd0a34171f1 Customize checkboxes
unc0rr
parents: 1154
diff changeset
   231
			"QCheckBox{"
1214
090f94cd663e - Make border 3px width
unc0rr
parents: 1211
diff changeset
   232
				"color: #ffcc00;"
1155
ffd0a34171f1 Customize checkboxes
unc0rr
parents: 1154
diff changeset
   233
				"font: bold 14px;"
ffd0a34171f1 Customize checkboxes
unc0rr
parents: 1154
diff changeset
   234
				"}"
ffd0a34171f1 Customize checkboxes
unc0rr
parents: 1154
diff changeset
   235
			"QCheckBox::indicator:checked{"
ffd0a34171f1 Customize checkboxes
unc0rr
parents: 1154
diff changeset
   236
				"image: url(\":/res/checked.png\");"
ffd0a34171f1 Customize checkboxes
unc0rr
parents: 1154
diff changeset
   237
				"}"
ffd0a34171f1 Customize checkboxes
unc0rr
parents: 1154
diff changeset
   238
			"QCheckBox::indicator:unchecked{"
ffd0a34171f1 Customize checkboxes
unc0rr
parents: 1154
diff changeset
   239
				"image: url(\":/res/unchecked.png\");"
ffd0a34171f1 Customize checkboxes
unc0rr
parents: 1154
diff changeset
   240
				"}"
1172
8542fc1ff5cf Some more customizations
unc0rr
parents: 1171
diff changeset
   241
			
8542fc1ff5cf Some more customizations
unc0rr
parents: 1171
diff changeset
   242
			"QRadioButton{"
1214
090f94cd663e - Make border 3px width
unc0rr
parents: 1211
diff changeset
   243
				"color: #ffcc00;"
1172
8542fc1ff5cf Some more customizations
unc0rr
parents: 1171
diff changeset
   244
				"font: bold 14px;"
8542fc1ff5cf Some more customizations
unc0rr
parents: 1171
diff changeset
   245
				"}"
1252
2e2719c0a397 - Reorganize headers according to Qt's style guide
unc0rr
parents: 1228
diff changeset
   246
			
2e2719c0a397 - Reorganize headers according to Qt's style guide
unc0rr
parents: 1228
diff changeset
   247
			".QWidget{"
2e2719c0a397 - Reorganize headers according to Qt's style guide
unc0rr
parents: 1228
diff changeset
   248
				"background: transparent;"
2e2719c0a397 - Reorganize headers according to Qt's style guide
unc0rr
parents: 1228
diff changeset
   249
				"}"
2e2719c0a397 - Reorganize headers according to Qt's style guide
unc0rr
parents: 1228
diff changeset
   250
			".QTabWidget{"
2e2719c0a397 - Reorganize headers according to Qt's style guide
unc0rr
parents: 1228
diff changeset
   251
				//"background: transparent;"
2e2719c0a397 - Reorganize headers according to Qt's style guide
unc0rr
parents: 1228
diff changeset
   252
				"background-color: #130f2c;"
2e2719c0a397 - Reorganize headers according to Qt's style guide
unc0rr
parents: 1228
diff changeset
   253
				"}"
1152
c72b939c00df Make buttons border have different colors when mouse is over or it is pressed
unc0rr
parents: 1150
diff changeset
   254
			)
c72b939c00df Make buttons border have different colors when mouse is over or it is pressed
unc0rr
parents: 1150
diff changeset
   255
		);
1150
ae86e36dad2e - Make look better
unc0rr
parents: 1149
diff changeset
   256
579
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   257
	bindir->cd("bin"); // workaround over NSIS installer
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   258
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   259
	cfgdir->setPath(cfgdir->homePath());
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   260
	if (checkForDir(cfgdir->absolutePath() + "/.hedgewars"))
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   261
	{
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   262
		checkForDir(cfgdir->absolutePath() + "/.hedgewars/Demos");
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   263
		checkForDir(cfgdir->absolutePath() + "/.hedgewars/Saves");
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   264
	}
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   265
	cfgdir->cd(".hedgewars");
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   266
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   267
	datadir->cd(bindir->absolutePath());
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   268
	datadir->cd(*cDataDir);
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   269
	if(!datadir->cd("hedgewars/Data")) {
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   270
		QMessageBox::critical(0, QMessageBox::tr("Error"),
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   271
			QMessageBox::tr("Failed to open data directory:\n%1\n"
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   272
					"Please check your installation").
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   273
					arg(datadir->absolutePath()+"/hedgewars/Data"));
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   274
		return 1;
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   275
	}
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   276
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   277
	QTranslator Translator;
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   278
	Translator.load(datadir->absolutePath() + "/Locale/hedgewars_" + QLocale::system().name());
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   279
	app.installTranslator(&Translator);
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   280
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   281
	Themes = new QStringList();
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   282
	QFile themesfile(datadir->absolutePath() + "/Themes/themes.cfg");
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   283
	if (themesfile.open(QIODevice::ReadOnly)) {
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   284
		QTextStream stream(&themesfile);
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   285
		QString str;
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   286
		while (!stream.atEnd())
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   287
		{
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   288
			Themes->append(stream.readLine());
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   289
		}
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   290
		themesfile.close();
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   291
	} else {
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   292
		QMessageBox::critical(0, "Error", "Cannot access themes.cfg", "OK");
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   293
	}
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   294
1210
bfed1b89bc85 Add themes list to map selection widget
unc0rr
parents: 1209
diff changeset
   295
	QDir tmpdir;
bfed1b89bc85 Add themes list to map selection widget
unc0rr
parents: 1209
diff changeset
   296
	tmpdir.cd(datadir->absolutePath());
bfed1b89bc85 Add themes list to map selection widget
unc0rr
parents: 1209
diff changeset
   297
	tmpdir.cd("Maps");
bfed1b89bc85 Add themes list to map selection widget
unc0rr
parents: 1209
diff changeset
   298
	tmpdir.setFilter(QDir::Dirs | QDir::NoDotAndDotDot);
bfed1b89bc85 Add themes list to map selection widget
unc0rr
parents: 1209
diff changeset
   299
	mapList = new QStringList(tmpdir.entryList(QStringList("*")));
bfed1b89bc85 Add themes list to map selection widget
unc0rr
parents: 1209
diff changeset
   300
579
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   301
	HWForm *Form = new HWForm();
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   302
	Form->show();
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   303
	return app.exec();
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   304
}