QTfrontend/main.cpp
author unc0rr
Fri, 01 May 2009 09:01:44 +0000
changeset 2021 a591afb43768
parent 1969 3b04393b1291
child 2034 decdf48cffd7
permissions -rw-r--r--
Some changes in try to fix issue when you enter room with painted map, but frontend shows generated one (most probably bug is triggered by template filters) Untested.
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>
1416
60b86d6fe9ae Force plastique style, as others don't fully support stylesheets
unc0rr
parents: 1415
diff changeset
    23
#include <QPlastiqueStyle>
1146
0bc17a69b3d8 Background for Hedgewars is ready
displacer
parents: 1066
diff changeset
    24
579
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    25
#include "hwform.h"
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    26
#include "hwconsts.h"
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    27
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    28
bool checkForDir(const QString & dir)
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    29
{
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    30
	QDir tmpdir;
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    31
	if (!tmpdir.exists(dir))
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    32
		if (!tmpdir.mkdir(dir))
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    33
		{
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    34
			QMessageBox::critical(0,
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    35
					QObject::tr("Error"),
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    36
					QObject::tr("Cannot create directory %1").arg(dir),
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    37
					QObject::tr("OK"));
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    38
			return false;
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    39
		}
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    40
	return true;
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    41
}
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
int main(int argc, char *argv[])
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
	QApplication app(argc, argv);
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    46
1416
60b86d6fe9ae Force plastique style, as others don't fully support stylesheets
unc0rr
parents: 1415
diff changeset
    47
	app.setStyle(new QPlastiqueStyle);
60b86d6fe9ae Force plastique style, as others don't fully support stylesheets
unc0rr
parents: 1415
diff changeset
    48
	
579
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    49
	QDateTime now = QDateTime::currentDateTime();
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    50
	QDateTime zero;
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    51
	srand(now.secsTo(zero));
1215
0c1c294c0f7e Themes list now works
unc0rr
parents: 1214
diff changeset
    52
	rand();
579
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    53
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    54
	Q_INIT_RESOURCE(hedgewars);
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
    55
1146
0bc17a69b3d8 Background for Hedgewars is ready
displacer
parents: 1066
diff changeset
    56
	qApp->setStyleSheet
1152
c72b939c00df Make buttons border have different colors when mouse is over or it is pressed
unc0rr
parents: 1150
diff changeset
    57
		(QString(
1219
89babaafe99d Make dialogs and messageboxes be customized like main form
unc0rr
parents: 1217
diff changeset
    58
			"HWForm,QDialog{"
1152
c72b939c00df Make buttons border have different colors when mouse is over or it is pressed
unc0rr
parents: 1150
diff changeset
    59
				"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
    60
				"background-position: bottom center;"
c72b939c00df Make buttons border have different colors when mouse is over or it is pressed
unc0rr
parents: 1150
diff changeset
    61
				"background-repeat: repeat-x;"
c72b939c00df Make buttons border have different colors when mouse is over or it is pressed
unc0rr
parents: 1150
diff changeset
    62
				"background-color: #870c8f;"
c72b939c00df Make buttons border have different colors when mouse is over or it is pressed
unc0rr
parents: 1150
diff changeset
    63
				"}"
1154
03cc0ab9c013 Customize comboboxes look
unc0rr
parents: 1153
diff changeset
    64
1897
e9dcb47013c7 - Some style changes by nemo
unc0rr
parents: 1894
diff changeset
    65
			"* {"
1893
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
    66
				"color: #ffcc00;"
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
    67
			"}"
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
    68
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
    69
			"QLineEdit, QListWidget, QTableView, QTextBrowser, QSpinBox, QComboBox, "
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
    70
            "QComboBox QAbstractItemView, QMenu::item {"
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
    71
				"background-color: #0d0544;"
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
    72
			"}"
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
    73
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
    74
			"QPushButton, QListWidget, QTableView, QLineEdit, QHeaderView, "
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
    75
			"QTextBrowser, QSpinBox, QToolBox, QComboBox, "
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
    76
            "QComboBox QAbstractItemView, IconedGroupBox, "
1897
e9dcb47013c7 - Some style changes by nemo
unc0rr
parents: 1894
diff changeset
    77
			".QGroupBox, GameCFGWidget, TeamSelWidget, SelWeaponWidget, "
e9dcb47013c7 - Some style changes by nemo
unc0rr
parents: 1894
diff changeset
    78
            "QTabWidget::pane, QTabBar::tab {"
1152
c72b939c00df Make buttons border have different colors when mouse is over or it is pressed
unc0rr
parents: 1150
diff changeset
    79
				"border: solid;"
1214
090f94cd663e - Make border 3px width
unc0rr
parents: 1211
diff changeset
    80
				"border-width: 3px;"
1893
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
    81
				"border-color: #ffcc00;"
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
    82
			"}"
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
    83
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
    84
			"QPushButton:hover, QLineEdit:hover, QListWidget:hover, "
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
    85
			"QSpinBox:hover, QToolBox:hover, QComboBox:hover {"
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
    86
			    "border-color: yellow;"
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
    87
			"}"
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
    88
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
    89
			"QLineEdit, QListWidget,QTableView, QTextBrowser, "
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
    90
			"QSpinBox, QToolBox { "
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
    91
				"border-radius: 12px;"
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
    92
			"}"
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
    93
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
    94
			"QLineEdit, QLabel, QHeaderView, QListWidget, QTableView, "
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
    95
			"QSpinBox, QToolBox::tab, QComboBox, QComboBox QAbstractItemView, "
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
    96
			"IconedGroupBox, .QGroupBox, GameCFGWidget, TeamSelWidget, "
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
    97
            "SelWeaponWidget, QCheckBox, QRadioButton {"
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
    98
				"font: bold 14px;"
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
    99
			"}"
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
   100
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
   101
			".QGroupBox,GameCFGWidget,TeamSelWidget,SelWeaponWidget {"
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
   102
				"background-image: url(\":/res/panelbg.png\");"
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
   103
				"background-position: bottom center;"
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
   104
				"background-repeat: repeat-x;"
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
   105
				"border-radius: 16px;"
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
   106
				"background-color: #040200;"
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
   107
				"padding: 6px;"
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
   108
			"}"
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
   109
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
   110
			"IconedGroupBox, QTabWidget::pane, QTabBar::tab:selected, QToolBox::tab QWidget{"
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
   111
				"background-color: #130f2c;"
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
   112
			"}"
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
   113
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
   114
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
   115
			"QPushButton {"
1157
c2e02c52dcad Try to modify QGroupBox view
unc0rr
parents: 1155
diff changeset
   116
				"border-radius: 10px;"
1168
f3c68684ef88 Finally fix save button look
unc0rr
parents: 1167
diff changeset
   117
				"background-origin: margin;"
f3c68684ef88 Finally fix save button look
unc0rr
parents: 1167
diff changeset
   118
				"background-position: top left;"
1167
2aa93ec4718b Set bg color for QPushButton
unc0rr
parents: 1161
diff changeset
   119
				"background-color: #00351d;"
1893
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
   120
			"}"
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
   121
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
   122
			"QPushButton:pressed{"
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
   123
			    "border-color: white;"
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
   124
			"}"
1154
03cc0ab9c013 Customize comboboxes look
unc0rr
parents: 1153
diff changeset
   125
1893
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
   126
			"QHeaderView {"
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
   127
				"border-radius: 0;"
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
   128
				"border-width: 0;"
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
   129
				"border-bottom-width: 3px;"
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
   130
				"background-color: #00351d;"
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
   131
			"}"
1894
ba54441631da Rooms list colourizing patch by TheXception
unc0rr
parents: 1893
diff changeset
   132
			"QTableView {"
ba54441631da Rooms list colourizing patch by TheXception
unc0rr
parents: 1893
diff changeset
   133
				"alternate-background-color: #2f213a;"
ba54441631da Rooms list colourizing patch by TheXception
unc0rr
parents: 1893
diff changeset
   134
			"}"
1172
8542fc1ff5cf Some more customizations
unc0rr
parents: 1171
diff changeset
   135
1893
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
   136
            "QTabBar::tab {"
1897
e9dcb47013c7 - Some style changes by nemo
unc0rr
parents: 1894
diff changeset
   137
                 "border-bottom-width: 0;"
1893
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
   138
                 "border-radius: 0;"
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
   139
                 "border-top-left-radius: 6px;"
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
   140
                 "border-top-right-radius: 6px;"
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
   141
                 "padding: 3px;"
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
   142
            "}"
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
   143
            "QTabBar::tab:!selected {"
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
   144
                 "color: #0d0544;"
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
   145
                 "background-color: #ffcc00;"
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
   146
            "}"
1289
789db262d90d - Customize spinbox arrows
unc0rr
parents: 1252
diff changeset
   147
			"QSpinBox::up-button{"
789db262d90d - Customize spinbox arrows
unc0rr
parents: 1252
diff changeset
   148
				"background: transparent;"
789db262d90d - Customize spinbox arrows
unc0rr
parents: 1252
diff changeset
   149
				"width: 16px;"
789db262d90d - Customize spinbox arrows
unc0rr
parents: 1252
diff changeset
   150
				"height: 10px;"
1893
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
   151
			"}"
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
   152
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
   153
			"QSpinBox::up-arrow {"
1289
789db262d90d - Customize spinbox arrows
unc0rr
parents: 1252
diff changeset
   154
				"image: url(\":/res/spin_up.png\");"
1893
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
   155
			"}"
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
   156
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
   157
			"QSpinBox::down-arrow {"
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
   158
				"image: url(\":/res/spin_down.png\");"
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
   159
			"}"
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
   160
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
   161
			"QSpinBox::down-button {"
1289
789db262d90d - Customize spinbox arrows
unc0rr
parents: 1252
diff changeset
   162
				"background: transparent;"
789db262d90d - Customize spinbox arrows
unc0rr
parents: 1252
diff changeset
   163
				"width: 16px;"
789db262d90d - Customize spinbox arrows
unc0rr
parents: 1252
diff changeset
   164
				"height: 10px;"
1172
8542fc1ff5cf Some more customizations
unc0rr
parents: 1171
diff changeset
   165
			"}"
8542fc1ff5cf Some more customizations
unc0rr
parents: 1171
diff changeset
   166
1893
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
   167
			"QComboBox {"
1161
edf18b880beb Customize SpinBox look (not finished)
unc0rr
parents: 1160
diff changeset
   168
				"border-radius: 15px;"
1154
03cc0ab9c013 Customize comboboxes look
unc0rr
parents: 1153
diff changeset
   169
				"padding: 3px;"
1893
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
   170
			"}"
1154
03cc0ab9c013 Customize comboboxes look
unc0rr
parents: 1153
diff changeset
   171
			"QComboBox:pressed{"
03cc0ab9c013 Customize comboboxes look
unc0rr
parents: 1153
diff changeset
   172
				"border-color: white;"
1893
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
   173
			"}"
1154
03cc0ab9c013 Customize comboboxes look
unc0rr
parents: 1153
diff changeset
   174
			"QComboBox::drop-down{"
03cc0ab9c013 Customize comboboxes look
unc0rr
parents: 1153
diff changeset
   175
				"border: transparent;"
03cc0ab9c013 Customize comboboxes look
unc0rr
parents: 1153
diff changeset
   176
				"width: 25px;"
1893
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
   177
			"}"
1154
03cc0ab9c013 Customize comboboxes look
unc0rr
parents: 1153
diff changeset
   178
			"QComboBox::down-arrow {"
1155
ffd0a34171f1 Customize checkboxes
unc0rr
parents: 1154
diff changeset
   179
				"image: url(\":/res/dropdown.png\");"
1893
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
   180
			"}"
1425
7ee750565e2d Add background image to team select widget
unc0rr
parents: 1418
diff changeset
   181
			
1893
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
   182
			"VertScrArea {"
1425
7ee750565e2d Add background image to team select widget
unc0rr
parents: 1418
diff changeset
   183
				"background-image: url(\":/res/panelbg.png\");"
7ee750565e2d Add background image to team select widget
unc0rr
parents: 1418
diff changeset
   184
				"background-position: bottom center;"
7ee750565e2d Add background image to team select widget
unc0rr
parents: 1418
diff changeset
   185
				"background-repeat: repeat-x;"
1893
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
   186
			"}"
1425
7ee750565e2d Add background image to team select widget
unc0rr
parents: 1418
diff changeset
   187
			
1893
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
   188
			"IconedGroupBox {"
1198
b600b0d9408c Reorganize widgets on options page
unc0rr
parents: 1197
diff changeset
   189
				"border-radius: 16px;"
1228
8fa4a7055aff - Update copyrights
unc0rr
parents: 1219
diff changeset
   190
				"padding: 2px;"
1893
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
   191
			"}"
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
   192
1201
4390e7343542 Move QGroupBox title a bit
unc0rr
parents: 1199
diff changeset
   193
			".QGroupBox::title{"
4390e7343542 Move QGroupBox title a bit
unc0rr
parents: 1199
diff changeset
   194
				"subcontrol-origin: margin;"
4390e7343542 Move QGroupBox title a bit
unc0rr
parents: 1199
diff changeset
   195
				"subcontrol-position: top left;"
4390e7343542 Move QGroupBox title a bit
unc0rr
parents: 1199
diff changeset
   196
				//"padding-left: 82px;"
4390e7343542 Move QGroupBox title a bit
unc0rr
parents: 1199
diff changeset
   197
				//"padding-top: 26px;"
4390e7343542 Move QGroupBox title a bit
unc0rr
parents: 1199
diff changeset
   198
				"text-align: left;"
1155
ffd0a34171f1 Customize checkboxes
unc0rr
parents: 1154
diff changeset
   199
				"}"
ffd0a34171f1 Customize checkboxes
unc0rr
parents: 1154
diff changeset
   200
ffd0a34171f1 Customize checkboxes
unc0rr
parents: 1154
diff changeset
   201
			"QCheckBox::indicator:checked{"
ffd0a34171f1 Customize checkboxes
unc0rr
parents: 1154
diff changeset
   202
				"image: url(\":/res/checked.png\");"
ffd0a34171f1 Customize checkboxes
unc0rr
parents: 1154
diff changeset
   203
				"}"
ffd0a34171f1 Customize checkboxes
unc0rr
parents: 1154
diff changeset
   204
			"QCheckBox::indicator:unchecked{"
ffd0a34171f1 Customize checkboxes
unc0rr
parents: 1154
diff changeset
   205
				"image: url(\":/res/unchecked.png\");"
ffd0a34171f1 Customize checkboxes
unc0rr
parents: 1154
diff changeset
   206
				"}"
1172
8542fc1ff5cf Some more customizations
unc0rr
parents: 1171
diff changeset
   207
			
1252
2e2719c0a397 - Reorganize headers according to Qt's style guide
unc0rr
parents: 1228
diff changeset
   208
			".QWidget{"
2e2719c0a397 - Reorganize headers according to Qt's style guide
unc0rr
parents: 1228
diff changeset
   209
				"background: transparent;"
2e2719c0a397 - Reorganize headers according to Qt's style guide
unc0rr
parents: 1228
diff changeset
   210
				"}"
1893
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
   211
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
   212
			"QTabWidget::pane {"
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
   213
                "border-top-width: 2px;"
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
   214
			"}"
1413
6393a1d5ac18 Customize menu look
unc0rr
parents: 1390
diff changeset
   215
6393a1d5ac18 Customize menu look
unc0rr
parents: 1390
diff changeset
   216
			"QMenu{"
6393a1d5ac18 Customize menu look
unc0rr
parents: 1390
diff changeset
   217
				"background-color: #ffcc00;"
6393a1d5ac18 Customize menu look
unc0rr
parents: 1390
diff changeset
   218
				"margin: 3px;"
1893
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
   219
			"}"
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
   220
			"QMenu::item {"
1413
6393a1d5ac18 Customize menu look
unc0rr
parents: 1390
diff changeset
   221
				"background-color: #0d0544;"
6393a1d5ac18 Customize menu look
unc0rr
parents: 1390
diff changeset
   222
				"border: 1px solid transparent;"
6393a1d5ac18 Customize menu look
unc0rr
parents: 1390
diff changeset
   223
				"font: bold;"
6393a1d5ac18 Customize menu look
unc0rr
parents: 1390
diff changeset
   224
				"padding: 2px 25px 2px 20px;"
1893
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
   225
			"}"
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
   226
			"QMenu::item:selected {"
1413
6393a1d5ac18 Customize menu look
unc0rr
parents: 1390
diff changeset
   227
				"background-color: #2d2564;"
1893
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
   228
			"}"
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
   229
			"QMenu::indicator {"
1413
6393a1d5ac18 Customize menu look
unc0rr
parents: 1390
diff changeset
   230
				"width: 16px;"
6393a1d5ac18 Customize menu look
unc0rr
parents: 1390
diff changeset
   231
				"height: 16px;"
1893
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
   232
			"}"
1413
6393a1d5ac18 Customize menu look
unc0rr
parents: 1390
diff changeset
   233
			"QMenu::indicator:non-exclusive:checked{"
6393a1d5ac18 Customize menu look
unc0rr
parents: 1390
diff changeset
   234
				"image: url(\":/res/checked.png\");"
1893
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
   235
			"}"
1413
6393a1d5ac18 Customize menu look
unc0rr
parents: 1390
diff changeset
   236
			"QMenu::indicator:non-exclusive:unchecked{"
6393a1d5ac18 Customize menu look
unc0rr
parents: 1390
diff changeset
   237
				"image: url(\":/res/unchecked.png\");"
1893
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
   238
			"}"
1450
f854866390a5 Add tooltips
unc0rr
parents: 1438
diff changeset
   239
f854866390a5 Add tooltips
unc0rr
parents: 1438
diff changeset
   240
			"QToolTip{"
f854866390a5 Add tooltips
unc0rr
parents: 1438
diff changeset
   241
				"background-color: #0d0544;"
1893
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
   242
			"}"
1438
b1cb4381a1e0 - Make disbled controls look better
unc0rr
parents: 1425
diff changeset
   243
			
b1cb4381a1e0 - Make disbled controls look better
unc0rr
parents: 1425
diff changeset
   244
			":disabled{"
b1cb4381a1e0 - Make disbled controls look better
unc0rr
parents: 1425
diff changeset
   245
				"color: #a0a0a0;"
1893
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1577
diff changeset
   246
			"}"
1152
c72b939c00df Make buttons border have different colors when mouse is over or it is pressed
unc0rr
parents: 1150
diff changeset
   247
			)
c72b939c00df Make buttons border have different colors when mouse is over or it is pressed
unc0rr
parents: 1150
diff changeset
   248
		);
1150
ae86e36dad2e - Make look better
unc0rr
parents: 1149
diff changeset
   249
579
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   250
	bindir->cd("bin"); // workaround over NSIS installer
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   251
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   252
	cfgdir->setPath(cfgdir->homePath());
1965
340bfd438ca5 - Apply koda's patch
unc0rr
parents: 1940
diff changeset
   253
#ifdef __APPLE__
340bfd438ca5 - Apply koda's patch
unc0rr
parents: 1940
diff changeset
   254
	if (checkForDir(cfgdir->absolutePath() + "/Library/Application Support/Hedgewars"))
340bfd438ca5 - Apply koda's patch
unc0rr
parents: 1940
diff changeset
   255
	{
340bfd438ca5 - Apply koda's patch
unc0rr
parents: 1940
diff changeset
   256
		checkForDir(cfgdir->absolutePath() + "/Library/Application Support/Hedgewars/Demos");
340bfd438ca5 - Apply koda's patch
unc0rr
parents: 1940
diff changeset
   257
		checkForDir(cfgdir->absolutePath() + "/Library/Application Support/Hedgewars/Saves");
340bfd438ca5 - Apply koda's patch
unc0rr
parents: 1940
diff changeset
   258
	}
1969
3b04393b1291 koda's fix
unc0rr
parents: 1965
diff changeset
   259
	cfgdir->cd("Library/Application Support/Hedgewars");
1965
340bfd438ca5 - Apply koda's patch
unc0rr
parents: 1940
diff changeset
   260
#else
579
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   261
	if (checkForDir(cfgdir->absolutePath() + "/.hedgewars"))
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   262
	{
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   263
		checkForDir(cfgdir->absolutePath() + "/.hedgewars/Demos");
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   264
		checkForDir(cfgdir->absolutePath() + "/.hedgewars/Saves");
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   265
	}
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   266
	cfgdir->cd(".hedgewars");
1965
340bfd438ca5 - Apply koda's patch
unc0rr
parents: 1940
diff changeset
   267
#endif
579
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   268
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   269
	datadir->cd(bindir->absolutePath());
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   270
	datadir->cd(*cDataDir);
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   271
	if(!datadir->cd("hedgewars/Data")) {
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   272
		QMessageBox::critical(0, QMessageBox::tr("Error"),
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   273
			QMessageBox::tr("Failed to open data directory:\n%1\n"
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   274
					"Please check your installation").
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   275
					arg(datadir->absolutePath()+"/hedgewars/Data"));
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   276
		return 1;
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   277
	}
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   278
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   279
	QTranslator Translator;
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   280
	Translator.load(datadir->absolutePath() + "/Locale/hedgewars_" + QLocale::system().name());
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   281
	app.installTranslator(&Translator);
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   282
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   283
	Themes = new QStringList();
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   284
	QFile themesfile(datadir->absolutePath() + "/Themes/themes.cfg");
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   285
	if (themesfile.open(QIODevice::ReadOnly)) {
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   286
		QTextStream stream(&themesfile);
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   287
		QString str;
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   288
		while (!stream.atEnd())
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
			Themes->append(stream.readLine());
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   291
		}
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   292
		themesfile.close();
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   293
	} else {
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   294
		QMessageBox::critical(0, "Error", "Cannot access themes.cfg", "OK");
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   295
	}
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   296
1210
bfed1b89bc85 Add themes list to map selection widget
unc0rr
parents: 1209
diff changeset
   297
	QDir tmpdir;
bfed1b89bc85 Add themes list to map selection widget
unc0rr
parents: 1209
diff changeset
   298
	tmpdir.cd(datadir->absolutePath());
bfed1b89bc85 Add themes list to map selection widget
unc0rr
parents: 1209
diff changeset
   299
	tmpdir.cd("Maps");
bfed1b89bc85 Add themes list to map selection widget
unc0rr
parents: 1209
diff changeset
   300
	tmpdir.setFilter(QDir::Dirs | QDir::NoDotAndDotDot);
bfed1b89bc85 Add themes list to map selection widget
unc0rr
parents: 1209
diff changeset
   301
	mapList = new QStringList(tmpdir.entryList(QStringList("*")));
bfed1b89bc85 Add themes list to map selection widget
unc0rr
parents: 1209
diff changeset
   302
579
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   303
	HWForm *Form = new HWForm();
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   304
	Form->show();
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   305
	return app.exec();
94db15de0392 - Some changes to make build process clear
unc0rr
parents:
diff changeset
   306
}