QTfrontend/pages.cpp
author smxx
Fri, 07 May 2010 13:04:01 +0000
changeset 3446 1be74e601960
parent 3421 7c72f4d556d1
child 3489 aedf289192f5
permissions -rw-r--r--
Graphics: * Added a team colored tophat as a "fixed colors with tinted areas" example
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
     1
/*
1066
1f1b3686a2b0 Update copyright headers a bit
unc0rr
parents: 923
diff changeset
     2
 * Hedgewars, a free turn based strategy game
3236
4ab3917d7d44 Update (c) lines to 2010 as unc0rr requested - they all had varying values so I just took the first year mentioned, then tacked on -2010
nemo
parents: 3172
diff changeset
     3
 * Copyright (c) 2006-2010 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>
665
5c7bfc8bac6a Start move from custom widgets to custom models
unc0rr
parents: 659
diff changeset
    32
#include <QTableView>
671
a8970859f50e Actually pass host and port values to NetConnect method
unc0rr
parents: 668
diff changeset
    33
#include <QMessageBox>
673
bd82104a28af - Save after save now works
unc0rr
parents: 672
diff changeset
    34
#include <QHeaderView>
1252
2e2719c0a397 - Reorganize headers according to Qt's style guide
unc0rr
parents: 1249
diff changeset
    35
#include <QTabWidget>
1377
a9e768739345 - Customize QTextBrowser look
unc0rr
parents: 1334
diff changeset
    36
#include <QTextBrowser>
1399
ada2411c1d60 Show additional info in rooms list
unc0rr
parents: 1395
diff changeset
    37
#include <QTableWidget>
1409
d1cbe4a57ebf Add button for controlling room options (no usefull yet)
unc0rr
parents: 1404
diff changeset
    38
#include <QAction>
d1cbe4a57ebf Add button for controlling room options (no usefull yet)
unc0rr
parents: 1404
diff changeset
    39
#include <QMenu>
1885
75489216b5b0 Continue work on new schemes
unc0rr
parents: 1884
diff changeset
    40
#include <QDataWidgetMapper>
3421
7c72f4d556d1 Frontend:
smxx
parents: 3324
diff changeset
    41
#include <QTime>
1885
75489216b5b0 Continue work on new schemes
unc0rr
parents: 1884
diff changeset
    42
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    43
3172
ae5c7f97df44 Engine:
smxx
parents: 3159
diff changeset
    44
#include "ammoSchemeModel.h"
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    45
#include "pages.h"
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    46
#include "sdlkeys.h"
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    47
#include "hwconsts.h"
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    48
#include "gamecfgwidget.h"
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    49
#include "teamselect.h"
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    50
#include "gamecfgwidget.h"
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    51
#include "SquareLabel.h"
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    52
#include "mapContainer.h"
187
96c3154efee5 "About" page, not yet filled with content
unc0rr
parents: 184
diff changeset
    53
#include "about.h"
297
279e10ec31b4 'Show FPS' and 'FPS limit' options
unc0rr
parents: 290
diff changeset
    54
#include "fpsedit.h"
632
5e09ae25729f Half implement possibility for different backends of servers list
unc0rr
parents: 617
diff changeset
    55
#include "netserverslist.h"
412
2ddcc3e3e644 udp server detecting experimental version
displacer
parents: 373
diff changeset
    56
#include "netudpwidget.h"
461
105af110b0e6 chatWidget with layout
displacer
parents: 453
diff changeset
    57
#include "chatwidget.h"
579
94db15de0392 - Some changes to make build process clear
unc0rr
parents: 555
diff changeset
    58
#include "playrecordpage.h"
612
333d095319de abstract class for items container (hedgehogs num, bullets, etc.)
displacer
parents: 603
diff changeset
    59
#include "selectWeapon.h"
1192
63b7961f68de Add iconed groupbox class
unc0rr
parents: 1168
diff changeset
    60
#include "igbox.h"
1238
914bd2a9a249 Add hat selection control to team editing page (it's empty combobox yet)
unc0rr
parents: 1236
diff changeset
    61
#include "hats.h"
1885
75489216b5b0 Continue work on new schemes
unc0rr
parents: 1884
diff changeset
    62
#include "misc.h"
1932
f586d75c8b6a New schemes page look by TheXception
unc0rr
parents: 1924
diff changeset
    63
#include "togglebutton.h"
2098
c977d7f2aa09 Toggle for stars ("frontend effects") - also turns off optimisations for stars that were causing problems onone machine
nemo
parents: 2093
diff changeset
    64
#include "hwform.h"
2191
20c62f787a4d koda's OpenAL conversion:
unc0rr
parents: 2155
diff changeset
    65
#include "SDLs.h"
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    66
2377
f3fab2b09e0c And in frontend
nemo
parents: 2369
diff changeset
    67
PageMain::PageMain(QWidget* parent) :
684
257444d8429f some copy/paste code removed
displacer
parents: 683
diff changeset
    68
  AbstractPage(parent)
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    69
{
2098
c977d7f2aa09 Toggle for stars ("frontend effects") - also turns off optimisations for stars that were causing problems onone machine
nemo
parents: 2093
diff changeset
    70
    if(frontendEffects) setAttribute(Qt::WA_NoSystemBackground, true);
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
    71
    QGridLayout * pageLayout = new QGridLayout(this);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
    72
    //pageLayout->setColumnStretch(0, 1);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
    73
    //pageLayout->setColumnStretch(1, 2);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
    74
    //pageLayout->setColumnStretch(2, 1);
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    75
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
    76
    //QPushButton* btnLogo = addButton(":/res/HedgewarsTitle.png", pageLayout, 0, 0, 1, 4, true);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
    77
    //pageLayout->setAlignment(btnLogo, Qt::AlignHCenter);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
    78
    pageLayout->setRowStretch(0, 1);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
    79
    pageLayout->setRowStretch(1, 1);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
    80
    pageLayout->setRowStretch(2, 0);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
    81
    pageLayout->setRowStretch(3, 1);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
    82
    pageLayout->setRowStretch(4, 1);
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    83
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
    84
    BtnSinglePlayer = addButton(":/res/LocalPlay.png", pageLayout, 2, 0, 1, 2, true);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
    85
    BtnSinglePlayer->setToolTip(tr("Local Game (Play a game on a single computer)"));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
    86
    pageLayout->setAlignment(BtnSinglePlayer, Qt::AlignHCenter);
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    87
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
    88
    BtnNet = addButton(":/res/NetworkPlay.png", pageLayout, 2, 2, 1, 2, true);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
    89
    BtnNet->setToolTip(tr("Network Game (Play a game across a network)"));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
    90
    pageLayout->setAlignment(BtnNet, Qt::AlignHCenter);
579
94db15de0392 - Some changes to make build process clear
unc0rr
parents: 555
diff changeset
    91
3421
7c72f4d556d1 Frontend:
smxx
parents: 3324
diff changeset
    92
    mainNote = new QLabel(this);
7c72f4d556d1 Frontend:
smxx
parents: 3324
diff changeset
    93
    mainNote->setAlignment(Qt::AlignHCenter | Qt::AlignVCenter);
7c72f4d556d1 Frontend:
smxx
parents: 3324
diff changeset
    94
    mainNote->setWordWrap(true);
7c72f4d556d1 Frontend:
smxx
parents: 3324
diff changeset
    95
7c72f4d556d1 Frontend:
smxx
parents: 3324
diff changeset
    96
    QStringList Tips;
7c72f4d556d1 Frontend:
smxx
parents: 3324
diff changeset
    97
    Tips << tr("Tips", "Simply pick the same color as a friend to play together as a team. Each of you will still control his or her own hedgehogs but they'll win together.");
7c72f4d556d1 Frontend:
smxx
parents: 3324
diff changeset
    98
    Tips << tr("Tips", "Some weapons might do only low damage but they can be a lot more devastating in the right situation. Try to use the Desert Eagle to knock multiple hedgehogs into the water.");
7c72f4d556d1 Frontend:
smxx
parents: 3324
diff changeset
    99
    Tips << tr("Tips", "If you're unsure what to do and don't want to waste ammo, skip one round. But don't let too much time pass as there will be Sudden Death!");
7c72f4d556d1 Frontend:
smxx
parents: 3324
diff changeset
   100
    Tips << tr("Tips", "Want to save ropse? Release the rope in mid air and then shoot again. As long as you don't touch the ground you'll reuse your rope without wasting ammo!");
7c72f4d556d1 Frontend:
smxx
parents: 3324
diff changeset
   101
    Tips << tr("Tips", "If you'd like to keep others from using your preferred nickname on the official server, register an account at http://www.hedgewars.org/.");
7c72f4d556d1 Frontend:
smxx
parents: 3324
diff changeset
   102
    Tips << tr("Tips", "You're bored of default gameplay? Try one of the missions - they'll offer different gameplay depending on the one you picked.");
7c72f4d556d1 Frontend:
smxx
parents: 3324
diff changeset
   103
3074
271cfcb2bcda Frontend:
smxx
parents: 3061
diff changeset
   104
    if(isDevBuild)
3421
7c72f4d556d1 Frontend:
smxx
parents: 3324
diff changeset
   105
        mainNote->setText(QLabel::tr("This SVN build is 'work in progress' and may not be compatible with other versions of the game. Some features might be broken or incomplete. Use at your own risk!"));
7c72f4d556d1 Frontend:
smxx
parents: 3324
diff changeset
   106
    else
7c72f4d556d1 Frontend:
smxx
parents: 3324
diff changeset
   107
        mainNote->setText(QLabel::tr("Tip: ") + Tips[QTime(0, 0, 0).secsTo(QTime::currentTime()) % Tips.length()]);
7c72f4d556d1 Frontend:
smxx
parents: 3324
diff changeset
   108
7c72f4d556d1 Frontend:
smxx
parents: 3324
diff changeset
   109
    pageLayout->addWidget(mainNote, 4, 1, 1, 2);
3074
271cfcb2bcda Frontend:
smxx
parents: 3061
diff changeset
   110
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   111
    BtnSetup = addButton(":/res/Settings.png", pageLayout, 4, 3, true);
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   112
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   113
    //BtnInfo = addButton(":/res/About.png", pageLayout, 3, 1, 1, 2, true);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   114
    BtnInfo = addButton(":/res/HedgewarsTitle.png", pageLayout, 0, 0, 1, 4, true);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   115
    BtnInfo->setStyleSheet("border: transparent;background: transparent;");
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   116
    pageLayout->setAlignment(BtnInfo, Qt::AlignHCenter);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   117
    //pageLayout->setAlignment(BtnInfo, Qt::AlignHCenter);
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   118
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   119
    BtnExit = addButton(":/res/Exit.png", pageLayout, 4, 0, 1, 1, true);
3279
88139bfa63c8 frontend: moving/styling exit/back buttons so that they are displayed at similar positions. (no button-"jumping" on page switch anymore)
sheepluva
parents: 3236
diff changeset
   120
    BtnExit->setFixedHeight(BtnSetup->height());
88139bfa63c8 frontend: moving/styling exit/back buttons so that they are displayed at similar positions. (no button-"jumping" on page switch anymore)
sheepluva
parents: 3236
diff changeset
   121
    BtnExit->setStyleSheet("QPushButton{margin-top: 2px;}");
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   122
}
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   123
2516
effafd586a4e pass in sdli
nemo
parents: 2515
diff changeset
   124
PageEditTeam::PageEditTeam(QWidget* parent, SDLInteraction * sdli) :
692
07787e748831 code size reduse
displacer
parents: 686
diff changeset
   125
  AbstractPage(parent)
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   126
{
2516
effafd586a4e pass in sdli
nemo
parents: 2515
diff changeset
   127
    mySdli = sdli;
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   128
    QGridLayout * pageLayout = new QGridLayout(this);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   129
    QTabWidget * tbw = new QTabWidget(this);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   130
    QWidget * page1 = new QWidget(this);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   131
    QWidget * page2 = new QWidget(this);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   132
    tbw->addTab(page1, tr("General"));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   133
    tbw->addTab(page2, tr("Advanced"));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   134
    pageLayout->addWidget(tbw, 0, 0, 1, 3);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   135
    BtnTeamDiscard = addButton(":/res/Exit.png", pageLayout, 1, 0, true);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   136
    BtnTeamSave = addButton(":/res/Save.png", pageLayout, 1, 2, true);;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   137
    BtnTeamSave->setStyleSheet("QPushButton{margin: 12px 0px 12px 0px;}");
3279
88139bfa63c8 frontend: moving/styling exit/back buttons so that they are displayed at similar positions. (no button-"jumping" on page switch anymore)
sheepluva
parents: 3236
diff changeset
   138
    BtnTeamDiscard->setFixedHeight(BtnTeamSave->height());
88139bfa63c8 frontend: moving/styling exit/back buttons so that they are displayed at similar positions. (no button-"jumping" on page switch anymore)
sheepluva
parents: 3236
diff changeset
   139
    BtnTeamDiscard->setStyleSheet("QPushButton{margin-top: 31px;}");
2377
f3fab2b09e0c And in frontend
nemo
parents: 2369
diff changeset
   140
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   141
    QHBoxLayout * page1Layout = new QHBoxLayout(page1);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   142
    page1Layout->setAlignment(Qt::AlignTop);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   143
    QGridLayout * page2Layout = new QGridLayout(page2);
1252
2e2719c0a397 - Reorganize headers according to Qt's style guide
unc0rr
parents: 1249
diff changeset
   144
2e2719c0a397 - Reorganize headers according to Qt's style guide
unc0rr
parents: 1249
diff changeset
   145
// ====== Page 1 ======
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   146
    QVBoxLayout * vbox1 = new QVBoxLayout();
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   147
    QVBoxLayout * vbox2 = new QVBoxLayout();
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   148
    page1Layout->addLayout(vbox1);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   149
    page1Layout->addLayout(vbox2);
2377
f3fab2b09e0c And in frontend
nemo
parents: 2369
diff changeset
   150
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   151
    GBoxHedgehogs = new QGroupBox(this);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   152
    GBoxHedgehogs->setTitle(QGroupBox::tr("Team Members"));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   153
    GBoxHedgehogs->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   154
    QGridLayout * GBHLayout = new QGridLayout(GBoxHedgehogs);
1840
4747f0232b88 ttsmj2's random teams patch
unc0rr
parents: 1812
diff changeset
   155
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   156
    signalMapper = new QSignalMapper(this);
2377
f3fab2b09e0c And in frontend
nemo
parents: 2369
diff changeset
   157
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   158
    HatsModel * hatsModel = new HatsModel(GBoxHedgehogs);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   159
    for(int i = 0; i < 8; i++)
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   160
    {
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   161
        HHHats[i] = new QComboBox(GBoxHedgehogs);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   162
        HHHats[i]->setModel(hatsModel);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   163
        HHHats[i]->setIconSize(QSize(32, 37));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   164
        //HHHats[i]->setSizeAdjustPolicy(QComboBox::AdjustToContents);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   165
        //HHHats[i]->setModelColumn(1);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   166
        //HHHats[i]->setMinimumWidth(132);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   167
        GBHLayout->addWidget(HHHats[i], i, 0);
1840
4747f0232b88 ttsmj2's random teams patch
unc0rr
parents: 1812
diff changeset
   168
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   169
        HHNameEdit[i] = new QLineEdit(GBoxHedgehogs);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   170
        HHNameEdit[i]->setMaxLength(64);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   171
        HHNameEdit[i]->setMinimumWidth(120);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   172
        GBHLayout->addWidget(HHNameEdit[i], i, 1);
2377
f3fab2b09e0c And in frontend
nemo
parents: 2369
diff changeset
   173
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   174
        randButton[i] = addButton(":/res/dice.png", GBHLayout, i, 3, true);
1840
4747f0232b88 ttsmj2's random teams patch
unc0rr
parents: 1812
diff changeset
   175
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   176
        connect(randButton[i], SIGNAL(clicked()), signalMapper, SLOT(map()));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   177
            signalMapper->setMapping(randButton[i], i);
1840
4747f0232b88 ttsmj2's random teams patch
unc0rr
parents: 1812
diff changeset
   178
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   179
    }
1840
4747f0232b88 ttsmj2's random teams patch
unc0rr
parents: 1812
diff changeset
   180
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   181
    randTeamButton = addButton(QPushButton::tr("Random Team"), GBHLayout, 9, false);
1840
4747f0232b88 ttsmj2's random teams patch
unc0rr
parents: 1812
diff changeset
   182
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   183
    vbox1->addWidget(GBoxHedgehogs);
1252
2e2719c0a397 - Reorganize headers according to Qt's style guide
unc0rr
parents: 1249
diff changeset
   184
2e2719c0a397 - Reorganize headers according to Qt's style guide
unc0rr
parents: 1249
diff changeset
   185
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   186
    GBoxTeam = new QGroupBox(this);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   187
    GBoxTeam->setTitle(QGroupBox::tr("Team Settings"));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   188
    GBoxTeam->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   189
    QGridLayout * GBTLayout = new QGridLayout(GBoxTeam);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   190
    QLabel * tmpLabel = new QLabel(GBoxTeam);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   191
    tmpLabel->setText(QLabel::tr("Name"));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   192
    GBTLayout->addWidget(tmpLabel, 0, 0);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   193
    tmpLabel = new QLabel(GBoxTeam);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   194
    tmpLabel->setText(QLabel::tr("Type"));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   195
    GBTLayout->addWidget(tmpLabel, 1, 0);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   196
    tmpLabel = new QLabel(GBoxTeam);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   197
    tmpLabel->setText(QLabel::tr("Grave"));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   198
    GBTLayout->addWidget(tmpLabel, 2, 0);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   199
    tmpLabel = new QLabel(GBoxTeam);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   200
    tmpLabel->setText(QLabel::tr("Flag"));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   201
    GBTLayout->addWidget(tmpLabel, 3, 0);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   202
    tmpLabel = new QLabel(GBoxTeam);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   203
    tmpLabel->setText(QLabel::tr("Voice"));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   204
    GBTLayout->addWidget(tmpLabel, 4, 0);
2897
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   205
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   206
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   207
    TeamNameEdit = new QLineEdit(GBoxTeam);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   208
    TeamNameEdit->setMaxLength(64);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   209
    GBTLayout->addWidget(TeamNameEdit, 0, 1);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   210
    vbox2->addWidget(GBoxTeam);
2377
f3fab2b09e0c And in frontend
nemo
parents: 2369
diff changeset
   211
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   212
    CBTeamLvl = new QComboBox(GBoxTeam);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   213
    CBTeamLvl->setIconSize(QSize(48, 48));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   214
    CBTeamLvl->addItem(QIcon(":/res/botlevels/0.png"), QComboBox::tr("Human"));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   215
    for(int i = 5; i > 0; i--)
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   216
        CBTeamLvl->addItem(
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   217
                QIcon(QString(":/res/botlevels/%1.png").arg(6 - i)),
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   218
                QString("%1 %2").arg(QComboBox::tr("Level")).arg(i)
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   219
                );
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   220
    GBTLayout->addWidget(CBTeamLvl, 1, 1);
2377
f3fab2b09e0c And in frontend
nemo
parents: 2369
diff changeset
   221
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   222
    CBGrave = new QComboBox(GBoxTeam);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   223
    CBGrave->setMaxCount(65535);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   224
    CBGrave->setIconSize(QSize(32, 32));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   225
    GBTLayout->addWidget(CBGrave, 2, 1);
1684
b3f4ec08f0a4 A button for checking voicepack (doesn't work yet)
unc0rr
parents: 1677
diff changeset
   226
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   227
    CBFlag = new QComboBox(GBoxTeam);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   228
    CBFlag->setMaxCount(65535);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   229
    CBFlag->setIconSize(QSize(22, 15));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   230
    GBTLayout->addWidget(CBFlag, 3, 1);
2747
7889a3a9724f Server:
smxx
parents: 2733
diff changeset
   231
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   232
    {
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   233
        QHBoxLayout * hbox = new QHBoxLayout();
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   234
        CBVoicepack = new QComboBox(GBoxTeam);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   235
        {
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   236
            QDir tmpdir;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   237
            tmpdir.cd(datadir->absolutePath());
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   238
            tmpdir.cd("Sounds/voices");
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   239
            QStringList list = tmpdir.entryList(QDir::AllDirs | QDir::NoDotAndDotDot, QDir::Name);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   240
            CBVoicepack->addItems(list);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   241
        }
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   242
        hbox->addWidget(CBVoicepack, 100);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   243
        BtnTestSound = addButton(":/res/PlaySound.png", hbox, 1, true);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   244
        hbox->setStretchFactor(BtnTestSound, 1);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   245
        connect(BtnTestSound, SIGNAL(clicked()), this, SLOT(testSound()));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   246
        GBTLayout->addLayout(hbox, 4, 1);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   247
    }
1659
fd593a5e71fb Team class now supports voicepacks
unc0rr
parents: 1649
diff changeset
   248
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   249
    GBoxFort = new QGroupBox(this);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   250
    GBoxFort->setTitle(QGroupBox::tr("Fort"));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   251
    QGridLayout * GBFLayout = new QGridLayout(GBoxFort);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   252
    CBFort = new QComboBox(GBoxFort);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   253
    CBFort->setMaxCount(65535);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   254
    GBFLayout->addWidget(CBFort, 0, 0);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   255
    FortPreview = new SquareLabel(GBoxFort);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   256
    FortPreview->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   257
    FortPreview->setMinimumSize(128, 128);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   258
    FortPreview->setPixmap(QPixmap());
2072
6e0fcbcc3f60 Custom controls implementing paintEvent play poorly with stars, especially SquareLabel
nemo
parents: 2071
diff changeset
   259
    // perhaps due to handling its own paintevents, SquareLabel doesn't play nice with the stars
6e0fcbcc3f60 Custom controls implementing paintEvent play poorly with stars, especially SquareLabel
nemo
parents: 2071
diff changeset
   260
    //FortPreview->setAttribute(Qt::WA_PaintOnScreen, true);
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   261
    GBFLayout->addWidget(FortPreview, 1, 0);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   262
    vbox2->addWidget(GBoxFort);
1252
2e2719c0a397 - Reorganize headers according to Qt's style guide
unc0rr
parents: 1249
diff changeset
   263
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   264
    QDir tmpdir;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   265
    tmpdir.cd(datadir->absolutePath());
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   266
    tmpdir.cd("Forts");
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   267
    tmpdir.setFilter(QDir::Files);
1252
2e2719c0a397 - Reorganize headers according to Qt's style guide
unc0rr
parents: 1249
diff changeset
   268
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   269
    connect(CBFort, SIGNAL(currentIndexChanged(const QString &)), this, SLOT(CBFort_activated(const QString &)));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   270
    CBFort->addItems(tmpdir.entryList(QStringList("*L.png")).replaceInStrings(QRegExp("^(.*)L\\.png"), "\\1"));
2377
f3fab2b09e0c And in frontend
nemo
parents: 2369
diff changeset
   271
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   272
    tmpdir.cd("../Graphics/Graves");
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   273
    QStringList list = tmpdir.entryList(QStringList("*.png"));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   274
    for (QStringList::Iterator it = list.begin(); it != list.end(); ++it )
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   275
    {
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   276
        QPixmap pix(datadir->absolutePath() + "/Graphics/Graves/" + *it);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   277
        QIcon icon(pix.copy(0, 0, 32, 32));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   278
        CBGrave->addItem(icon, (*it).replace(QRegExp("^(.*)\\.png"), "\\1"));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   279
    }
1252
2e2719c0a397 - Reorganize headers according to Qt's style guide
unc0rr
parents: 1249
diff changeset
   280
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   281
    tmpdir.cd(datadir->absolutePath());
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   282
    tmpdir.cd("Graphics/Flags");
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   283
    list = tmpdir.entryList(QStringList("*.png"));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   284
    for (QStringList::Iterator it = list.begin(); it != list.end(); ++it )
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   285
    {
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   286
        QPixmap pix(datadir->absolutePath() + "/Graphics/Flags/" + *it);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   287
        QIcon icon(pix.copy(0, 0, 22, 15));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   288
        if(it->compare("cpu.png")) // skip cpu flag
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   289
            CBFlag->addItem(icon, (*it).replace(QRegExp("^(.*)\\.png"), "\\1"));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   290
    }
2747
7889a3a9724f Server:
smxx
parents: 2733
diff changeset
   291
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   292
    vbox1->addStretch();
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   293
    vbox2->addStretch();
1252
2e2719c0a397 - Reorganize headers according to Qt's style guide
unc0rr
parents: 1249
diff changeset
   294
2e2719c0a397 - Reorganize headers according to Qt's style guide
unc0rr
parents: 1249
diff changeset
   295
// ====== Page 2 ======
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   296
    GBoxBinds = new QGroupBox(this);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   297
    GBoxBinds->setTitle(QGroupBox::tr("Key binds"));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   298
    QGridLayout * GBBLayout = new QGridLayout(GBoxBinds);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   299
    BindsBox = new QToolBox(GBoxBinds);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   300
    BindsBox->setLineWidth(0);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   301
    GBBLayout->addWidget(BindsBox);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   302
    page2Layout->addWidget(GBoxBinds, 0, 0);
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   303
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   304
    quint16 i = 0;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   305
    quint16 num = 0;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   306
    QWidget * curW = NULL;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   307
    QGridLayout * pagelayout = NULL;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   308
    QLabel* l = NULL;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   309
    while (i < BINDS_NUMBER) {
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   310
        if(cbinds[i].category != NULL)
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   311
        {
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   312
            if(curW != NULL)
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   313
            {
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   314
                l = new QLabel(curW);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   315
                l->setText("");
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   316
                pagelayout->addWidget(l, num++, 0, 1, 2);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   317
            }
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   318
            curW = new QWidget(this);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   319
            BindsBox->addItem(curW, QApplication::translate("binds (categories)", cbinds[i].category));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   320
            pagelayout = new QGridLayout(curW);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   321
            num = 0;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   322
        }
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   323
        if(cbinds[i].description != NULL)
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   324
        {
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   325
            l = new QLabel(curW);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   326
            l->setText((num > 0 ? QString("\n") : QString("")) + QApplication::translate("binds (descriptions)", cbinds[i].description));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   327
            pagelayout->addWidget(l, num++, 0, 1, 2);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   328
        }
2428
6800f8aa0184 Huge Smaxx patch with some fixes by me:
unc0rr
parents: 2414
diff changeset
   329
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   330
        l = new QLabel(curW);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   331
        l->setText(QApplication::translate("binds", cbinds[i].name));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   332
        l->setAlignment(Qt::AlignRight);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   333
        pagelayout->addWidget(l, num, 0);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   334
        CBBind[i] = new QComboBox(curW);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   335
        for(int j = 0; sdlkeys[j][1][0] != '\0'; j++)
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   336
            CBBind[i]->addItem(QApplication::translate("binds (keys)", sdlkeys[j][1]).contains(": ") ? QApplication::translate("binds (keys)", sdlkeys[j][1]) : QApplication::translate("binds (keys)", "Keyboard") + QString(": ") + QApplication::translate("binds (keys)", sdlkeys[j][1]), sdlkeys[j][0]);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   337
        pagelayout->addWidget(CBBind[i++], num++, 1);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   338
    }
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   339
}
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   340
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   341
void PageEditTeam::CBFort_activated(const QString & fortname)
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   342
{
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   343
    QPixmap pix(datadir->absolutePath() + "/Forts/" + fortname + "L.png");
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   344
    FortPreview->setPixmap(pix);
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   345
}
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   346
2516
effafd586a4e pass in sdli
nemo
parents: 2515
diff changeset
   347
void PageEditTeam::testSound()
1684
b3f4ec08f0a4 A button for checking voicepack (doesn't work yet)
unc0rr
parents: 1677
diff changeset
   348
{
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   349
    Mix_Chunk *sound;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   350
    QDir tmpdir;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   351
    mySdli->SDLMusicInit();
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   352
    
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   353
    tmpdir.cd(datadir->absolutePath());
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   354
    tmpdir.cd("Sounds/voices");
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   355
    tmpdir.cd(CBVoicepack->currentText());
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   356
    QStringList list = tmpdir.entryList(QStringList() << "Illgetyou.ogg" << "Incoming.ogg" << "Stupid.ogg" << "Coward.ogg" << "Firstblood.ogg", QDir::Files);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   357
    if (list.size()) {
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   358
        sound = Mix_LoadWAV(QString(tmpdir.absolutePath() + "/" + list[rand() % list.size()]).toLocal8Bit().constData());
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   359
        Mix_PlayChannel(-1, sound, 0);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   360
    }
1684
b3f4ec08f0a4 A button for checking voicepack (doesn't work yet)
unc0rr
parents: 1677
diff changeset
   361
}
b3f4ec08f0a4 A button for checking voicepack (doesn't work yet)
unc0rr
parents: 1677
diff changeset
   362
1287
4a0cbcbe3521 Move preview icons into comboboxes
unc0rr
parents: 1282
diff changeset
   363
PageMultiplayer::PageMultiplayer(QWidget* parent) :
692
07787e748831 code size reduse
displacer
parents: 686
diff changeset
   364
  AbstractPage(parent)
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   365
{
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   366
    QGridLayout * pageLayout = new QGridLayout(this);
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   367
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   368
    BtnBack = addButton(":/res/Exit.png", pageLayout, 2, 0, true);
187
96c3154efee5 "About" page, not yet filled with content
unc0rr
parents: 184
diff changeset
   369
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   370
    gameCFG = new GameCFGWidget(this);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   371
    pageLayout->addWidget(gameCFG, 0, 0, 1, 2);
696
d6f32ed6edc8 working multiplayer weapons combo
displacer
parents: 693
diff changeset
   372
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   373
    pageLayout->setRowStretch(1, 1);
1218
ada50f82ea53 Save some pixels for chat widget
unc0rr
parents: 1216
diff changeset
   374
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   375
    teamsSelect = new TeamSelWidget(this);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   376
    pageLayout->addWidget(teamsSelect, 0, 2, 2, 2);
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   377
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   378
    BtnStartMPGame = addButton(tr("Start"), pageLayout, 2, 3);
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   379
}
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   380
1249
b6670a6ea2d0 Remove 25pix margin on every page, so exit button is almost in the same place on all pages
unc0rr
parents: 1240
diff changeset
   381
PageOptions::PageOptions(QWidget* parent) :
692
07787e748831 code size reduse
displacer
parents: 686
diff changeset
   382
  AbstractPage(parent)
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   383
{
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   384
    QGridLayout * pageLayout = new QGridLayout(this);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   385
    pageLayout->setColumnStretch(0, 100);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   386
    pageLayout->setColumnStretch(1, 100);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   387
    pageLayout->setColumnStretch(2, 100);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   388
    pageLayout->setRowStretch(0, 0);
3284
7ffd0e20ad08 Palewolf:
sheepluva
parents: 3283
diff changeset
   389
    //pageLayout->setRowStretch(1, 100);
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   390
    pageLayout->setRowStretch(2, 0);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   391
    pageLayout->setContentsMargins(7, 7, 7, 0);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   392
    pageLayout->setSpacing(0);
427
b505012a3f15 New widgets layout on PageOptions
unc0rr
parents: 421
diff changeset
   393
1198
b600b0d9408c Reorganize widgets on options page
unc0rr
parents: 1194
diff changeset
   394
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   395
    QGroupBox * gbTwoBoxes = new QGroupBox(this);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   396
    pageLayout->addWidget(gbTwoBoxes, 0, 0, 1, 3);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   397
    QGridLayout * gbTBLayout = new QGridLayout(gbTwoBoxes);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   398
    gbTBLayout->setMargin(0);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   399
    gbTBLayout->setSpacing(0);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   400
    gbTBLayout->setAlignment(Qt::AlignTop | Qt::AlignLeft);
3044
8466bd29280f Engine:
smxx
parents: 3011
diff changeset
   401
8466bd29280f Engine:
smxx
parents: 3011
diff changeset
   402
    QPixmap pmNew(":/res/new.png");
8466bd29280f Engine:
smxx
parents: 3011
diff changeset
   403
    QPixmap pmEdit(":/res/edit.png");
8466bd29280f Engine:
smxx
parents: 3011
diff changeset
   404
    QPixmap pmDelete(":/res/delete.png");
8466bd29280f Engine:
smxx
parents: 3011
diff changeset
   405
2897
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   406
        {
2395
d01d3bf3e1de makes the updater optional at compile time
koda
parents: 2392
diff changeset
   407
            teamsBox = new IconedGroupBox(this);
2897
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   408
            //teamsBox->setContentTopPadding(0);
2395
d01d3bf3e1de makes the updater optional at compile time
koda
parents: 2392
diff changeset
   409
            //teamsBox->setAttribute(Qt::WA_PaintOnScreen, true);
d01d3bf3e1de makes the updater optional at compile time
koda
parents: 2392
diff changeset
   410
            teamsBox->setIcon(QIcon(":/res/teamicon.png"));
d01d3bf3e1de makes the updater optional at compile time
koda
parents: 2392
diff changeset
   411
            teamsBox->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed);
d01d3bf3e1de makes the updater optional at compile time
koda
parents: 2392
diff changeset
   412
            teamsBox->setTitle(QGroupBox::tr("Teams"));
1198
b600b0d9408c Reorganize widgets on options page
unc0rr
parents: 1194
diff changeset
   413
3044
8466bd29280f Engine:
smxx
parents: 3011
diff changeset
   414
            QGridLayout * GBTlayout = new QGridLayout(teamsBox);
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   415
2395
d01d3bf3e1de makes the updater optional at compile time
koda
parents: 2392
diff changeset
   416
            CBTeamName = new QComboBox(teamsBox);
3044
8466bd29280f Engine:
smxx
parents: 3011
diff changeset
   417
            GBTlayout->addWidget(CBTeamName, 0, 0);
8466bd29280f Engine:
smxx
parents: 3011
diff changeset
   418
8466bd29280f Engine:
smxx
parents: 3011
diff changeset
   419
            BtnNewTeam = new QPushButton(teamsBox);
8466bd29280f Engine:
smxx
parents: 3011
diff changeset
   420
            BtnNewTeam->setToolTip(tr("New team"));
8466bd29280f Engine:
smxx
parents: 3011
diff changeset
   421
            BtnNewTeam->setIconSize(pmNew.size());
8466bd29280f Engine:
smxx
parents: 3011
diff changeset
   422
            BtnNewTeam->setIcon(pmNew);
8466bd29280f Engine:
smxx
parents: 3011
diff changeset
   423
            BtnNewTeam->setMaximumWidth(pmNew.width() + 6);
8466bd29280f Engine:
smxx
parents: 3011
diff changeset
   424
            GBTlayout->addWidget(BtnNewTeam, 0, 1);
2377
f3fab2b09e0c And in frontend
nemo
parents: 2369
diff changeset
   425
3044
8466bd29280f Engine:
smxx
parents: 3011
diff changeset
   426
            BtnEditTeam = new QPushButton(teamsBox);
8466bd29280f Engine:
smxx
parents: 3011
diff changeset
   427
            BtnEditTeam->setToolTip(tr("Edit team"));
8466bd29280f Engine:
smxx
parents: 3011
diff changeset
   428
            BtnEditTeam->setIconSize(pmEdit.size());
8466bd29280f Engine:
smxx
parents: 3011
diff changeset
   429
            BtnEditTeam->setIcon(pmEdit);
8466bd29280f Engine:
smxx
parents: 3011
diff changeset
   430
            BtnEditTeam->setMaximumWidth(pmEdit.width() + 6);
8466bd29280f Engine:
smxx
parents: 3011
diff changeset
   431
            GBTlayout->addWidget(BtnEditTeam, 0, 2);
8466bd29280f Engine:
smxx
parents: 3011
diff changeset
   432
8466bd29280f Engine:
smxx
parents: 3011
diff changeset
   433
            BtnDeleteTeam = new QPushButton(teamsBox);
8466bd29280f Engine:
smxx
parents: 3011
diff changeset
   434
            BtnDeleteTeam->setToolTip(tr("Delete team"));
8466bd29280f Engine:
smxx
parents: 3011
diff changeset
   435
            BtnDeleteTeam->setIconSize(pmDelete.size());
8466bd29280f Engine:
smxx
parents: 3011
diff changeset
   436
            BtnDeleteTeam->setIcon(pmDelete);
8466bd29280f Engine:
smxx
parents: 3011
diff changeset
   437
            BtnDeleteTeam->setMaximumWidth(pmDelete.width() + 6);
8466bd29280f Engine:
smxx
parents: 3011
diff changeset
   438
            GBTlayout->addWidget(BtnDeleteTeam, 0, 3);
1199
543d1268847b More work on options page
unc0rr
parents: 1198
diff changeset
   439
3324
339b271d6641 Frontend:
smxx
parents: 3287
diff changeset
   440
            LblNoEditTeam = new QLabel(teamsBox);
339b271d6641 Frontend:
smxx
parents: 3287
diff changeset
   441
            LblNoEditTeam->setText(tr("You can't edit teams from team selection. Go back to main menu to add, edit or delete teams."));
339b271d6641 Frontend:
smxx
parents: 3287
diff changeset
   442
            LblNoEditTeam->setWordWrap(true);
339b271d6641 Frontend:
smxx
parents: 3287
diff changeset
   443
            LblNoEditTeam->setVisible(false);
339b271d6641 Frontend:
smxx
parents: 3287
diff changeset
   444
            GBTlayout->addWidget(LblNoEditTeam, 0, 0);
339b271d6641 Frontend:
smxx
parents: 3287
diff changeset
   445
2395
d01d3bf3e1de makes the updater optional at compile time
koda
parents: 2392
diff changeset
   446
            gbTBLayout->addWidget(teamsBox, 0, 0);
2897
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   447
        }
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   448
2395
d01d3bf3e1de makes the updater optional at compile time
koda
parents: 2392
diff changeset
   449
        {
3044
8466bd29280f Engine:
smxx
parents: 3011
diff changeset
   450
            // TODO: This box should contain controls for all schemes: game modes and weapons
8466bd29280f Engine:
smxx
parents: 3011
diff changeset
   451
2395
d01d3bf3e1de makes the updater optional at compile time
koda
parents: 2392
diff changeset
   452
            IconedGroupBox* groupWeapons = new IconedGroupBox(this);
2897
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   453
            //groupWeapons->setContentTopPadding(0);
3284
7ffd0e20ad08 Palewolf:
sheepluva
parents: 3283
diff changeset
   454
            //groupWeapons->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);
2395
d01d3bf3e1de makes the updater optional at compile time
koda
parents: 2392
diff changeset
   455
            groupWeapons->setIcon(QIcon(":/res/weaponsicon.png"));
3284
7ffd0e20ad08 Palewolf:
sheepluva
parents: 3283
diff changeset
   456
            groupWeapons->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed);
2395
d01d3bf3e1de makes the updater optional at compile time
koda
parents: 2392
diff changeset
   457
            groupWeapons->setTitle(QGroupBox::tr("Weapons"));
d01d3bf3e1de makes the updater optional at compile time
koda
parents: 2392
diff changeset
   458
            QGridLayout * WeaponsLayout = new QGridLayout(groupWeapons);
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   459
3044
8466bd29280f Engine:
smxx
parents: 3011
diff changeset
   460
            WeaponsName = new QComboBox(groupWeapons);
8466bd29280f Engine:
smxx
parents: 3011
diff changeset
   461
            WeaponsLayout->addWidget(WeaponsName, 0, 0);
8466bd29280f Engine:
smxx
parents: 3011
diff changeset
   462
8466bd29280f Engine:
smxx
parents: 3011
diff changeset
   463
            WeaponsButt = new QPushButton(groupWeapons);
8466bd29280f Engine:
smxx
parents: 3011
diff changeset
   464
            WeaponsButt->setToolTip(tr("New weapon scheme"));
8466bd29280f Engine:
smxx
parents: 3011
diff changeset
   465
            WeaponsButt->setIconSize(pmNew.size());
8466bd29280f Engine:
smxx
parents: 3011
diff changeset
   466
            WeaponsButt->setIcon(pmNew);
8466bd29280f Engine:
smxx
parents: 3011
diff changeset
   467
            WeaponsButt->setMaximumWidth(pmNew.width() + 6);
8466bd29280f Engine:
smxx
parents: 3011
diff changeset
   468
            WeaponsLayout->addWidget(WeaponsButt, 0, 1);
8466bd29280f Engine:
smxx
parents: 3011
diff changeset
   469
8466bd29280f Engine:
smxx
parents: 3011
diff changeset
   470
            WeaponEdit = new QPushButton(groupWeapons);
8466bd29280f Engine:
smxx
parents: 3011
diff changeset
   471
            WeaponEdit->setToolTip(tr("Edit weapon scheme"));
8466bd29280f Engine:
smxx
parents: 3011
diff changeset
   472
            WeaponEdit->setIconSize(pmEdit.size());
8466bd29280f Engine:
smxx
parents: 3011
diff changeset
   473
            WeaponEdit->setIcon(pmEdit);
8466bd29280f Engine:
smxx
parents: 3011
diff changeset
   474
            WeaponEdit->setMaximumWidth(pmEdit.width() + 6);
8466bd29280f Engine:
smxx
parents: 3011
diff changeset
   475
            WeaponsLayout->addWidget(WeaponEdit, 0, 2);
8466bd29280f Engine:
smxx
parents: 3011
diff changeset
   476
8466bd29280f Engine:
smxx
parents: 3011
diff changeset
   477
            WeaponDelete = new QPushButton(groupWeapons);
8466bd29280f Engine:
smxx
parents: 3011
diff changeset
   478
            WeaponDelete->setToolTip(tr("Delete weapon scheme"));
8466bd29280f Engine:
smxx
parents: 3011
diff changeset
   479
            WeaponDelete->setIconSize(pmDelete.size());
8466bd29280f Engine:
smxx
parents: 3011
diff changeset
   480
            WeaponDelete->setIcon(pmDelete);
8466bd29280f Engine:
smxx
parents: 3011
diff changeset
   481
            WeaponDelete->setMaximumWidth(pmDelete.width() + 6);
8466bd29280f Engine:
smxx
parents: 3011
diff changeset
   482
            WeaponDelete->setEnabled(false);
8466bd29280f Engine:
smxx
parents: 3011
diff changeset
   483
            WeaponDelete->setVisible(false); // hide for now
8466bd29280f Engine:
smxx
parents: 3011
diff changeset
   484
            WeaponsLayout->addWidget(WeaponDelete, 0, 3);
2747
7889a3a9724f Server:
smxx
parents: 2733
diff changeset
   485
7889a3a9724f Server:
smxx
parents: 2733
diff changeset
   486
            WeaponTooltip = new QCheckBox(this);
7889a3a9724f Server:
smxx
parents: 2733
diff changeset
   487
            WeaponTooltip->setText(QCheckBox::tr("Show ammo menu tooltips"));
3044
8466bd29280f Engine:
smxx
parents: 3011
diff changeset
   488
            WeaponsLayout->addWidget(WeaponTooltip, 1, 0, 1, 3);
2747
7889a3a9724f Server:
smxx
parents: 2733
diff changeset
   489
2395
d01d3bf3e1de makes the updater optional at compile time
koda
parents: 2392
diff changeset
   490
            gbTBLayout->addWidget(groupWeapons, 1, 0);
d01d3bf3e1de makes the updater optional at compile time
koda
parents: 2392
diff changeset
   491
        }
2377
f3fab2b09e0c And in frontend
nemo
parents: 2369
diff changeset
   492
2395
d01d3bf3e1de makes the updater optional at compile time
koda
parents: 2392
diff changeset
   493
        {
2897
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   494
            IconedGroupBox* groupMisc = new IconedGroupBox(this);
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   495
            //groupMisc->setContentTopPadding(0);
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   496
            groupMisc->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   497
            groupMisc->setIcon(QIcon(":/res/miscicon.png"));
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   498
            //groupMisc->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed);
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   499
            groupMisc->setTitle(QGroupBox::tr("Misc"));
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   500
            QGridLayout * MiscLayout = new QGridLayout(groupMisc);
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   501
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   502
            labelNN = new QLabel(groupMisc);
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   503
            labelNN->setText(QLabel::tr("Net nick"));
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   504
            MiscLayout->addWidget(labelNN, 0, 0);
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   505
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   506
            editNetNick = new QLineEdit(groupMisc);
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   507
            editNetNick->setMaxLength(20);
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   508
            editNetNick->setText(QLineEdit::tr("unnamed"));
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   509
            MiscLayout->addWidget(editNetNick, 0, 1);
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   510
2898
c53636f556f8 Frontend:
smxx
parents: 2897
diff changeset
   511
            QLabel *labelLanguage = new QLabel(groupMisc);
c53636f556f8 Frontend:
smxx
parents: 2897
diff changeset
   512
            labelLanguage->setText(QLabel::tr("Locale") + " *");
c53636f556f8 Frontend:
smxx
parents: 2897
diff changeset
   513
            MiscLayout->addWidget(labelLanguage, 1, 0);
c53636f556f8 Frontend:
smxx
parents: 2897
diff changeset
   514
c53636f556f8 Frontend:
smxx
parents: 2897
diff changeset
   515
            CBLanguage = new QComboBox(groupMisc);
c53636f556f8 Frontend:
smxx
parents: 2897
diff changeset
   516
            QDir tmpdir;
c53636f556f8 Frontend:
smxx
parents: 2897
diff changeset
   517
            tmpdir.cd(datadir->absolutePath());
c53636f556f8 Frontend:
smxx
parents: 2897
diff changeset
   518
            tmpdir.cd("Locale");
c53636f556f8 Frontend:
smxx
parents: 2897
diff changeset
   519
            tmpdir.setFilter(QDir::Files);
c53636f556f8 Frontend:
smxx
parents: 2897
diff changeset
   520
            QStringList locs = tmpdir.entryList(QStringList("hedgewars_*.qm"));
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   521
            CBLanguage->addItem(QComboBox::tr("(System default)"), QString(""));
2898
c53636f556f8 Frontend:
smxx
parents: 2897
diff changeset
   522
            for(int i = 0; i < locs.count(); i++)
c53636f556f8 Frontend:
smxx
parents: 2897
diff changeset
   523
            {
c53636f556f8 Frontend:
smxx
parents: 2897
diff changeset
   524
                QLocale loc(locs[i].replace(QRegExp("hedgewars_(.*)\\.qm"), "\\1"));
c53636f556f8 Frontend:
smxx
parents: 2897
diff changeset
   525
                CBLanguage->addItem(QLocale::languageToString(loc.language()) + " (" + QLocale::countryToString(loc.country()) + ")", loc.name());
c53636f556f8 Frontend:
smxx
parents: 2897
diff changeset
   526
            }
c53636f556f8 Frontend:
smxx
parents: 2897
diff changeset
   527
c53636f556f8 Frontend:
smxx
parents: 2897
diff changeset
   528
            MiscLayout->addWidget(CBLanguage, 1, 1);
c53636f556f8 Frontend:
smxx
parents: 2897
diff changeset
   529
2897
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   530
            CBAltDamage = new QCheckBox(groupMisc);
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   531
            CBAltDamage->setText(QCheckBox::tr("Alternative damage show"));
2898
c53636f556f8 Frontend:
smxx
parents: 2897
diff changeset
   532
            MiscLayout->addWidget(CBAltDamage, 2, 0, 1, 2);
2897
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   533
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   534
            CBNameWithDate = new QCheckBox(groupMisc);
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   535
            CBNameWithDate->setText(QCheckBox::tr("Append date and time to record file name"));
2898
c53636f556f8 Frontend:
smxx
parents: 2897
diff changeset
   536
            MiscLayout->addWidget(CBNameWithDate, 3, 0, 1, 2);
2897
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   537
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   538
#ifdef SPARKLE_ENABLED
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   539
            CBAutoUpdate = new QCheckBox(groupMisc);
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   540
            CBAutoUpdate->setText(QCheckBox::tr("Check for updates at startup"));
2898
c53636f556f8 Frontend:
smxx
parents: 2897
diff changeset
   541
            MiscLayout->addWidget(CBAutoUpdate, 4, 0, 1, 2);
2897
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   542
#endif
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   543
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   544
            gbTBLayout->addWidget(groupMisc, 2, 0);
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   545
        }
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   546
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   547
        {
2395
d01d3bf3e1de makes the updater optional at compile time
koda
parents: 2392
diff changeset
   548
            AGGroupBox = new IconedGroupBox(this);
2897
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   549
            //AGGroupBox->setContentTopPadding(0);
2395
d01d3bf3e1de makes the updater optional at compile time
koda
parents: 2392
diff changeset
   550
            AGGroupBox->setIcon(QIcon(":/res/graphicsicon.png"));
3284
7ffd0e20ad08 Palewolf:
sheepluva
parents: 3283
diff changeset
   551
            //AGGroupBox->setSizePolicy(QSizePolicy::MinimumExpanding, QSizePolicy::Fixed);
2395
d01d3bf3e1de makes the updater optional at compile time
koda
parents: 2392
diff changeset
   552
            AGGroupBox->setTitle(QGroupBox::tr("Audio/Graphic options"));
427
b505012a3f15 New widgets layout on PageOptions
unc0rr
parents: 421
diff changeset
   553
2395
d01d3bf3e1de makes the updater optional at compile time
koda
parents: 2392
diff changeset
   554
            QVBoxLayout * GBAlayout = new QVBoxLayout(AGGroupBox);
d01d3bf3e1de makes the updater optional at compile time
koda
parents: 2392
diff changeset
   555
            QHBoxLayout * GBAreslayout = new QHBoxLayout(0);
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   556
2428
6800f8aa0184 Huge Smaxx patch with some fixes by me:
unc0rr
parents: 2414
diff changeset
   557
            CBFrontendFullscreen = new QCheckBox(AGGroupBox);
6800f8aa0184 Huge Smaxx patch with some fixes by me:
unc0rr
parents: 2414
diff changeset
   558
            CBFrontendFullscreen->setText(QCheckBox::tr("Frontend fullscreen"));
6800f8aa0184 Huge Smaxx patch with some fixes by me:
unc0rr
parents: 2414
diff changeset
   559
            GBAlayout->addWidget(CBFrontendFullscreen);
6800f8aa0184 Huge Smaxx patch with some fixes by me:
unc0rr
parents: 2414
diff changeset
   560
6800f8aa0184 Huge Smaxx patch with some fixes by me:
unc0rr
parents: 2414
diff changeset
   561
            CBFrontendEffects = new QCheckBox(AGGroupBox);
2898
c53636f556f8 Frontend:
smxx
parents: 2897
diff changeset
   562
            CBFrontendEffects->setText(QCheckBox::tr("Frontend effects") + " *");
2428
6800f8aa0184 Huge Smaxx patch with some fixes by me:
unc0rr
parents: 2414
diff changeset
   563
            GBAlayout->addWidget(CBFrontendEffects);
6800f8aa0184 Huge Smaxx patch with some fixes by me:
unc0rr
parents: 2414
diff changeset
   564
2897
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   565
            CBEnableFrontendSound = new QCheckBox(AGGroupBox);
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   566
            CBEnableFrontendSound->setText(QCheckBox::tr("Enable frontend sounds"));
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   567
            GBAlayout->addWidget(CBEnableFrontendSound);
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   568
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   569
            CBEnableFrontendMusic = new QCheckBox(AGGroupBox);
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   570
            CBEnableFrontendMusic->setText(QCheckBox::tr("Enable frontend music"));
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   571
            GBAlayout->addWidget(CBEnableFrontendMusic);
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   572
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   573
            QFrame * hr = new QFrame(AGGroupBox);
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   574
            hr->setFrameStyle(QFrame::HLine);
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   575
            hr->setLineWidth(3);
3284
7ffd0e20ad08 Palewolf:
sheepluva
parents: 3283
diff changeset
   576
            hr->setFixedHeight(10);
2897
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   577
            GBAlayout->addWidget(hr);
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   578
2395
d01d3bf3e1de makes the updater optional at compile time
koda
parents: 2392
diff changeset
   579
            QLabel * resolution = new QLabel(AGGroupBox);
d01d3bf3e1de makes the updater optional at compile time
koda
parents: 2392
diff changeset
   580
            resolution->setText(QLabel::tr("Resolution"));
d01d3bf3e1de makes the updater optional at compile time
koda
parents: 2392
diff changeset
   581
            GBAreslayout->addWidget(resolution);
d01d3bf3e1de makes the updater optional at compile time
koda
parents: 2392
diff changeset
   582
d01d3bf3e1de makes the updater optional at compile time
koda
parents: 2392
diff changeset
   583
            CBResolution = new QComboBox(AGGroupBox);
d01d3bf3e1de makes the updater optional at compile time
koda
parents: 2392
diff changeset
   584
            GBAreslayout->addWidget(CBResolution);
d01d3bf3e1de makes the updater optional at compile time
koda
parents: 2392
diff changeset
   585
            GBAlayout->addLayout(GBAreslayout);
1812
3d4692e825e7 'Reduce quality' patch by nemo
unc0rr
parents: 1810
diff changeset
   586
2437
10e4b5fc0d93 fix sound by smaxx and other stuff by me
koda
parents: 2428
diff changeset
   587
            CBFullscreen = new QCheckBox(AGGroupBox);
10e4b5fc0d93 fix sound by smaxx and other stuff by me
koda
parents: 2428
diff changeset
   588
            CBFullscreen->setText(QCheckBox::tr("Fullscreen"));
10e4b5fc0d93 fix sound by smaxx and other stuff by me
koda
parents: 2428
diff changeset
   589
            GBAlayout->addWidget(CBFullscreen);
10e4b5fc0d93 fix sound by smaxx and other stuff by me
koda
parents: 2428
diff changeset
   590
2395
d01d3bf3e1de makes the updater optional at compile time
koda
parents: 2392
diff changeset
   591
            CBReduceQuality = new QCheckBox(AGGroupBox);
2428
6800f8aa0184 Huge Smaxx patch with some fixes by me:
unc0rr
parents: 2414
diff changeset
   592
            CBReduceQuality->setText(QCheckBox::tr("Reduced quality"));
2395
d01d3bf3e1de makes the updater optional at compile time
koda
parents: 2392
diff changeset
   593
            GBAlayout->addWidget(CBReduceQuality);
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   594
2897
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   595
            hr = new QFrame(AGGroupBox);
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   596
            hr->setFrameStyle(QFrame::HLine);
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   597
            hr->setLineWidth(3);
3284
7ffd0e20ad08 Palewolf:
sheepluva
parents: 3283
diff changeset
   598
            hr->setFixedHeight(10);
2897
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   599
            GBAlayout->addWidget(hr);
2776
9572aae13d49 Only enable chirp for room owner
nemo
parents: 2775
diff changeset
   600
2395
d01d3bf3e1de makes the updater optional at compile time
koda
parents: 2392
diff changeset
   601
            QHBoxLayout * GBAvollayout = new QHBoxLayout(0);
d01d3bf3e1de makes the updater optional at compile time
koda
parents: 2392
diff changeset
   602
            QLabel * vol = new QLabel(AGGroupBox);
d01d3bf3e1de makes the updater optional at compile time
koda
parents: 2392
diff changeset
   603
            vol->setText(QLabel::tr("Initial sound volume"));
d01d3bf3e1de makes the updater optional at compile time
koda
parents: 2392
diff changeset
   604
            GBAvollayout->addWidget(vol);
d01d3bf3e1de makes the updater optional at compile time
koda
parents: 2392
diff changeset
   605
            GBAlayout->addLayout(GBAvollayout);
d01d3bf3e1de makes the updater optional at compile time
koda
parents: 2392
diff changeset
   606
            volumeBox = new QSpinBox(AGGroupBox);
d01d3bf3e1de makes the updater optional at compile time
koda
parents: 2392
diff changeset
   607
            volumeBox->setRange(0, 100);
d01d3bf3e1de makes the updater optional at compile time
koda
parents: 2392
diff changeset
   608
            volumeBox->setSingleStep(5);
d01d3bf3e1de makes the updater optional at compile time
koda
parents: 2392
diff changeset
   609
            GBAvollayout->addWidget(volumeBox);
1777
88674c291331 Implement initial sound volume option
unc0rr
parents: 1718
diff changeset
   610
2897
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   611
            CBEnableSound = new QCheckBox(AGGroupBox);
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   612
            CBEnableSound->setText(QCheckBox::tr("Enable sound"));
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   613
            GBAlayout->addWidget(CBEnableSound);
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   614
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   615
            CBEnableMusic = new QCheckBox(AGGroupBox);
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   616
            CBEnableMusic->setText(QCheckBox::tr("Enable music"));
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   617
            GBAlayout->addWidget(CBEnableMusic);
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   618
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   619
            hr = new QFrame(AGGroupBox);
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   620
            hr->setFrameStyle(QFrame::HLine);
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   621
            hr->setLineWidth(3);
3284
7ffd0e20ad08 Palewolf:
sheepluva
parents: 3283
diff changeset
   622
            hr->setFixedHeight(10);
2897
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   623
            GBAlayout->addWidget(hr);
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   624
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   625
            QHBoxLayout * GBAfpslayout = new QHBoxLayout(0);
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   626
            QLabel * maxfps = new QLabel(AGGroupBox);
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   627
            maxfps->setText(QLabel::tr("FPS limit"));
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   628
            GBAfpslayout->addWidget(maxfps);
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   629
            GBAlayout->addLayout(GBAfpslayout);
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   630
            fpsedit = new FPSEdit(AGGroupBox);
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   631
            GBAfpslayout->addWidget(fpsedit);
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   632
2395
d01d3bf3e1de makes the updater optional at compile time
koda
parents: 2392
diff changeset
   633
            CBShowFPS = new QCheckBox(AGGroupBox);
d01d3bf3e1de makes the updater optional at compile time
koda
parents: 2392
diff changeset
   634
            CBShowFPS->setText(QCheckBox::tr("Show FPS"));
d01d3bf3e1de makes the updater optional at compile time
koda
parents: 2392
diff changeset
   635
            GBAlayout->addWidget(CBShowFPS);
297
279e10ec31b4 'Show FPS' and 'FPS limit' options
unc0rr
parents: 290
diff changeset
   636
2898
c53636f556f8 Frontend:
smxx
parents: 2897
diff changeset
   637
            hr = new QFrame(AGGroupBox);
c53636f556f8 Frontend:
smxx
parents: 2897
diff changeset
   638
            hr->setFrameStyle(QFrame::HLine);
c53636f556f8 Frontend:
smxx
parents: 2897
diff changeset
   639
            hr->setLineWidth(3);
3284
7ffd0e20ad08 Palewolf:
sheepluva
parents: 3283
diff changeset
   640
            hr->setFixedHeight(10);
2898
c53636f556f8 Frontend:
smxx
parents: 2897
diff changeset
   641
            GBAlayout->addWidget(hr);
c53636f556f8 Frontend:
smxx
parents: 2897
diff changeset
   642
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   643
                QLabel *restartNote = new QLabel(this);
2898
c53636f556f8 Frontend:
smxx
parents: 2897
diff changeset
   644
            restartNote->setText(QString("* ") + QLabel::tr("Restart game to apply"));
3284
7ffd0e20ad08 Palewolf:
sheepluva
parents: 3283
diff changeset
   645
            restartNote->setSizePolicy(QSizePolicy::MinimumExpanding, QSizePolicy::Fixed);
2898
c53636f556f8 Frontend:
smxx
parents: 2897
diff changeset
   646
            GBAlayout->addWidget(restartNote);
c53636f556f8 Frontend:
smxx
parents: 2897
diff changeset
   647
2897
5eda7b3cc24f Frontend:
smxx
parents: 2894
diff changeset
   648
            gbTBLayout->addWidget(AGGroupBox, 0, 1, 3, 1);
2395
d01d3bf3e1de makes the updater optional at compile time
koda
parents: 2392
diff changeset
   649
        }
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   650
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   651
    BtnSaveOptions = addButton(":/res/Save.png", pageLayout, 2, 2, true);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   652
    BtnSaveOptions->setStyleSheet("QPushButton{margin: 12px 0px 12px 0px;}");
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   653
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   654
    BtnBack = addButton(":/res/Exit.png", pageLayout, 2, 0, true);
3279
88139bfa63c8 frontend: moving/styling exit/back buttons so that they are displayed at similar positions. (no button-"jumping" on page switch anymore)
sheepluva
parents: 3236
diff changeset
   655
    BtnBack->setFixedHeight(BtnSaveOptions->height());
88139bfa63c8 frontend: moving/styling exit/back buttons so that they are displayed at similar positions. (no button-"jumping" on page switch anymore)
sheepluva
parents: 3236
diff changeset
   656
    BtnBack->setFixedWidth(BtnBack->width()+2);
88139bfa63c8 frontend: moving/styling exit/back buttons so that they are displayed at similar positions. (no button-"jumping" on page switch anymore)
sheepluva
parents: 3236
diff changeset
   657
    BtnBack->setStyleSheet("QPushButton{margin: 22px 0 9px 2px;}");
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   658
}
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   659
1153
825931b81ad4 Iconed "Back" button everywhere
unc0rr
parents: 1152
diff changeset
   660
PageNet::PageNet(QWidget* parent) : AbstractPage(parent)
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   661
{
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   662
    QFont * font14 = new QFont("MS Shell Dlg", 14);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   663
    QGridLayout * pageLayout = new QGridLayout(this);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   664
    pageLayout->setColumnStretch(0, 1);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   665
    pageLayout->setColumnStretch(1, 1);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   666
    pageLayout->setColumnStretch(2, 1);
421
ebd79d171804 - Remake net game page
unc0rr
parents: 416
diff changeset
   667
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   668
    BtnNetSvrStart = new QPushButton(this);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   669
    BtnNetSvrStart->setFont(*font14);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   670
    BtnNetSvrStart->setText(QPushButton::tr("Start server"));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   671
    BtnNetSvrStart->setVisible(haveServer);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   672
    pageLayout->addWidget(BtnNetSvrStart, 4, 2);
1395
46fd70de89e2 Add "Join official server" button
unc0rr
parents: 1389
diff changeset
   673
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   674
    BtnBack = addButton(":/res/Exit.png", pageLayout, 4, 0, true);
2377
f3fab2b09e0c And in frontend
nemo
parents: 2369
diff changeset
   675
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   676
    ConnGroupBox = new QGroupBox(this);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   677
    ConnGroupBox->setTitle(QGroupBox::tr("Net game"));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   678
    pageLayout->addWidget(ConnGroupBox, 2, 0, 1, 3);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   679
    GBClayout = new QGridLayout(ConnGroupBox);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   680
    GBClayout->setColumnStretch(0, 1);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   681
    GBClayout->setColumnStretch(1, 1);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   682
    GBClayout->setColumnStretch(2, 1);
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   683
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   684
    BtnNetConnect = new QPushButton(ConnGroupBox);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   685
    BtnNetConnect->setFont(*font14);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   686
    BtnNetConnect->setText(QPushButton::tr("Connect"));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   687
    GBClayout->addWidget(BtnNetConnect, 2, 2);
416
595d8663254d update button for udp servers list
displacer
parents: 412
diff changeset
   688
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   689
    tvServersList = new QTableView(ConnGroupBox);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   690
    tvServersList->setSelectionBehavior(QAbstractItemView::SelectRows);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   691
    GBClayout->addWidget(tvServersList, 1, 0, 1, 3);
421
ebd79d171804 - Remake net game page
unc0rr
parents: 416
diff changeset
   692
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   693
    BtnUpdateSList = new QPushButton(ConnGroupBox);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   694
    BtnUpdateSList->setFont(*font14);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   695
    BtnUpdateSList->setText(QPushButton::tr("Update"));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   696
    GBClayout->addWidget(BtnUpdateSList, 2, 0);
314
83773ccf4f09 client/server net pre-alpha
displacer
parents: 311
diff changeset
   697
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   698
    BtnSpecifyServer = new QPushButton(ConnGroupBox);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   699
    BtnSpecifyServer->setFont(*font14);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   700
    BtnSpecifyServer->setText(QPushButton::tr("Specify"));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   701
    GBClayout->addWidget(BtnSpecifyServer, 2, 1);
653
4f44fc06ca45 Class to ask host/port to connect to ('Specify' button on PageNet)
unc0rr
parents: 647
diff changeset
   702
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   703
    connect(BtnNetConnect, SIGNAL(clicked()), this, SLOT(slotConnect()));
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   704
}
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   705
646
ed610c2cd0a4 Some work on network widgets
unc0rr
parents: 638
diff changeset
   706
void PageNet::updateServersList()
632
5e09ae25729f Half implement possibility for different backends of servers list
unc0rr
parents: 617
diff changeset
   707
{
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   708
    tvServersList->setModel(new HWNetUdpModel(tvServersList));
659
5eafb20566f1 - Fix some stupid object casts
unc0rr
parents: 657
diff changeset
   709
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   710
    tvServersList->horizontalHeader()->setResizeMode(0, QHeaderView::Stretch);
673
bd82104a28af - Save after save now works
unc0rr
parents: 672
diff changeset
   711
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   712
    static_cast<HWNetServersModel *>(tvServersList->model())->updateList();
632
5e09ae25729f Half implement possibility for different backends of servers list
unc0rr
parents: 617
diff changeset
   713
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   714
    connect(BtnUpdateSList, SIGNAL(clicked()), static_cast<HWNetServersModel *>(tvServersList->model()), SLOT(updateList()));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   715
    connect(tvServersList, SIGNAL(doubleClicked(const QModelIndex &)), this, SLOT(slotConnect()));
646
ed610c2cd0a4 Some work on network widgets
unc0rr
parents: 638
diff changeset
   716
}
ed610c2cd0a4 Some work on network widgets
unc0rr
parents: 638
diff changeset
   717
ed610c2cd0a4 Some work on network widgets
unc0rr
parents: 638
diff changeset
   718
void PageNet::slotConnect()
ed610c2cd0a4 Some work on network widgets
unc0rr
parents: 638
diff changeset
   719
{
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   720
    HWNetServersModel * model = static_cast<HWNetServersModel *>(tvServersList->model());
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   721
    QModelIndex mi = tvServersList->currentIndex();
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   722
    if(!mi.isValid())
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   723
    {
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   724
        QMessageBox::information(this, tr("Error"), tr("Please select server from the list above"));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   725
        return;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   726
    }
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   727
    QString host = model->index(mi.row(), 1).data().toString();
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   728
    quint16 port = model->index(mi.row(), 2).data().toUInt();
672
08ed55ea1e2a - Fix a bug when server fails to start, and then connecting to another server on the same host (strange, the fix won't work on my machine)
unc0rr
parents: 671
diff changeset
   729
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   730
    emit connectClicked(host, port);
646
ed610c2cd0a4 Some work on network widgets
unc0rr
parents: 638
diff changeset
   731
}
ed610c2cd0a4 Some work on network widgets
unc0rr
parents: 638
diff changeset
   732
1153
825931b81ad4 Iconed "Back" button everywhere
unc0rr
parents: 1152
diff changeset
   733
PageNetServer::PageNetServer(QWidget* parent) : AbstractPage(parent)
646
ed610c2cd0a4 Some work on network widgets
unc0rr
parents: 638
diff changeset
   734
{
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   735
    QFont * font14 = new QFont("MS Shell Dlg", 14);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   736
    QGridLayout * pageLayout = new QGridLayout(this);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   737
    pageLayout->setColumnStretch(0, 1);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   738
    pageLayout->setColumnStretch(1, 1);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   739
    pageLayout->setColumnStretch(2, 1);
646
ed610c2cd0a4 Some work on network widgets
unc0rr
parents: 638
diff changeset
   740
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   741
    pageLayout->setRowStretch(0, 1);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   742
    pageLayout->setRowStretch(1, 0);
657
b34fc518a48a Basic concept for net server options page (subject to change)
unc0rr
parents: 653
diff changeset
   743
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   744
    BtnBack =addButton(":/res/Exit.png", pageLayout, 1, 0, true);
646
ed610c2cd0a4 Some work on network widgets
unc0rr
parents: 638
diff changeset
   745
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   746
    BtnStart = new QPushButton(this);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   747
    BtnStart->setFont(*font14);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   748
    BtnStart->setText(QPushButton::tr("Start"));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   749
    pageLayout->addWidget(BtnStart, 1, 2);
675
28e294a496cb Remake widgets layout on PageNetServer
unc0rr
parents: 673
diff changeset
   750
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   751
    QWidget * wg = new QWidget(this);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   752
    pageLayout->addWidget(wg, 0, 0, 1, 3);
657
b34fc518a48a Basic concept for net server options page (subject to change)
unc0rr
parents: 653
diff changeset
   753
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   754
    QGridLayout * wgLayout = new QGridLayout(wg);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   755
    wgLayout->setColumnStretch(0, 1);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   756
    wgLayout->setColumnStretch(1, 3);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   757
    wgLayout->setColumnStretch(2, 1);
675
28e294a496cb Remake widgets layout on PageNetServer
unc0rr
parents: 673
diff changeset
   758
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   759
    wgLayout->setRowStretch(0, 0);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   760
    wgLayout->setRowStretch(1, 1);
657
b34fc518a48a Basic concept for net server options page (subject to change)
unc0rr
parents: 653
diff changeset
   761
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   762
    QGroupBox * gb = new QGroupBox(wg);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   763
    wgLayout->addWidget(gb, 0, 1);
675
28e294a496cb Remake widgets layout on PageNetServer
unc0rr
parents: 673
diff changeset
   764
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   765
    QGridLayout * gbLayout = new QGridLayout(gb);
675
28e294a496cb Remake widgets layout on PageNetServer
unc0rr
parents: 673
diff changeset
   766
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   767
    labelSD = new QLabel(gb);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   768
    labelSD->setText(QLabel::tr("Server name:"));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   769
    gbLayout->addWidget(labelSD, 0, 0);
657
b34fc518a48a Basic concept for net server options page (subject to change)
unc0rr
parents: 653
diff changeset
   770
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   771
    leServerDescr = new QLineEdit(gb);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   772
    gbLayout->addWidget(leServerDescr, 0, 1);
675
28e294a496cb Remake widgets layout on PageNetServer
unc0rr
parents: 673
diff changeset
   773
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   774
    labelPort = new QLabel(gb);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   775
    labelPort->setText(QLabel::tr("Server port:"));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   776
    gbLayout->addWidget(labelPort, 1, 0);
657
b34fc518a48a Basic concept for net server options page (subject to change)
unc0rr
parents: 653
diff changeset
   777
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   778
    sbPort = new QSpinBox(gb);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   779
    sbPort->setMinimum(0);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   780
    sbPort->setMaximum(65535);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   781
    gbLayout->addWidget(sbPort, 1, 1);
657
b34fc518a48a Basic concept for net server options page (subject to change)
unc0rr
parents: 653
diff changeset
   782
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   783
    BtnDefault = new QPushButton(gb);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   784
    BtnDefault->setText(QPushButton::tr("default"));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   785
    gbLayout->addWidget(BtnDefault, 1, 2);
657
b34fc518a48a Basic concept for net server options page (subject to change)
unc0rr
parents: 653
diff changeset
   786
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   787
    connect(BtnDefault, SIGNAL(clicked()), this, SLOT(setDefaultPort()));
657
b34fc518a48a Basic concept for net server options page (subject to change)
unc0rr
parents: 653
diff changeset
   788
}
b34fc518a48a Basic concept for net server options page (subject to change)
unc0rr
parents: 653
diff changeset
   789
b34fc518a48a Basic concept for net server options page (subject to change)
unc0rr
parents: 653
diff changeset
   790
void PageNetServer::setDefaultPort()
b34fc518a48a Basic concept for net server options page (subject to change)
unc0rr
parents: 653
diff changeset
   791
{
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   792
    sbPort->setValue(46631);
632
5e09ae25729f Half implement possibility for different backends of servers list
unc0rr
parents: 617
diff changeset
   793
}
5e09ae25729f Half implement possibility for different backends of servers list
unc0rr
parents: 617
diff changeset
   794
2773
e94f240a8a41 Have game beep when someone joins lobby/room. Controlled by Sound option
nemo
parents: 2762
diff changeset
   795
PageNetGame::PageNetGame(QWidget* parent, QSettings * gameSettings, SDLInteraction * sdli) : AbstractPage(parent)
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   796
{
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   797
    QGridLayout * pageLayout = new QGridLayout(this);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   798
    pageLayout->setSizeConstraint(QLayout::SetMinimumSize);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   799
    //pageLayout->setSpacing(1);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   800
    pageLayout->setColumnStretch(0, 50);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   801
    pageLayout->setColumnStretch(1, 50);
322
e7175ae57945 first new widgets added to net game
displacer
parents: 314
diff changeset
   802
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   803
    // chatwidget
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   804
    pChatWidget = new HWChatWidget(this, gameSettings, sdli, true);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   805
    pChatWidget->setShowReady(true); // show status bulbs by default
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   806
    pageLayout->addWidget(pChatWidget, 1, 0, 1, 2);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   807
    pageLayout->setRowStretch(1, 100);
453
4b1236759402 simple net cha added
displacer
parents: 452
diff changeset
   808
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   809
    pGameCFG = new GameCFGWidget(this);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   810
    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
   811
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   812
    pNetTeamsWidget = new TeamSelWidget(this);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   813
    pNetTeamsWidget->setAcceptOuter(true);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   814
    pageLayout->addWidget(pNetTeamsWidget, 0, 1);
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   815
1649
938a0fda0206 Some button reorganization on net game page
unc0rr
parents: 1648
diff changeset
   816
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   817
    QHBoxLayout * bottomLayout = new QHBoxLayout;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   818
    pageLayout->addLayout(bottomLayout, 3, 0, 1, 2);
1649
938a0fda0206 Some button reorganization on net game page
unc0rr
parents: 1648
diff changeset
   819
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   820
    BtnBack = addButton(":/res/Exit.png", bottomLayout, 0, true);
2377
f3fab2b09e0c And in frontend
nemo
parents: 2369
diff changeset
   821
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   822
    BtnGo = new QPushButton(this);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   823
    BtnGo->setToolTip(QPushButton::tr("Ready"));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   824
    BtnGo->setIcon(QIcon(":/res/lightbulb_off.png"));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   825
    BtnGo->setIconSize(QSize(25, 34));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   826
    BtnGo->setMinimumWidth(50);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   827
    BtnGo->setMinimumHeight(50);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   828
    bottomLayout->addWidget(BtnGo, 4);
1409
d1cbe4a57ebf Add button for controlling room options (no usefull yet)
unc0rr
parents: 1404
diff changeset
   829
d1cbe4a57ebf Add button for controlling room options (no usefull yet)
unc0rr
parents: 1404
diff changeset
   830
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   831
    BtnMaster = addButton(tr("Control"), bottomLayout, 2);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   832
    QMenu * menu = new QMenu(BtnMaster);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   833
    restrictJoins = new QAction(QAction::tr("Restrict Joins"), menu);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   834
    restrictJoins->setCheckable(true);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   835
    restrictTeamAdds = new QAction(QAction::tr("Restrict Team Additions"), menu);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   836
    restrictTeamAdds->setCheckable(true);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   837
    //menu->addAction(startGame);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   838
    menu->addAction(restrictJoins);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   839
    menu->addAction(restrictTeamAdds);
2377
f3fab2b09e0c And in frontend
nemo
parents: 2369
diff changeset
   840
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   841
    BtnMaster->setMenu(menu);
1649
938a0fda0206 Some button reorganization on net game page
unc0rr
parents: 1648
diff changeset
   842
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   843
    BtnStart = addButton(QAction::tr("Start"), bottomLayout, 3);
1951
47f38d84ac72 Move game starting action outside menu
unc0rr
parents: 1950
diff changeset
   844
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   845
    bottomLayout->insertStretch(1, 100);
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   846
}
187
96c3154efee5 "About" page, not yet filled with content
unc0rr
parents: 184
diff changeset
   847
1648
32d99a3c7998 Draw ready status icon on ready button
unc0rr
parents: 1647
diff changeset
   848
void PageNetGame::setReadyStatus(bool isReady)
32d99a3c7998 Draw ready status icon on ready button
unc0rr
parents: 1647
diff changeset
   849
{
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   850
    if(isReady)
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   851
        BtnGo->setIcon(QIcon(":/res/lightbulb_on.png"));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   852
    else
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   853
        BtnGo->setIcon(QIcon(":/res/lightbulb_off.png"));
1648
32d99a3c7998 Draw ready status icon on ready button
unc0rr
parents: 1647
diff changeset
   854
}
32d99a3c7998 Draw ready status icon on ready button
unc0rr
parents: 1647
diff changeset
   855
1649
938a0fda0206 Some button reorganization on net game page
unc0rr
parents: 1648
diff changeset
   856
void PageNetGame::setMasterMode(bool isMaster)
938a0fda0206 Some button reorganization on net game page
unc0rr
parents: 1648
diff changeset
   857
{
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   858
    BtnMaster->setVisible(isMaster);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   859
    BtnStart->setVisible(isMaster);
1649
938a0fda0206 Some button reorganization on net game page
unc0rr
parents: 1648
diff changeset
   860
}
938a0fda0206 Some button reorganization on net game page
unc0rr
parents: 1648
diff changeset
   861
1153
825931b81ad4 Iconed "Back" button everywhere
unc0rr
parents: 1152
diff changeset
   862
PageInfo::PageInfo(QWidget* parent) : AbstractPage(parent)
187
96c3154efee5 "About" page, not yet filled with content
unc0rr
parents: 184
diff changeset
   863
{
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   864
    QGridLayout * pageLayout = new QGridLayout(this);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   865
    pageLayout->setColumnStretch(0, 1);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   866
    pageLayout->setColumnStretch(1, 1);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   867
    pageLayout->setColumnStretch(2, 1);
187
96c3154efee5 "About" page, not yet filled with content
unc0rr
parents: 184
diff changeset
   868
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   869
    BtnBack = addButton(":/res/Exit.png", pageLayout, 1, 0, true);
187
96c3154efee5 "About" page, not yet filled with content
unc0rr
parents: 184
diff changeset
   870
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   871
    about = new About(this);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   872
    pageLayout->addWidget(about, 0, 0, 1, 3);
187
96c3154efee5 "About" page, not yet filled with content
unc0rr
parents: 184
diff changeset
   873
}
306
7b61834edcf6 - Better blowtorch
unc0rr
parents: 297
diff changeset
   874
1150
ae86e36dad2e - Make look better
unc0rr
parents: 1149
diff changeset
   875
PageSinglePlayer::PageSinglePlayer(QWidget* parent) : AbstractPage(parent)
586
ecb6347dfeca Prepare to new page 'Training'
unc0rr
parents: 585
diff changeset
   876
{
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   877
    QVBoxLayout * vLayout = new QVBoxLayout(this);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   878
    QHBoxLayout * topLine = new QHBoxLayout();
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   879
    QHBoxLayout * middleLine = new QHBoxLayout();
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   880
    QHBoxLayout * bottomLine = new QHBoxLayout();
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   881
    vLayout->addStretch();
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   882
    vLayout->addLayout(topLine);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   883
    vLayout->addSpacing(30);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   884
    vLayout->addLayout(middleLine);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   885
    vLayout->addStretch();
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   886
    vLayout->addLayout(bottomLine);
586
ecb6347dfeca Prepare to new page 'Training'
unc0rr
parents: 585
diff changeset
   887
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   888
    topLine->addStretch();
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   889
    BtnSimpleGamePage = addButton(":/res/SimpleGame.png", topLine, 0, true);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   890
    BtnSimpleGamePage->setToolTip(tr("Simple Game (a quick game against the computer, settings are chosen for you)"));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   891
    topLine->addSpacing(60);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   892
    BtnMultiplayer = addButton(":/res/Multiplayer.png", topLine, 1, true);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   893
    BtnMultiplayer->setToolTip(tr("Multiplayer (play a hotseat game against your friends, or AI teams)"));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   894
    topLine->addStretch();
2377
f3fab2b09e0c And in frontend
nemo
parents: 2369
diff changeset
   895
1457
44cc464de8f3 Add lightbulbs, some more changes to look
unc0rr
parents: 1450
diff changeset
   896
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   897
    BtnTrainPage = addButton(":/res/Trainings.png", middleLine, 0, true);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   898
    BtnTrainPage->setToolTip(tr("Training Mode (Practice your skills in a range of training missions). IN DEVELOPMENT"));
2377
f3fab2b09e0c And in frontend
nemo
parents: 2369
diff changeset
   899
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   900
    BtnBack = addButton(":/res/Exit.png", bottomLine, 0, true);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   901
    bottomLine->addStretch();
1444
06f6ae457a2f Finish reorganizing local game page
unc0rr
parents: 1443
diff changeset
   902
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   903
    BtnDemos = addButton(":/res/Record.png", bottomLine, 1, true);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   904
    BtnDemos->setToolTip(tr("Demos (Watch recorded demos)"));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   905
    BtnLoad = addButton(":/res/Save.png", bottomLine, 2, true);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   906
    BtnLoad->setStyleSheet("QPushButton{margin: 12px 0px 12px 0px;}");
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   907
    BtnLoad->setToolTip(tr("Load (Load a previously saved game)"));
3279
88139bfa63c8 frontend: moving/styling exit/back buttons so that they are displayed at similar positions. (no button-"jumping" on page switch anymore)
sheepluva
parents: 3236
diff changeset
   908
    BtnBack->setFixedHeight(BtnLoad->height());
88139bfa63c8 frontend: moving/styling exit/back buttons so that they are displayed at similar positions. (no button-"jumping" on page switch anymore)
sheepluva
parents: 3236
diff changeset
   909
    BtnBack->setStyleSheet("QPushButton{margin-top: 31px;}");
586
ecb6347dfeca Prepare to new page 'Training'
unc0rr
parents: 585
diff changeset
   910
}
ecb6347dfeca Prepare to new page 'Training'
unc0rr
parents: 585
diff changeset
   911
1153
825931b81ad4 Iconed "Back" button everywhere
unc0rr
parents: 1152
diff changeset
   912
PageTraining::PageTraining(QWidget* parent) : AbstractPage(parent)
587
74db4115064a More work on Training mode
unc0rr
parents: 586
diff changeset
   913
{
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   914
    QGridLayout * pageLayout = new QGridLayout(this);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   915
    pageLayout->setColumnStretch(0, 1);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   916
    pageLayout->setColumnStretch(1, 2);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   917
    pageLayout->setColumnStretch(2, 1);
3279
88139bfa63c8 frontend: moving/styling exit/back buttons so that they are displayed at similar positions. (no button-"jumping" on page switch anymore)
sheepluva
parents: 3236
diff changeset
   918
    pageLayout->setRowStretch(0, 1);
88139bfa63c8 frontend: moving/styling exit/back buttons so that they are displayed at similar positions. (no button-"jumping" on page switch anymore)
sheepluva
parents: 3236
diff changeset
   919
    pageLayout->setRowStretch(2, 1);
587
74db4115064a More work on Training mode
unc0rr
parents: 586
diff changeset
   920
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   921
    CBSelect = new QComboBox(this);
2468
0b62498c201a openal fix, training map selection and rcplane adjustments from Smaxx (untested, but look reasonable). Bunch of new graphics from Tiy, new translation for pt-pt from inu_
nemo
parents: 2447
diff changeset
   922
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   923
    QDir tmpdir;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   924
    tmpdir.cd(datadir->absolutePath());
3011
73c8f618fd8b General:
smxx
parents: 2948
diff changeset
   925
    tmpdir.cd("Missions/Training");
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   926
    tmpdir.setFilter(QDir::Files);
3011
73c8f618fd8b General:
smxx
parents: 2948
diff changeset
   927
    CBSelect->addItems(tmpdir.entryList(QStringList("*.lua")).replaceInStrings(QRegExp("^(.*)\\.lua"), "\\1"));
2468
0b62498c201a openal fix, training map selection and rcplane adjustments from Smaxx (untested, but look reasonable). Bunch of new graphics from Tiy, new translation for pt-pt from inu_
nemo
parents: 2447
diff changeset
   928
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   929
    pageLayout->addWidget(CBSelect, 1, 1);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   930
    
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   931
    BtnStartTrain = new QPushButton(this);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   932
    BtnStartTrain->setFont(*font14);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   933
    BtnStartTrain->setText(QPushButton::tr("Go!"));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   934
    pageLayout->addWidget(BtnStartTrain, 1, 2);
587
74db4115064a More work on Training mode
unc0rr
parents: 586
diff changeset
   935
3279
88139bfa63c8 frontend: moving/styling exit/back buttons so that they are displayed at similar positions. (no button-"jumping" on page switch anymore)
sheepluva
parents: 3236
diff changeset
   936
    BtnBack = addButton(":/res/Exit.png", pageLayout, 3, 0, true);
587
74db4115064a More work on Training mode
unc0rr
parents: 586
diff changeset
   937
}
74db4115064a More work on Training mode
unc0rr
parents: 586
diff changeset
   938
923
b3d097097b54 Use default ammostore string size for weapons number instead of predefined const
unc0rr
parents: 788
diff changeset
   939
PageSelectWeapon::PageSelectWeapon(QWidget* parent) :
684
257444d8429f some copy/paste code removed
displacer
parents: 683
diff changeset
   940
  AbstractPage(parent)
600
f6e5f4e122db Select weapon scheme page
unc0rr
parents: 597
diff changeset
   941
{
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   942
    QGridLayout * pageLayout = new QGridLayout(this);
2377
f3fab2b09e0c And in frontend
nemo
parents: 2369
diff changeset
   943
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   944
    pWeapons = new SelWeaponWidget(cAmmoNumber, this);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   945
    pageLayout->addWidget(pWeapons, 0, 0, 1, 4);
600
f6e5f4e122db Select weapon scheme page
unc0rr
parents: 597
diff changeset
   946
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   947
    BtnBack = addButton(":/res/Exit.png", pageLayout, 1, 0, true);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   948
    BtnDefault = addButton(tr("Default"), pageLayout, 1, 1);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   949
    BtnDelete = addButton(tr("Delete"), pageLayout, 1, 2);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   950
    BtnSave = addButton(":/res/Save.png", pageLayout, 1, 3, true);
3279
88139bfa63c8 frontend: moving/styling exit/back buttons so that they are displayed at similar positions. (no button-"jumping" on page switch anymore)
sheepluva
parents: 3236
diff changeset
   951
    BtnSave->setStyleSheet("QPushButton{margin: 24px 0px 0px 0px;}");
88139bfa63c8 frontend: moving/styling exit/back buttons so that they are displayed at similar positions. (no button-"jumping" on page switch anymore)
sheepluva
parents: 3236
diff changeset
   952
    BtnBack->setFixedHeight(BtnSave->height());
88139bfa63c8 frontend: moving/styling exit/back buttons so that they are displayed at similar positions. (no button-"jumping" on page switch anymore)
sheepluva
parents: 3236
diff changeset
   953
    BtnBack->setStyleSheet("QPushButton{margin-top: 31px;}");
2368
e0750b23c9e6 Move connect call to more appropriate place
unc0rr
parents: 2294
diff changeset
   954
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   955
    connect(BtnDefault, SIGNAL(clicked()), pWeapons, SLOT(setDefault()));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   956
    connect(BtnSave, SIGNAL(clicked()), pWeapons, SLOT(save()));
600
f6e5f4e122db Select weapon scheme page
unc0rr
parents: 597
diff changeset
   957
}
f6e5f4e122db Select weapon scheme page
unc0rr
parents: 597
diff changeset
   958
1249
b6670a6ea2d0 Remove 25pix margin on every page, so exit button is almost in the same place on all pages
unc0rr
parents: 1240
diff changeset
   959
PageInGame::PageInGame(QWidget* parent) :
686
494b5880989a - Header cleanup in game.cpp
unc0rr
parents: 684
diff changeset
   960
  AbstractPage(parent)
494b5880989a - Header cleanup in game.cpp
unc0rr
parents: 684
diff changeset
   961
{
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   962
    QLabel * label = new QLabel(this);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   963
    label->setText("In game...");
686
494b5880989a - Header cleanup in game.cpp
unc0rr
parents: 684
diff changeset
   964
}
1311
49beb1221c0b - Add stub page for rooms list
unc0rr
parents: 1310
diff changeset
   965
2773
e94f240a8a41 Have game beep when someone joins lobby/room. Controlled by Sound option
nemo
parents: 2762
diff changeset
   966
PageRoomsList::PageRoomsList(QWidget* parent, QSettings * gameSettings, SDLInteraction * sdli) :
1311
49beb1221c0b - Add stub page for rooms list
unc0rr
parents: 1310
diff changeset
   967
  AbstractPage(parent)
49beb1221c0b - Add stub page for rooms list
unc0rr
parents: 1310
diff changeset
   968
{
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   969
    QGridLayout * pageLayout = new QGridLayout(this);
1314
e56b178d6d62 Implement room create and join
unc0rr
parents: 1313
diff changeset
   970
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   971
    QHBoxLayout * newRoomLayout = new QHBoxLayout();
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   972
    QLabel * roomNameLabel = new QLabel(this);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   973
    roomNameLabel->setText(tr("Room Name:"));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   974
    roomName = new QLineEdit(this);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   975
    roomName->setMaxLength(60);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   976
    newRoomLayout->addWidget(roomNameLabel);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   977
    newRoomLayout->addWidget(roomName);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   978
    pageLayout->addLayout(newRoomLayout, 0, 0);
2377
f3fab2b09e0c And in frontend
nemo
parents: 2369
diff changeset
   979
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   980
    roomsList = new QTableWidget(this);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   981
    roomsList->setSelectionBehavior(QAbstractItemView::SelectRows);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   982
    roomsList->verticalHeader()->setVisible(false);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   983
    roomsList->horizontalHeader()->setResizeMode(QHeaderView::Interactive);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   984
    roomsList->setAlternatingRowColors(true);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   985
    pageLayout->addWidget(roomsList, 1, 0, 3, 1);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   986
    pageLayout->setRowStretch(2, 100);
2377
f3fab2b09e0c And in frontend
nemo
parents: 2369
diff changeset
   987
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   988
    chatWidget = new HWChatWidget(this, gameSettings, sdli, false);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   989
    pageLayout->addWidget(chatWidget, 4, 0, 1, 2);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   990
    pageLayout->setRowStretch(4, 350);
1522
6794cf8f1e6f Add chat widget to lobby page (not usable yet)
unc0rr
parents: 1487
diff changeset
   991
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   992
    BtnCreate = addButton(tr("Create"), pageLayout, 0, 1);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   993
    BtnJoin = addButton(tr("Join"), pageLayout, 1, 1);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   994
    BtnRefresh = addButton(tr("Refresh"), pageLayout, 3, 1);
2377
f3fab2b09e0c And in frontend
nemo
parents: 2369
diff changeset
   995
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   996
    BtnBack = addButton(":/res/Exit.png", pageLayout, 5, 0, true);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   997
    BtnAdmin = addButton(tr("Admin features"), pageLayout, 5, 1);
1314
e56b178d6d62 Implement room create and join
unc0rr
parents: 1313
diff changeset
   998
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
   999
    connect(BtnCreate, SIGNAL(clicked()), this, SLOT(onCreateClick()));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1000
    connect(BtnJoin, SIGNAL(clicked()), this, SLOT(onJoinClick()));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1001
    connect(BtnRefresh, SIGNAL(clicked()), this, SLOT(onRefreshClick()));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1002
    connect(roomsList, SIGNAL(doubleClicked (const QModelIndex &)), this, SLOT(onJoinClick()));
1311
49beb1221c0b - Add stub page for rooms list
unc0rr
parents: 1310
diff changeset
  1003
}
1313
f4c54e9e1b8c - Introduce a bit of state miachine in client code (should be more robust and verbosive now)
unc0rr
parents: 1312
diff changeset
  1004
1856
e71dbf958c87 Enable admin button when have privilege. Button does nothing yet.
unc0rr
parents: 1840
diff changeset
  1005
void PageRoomsList::setAdmin(bool flag)
e71dbf958c87 Enable admin button when have privilege. Button does nothing yet.
unc0rr
parents: 1840
diff changeset
  1006
{
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1007
    BtnAdmin->setVisible(flag);
1856
e71dbf958c87 Enable admin button when have privilege. Button does nothing yet.
unc0rr
parents: 1840
diff changeset
  1008
}
1377
a9e768739345 - Customize QTextBrowser look
unc0rr
parents: 1334
diff changeset
  1009
1313
f4c54e9e1b8c - Introduce a bit of state miachine in client code (should be more robust and verbosive now)
unc0rr
parents: 1312
diff changeset
  1010
void PageRoomsList::setRoomsList(const QStringList & list)
f4c54e9e1b8c - Introduce a bit of state miachine in client code (should be more robust and verbosive now)
unc0rr
parents: 1312
diff changeset
  1011
{
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1012
    roomsList->clear();
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1013
    roomsList->setColumnCount(7);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1014
    roomsList->setHorizontalHeaderLabels(
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1015
            QStringList() <<
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1016
            QTableWidget::tr("Room Name") <<
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1017
            QTableWidget::tr("C") <<
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1018
            QTableWidget::tr("T") <<
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1019
            QTableWidget::tr("Owner") <<
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1020
            QTableWidget::tr("Map") <<
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1021
            QTableWidget::tr("Rules") <<
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1022
            QTableWidget::tr("Weapons")
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1023
            );
1893
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1891
diff changeset
  1024
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1025
    // set minimum sizes
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1026
//  roomsList->horizontalHeader()->resizeSection(0, 200);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1027
//  roomsList->horizontalHeader()->resizeSection(1, 50);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1028
//  roomsList->horizontalHeader()->resizeSection(2, 50);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1029
//  roomsList->horizontalHeader()->resizeSection(3, 100);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1030
//  roomsList->horizontalHeader()->resizeSection(4, 100);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1031
//  roomsList->horizontalHeader()->resizeSection(5, 100);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1032
//  roomsList->horizontalHeader()->resizeSection(6, 100);
2649
afec403dce10 Restore old column layout.
nemo
parents: 2631
diff changeset
  1033
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1034
    // set resize modes
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1035
//  roomsList->horizontalHeader()->setResizeMode(QHeaderView::Interactive);
1893
85c61bc5e160 Style fixes by nemo
unc0rr
parents: 1891
diff changeset
  1036
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1037
    if (list.size() % 8)
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1038
        return;
1399
ada2411c1d60 Show additional info in rooms list
unc0rr
parents: 1395
diff changeset
  1039
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1040
    roomsList->setRowCount(list.size() / 8);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1041
    for(int i = 0, r = 0; i < list.size(); i += 8, r++)
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1042
    {
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1043
        QTableWidgetItem * item;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1044
        item = new QTableWidgetItem(list[i + 1]); // room name
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1045
        item->setFlags(Qt::ItemIsEnabled | Qt::ItemIsSelectable);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1046
        
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1047
        // pick appropriate room icon and tooltip (game in progress yes/no; later maybe locked rooms etc.)
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1048
        if(list[i].compare("True"))
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1049
        {
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1050
            item->setIcon(QIcon(":/res/iconTime.png"));// game is in lobby
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1051
            item->setToolTip(tr("This game is in lobby.\nYou may join and start playing once the game starts."));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1052
        }
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1053
        else
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1054
        {
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1055
            item->setIcon(QIcon(":/res/iconDamage.png"));// game has started
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1056
            item->setToolTip(tr("This game is in progress.\nYou may join and spectate now but you'll have to wait for the game to end to start playing."));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1057
        }
2414
fd9ca82077d8 Smaxx: new rooms list
unc0rr
parents: 2402
diff changeset
  1058
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1059
        roomsList->setItem(r, 0, item);
2414
fd9ca82077d8 Smaxx: new rooms list
unc0rr
parents: 2402
diff changeset
  1060
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1061
        item = new QTableWidgetItem(list[i + 2]); // number of clients
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1062
        item->setFlags(Qt::ItemIsEnabled | Qt::ItemIsSelectable);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1063
        item->setTextAlignment(Qt::AlignCenter);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1064
        item->setToolTip(tr("There are %1 clients connected to this room.", "", list[i + 2].toInt()).arg(list[i + 2]));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1065
        roomsList->setItem(r, 1, item);
2414
fd9ca82077d8 Smaxx: new rooms list
unc0rr
parents: 2402
diff changeset
  1066
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1067
        item = new QTableWidgetItem(list[i + 3]); // number of teams
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1068
        item->setFlags(Qt::ItemIsEnabled | Qt::ItemIsSelectable);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1069
        item->setTextAlignment(Qt::AlignCenter);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1070
        item->setToolTip(tr("There are %1 teams participating in this room.", "", list[i + 3].toInt()).arg(list[i + 3]));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1071
        roomsList->setItem(r, 2, item);
2414
fd9ca82077d8 Smaxx: new rooms list
unc0rr
parents: 2402
diff changeset
  1072
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1073
        item = new QTableWidgetItem(list[i + 4].left(15)); // name of host
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1074
        item->setFlags(Qt::ItemIsEnabled | Qt::ItemIsSelectable);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1075
        item->setToolTip(tr("%1 is the host. He may adjust settings and start the game.").arg(list[i + 4]));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1076
        roomsList->setItem(r, 3, item);
2414
fd9ca82077d8 Smaxx: new rooms list
unc0rr
parents: 2402
diff changeset
  1077
3141
70d65353bd60 prg adds option to toggle girders in maze, adjusts some frontend strings
nemo
parents: 3074
diff changeset
  1078
        if(list[i + 5] == "+rnd+")
70d65353bd60 prg adds option to toggle girders in maze, adjusts some frontend strings
nemo
parents: 3074
diff changeset
  1079
            item = new QTableWidgetItem(tr("Random Map")); // selected map (is randomized)
70d65353bd60 prg adds option to toggle girders in maze, adjusts some frontend strings
nemo
parents: 3074
diff changeset
  1080
        else if (list[i+5] == "+maze+")
70d65353bd60 prg adds option to toggle girders in maze, adjusts some frontend strings
nemo
parents: 3074
diff changeset
  1081
            item = new QTableWidgetItem(tr("Random Maze"));
70d65353bd60 prg adds option to toggle girders in maze, adjusts some frontend strings
nemo
parents: 3074
diff changeset
  1082
        else
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1083
        {
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1084
            item = new QTableWidgetItem(list[i + 5]); // selected map
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1085
            
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1086
            // check to see if we've got this map
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1087
            // not perfect but a start
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1088
            if(!mapList->contains(list[i + 5]))
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1089
                item->setForeground(QBrush(QColor(255, 0, 0)));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1090
        }
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1091
        
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1092
        item->setFlags(Qt::ItemIsEnabled | Qt::ItemIsSelectable);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1093
        item->setToolTip(tr("Games may be played on precreated or randomized maps."));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1094
        roomsList->setItem(r, 4, item);
2414
fd9ca82077d8 Smaxx: new rooms list
unc0rr
parents: 2402
diff changeset
  1095
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1096
        item = new QTableWidgetItem(list[i + 6].left(20)); // selected game scheme
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1097
        item->setFlags(Qt::ItemIsEnabled | Qt::ItemIsSelectable);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1098
        item->setToolTip(tr("The Game Scheme defines general options and preferences like Round Time, Sudden Death or Vampirism."));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1099
        roomsList->setItem(r, 5, item);
2414
fd9ca82077d8 Smaxx: new rooms list
unc0rr
parents: 2402
diff changeset
  1100
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1101
        item = new QTableWidgetItem(list[i + 7].left(20)); // selected weapon scheme
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1102
        item->setFlags(Qt::ItemIsEnabled | Qt::ItemIsSelectable);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1103
        item->setToolTip(tr("The Weapon Scheme defines available weapons and their ammunition count."));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1104
        roomsList->setItem(r, 6, item);
2414
fd9ca82077d8 Smaxx: new rooms list
unc0rr
parents: 2402
diff changeset
  1105
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1106
    }
2651
9977d8bd95a3 Reorder
nemo
parents: 2650
diff changeset
  1107
   roomsList->horizontalHeader()->setResizeMode(0, QHeaderView::Stretch);
9977d8bd95a3 Reorder
nemo
parents: 2650
diff changeset
  1108
   roomsList->horizontalHeader()->setResizeMode(1, QHeaderView::ResizeToContents);
9977d8bd95a3 Reorder
nemo
parents: 2650
diff changeset
  1109
   roomsList->horizontalHeader()->setResizeMode(2, QHeaderView::ResizeToContents);
9977d8bd95a3 Reorder
nemo
parents: 2650
diff changeset
  1110
   roomsList->horizontalHeader()->setResizeMode(3, QHeaderView::ResizeToContents);
9977d8bd95a3 Reorder
nemo
parents: 2650
diff changeset
  1111
   roomsList->horizontalHeader()->setResizeMode(4, QHeaderView::ResizeToContents);
9977d8bd95a3 Reorder
nemo
parents: 2650
diff changeset
  1112
   roomsList->horizontalHeader()->setResizeMode(5, QHeaderView::ResizeToContents);
9977d8bd95a3 Reorder
nemo
parents: 2650
diff changeset
  1113
   roomsList->horizontalHeader()->setResizeMode(6, QHeaderView::ResizeToContents);
9977d8bd95a3 Reorder
nemo
parents: 2650
diff changeset
  1114
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1115
//  roomsList->resizeColumnsToContents();
1313
f4c54e9e1b8c - Introduce a bit of state miachine in client code (should be more robust and verbosive now)
unc0rr
parents: 1312
diff changeset
  1116
}
1314
e56b178d6d62 Implement room create and join
unc0rr
parents: 1313
diff changeset
  1117
e56b178d6d62 Implement room create and join
unc0rr
parents: 1313
diff changeset
  1118
void PageRoomsList::onCreateClick()
e56b178d6d62 Implement room create and join
unc0rr
parents: 1313
diff changeset
  1119
{
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1120
    if (roomName->text().size())
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1121
        emit askForCreateRoom(roomName->text());
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1122
    else
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1123
        QMessageBox::critical(this,
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1124
                tr("Error"),
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1125
                tr("Please enter room name"),
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1126
                tr("OK"));
1314
e56b178d6d62 Implement room create and join
unc0rr
parents: 1313
diff changeset
  1127
}
e56b178d6d62 Implement room create and join
unc0rr
parents: 1313
diff changeset
  1128
e56b178d6d62 Implement room create and join
unc0rr
parents: 1313
diff changeset
  1129
void PageRoomsList::onJoinClick()
e56b178d6d62 Implement room create and join
unc0rr
parents: 1313
diff changeset
  1130
{
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1131
    QTableWidgetItem * curritem = roomsList->item(roomsList->currentRow(), 0);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1132
    if (!curritem)
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1133
    {
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1134
        QMessageBox::critical(this,
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1135
                tr("Error"),
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1136
                tr("Please select room from the list"),
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1137
                tr("OK"));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1138
        return ;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1139
    }
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1140
    emit askForJoinRoom(curritem->data(Qt::DisplayRole).toString());
1314
e56b178d6d62 Implement room create and join
unc0rr
parents: 1313
diff changeset
  1141
}
e56b178d6d62 Implement room create and join
unc0rr
parents: 1313
diff changeset
  1142
1315
c2f09811bb8c Implement rooms list refresh
unc0rr
parents: 1314
diff changeset
  1143
void PageRoomsList::onRefreshClick()
c2f09811bb8c Implement rooms list refresh
unc0rr
parents: 1314
diff changeset
  1144
{
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1145
    emit askForRoomList();
1315
c2f09811bb8c Implement rooms list refresh
unc0rr
parents: 1314
diff changeset
  1146
}
c2f09811bb8c Implement rooms list refresh
unc0rr
parents: 1314
diff changeset
  1147
1800
f1df2eb32a16 "connecting" page
unc0rr
parents: 1777
diff changeset
  1148
f1df2eb32a16 "connecting" page
unc0rr
parents: 1777
diff changeset
  1149
PageConnecting::PageConnecting(QWidget* parent) :
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1150
    AbstractPage(parent)
1800
f1df2eb32a16 "connecting" page
unc0rr
parents: 1777
diff changeset
  1151
{
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1152
    QGridLayout * pageLayout = new QGridLayout(this);
1904
20348675b015 - Fix warnings in frontend
unc0rr
parents: 1902
diff changeset
  1153
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1154
    QLabel * lblConnecting = new QLabel(this);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1155
    lblConnecting->setText(tr("Connecting..."));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1156
    pageLayout->addWidget(lblConnecting);
1800
f1df2eb32a16 "connecting" page
unc0rr
parents: 1777
diff changeset
  1157
}
1884
40e59e9f82ce Continue work on new schemes implementation
unc0rr
parents: 1856
diff changeset
  1158
40e59e9f82ce Continue work on new schemes implementation
unc0rr
parents: 1856
diff changeset
  1159
PageScheme::PageScheme(QWidget* parent) :
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1160
    AbstractPage(parent)
1884
40e59e9f82ce Continue work on new schemes implementation
unc0rr
parents: 1856
diff changeset
  1161
{
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1162
    QGridLayout * pageLayout = new QGridLayout(this);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1163
    QGroupBox * gb = new QGroupBox(this);
2377
f3fab2b09e0c And in frontend
nemo
parents: 2369
diff changeset
  1164
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1165
    QGridLayout * gl = new QGridLayout();
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1166
    gb->setLayout(gl);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1167
    QSizePolicy sp;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1168
    sp.setVerticalPolicy(QSizePolicy::MinimumExpanding);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1169
    sp.setHorizontalPolicy(QSizePolicy::Expanding);
1885
75489216b5b0 Continue work on new schemes
unc0rr
parents: 1884
diff changeset
  1170
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1171
    pageLayout->addWidget(gb, 1,0,13,4);
2377
f3fab2b09e0c And in frontend
nemo
parents: 2369
diff changeset
  1172
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1173
    gbGameModes = new QGroupBox(QGroupBox::tr("Game Modifiers"), gb);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1174
    gbBasicSettings = new QGroupBox(QGroupBox::tr("Basic Settings"), gb);
1943
03dcac72692b - Better schemes page look
unc0rr
parents: 1933
diff changeset
  1175
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1176
    gbGameModes->setStyleSheet(".QGroupBox {"
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1177
            "background-color: #130f2c; background-image:url();"
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1178
            "}");
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1179
    gbBasicSettings->setStyleSheet(".QGroupBox {"
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1180
            "background-color: #130f2c; background-image:url();"
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1181
            "}");
1943
03dcac72692b - Better schemes page look
unc0rr
parents: 1933
diff changeset
  1182
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1183
    gbGameModes->setSizePolicy(sp);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1184
    gbBasicSettings->setSizePolicy(sp);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1185
    gl->addWidget(gbGameModes,0,0,1,3,Qt::AlignTop);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1186
    gl->addWidget(gbBasicSettings,0,3,1,3,Qt::AlignTop);
2377
f3fab2b09e0c And in frontend
nemo
parents: 2369
diff changeset
  1187
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1188
    QGridLayout * glGMLayout = new QGridLayout(gbGameModes);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1189
    QGridLayout * glBSLayout = new QGridLayout(gbBasicSettings);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1190
    gbGameModes->setLayout(glGMLayout);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1191
    gbBasicSettings->setLayout(glBSLayout);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1192
    // Left
2377
f3fab2b09e0c And in frontend
nemo
parents: 2369
diff changeset
  1193
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1194
    TBW_mode_Forts = new ToggleButtonWidget(gbGameModes, ":/res/btnForts.png");
3061
e129e4c3f30e Frontend:
smxx
parents: 3044
diff changeset
  1195
    TBW_mode_Forts->setToolTip("<b>" + ToggleButtonWidget::tr("Fort Mode") + "</b>:<br />" + tr("Defend your fort and destroy the opponents, two team colours max!"));
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1196
    glGMLayout->addWidget(TBW_mode_Forts,0,0,1,1);
1885
75489216b5b0 Continue work on new schemes
unc0rr
parents: 1884
diff changeset
  1197
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1198
    TBW_teamsDivide = new ToggleButtonWidget(gbGameModes, ":/res/btnTeamsDivide.png");
3061
e129e4c3f30e Frontend:
smxx
parents: 3044
diff changeset
  1199
    TBW_teamsDivide->setToolTip("<b>" + ToggleButtonWidget::tr("Divide Teams") + "</b>:<br />" + tr("Teams will start on opposite sides of the terrain, two team colours max!"));
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1200
    glGMLayout->addWidget(TBW_teamsDivide,0,1,1,1);
1885
75489216b5b0 Continue work on new schemes
unc0rr
parents: 1884
diff changeset
  1201
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1202
    TBW_solid = new ToggleButtonWidget(gbGameModes, ":/res/btnSolid.png");
3061
e129e4c3f30e Frontend:
smxx
parents: 3044
diff changeset
  1203
    TBW_solid->setToolTip("<b>" + ToggleButtonWidget::tr("Solid Land") + "</b>:<br />" + tr("Land can not be destroyed!"));
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1204
    glGMLayout->addWidget(TBW_solid,0,2,1,1);
1885
75489216b5b0 Continue work on new schemes
unc0rr
parents: 1884
diff changeset
  1205
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1206
    TBW_border = new ToggleButtonWidget(gbGameModes, ":/res/btnBorder.png");
3061
e129e4c3f30e Frontend:
smxx
parents: 3044
diff changeset
  1207
    TBW_border->setToolTip("<b>" + ToggleButtonWidget::tr("Add Border") + "</b>:<br />" + tr("Add an indestructable border around the terrain"));
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1208
    glGMLayout->addWidget(TBW_border,0,3,1,1);
1895
7ba647a88b2f More game options by nemo
unc0rr
parents: 1894
diff changeset
  1209
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1210
    TBW_lowGravity = new ToggleButtonWidget(gbGameModes, ":/res/btnLowGravity.png");
3061
e129e4c3f30e Frontend:
smxx
parents: 3044
diff changeset
  1211
    TBW_lowGravity->setToolTip("<b>" + ToggleButtonWidget::tr("Low Gravity") + "</b>:<br />" + tr("Lower gravity"));
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1212
    glGMLayout->addWidget(TBW_lowGravity,1,0,1,1);
1932
f586d75c8b6a New schemes page look by TheXception
unc0rr
parents: 1924
diff changeset
  1213
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1214
    TBW_laserSight = new ToggleButtonWidget(gbGameModes, ":/res/btnLaserSight.png");
3061
e129e4c3f30e Frontend:
smxx
parents: 3044
diff changeset
  1215
    TBW_laserSight->setToolTip("<b>" + ToggleButtonWidget::tr("Laser Sight") + "</b>:<br />" + tr("Assisted aiming with laser sight"));
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1216
    glGMLayout->addWidget(TBW_laserSight,1,1,1,1);
1895
7ba647a88b2f More game options by nemo
unc0rr
parents: 1894
diff changeset
  1217
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1218
    TBW_invulnerable = new ToggleButtonWidget(gbGameModes, ":/res/btnInvulnerable.png");
3061
e129e4c3f30e Frontend:
smxx
parents: 3044
diff changeset
  1219
    TBW_invulnerable->setToolTip("<b>" + ToggleButtonWidget::tr("Invulnerable") + "</b>:<br />" + tr("All hogs have a personal forcefield"));
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1220
    glGMLayout->addWidget(TBW_invulnerable,1,2,1,1);
1932
f586d75c8b6a New schemes page look by TheXception
unc0rr
parents: 1924
diff changeset
  1221
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1222
    TBW_mines = new ToggleButtonWidget(gbGameModes, ":/res/btnMines.png");
3061
e129e4c3f30e Frontend:
smxx
parents: 3044
diff changeset
  1223
    TBW_mines->setToolTip("<b>" + ToggleButtonWidget::tr("Add Mines") + "</b>:<br />" + tr("Enable random mines"));
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1224
    glGMLayout->addWidget(TBW_mines,1,3,1,1);
1895
7ba647a88b2f More game options by nemo
unc0rr
parents: 1894
diff changeset
  1225
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1226
    TBW_vampiric = new ToggleButtonWidget(gbGameModes, ":/res/btnVampiric.png");
3061
e129e4c3f30e Frontend:
smxx
parents: 3044
diff changeset
  1227
    TBW_vampiric->setToolTip("<b>" + ToggleButtonWidget::tr("Vampirism") + "</b>:<br />" + tr("Gain 80% of the damage you do back in health"));
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1228
    glGMLayout->addWidget(TBW_vampiric,2,0,1,1);
2017
7845c77c8d31 nemo's great patch:
unc0rr
parents: 1984
diff changeset
  1229
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1230
    TBW_karma = new ToggleButtonWidget(gbGameModes, ":/res/btnKarma.png");
3061
e129e4c3f30e Frontend:
smxx
parents: 3044
diff changeset
  1231
    TBW_karma->setToolTip("<b>" + ToggleButtonWidget::tr("Karma") + "</b>:<br />" + tr("Share your opponents pain, share their damage"));
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1232
    glGMLayout->addWidget(TBW_karma,2,1,1,1);
2017
7845c77c8d31 nemo's great patch:
unc0rr
parents: 1984
diff changeset
  1233
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1234
    TBW_artillery = new ToggleButtonWidget(gbGameModes, ":/res/btnArtillery.png");
3061
e129e4c3f30e Frontend:
smxx
parents: 3044
diff changeset
  1235
    TBW_artillery->setToolTip("<b>" + ToggleButtonWidget::tr("Artillery") + "</b>:<br />" + tr("Your hogs are unable to move, put your artillery skills to the test"));
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1236
    glGMLayout->addWidget(TBW_artillery,2,2,1,1);
2023
41d3afaa20c7 Artillery mode, sniper rifle, speech bubble tweaks, fix of rope bug introduced by enabling hats in jump
nemo
parents: 2017
diff changeset
  1237
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1238
    TBW_randomorder = new ToggleButtonWidget(gbGameModes, ":/res/btnRandomOrder.png");
3061
e129e4c3f30e Frontend:
smxx
parents: 3044
diff changeset
  1239
    TBW_randomorder->setToolTip("<b>" + ToggleButtonWidget::tr("Random Order") + "</b>:<br />" + tr("Order of play is random instead of in room order."));
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1240
    glGMLayout->addWidget(TBW_randomorder,2,3,1,1);
2703
fbde0d971ba6 Randomise order of play.
nemo
parents: 2654
diff changeset
  1241
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1242
    TBW_king = new ToggleButtonWidget(gbGameModes, ":/res/btnKing.png");
3061
e129e4c3f30e Frontend:
smxx
parents: 3044
diff changeset
  1243
    TBW_king->setToolTip("<b>" + ToggleButtonWidget::tr("King") + "</b>:<br />" + tr("Play with a King. If he dies, your side dies."));
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1244
    glGMLayout->addWidget(TBW_king,3,0,1,1);
2726
a84fc5113d01 Update translation files, add "King Mode"
nemo
parents: 2703
diff changeset
  1245
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1246
    TBW_placehog = new ToggleButtonWidget(gbGameModes, ":/res/btnPlaceHog.png");
3061
e129e4c3f30e Frontend:
smxx
parents: 3044
diff changeset
  1247
    TBW_placehog->setToolTip("<b>" + ToggleButtonWidget::tr("Place Hedgehogs") + "</b>:<br />" + tr("Take turns placing your hedgehogs before the start of play."));
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1248
    glGMLayout->addWidget(TBW_placehog,3,1,1,1);
2762
2fbc8d35eb52 Mode to place hogs at start of game. Will probably need a bit more testing.
nemo
parents: 2752
diff changeset
  1249
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1250
    TBW_sharedammo = new ToggleButtonWidget(gbGameModes, ":/res/btnSharedAmmo.png");
3061
e129e4c3f30e Frontend:
smxx
parents: 3044
diff changeset
  1251
    TBW_sharedammo->setToolTip("<b>" + ToggleButtonWidget::tr("Clan Shares Ammo") + "</b>:<br />" + tr("Ammo is shared between all teams that share a colour."));
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1252
    glGMLayout->addWidget(TBW_sharedammo,3,2,1,1);
2881
70d7976fa829 Flag the sharing of ammo between clan teams.
nemo
parents: 2845
diff changeset
  1253
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1254
    TBW_disablegirders = new ToggleButtonWidget(gbGameModes, ":/res/btnDisableGirders.png");
3061
e129e4c3f30e Frontend:
smxx
parents: 3044
diff changeset
  1255
    TBW_disablegirders->setToolTip("<b>" + ToggleButtonWidget::tr("Disable Girders") + "</b>:<br />" + tr("Disable girders when generating random maps."));
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1256
    glGMLayout->addWidget(TBW_disablegirders,3,3,1,1);
3287
4f7b57ed18b6 New game scheme option to turn off land objects
nemo
parents: 3284
diff changeset
  1257
4f7b57ed18b6 New game scheme option to turn off land objects
nemo
parents: 3284
diff changeset
  1258
    TBW_disablelandobjects = new ToggleButtonWidget(gbGameModes, ":/res/btnDisableLandObjects.png");
4f7b57ed18b6 New game scheme option to turn off land objects
nemo
parents: 3284
diff changeset
  1259
    TBW_disablelandobjects->setToolTip("<b>" + ToggleButtonWidget::tr("Disable Land Objects") + "</b>:<br />" + tr("Disable land objects when generating random maps."));
4f7b57ed18b6 New game scheme option to turn off land objects
nemo
parents: 3284
diff changeset
  1260
    glGMLayout->addWidget(TBW_disablelandobjects,4,0,1,1);
4f7b57ed18b6 New game scheme option to turn off land objects
nemo
parents: 3284
diff changeset
  1261
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1262
    // Right
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1263
    QLabel * l;
2377
f3fab2b09e0c And in frontend
nemo
parents: 2369
diff changeset
  1264
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1265
    l = new QLabel(gbBasicSettings);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1266
    l->setText(QLabel::tr("Damage Modifier"));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1267
    l->setWordWrap(true);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1268
    glBSLayout->addWidget(l,0,0,1,1);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1269
    l = new QLabel(gbBasicSettings);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1270
    l->setFixedSize(32,32);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1271
    l->setPixmap(QPixmap(":/res/iconDamage.png"));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1272
    glBSLayout->addWidget(l,0,1,1,1);
2377
f3fab2b09e0c And in frontend
nemo
parents: 2369
diff changeset
  1273
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1274
    SB_DamageModifier = new QSpinBox(gbBasicSettings);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1275
    SB_DamageModifier->setRange(10, 300);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1276
    SB_DamageModifier->setValue(100);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1277
    SB_DamageModifier->setSingleStep(25);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1278
    glBSLayout->addWidget(SB_DamageModifier,0,2,1,1);
1932
f586d75c8b6a New schemes page look by TheXception
unc0rr
parents: 1924
diff changeset
  1279
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1280
    l = new QLabel(gbBasicSettings);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1281
    l->setText(QLabel::tr("Turn Time"));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1282
    l->setWordWrap(true);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1283
    glBSLayout->addWidget(l,1,0,1,1);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1284
    l = new QLabel(gbBasicSettings);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1285
    l->setFixedSize(32,32);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1286
    l->setPixmap(QPixmap(":/res/iconTime.png"));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1287
    glBSLayout->addWidget(l,1,1,1,1);
2377
f3fab2b09e0c And in frontend
nemo
parents: 2369
diff changeset
  1288
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1289
    SB_TurnTime = new QSpinBox(gbBasicSettings);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1290
    SB_TurnTime->setRange(1, 99);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1291
    SB_TurnTime->setValue(45);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1292
    SB_TurnTime->setSingleStep(15);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1293
    glBSLayout->addWidget(SB_TurnTime,1,2,1,1);
2377
f3fab2b09e0c And in frontend
nemo
parents: 2369
diff changeset
  1294
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1295
    l = new QLabel(gbBasicSettings);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1296
    l->setText(QLabel::tr("Initial Health"));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1297
    l->setWordWrap(true);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1298
    glBSLayout->addWidget(l,2,0,1,1);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1299
    l = new QLabel(gbBasicSettings);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1300
    l->setFixedSize(32,32);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1301
    l->setPixmap(QPixmap(":/res/iconHealth.png"));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1302
    glBSLayout->addWidget(l,2,1,1,1);
2377
f3fab2b09e0c And in frontend
nemo
parents: 2369
diff changeset
  1303
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1304
    SB_InitHealth = new QSpinBox(gbBasicSettings);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1305
    SB_InitHealth->setRange(50, 200);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1306
    SB_InitHealth->setValue(100);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1307
    SB_InitHealth->setSingleStep(25);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1308
    glBSLayout->addWidget(SB_InitHealth,2,2,1,1);
2377
f3fab2b09e0c And in frontend
nemo
parents: 2369
diff changeset
  1309
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1310
    l = new QLabel(gbBasicSettings);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1311
    l->setText(QLabel::tr("Sudden Death Timeout"));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1312
    l->setWordWrap(true);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1313
    glBSLayout->addWidget(l,3,0,1,1);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1314
    l = new QLabel(gbBasicSettings);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1315
    l->setFixedSize(32,32);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1316
    l->setPixmap(QPixmap(":/res/iconSuddenDeath.png"));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1317
    glBSLayout->addWidget(l,3,1,1,1);
1932
f586d75c8b6a New schemes page look by TheXception
unc0rr
parents: 1924
diff changeset
  1318
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1319
    SB_SuddenDeath = new QSpinBox(gbBasicSettings);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1320
    SB_SuddenDeath->setRange(0, 50);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1321
    SB_SuddenDeath->setValue(15);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1322
    SB_SuddenDeath->setSingleStep(3);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1323
    glBSLayout->addWidget(SB_SuddenDeath,3,2,1,1);
2377
f3fab2b09e0c And in frontend
nemo
parents: 2369
diff changeset
  1324
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1325
    l = new QLabel(gbBasicSettings);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1326
    l->setText(QLabel::tr("Crate Drops"));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1327
    l->setWordWrap(true);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1328
    glBSLayout->addWidget(l,4,0,1,1);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1329
    l = new QLabel(gbBasicSettings);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1330
    l->setFixedSize(32,32);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1331
    l->setPixmap(QPixmap(":/res/iconBox.png"));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1332
    glBSLayout->addWidget(l,4,1,1,1);
1932
f586d75c8b6a New schemes page look by TheXception
unc0rr
parents: 1924
diff changeset
  1333
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1334
    SB_CaseProb = new FreqSpinBox(gbBasicSettings);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1335
    SB_CaseProb->setRange(0, 9);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1336
    SB_CaseProb->setValue(5);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1337
    glBSLayout->addWidget(SB_CaseProb,4,2,1,1);
1932
f586d75c8b6a New schemes page look by TheXception
unc0rr
parents: 1924
diff changeset
  1338
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1339
    l = new QLabel(gbBasicSettings);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1340
    l->setText(QLabel::tr("Mines Time"));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1341
    l->setWordWrap(true);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1342
    glBSLayout->addWidget(l,5,0,1,1);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1343
    l = new QLabel(gbBasicSettings);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1344
    l->setFixedSize(32,32);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1345
    l->setPixmap(QPixmap(":/res/iconTime.png")); // TODO: icon
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1346
    glBSLayout->addWidget(l,5,1,1,1);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1347
    SB_MinesTime = new QSpinBox(gbBasicSettings);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1348
    SB_MinesTime->setRange(-1, 3);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1349
    SB_MinesTime->setValue(3);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1350
    SB_MinesTime->setSingleStep(1);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1351
    SB_MinesTime->setSpecialValueText(tr("Random"));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1352
    SB_MinesTime->setSuffix(" "+ tr("Seconds"));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1353
    glBSLayout->addWidget(SB_MinesTime,5,2,1,1);
2031
b6f3e56fb100 david_ac's game scheme options for mine delay/quantity, tweaks to sniper rifle
nemo
parents: 2026
diff changeset
  1354
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1355
    l = new QLabel(gbBasicSettings);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1356
    l->setText(QLabel::tr("Mines"));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1357
    l->setWordWrap(true);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1358
    glBSLayout->addWidget(l,6,0,1,1);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1359
    l = new QLabel(gbBasicSettings);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1360
    l->setFixedSize(32,32);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1361
    l->setPixmap(QPixmap(":/res/iconMine.png")); // TODO: icon
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1362
    glBSLayout->addWidget(l,6,1,1,1);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1363
    SB_Mines = new QSpinBox(gbBasicSettings);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1364
    SB_Mines->setRange(1, 80);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1365
    SB_Mines->setValue(1);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1366
    SB_Mines->setSingleStep(5);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1367
    glBSLayout->addWidget(SB_Mines,6,2,1,1);
1932
f586d75c8b6a New schemes page look by TheXception
unc0rr
parents: 1924
diff changeset
  1368
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1369
    l = new QLabel(gbBasicSettings);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1370
    l->setText(QLabel::tr("% Dud Mines"));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1371
    l->setWordWrap(true);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1372
    glBSLayout->addWidget(l,7,0,1,1);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1373
    l = new QLabel(gbBasicSettings);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1374
    l->setFixedSize(32,32);
3061
e129e4c3f30e Frontend:
smxx
parents: 3044
diff changeset
  1375
    l->setPixmap(QPixmap(":/res/iconDud.png"));
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1376
    glBSLayout->addWidget(l,7,1,1,1);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1377
    SB_MineDuds = new QSpinBox(gbBasicSettings);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1378
    SB_MineDuds->setRange(0, 100);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1379
    SB_MineDuds->setValue(0);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1380
    SB_MineDuds->setSingleStep(5);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1381
    glBSLayout->addWidget(SB_MineDuds,7,2,1,1);
2882
b9aceb3fe3d6 Dude mine probability spinner
nemo
parents: 2881
diff changeset
  1382
2915
a02f276035e8 Add spinner for explosives, add dust on crate impact, crank up explosives a bit
nemo
parents: 2913
diff changeset
  1383
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1384
    l = new QLabel(gbBasicSettings);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1385
    l->setText(QLabel::tr("Explosives"));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1386
    l->setWordWrap(true);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1387
    glBSLayout->addWidget(l,8,0,1,1);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1388
    l = new QLabel(gbBasicSettings);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1389
    l->setFixedSize(32,32);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1390
    l->setPixmap(QPixmap(":/res/iconDamage.png"));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1391
    glBSLayout->addWidget(l,8,1,1,1);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1392
    SB_Explosives = new QSpinBox(gbBasicSettings);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1393
    SB_Explosives->setRange(0, 40);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1394
    SB_Explosives->setValue(0);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1395
    SB_Explosives->setSingleStep(1);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1396
    glBSLayout->addWidget(SB_Explosives,8,2,1,1);
2915
a02f276035e8 Add spinner for explosives, add dust on crate impact, crank up explosives a bit
nemo
parents: 2913
diff changeset
  1397
a02f276035e8 Add spinner for explosives, add dust on crate impact, crank up explosives a bit
nemo
parents: 2913
diff changeset
  1398
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1399
    l = new QLabel(gbBasicSettings);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1400
    l->setText(QLabel::tr("Scheme Name:"));
1885
75489216b5b0 Continue work on new schemes
unc0rr
parents: 1884
diff changeset
  1401
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1402
    LE_name = new QLineEdit(this);
2377
f3fab2b09e0c And in frontend
nemo
parents: 2369
diff changeset
  1403
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1404
    gl->addWidget(LE_name,14,1,1,5);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1405
    gl->addWidget(l,14,0,1,1);
1885
75489216b5b0 Continue work on new schemes
unc0rr
parents: 1884
diff changeset
  1406
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1407
    mapper = new QDataWidgetMapper(this);
1887
d68939b3f7f0 - Share model between test table and widgets
unc0rr
parents: 1885
diff changeset
  1408
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1409
    BtnBack = addButton(":/res/Exit.png", pageLayout, 15, 0, true);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1410
    BtnNew = addButton(tr("New"), pageLayout, 15, 2);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1411
    BtnDelete = addButton(tr("Delete"), pageLayout, 15, 3);
1887
d68939b3f7f0 - Share model between test table and widgets
unc0rr
parents: 1885
diff changeset
  1412
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1413
    selectScheme = new QComboBox(this);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1414
    pageLayout->addWidget(selectScheme, 15, 1);
1902
aeadb10c2d77 Add delete button and scheme selection combobox to scheme edit page
unc0rr
parents: 1895
diff changeset
  1415
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1416
    connect(BtnNew, SIGNAL(clicked()), this, SLOT(newRow()));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1417
    connect(BtnDelete, SIGNAL(clicked()), this, SLOT(deleteRow()));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1418
    connect(selectScheme, SIGNAL(currentIndexChanged(int)), mapper, SLOT(setCurrentIndex(int)));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1419
    connect(selectScheme, SIGNAL(currentIndexChanged(int)), this, SLOT(schemeSelected(int)));
1887
d68939b3f7f0 - Share model between test table and widgets
unc0rr
parents: 1885
diff changeset
  1420
}
d68939b3f7f0 - Share model between test table and widgets
unc0rr
parents: 1885
diff changeset
  1421
d68939b3f7f0 - Share model between test table and widgets
unc0rr
parents: 1885
diff changeset
  1422
void PageScheme::setModel(QAbstractItemModel * model)
d68939b3f7f0 - Share model between test table and widgets
unc0rr
parents: 1885
diff changeset
  1423
{
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1424
    mapper->setModel(model);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1425
    selectScheme->setModel(model);
2377
f3fab2b09e0c And in frontend
nemo
parents: 2369
diff changeset
  1426
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1427
    mapper->addMapping(LE_name, 0);
3061
e129e4c3f30e Frontend:
smxx
parents: 3044
diff changeset
  1428
    mapper->addMapping(TBW_mode_Forts, 1);
e129e4c3f30e Frontend:
smxx
parents: 3044
diff changeset
  1429
    mapper->addMapping(TBW_teamsDivide, 2);
e129e4c3f30e Frontend:
smxx
parents: 3044
diff changeset
  1430
    mapper->addMapping(TBW_solid, 3);
e129e4c3f30e Frontend:
smxx
parents: 3044
diff changeset
  1431
    mapper->addMapping(TBW_border, 4);
e129e4c3f30e Frontend:
smxx
parents: 3044
diff changeset
  1432
    mapper->addMapping(TBW_lowGravity, 5);
e129e4c3f30e Frontend:
smxx
parents: 3044
diff changeset
  1433
    mapper->addMapping(TBW_laserSight, 6);
e129e4c3f30e Frontend:
smxx
parents: 3044
diff changeset
  1434
    mapper->addMapping(TBW_invulnerable, 7);
e129e4c3f30e Frontend:
smxx
parents: 3044
diff changeset
  1435
    mapper->addMapping(TBW_mines, 8);
e129e4c3f30e Frontend:
smxx
parents: 3044
diff changeset
  1436
    mapper->addMapping(TBW_vampiric, 9);
e129e4c3f30e Frontend:
smxx
parents: 3044
diff changeset
  1437
    mapper->addMapping(TBW_karma, 10);
e129e4c3f30e Frontend:
smxx
parents: 3044
diff changeset
  1438
    mapper->addMapping(TBW_artillery, 11);
e129e4c3f30e Frontend:
smxx
parents: 3044
diff changeset
  1439
    mapper->addMapping(TBW_randomorder, 12);
e129e4c3f30e Frontend:
smxx
parents: 3044
diff changeset
  1440
    mapper->addMapping(TBW_king, 13);
e129e4c3f30e Frontend:
smxx
parents: 3044
diff changeset
  1441
    mapper->addMapping(TBW_placehog, 14);
e129e4c3f30e Frontend:
smxx
parents: 3044
diff changeset
  1442
    mapper->addMapping(TBW_sharedammo, 15);
e129e4c3f30e Frontend:
smxx
parents: 3044
diff changeset
  1443
    mapper->addMapping(TBW_disablegirders, 16);
3287
4f7b57ed18b6 New game scheme option to turn off land objects
nemo
parents: 3284
diff changeset
  1444
    mapper->addMapping(TBW_disablelandobjects, 17);
4f7b57ed18b6 New game scheme option to turn off land objects
nemo
parents: 3284
diff changeset
  1445
    mapper->addMapping(SB_DamageModifier, 18);
4f7b57ed18b6 New game scheme option to turn off land objects
nemo
parents: 3284
diff changeset
  1446
    mapper->addMapping(SB_TurnTime, 19);
4f7b57ed18b6 New game scheme option to turn off land objects
nemo
parents: 3284
diff changeset
  1447
    mapper->addMapping(SB_InitHealth, 20);
4f7b57ed18b6 New game scheme option to turn off land objects
nemo
parents: 3284
diff changeset
  1448
    mapper->addMapping(SB_SuddenDeath, 21);
4f7b57ed18b6 New game scheme option to turn off land objects
nemo
parents: 3284
diff changeset
  1449
    mapper->addMapping(SB_CaseProb, 22);
4f7b57ed18b6 New game scheme option to turn off land objects
nemo
parents: 3284
diff changeset
  1450
    mapper->addMapping(SB_MinesTime, 23);
4f7b57ed18b6 New game scheme option to turn off land objects
nemo
parents: 3284
diff changeset
  1451
    mapper->addMapping(SB_Mines, 24);
4f7b57ed18b6 New game scheme option to turn off land objects
nemo
parents: 3284
diff changeset
  1452
    mapper->addMapping(SB_MineDuds, 25);
4f7b57ed18b6 New game scheme option to turn off land objects
nemo
parents: 3284
diff changeset
  1453
    mapper->addMapping(SB_Explosives, 26);
1887
d68939b3f7f0 - Share model between test table and widgets
unc0rr
parents: 1885
diff changeset
  1454
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1455
    mapper->toFirst();
1884
40e59e9f82ce Continue work on new schemes implementation
unc0rr
parents: 1856
diff changeset
  1456
}
1889
b8590b604fdd Editing schemes, creating new one works now
unc0rr
parents: 1887
diff changeset
  1457
b8590b604fdd Editing schemes, creating new one works now
unc0rr
parents: 1887
diff changeset
  1458
void PageScheme::newRow()
b8590b604fdd Editing schemes, creating new one works now
unc0rr
parents: 1887
diff changeset
  1459
{
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1460
    QAbstractItemModel * model = mapper->model();
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1461
    model->insertRow(model->rowCount());
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1462
    selectScheme->setCurrentIndex(model->rowCount() - 1);
1889
b8590b604fdd Editing schemes, creating new one works now
unc0rr
parents: 1887
diff changeset
  1463
}
1902
aeadb10c2d77 Add delete button and scheme selection combobox to scheme edit page
unc0rr
parents: 1895
diff changeset
  1464
aeadb10c2d77 Add delete button and scheme selection combobox to scheme edit page
unc0rr
parents: 1895
diff changeset
  1465
void PageScheme::deleteRow()
aeadb10c2d77 Add delete button and scheme selection combobox to scheme edit page
unc0rr
parents: 1895
diff changeset
  1466
{
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1467
    QAbstractItemModel * model = mapper->model();
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1468
    model->removeRow(selectScheme->currentIndex());
1902
aeadb10c2d77 Add delete button and scheme selection combobox to scheme edit page
unc0rr
parents: 1895
diff changeset
  1469
}
1905
b1ec8db513f2 - Use QCryptographicHash for md5
unc0rr
parents: 1904
diff changeset
  1470
1984
955b049eb099 Disable feel of editing for built-in schemes
unc0rr
parents: 1977
diff changeset
  1471
void PageScheme::schemeSelected(int n)
955b049eb099 Disable feel of editing for built-in schemes
unc0rr
parents: 1977
diff changeset
  1472
{
3172
ae5c7f97df44 Engine:
smxx
parents: 3159
diff changeset
  1473
    int c = ((AmmoSchemeModel*)mapper->model())->numberOfDefaultSchemes;
ae5c7f97df44 Engine:
smxx
parents: 3159
diff changeset
  1474
    gbGameModes->setEnabled(n >= c);
ae5c7f97df44 Engine:
smxx
parents: 3159
diff changeset
  1475
    gbBasicSettings->setEnabled(n >= c);
ae5c7f97df44 Engine:
smxx
parents: 3159
diff changeset
  1476
    LE_name->setEnabled(n >= c);
1984
955b049eb099 Disable feel of editing for built-in schemes
unc0rr
parents: 1977
diff changeset
  1477
}
955b049eb099 Disable feel of editing for built-in schemes
unc0rr
parents: 1977
diff changeset
  1478
1905
b1ec8db513f2 - Use QCryptographicHash for md5
unc0rr
parents: 1904
diff changeset
  1479
/////////////////////////////////////////////////
b1ec8db513f2 - Use QCryptographicHash for md5
unc0rr
parents: 1904
diff changeset
  1480
b1ec8db513f2 - Use QCryptographicHash for md5
unc0rr
parents: 1904
diff changeset
  1481
PageAdmin::PageAdmin(QWidget* parent) :
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1482
    AbstractPage(parent)
1905
b1ec8db513f2 - Use QCryptographicHash for md5
unc0rr
parents: 1904
diff changeset
  1483
{
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1484
    QGridLayout * pageLayout = new QGridLayout(this);
1905
b1ec8db513f2 - Use QCryptographicHash for md5
unc0rr
parents: 1904
diff changeset
  1485
3283
18ee933a5864 Some stuff for game server administration task
unc0rr
parents: 3279
diff changeset
  1486
    // 0
18ee933a5864 Some stuff for game server administration task
unc0rr
parents: 3279
diff changeset
  1487
    pbAsk = addButton(tr("Fetch data"), pageLayout, 0, 0, 1, 3);
18ee933a5864 Some stuff for game server administration task
unc0rr
parents: 3279
diff changeset
  1488
    connect(pbAsk, SIGNAL(clicked()), this, SIGNAL(askServerVars()));
18ee933a5864 Some stuff for game server administration task
unc0rr
parents: 3279
diff changeset
  1489
    
18ee933a5864 Some stuff for game server administration task
unc0rr
parents: 3279
diff changeset
  1490
    // 1
18ee933a5864 Some stuff for game server administration task
unc0rr
parents: 3279
diff changeset
  1491
    QLabel * lblSMN = new QLabel(this);
18ee933a5864 Some stuff for game server administration task
unc0rr
parents: 3279
diff changeset
  1492
    lblSMN->setText(tr("Server message for latest version:"));
18ee933a5864 Some stuff for game server administration task
unc0rr
parents: 3279
diff changeset
  1493
    pageLayout->addWidget(lblSMN, 1, 0);
18ee933a5864 Some stuff for game server administration task
unc0rr
parents: 3279
diff changeset
  1494
18ee933a5864 Some stuff for game server administration task
unc0rr
parents: 3279
diff changeset
  1495
    leServerMessageNew = new QLineEdit(this);
18ee933a5864 Some stuff for game server administration task
unc0rr
parents: 3279
diff changeset
  1496
    pageLayout->addWidget(leServerMessageNew, 1, 1);
18ee933a5864 Some stuff for game server administration task
unc0rr
parents: 3279
diff changeset
  1497
18ee933a5864 Some stuff for game server administration task
unc0rr
parents: 3279
diff changeset
  1498
    // 2
18ee933a5864 Some stuff for game server administration task
unc0rr
parents: 3279
diff changeset
  1499
    QLabel * lblSMO = new QLabel(this);
18ee933a5864 Some stuff for game server administration task
unc0rr
parents: 3279
diff changeset
  1500
    lblSMO->setText(tr("Server message for previous versions:"));
18ee933a5864 Some stuff for game server administration task
unc0rr
parents: 3279
diff changeset
  1501
    pageLayout->addWidget(lblSMO, 2, 0);
18ee933a5864 Some stuff for game server administration task
unc0rr
parents: 3279
diff changeset
  1502
18ee933a5864 Some stuff for game server administration task
unc0rr
parents: 3279
diff changeset
  1503
    leServerMessageOld = new QLineEdit(this);
18ee933a5864 Some stuff for game server administration task
unc0rr
parents: 3279
diff changeset
  1504
    pageLayout->addWidget(leServerMessageOld, 2, 1);
1924
8f8fe856ce9d Prepare to add ability for admin to set MOTD
unc0rr
parents: 1905
diff changeset
  1505
3283
18ee933a5864 Some stuff for game server administration task
unc0rr
parents: 3279
diff changeset
  1506
    // 3
18ee933a5864 Some stuff for game server administration task
unc0rr
parents: 3279
diff changeset
  1507
    QLabel * lblP = new QLabel(this);
18ee933a5864 Some stuff for game server administration task
unc0rr
parents: 3279
diff changeset
  1508
    lblP->setText(tr("Latest version protocol number:"));
18ee933a5864 Some stuff for game server administration task
unc0rr
parents: 3279
diff changeset
  1509
    pageLayout->addWidget(lblP, 3, 0);
18ee933a5864 Some stuff for game server administration task
unc0rr
parents: 3279
diff changeset
  1510
18ee933a5864 Some stuff for game server administration task
unc0rr
parents: 3279
diff changeset
  1511
    sbProtocol = new QSpinBox(this);
18ee933a5864 Some stuff for game server administration task
unc0rr
parents: 3279
diff changeset
  1512
    pageLayout->addWidget(sbProtocol, 3, 1);
18ee933a5864 Some stuff for game server administration task
unc0rr
parents: 3279
diff changeset
  1513
18ee933a5864 Some stuff for game server administration task
unc0rr
parents: 3279
diff changeset
  1514
    // 4
18ee933a5864 Some stuff for game server administration task
unc0rr
parents: 3279
diff changeset
  1515
    QLabel * lblPreview = new QLabel(this);
18ee933a5864 Some stuff for game server administration task
unc0rr
parents: 3279
diff changeset
  1516
    lblPreview->setText(tr("MOTD preview:"));
18ee933a5864 Some stuff for game server administration task
unc0rr
parents: 3279
diff changeset
  1517
    pageLayout->addWidget(lblPreview, 4, 0);
1924
8f8fe856ce9d Prepare to add ability for admin to set MOTD
unc0rr
parents: 1905
diff changeset
  1518
3283
18ee933a5864 Some stuff for game server administration task
unc0rr
parents: 3279
diff changeset
  1519
    tb = new QTextBrowser(this);
18ee933a5864 Some stuff for game server administration task
unc0rr
parents: 3279
diff changeset
  1520
    pageLayout->addWidget(tb, 4, 1, 1, 2);
18ee933a5864 Some stuff for game server administration task
unc0rr
parents: 3279
diff changeset
  1521
    connect(leServerMessageNew, SIGNAL(textEdited(const QString &)), tb, SLOT(setHtml(const QString &)));
18ee933a5864 Some stuff for game server administration task
unc0rr
parents: 3279
diff changeset
  1522
    connect(leServerMessageOld, SIGNAL(textEdited(const QString &)), tb, SLOT(setHtml(const QString &)));
18ee933a5864 Some stuff for game server administration task
unc0rr
parents: 3279
diff changeset
  1523
    
18ee933a5864 Some stuff for game server administration task
unc0rr
parents: 3279
diff changeset
  1524
    // 5
18ee933a5864 Some stuff for game server administration task
unc0rr
parents: 3279
diff changeset
  1525
    pbClearAccountsCache = addButton(tr("Clear Accounts Cache"), pageLayout, 5, 0);
18ee933a5864 Some stuff for game server administration task
unc0rr
parents: 3279
diff changeset
  1526
    
18ee933a5864 Some stuff for game server administration task
unc0rr
parents: 3279
diff changeset
  1527
    // 6
18ee933a5864 Some stuff for game server administration task
unc0rr
parents: 3279
diff changeset
  1528
    pbSetSM = addButton(tr("Set data"), pageLayout, 6, 0, 1, 3);
2155
d897222d3339 Implement ability for server admin to clear accounts cache
unc0rr
parents: 2098
diff changeset
  1529
3283
18ee933a5864 Some stuff for game server administration task
unc0rr
parents: 3279
diff changeset
  1530
    // 7
18ee933a5864 Some stuff for game server administration task
unc0rr
parents: 3279
diff changeset
  1531
    BtnBack = addButton(":/res/Exit.png", pageLayout, 7, 0, true);
1924
8f8fe856ce9d Prepare to add ability for admin to set MOTD
unc0rr
parents: 1905
diff changeset
  1532
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1533
    connect(pbSetSM, SIGNAL(clicked()), this, SLOT(smChanged()));
1905
b1ec8db513f2 - Use QCryptographicHash for md5
unc0rr
parents: 1904
diff changeset
  1534
}
1924
8f8fe856ce9d Prepare to add ability for admin to set MOTD
unc0rr
parents: 1905
diff changeset
  1535
8f8fe856ce9d Prepare to add ability for admin to set MOTD
unc0rr
parents: 1905
diff changeset
  1536
void PageAdmin::smChanged()
8f8fe856ce9d Prepare to add ability for admin to set MOTD
unc0rr
parents: 1905
diff changeset
  1537
{
3283
18ee933a5864 Some stuff for game server administration task
unc0rr
parents: 3279
diff changeset
  1538
    emit setServerMessageNew(leServerMessageNew->text());
18ee933a5864 Some stuff for game server administration task
unc0rr
parents: 3279
diff changeset
  1539
    emit setServerMessageOld(leServerMessageOld->text());
18ee933a5864 Some stuff for game server administration task
unc0rr
parents: 3279
diff changeset
  1540
    emit setProtocol(sbProtocol->value());
1924
8f8fe856ce9d Prepare to add ability for admin to set MOTD
unc0rr
parents: 1905
diff changeset
  1541
}
8f8fe856ce9d Prepare to add ability for admin to set MOTD
unc0rr
parents: 1905
diff changeset
  1542
3283
18ee933a5864 Some stuff for game server administration task
unc0rr
parents: 3279
diff changeset
  1543
void PageAdmin::serverMessageNew(const QString & str)
1924
8f8fe856ce9d Prepare to add ability for admin to set MOTD
unc0rr
parents: 1905
diff changeset
  1544
{
3283
18ee933a5864 Some stuff for game server administration task
unc0rr
parents: 3279
diff changeset
  1545
    leServerMessageNew->setText(str);
18ee933a5864 Some stuff for game server administration task
unc0rr
parents: 3279
diff changeset
  1546
}
18ee933a5864 Some stuff for game server administration task
unc0rr
parents: 3279
diff changeset
  1547
18ee933a5864 Some stuff for game server administration task
unc0rr
parents: 3279
diff changeset
  1548
void PageAdmin::serverMessageOld(const QString & str)
18ee933a5864 Some stuff for game server administration task
unc0rr
parents: 3279
diff changeset
  1549
{
18ee933a5864 Some stuff for game server administration task
unc0rr
parents: 3279
diff changeset
  1550
    leServerMessageOld->setText(str);
18ee933a5864 Some stuff for game server administration task
unc0rr
parents: 3279
diff changeset
  1551
}
18ee933a5864 Some stuff for game server administration task
unc0rr
parents: 3279
diff changeset
  1552
void PageAdmin::protocol(int proto)
18ee933a5864 Some stuff for game server administration task
unc0rr
parents: 3279
diff changeset
  1553
{
18ee933a5864 Some stuff for game server administration task
unc0rr
parents: 3279
diff changeset
  1554
    sbProtocol->setValue(proto);
1924
8f8fe856ce9d Prepare to add ability for admin to set MOTD
unc0rr
parents: 1905
diff changeset
  1555
}
1950
09ad18a1be11 Implement two buttons
unc0rr
parents: 1943
diff changeset
  1556
09ad18a1be11 Implement two buttons
unc0rr
parents: 1943
diff changeset
  1557
/////////////////////////////////////////////////
09ad18a1be11 Implement two buttons
unc0rr
parents: 1943
diff changeset
  1558
09ad18a1be11 Implement two buttons
unc0rr
parents: 1943
diff changeset
  1559
PageNetType::PageNetType(QWidget* parent) : AbstractPage(parent)
09ad18a1be11 Implement two buttons
unc0rr
parents: 1943
diff changeset
  1560
{
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1561
    QGridLayout * pageLayout = new QGridLayout(this);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1562
    pageLayout->setRowStretch(0, 10);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1563
    pageLayout->setRowStretch(3, 10);
1977
2284d7fefe4f Some polishing
unc0rr
parents: 1951
diff changeset
  1564
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1565
    pageLayout->setColumnStretch(1, 10);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1566
    pageLayout->setColumnStretch(2, 20);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1567
    pageLayout->setColumnStretch(3, 10);
1950
09ad18a1be11 Implement two buttons
unc0rr
parents: 1943
diff changeset
  1568
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1569
    BtnLAN = addButton(tr("LAN game"), pageLayout, 1, 2);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1570
    BtnOfficialServer = addButton(tr("Official server"), pageLayout, 2, 2);
1950
09ad18a1be11 Implement two buttons
unc0rr
parents: 1943
diff changeset
  1571
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1572
    // hack: temporary deactivated - requires server modifications that aren't backward compatible (yet)
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1573
    //BtnOfficialServer->setEnabled(false);
2747
7889a3a9724f Server:
smxx
parents: 2733
diff changeset
  1574
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2915
diff changeset
  1575
    BtnBack = addButton(":/res/Exit.png", pageLayout, 4, 0, true);
1950
09ad18a1be11 Implement two buttons
unc0rr
parents: 1943
diff changeset
  1576
}