QTfrontend/ui/page/pageoptions.cpp
author Wuzzy <almikes@aol.com>
Fri, 06 May 2016 20:12:27 +0200
changeset 11824 7642955690bc
parent 11679 d59b6f289e30
child 12165 1c3670021559
permissions -rw-r--r--
Tweak sizes and icons of most footer buttons of frontend
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
5078
3527f0e7bb21 Removing pages.cpp and splitting it up into various files.
Zorg <zorgiepoo@gmail.com>
parents:
diff changeset
     1
/*
3527f0e7bb21 Removing pages.cpp and splitting it up into various files.
Zorg <zorgiepoo@gmail.com>
parents:
diff changeset
     2
 * Hedgewars, a free turn based strategy game
11046
47a8c19ecb60 more copyright fixes
sheepluva
parents: 10108
diff changeset
     3
 * Copyright (c) 2004-2015 Andrey Korotaev <unC0Rr@gmail.com>
5078
3527f0e7bb21 Removing pages.cpp and splitting it up into various files.
Zorg <zorgiepoo@gmail.com>
parents:
diff changeset
     4
 *
3527f0e7bb21 Removing pages.cpp and splitting it up into various files.
Zorg <zorgiepoo@gmail.com>
parents:
diff changeset
     5
 * This program is free software; you can redistribute it and/or modify
3527f0e7bb21 Removing pages.cpp and splitting it up into various files.
Zorg <zorgiepoo@gmail.com>
parents:
diff changeset
     6
 * it under the terms of the GNU General Public License as published by
3527f0e7bb21 Removing pages.cpp and splitting it up into various files.
Zorg <zorgiepoo@gmail.com>
parents:
diff changeset
     7
 * the Free Software Foundation; version 2 of the License
3527f0e7bb21 Removing pages.cpp and splitting it up into various files.
Zorg <zorgiepoo@gmail.com>
parents:
diff changeset
     8
 *
3527f0e7bb21 Removing pages.cpp and splitting it up into various files.
Zorg <zorgiepoo@gmail.com>
parents:
diff changeset
     9
 * This program is distributed in the hope that it will be useful,
3527f0e7bb21 Removing pages.cpp and splitting it up into various files.
Zorg <zorgiepoo@gmail.com>
parents:
diff changeset
    10
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
3527f0e7bb21 Removing pages.cpp and splitting it up into various files.
Zorg <zorgiepoo@gmail.com>
parents:
diff changeset
    11
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
3527f0e7bb21 Removing pages.cpp and splitting it up into various files.
Zorg <zorgiepoo@gmail.com>
parents:
diff changeset
    12
 * GNU General Public License for more details.
3527f0e7bb21 Removing pages.cpp and splitting it up into various files.
Zorg <zorgiepoo@gmail.com>
parents:
diff changeset
    13
 *
3527f0e7bb21 Removing pages.cpp and splitting it up into various files.
Zorg <zorgiepoo@gmail.com>
parents:
diff changeset
    14
 * You should have received a copy of the GNU General Public License
3527f0e7bb21 Removing pages.cpp and splitting it up into various files.
Zorg <zorgiepoo@gmail.com>
parents:
diff changeset
    15
 * along with this program; if not, write to the Free Software
10108
c68cf030eded update FSF address. note: two sdl include files (by Sam Lantinga) still have the old FSF address in their copyright - but I ain't gonna touch their copyright headers
sheepluva
parents: 10017
diff changeset
    16
 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
5078
3527f0e7bb21 Removing pages.cpp and splitting it up into various files.
Zorg <zorgiepoo@gmail.com>
parents:
diff changeset
    17
 */
3527f0e7bb21 Removing pages.cpp and splitting it up into various files.
Zorg <zorgiepoo@gmail.com>
parents:
diff changeset
    18
3527f0e7bb21 Removing pages.cpp and splitting it up into various files.
Zorg <zorgiepoo@gmail.com>
parents:
diff changeset
    19
#include <QGridLayout>
6042
8b5345758f62 some more cleanups/refactoring/blahblah, some button positions may are a bit off atm. also I added a new picture for one of the buttons
sheepluva
parents: 6024
diff changeset
    20
#include <QHBoxLayout>
5078
3527f0e7bb21 Removing pages.cpp and splitting it up into various files.
Zorg <zorgiepoo@gmail.com>
parents:
diff changeset
    21
#include <QPushButton>
3527f0e7bb21 Removing pages.cpp and splitting it up into various files.
Zorg <zorgiepoo@gmail.com>
parents:
diff changeset
    22
#include <QGroupBox>
3527f0e7bb21 Removing pages.cpp and splitting it up into various files.
Zorg <zorgiepoo@gmail.com>
parents:
diff changeset
    23
#include <QComboBox>
3527f0e7bb21 Removing pages.cpp and splitting it up into various files.
Zorg <zorgiepoo@gmail.com>
parents:
diff changeset
    24
#include <QCheckBox>
3527f0e7bb21 Removing pages.cpp and splitting it up into various files.
Zorg <zorgiepoo@gmail.com>
parents:
diff changeset
    25
#include <QLabel>
8346
3443e0de2c9d GCI2012: Advanced Keyboard Configuration
dag10
parents: 8284
diff changeset
    26
#include <QTableWidget>
5078
3527f0e7bb21 Removing pages.cpp and splitting it up into various files.
Zorg <zorgiepoo@gmail.com>
parents:
diff changeset
    27
#include <QLineEdit>
3527f0e7bb21 Removing pages.cpp and splitting it up into various files.
Zorg <zorgiepoo@gmail.com>
parents:
diff changeset
    28
#include <QSpinBox>
3527f0e7bb21 Removing pages.cpp and splitting it up into various files.
Zorg <zorgiepoo@gmail.com>
parents:
diff changeset
    29
#include <QTextBrowser>
8346
3443e0de2c9d GCI2012: Advanced Keyboard Configuration
dag10
parents: 8284
diff changeset
    30
#include <QScrollArea>
3443e0de2c9d GCI2012: Advanced Keyboard Configuration
dag10
parents: 8284
diff changeset
    31
#include <QHeaderView>
5078
3527f0e7bb21 Removing pages.cpp and splitting it up into various files.
Zorg <zorgiepoo@gmail.com>
parents:
diff changeset
    32
#include <QSlider>
7541
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
    33
#include <QSignalMapper>
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
    34
#include <QColorDialog>
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
    35
#include <QStandardItemModel>
8346
3443e0de2c9d GCI2012: Advanced Keyboard Configuration
dag10
parents: 8284
diff changeset
    36
#include <QDebug>
5078
3527f0e7bb21 Removing pages.cpp and splitting it up into various files.
Zorg <zorgiepoo@gmail.com>
parents:
diff changeset
    37
5204
e1a5f4d5d86a split pages.h into several header files
koda
parents: 5078
diff changeset
    38
#include "pageoptions.h"
8151
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
    39
#include "gameuiconfig.h"
5078
3527f0e7bb21 Removing pages.cpp and splitting it up into various files.
Zorg <zorgiepoo@gmail.com>
parents:
diff changeset
    40
#include "hwconsts.h"
3527f0e7bb21 Removing pages.cpp and splitting it up into various files.
Zorg <zorgiepoo@gmail.com>
parents:
diff changeset
    41
#include "fpsedit.h"
7541
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
    42
#include "DataManager.h"
8151
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
    43
#include "LibavInteraction.h"
8284
a874d00df4a4 GCI2012: Autoupdate Button in Settings
Drew Gottlieb
parents: 8229
diff changeset
    44
#include "AutoUpdater.h"
8346
3443e0de2c9d GCI2012: Advanced Keyboard Configuration
dag10
parents: 8284
diff changeset
    45
#include "HWApplication.h"
3443e0de2c9d GCI2012: Advanced Keyboard Configuration
dag10
parents: 8284
diff changeset
    46
#include "keybinder.h"
8284
a874d00df4a4 GCI2012: Autoupdate Button in Settings
Drew Gottlieb
parents: 8229
diff changeset
    47
a874d00df4a4 GCI2012: Autoupdate Button in Settings
Drew Gottlieb
parents: 8229
diff changeset
    48
#ifdef __APPLE__
a874d00df4a4 GCI2012: Autoupdate Button in Settings
Drew Gottlieb
parents: 8229
diff changeset
    49
#ifdef SPARKLE_ENABLED
a874d00df4a4 GCI2012: Autoupdate Button in Settings
Drew Gottlieb
parents: 8229
diff changeset
    50
#include "SparkleAutoUpdater.h"
a874d00df4a4 GCI2012: Autoupdate Button in Settings
Drew Gottlieb
parents: 8229
diff changeset
    51
#endif
a874d00df4a4 GCI2012: Autoupdate Button in Settings
Drew Gottlieb
parents: 8229
diff changeset
    52
#endif
5078
3527f0e7bb21 Removing pages.cpp and splitting it up into various files.
Zorg <zorgiepoo@gmail.com>
parents:
diff changeset
    53
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
    54
const int OPTION_BOX_SPACING = 10;
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
    55
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
    56
OptionGroupBox::OptionGroupBox(const QString & iconName,
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
    57
                               const QString & title,
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
    58
                               QWidget * parent) : IconedGroupBox(parent)
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
    59
{
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
    60
    setIcon(QIcon(iconName));
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
    61
    setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
    62
    setTitle(title);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
    63
    setMinimumWidth(300);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
    64
    m_layout = new QGridLayout(this);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
    65
    m_layout->setColumnStretch(0, 0);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
    66
    m_layout->setColumnStretch(1, 1);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
    67
}
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
    68
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
    69
QGridLayout * OptionGroupBox::layout()
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
    70
{
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
    71
    return m_layout;
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
    72
}
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
    73
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
    74
void OptionGroupBox::addDivider()
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
    75
{
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
    76
    QFrame * hr = new QFrame(this);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
    77
    hr->setFrameStyle(QFrame::HLine);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
    78
    hr->setLineWidth(3);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
    79
    hr->setFixedHeight(10);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
    80
    m_layout->addWidget(hr, m_layout->rowCount(), 0, 1, m_layout->columnCount());
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
    81
}
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
    82
6042
8b5345758f62 some more cleanups/refactoring/blahblah, some button positions may are a bit off atm. also I added a new picture for one of the buttons
sheepluva
parents: 6024
diff changeset
    83
// TODO cleanup
8b5345758f62 some more cleanups/refactoring/blahblah, some button positions may are a bit off atm. also I added a new picture for one of the buttons
sheepluva
parents: 6024
diff changeset
    84
QLayout * PageOptions::bodyLayoutDefinition()
5078
3527f0e7bb21 Removing pages.cpp and splitting it up into various files.
Zorg <zorgiepoo@gmail.com>
parents:
diff changeset
    85
{
7541
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
    86
    QVBoxLayout * pageLayout = new QVBoxLayout();
5078
3527f0e7bb21 Removing pages.cpp and splitting it up into various files.
Zorg <zorgiepoo@gmail.com>
parents:
diff changeset
    87
7541
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
    88
    QTabWidget * tabs = new QTabWidget(this);
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
    89
    pageLayout->addWidget(tabs);
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
    90
8346
3443e0de2c9d GCI2012: Advanced Keyboard Configuration
dag10
parents: 8284
diff changeset
    91
    binder = new KeyBinder(this, tr("Select an action to change what key controls it"), tr("Reset to default"), tr("Reset all binds"));
3443e0de2c9d GCI2012: Advanced Keyboard Configuration
dag10
parents: 8284
diff changeset
    92
    connect(binder, SIGNAL(bindUpdate(int)), this, SLOT(bindUpdated(int)));
3443e0de2c9d GCI2012: Advanced Keyboard Configuration
dag10
parents: 8284
diff changeset
    93
    connect(binder, SIGNAL(resetAllBinds()), this, SLOT(resetAllBinds()));
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
    94
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
    95
    QWidget * pageGame = new QWidget(this);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
    96
    tabs->addTab(pageGame, tr("Game"));
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
    97
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
    98
    QWidget * pageGraphics = new QWidget(this);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
    99
    tabs->addTab(pageGraphics, tr("Graphics"));
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   100
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   101
    QWidget * pageAudio = new QWidget(this);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   102
    tabs->addTab(pageAudio, tr("Audio"));
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   103
8346
3443e0de2c9d GCI2012: Advanced Keyboard Configuration
dag10
parents: 8284
diff changeset
   104
    binderTab = tabs->addTab(binder, tr("Controls"));
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   105
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   106
#ifdef VIDEOREC
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   107
    QWidget * pageVideoRec = new QWidget(this);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   108
    tabs->addTab(pageVideoRec, tr("Video Recording"));
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   109
#endif
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   110
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   111
    QWidget * pageNetwork = new QWidget(this);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   112
    tabs->addTab(pageNetwork, tr("Network"));
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   113
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   114
    QWidget * pageAdvanced = new QWidget(this);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   115
    tabs->addTab(pageAdvanced, tr("Advanced"));
7541
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   116
8346
3443e0de2c9d GCI2012: Advanced Keyboard Configuration
dag10
parents: 8284
diff changeset
   117
    connect(tabs, SIGNAL(currentChanged(int)), this, SLOT(tabIndexChanged(int)));
3443e0de2c9d GCI2012: Advanced Keyboard Configuration
dag10
parents: 8284
diff changeset
   118
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   119
    QPixmap pmNew(":/res/new.png");
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   120
    QPixmap pmEdit(":/res/edit.png");
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   121
    QPixmap pmDelete(":/res/delete.png");
8151
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
   122
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   123
    { // game page
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   124
        QVBoxLayout * leftColumn, * rightColumn;
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   125
        setupTabPage(pageGame, &leftColumn, &rightColumn);
5078
3527f0e7bb21 Removing pages.cpp and splitting it up into various files.
Zorg <zorgiepoo@gmail.com>
parents:
diff changeset
   126
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   127
        { // group: Teams
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   128
            OptionGroupBox * groupTeams = new OptionGroupBox(":/res/teamicon.png", tr("Teams"), this);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   129
            groupTeams->setMinimumWidth(400);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   130
            rightColumn->addWidget(groupTeams);
6616
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6575
diff changeset
   131
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   132
            groupTeams->layout()->setColumnStretch(0, 1);
6616
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6575
diff changeset
   133
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   134
            CBTeamName = new QComboBox(groupTeams);
11679
d59b6f289e30 Increase size of many drop-down lists
Wuzzy <almikes@aol.com>
parents: 11046
diff changeset
   135
            CBTeamName->setMaxVisibleItems(50);
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   136
            groupTeams->layout()->addWidget(CBTeamName, 0, 0);
5078
3527f0e7bb21 Removing pages.cpp and splitting it up into various files.
Zorg <zorgiepoo@gmail.com>
parents:
diff changeset
   137
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   138
            BtnNewTeam = new QPushButton(groupTeams);
8382
67e257b98422 GCI2012: No More Hovering
dag10
parents: 8359
diff changeset
   139
            BtnNewTeam->setWhatsThis(tr("New team"));
7541
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   140
            BtnNewTeam->setIconSize(pmNew.size());
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   141
            BtnNewTeam->setIcon(pmNew);
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   142
            BtnNewTeam->setMaximumWidth(pmNew.width() + 6);
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   143
            connect(BtnNewTeam, SIGNAL(clicked()), this, SIGNAL(newTeamRequested()));
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   144
            groupTeams->layout()->addWidget(BtnNewTeam, 0, 1);
6616
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6575
diff changeset
   145
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   146
            BtnEditTeam = new QPushButton(groupTeams);
8382
67e257b98422 GCI2012: No More Hovering
dag10
parents: 8359
diff changeset
   147
            BtnEditTeam->setWhatsThis(tr("Edit team"));
7541
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   148
            BtnEditTeam->setIconSize(pmEdit.size());
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   149
            BtnEditTeam->setIcon(pmEdit);
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   150
            BtnEditTeam->setMaximumWidth(pmEdit.width() + 6);
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   151
            connect(BtnEditTeam, SIGNAL(clicked()), this, SLOT(requestEditSelectedTeam()));
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   152
            groupTeams->layout()->addWidget(BtnEditTeam, 0, 2);
6616
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6575
diff changeset
   153
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   154
            BtnDeleteTeam = new QPushButton(groupTeams);
8382
67e257b98422 GCI2012: No More Hovering
dag10
parents: 8359
diff changeset
   155
            BtnDeleteTeam->setWhatsThis(tr("Delete team"));
7541
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   156
            BtnDeleteTeam->setIconSize(pmDelete.size());
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   157
            BtnDeleteTeam->setIcon(pmDelete);
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   158
            BtnDeleteTeam->setMaximumWidth(pmDelete.width() + 6);
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   159
            connect(BtnDeleteTeam, SIGNAL(clicked()), this, SLOT(requestDeleteSelectedTeam()));
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   160
            groupTeams->layout()->addWidget(BtnDeleteTeam, 0, 3);
6616
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6575
diff changeset
   161
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   162
            LblNoEditTeam = new QLabel(groupTeams);
7541
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   163
            LblNoEditTeam->setText(tr("You can't edit teams from team selection. Go back to main menu to add, edit or delete teams."));
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   164
            LblNoEditTeam->setWordWrap(true);
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   165
            LblNoEditTeam->setVisible(false);
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   166
            groupTeams->layout()->addWidget(LblNoEditTeam, 1, 0, 1, 4);
7541
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   167
        }
5078
3527f0e7bb21 Removing pages.cpp and splitting it up into various files.
Zorg <zorgiepoo@gmail.com>
parents:
diff changeset
   168
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   169
        { // group: schemes
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   170
            OptionGroupBox * groupSchemes = new OptionGroupBox(":/res/weaponsicon.png", tr("Schemes"), this);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   171
            leftColumn->addWidget(groupSchemes);
6616
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6575
diff changeset
   172
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   173
            groupSchemes->layout()->setColumnStretch(0, 1);
6616
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6575
diff changeset
   174
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   175
            SchemesName = new QComboBox(groupSchemes);
11679
d59b6f289e30 Increase size of many drop-down lists
Wuzzy <almikes@aol.com>
parents: 11046
diff changeset
   176
            SchemesName->setMaxVisibleItems(50);
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   177
            groupSchemes->layout()->addWidget(SchemesName, 0, 0);
6616
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6575
diff changeset
   178
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   179
            SchemeNew = new QPushButton(groupSchemes);
7541
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   180
            SchemeNew->setWhatsThis(tr("New scheme"));
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   181
            SchemeNew->setIconSize(pmNew.size());
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   182
            SchemeNew->setIcon(pmNew);
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   183
            SchemeNew->setMaximumWidth(pmNew.width() + 6);
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   184
            groupSchemes->layout()->addWidget(SchemeNew, 0, 1);
6616
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6575
diff changeset
   185
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   186
            SchemeEdit = new QPushButton(groupSchemes);
7541
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   187
            SchemeEdit->setWhatsThis(tr("Edit scheme"));
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   188
            SchemeEdit->setIconSize(pmEdit.size());
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   189
            SchemeEdit->setIcon(pmEdit);
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   190
            SchemeEdit->setMaximumWidth(pmEdit.width() + 6);
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   191
            groupSchemes->layout()->addWidget(SchemeEdit, 0, 2);
6616
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6575
diff changeset
   192
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   193
            SchemeDelete = new QPushButton(groupSchemes);
7541
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   194
            SchemeDelete->setWhatsThis(tr("Delete scheme"));
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   195
            SchemeDelete->setIconSize(pmDelete.size());
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   196
            SchemeDelete->setIcon(pmDelete);
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   197
            SchemeDelete->setMaximumWidth(pmDelete.width() + 6);
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   198
            groupSchemes->layout()->addWidget(SchemeDelete, 0, 3);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   199
        }
6616
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6575
diff changeset
   200
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   201
        { // group: weapons
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   202
            OptionGroupBox * groupWeapons = new OptionGroupBox(":/res/weaponsicon.png", tr("Weapons"), this);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   203
            leftColumn->addWidget(groupWeapons);
8434
4821897a0f10 big indentation/whitespaces cleanup
sheepluva
parents: 8387
diff changeset
   204
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   205
            groupWeapons->layout()->setColumnStretch(0, 1);
6616
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6575
diff changeset
   206
7541
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   207
            WeaponsName = new QComboBox(groupWeapons);
11679
d59b6f289e30 Increase size of many drop-down lists
Wuzzy <almikes@aol.com>
parents: 11046
diff changeset
   208
            WeaponsName->setMaxVisibleItems(50);
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   209
            groupWeapons->layout()->addWidget(WeaponsName, 0, 0);
5078
3527f0e7bb21 Removing pages.cpp and splitting it up into various files.
Zorg <zorgiepoo@gmail.com>
parents:
diff changeset
   210
7541
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   211
            WeaponNew = new QPushButton(groupWeapons);
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   212
            WeaponNew->setWhatsThis(tr("New weapon set"));
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   213
            WeaponNew->setIconSize(pmNew.size());
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   214
            WeaponNew->setIcon(pmNew);
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   215
            WeaponNew->setMaximumWidth(pmNew.width() + 6);
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   216
            groupWeapons->layout()->addWidget(WeaponNew, 0, 1);
6616
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6575
diff changeset
   217
7541
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   218
            WeaponEdit = new QPushButton(groupWeapons);
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   219
            WeaponEdit->setWhatsThis(tr("Edit weapon set"));
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   220
            WeaponEdit->setIconSize(pmEdit.size());
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   221
            WeaponEdit->setIcon(pmEdit);
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   222
            WeaponEdit->setMaximumWidth(pmEdit.width() + 6);
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   223
            groupWeapons->layout()->addWidget(WeaponEdit, 0, 2);
5078
3527f0e7bb21 Removing pages.cpp and splitting it up into various files.
Zorg <zorgiepoo@gmail.com>
parents:
diff changeset
   224
7541
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   225
            WeaponDelete = new QPushButton(groupWeapons);
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   226
            WeaponDelete->setWhatsThis(tr("Delete weapon set"));
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   227
            WeaponDelete->setIconSize(pmDelete.size());
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   228
            WeaponDelete->setIcon(pmDelete);
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   229
            WeaponDelete->setMaximumWidth(pmDelete.width() + 6);
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   230
            groupWeapons->layout()->addWidget(WeaponDelete, 0, 3);
5078
3527f0e7bb21 Removing pages.cpp and splitting it up into various files.
Zorg <zorgiepoo@gmail.com>
parents:
diff changeset
   231
        }
3527f0e7bb21 Removing pages.cpp and splitting it up into various files.
Zorg <zorgiepoo@gmail.com>
parents:
diff changeset
   232
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   233
        leftColumn->addStretch(1);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   234
        rightColumn->addStretch(1);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   235
    }
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   236
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   237
    { // graphics page
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   238
        QVBoxLayout * leftColumn, * rightColumn;
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   239
        setupTabPage(pageGraphics, &leftColumn, &rightColumn);
7541
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   240
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   241
        { // group: game
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   242
            OptionGroupBox * groupGame = new OptionGroupBox(":/res/graphicsicon.png", tr("Game"), this);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   243
            leftColumn->addWidget(groupGame);
6911
1cda333286e0 added savepassword checkbox to options page, which now reloads values at every acces
koda
parents: 6700
diff changeset
   244
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   245
            groupGame->layout()->setColumnStretch(0, 0);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   246
            groupGame->layout()->setColumnStretch(1, 0);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   247
            groupGame->layout()->setColumnStretch(2, 1);
8229
251f38da9935 Cleaned up frontend options a bit and added a couple WhatsThis messages.
Mitchell Kember <mk12360@gmail.com>
parents: 8226
diff changeset
   248
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   249
            // Fullscreen
7541
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   250
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   251
            CBFullscreen = new QCheckBox(groupGame);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   252
            groupGame->layout()->addWidget(CBFullscreen, 0, 0, 1, 2);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   253
            CBFullscreen->setText(QLabel::tr("Fullscreen"));
7541
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   254
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   255
            // Fullscreen resolution
8434
4821897a0f10 big indentation/whitespaces cleanup
sheepluva
parents: 8387
diff changeset
   256
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   257
            lblFullScreenRes = new QLabel(groupGame);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   258
            lblFullScreenRes->setText(QLabel::tr("Fullscreen Resolution"));
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   259
            groupGame->layout()->addWidget(lblFullScreenRes, 1, 0);
6911
1cda333286e0 added savepassword checkbox to options page, which now reloads values at every acces
koda
parents: 6700
diff changeset
   260
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   261
            CBResolution = new QComboBox(groupGame);
11679
d59b6f289e30 Increase size of many drop-down lists
Wuzzy <almikes@aol.com>
parents: 11046
diff changeset
   262
            CBResolution->setMaxVisibleItems(50);
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   263
            CBResolution->setFixedWidth(200);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   264
            groupGame->layout()->addWidget(CBResolution, 1, 1, Qt::AlignLeft);
7541
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   265
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   266
            // Windowed resolution
8434
4821897a0f10 big indentation/whitespaces cleanup
sheepluva
parents: 8387
diff changeset
   267
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   268
            lblWinScreenRes = new QLabel(groupGame);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   269
            lblWinScreenRes->setText(QLabel::tr("Windowed Resolution"));
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   270
            groupGame->layout()->addWidget(lblWinScreenRes, 2, 0);
8434
4821897a0f10 big indentation/whitespaces cleanup
sheepluva
parents: 8387
diff changeset
   271
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   272
            winResContainer = new QWidget();
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   273
            QHBoxLayout * winResLayout = new QHBoxLayout(winResContainer);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   274
            winResLayout->setSpacing(0);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   275
            groupGame->layout()->addWidget(winResContainer, 2, 1);
8434
4821897a0f10 big indentation/whitespaces cleanup
sheepluva
parents: 8387
diff changeset
   276
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   277
            QLabel *winLabelX = new QLabel(groupGame);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   278
            winLabelX->setText("x"); // decorational x
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   279
            winLabelX->setFixedWidth(40);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   280
            winLabelX->setAlignment(Qt::AlignCenter);
8434
4821897a0f10 big indentation/whitespaces cleanup
sheepluva
parents: 8387
diff changeset
   281
8902
a94c074fd483 fix for issue 599: "Change graphics size settings to use qspinbox"? somebody ask unC0Rr if that's what he wanted :p
sheepluva
parents: 8434
diff changeset
   282
            // TODO: less random max. also:
a94c074fd483 fix for issue 599: "Change graphics size settings to use qspinbox"? somebody ask unC0Rr if that's what he wanted :p
sheepluva
parents: 8434
diff changeset
   283
            // make some min/max-consts, shared with engine?
a94c074fd483 fix for issue 599: "Change graphics size settings to use qspinbox"? somebody ask unC0Rr if that's what he wanted :p
sheepluva
parents: 8434
diff changeset
   284
            windowWidthEdit = new QSpinBox(groupGame);
a94c074fd483 fix for issue 599: "Change graphics size settings to use qspinbox"? somebody ask unC0Rr if that's what he wanted :p
sheepluva
parents: 8434
diff changeset
   285
            windowWidthEdit->setRange(640, 102400);
9249
7b8c82785145 Configuration for tag display default
nemo
parents: 9080
diff changeset
   286
            windowWidthEdit->setFixedSize(60, CBResolution->height());
8902
a94c074fd483 fix for issue 599: "Change graphics size settings to use qspinbox"? somebody ask unC0Rr if that's what he wanted :p
sheepluva
parents: 8434
diff changeset
   287
            windowHeightEdit = new QSpinBox(groupGame);
a94c074fd483 fix for issue 599: "Change graphics size settings to use qspinbox"? somebody ask unC0Rr if that's what he wanted :p
sheepluva
parents: 8434
diff changeset
   288
            windowHeightEdit->setRange(480, 102400);
9249
7b8c82785145 Configuration for tag display default
nemo
parents: 9080
diff changeset
   289
            windowHeightEdit->setFixedSize(60, CBResolution->height());
8434
4821897a0f10 big indentation/whitespaces cleanup
sheepluva
parents: 8387
diff changeset
   290
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   291
            winResLayout->addWidget(windowWidthEdit, 0);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   292
            winResLayout->addWidget(winLabelX, 0);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   293
            winResLayout->addWidget(windowHeightEdit, 0);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   294
            winResLayout->addStretch(1);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   295
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   296
            // Quality
7541
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   297
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   298
            QLabel * lblQuality = new QLabel(groupGame);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   299
            lblQuality->setText(QLabel::tr("Quality"));
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   300
            lblQuality->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   301
            groupGame->layout()->addWidget(lblQuality, 3, 0);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   302
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   303
            SLQuality = new QSlider(Qt::Horizontal, groupGame);
7541
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   304
            SLQuality->setTickPosition(QSlider::TicksBelow);
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   305
            SLQuality->setMaximum(5);
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   306
            SLQuality->setMinimum(0);
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   307
            SLQuality->setFixedWidth(150);
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   308
            groupGame->layout()->addWidget(SLQuality, 3, 1, Qt::AlignLeft);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   309
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   310
            // Stereo spacing
7541
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   311
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   312
            QLabel * lblStereo = new QLabel(groupGame);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   313
            lblStereo->setText(QLabel::tr("Stereo rendering"));
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   314
            groupGame->layout()->addWidget(lblStereo, 4, 0);
6911
1cda333286e0 added savepassword checkbox to options page, which now reloads values at every acces
koda
parents: 6700
diff changeset
   315
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   316
            CBStereoMode = new QComboBox(groupGame);
11679
d59b6f289e30 Increase size of many drop-down lists
Wuzzy <almikes@aol.com>
parents: 11046
diff changeset
   317
            CBStereoMode->setMaxVisibleItems(50);
7541
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   318
            CBStereoMode->addItem(QComboBox::tr("Disabled"));
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   319
            CBStereoMode->addItem(QComboBox::tr("Red/Cyan"));
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   320
            CBStereoMode->addItem(QComboBox::tr("Cyan/Red"));
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   321
            CBStereoMode->addItem(QComboBox::tr("Red/Blue"));
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   322
            CBStereoMode->addItem(QComboBox::tr("Blue/Red"));
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   323
            CBStereoMode->addItem(QComboBox::tr("Red/Green"));
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   324
            CBStereoMode->addItem(QComboBox::tr("Green/Red"));
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   325
            CBStereoMode->addItem(QComboBox::tr("Red/Cyan grayscale"));
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   326
            CBStereoMode->addItem(QComboBox::tr("Cyan/Red grayscale"));
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   327
            CBStereoMode->addItem(QComboBox::tr("Red/Blue grayscale"));
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   328
            CBStereoMode->addItem(QComboBox::tr("Blue/Red grayscale"));
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   329
            CBStereoMode->addItem(QComboBox::tr("Red/Green grayscale"));
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   330
            CBStereoMode->addItem(QComboBox::tr("Green/Red grayscale"));
8359
9a7024b2a4d3 Removed wiggle 3D mode, reorder the list of 3D modes.
martin_bede
parents: 8356
diff changeset
   331
            CBStereoMode->addItem(QComboBox::tr("Side-by-side"));
9a7024b2a4d3 Removed wiggle 3D mode, reorder the list of 3D modes.
martin_bede
parents: 8356
diff changeset
   332
            CBStereoMode->addItem(QComboBox::tr("Top-Bottom"));
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   333
            CBStereoMode->setFixedWidth(CBResolution->width());
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   334
            groupGame->layout()->addWidget(CBStereoMode, 4, 1);
7541
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   335
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   336
            // Divider
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   337
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   338
            groupGame->addDivider(); // row 5
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   339
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   340
            // FPS limit
7541
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   341
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   342
            QHBoxLayout * fpsLayout = new QHBoxLayout();
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   343
            groupGame->layout()->addLayout(fpsLayout, 6, 0, 1, 2);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   344
            QLabel * maxfps = new QLabel(groupGame);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   345
            maxfps->setText(QLabel::tr("FPS limit"));
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   346
            fpsLayout->addWidget(maxfps);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   347
            fpsLayout->addSpacing(30);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   348
            fpsedit = new FPSEdit(groupGame);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   349
            fpsLayout->addWidget(fpsedit);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   350
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   351
            // Show FPS
5252
ded882439548 file association for mac!
koda
parents: 5238
diff changeset
   352
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   353
            CBShowFPS = new QCheckBox(groupGame);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   354
            CBShowFPS->setText(QCheckBox::tr("Show FPS"));
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   355
            fpsLayout->addWidget(CBShowFPS);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   356
            fpsLayout->addStretch(1);
7541
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   357
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   358
            // Divider
7541
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   359
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   360
            groupGame->addDivider(); // row 7
7541
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   361
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   362
            // Alternative damage show
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   363
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   364
            CBAltDamage = new QCheckBox(groupGame);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   365
            CBAltDamage->setText(QCheckBox::tr("Alternative damage show"));
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   366
            groupGame->layout()->addWidget(CBAltDamage, 8, 0, 1, 2);
7541
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   367
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   368
            // Show ammo menu tooltips
7541
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   369
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   370
            WeaponTooltip = new QCheckBox(groupGame);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   371
            WeaponTooltip->setText(QCheckBox::tr("Show ammo menu tooltips"));
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   372
            groupGame->layout()->addWidget(WeaponTooltip, 9, 0, 1, 2);
9249
7b8c82785145 Configuration for tag display default
nemo
parents: 9080
diff changeset
   373
7b8c82785145 Configuration for tag display default
nemo
parents: 9080
diff changeset
   374
            groupGame->addDivider();
7b8c82785145 Configuration for tag display default
nemo
parents: 9080
diff changeset
   375
7b8c82785145 Configuration for tag display default
nemo
parents: 9080
diff changeset
   376
            lblTags = new QLabel(groupGame);
7b8c82785145 Configuration for tag display default
nemo
parents: 9080
diff changeset
   377
            lblTags->setText(QLabel::tr("Displayed tags above hogs and translucent tags"));
7b8c82785145 Configuration for tag display default
nemo
parents: 9080
diff changeset
   378
            groupGame->layout()->addWidget(lblTags, 11, 0, 1, 2);
7b8c82785145 Configuration for tag display default
nemo
parents: 9080
diff changeset
   379
7b8c82785145 Configuration for tag display default
nemo
parents: 9080
diff changeset
   380
            tagsContainer = new QWidget();
7b8c82785145 Configuration for tag display default
nemo
parents: 9080
diff changeset
   381
            QHBoxLayout * tagsLayout = new QHBoxLayout(tagsContainer);
7b8c82785145 Configuration for tag display default
nemo
parents: 9080
diff changeset
   382
            tagsLayout->setSpacing(0);
7b8c82785145 Configuration for tag display default
nemo
parents: 9080
diff changeset
   383
            groupGame->layout()->addWidget(tagsContainer, 12, 0, 1, 2);
7b8c82785145 Configuration for tag display default
nemo
parents: 9080
diff changeset
   384
7b8c82785145 Configuration for tag display default
nemo
parents: 9080
diff changeset
   385
            CBTeamTag = new QCheckBox(groupGame);
7b8c82785145 Configuration for tag display default
nemo
parents: 9080
diff changeset
   386
            CBTeamTag->setText(QCheckBox::tr("Team"));
7b8c82785145 Configuration for tag display default
nemo
parents: 9080
diff changeset
   387
            CBTeamTag->setWhatsThis(QCheckBox::tr("Enable team tags by default"));
7b8c82785145 Configuration for tag display default
nemo
parents: 9080
diff changeset
   388
7b8c82785145 Configuration for tag display default
nemo
parents: 9080
diff changeset
   389
            CBHogTag = new QCheckBox(groupGame);
7b8c82785145 Configuration for tag display default
nemo
parents: 9080
diff changeset
   390
            CBHogTag->setText(QCheckBox::tr("Hog"));
7b8c82785145 Configuration for tag display default
nemo
parents: 9080
diff changeset
   391
            CBHogTag->setWhatsThis(QCheckBox::tr("Enable hedgehog tags by default"));
7b8c82785145 Configuration for tag display default
nemo
parents: 9080
diff changeset
   392
7b8c82785145 Configuration for tag display default
nemo
parents: 9080
diff changeset
   393
            CBHealthTag = new QCheckBox(groupGame);
7b8c82785145 Configuration for tag display default
nemo
parents: 9080
diff changeset
   394
            CBHealthTag->setText(QCheckBox::tr("Health"));
7b8c82785145 Configuration for tag display default
nemo
parents: 9080
diff changeset
   395
            CBHealthTag->setWhatsThis(QCheckBox::tr("Enable health tags by default"));
7b8c82785145 Configuration for tag display default
nemo
parents: 9080
diff changeset
   396
7b8c82785145 Configuration for tag display default
nemo
parents: 9080
diff changeset
   397
            CBTagOpacity = new QCheckBox(groupGame);
7b8c82785145 Configuration for tag display default
nemo
parents: 9080
diff changeset
   398
            CBTagOpacity->setText(QCheckBox::tr("Translucent"));
7b8c82785145 Configuration for tag display default
nemo
parents: 9080
diff changeset
   399
            CBTagOpacity->setWhatsThis(QCheckBox::tr("Enable translucent tags by default"));
7b8c82785145 Configuration for tag display default
nemo
parents: 9080
diff changeset
   400
7b8c82785145 Configuration for tag display default
nemo
parents: 9080
diff changeset
   401
            tagsLayout->addWidget(CBTeamTag, 0);
7b8c82785145 Configuration for tag display default
nemo
parents: 9080
diff changeset
   402
            tagsLayout->addWidget(CBHogTag, 0);
7b8c82785145 Configuration for tag display default
nemo
parents: 9080
diff changeset
   403
            tagsLayout->addWidget(CBHealthTag, 0);
7b8c82785145 Configuration for tag display default
nemo
parents: 9080
diff changeset
   404
            tagsLayout->addWidget(CBTagOpacity, 0);
10017
de822cd3df3a fixwhitespace and dos2unix
koda
parents: 9998
diff changeset
   405
            tagsLayout->addStretch(1);
7541
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   406
        }
7678
8aabba680598 Polish settings page a bit
unc0rr
parents: 7630
diff changeset
   407
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   408
        { // group: frontend
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   409
            OptionGroupBox * groupFrontend = new OptionGroupBox(":/res/graphicsicon.png", tr("Frontend"), this);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   410
            rightColumn->addWidget(groupFrontend);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   411
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   412
            // Fullscreen
7678
8aabba680598 Polish settings page a bit
unc0rr
parents: 7630
diff changeset
   413
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   414
            CBFrontendFullscreen = new QCheckBox(groupFrontend);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   415
            CBFrontendFullscreen->setText(QCheckBox::tr("Fullscreen"));
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   416
            groupFrontend->layout()->addWidget(CBFrontendFullscreen, 0, 0);
5078
3527f0e7bb21 Removing pages.cpp and splitting it up into various files.
Zorg <zorgiepoo@gmail.com>
parents:
diff changeset
   417
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   418
            // Visual effects
5078
3527f0e7bb21 Removing pages.cpp and splitting it up into various files.
Zorg <zorgiepoo@gmail.com>
parents:
diff changeset
   419
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   420
            CBFrontendEffects = new QCheckBox(groupFrontend);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   421
            CBFrontendEffects->setText(QCheckBox::tr("Visual effects"));
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   422
            groupFrontend->layout()->addWidget(CBFrontendEffects, 1, 0);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   423
        }
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   424
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   425
        { // group: colors
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   426
            OptionGroupBox * groupColors = new OptionGroupBox(":/res/lightbulb_on.png", tr("Custom colors"), this);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   427
            rightColumn->addWidget(groupColors);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   428
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   429
            groupColors->layout()->setColumnStretch(0, 1);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   430
            groupColors->layout()->setColumnStretch(1, 1);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   431
            groupColors->layout()->setColumnStretch(2, 1);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   432
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   433
            // Color buttons
5078
3527f0e7bb21 Removing pages.cpp and splitting it up into various files.
Zorg <zorgiepoo@gmail.com>
parents:
diff changeset
   434
7630
13fa53bb3134 Move some options to the second page so first page doesn't look ugly on low resolution
unc0rr
parents: 7541
diff changeset
   435
            QSignalMapper * mapper = new QSignalMapper(this);
13fa53bb3134 Move some options to the second page so first page doesn't look ugly on low resolution
unc0rr
parents: 7541
diff changeset
   436
            QStandardItemModel * model = DataManager::instance().colorsModel();
5078
3527f0e7bb21 Removing pages.cpp and splitting it up into various files.
Zorg <zorgiepoo@gmail.com>
parents:
diff changeset
   437
7630
13fa53bb3134 Move some options to the second page so first page doesn't look ugly on low resolution
unc0rr
parents: 7541
diff changeset
   438
            connect(model, SIGNAL(dataChanged(QModelIndex,QModelIndex)), this, SLOT(onColorModelDataChanged(QModelIndex,QModelIndex)));
13fa53bb3134 Move some options to the second page so first page doesn't look ugly on low resolution
unc0rr
parents: 7541
diff changeset
   439
            for(int i = 0; i < model->rowCount(); ++i)
13fa53bb3134 Move some options to the second page so first page doesn't look ugly on low resolution
unc0rr
parents: 7541
diff changeset
   440
            {
13fa53bb3134 Move some options to the second page so first page doesn't look ugly on low resolution
unc0rr
parents: 7541
diff changeset
   441
                QPushButton * btn = new QPushButton(this);
13fa53bb3134 Move some options to the second page so first page doesn't look ugly on low resolution
unc0rr
parents: 7541
diff changeset
   442
                btn->setSizePolicy(QSizePolicy::Minimum, QSizePolicy::Minimum);
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   443
                groupColors->layout()->addWidget(btn, i / 3, i % 3);
7630
13fa53bb3134 Move some options to the second page so first page doesn't look ugly on low resolution
unc0rr
parents: 7541
diff changeset
   444
                btn->setStyleSheet(QString("background: %1").arg(model->item(i)->data().value<QColor>().name()));
13fa53bb3134 Move some options to the second page so first page doesn't look ugly on low resolution
unc0rr
parents: 7541
diff changeset
   445
                m_colorButtons.append(btn);
13fa53bb3134 Move some options to the second page so first page doesn't look ugly on low resolution
unc0rr
parents: 7541
diff changeset
   446
                connect(btn, SIGNAL(clicked()), mapper, SLOT(map()));
13fa53bb3134 Move some options to the second page so first page doesn't look ugly on low resolution
unc0rr
parents: 7541
diff changeset
   447
                mapper->setMapping(btn, i);
13fa53bb3134 Move some options to the second page so first page doesn't look ugly on low resolution
unc0rr
parents: 7541
diff changeset
   448
            }
13fa53bb3134 Move some options to the second page so first page doesn't look ugly on low resolution
unc0rr
parents: 7541
diff changeset
   449
13fa53bb3134 Move some options to the second page so first page doesn't look ugly on low resolution
unc0rr
parents: 7541
diff changeset
   450
            connect(mapper, SIGNAL(mapped(int)), this, SLOT(colorButtonClicked(int)));
7680
46a91cbed8db - Some improvements to tr() calls
unc0rr
parents: 7678
diff changeset
   451
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   452
            // Reset default colors
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   453
7680
46a91cbed8db - Some improvements to tr() calls
unc0rr
parents: 7678
diff changeset
   454
            QPushButton * btn = new QPushButton(this);
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   455
            groupColors->layout()->addWidget(btn, (model->rowCount() - 1) / 3 + 1, 0, 1, 3);
7680
46a91cbed8db - Some improvements to tr() calls
unc0rr
parents: 7678
diff changeset
   456
            btn->setText(tr("Reset to default colors"));
7681
26978d581070 Reset to default colors button
unc0rr
parents: 7680
diff changeset
   457
            connect(btn, SIGNAL(clicked()), &DataManager::instance(), SLOT(resetColors()));
7541
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   458
        }
7153
f0d055645ab2 minor tweaks for options page; should improve readability at small window size... a bit...
sheepluva
parents: 6952
diff changeset
   459
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   460
        leftColumn->addStretch(1);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   461
        rightColumn->addStretch(1);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   462
    }
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   463
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   464
    { // audio page
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   465
        QVBoxLayout * leftColumn, * rightColumn;
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   466
        setupTabPage(pageAudio, &leftColumn, &rightColumn);
7630
13fa53bb3134 Move some options to the second page so first page doesn't look ugly on low resolution
unc0rr
parents: 7541
diff changeset
   467
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   468
        { // group: game
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   469
            OptionGroupBox * groupGame = new OptionGroupBox(":/res/audio.png", tr("Game audio"), this);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   470
            leftColumn->addWidget(groupGame);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   471
            groupGame->layout()->setColumnStretch(1, 0);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   472
            groupGame->layout()->setColumnStretch(2, 1);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   473
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   474
            // Initial sound volume
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   475
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   476
            QLabel * vol = new QLabel(groupGame);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   477
            vol->setText(QLabel::tr("Initial sound volume"));
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   478
            groupGame->layout()->addWidget(vol, 0, 0);
7630
13fa53bb3134 Move some options to the second page so first page doesn't look ugly on low resolution
unc0rr
parents: 7541
diff changeset
   479
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   480
            SLVolume = new QSlider(Qt::Horizontal, groupGame);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   481
            SLVolume->setTickPosition(QSlider::TicksBelow);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   482
            SLVolume->setMaximum(100);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   483
            SLVolume->setMinimum(0);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   484
            SLVolume->setFixedWidth(150);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   485
            groupGame->layout()->addWidget(SLVolume, 0, 1, 1, 2);
7630
13fa53bb3134 Move some options to the second page so first page doesn't look ugly on low resolution
unc0rr
parents: 7541
diff changeset
   486
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   487
            lblVolumeLevel = new QLabel(groupGame);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   488
            lblVolumeLevel->setFixedWidth(40);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   489
            groupGame->layout()->addWidget(lblVolumeLevel, 0, 3);
7630
13fa53bb3134 Move some options to the second page so first page doesn't look ugly on low resolution
unc0rr
parents: 7541
diff changeset
   490
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   491
            // Sound
7630
13fa53bb3134 Move some options to the second page so first page doesn't look ugly on low resolution
unc0rr
parents: 7541
diff changeset
   492
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   493
            CBSound = new QCheckBox(groupGame);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   494
            CBSound->setText(QCheckBox::tr("Sound"));
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   495
            CBSound->setWhatsThis(QCheckBox::tr("In-game sound effects"));
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   496
            groupGame->layout()->addWidget(CBSound, 1, 1);
7630
13fa53bb3134 Move some options to the second page so first page doesn't look ugly on low resolution
unc0rr
parents: 7541
diff changeset
   497
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   498
            // Music
7630
13fa53bb3134 Move some options to the second page so first page doesn't look ugly on low resolution
unc0rr
parents: 7541
diff changeset
   499
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   500
            CBMusic = new QCheckBox(groupGame);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   501
            CBMusic->setText(QCheckBox::tr("Music"));
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   502
            CBMusic->setWhatsThis(QCheckBox::tr("In-game music"));
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   503
            groupGame->layout()->addWidget(CBMusic, 1, 2, 1, 2, Qt::AlignLeft);
7630
13fa53bb3134 Move some options to the second page so first page doesn't look ugly on low resolution
unc0rr
parents: 7541
diff changeset
   504
        }
13fa53bb3134 Move some options to the second page so first page doesn't look ugly on low resolution
unc0rr
parents: 7541
diff changeset
   505
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   506
        { // group: frontend
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   507
            OptionGroupBox * groupFrontend = new OptionGroupBox(":/res/audio.png", tr("Frontend audio"), this);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   508
            rightColumn->addWidget(groupFrontend);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   509
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   510
            CBFrontendSound = new QCheckBox(groupFrontend);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   511
            CBFrontendSound->setText(QCheckBox::tr("Sound"));
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   512
            CBFrontendSound->setWhatsThis(QCheckBox::tr("Frontend sound effects"));
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   513
            groupFrontend->layout()->addWidget(CBFrontendSound, 0, 0);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   514
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   515
            CBFrontendMusic = new QCheckBox(groupFrontend);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   516
            CBFrontendMusic->setText(QCheckBox::tr("Music"));
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   517
            CBFrontendMusic->setWhatsThis(QCheckBox::tr("Frontend music"));
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   518
            groupFrontend->layout()->addWidget(CBFrontendMusic, 0, 1);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   519
        }
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   520
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   521
        leftColumn->addStretch(1);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   522
        rightColumn->addStretch(1);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   523
    }
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   524
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   525
    { // network page
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   526
        QVBoxLayout * leftColumn, * rightColumn;
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   527
        setupTabPage(pageNetwork, &leftColumn, &rightColumn);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   528
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   529
        { // group: account
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   530
            OptionGroupBox * groupAccount = new OptionGroupBox(":/res/teamicon.png", tr("Account"), this);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   531
            leftColumn->addWidget(groupAccount);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   532
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   533
            // Label and field for net nick
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   534
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   535
            labelNN = new QLabel(groupAccount);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   536
            labelNN->setText(QLabel::tr("Nickname"));
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   537
            groupAccount->layout()->addWidget(labelNN, 0, 0);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   538
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   539
            editNetNick = new QLineEdit(groupAccount);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   540
            editNetNick->setMaxLength(20);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   541
            editNetNick->setText(QLineEdit::tr("anonymous"));
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   542
            groupAccount->layout()->addWidget(editNetNick, 0, 1);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   543
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   544
            // Checkbox and field for password
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   545
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   546
            CBSavePassword = new QCheckBox(groupAccount);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   547
            CBSavePassword->setText(QCheckBox::tr("Save password"));
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   548
            groupAccount->layout()->addWidget(CBSavePassword, 1, 0);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   549
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   550
            editNetPassword = new QLineEdit(groupAccount);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   551
            editNetPassword->setEchoMode(QLineEdit::Password);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   552
            groupAccount->layout()->addWidget(editNetPassword, 1, 1);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   553
        }
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   554
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   555
        { // group: proxy
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   556
            OptionGroupBox * groupProxy = new OptionGroupBox(":/res/net.png", tr("Proxy settings"), this);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   557
            rightColumn->addWidget(groupProxy);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   558
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   559
            // Labels
7700
fc44e4e33d1c Support for proxies (not tested)
unc0rr
parents: 7681
diff changeset
   560
fc44e4e33d1c Support for proxies (not tested)
unc0rr
parents: 7681
diff changeset
   561
            QStringList sl;
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   562
            sl << tr("Proxy host")
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   563
               << tr("Proxy port")
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   564
               << tr("Proxy login")
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   565
               << tr("Proxy password");
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   566
7700
fc44e4e33d1c Support for proxies (not tested)
unc0rr
parents: 7681
diff changeset
   567
            for(int i = 0; i < sl.size(); ++i)
fc44e4e33d1c Support for proxies (not tested)
unc0rr
parents: 7681
diff changeset
   568
            {
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   569
                QLabel * l = new QLabel(groupProxy);
7700
fc44e4e33d1c Support for proxies (not tested)
unc0rr
parents: 7681
diff changeset
   570
                l->setText(sl[i]);
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   571
                groupProxy->layout()->addWidget(l, i + 1, 0);
7700
fc44e4e33d1c Support for proxies (not tested)
unc0rr
parents: 7681
diff changeset
   572
            }
fc44e4e33d1c Support for proxies (not tested)
unc0rr
parents: 7681
diff changeset
   573
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   574
            // Proxy type
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   575
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   576
            cbProxyType = new QComboBox(groupProxy);
7700
fc44e4e33d1c Support for proxies (not tested)
unc0rr
parents: 7681
diff changeset
   577
            cbProxyType->addItems(QStringList()
fc44e4e33d1c Support for proxies (not tested)
unc0rr
parents: 7681
diff changeset
   578
                                  << tr("No proxy")
7702
c8906c3a2aeb Allow using system proxy settings
unc0rr
parents: 7701
diff changeset
   579
                                  << tr("System proxy settings")
7700
fc44e4e33d1c Support for proxies (not tested)
unc0rr
parents: 7681
diff changeset
   580
                                  << tr("Socks5 proxy")
fc44e4e33d1c Support for proxies (not tested)
unc0rr
parents: 7681
diff changeset
   581
                                  << tr("HTTP proxy"));
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   582
            groupProxy->layout()->addWidget(cbProxyType, 0, 0, 1, 2);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   583
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   584
            // Proxy
7700
fc44e4e33d1c Support for proxies (not tested)
unc0rr
parents: 7681
diff changeset
   585
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   586
            leProxy = new QLineEdit(groupProxy);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   587
            groupProxy->layout()->addWidget(leProxy, 1, 1);
7700
fc44e4e33d1c Support for proxies (not tested)
unc0rr
parents: 7681
diff changeset
   588
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   589
            // Proxy
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   590
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   591
            sbProxyPort = new QSpinBox(groupProxy);
7700
fc44e4e33d1c Support for proxies (not tested)
unc0rr
parents: 7681
diff changeset
   592
            sbProxyPort->setMaximum(65535);
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   593
            groupProxy->layout()->addWidget(sbProxyPort, 2, 1);
7700
fc44e4e33d1c Support for proxies (not tested)
unc0rr
parents: 7681
diff changeset
   594
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   595
            leProxyLogin = new QLineEdit(groupProxy);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   596
            groupProxy->layout()->addWidget(leProxyLogin, 3, 1);
7700
fc44e4e33d1c Support for proxies (not tested)
unc0rr
parents: 7681
diff changeset
   597
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   598
            leProxyPassword = new QLineEdit(groupProxy);
7700
fc44e4e33d1c Support for proxies (not tested)
unc0rr
parents: 7681
diff changeset
   599
            leProxyPassword->setEchoMode(QLineEdit::Password);
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   600
            groupProxy->layout()->addWidget(leProxyPassword, 4, 1);
7700
fc44e4e33d1c Support for proxies (not tested)
unc0rr
parents: 7681
diff changeset
   601
fc44e4e33d1c Support for proxies (not tested)
unc0rr
parents: 7681
diff changeset
   602
fc44e4e33d1c Support for proxies (not tested)
unc0rr
parents: 7681
diff changeset
   603
            connect(cbProxyType, SIGNAL(currentIndexChanged(int)), this, SLOT(onProxyTypeChanged()));
7701
2b9017ffc72f - Small fix
unc0rr
parents: 7700
diff changeset
   604
            onProxyTypeChanged();
7700
fc44e4e33d1c Support for proxies (not tested)
unc0rr
parents: 7681
diff changeset
   605
        }
fc44e4e33d1c Support for proxies (not tested)
unc0rr
parents: 7681
diff changeset
   606
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   607
        leftColumn->addStretch(1);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   608
        rightColumn->addStretch(1);
6616
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6575
diff changeset
   609
    }
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   610
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   611
    { // advanced page
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   612
        QVBoxLayout * leftColumn, * rightColumn;
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   613
        setupTabPage(pageAdvanced, &leftColumn, &rightColumn);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   614
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   615
        { // group: miscellaneous
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   616
            OptionGroupBox * groupMisc = new OptionGroupBox(":/res/Settings.png", tr("Miscellaneous"), this);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   617
            leftColumn->addWidget(groupMisc);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   618
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   619
            // Language
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   620
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   621
            QLabel *labelLanguage = new QLabel(groupMisc);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   622
            labelLanguage->setText(QLabel::tr("Locale"));
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   623
            groupMisc->layout()->addWidget(labelLanguage, 0, 0);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   624
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   625
            CBLanguage = new QComboBox(groupMisc);
11679
d59b6f289e30 Increase size of many drop-down lists
Wuzzy <almikes@aol.com>
parents: 11046
diff changeset
   626
            CBLanguage->setMaxVisibleItems(50);
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   627
            groupMisc->layout()->addWidget(CBLanguage, 0, 1);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   628
            QStringList locs = DataManager::instance().entryList("Locale", QDir::Files, QStringList("hedgewars_*.qm"));
9048
c58a9829e1cc Store suffix of .qm files instead of locale name
unc0rr
parents: 8924
diff changeset
   629
            CBLanguage->addItem(QComboBox::tr("(System default)"), QString());
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   630
            for(int i = 0; i < locs.count(); i++)
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   631
            {
9048
c58a9829e1cc Store suffix of .qm files instead of locale name
unc0rr
parents: 8924
diff changeset
   632
                QString lname = locs[i].replace(QRegExp("hedgewars_(.*)\\.qm"), "\\1");
c58a9829e1cc Store suffix of .qm files instead of locale name
unc0rr
parents: 8924
diff changeset
   633
                QLocale loc(lname);
c58a9829e1cc Store suffix of .qm files instead of locale name
unc0rr
parents: 8924
diff changeset
   634
                CBLanguage->addItem(QLocale::languageToString(loc.language()) + " (" + QLocale::countryToString(loc.country()) + ")", lname);
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   635
            }
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   636
8880
71ed64b18540 reintroduce the notice for restarting frontend after changing language
koda
parents: 8434
diff changeset
   637
            QLabel *restartNoticeLabel = new QLabel(groupMisc);
71ed64b18540 reintroduce the notice for restarting frontend after changing language
koda
parents: 8434
diff changeset
   638
            restartNoticeLabel->setText(QLabel::tr("This setting will be effective at next restart."));
71ed64b18540 reintroduce the notice for restarting frontend after changing language
koda
parents: 8434
diff changeset
   639
            groupMisc->layout()->addWidget(restartNoticeLabel, 1, 1);
71ed64b18540 reintroduce the notice for restarting frontend after changing language
koda
parents: 8434
diff changeset
   640
71ed64b18540 reintroduce the notice for restarting frontend after changing language
koda
parents: 8434
diff changeset
   641
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   642
            // Divider
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   643
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   644
            groupMisc->addDivider(); // row 1
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   645
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   646
            // Append date and time to record file name
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   647
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   648
            CBNameWithDate = new QCheckBox(groupMisc);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   649
            CBNameWithDate->setText(QCheckBox::tr("Append date and time to record file name"));
8880
71ed64b18540 reintroduce the notice for restarting frontend after changing language
koda
parents: 8434
diff changeset
   650
            groupMisc->layout()->addWidget(CBNameWithDate, 3, 0, 1, 2);
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   651
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   652
            // Associate file extensions
8151
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
   653
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   654
            BtnAssociateFiles = new QPushButton(groupMisc);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   655
            BtnAssociateFiles->setText(QPushButton::tr("Associate file extensions"));
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   656
            BtnAssociateFiles->setVisible(!custom_data && !custom_config);
8880
71ed64b18540 reintroduce the notice for restarting frontend after changing language
koda
parents: 8434
diff changeset
   657
            groupMisc->layout()->addWidget(BtnAssociateFiles, 4, 0, 1, 2);
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   658
        }
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   659
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   660
#ifdef __APPLE__
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   661
#ifdef SPARKLE_ENABLED
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   662
        { // group: updates
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   663
            OptionGroupBox * groupUpdates = new OptionGroupBox(":/res/net.png", tr("Updates"), this);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   664
            rightColumn->addWidget(groupUpdates);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   665
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   666
            // Check for updates at startup
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   667
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   668
            CBAutoUpdate = new QCheckBox(groupUpdates);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   669
            CBAutoUpdate->setText(QCheckBox::tr("Check for updates at startup"));
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   670
            groupUpdates->layout()->addWidget(CBAutoUpdate, 0, 0);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   671
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   672
            // Check for updates now
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   673
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   674
            btnUpdateNow = new QPushButton(groupUpdates);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   675
            connect(btnUpdateNow, SIGNAL(clicked()), this, SLOT(checkForUpdates()));
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   676
            btnUpdateNow->setWhatsThis(tr("Check for updates"));
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   677
            btnUpdateNow->setText("Check now");
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   678
            btnUpdateNow->setFixedSize(130, 30);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   679
            groupUpdates->layout()->addWidget(btnUpdateNow, 0, 1);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   680
        }
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   681
#endif
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   682
#endif
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   683
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   684
        leftColumn->addStretch(1);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   685
        rightColumn->addStretch(1);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   686
    }
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   687
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   688
#ifdef VIDEOREC
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   689
    { // video recording page
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   690
        OptionGroupBox * groupVideoRec = new OptionGroupBox(":/res/camera.png", tr("Video recording options"), this);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   691
        groupVideoRec->setMinimumWidth(500);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   692
        groupVideoRec->setMaximumWidth(650);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   693
        QHBoxLayout * layoutVideoRec = new QHBoxLayout(pageVideoRec);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   694
        layoutVideoRec->addWidget(groupVideoRec, 1, Qt::AlignTop | Qt::AlignHCenter);
8151
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
   695
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
   696
        // label for format
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   697
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   698
        QLabel *labelFormat = new QLabel(groupVideoRec);
8151
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
   699
        labelFormat->setText(QLabel::tr("Format"));
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   700
        groupVideoRec->layout()->addWidget(labelFormat, 0, 0);
8151
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
   701
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
   702
        // list of supported formats
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   703
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   704
        comboAVFormats = new QComboBox(groupVideoRec);
11679
d59b6f289e30 Increase size of many drop-down lists
Wuzzy <almikes@aol.com>
parents: 11046
diff changeset
   705
        comboAVFormats->setMaxVisibleItems(50);
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   706
        groupVideoRec->layout()->addWidget(comboAVFormats, 0, 1, 1, 4);
8151
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
   707
        LibavInteraction::instance().fillFormats(comboAVFormats);
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
   708
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
   709
        // separator
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   710
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   711
        QFrame * hr = new QFrame(groupVideoRec);
8151
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
   712
        hr->setFrameStyle(QFrame::HLine);
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
   713
        hr->setLineWidth(3);
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
   714
        hr->setFixedHeight(10);
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   715
        groupVideoRec->layout()->addWidget(hr, 1, 0, 1, 5);
8151
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
   716
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
   717
        // label for audio codec
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   718
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   719
        QLabel *labelACodec = new QLabel(groupVideoRec);
8151
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
   720
        labelACodec->setText(QLabel::tr("Audio codec"));
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   721
        groupVideoRec->layout()->addWidget(labelACodec, 2, 0);
8151
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
   722
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
   723
        // list of supported audio codecs
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   724
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   725
        comboAudioCodecs = new QComboBox(groupVideoRec);
11679
d59b6f289e30 Increase size of many drop-down lists
Wuzzy <almikes@aol.com>
parents: 11046
diff changeset
   726
        comboAudioCodecs->setMaxVisibleItems(50);
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   727
        groupVideoRec->layout()->addWidget(comboAudioCodecs, 2, 1, 1, 3);
8151
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
   728
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
   729
        // checkbox 'record audio'
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   730
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   731
        checkRecordAudio = new QCheckBox(groupVideoRec);
8151
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
   732
        checkRecordAudio->setText(QCheckBox::tr("Record audio"));
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   733
        groupVideoRec->layout()->addWidget(checkRecordAudio, 2, 4);
8151
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
   734
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
   735
        // separator
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   736
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   737
        hr = new QFrame(groupVideoRec);
8151
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
   738
        hr->setFrameStyle(QFrame::HLine);
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
   739
        hr->setLineWidth(3);
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
   740
        hr->setFixedHeight(10);
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   741
        groupVideoRec->layout()->addWidget(hr, 3, 0, 1, 5);
8151
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
   742
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
   743
        // label for video codec
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   744
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   745
        QLabel *labelVCodec = new QLabel(groupVideoRec);
8151
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
   746
        labelVCodec->setText(QLabel::tr("Video codec"));
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   747
        groupVideoRec->layout()->addWidget(labelVCodec, 4, 0);
8151
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
   748
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
   749
        // list of supported video codecs
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   750
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   751
        comboVideoCodecs = new QComboBox(groupVideoRec);
11679
d59b6f289e30 Increase size of many drop-down lists
Wuzzy <almikes@aol.com>
parents: 11046
diff changeset
   752
        comboVideoCodecs->setMaxVisibleItems(50);
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   753
        groupVideoRec->layout()->addWidget(comboVideoCodecs, 4, 1, 1, 4);
8151
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
   754
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
   755
        // label for resolution
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   756
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   757
        QLabel *labelRes = new QLabel(groupVideoRec);
8151
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
   758
        labelRes->setText(QLabel::tr("Resolution"));
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   759
        groupVideoRec->layout()->addWidget(labelRes, 5, 0);
8151
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
   760
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
   761
        // width
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   762
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   763
        widthEdit = new QLineEdit(groupVideoRec);
8151
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
   764
        widthEdit->setValidator(new QIntValidator(this));
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   765
        groupVideoRec->layout()->addWidget(widthEdit, 5, 1);
8151
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
   766
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
   767
        // x
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   768
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   769
        QLabel *labelX = new QLabel(groupVideoRec);
8151
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
   770
        labelX->setText("X");
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   771
        groupVideoRec->layout()->addWidget(labelX, 5, 2);
8151
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
   772
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
   773
        // height
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   774
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   775
        heightEdit = new QLineEdit(groupVideoRec);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   776
        heightEdit->setValidator(new QIntValidator(groupVideoRec));
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   777
        groupVideoRec->layout()->addWidget(heightEdit, 5, 3);
8151
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
   778
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
   779
        // checkbox 'use game resolution'
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   780
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   781
        checkUseGameRes = new QCheckBox(groupVideoRec);
8151
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
   782
        checkUseGameRes->setText(QCheckBox::tr("Use game resolution"));
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   783
        groupVideoRec->layout()->addWidget(checkUseGameRes, 5, 4);
8151
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
   784
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
   785
        // label for framerate
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   786
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   787
        QLabel *labelFramerate = new QLabel(groupVideoRec);
8151
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
   788
        labelFramerate->setText(QLabel::tr("Framerate"));
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   789
        groupVideoRec->layout()->addWidget(labelFramerate, 6, 0);
8151
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
   790
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   791
        framerateBox = new QComboBox(groupVideoRec);
8192
81da6576b0c3 Make video recording options have fixed size and merge with spinbox->combobox change.
Mitchell Kember <mk12360@gmail.com>
parents: 8151
diff changeset
   792
        framerateBox->addItem("24 fps", 24);
81da6576b0c3 Make video recording options have fixed size and merge with spinbox->combobox change.
Mitchell Kember <mk12360@gmail.com>
parents: 8151
diff changeset
   793
        framerateBox->addItem("25 fps", 25);
81da6576b0c3 Make video recording options have fixed size and merge with spinbox->combobox change.
Mitchell Kember <mk12360@gmail.com>
parents: 8151
diff changeset
   794
        framerateBox->addItem("30 fps", 30);
81da6576b0c3 Make video recording options have fixed size and merge with spinbox->combobox change.
Mitchell Kember <mk12360@gmail.com>
parents: 8151
diff changeset
   795
        framerateBox->addItem("50 fps", 50);
81da6576b0c3 Make video recording options have fixed size and merge with spinbox->combobox change.
Mitchell Kember <mk12360@gmail.com>
parents: 8151
diff changeset
   796
        framerateBox->addItem("60 fps", 60);
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   797
        groupVideoRec->layout()->addWidget(framerateBox, 6, 1);
8151
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
   798
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
   799
        // label for Bitrate
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   800
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   801
        QLabel *labelBitrate = new QLabel(groupVideoRec);
8151
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
   802
        labelBitrate->setText(QLabel::tr("Bitrate (Kbps)"));
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   803
        groupVideoRec->layout()->addWidget(labelBitrate, 6, 2);
8151
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
   804
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
   805
        // bitrate
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   806
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   807
        bitrateBox = new QSpinBox(groupVideoRec);
8151
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
   808
        bitrateBox->setRange(100, 5000);
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
   809
        bitrateBox->setSingleStep(100);
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   810
        groupVideoRec->layout()->addWidget(bitrateBox, 6, 3);
8151
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
   811
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
   812
        // button 'set default options'
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   813
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   814
        btnDefaults = new QPushButton(groupVideoRec);
8151
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
   815
        btnDefaults->setText(QPushButton::tr("Set default options"));
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
   816
        btnDefaults->setWhatsThis(QPushButton::tr("Restore default coding parameters"));
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   817
        groupVideoRec->layout()->addWidget(btnDefaults, 7, 0, 1, 5);
8151
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
   818
    }
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
   819
#endif
5078
3527f0e7bb21 Removing pages.cpp and splitting it up into various files.
Zorg <zorgiepoo@gmail.com>
parents:
diff changeset
   820
5878
404ca990793a I.Fight.For.The.Users
koda
parents: 5877
diff changeset
   821
    previousQuality = this->SLQuality->value();
404ca990793a I.Fight.For.The.Users
koda
parents: 5877
diff changeset
   822
    previousResolutionIndex = this->CBResolution->currentIndex();
404ca990793a I.Fight.For.The.Users
koda
parents: 5877
diff changeset
   823
    previousFullscreenValue = this->CBFullscreen->isChecked();
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   824
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   825
    setFullscreen(CBFullscreen->isChecked());
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   826
    setVolume(SLVolume->value());
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   827
8343
aa4ea3cade3c Added Support for variable windowed resolution.
vitiv <nikita.utiu@gmail.com>
parents: 8284
diff changeset
   828
    // mutually exclude window and fullscreen resolution
6042
8b5345758f62 some more cleanups/refactoring/blahblah, some button positions may are a bit off atm. also I added a new picture for one of the buttons
sheepluva
parents: 6024
diff changeset
   829
    return pageLayout;
8b5345758f62 some more cleanups/refactoring/blahblah, some button positions may are a bit off atm. also I added a new picture for one of the buttons
sheepluva
parents: 6024
diff changeset
   830
}
8b5345758f62 some more cleanups/refactoring/blahblah, some button positions may are a bit off atm. also I added a new picture for one of the buttons
sheepluva
parents: 6024
diff changeset
   831
8b5345758f62 some more cleanups/refactoring/blahblah, some button positions may are a bit off atm. also I added a new picture for one of the buttons
sheepluva
parents: 6024
diff changeset
   832
QLayout * PageOptions::footerLayoutDefinition()
8b5345758f62 some more cleanups/refactoring/blahblah, some button positions may are a bit off atm. also I added a new picture for one of the buttons
sheepluva
parents: 6024
diff changeset
   833
{
6525
6c97379c584b [GCI] backz task: unify the back button functionality, avoid using the save button
m4tx
parents: 6218
diff changeset
   834
    return NULL;
6042
8b5345758f62 some more cleanups/refactoring/blahblah, some button positions may are a bit off atm. also I added a new picture for one of the buttons
sheepluva
parents: 6024
diff changeset
   835
}
8b5345758f62 some more cleanups/refactoring/blahblah, some button positions may are a bit off atm. also I added a new picture for one of the buttons
sheepluva
parents: 6024
diff changeset
   836
8b5345758f62 some more cleanups/refactoring/blahblah, some button positions may are a bit off atm. also I added a new picture for one of the buttons
sheepluva
parents: 6024
diff changeset
   837
void PageOptions::connectSignals()
8b5345758f62 some more cleanups/refactoring/blahblah, some button positions may are a bit off atm. also I added a new picture for one of the buttons
sheepluva
parents: 6024
diff changeset
   838
{
8151
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
   839
#ifdef VIDEOREC
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
   840
    connect(checkUseGameRes, SIGNAL(stateChanged(int)), this, SLOT(changeUseGameRes(int)));
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
   841
    connect(checkRecordAudio, SIGNAL(stateChanged(int)), this, SLOT(changeRecordAudio(int)));
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
   842
    connect(comboAVFormats, SIGNAL(currentIndexChanged(int)), this, SLOT(changeAVFormat(int)));
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
   843
    connect(btnDefaults, SIGNAL(clicked()), this, SLOT(setDefaultOptions()));
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
   844
#endif
8386
2aaa2995a32e - Fix another ton of bugs and misbehavior
unc0rr
parents: 8384
diff changeset
   845
    //connect(this, SIGNAL(pageEnter()), this, SLOT(setTeamOptionsEnabled()));
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   846
    connect(SLVolume, SIGNAL(valueChanged(int)), this, SLOT(setVolume(int)));
6911
1cda333286e0 added savepassword checkbox to options page, which now reloads values at every acces
koda
parents: 6700
diff changeset
   847
    connect(SLQuality, SIGNAL(valueChanged(int)), this, SLOT(setQuality(int)));
6042
8b5345758f62 some more cleanups/refactoring/blahblah, some button positions may are a bit off atm. also I added a new picture for one of the buttons
sheepluva
parents: 6024
diff changeset
   848
    connect(CBResolution, SIGNAL(currentIndexChanged(int)), this, SLOT(setResolution(int)));
8b5345758f62 some more cleanups/refactoring/blahblah, some button positions may are a bit off atm. also I added a new picture for one of the buttons
sheepluva
parents: 6024
diff changeset
   849
    connect(CBFullscreen, SIGNAL(stateChanged(int)), this, SLOT(setFullscreen(int)));
6911
1cda333286e0 added savepassword checkbox to options page, which now reloads values at every acces
koda
parents: 6700
diff changeset
   850
    connect(CBStereoMode, SIGNAL(currentIndexChanged(int)), this, SLOT(forceFullscreen(int)));
1cda333286e0 added savepassword checkbox to options page, which now reloads values at every acces
koda
parents: 6700
diff changeset
   851
    connect(editNetNick, SIGNAL(editingFinished()), this, SLOT(trimNetNick()));
1cda333286e0 added savepassword checkbox to options page, which now reloads values at every acces
koda
parents: 6700
diff changeset
   852
    connect(CBSavePassword, SIGNAL(stateChanged(int)), this, SLOT(savePwdChanged(int)));
6042
8b5345758f62 some more cleanups/refactoring/blahblah, some button positions may are a bit off atm. also I added a new picture for one of the buttons
sheepluva
parents: 6024
diff changeset
   853
}
8b5345758f62 some more cleanups/refactoring/blahblah, some button positions may are a bit off atm. also I added a new picture for one of the buttons
sheepluva
parents: 6024
diff changeset
   854
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   855
void PageOptions::setVolume(int volume)
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   856
{
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   857
    lblVolumeLevel->setText(QString("%1\%").arg(volume));
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   858
}
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   859
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   860
void PageOptions::setupTabPage(QWidget * tabpage, QVBoxLayout ** leftColumn, QVBoxLayout ** rightColumn)
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   861
{
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   862
    QHBoxLayout * twoColumns = new QHBoxLayout(tabpage);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   863
    twoColumns->setSpacing(0);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   864
    *leftColumn = new QVBoxLayout();
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   865
    *rightColumn = new QVBoxLayout();
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   866
    (*leftColumn)->setSpacing(OPTION_BOX_SPACING);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   867
    (*rightColumn)->setSpacing(OPTION_BOX_SPACING);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   868
    twoColumns->addStretch(4);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   869
    twoColumns->addLayout(*leftColumn, 0);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   870
    twoColumns->addStretch(1);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   871
    twoColumns->addLayout(*rightColumn, 0);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   872
    twoColumns->addStretch(4);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   873
}
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   874
8151
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
   875
PageOptions::PageOptions(QWidget* parent) : AbstractPage(parent), config(0)
6042
8b5345758f62 some more cleanups/refactoring/blahblah, some button positions may are a bit off atm. also I added a new picture for one of the buttons
sheepluva
parents: 6024
diff changeset
   876
{
8b5345758f62 some more cleanups/refactoring/blahblah, some button positions may are a bit off atm. also I added a new picture for one of the buttons
sheepluva
parents: 6024
diff changeset
   877
    initPage();
5078
3527f0e7bb21 Removing pages.cpp and splitting it up into various files.
Zorg <zorgiepoo@gmail.com>
parents:
diff changeset
   878
}
3527f0e7bb21 Removing pages.cpp and splitting it up into various files.
Zorg <zorgiepoo@gmail.com>
parents:
diff changeset
   879
3527f0e7bb21 Removing pages.cpp and splitting it up into various files.
Zorg <zorgiepoo@gmail.com>
parents:
diff changeset
   880
void PageOptions::forceFullscreen(int index)
3527f0e7bb21 Removing pages.cpp and splitting it up into various files.
Zorg <zorgiepoo@gmail.com>
parents:
diff changeset
   881
{
5878
404ca990793a I.Fight.For.The.Users
koda
parents: 5877
diff changeset
   882
    bool forced = (index == 7 || index == 8 || index == 9);
8434
4821897a0f10 big indentation/whitespaces cleanup
sheepluva
parents: 8387
diff changeset
   883
6616
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6575
diff changeset
   884
    if (index != 0)
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6575
diff changeset
   885
    {
5078
3527f0e7bb21 Removing pages.cpp and splitting it up into various files.
Zorg <zorgiepoo@gmail.com>
parents:
diff changeset
   886
        this->SLQuality->setValue(this->SLQuality->maximum());
3527f0e7bb21 Removing pages.cpp and splitting it up into various files.
Zorg <zorgiepoo@gmail.com>
parents:
diff changeset
   887
        this->SLQuality->setEnabled(false);
5878
404ca990793a I.Fight.For.The.Users
koda
parents: 5877
diff changeset
   888
        this->CBFullscreen->setChecked(forced ? true : previousFullscreenValue);
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   889
        setFullscreen(forced ? true : previousFullscreenValue);
5878
404ca990793a I.Fight.For.The.Users
koda
parents: 5877
diff changeset
   890
        this->CBResolution->setCurrentIndex(forced ? 0 : previousResolutionIndex);
6616
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6575
diff changeset
   891
    }
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6575
diff changeset
   892
    else
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6575
diff changeset
   893
    {
5878
404ca990793a I.Fight.For.The.Users
koda
parents: 5877
diff changeset
   894
        this->SLQuality->setEnabled(true);
5078
3527f0e7bb21 Removing pages.cpp and splitting it up into various files.
Zorg <zorgiepoo@gmail.com>
parents:
diff changeset
   895
        this->SLQuality->setValue(previousQuality);
5878
404ca990793a I.Fight.For.The.Users
koda
parents: 5877
diff changeset
   896
        this->CBFullscreen->setChecked(previousFullscreenValue);
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   897
        setFullscreen(previousFullscreenValue);
5877
514b639c40da remove the forced fullscreen resolution since everyone is hating it; kept it around only for stereo rendering (where it's mandatory)
koda
parents: 5745
diff changeset
   898
        this->CBResolution->setCurrentIndex(previousResolutionIndex);
5078
3527f0e7bb21 Removing pages.cpp and splitting it up into various files.
Zorg <zorgiepoo@gmail.com>
parents:
diff changeset
   899
    }
3527f0e7bb21 Removing pages.cpp and splitting it up into various files.
Zorg <zorgiepoo@gmail.com>
parents:
diff changeset
   900
}
3527f0e7bb21 Removing pages.cpp and splitting it up into various files.
Zorg <zorgiepoo@gmail.com>
parents:
diff changeset
   901
5878
404ca990793a I.Fight.For.The.Users
koda
parents: 5877
diff changeset
   902
void PageOptions::setQuality(int value)
404ca990793a I.Fight.For.The.Users
koda
parents: 5877
diff changeset
   903
{
6218
999215ca87d7 actually the those if(...); weren't supposed to be if statements in the first place, since the result is always true at that point of code anyway.
sheepluva
parents: 6217
diff changeset
   904
    Q_UNUSED(value);
6217
ef53ba841791 - Remove some old unused code
unc0rr
parents: 6060
diff changeset
   905
5878
404ca990793a I.Fight.For.The.Users
koda
parents: 5877
diff changeset
   906
    int index = this->CBStereoMode->currentIndex();
404ca990793a I.Fight.For.The.Users
koda
parents: 5877
diff changeset
   907
    if (index == 0)
404ca990793a I.Fight.For.The.Users
koda
parents: 5877
diff changeset
   908
        previousQuality = this->SLQuality->value();
404ca990793a I.Fight.For.The.Users
koda
parents: 5877
diff changeset
   909
}
404ca990793a I.Fight.For.The.Users
koda
parents: 5877
diff changeset
   910
404ca990793a I.Fight.For.The.Users
koda
parents: 5877
diff changeset
   911
void PageOptions::setFullscreen(int state)
404ca990793a I.Fight.For.The.Users
koda
parents: 5877
diff changeset
   912
{
6218
999215ca87d7 actually the those if(...); weren't supposed to be if statements in the first place, since the result is always true at that point of code anyway.
sheepluva
parents: 6217
diff changeset
   913
    Q_UNUSED(state);
8352
ab7f22530ae0 Changed resolution labels on options page.
vitiv <nikita.utiu@gmail.com>
parents: 8350
diff changeset
   914
8387
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   915
    lblFullScreenRes->setVisible(state);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   916
    CBResolution->setVisible(state);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   917
    lblWinScreenRes->setVisible(!state);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   918
    winResContainer->setVisible(!state);
f9d1191476ce Organized options into more relavant tabs.
dag10 <gottlieb.drew@gmail.com>
parents: 8386
diff changeset
   919
5878
404ca990793a I.Fight.For.The.Users
koda
parents: 5877
diff changeset
   920
    int index = this->CBStereoMode->currentIndex();
404ca990793a I.Fight.For.The.Users
koda
parents: 5877
diff changeset
   921
    if (index != 7 && index != 8 && index != 9)
404ca990793a I.Fight.For.The.Users
koda
parents: 5877
diff changeset
   922
        previousFullscreenValue = this->CBFullscreen->isChecked();
404ca990793a I.Fight.For.The.Users
koda
parents: 5877
diff changeset
   923
}
404ca990793a I.Fight.For.The.Users
koda
parents: 5877
diff changeset
   924
404ca990793a I.Fight.For.The.Users
koda
parents: 5877
diff changeset
   925
void PageOptions::setResolution(int state)
404ca990793a I.Fight.For.The.Users
koda
parents: 5877
diff changeset
   926
{
6218
999215ca87d7 actually the those if(...); weren't supposed to be if statements in the first place, since the result is always true at that point of code anyway.
sheepluva
parents: 6217
diff changeset
   927
    Q_UNUSED(state);
6217
ef53ba841791 - Remove some old unused code
unc0rr
parents: 6060
diff changeset
   928
5878
404ca990793a I.Fight.For.The.Users
koda
parents: 5877
diff changeset
   929
    int index = this->CBStereoMode->currentIndex();
404ca990793a I.Fight.For.The.Users
koda
parents: 5877
diff changeset
   930
    if (index != 7 && index != 8 && index != 9)
404ca990793a I.Fight.For.The.Users
koda
parents: 5877
diff changeset
   931
        previousResolutionIndex = this->CBResolution->currentIndex();
404ca990793a I.Fight.For.The.Users
koda
parents: 5877
diff changeset
   932
}
404ca990793a I.Fight.For.The.Users
koda
parents: 5877
diff changeset
   933
5078
3527f0e7bb21 Removing pages.cpp and splitting it up into various files.
Zorg <zorgiepoo@gmail.com>
parents:
diff changeset
   934
void PageOptions::trimNetNick()
3527f0e7bb21 Removing pages.cpp and splitting it up into various files.
Zorg <zorgiepoo@gmail.com>
parents:
diff changeset
   935
{
3527f0e7bb21 Removing pages.cpp and splitting it up into various files.
Zorg <zorgiepoo@gmail.com>
parents:
diff changeset
   936
    editNetNick->setText(editNetNick->text().trimmed());
3527f0e7bb21 Removing pages.cpp and splitting it up into various files.
Zorg <zorgiepoo@gmail.com>
parents:
diff changeset
   937
}
6024
d38da7c19e43 some more cleanups and refactoring.
sheepluva
parents: 6009
diff changeset
   938
6911
1cda333286e0 added savepassword checkbox to options page, which now reloads values at every acces
koda
parents: 6700
diff changeset
   939
void PageOptions::savePwdChanged(int state) {
1cda333286e0 added savepassword checkbox to options page, which now reloads values at every acces
koda
parents: 6700
diff changeset
   940
    if (state == 0) {
1cda333286e0 added savepassword checkbox to options page, which now reloads values at every acces
koda
parents: 6700
diff changeset
   941
        editNetPassword->setEnabled(false);
1cda333286e0 added savepassword checkbox to options page, which now reloads values at every acces
koda
parents: 6700
diff changeset
   942
        editNetPassword->setText("");
1cda333286e0 added savepassword checkbox to options page, which now reloads values at every acces
koda
parents: 6700
diff changeset
   943
    } else
1cda333286e0 added savepassword checkbox to options page, which now reloads values at every acces
koda
parents: 6700
diff changeset
   944
        editNetPassword->setEnabled(true);
1cda333286e0 added savepassword checkbox to options page, which now reloads values at every acces
koda
parents: 6700
diff changeset
   945
}
1cda333286e0 added savepassword checkbox to options page, which now reloads values at every acces
koda
parents: 6700
diff changeset
   946
6024
d38da7c19e43 some more cleanups and refactoring.
sheepluva
parents: 6009
diff changeset
   947
void PageOptions::requestEditSelectedTeam()
d38da7c19e43 some more cleanups and refactoring.
sheepluva
parents: 6009
diff changeset
   948
{
d38da7c19e43 some more cleanups and refactoring.
sheepluva
parents: 6009
diff changeset
   949
    emit editTeamRequested(CBTeamName->currentText());
d38da7c19e43 some more cleanups and refactoring.
sheepluva
parents: 6009
diff changeset
   950
}
d38da7c19e43 some more cleanups and refactoring.
sheepluva
parents: 6009
diff changeset
   951
d38da7c19e43 some more cleanups and refactoring.
sheepluva
parents: 6009
diff changeset
   952
void PageOptions::requestDeleteSelectedTeam()
d38da7c19e43 some more cleanups and refactoring.
sheepluva
parents: 6009
diff changeset
   953
{
d38da7c19e43 some more cleanups and refactoring.
sheepluva
parents: 6009
diff changeset
   954
    emit deleteTeamRequested(CBTeamName->currentText());
d38da7c19e43 some more cleanups and refactoring.
sheepluva
parents: 6009
diff changeset
   955
}
d38da7c19e43 some more cleanups and refactoring.
sheepluva
parents: 6009
diff changeset
   956
d38da7c19e43 some more cleanups and refactoring.
sheepluva
parents: 6009
diff changeset
   957
void PageOptions::setTeamOptionsEnabled(bool enabled)
d38da7c19e43 some more cleanups and refactoring.
sheepluva
parents: 6009
diff changeset
   958
{
d38da7c19e43 some more cleanups and refactoring.
sheepluva
parents: 6009
diff changeset
   959
    BtnNewTeam->setVisible(enabled);
d38da7c19e43 some more cleanups and refactoring.
sheepluva
parents: 6009
diff changeset
   960
    BtnEditTeam->setVisible(enabled);
d38da7c19e43 some more cleanups and refactoring.
sheepluva
parents: 6009
diff changeset
   961
    BtnDeleteTeam->setVisible(enabled);
d38da7c19e43 some more cleanups and refactoring.
sheepluva
parents: 6009
diff changeset
   962
    CBTeamName->setVisible(enabled);
d38da7c19e43 some more cleanups and refactoring.
sheepluva
parents: 6009
diff changeset
   963
    LblNoEditTeam->setVisible(!enabled);
d38da7c19e43 some more cleanups and refactoring.
sheepluva
parents: 6009
diff changeset
   964
}
7541
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   965
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   966
void PageOptions::colorButtonClicked(int i)
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   967
{
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   968
    if(i < 0 || i >= m_colorButtons.size())
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   969
        return;
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   970
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   971
    QPalette p = m_colorButtons[i]->palette();
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   972
    QColor c = QColorDialog::getColor(p.color(QPalette::Button));
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   973
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   974
    if(c.isValid())
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   975
    {
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   976
        DataManager::instance().colorsModel()->item(i)->setData(c);
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   977
        m_colorButtons[i]->setStyleSheet(QString("background: %1").arg(c.name()));
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   978
    }
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   979
}
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   980
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   981
void PageOptions::onColorModelDataChanged(const QModelIndex & topLeft, const QModelIndex & bottomRight)
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   982
{
7630
13fa53bb3134 Move some options to the second page so first page doesn't look ugly on low resolution
unc0rr
parents: 7541
diff changeset
   983
    Q_UNUSED(bottomRight);
13fa53bb3134 Move some options to the second page so first page doesn't look ugly on low resolution
unc0rr
parents: 7541
diff changeset
   984
7541
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   985
    QStandardItemModel * model = DataManager::instance().colorsModel();
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   986
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   987
    m_colorButtons[topLeft.row()]->setStyleSheet(QString("background: %1").arg(model->item(topLeft.row())->data().value<QColor>().name()));
e51b11349637 Allow customization of colors in ui, store custom colors in config
unc0rr
parents: 7153
diff changeset
   988
}
7700
fc44e4e33d1c Support for proxies (not tested)
unc0rr
parents: 7681
diff changeset
   989
fc44e4e33d1c Support for proxies (not tested)
unc0rr
parents: 7681
diff changeset
   990
void PageOptions::onProxyTypeChanged()
fc44e4e33d1c Support for proxies (not tested)
unc0rr
parents: 7681
diff changeset
   991
{
7703
78d2ac987f41 Make sheepluva happy
unc0rr
parents: 7702
diff changeset
   992
    bool b = cbProxyType->currentIndex() != NoProxy && cbProxyType->currentIndex() != SystemProxy ;
7700
fc44e4e33d1c Support for proxies (not tested)
unc0rr
parents: 7681
diff changeset
   993
fc44e4e33d1c Support for proxies (not tested)
unc0rr
parents: 7681
diff changeset
   994
    sbProxyPort->setEnabled(b);
fc44e4e33d1c Support for proxies (not tested)
unc0rr
parents: 7681
diff changeset
   995
    leProxy->setEnabled(b);
fc44e4e33d1c Support for proxies (not tested)
unc0rr
parents: 7681
diff changeset
   996
    leProxyLogin->setEnabled(b);
fc44e4e33d1c Support for proxies (not tested)
unc0rr
parents: 7681
diff changeset
   997
    leProxyPassword->setEnabled(b);
fc44e4e33d1c Support for proxies (not tested)
unc0rr
parents: 7681
diff changeset
   998
}
8151
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
   999
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1000
// Video Recording
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1001
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1002
void PageOptions::setConfig(GameUIConfig * config)
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1003
{
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1004
    this->config = config;
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1005
}
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1006
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1007
// user changed file format, we need to update list of codecs
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1008
void PageOptions::changeAVFormat(int index)
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1009
{
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1010
    // remember selected codecs
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1011
    QString prevVCodec = videoCodec();
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1012
    QString prevACodec = audioCodec();
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1013
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1014
    // clear lists of codecs
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1015
    comboVideoCodecs->clear();
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1016
    comboAudioCodecs->clear();
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1017
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1018
    // get list of codecs for specified format
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1019
    LibavInteraction::instance().fillCodecs(comboAVFormats->itemData(index).toString(), comboVideoCodecs, comboAudioCodecs);
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1020
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1021
    // disable audio if there is no audio codec
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1022
    if (comboAudioCodecs->count() == 0)
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1023
    {
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1024
        checkRecordAudio->setChecked(false);
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1025
        checkRecordAudio->setEnabled(false);
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1026
    }
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1027
    else
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1028
        checkRecordAudio->setEnabled(true);
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1029
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1030
    // restore selected codecs if possible
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1031
    int iVCodec = comboVideoCodecs->findData(prevVCodec);
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1032
    if (iVCodec != -1)
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1033
        comboVideoCodecs->setCurrentIndex(iVCodec);
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1034
    int iACodec = comboAudioCodecs->findData(prevACodec);
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1035
    if (iACodec != -1)
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1036
        comboAudioCodecs->setCurrentIndex(iACodec);
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1037
}
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1038
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1039
// user switched checkbox 'use game resolution'
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1040
void PageOptions::changeUseGameRes(int state)
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1041
{
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1042
    if (state && config)
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1043
    {
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1044
        // set resolution to game resolution
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1045
        QRect resolution = config->vid_Resolution();
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1046
        widthEdit->setText(QString::number(resolution.width()));
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1047
        heightEdit->setText(QString::number(resolution.height()));
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1048
    }
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1049
    widthEdit->setEnabled(!state);
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1050
    heightEdit->setEnabled(!state);
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1051
}
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1052
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1053
// user switched checkbox 'record audio'
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1054
void PageOptions::changeRecordAudio(int state)
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1055
{
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1056
    comboAudioCodecs->setEnabled(!!state);
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1057
}
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1058
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1059
void PageOptions::setDefaultCodecs()
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1060
{
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1061
    // VLC should be able to handle any of these configurations
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1062
    // Quicktime X only opens the first one
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1063
    // Windows Media Player TODO
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1064
    if (tryCodecs("mp4", "libx264", "aac"))
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1065
        return;
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1066
    if (tryCodecs("mp4", "libx264", "libfaac"))
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1067
        return;
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1068
    if (tryCodecs("mp4", "libx264", "libmp3lame"))
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1069
        return;
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1070
    if (tryCodecs("mp4", "libx264", "mp2"))
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1071
        return;
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1072
    if (tryCodecs("avi", "libxvid", "libmp3lame"))
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1073
        return;
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1074
    if (tryCodecs("avi", "libxvid", "ac3_fixed"))
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1075
        return;
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1076
    if (tryCodecs("avi", "libxvid", "mp2"))
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1077
        return;
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1078
    if (tryCodecs("avi", "mpeg4", "libmp3lame"))
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1079
        return;
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1080
    if (tryCodecs("avi", "mpeg4", "ac3_fixed"))
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1081
        return;
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1082
    if (tryCodecs("avi", "mpeg4", "mp2"))
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1083
        return;
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1084
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1085
    // this shouldn't happen, just in case
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1086
    if (tryCodecs("ogg", "libtheora", "libvorbis"))
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1087
        return;
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1088
    tryCodecs("ogg", "libtheora", "flac");
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1089
}
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1090
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1091
void PageOptions::setDefaultOptions()
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1092
{
8192
81da6576b0c3 Make video recording options have fixed size and merge with spinbox->combobox change.
Mitchell Kember <mk12360@gmail.com>
parents: 8151
diff changeset
  1093
    framerateBox->setCurrentIndex(2);
8151
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1094
    bitrateBox->setValue(1000);
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1095
    checkRecordAudio->setChecked(true);
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1096
    checkUseGameRes->setChecked(true);
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1097
    setDefaultCodecs();
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1098
}
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1099
8284
a874d00df4a4 GCI2012: Autoupdate Button in Settings
Drew Gottlieb
parents: 8229
diff changeset
  1100
void PageOptions::checkForUpdates()
a874d00df4a4 GCI2012: Autoupdate Button in Settings
Drew Gottlieb
parents: 8229
diff changeset
  1101
{
a874d00df4a4 GCI2012: Autoupdate Button in Settings
Drew Gottlieb
parents: 8229
diff changeset
  1102
    AutoUpdater *updater = NULL;
a874d00df4a4 GCI2012: Autoupdate Button in Settings
Drew Gottlieb
parents: 8229
diff changeset
  1103
a874d00df4a4 GCI2012: Autoupdate Button in Settings
Drew Gottlieb
parents: 8229
diff changeset
  1104
#ifdef __APPLE__
a874d00df4a4 GCI2012: Autoupdate Button in Settings
Drew Gottlieb
parents: 8229
diff changeset
  1105
#ifdef SPARKLE_ENABLED
a874d00df4a4 GCI2012: Autoupdate Button in Settings
Drew Gottlieb
parents: 8229
diff changeset
  1106
    updater = new SparkleAutoUpdater();
a874d00df4a4 GCI2012: Autoupdate Button in Settings
Drew Gottlieb
parents: 8229
diff changeset
  1107
#endif
a874d00df4a4 GCI2012: Autoupdate Button in Settings
Drew Gottlieb
parents: 8229
diff changeset
  1108
#endif
a874d00df4a4 GCI2012: Autoupdate Button in Settings
Drew Gottlieb
parents: 8229
diff changeset
  1109
a874d00df4a4 GCI2012: Autoupdate Button in Settings
Drew Gottlieb
parents: 8229
diff changeset
  1110
    if (updater)
a874d00df4a4 GCI2012: Autoupdate Button in Settings
Drew Gottlieb
parents: 8229
diff changeset
  1111
    {
a874d00df4a4 GCI2012: Autoupdate Button in Settings
Drew Gottlieb
parents: 8229
diff changeset
  1112
        updater->checkForUpdatesNow();
a874d00df4a4 GCI2012: Autoupdate Button in Settings
Drew Gottlieb
parents: 8229
diff changeset
  1113
        delete updater;
a874d00df4a4 GCI2012: Autoupdate Button in Settings
Drew Gottlieb
parents: 8229
diff changeset
  1114
    }
a874d00df4a4 GCI2012: Autoupdate Button in Settings
Drew Gottlieb
parents: 8229
diff changeset
  1115
}
a874d00df4a4 GCI2012: Autoupdate Button in Settings
Drew Gottlieb
parents: 8229
diff changeset
  1116
8151
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1117
bool PageOptions::tryCodecs(const QString & format, const QString & vcodec, const QString & acodec)
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1118
{
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1119
    // first we should change format
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1120
    int iFormat = comboAVFormats->findData(format);
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1121
    if (iFormat == -1)
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1122
        return false;
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1123
    comboAVFormats->setCurrentIndex(iFormat);
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1124
    // format was changed, so lists of codecs were automatically updated to codecs supported by this format
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1125
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1126
    // try to find video codec
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1127
    int iVCodec = comboVideoCodecs->findData(vcodec);
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1128
    if (iVCodec == -1)
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1129
        return false;
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1130
    comboVideoCodecs->setCurrentIndex(iVCodec);
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1131
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1132
    // try to find audio codec
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1133
    int iACodec = comboAudioCodecs->findData(acodec);
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1134
    if (iACodec == -1 && checkRecordAudio->isChecked())
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1135
        return false;
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1136
    if (iACodec != -1)
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1137
        comboAudioCodecs->setCurrentIndex(iACodec);
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1138
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1139
    return true;
25b95d6224fc Google Code-in: Move video preferences in settings tab
Mitchell Kember <mk12360@gmail.com>
parents: 8098
diff changeset
  1140
}
8346
3443e0de2c9d GCI2012: Advanced Keyboard Configuration
dag10
parents: 8284
diff changeset
  1141
3443e0de2c9d GCI2012: Advanced Keyboard Configuration
dag10
parents: 8284
diff changeset
  1142
// When the current tab is switched
3443e0de2c9d GCI2012: Advanced Keyboard Configuration
dag10
parents: 8284
diff changeset
  1143
void PageOptions::tabIndexChanged(int index)
3443e0de2c9d GCI2012: Advanced Keyboard Configuration
dag10
parents: 8284
diff changeset
  1144
{
3443e0de2c9d GCI2012: Advanced Keyboard Configuration
dag10
parents: 8284
diff changeset
  1145
    if (index == binderTab) // Switched to bind tab
3443e0de2c9d GCI2012: Advanced Keyboard Configuration
dag10
parents: 8284
diff changeset
  1146
    {
3443e0de2c9d GCI2012: Advanced Keyboard Configuration
dag10
parents: 8284
diff changeset
  1147
        binder->resetInterface();
3443e0de2c9d GCI2012: Advanced Keyboard Configuration
dag10
parents: 8284
diff changeset
  1148
3443e0de2c9d GCI2012: Advanced Keyboard Configuration
dag10
parents: 8284
diff changeset
  1149
        if (!config) return;
3443e0de2c9d GCI2012: Advanced Keyboard Configuration
dag10
parents: 8284
diff changeset
  1150
3443e0de2c9d GCI2012: Advanced Keyboard Configuration
dag10
parents: 8284
diff changeset
  1151
        QStandardItemModel * binds = DataManager::instance().bindsModel();
3443e0de2c9d GCI2012: Advanced Keyboard Configuration
dag10
parents: 8284
diff changeset
  1152
        for(int i = 0; i < BINDS_NUMBER; i++)
3443e0de2c9d GCI2012: Advanced Keyboard Configuration
dag10
parents: 8284
diff changeset
  1153
        {
3443e0de2c9d GCI2012: Advanced Keyboard Configuration
dag10
parents: 8284
diff changeset
  1154
            QString value = config->bind(i);
3443e0de2c9d GCI2012: Advanced Keyboard Configuration
dag10
parents: 8284
diff changeset
  1155
            QModelIndexList mdl = binds->match(binds->index(0, 0), Qt::UserRole + 1, value, 1, Qt::MatchExactly);
3443e0de2c9d GCI2012: Advanced Keyboard Configuration
dag10
parents: 8284
diff changeset
  1156
            if(mdl.size() == 1) binder->setBindIndex(i, mdl[0].row());
3443e0de2c9d GCI2012: Advanced Keyboard Configuration
dag10
parents: 8284
diff changeset
  1157
        }
3443e0de2c9d GCI2012: Advanced Keyboard Configuration
dag10
parents: 8284
diff changeset
  1158
    }
3443e0de2c9d GCI2012: Advanced Keyboard Configuration
dag10
parents: 8284
diff changeset
  1159
3443e0de2c9d GCI2012: Advanced Keyboard Configuration
dag10
parents: 8284
diff changeset
  1160
    currentTab = index;
3443e0de2c9d GCI2012: Advanced Keyboard Configuration
dag10
parents: 8284
diff changeset
  1161
}
3443e0de2c9d GCI2012: Advanced Keyboard Configuration
dag10
parents: 8284
diff changeset
  1162
3443e0de2c9d GCI2012: Advanced Keyboard Configuration
dag10
parents: 8284
diff changeset
  1163
// When a key bind combobox is changed
3443e0de2c9d GCI2012: Advanced Keyboard Configuration
dag10
parents: 8284
diff changeset
  1164
void PageOptions::bindUpdated(int bindID)
3443e0de2c9d GCI2012: Advanced Keyboard Configuration
dag10
parents: 8284
diff changeset
  1165
{
3443e0de2c9d GCI2012: Advanced Keyboard Configuration
dag10
parents: 8284
diff changeset
  1166
    int bindIndex = binder->bindIndex(bindID);
8434
4821897a0f10 big indentation/whitespaces cleanup
sheepluva
parents: 8387
diff changeset
  1167
8346
3443e0de2c9d GCI2012: Advanced Keyboard Configuration
dag10
parents: 8284
diff changeset
  1168
    if (bindIndex == 0) bindIndex = resetBindToDefault(bindID);
3443e0de2c9d GCI2012: Advanced Keyboard Configuration
dag10
parents: 8284
diff changeset
  1169
3443e0de2c9d GCI2012: Advanced Keyboard Configuration
dag10
parents: 8284
diff changeset
  1170
    // Save bind
3443e0de2c9d GCI2012: Advanced Keyboard Configuration
dag10
parents: 8284
diff changeset
  1171
    QStandardItemModel * binds = DataManager::instance().bindsModel();
3443e0de2c9d GCI2012: Advanced Keyboard Configuration
dag10
parents: 8284
diff changeset
  1172
    QString strbind = binds->index(binder->bindIndex(bindID), 0).data(Qt::UserRole + 1).toString();
3443e0de2c9d GCI2012: Advanced Keyboard Configuration
dag10
parents: 8284
diff changeset
  1173
    config->setBind(bindID, strbind);
3443e0de2c9d GCI2012: Advanced Keyboard Configuration
dag10
parents: 8284
diff changeset
  1174
}
3443e0de2c9d GCI2012: Advanced Keyboard Configuration
dag10
parents: 8284
diff changeset
  1175
3443e0de2c9d GCI2012: Advanced Keyboard Configuration
dag10
parents: 8284
diff changeset
  1176
// Changes a key bind (bindID) to its default value. This updates the bind's combo-box in the UI.
3443e0de2c9d GCI2012: Advanced Keyboard Configuration
dag10
parents: 8284
diff changeset
  1177
// Returns: The bind model index of the default.
3443e0de2c9d GCI2012: Advanced Keyboard Configuration
dag10
parents: 8284
diff changeset
  1178
int PageOptions::resetBindToDefault(int bindID)
3443e0de2c9d GCI2012: Advanced Keyboard Configuration
dag10
parents: 8284
diff changeset
  1179
{
3443e0de2c9d GCI2012: Advanced Keyboard Configuration
dag10
parents: 8284
diff changeset
  1180
    QStandardItemModel * binds = DataManager::instance().bindsModel();
3443e0de2c9d GCI2012: Advanced Keyboard Configuration
dag10
parents: 8284
diff changeset
  1181
    QModelIndexList mdl = binds->match(binds->index(0, 0), Qt::UserRole + 1, cbinds[bindID].strbind, 1, Qt::MatchExactly);
3443e0de2c9d GCI2012: Advanced Keyboard Configuration
dag10
parents: 8284
diff changeset
  1182
    if(mdl.size() == 1) binder->setBindIndex(bindID, mdl[0].row());
3443e0de2c9d GCI2012: Advanced Keyboard Configuration
dag10
parents: 8284
diff changeset
  1183
    return mdl[0].row();
3443e0de2c9d GCI2012: Advanced Keyboard Configuration
dag10
parents: 8284
diff changeset
  1184
}
3443e0de2c9d GCI2012: Advanced Keyboard Configuration
dag10
parents: 8284
diff changeset
  1185
3443e0de2c9d GCI2012: Advanced Keyboard Configuration
dag10
parents: 8284
diff changeset
  1186
// Called when "reset all binds" button is pressed
3443e0de2c9d GCI2012: Advanced Keyboard Configuration
dag10
parents: 8284
diff changeset
  1187
void PageOptions::resetAllBinds()
3443e0de2c9d GCI2012: Advanced Keyboard Configuration
dag10
parents: 8284
diff changeset
  1188
{
3443e0de2c9d GCI2012: Advanced Keyboard Configuration
dag10
parents: 8284
diff changeset
  1189
    for (int i = 0; i < BINDS_NUMBER; i++)
3443e0de2c9d GCI2012: Advanced Keyboard Configuration
dag10
parents: 8284
diff changeset
  1190
    {
3443e0de2c9d GCI2012: Advanced Keyboard Configuration
dag10
parents: 8284
diff changeset
  1191
        resetBindToDefault(i);
3443e0de2c9d GCI2012: Advanced Keyboard Configuration
dag10
parents: 8284
diff changeset
  1192
        bindUpdated(i);
3443e0de2c9d GCI2012: Advanced Keyboard Configuration
dag10
parents: 8284
diff changeset
  1193
    }
3443e0de2c9d GCI2012: Advanced Keyboard Configuration
dag10
parents: 8284
diff changeset
  1194
}