QTfrontend/pages.cpp
author unc0rr
Thu, 13 Dec 2007 14:15:56 +0000
changeset 649 26166c87dc75
parent 647 798c7dbf8bb8
child 653 4f44fc06ca45
permissions -rw-r--r--
- Use 2 bytes for timestamp in net protocol, thus decreasing average packet size from 6 to 4 - Inc protocol version number
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
     1
/*
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
     2
 * Hedgewars, a worms-like game
486
7ea71cd3acd5 - Change proto version to 4
unc0rr
parents: 471
diff changeset
     3
 * Copyright (c) 2006, 2007 Andrey Korotaev <unC0Rr@gmail.com>
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
     4
 *
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
     5
 * This program is free software; you can redistribute it and/or modify
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
     6
 * it under the terms of the GNU General Public License as published by
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
     7
 * the Free Software Foundation; version 2 of the License
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
     8
 *
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
     9
 * This program is distributed in the hope that it will be useful,
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    10
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    11
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    12
 * GNU General Public License for more details.
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    13
 *
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    14
 * You should have received a copy of the GNU General Public License
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    15
 * along with this program; if not, write to the Free Software
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    16
 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    17
 */
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    18
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    19
#include <QGridLayout>
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    20
#include <QPushButton>
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    21
#include <QGroupBox>
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    22
#include <QComboBox>
311
b8905423f19f - Limit list of teams in game with 200 px
unc0rr
parents: 310
diff changeset
    23
#include <QCheckBox>
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    24
#include <QLabel>
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    25
#include <QToolBox>
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    26
#include <QLineEdit>
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    27
#include <QListWidget>
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    28
#include <QApplication>
231
c77b16e48273 bots power icons added
displacer
parents: 187
diff changeset
    29
#include <QSpinBox>
452
45fbb9df0c99 problems with widget sizes for net chat
displacer
parents: 451
diff changeset
    30
#include <QTextEdit>
636
dc93ac775bb9 - Switch between local and internet game
unc0rr
parents: 632
diff changeset
    31
#include <QRadioButton>
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    32
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    33
#include "pages.h"
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    34
#include "sdlkeys.h"
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    35
#include "hwconsts.h"
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    36
#include "gamecfgwidget.h"
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    37
#include "teamselect.h"
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    38
#include "gamecfgwidget.h"
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    39
#include "SquareLabel.h"
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    40
#include "mapContainer.h"
187
96c3154efee5 "About" page, not yet filled with content
unc0rr
parents: 184
diff changeset
    41
#include "about.h"
297
279e10ec31b4 'Show FPS' and 'FPS limit' options
unc0rr
parents: 290
diff changeset
    42
#include "fpsedit.h"
632
5e09ae25729f Half implement possibility for different backends of servers list
unc0rr
parents: 617
diff changeset
    43
#include "netserverslist.h"
412
2ddcc3e3e644 udp server detecting experimental version
displacer
parents: 373
diff changeset
    44
#include "netudpwidget.h"
632
5e09ae25729f Half implement possibility for different backends of servers list
unc0rr
parents: 617
diff changeset
    45
#include "netwwwwidget.h"
461
105af110b0e6 chatWidget with layout
displacer
parents: 453
diff changeset
    46
#include "chatwidget.h"
555
0376fdcc6322 Get possible screen resolutions from SDL library
unc0rr
parents: 529
diff changeset
    47
#include "SDLs.h"
579
94db15de0392 - Some changes to make build process clear
unc0rr
parents: 555
diff changeset
    48
#include "playrecordpage.h"
612
333d095319de abstract class for items container (hedgehogs num, bullets, etc.)
displacer
parents: 603
diff changeset
    49
#include "selectWeapon.h"
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    50
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    51
PageMain::PageMain(QWidget* parent) : QWidget(parent)
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    52
{
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    53
	QFont * font14 = new QFont("MS Shell Dlg", 14);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    54
	QGridLayout * pageLayout = new QGridLayout(this);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    55
	pageLayout->setMargin(25);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    56
	pageLayout->setColumnStretch(0, 1);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    57
	pageLayout->setColumnStretch(1, 2);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    58
	pageLayout->setColumnStretch(2, 1);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    59
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    60
	BtnSinglePlayer = new QPushButton(this);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    61
	BtnSinglePlayer->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    62
	BtnSinglePlayer->setFont(*font14);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    63
	BtnSinglePlayer->setText(QPushButton::tr("Single Player"));
586
ecb6347dfeca Prepare to new page 'Training'
unc0rr
parents: 585
diff changeset
    64
	pageLayout->addWidget(BtnSinglePlayer, 0, 1);
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    65
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    66
	BtnMultiplayer = new QPushButton(this);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    67
	BtnMultiplayer->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    68
	BtnMultiplayer->setFont(*font14);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    69
	BtnMultiplayer->setText(QPushButton::tr("Multiplayer"));
586
ecb6347dfeca Prepare to new page 'Training'
unc0rr
parents: 585
diff changeset
    70
	pageLayout->addWidget(BtnMultiplayer, 1, 1);
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    71
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    72
	BtnNet = new QPushButton(this);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    73
	BtnNet->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    74
	BtnNet->setFont(*font14);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    75
	BtnNet->setText(QPushButton::tr("Net game"));
586
ecb6347dfeca Prepare to new page 'Training'
unc0rr
parents: 585
diff changeset
    76
	pageLayout->addWidget(BtnNet, 2, 1);
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    77
579
94db15de0392 - Some changes to make build process clear
unc0rr
parents: 555
diff changeset
    78
	BtnLoad = new QPushButton(this);
94db15de0392 - Some changes to make build process clear
unc0rr
parents: 555
diff changeset
    79
	BtnLoad->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);
94db15de0392 - Some changes to make build process clear
unc0rr
parents: 555
diff changeset
    80
	BtnLoad->setFont(*font14);
94db15de0392 - Some changes to make build process clear
unc0rr
parents: 555
diff changeset
    81
	BtnLoad->setText(QPushButton::tr("Load"));
586
ecb6347dfeca Prepare to new page 'Training'
unc0rr
parents: 585
diff changeset
    82
	pageLayout->addWidget(BtnLoad, 3, 1);
579
94db15de0392 - Some changes to make build process clear
unc0rr
parents: 555
diff changeset
    83
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    84
	BtnDemos = new QPushButton(this);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    85
	BtnDemos->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    86
	BtnDemos->setFont(*font14);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    87
	BtnDemos->setText(QPushButton::tr("Demos"));
586
ecb6347dfeca Prepare to new page 'Training'
unc0rr
parents: 585
diff changeset
    88
	pageLayout->addWidget(BtnDemos, 4, 1);
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    89
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    90
	BtnSetup = new QPushButton(this);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    91
	BtnSetup->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    92
	BtnSetup->setFont(*font14);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    93
	BtnSetup->setText(QPushButton::tr("Setup"));
586
ecb6347dfeca Prepare to new page 'Training'
unc0rr
parents: 585
diff changeset
    94
	pageLayout->addWidget(BtnSetup, 5, 1);
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    95
187
96c3154efee5 "About" page, not yet filled with content
unc0rr
parents: 184
diff changeset
    96
	BtnInfo = new QPushButton(this);
96c3154efee5 "About" page, not yet filled with content
unc0rr
parents: 184
diff changeset
    97
	BtnInfo->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);
96c3154efee5 "About" page, not yet filled with content
unc0rr
parents: 184
diff changeset
    98
	BtnInfo->setFont(*font14);
96c3154efee5 "About" page, not yet filled with content
unc0rr
parents: 184
diff changeset
    99
	BtnInfo->setText(QPushButton::tr("About"));
586
ecb6347dfeca Prepare to new page 'Training'
unc0rr
parents: 585
diff changeset
   100
	pageLayout->addWidget(BtnInfo, 6, 1);
187
96c3154efee5 "About" page, not yet filled with content
unc0rr
parents: 184
diff changeset
   101
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   102
	BtnExit = new QPushButton(parent);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   103
	BtnExit->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   104
	BtnExit->setFont(*font14);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   105
	BtnExit->setText(QPushButton::tr("Exit"));
187
96c3154efee5 "About" page, not yet filled with content
unc0rr
parents: 184
diff changeset
   106
	pageLayout->addWidget(BtnExit, 7, 1);
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   107
}
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   108
585
7531ae5b146e Rename PageLocalGame -> PageSimpleGame due to future changes
unc0rr
parents: 579
diff changeset
   109
PageSimpleGame::PageSimpleGame(QWidget* parent) : QWidget(parent)
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   110
{
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   111
	QFont * font14 = new QFont("MS Shell Dlg", 14);
440
710d12dbeb61 Better local game page layout
unc0rr
parents: 436
diff changeset
   112
	QVBoxLayout * pageLayout = new QVBoxLayout(this);
710d12dbeb61 Better local game page layout
unc0rr
parents: 436
diff changeset
   113
	QHBoxLayout * topLayout = new QHBoxLayout();
710d12dbeb61 Better local game page layout
unc0rr
parents: 436
diff changeset
   114
	QHBoxLayout * bottomLayout = new QHBoxLayout();
710d12dbeb61 Better local game page layout
unc0rr
parents: 436
diff changeset
   115
	pageLayout->addLayout(topLayout, 100);
710d12dbeb61 Better local game page layout
unc0rr
parents: 436
diff changeset
   116
	pageLayout->addLayout(bottomLayout, 0);
710d12dbeb61 Better local game page layout
unc0rr
parents: 436
diff changeset
   117
710d12dbeb61 Better local game page layout
unc0rr
parents: 436
diff changeset
   118
	BtnBack = new QPushButton(this);
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   119
	BtnBack->setFont(*font14);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   120
	BtnBack->setText(QPushButton::tr("Back"));
440
710d12dbeb61 Better local game page layout
unc0rr
parents: 436
diff changeset
   121
	bottomLayout->addWidget(BtnBack, 100);
710d12dbeb61 Better local game page layout
unc0rr
parents: 436
diff changeset
   122
	bottomLayout->addStretch(100);
586
ecb6347dfeca Prepare to new page 'Training'
unc0rr
parents: 585
diff changeset
   123
	BtnSimpleGame = new QPushButton(this);
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   124
	BtnSimpleGame->setFont(*font14);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   125
	BtnSimpleGame->setText(QPushButton::tr("Simple Game"));
440
710d12dbeb61 Better local game page layout
unc0rr
parents: 436
diff changeset
   126
	bottomLayout->addWidget(BtnSimpleGame, 100);
710d12dbeb61 Better local game page layout
unc0rr
parents: 436
diff changeset
   127
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   128
	gameCFG = new GameCFGWidget(this);
440
710d12dbeb61 Better local game page layout
unc0rr
parents: 436
diff changeset
   129
	topLayout->addStretch(100);
710d12dbeb61 Better local game page layout
unc0rr
parents: 436
diff changeset
   130
	topLayout->addWidget(gameCFG);
710d12dbeb61 Better local game page layout
unc0rr
parents: 436
diff changeset
   131
	topLayout->addStretch(100);
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   132
}
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   133
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   134
PageEditTeam::PageEditTeam(QWidget* parent) : QWidget(parent)
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   135
{
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   136
	QFont * font14 = new QFont("MS Shell Dlg", 14);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   137
	QGridLayout * pageLayout = new QGridLayout(this);
310
b95fd124cb09 Fix for middle column not being growing in width
unc0rr
parents: 307
diff changeset
   138
	pageLayout->setColumnStretch(0, 1);
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   139
	pageLayout->setColumnMinimumWidth(0, 150);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   140
	pageLayout->setColumnStretch(1, 100);
336
82d654db133d Team level at new place on team config page
unc0rr
parents: 329
diff changeset
   141
	pageLayout->setColumnMinimumWidth(1, 210);
451
756616c38dd6 Fix regression with binds layouting
unc0rr
parents: 440
diff changeset
   142
	pageLayout->setColumnStretch(2, 75);
336
82d654db133d Team level at new place on team config page
unc0rr
parents: 329
diff changeset
   143
	pageLayout->setColumnMinimumWidth(2, 110);
451
756616c38dd6 Fix regression with binds layouting
unc0rr
parents: 440
diff changeset
   144
	pageLayout->setColumnStretch(3, 75);
336
82d654db133d Team level at new place on team config page
unc0rr
parents: 329
diff changeset
   145
	pageLayout->setColumnMinimumWidth(3, 110);
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   146
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   147
	GBoxTeam = new QGroupBox(this);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   148
	GBoxTeam->setTitle(QGroupBox::tr("Team"));
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   149
	GBoxTeam->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   150
	QGridLayout * GBTLayout = new QGridLayout(GBoxTeam);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   151
	TeamNameEdit = new QLineEdit(GBoxTeam);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   152
	TeamNameEdit->setMaxLength(15);
231
c77b16e48273 bots power icons added
displacer
parents: 187
diff changeset
   153
	GBTLayout->addWidget(TeamNameEdit, 0, 0, 1, 0);
c77b16e48273 bots power icons added
displacer
parents: 187
diff changeset
   154
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   155
	pageLayout->addWidget(GBoxTeam, 0, 0);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   156
588
b2e61fc49e5d Better stub for Training mode
unc0rr
parents: 587
diff changeset
   157
	GBoxHedgehogs = new QGroupBox(this);
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   158
	GBoxHedgehogs->setTitle(QGroupBox::tr("Team Members"));
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   159
	GBoxHedgehogs->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   160
	QGridLayout * GBHLayout = new QGridLayout(GBoxHedgehogs);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   161
	for(int i = 0; i < 8; i++)
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   162
	{
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   163
		HHNameEdit[i] = new QLineEdit(GBoxHedgehogs);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   164
		HHNameEdit[i]->setGeometry(QRect(10, 20 + i * 30, 141, 20));
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   165
		HHNameEdit[i]->setMaxLength(15);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   166
		GBHLayout->addWidget(HHNameEdit[i]);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   167
	}
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   168
	pageLayout->addWidget(GBoxHedgehogs, 1, 0, 2, 1);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   169
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   170
	BtnTeamDiscard = new QPushButton(this);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   171
	BtnTeamDiscard->setFont(*font14);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   172
	BtnTeamDiscard->setText(QPushButton::tr("Discard"));
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   173
	pageLayout->addWidget(BtnTeamDiscard, 4, 0);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   174
588
b2e61fc49e5d Better stub for Training mode
unc0rr
parents: 587
diff changeset
   175
	GBoxBinds = new QGroupBox(this);
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   176
	GBoxBinds->setTitle(QGroupBox::tr("Key binds"));
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   177
	QGridLayout * GBBLayout = new QGridLayout(GBoxBinds);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   178
	BindsBox = new QToolBox(GBoxBinds);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   179
	BindsBox->setLineWidth(0);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   180
	GBBLayout->addWidget(BindsBox);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   181
	page_A = new QWidget();
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   182
	BindsBox->addItem(page_A, QToolBox::tr("Actions"));
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   183
	page_W = new QWidget();
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   184
	BindsBox->addItem(page_W, QToolBox::tr("Weapons"));
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   185
	page_WP = new QWidget();
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   186
	BindsBox->addItem(page_WP, QToolBox::tr("Weapon properties"));
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   187
	page_O = new QWidget();
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   188
	BindsBox->addItem(page_O, QToolBox::tr("Other"));
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   189
	pageLayout->addWidget(GBoxBinds, 0, 1, 5, 1);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   190
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   191
	QStringList binds;
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   192
	for(int i = 0; strlen(sdlkeys[i][1]) > 0; i++)
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   193
	{
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   194
		binds << sdlkeys[i][1];
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   195
	}
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   196
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   197
	quint16 widind = 0, i = 0;
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   198
	while (i < BINDS_NUMBER) {
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   199
		quint16 num = 0;
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   200
		QGridLayout * pagelayout = new QGridLayout(BindsBox->widget(widind));
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   201
		do {
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   202
			LBind[i] = new QLabel(BindsBox->widget(widind));
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   203
			LBind[i]->setText(QApplication::translate("binds", cbinds[i].name));
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   204
			LBind[i]->setAlignment(Qt::AlignRight);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   205
			pagelayout->addWidget(LBind[i], num, 0);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   206
			CBBind[i] = new QComboBox(BindsBox->widget(widind));
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   207
			CBBind[i]->addItems(binds);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   208
			pagelayout->addWidget(CBBind[i], num, 1);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   209
			num++;
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   210
		} while (!cbinds[i++].chwidget);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   211
		pagelayout->addWidget(new QWidget(BindsBox->widget(widind)), num, 0, 1, 2);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   212
		widind++;
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   213
	}
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   214
588
b2e61fc49e5d Better stub for Training mode
unc0rr
parents: 587
diff changeset
   215
	GBoxGrave = new QGroupBox(this);
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   216
	GBoxGrave->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   217
	GBoxGrave->setTitle(QGroupBox::tr("Grave"));
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   218
	QGridLayout * GBGLayout = new QGridLayout(GBoxGrave);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   219
	CBGrave = new QComboBox(GBoxGrave);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   220
	CBGrave->setMaxCount(65535);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   221
	GBGLayout->addWidget(CBGrave, 0, 0, 1, 3);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   222
	GravePreview = new QLabel(GBoxGrave);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   223
	GravePreview->setScaledContents(false);
336
82d654db133d Team level at new place on team config page
unc0rr
parents: 329
diff changeset
   224
	pageLayout->addWidget(GBoxGrave, 0, 3, 2, 1);
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   225
	GBGLayout->addWidget(GravePreview, 1, 1);
336
82d654db133d Team level at new place on team config page
unc0rr
parents: 329
diff changeset
   226
82d654db133d Team level at new place on team config page
unc0rr
parents: 329
diff changeset
   227
	GBoxTeamLvl = new QGroupBox(this);
82d654db133d Team level at new place on team config page
unc0rr
parents: 329
diff changeset
   228
	GBoxTeamLvl->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed);
82d654db133d Team level at new place on team config page
unc0rr
parents: 329
diff changeset
   229
	GBoxTeamLvl->setTitle(QGroupBox::tr("Team level"));
82d654db133d Team level at new place on team config page
unc0rr
parents: 329
diff changeset
   230
	QGridLayout * GBTLLayout = new QGridLayout(GBoxTeamLvl);
82d654db133d Team level at new place on team config page
unc0rr
parents: 329
diff changeset
   231
	CBTeamLvl = new QComboBox(GBoxTeamLvl);
82d654db133d Team level at new place on team config page
unc0rr
parents: 329
diff changeset
   232
	CBTeamLvl->addItem(QComboBox::tr("Human"));
427
b505012a3f15 New widgets layout on PageOptions
unc0rr
parents: 421
diff changeset
   233
	CBTeamLvl->addItem(QComboBox::tr("Level 5"));
b505012a3f15 New widgets layout on PageOptions
unc0rr
parents: 421
diff changeset
   234
	CBTeamLvl->addItem(QComboBox::tr("Level 4"));
336
82d654db133d Team level at new place on team config page
unc0rr
parents: 329
diff changeset
   235
	CBTeamLvl->addItem(QComboBox::tr("Level 3"));
427
b505012a3f15 New widgets layout on PageOptions
unc0rr
parents: 421
diff changeset
   236
	CBTeamLvl->addItem(QComboBox::tr("Level 2"));
b505012a3f15 New widgets layout on PageOptions
unc0rr
parents: 421
diff changeset
   237
	CBTeamLvl->addItem(QComboBox::tr("Level 1"));
336
82d654db133d Team level at new place on team config page
unc0rr
parents: 329
diff changeset
   238
	CBTeamLvl->setMaxCount(6);
82d654db133d Team level at new place on team config page
unc0rr
parents: 329
diff changeset
   239
	GBTLLayout->addWidget(CBTeamLvl, 0, 0, 1, 3);
82d654db133d Team level at new place on team config page
unc0rr
parents: 329
diff changeset
   240
	LevelPict = new QLabel(GBoxTeamLvl);
82d654db133d Team level at new place on team config page
unc0rr
parents: 329
diff changeset
   241
	LevelPict->setScaledContents(false);
82d654db133d Team level at new place on team config page
unc0rr
parents: 329
diff changeset
   242
	LevelPict->setFixedSize(32, 32);
82d654db133d Team level at new place on team config page
unc0rr
parents: 329
diff changeset
   243
	pageLayout->addWidget(GBoxTeamLvl, 0, 2, 2, 1);
82d654db133d Team level at new place on team config page
unc0rr
parents: 329
diff changeset
   244
	GBTLLayout->addWidget(LevelPict, 1, 1);
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   245
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   246
	GBoxFort = new QGroupBox(this);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   247
	GBoxFort->setTitle(QGroupBox::tr("Fort"));
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   248
	QGridLayout * GBFLayout = new QGridLayout(GBoxFort);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   249
	CBFort = new QComboBox(GBoxFort);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   250
	CBFort->setMaxCount(65535);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   251
	GBFLayout->addWidget(CBFort, 0, 0);
588
b2e61fc49e5d Better stub for Training mode
unc0rr
parents: 587
diff changeset
   252
	FortPreview = new SquareLabel(GBoxFort);
310
b95fd124cb09 Fix for middle column not being growing in width
unc0rr
parents: 307
diff changeset
   253
	FortPreview->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   254
	FortPreview->setPixmap(QPixmap());
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   255
	GBFLayout->addWidget(FortPreview, 1, 0);
336
82d654db133d Team level at new place on team config page
unc0rr
parents: 329
diff changeset
   256
	pageLayout->addWidget(GBoxFort, 2, 2, 1, 2);
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   257
588
b2e61fc49e5d Better stub for Training mode
unc0rr
parents: 587
diff changeset
   258
	BtnTeamSave = new QPushButton(this);
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   259
	BtnTeamSave->setFont(*font14);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   260
	BtnTeamSave->setText(QPushButton::tr("Save"));
336
82d654db133d Team level at new place on team config page
unc0rr
parents: 329
diff changeset
   261
	pageLayout->addWidget(BtnTeamSave, 4, 2, 1, 2);
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   262
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   263
	QDir tmpdir;
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   264
	tmpdir.cd(datadir->absolutePath());
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   265
	tmpdir.cd("Forts");
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   266
	tmpdir.setFilter(QDir::Files);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   267
603
d7877468653b - Use current screen color depth in engine
unc0rr
parents: 600
diff changeset
   268
	CBFort->addItems(tmpdir.entryList(QStringList("*L.png")).replaceInStrings(QRegExp("^(.*)L\\.png"), "\\1"));
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   269
	tmpdir.cd("../Graphics/Graves");
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   270
	QStringList list = tmpdir.entryList(QStringList("*.png"));
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   271
	for (QStringList::Iterator it = list.begin(); it != list.end(); ++it )
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   272
	{
603
d7877468653b - Use current screen color depth in engine
unc0rr
parents: 600
diff changeset
   273
		CBGrave->addItem((*it).replace(QRegExp("^(.*)\\.png"), "\\1"));
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   274
	}
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   275
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   276
	connect(CBGrave, SIGNAL(activated(const QString &)), this, SLOT(CBGrave_activated(const QString &)));
336
82d654db133d Team level at new place on team config page
unc0rr
parents: 329
diff changeset
   277
	connect(CBTeamLvl, SIGNAL(activated(int)), this, SLOT(CBTeamLvl_activated(int)));
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   278
	connect(CBFort, SIGNAL(activated(const QString &)), this, SLOT(CBFort_activated(const QString &)));
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   279
}
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   280
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   281
void PageEditTeam::CBGrave_activated(const QString & gravename)
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   282
{
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   283
	QPixmap pix(datadir->absolutePath() + "/Graphics/Graves/" + gravename + ".png");
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   284
	GravePreview->setPixmap(pix.copy(0, 0, 32, 32));
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   285
}
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   286
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   287
void PageEditTeam::CBFort_activated(const QString & fortname)
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   288
{
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   289
	QPixmap pix(datadir->absolutePath() + "/Forts/" + fortname + "L.png");
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   290
	FortPreview->setPixmap(pix);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   291
}
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   292
336
82d654db133d Team level at new place on team config page
unc0rr
parents: 329
diff changeset
   293
void PageEditTeam::CBTeamLvl_activated(int id)
82d654db133d Team level at new place on team config page
unc0rr
parents: 329
diff changeset
   294
{
82d654db133d Team level at new place on team config page
unc0rr
parents: 329
diff changeset
   295
	QPixmap pix(QString(":/res/botlevels/%1.png").arg(id));
82d654db133d Team level at new place on team config page
unc0rr
parents: 329
diff changeset
   296
	LevelPict->setPixmap(pix);
82d654db133d Team level at new place on team config page
unc0rr
parents: 329
diff changeset
   297
}
82d654db133d Team level at new place on team config page
unc0rr
parents: 329
diff changeset
   298
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   299
PageMultiplayer::PageMultiplayer(QWidget* parent) : QWidget(parent)
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   300
{
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   301
	QFont * font14 = new QFont("MS Shell Dlg", 14);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   302
	QGridLayout * pageLayout = new QGridLayout(this);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   303
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   304
	BtnBack = new QPushButton(this);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   305
	BtnBack->setFont(*font14);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   306
	BtnBack->setText(QPushButton::tr("Back"));
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   307
	pageLayout->addWidget(BtnBack, 1, 0);
187
96c3154efee5 "About" page, not yet filled with content
unc0rr
parents: 184
diff changeset
   308
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   309
	gameCFG = new GameCFGWidget(this);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   310
	pageLayout->addWidget(gameCFG, 0, 0, 1, 2);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   311
	teamsSelect = new TeamSelWidget(this);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   312
	pageLayout->addWidget(teamsSelect, 0, 2, 1, 2);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   313
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   314
	BtnStartMPGame = new QPushButton(this);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   315
	BtnStartMPGame->setFont(*font14);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   316
	BtnStartMPGame->setText(QPushButton::tr("Start"));
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   317
	pageLayout->addWidget(BtnStartMPGame, 1, 3);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   318
}
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   319
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   320
PageOptions::PageOptions(QWidget* parent) : QWidget(parent)
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   321
{
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   322
	QFont * font14 = new QFont("MS Shell Dlg", 14);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   323
	QGridLayout * pageLayout = new QGridLayout(this);
427
b505012a3f15 New widgets layout on PageOptions
unc0rr
parents: 421
diff changeset
   324
	pageLayout->setColumnStretch(0, 100);
b505012a3f15 New widgets layout on PageOptions
unc0rr
parents: 421
diff changeset
   325
	pageLayout->setColumnStretch(1, 100);
b505012a3f15 New widgets layout on PageOptions
unc0rr
parents: 421
diff changeset
   326
	pageLayout->setColumnStretch(2, 100);
b505012a3f15 New widgets layout on PageOptions
unc0rr
parents: 421
diff changeset
   327
	pageLayout->setRowStretch(0, 0);
b505012a3f15 New widgets layout on PageOptions
unc0rr
parents: 421
diff changeset
   328
	pageLayout->setRowStretch(1, 0);
b505012a3f15 New widgets layout on PageOptions
unc0rr
parents: 421
diff changeset
   329
	pageLayout->setRowStretch(2, 100);
b505012a3f15 New widgets layout on PageOptions
unc0rr
parents: 421
diff changeset
   330
	pageLayout->setRowStretch(3, 0);
b505012a3f15 New widgets layout on PageOptions
unc0rr
parents: 421
diff changeset
   331
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   332
	groupBox = new QGroupBox(this);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   333
	groupBox->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   334
	groupBox->setTitle(QGroupBox::tr("Teams"));
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   335
	pageLayout->addWidget(groupBox, 0, 0, 1, 3);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   336
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   337
	QGridLayout * GBTlayout = new QGridLayout(groupBox);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   338
	BtnNewTeam = new QPushButton(groupBox);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   339
	BtnNewTeam->setFont(*font14);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   340
	BtnNewTeam->setText(QPushButton::tr("New team"));
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   341
	GBTlayout->addWidget(BtnNewTeam, 0, 0);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   342
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   343
	CBTeamName = new QComboBox(groupBox);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   344
	GBTlayout->addWidget(CBTeamName, 0, 1);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   345
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   346
	BtnEditTeam	= new QPushButton(groupBox);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   347
	BtnEditTeam->setFont(*font14);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   348
	BtnEditTeam->setText(QPushButton::tr("Edit team"));
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   349
	GBTlayout->addWidget(BtnEditTeam, 0, 2);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   350
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   351
	AGGroupBox = new QGroupBox(this);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   352
	AGGroupBox->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   353
	AGGroupBox->setTitle(QGroupBox::tr("Audio/Graphic options"));
427
b505012a3f15 New widgets layout on PageOptions
unc0rr
parents: 421
diff changeset
   354
	pageLayout->addWidget(AGGroupBox, 1, 1);
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   355
427
b505012a3f15 New widgets layout on PageOptions
unc0rr
parents: 421
diff changeset
   356
	QVBoxLayout * GBAlayout = new QVBoxLayout(AGGroupBox);
436
3f806cadb4e3 Fix runtime warning
unc0rr
parents: 427
diff changeset
   357
	QHBoxLayout * GBAreslayout = new QHBoxLayout(0);
427
b505012a3f15 New widgets layout on PageOptions
unc0rr
parents: 421
diff changeset
   358
	QLabel * resolution = new QLabel(AGGroupBox);
b505012a3f15 New widgets layout on PageOptions
unc0rr
parents: 421
diff changeset
   359
	resolution->setText(QLabel::tr("Resolution"));
b505012a3f15 New widgets layout on PageOptions
unc0rr
parents: 421
diff changeset
   360
	GBAreslayout->addWidget(resolution);
b505012a3f15 New widgets layout on PageOptions
unc0rr
parents: 421
diff changeset
   361
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   362
	CBResolution = new QComboBox(AGGroupBox);
555
0376fdcc6322 Get possible screen resolutions from SDL library
unc0rr
parents: 529
diff changeset
   363
	SDLInteraction sdli;
0376fdcc6322 Get possible screen resolutions from SDL library
unc0rr
parents: 529
diff changeset
   364
	CBResolution->addItems(sdli.getResolutions());
427
b505012a3f15 New widgets layout on PageOptions
unc0rr
parents: 421
diff changeset
   365
	GBAreslayout->addWidget(CBResolution);
b505012a3f15 New widgets layout on PageOptions
unc0rr
parents: 421
diff changeset
   366
	GBAlayout->addLayout(GBAreslayout);
b505012a3f15 New widgets layout on PageOptions
unc0rr
parents: 421
diff changeset
   367
436
3f806cadb4e3 Fix runtime warning
unc0rr
parents: 427
diff changeset
   368
	QHBoxLayout * GBAfpslayout = new QHBoxLayout(0);
427
b505012a3f15 New widgets layout on PageOptions
unc0rr
parents: 421
diff changeset
   369
	QLabel * maxfps = new QLabel(AGGroupBox);
b505012a3f15 New widgets layout on PageOptions
unc0rr
parents: 421
diff changeset
   370
	maxfps->setText(QLabel::tr("FPS limit"));
b505012a3f15 New widgets layout on PageOptions
unc0rr
parents: 421
diff changeset
   371
	GBAfpslayout->addWidget(maxfps);
b505012a3f15 New widgets layout on PageOptions
unc0rr
parents: 421
diff changeset
   372
	GBAlayout->addLayout(GBAfpslayout);
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   373
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   374
	CBFullscreen = new QCheckBox(AGGroupBox);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   375
	CBFullscreen->setText(QCheckBox::tr("Fullscreen"));
427
b505012a3f15 New widgets layout on PageOptions
unc0rr
parents: 421
diff changeset
   376
	GBAlayout->addWidget(CBFullscreen);
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   377
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   378
	CBEnableSound = new	QCheckBox(AGGroupBox);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   379
	CBEnableSound->setText(QCheckBox::tr("Enable sound"));
427
b505012a3f15 New widgets layout on PageOptions
unc0rr
parents: 421
diff changeset
   380
	GBAlayout->addWidget(CBEnableSound);
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   381
297
279e10ec31b4 'Show FPS' and 'FPS limit' options
unc0rr
parents: 290
diff changeset
   382
	CBShowFPS = new QCheckBox(AGGroupBox);
279e10ec31b4 'Show FPS' and 'FPS limit' options
unc0rr
parents: 290
diff changeset
   383
	CBShowFPS->setText(QCheckBox::tr("Show FPS"));
427
b505012a3f15 New widgets layout on PageOptions
unc0rr
parents: 421
diff changeset
   384
	GBAlayout->addWidget(CBShowFPS);
297
279e10ec31b4 'Show FPS' and 'FPS limit' options
unc0rr
parents: 290
diff changeset
   385
529
812682c1ab62 Option for alternative damage tags
unc0rr
parents: 492
diff changeset
   386
	CBAltDamage = new QCheckBox(AGGroupBox);
812682c1ab62 Option for alternative damage tags
unc0rr
parents: 492
diff changeset
   387
	CBAltDamage->setText(QCheckBox::tr("Alternative damage show"));
812682c1ab62 Option for alternative damage tags
unc0rr
parents: 492
diff changeset
   388
	GBAlayout->addWidget(CBAltDamage);
812682c1ab62 Option for alternative damage tags
unc0rr
parents: 492
diff changeset
   389
297
279e10ec31b4 'Show FPS' and 'FPS limit' options
unc0rr
parents: 290
diff changeset
   390
	fpsedit = new FPSEdit(AGGroupBox);
427
b505012a3f15 New widgets layout on PageOptions
unc0rr
parents: 421
diff changeset
   391
	GBAfpslayout->addWidget(fpsedit);
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   392
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   393
	BtnSaveOptions = new QPushButton(this);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   394
	BtnSaveOptions->setFont(*font14);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   395
	BtnSaveOptions->setText(QPushButton::tr("Save"));
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   396
	pageLayout->addWidget(BtnSaveOptions, 4, 2);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   397
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   398
	BtnBack = new QPushButton(this);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   399
	BtnBack->setFont(*font14);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   400
	BtnBack->setText(QPushButton::tr("Back"));
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   401
	pageLayout->addWidget(BtnBack, 4, 0);
597
ec5f057ab268 kdevelop project add, initial weapons scheme button
displacer
parents: 588
diff changeset
   402
ec5f057ab268 kdevelop project add, initial weapons scheme button
displacer
parents: 588
diff changeset
   403
	WeaponsButt = new QPushButton(this);
ec5f057ab268 kdevelop project add, initial weapons scheme button
displacer
parents: 588
diff changeset
   404
	WeaponsButt->setFont(*font14);
ec5f057ab268 kdevelop project add, initial weapons scheme button
displacer
parents: 588
diff changeset
   405
	WeaponsButt->setText(QPushButton::tr("Weapons scheme"));
ec5f057ab268 kdevelop project add, initial weapons scheme button
displacer
parents: 588
diff changeset
   406
	pageLayout->addWidget(WeaponsButt, 1, 0);
ec5f057ab268 kdevelop project add, initial weapons scheme button
displacer
parents: 588
diff changeset
   407
647
798c7dbf8bb8 Move nick edit to PageOptions
unc0rr
parents: 646
diff changeset
   408
	NNGroupBox = new QGroupBox(this);
798c7dbf8bb8 Move nick edit to PageOptions
unc0rr
parents: 646
diff changeset
   409
	NNGroupBox->setSizePolicy(QSizePolicy::MinimumExpanding, QSizePolicy::Fixed);
798c7dbf8bb8 Move nick edit to PageOptions
unc0rr
parents: 646
diff changeset
   410
	NNGroupBox->setTitle(QGroupBox::tr("Net options"));
798c7dbf8bb8 Move nick edit to PageOptions
unc0rr
parents: 646
diff changeset
   411
	pageLayout->addWidget(NNGroupBox, 1, 2);
798c7dbf8bb8 Move nick edit to PageOptions
unc0rr
parents: 646
diff changeset
   412
798c7dbf8bb8 Move nick edit to PageOptions
unc0rr
parents: 646
diff changeset
   413
	QGridLayout * GBNlayout = new QGridLayout(NNGroupBox);
798c7dbf8bb8 Move nick edit to PageOptions
unc0rr
parents: 646
diff changeset
   414
	labelNN = new QLabel(NNGroupBox);
798c7dbf8bb8 Move nick edit to PageOptions
unc0rr
parents: 646
diff changeset
   415
	labelNN->setText(QLabel::tr("Net nick"));
798c7dbf8bb8 Move nick edit to PageOptions
unc0rr
parents: 646
diff changeset
   416
	GBNlayout->addWidget(labelNN, 0, 0);
798c7dbf8bb8 Move nick edit to PageOptions
unc0rr
parents: 646
diff changeset
   417
798c7dbf8bb8 Move nick edit to PageOptions
unc0rr
parents: 646
diff changeset
   418
	editNetNick = new QLineEdit(NNGroupBox);
798c7dbf8bb8 Move nick edit to PageOptions
unc0rr
parents: 646
diff changeset
   419
	editNetNick->setMaxLength(20);
798c7dbf8bb8 Move nick edit to PageOptions
unc0rr
parents: 646
diff changeset
   420
	editNetNick->setText(QLineEdit::tr("unnamed"));
798c7dbf8bb8 Move nick edit to PageOptions
unc0rr
parents: 646
diff changeset
   421
	GBNlayout->addWidget(editNetNick, 0, 1);
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   422
}
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   423
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   424
PageNet::PageNet(QWidget* parent) : QWidget(parent)
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   425
{
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   426
	QFont * font14 = new QFont("MS Shell Dlg", 14);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   427
	QGridLayout * pageLayout = new QGridLayout(this);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   428
	pageLayout->setColumnStretch(0, 1);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   429
	pageLayout->setColumnStretch(1, 1);
617
127510b442ca Better Net page
unc0rr
parents: 612
diff changeset
   430
	pageLayout->setColumnStretch(2, 1);
421
ebd79d171804 - Remake net game page
unc0rr
parents: 416
diff changeset
   431
ebd79d171804 - Remake net game page
unc0rr
parents: 416
diff changeset
   432
	BtnNetSvrStart = new QPushButton(this);
ebd79d171804 - Remake net game page
unc0rr
parents: 416
diff changeset
   433
	BtnNetSvrStart->setFont(*font14);
ebd79d171804 - Remake net game page
unc0rr
parents: 416
diff changeset
   434
	BtnNetSvrStart->setText(QPushButton::tr("Start server"));
617
127510b442ca Better Net page
unc0rr
parents: 612
diff changeset
   435
	pageLayout->addWidget(BtnNetSvrStart, 3, 2);
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   436
636
dc93ac775bb9 - Switch between local and internet game
unc0rr
parents: 632
diff changeset
   437
	QGroupBox * NetTypeGroupBox = new QGroupBox(this);
dc93ac775bb9 - Switch between local and internet game
unc0rr
parents: 632
diff changeset
   438
	NetTypeGroupBox->setSizePolicy(QSizePolicy::MinimumExpanding, QSizePolicy::Fixed);
dc93ac775bb9 - Switch between local and internet game
unc0rr
parents: 632
diff changeset
   439
	NetTypeGroupBox->setTitle(QGroupBox::tr("Connection type"));
dc93ac775bb9 - Switch between local and internet game
unc0rr
parents: 632
diff changeset
   440
	pageLayout->addWidget(NetTypeGroupBox, 0, 1);
dc93ac775bb9 - Switch between local and internet game
unc0rr
parents: 632
diff changeset
   441
dc93ac775bb9 - Switch between local and internet game
unc0rr
parents: 632
diff changeset
   442
	QVBoxLayout * GBTlayout = new QVBoxLayout(NetTypeGroupBox);
dc93ac775bb9 - Switch between local and internet game
unc0rr
parents: 632
diff changeset
   443
	rbLocalGame = new QRadioButton(NetTypeGroupBox);
dc93ac775bb9 - Switch between local and internet game
unc0rr
parents: 632
diff changeset
   444
	rbLocalGame->setText(tr("Local game"));
dc93ac775bb9 - Switch between local and internet game
unc0rr
parents: 632
diff changeset
   445
	rbLocalGame->setChecked(true);
dc93ac775bb9 - Switch between local and internet game
unc0rr
parents: 632
diff changeset
   446
	GBTlayout->addWidget(rbLocalGame);
dc93ac775bb9 - Switch between local and internet game
unc0rr
parents: 632
diff changeset
   447
	rbInternetGame = new QRadioButton(NetTypeGroupBox);
dc93ac775bb9 - Switch between local and internet game
unc0rr
parents: 632
diff changeset
   448
	rbInternetGame->setText(tr("Internet game"));
dc93ac775bb9 - Switch between local and internet game
unc0rr
parents: 632
diff changeset
   449
	GBTlayout->addWidget(rbInternetGame);
dc93ac775bb9 - Switch between local and internet game
unc0rr
parents: 632
diff changeset
   450
632
5e09ae25729f Half implement possibility for different backends of servers list
unc0rr
parents: 617
diff changeset
   451
	ConnGroupBox = new QGroupBox(this);
421
ebd79d171804 - Remake net game page
unc0rr
parents: 416
diff changeset
   452
	ConnGroupBox->setTitle(QGroupBox::tr("Net game"));
ebd79d171804 - Remake net game page
unc0rr
parents: 416
diff changeset
   453
	pageLayout->addWidget(ConnGroupBox, 2, 0, 1, 3);
632
5e09ae25729f Half implement possibility for different backends of servers list
unc0rr
parents: 617
diff changeset
   454
	GBClayout = new QGridLayout(ConnGroupBox);
646
ed610c2cd0a4 Some work on network widgets
unc0rr
parents: 638
diff changeset
   455
	GBClayout->setColumnStretch(0, 1);
421
ebd79d171804 - Remake net game page
unc0rr
parents: 416
diff changeset
   456
	GBClayout->setColumnStretch(1, 1);
ebd79d171804 - Remake net game page
unc0rr
parents: 416
diff changeset
   457
	GBClayout->setColumnStretch(2, 1);
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   458
632
5e09ae25729f Half implement possibility for different backends of servers list
unc0rr
parents: 617
diff changeset
   459
	BtnNetConnect = new QPushButton(ConnGroupBox);
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   460
	BtnNetConnect->setFont(*font14);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   461
	BtnNetConnect->setText(QPushButton::tr("Connect"));
646
ed610c2cd0a4 Some work on network widgets
unc0rr
parents: 638
diff changeset
   462
	GBClayout->addWidget(BtnNetConnect, 2, 2);
416
595d8663254d update button for udp servers list
displacer
parents: 412
diff changeset
   463
632
5e09ae25729f Half implement possibility for different backends of servers list
unc0rr
parents: 617
diff changeset
   464
	netServersWidget = 0;
421
ebd79d171804 - Remake net game page
unc0rr
parents: 416
diff changeset
   465
632
5e09ae25729f Half implement possibility for different backends of servers list
unc0rr
parents: 617
diff changeset
   466
	BtnUpdateSList = new QPushButton(ConnGroupBox);
5e09ae25729f Half implement possibility for different backends of servers list
unc0rr
parents: 617
diff changeset
   467
	BtnUpdateSList->setFont(*font14);
5e09ae25729f Half implement possibility for different backends of servers list
unc0rr
parents: 617
diff changeset
   468
	BtnUpdateSList->setText(QPushButton::tr("Update"));
646
ed610c2cd0a4 Some work on network widgets
unc0rr
parents: 638
diff changeset
   469
	GBClayout->addWidget(BtnUpdateSList, 2, 0);
314
83773ccf4f09 client/server net pre-alpha
displacer
parents: 311
diff changeset
   470
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   471
	BtnBack = new QPushButton(this);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   472
	BtnBack->setFont(*font14);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   473
	BtnBack->setText(QPushButton::tr("Back"));
412
2ddcc3e3e644 udp server detecting experimental version
displacer
parents: 373
diff changeset
   474
	pageLayout->addWidget(BtnBack, 3, 0);
636
dc93ac775bb9 - Switch between local and internet game
unc0rr
parents: 632
diff changeset
   475
646
ed610c2cd0a4 Some work on network widgets
unc0rr
parents: 638
diff changeset
   476
	connect(rbLocalGame, SIGNAL(toggled(bool)), this, SLOT(updateServersList()));
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   477
}
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   478
646
ed610c2cd0a4 Some work on network widgets
unc0rr
parents: 638
diff changeset
   479
void PageNet::updateServersList()
632
5e09ae25729f Half implement possibility for different backends of servers list
unc0rr
parents: 617
diff changeset
   480
{
5e09ae25729f Half implement possibility for different backends of servers list
unc0rr
parents: 617
diff changeset
   481
	if (netServersWidget) delete netServersWidget;
5e09ae25729f Half implement possibility for different backends of servers list
unc0rr
parents: 617
diff changeset
   482
636
dc93ac775bb9 - Switch between local and internet game
unc0rr
parents: 632
diff changeset
   483
	if (rbLocalGame->isChecked())
638
e1cc516488f2 Fix some bugs
unc0rr
parents: 636
diff changeset
   484
	{
636
dc93ac775bb9 - Switch between local and internet game
unc0rr
parents: 632
diff changeset
   485
		netServersWidget = new HWNetUdpWidget(ConnGroupBox);
638
e1cc516488f2 Fix some bugs
unc0rr
parents: 636
diff changeset
   486
		static_cast<HWNetUdpWidget *>(netServersWidget)->updateList();
e1cc516488f2 Fix some bugs
unc0rr
parents: 636
diff changeset
   487
	}
636
dc93ac775bb9 - Switch between local and internet game
unc0rr
parents: 632
diff changeset
   488
	else
638
e1cc516488f2 Fix some bugs
unc0rr
parents: 636
diff changeset
   489
	{
636
dc93ac775bb9 - Switch between local and internet game
unc0rr
parents: 632
diff changeset
   490
		netServersWidget = new HWNetWwwWidget(ConnGroupBox);
638
e1cc516488f2 Fix some bugs
unc0rr
parents: 636
diff changeset
   491
		static_cast<HWNetWwwWidget *>(netServersWidget)->updateList();
e1cc516488f2 Fix some bugs
unc0rr
parents: 636
diff changeset
   492
	}
646
ed610c2cd0a4 Some work on network widgets
unc0rr
parents: 638
diff changeset
   493
	GBClayout->addWidget(netServersWidget, 1, 0, 1, 3);
632
5e09ae25729f Half implement possibility for different backends of servers list
unc0rr
parents: 617
diff changeset
   494
5e09ae25729f Half implement possibility for different backends of servers list
unc0rr
parents: 617
diff changeset
   495
	connect(BtnUpdateSList, SIGNAL(clicked()), netServersWidget, SLOT(updateList()));
646
ed610c2cd0a4 Some work on network widgets
unc0rr
parents: 638
diff changeset
   496
	connect(netServersWidget->serversList, SIGNAL(itemDoubleClicked(QListWidgetItem *)), this, SLOT(slotConnect()));
ed610c2cd0a4 Some work on network widgets
unc0rr
parents: 638
diff changeset
   497
}
ed610c2cd0a4 Some work on network widgets
unc0rr
parents: 638
diff changeset
   498
ed610c2cd0a4 Some work on network widgets
unc0rr
parents: 638
diff changeset
   499
void PageNet::slotConnect()
ed610c2cd0a4 Some work on network widgets
unc0rr
parents: 638
diff changeset
   500
{
ed610c2cd0a4 Some work on network widgets
unc0rr
parents: 638
diff changeset
   501
	emit connectClicked();
ed610c2cd0a4 Some work on network widgets
unc0rr
parents: 638
diff changeset
   502
}
ed610c2cd0a4 Some work on network widgets
unc0rr
parents: 638
diff changeset
   503
ed610c2cd0a4 Some work on network widgets
unc0rr
parents: 638
diff changeset
   504
PageNetServer::PageNetServer(QWidget* parent) : QWidget(parent)
ed610c2cd0a4 Some work on network widgets
unc0rr
parents: 638
diff changeset
   505
{
ed610c2cd0a4 Some work on network widgets
unc0rr
parents: 638
diff changeset
   506
	QFont * font14 = new QFont("MS Shell Dlg", 14);
ed610c2cd0a4 Some work on network widgets
unc0rr
parents: 638
diff changeset
   507
	QGridLayout * pageLayout = new QGridLayout(this);
ed610c2cd0a4 Some work on network widgets
unc0rr
parents: 638
diff changeset
   508
	pageLayout->setColumnStretch(0, 1);
ed610c2cd0a4 Some work on network widgets
unc0rr
parents: 638
diff changeset
   509
	pageLayout->setColumnStretch(1, 1);
ed610c2cd0a4 Some work on network widgets
unc0rr
parents: 638
diff changeset
   510
	pageLayout->setColumnStretch(2, 1);
ed610c2cd0a4 Some work on network widgets
unc0rr
parents: 638
diff changeset
   511
ed610c2cd0a4 Some work on network widgets
unc0rr
parents: 638
diff changeset
   512
	BtnBack = new QPushButton(this);
ed610c2cd0a4 Some work on network widgets
unc0rr
parents: 638
diff changeset
   513
	BtnBack->setFont(*font14);
ed610c2cd0a4 Some work on network widgets
unc0rr
parents: 638
diff changeset
   514
	BtnBack->setText(QPushButton::tr("Back"));
ed610c2cd0a4 Some work on network widgets
unc0rr
parents: 638
diff changeset
   515
	pageLayout->addWidget(BtnBack, 2, 0);
ed610c2cd0a4 Some work on network widgets
unc0rr
parents: 638
diff changeset
   516
ed610c2cd0a4 Some work on network widgets
unc0rr
parents: 638
diff changeset
   517
	BtnStart = new QPushButton(this);
ed610c2cd0a4 Some work on network widgets
unc0rr
parents: 638
diff changeset
   518
	BtnStart->setFont(*font14);
ed610c2cd0a4 Some work on network widgets
unc0rr
parents: 638
diff changeset
   519
	BtnStart->setText(QPushButton::tr("Start"));
ed610c2cd0a4 Some work on network widgets
unc0rr
parents: 638
diff changeset
   520
	pageLayout->addWidget(BtnStart, 2, 2);
632
5e09ae25729f Half implement possibility for different backends of servers list
unc0rr
parents: 617
diff changeset
   521
}
5e09ae25729f Half implement possibility for different backends of servers list
unc0rr
parents: 617
diff changeset
   522
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   523
PageNetGame::PageNetGame(QWidget* parent) : QWidget(parent)
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   524
{
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   525
	QFont * font14 = new QFont("MS Shell Dlg", 14);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   526
	QGridLayout * pageLayout = new QGridLayout(this);
452
45fbb9df0c99 problems with widget sizes for net chat
displacer
parents: 451
diff changeset
   527
	pageLayout->setSizeConstraint(QLayout::SetMinimumSize);
461
105af110b0e6 chatWidget with layout
displacer
parents: 453
diff changeset
   528
	//pageLayout->setSpacing(1);
105af110b0e6 chatWidget with layout
displacer
parents: 453
diff changeset
   529
	//pageLayout->setMargin(1);
463
353c2f830888 fixes last commit problems
displacer
parents: 461
diff changeset
   530
	pageLayout->setColumnStretch(0, 50);
353c2f830888 fixes last commit problems
displacer
parents: 461
diff changeset
   531
	pageLayout->setColumnStretch(1, 50);
322
e7175ae57945 first new widgets added to net game
displacer
parents: 314
diff changeset
   532
461
105af110b0e6 chatWidget with layout
displacer
parents: 453
diff changeset
   533
	// chatwidget
105af110b0e6 chatWidget with layout
displacer
parents: 453
diff changeset
   534
	pChatWidget = new HWChatWidget(this);
105af110b0e6 chatWidget with layout
displacer
parents: 453
diff changeset
   535
	pageLayout->addWidget(pChatWidget, 1, 0);
464
7f48321fc38a vertical size fix for chatwidget
displacer
parents: 463
diff changeset
   536
	pageLayout->setRowStretch(1, 100);
453
4b1236759402 simple net cha added
displacer
parents: 452
diff changeset
   537
329
4c3aad46baa5 Send game parameters by net... Currently it leads to infinite loop, flooding traffic with messages about changes
unc0rr
parents: 323
diff changeset
   538
	pGameCFG = new GameCFGWidget(this);
322
e7175ae57945 first new widgets added to net game
displacer
parents: 314
diff changeset
   539
	pageLayout->addWidget(pGameCFG, 0, 0);
329
4c3aad46baa5 Send game parameters by net... Currently it leads to infinite loop, flooding traffic with messages about changes
unc0rr
parents: 323
diff changeset
   540
4c3aad46baa5 Send game parameters by net... Currently it leads to infinite loop, flooding traffic with messages about changes
unc0rr
parents: 323
diff changeset
   541
	pNetTeamsWidget = new TeamSelWidget(this);
373
df912aab6b7e network team add can be denied by server
displacer
parents: 336
diff changeset
   542
	pNetTeamsWidget->setAcceptOuter(true);
461
105af110b0e6 chatWidget with layout
displacer
parents: 453
diff changeset
   543
	pageLayout->addWidget(pNetTeamsWidget, 0, 1, 2, 1);
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   544
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   545
	BtnBack = new QPushButton(this);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   546
	BtnBack->setFont(*font14);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   547
	BtnBack->setText(QPushButton::tr("Back"));
461
105af110b0e6 chatWidget with layout
displacer
parents: 453
diff changeset
   548
	pageLayout->addWidget(BtnBack, 2, 0);
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   549
646
ed610c2cd0a4 Some work on network widgets
unc0rr
parents: 638
diff changeset
   550
	BtnGo = new QPushButton(this);
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   551
	BtnGo->setFont(*font14);
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   552
	BtnGo->setText(QPushButton::tr("Go!"));
492
78e80f899b59 disable start game button with teams num < 2
displacer
parents: 486
diff changeset
   553
	BtnGo->setEnabled(false);
461
105af110b0e6 chatWidget with layout
displacer
parents: 453
diff changeset
   554
	pageLayout->addWidget(BtnGo, 2, 1);
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   555
}
187
96c3154efee5 "About" page, not yet filled with content
unc0rr
parents: 184
diff changeset
   556
96c3154efee5 "About" page, not yet filled with content
unc0rr
parents: 184
diff changeset
   557
PageInfo::PageInfo(QWidget* parent) : QWidget(parent)
96c3154efee5 "About" page, not yet filled with content
unc0rr
parents: 184
diff changeset
   558
{
96c3154efee5 "About" page, not yet filled with content
unc0rr
parents: 184
diff changeset
   559
	QFont * font14 = new QFont("MS Shell Dlg", 14);
96c3154efee5 "About" page, not yet filled with content
unc0rr
parents: 184
diff changeset
   560
	QGridLayout * pageLayout = new QGridLayout(this);
96c3154efee5 "About" page, not yet filled with content
unc0rr
parents: 184
diff changeset
   561
	pageLayout->setColumnStretch(0, 1);
96c3154efee5 "About" page, not yet filled with content
unc0rr
parents: 184
diff changeset
   562
	pageLayout->setColumnStretch(1, 1);
96c3154efee5 "About" page, not yet filled with content
unc0rr
parents: 184
diff changeset
   563
	pageLayout->setColumnStretch(2, 1);
96c3154efee5 "About" page, not yet filled with content
unc0rr
parents: 184
diff changeset
   564
96c3154efee5 "About" page, not yet filled with content
unc0rr
parents: 184
diff changeset
   565
	BtnBack = new QPushButton(this);
96c3154efee5 "About" page, not yet filled with content
unc0rr
parents: 184
diff changeset
   566
	BtnBack->setFont(*font14);
96c3154efee5 "About" page, not yet filled with content
unc0rr
parents: 184
diff changeset
   567
	BtnBack->setText(QPushButton::tr("Back"));
96c3154efee5 "About" page, not yet filled with content
unc0rr
parents: 184
diff changeset
   568
	pageLayout->addWidget(BtnBack, 1, 0);
96c3154efee5 "About" page, not yet filled with content
unc0rr
parents: 184
diff changeset
   569
96c3154efee5 "About" page, not yet filled with content
unc0rr
parents: 184
diff changeset
   570
	about = new About(this);
96c3154efee5 "About" page, not yet filled with content
unc0rr
parents: 184
diff changeset
   571
	pageLayout->addWidget(about, 0, 0, 1, 3);
96c3154efee5 "About" page, not yet filled with content
unc0rr
parents: 184
diff changeset
   572
}
306
7b61834edcf6 - Better blowtorch
unc0rr
parents: 297
diff changeset
   573
7b61834edcf6 - Better blowtorch
unc0rr
parents: 297
diff changeset
   574
PageGameStats::PageGameStats(QWidget* parent) : QWidget(parent)
7b61834edcf6 - Better blowtorch
unc0rr
parents: 297
diff changeset
   575
{
7b61834edcf6 - Better blowtorch
unc0rr
parents: 297
diff changeset
   576
	QFont * font14 = new QFont("MS Shell Dlg", 14);
7b61834edcf6 - Better blowtorch
unc0rr
parents: 297
diff changeset
   577
	QGridLayout * pageLayout = new QGridLayout(this);
7b61834edcf6 - Better blowtorch
unc0rr
parents: 297
diff changeset
   578
	pageLayout->setColumnStretch(0, 1);
7b61834edcf6 - Better blowtorch
unc0rr
parents: 297
diff changeset
   579
	pageLayout->setColumnStretch(1, 1);
7b61834edcf6 - Better blowtorch
unc0rr
parents: 297
diff changeset
   580
	pageLayout->setColumnStretch(2, 1);
7b61834edcf6 - Better blowtorch
unc0rr
parents: 297
diff changeset
   581
7b61834edcf6 - Better blowtorch
unc0rr
parents: 297
diff changeset
   582
	BtnBack = new QPushButton(this);
7b61834edcf6 - Better blowtorch
unc0rr
parents: 297
diff changeset
   583
	BtnBack->setFont(*font14);
7b61834edcf6 - Better blowtorch
unc0rr
parents: 297
diff changeset
   584
	BtnBack->setText(QPushButton::tr("Back"));
7b61834edcf6 - Better blowtorch
unc0rr
parents: 297
diff changeset
   585
	pageLayout->addWidget(BtnBack, 1, 0);
7b61834edcf6 - Better blowtorch
unc0rr
parents: 297
diff changeset
   586
307
96b428ac11f2 More statistics
unc0rr
parents: 306
diff changeset
   587
	labelGameStats = new QLabel(this);
96b428ac11f2 More statistics
unc0rr
parents: 306
diff changeset
   588
	labelGameStats->setTextFormat(Qt::RichText);
96b428ac11f2 More statistics
unc0rr
parents: 306
diff changeset
   589
	pageLayout->addWidget(labelGameStats, 0, 0, 1, 3);
306
7b61834edcf6 - Better blowtorch
unc0rr
parents: 297
diff changeset
   590
}
586
ecb6347dfeca Prepare to new page 'Training'
unc0rr
parents: 585
diff changeset
   591
ecb6347dfeca Prepare to new page 'Training'
unc0rr
parents: 585
diff changeset
   592
PageSinglePlayer::PageSinglePlayer(QWidget* parent) : QWidget(parent)
ecb6347dfeca Prepare to new page 'Training'
unc0rr
parents: 585
diff changeset
   593
{
ecb6347dfeca Prepare to new page 'Training'
unc0rr
parents: 585
diff changeset
   594
	QFont * font14 = new QFont("MS Shell Dlg", 14);
ecb6347dfeca Prepare to new page 'Training'
unc0rr
parents: 585
diff changeset
   595
	QGridLayout * pageLayout = new QGridLayout(this);
ecb6347dfeca Prepare to new page 'Training'
unc0rr
parents: 585
diff changeset
   596
	pageLayout->setMargin(25);
ecb6347dfeca Prepare to new page 'Training'
unc0rr
parents: 585
diff changeset
   597
	pageLayout->setColumnStretch(0, 1);
ecb6347dfeca Prepare to new page 'Training'
unc0rr
parents: 585
diff changeset
   598
	pageLayout->setColumnStretch(1, 2);
ecb6347dfeca Prepare to new page 'Training'
unc0rr
parents: 585
diff changeset
   599
	pageLayout->setColumnStretch(2, 1);
588
b2e61fc49e5d Better stub for Training mode
unc0rr
parents: 587
diff changeset
   600
	pageLayout->setRowStretch(0, 1);
b2e61fc49e5d Better stub for Training mode
unc0rr
parents: 587
diff changeset
   601
	pageLayout->setRowStretch(3, 1);
586
ecb6347dfeca Prepare to new page 'Training'
unc0rr
parents: 585
diff changeset
   602
ecb6347dfeca Prepare to new page 'Training'
unc0rr
parents: 585
diff changeset
   603
	BtnSimpleGamePage = new QPushButton(this);
ecb6347dfeca Prepare to new page 'Training'
unc0rr
parents: 585
diff changeset
   604
	BtnSimpleGamePage->setFont(*font14);
ecb6347dfeca Prepare to new page 'Training'
unc0rr
parents: 585
diff changeset
   605
	BtnSimpleGamePage->setText(QPushButton::tr("Simple Game"));
588
b2e61fc49e5d Better stub for Training mode
unc0rr
parents: 587
diff changeset
   606
	pageLayout->addWidget(BtnSimpleGamePage, 1, 1);
586
ecb6347dfeca Prepare to new page 'Training'
unc0rr
parents: 585
diff changeset
   607
ecb6347dfeca Prepare to new page 'Training'
unc0rr
parents: 585
diff changeset
   608
	BtnTrainPage = new QPushButton(this);
ecb6347dfeca Prepare to new page 'Training'
unc0rr
parents: 585
diff changeset
   609
	BtnTrainPage->setFont(*font14);
ecb6347dfeca Prepare to new page 'Training'
unc0rr
parents: 585
diff changeset
   610
	BtnTrainPage->setText(QPushButton::tr("Training"));
588
b2e61fc49e5d Better stub for Training mode
unc0rr
parents: 587
diff changeset
   611
	pageLayout->addWidget(BtnTrainPage, 2, 1);
586
ecb6347dfeca Prepare to new page 'Training'
unc0rr
parents: 585
diff changeset
   612
ecb6347dfeca Prepare to new page 'Training'
unc0rr
parents: 585
diff changeset
   613
	BtnBack = new QPushButton(this);
ecb6347dfeca Prepare to new page 'Training'
unc0rr
parents: 585
diff changeset
   614
	BtnBack->setFont(*font14);
ecb6347dfeca Prepare to new page 'Training'
unc0rr
parents: 585
diff changeset
   615
	BtnBack->setText(QPushButton::tr("Back"));
588
b2e61fc49e5d Better stub for Training mode
unc0rr
parents: 587
diff changeset
   616
	pageLayout->addWidget(BtnBack, 4, 0);
586
ecb6347dfeca Prepare to new page 'Training'
unc0rr
parents: 585
diff changeset
   617
ecb6347dfeca Prepare to new page 'Training'
unc0rr
parents: 585
diff changeset
   618
}
ecb6347dfeca Prepare to new page 'Training'
unc0rr
parents: 585
diff changeset
   619
587
74db4115064a More work on Training mode
unc0rr
parents: 586
diff changeset
   620
PageTraining::PageTraining(QWidget* parent) : QWidget(parent)
74db4115064a More work on Training mode
unc0rr
parents: 586
diff changeset
   621
{
74db4115064a More work on Training mode
unc0rr
parents: 586
diff changeset
   622
	QFont * font14 = new QFont("MS Shell Dlg", 14);
74db4115064a More work on Training mode
unc0rr
parents: 586
diff changeset
   623
	QGridLayout * pageLayout = new QGridLayout(this);
74db4115064a More work on Training mode
unc0rr
parents: 586
diff changeset
   624
	pageLayout->setMargin(25);
74db4115064a More work on Training mode
unc0rr
parents: 586
diff changeset
   625
	pageLayout->setColumnStretch(0, 1);
74db4115064a More work on Training mode
unc0rr
parents: 586
diff changeset
   626
	pageLayout->setColumnStretch(1, 2);
74db4115064a More work on Training mode
unc0rr
parents: 586
diff changeset
   627
	pageLayout->setColumnStretch(2, 1);
74db4115064a More work on Training mode
unc0rr
parents: 586
diff changeset
   628
74db4115064a More work on Training mode
unc0rr
parents: 586
diff changeset
   629
	BtnStartTrain = new QPushButton(this);
74db4115064a More work on Training mode
unc0rr
parents: 586
diff changeset
   630
	BtnStartTrain->setFont(*font14);
74db4115064a More work on Training mode
unc0rr
parents: 586
diff changeset
   631
	BtnStartTrain->setText(QPushButton::tr("Go!"));
74db4115064a More work on Training mode
unc0rr
parents: 586
diff changeset
   632
	pageLayout->addWidget(BtnStartTrain, 1, 2);
74db4115064a More work on Training mode
unc0rr
parents: 586
diff changeset
   633
74db4115064a More work on Training mode
unc0rr
parents: 586
diff changeset
   634
	BtnBack = new QPushButton(this);
74db4115064a More work on Training mode
unc0rr
parents: 586
diff changeset
   635
	BtnBack->setFont(*font14);
74db4115064a More work on Training mode
unc0rr
parents: 586
diff changeset
   636
	BtnBack->setText(QPushButton::tr("Back"));
74db4115064a More work on Training mode
unc0rr
parents: 586
diff changeset
   637
	pageLayout->addWidget(BtnBack, 1, 0);
74db4115064a More work on Training mode
unc0rr
parents: 586
diff changeset
   638
}
74db4115064a More work on Training mode
unc0rr
parents: 586
diff changeset
   639
600
f6e5f4e122db Select weapon scheme page
unc0rr
parents: 597
diff changeset
   640
PageSelectWeapon::PageSelectWeapon(QWidget* parent) : QWidget(parent)
f6e5f4e122db Select weapon scheme page
unc0rr
parents: 597
diff changeset
   641
{
f6e5f4e122db Select weapon scheme page
unc0rr
parents: 597
diff changeset
   642
	QFont * font14 = new QFont("MS Shell Dlg", 14);
f6e5f4e122db Select weapon scheme page
unc0rr
parents: 597
diff changeset
   643
	QGridLayout * pageLayout = new QGridLayout(this);
f6e5f4e122db Select weapon scheme page
unc0rr
parents: 597
diff changeset
   644
	pageLayout->setMargin(25);
612
333d095319de abstract class for items container (hedgehogs num, bullets, etc.)
displacer
parents: 603
diff changeset
   645
	//pageLayout->setColumnStretch(0, 1);
333d095319de abstract class for items container (hedgehogs num, bullets, etc.)
displacer
parents: 603
diff changeset
   646
	//pageLayout->setColumnStretch(1, 2);
333d095319de abstract class for items container (hedgehogs num, bullets, etc.)
displacer
parents: 603
diff changeset
   647
	//pageLayout->setColumnStretch(2, 1);
333d095319de abstract class for items container (hedgehogs num, bullets, etc.)
displacer
parents: 603
diff changeset
   648
        
333d095319de abstract class for items container (hedgehogs num, bullets, etc.)
displacer
parents: 603
diff changeset
   649
        pWeapons=new SelWeaponWidget(this);
333d095319de abstract class for items container (hedgehogs num, bullets, etc.)
displacer
parents: 603
diff changeset
   650
	pageLayout->addWidget(pWeapons, 0, 0);
600
f6e5f4e122db Select weapon scheme page
unc0rr
parents: 597
diff changeset
   651
f6e5f4e122db Select weapon scheme page
unc0rr
parents: 597
diff changeset
   652
	BtnBack = new QPushButton(this);
f6e5f4e122db Select weapon scheme page
unc0rr
parents: 597
diff changeset
   653
	BtnBack->setFont(*font14);
f6e5f4e122db Select weapon scheme page
unc0rr
parents: 597
diff changeset
   654
	BtnBack->setText(QPushButton::tr("Back"));
f6e5f4e122db Select weapon scheme page
unc0rr
parents: 597
diff changeset
   655
	pageLayout->addWidget(BtnBack, 1, 0);
f6e5f4e122db Select weapon scheme page
unc0rr
parents: 597
diff changeset
   656
}
f6e5f4e122db Select weapon scheme page
unc0rr
parents: 597
diff changeset
   657