QTfrontend/ui/widget/teamselect.cpp
author dag10
Mon, 21 Jan 2013 21:52:49 -0500
changeset 8424 225ede46e3dc
parent 8140 a098374b847b
child 8430 5a5c34a75e1a
permissions -rw-r--r--
On pagenetgame, when window is too small the map/game options becomes a tabbed interface to allow for a few lines of chat to always be visible. Restored HWForm's min height to 580. Fixed the 2px alignment issue with the map list and map previews' top edges that unC0Rr was whining about. <3
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
     1
/*
1066
1f1b3686a2b0 Update copyright headers a bit
unc0rr
parents: 884
diff changeset
     2
 * Hedgewars, a free turn based strategy game
4976
088d40d8aba2 Happy 2011 :)
koda
parents: 4410
diff changeset
     3
 * Copyright (c) 2006-2007 Igor Ulyanov <iulyanov@gmail.com>
6952
7f70f37bbf08 license header year range adjustments
sheepluva
parents: 6700
diff changeset
     4
 * Copyright (c) 2004-2012 Andrey Korotaev <unC0Rr@gmail.com>
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
     5
 *
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
     6
 * This program is free software; you can redistribute it and/or modify
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
     7
 * it under the terms of the GNU General Public License as published by
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
     8
 * the Free Software Foundation; version 2 of the License
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
     9
 *
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    10
 * This program is distributed in the hope that it will be useful,
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    11
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    12
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    13
 * GNU General Public License for more details.
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    14
 *
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    15
 * You should have received a copy of the GNU General Public License
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    16
 * along with this program; if not, write to the Free Software
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    17
 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    18
 */
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    19
572
302ad5c3836d gcc 4.3 related patch - missing header added :)
displacer
parents: 535
diff changeset
    20
#include <algorithm>
302ad5c3836d gcc 4.3 related patch - missing header added :)
displacer
parents: 535
diff changeset
    21
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    22
#include <QLabel>
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    23
#include <QPixmap>
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    24
#include <QPushButton>
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    25
#include <QFrame>
884
99cc72c8a812 - Some debug info
unc0rr
parents: 572
diff changeset
    26
#include <QDebug>
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    27
2522
42986b9ebc74 moves project files to proper directory
koda
parents: 2377
diff changeset
    28
#include "vertScrollArea.h"
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    29
#include "teamselect.h"
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    30
#include "teamselhelper.h"
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    31
#include "frameTeam.h"
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    32
339
7535ab6c3820 Run game message added, team and config info provided for net game
displacer
parents: 322
diff changeset
    33
void TeamSelWidget::addTeam(HWTeam team)
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    34
{
6616
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
    35
    if(team.isNetTeam())
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
    36
    {
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
    37
        framePlaying->addTeam(team, true);
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
    38
        curPlayingTeams.push_back(team);
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
    39
        connect(framePlaying->getTeamWidget(team), SIGNAL(teamStatusChanged(HWTeam)),
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
    40
                this, SLOT(netTeamStatusChanged(const HWTeam&)));
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
    41
        connect(framePlaying->getTeamWidget(team), SIGNAL(hhNmChanged(const HWTeam&)),
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2522
diff changeset
    42
                this, SLOT(hhNumChanged(const HWTeam&)));
6616
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
    43
        dynamic_cast<TeamShowWidget*>(framePlaying->getTeamWidget(team))->hhNumChanged();
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
    44
        connect(framePlaying->getTeamWidget(team), SIGNAL(teamColorChanged(const HWTeam&)),
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2522
diff changeset
    45
                this, SLOT(proxyTeamColorChanged(const HWTeam&)));
373
df912aab6b7e network team add can be denied by server
displacer
parents: 372
diff changeset
    46
    }
6616
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
    47
    else
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
    48
    {
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
    49
        frameDontPlaying->addTeam(team, false);
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
    50
        m_curNotPlayingTeams.push_back(team);
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
    51
        if(m_acceptOuter)
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
    52
        {
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
    53
            connect(frameDontPlaying->getTeamWidget(team), SIGNAL(teamStatusChanged(HWTeam)),
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
    54
                    this, SLOT(pre_changeTeamStatus(HWTeam)));
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
    55
        }
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
    56
        else
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
    57
        {
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
    58
            connect(frameDontPlaying->getTeamWidget(team), SIGNAL(teamStatusChanged(HWTeam)),
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
    59
                    this, SLOT(changeTeamStatus(HWTeam)));
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
    60
        }
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
    61
    }
8129
98e4a60da2ca GCI2012: Empty list help text (Issue 375)
Bryan Dunsmore
parents: 7835
diff changeset
    62
6616
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
    63
    emit setEnabledGameStart(curPlayingTeams.size()>1);
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    64
}
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
    65
1475
bab5650fc894 - Fix ConfigAsked not sending full config (leads to team divide checkbox inconsistency)
unc0rr
parents: 1425
diff changeset
    66
void TeamSelWidget::setInteractivity(bool interactive)
362
b28e0dd48269 hedgehogs num modification now allowed to chief client only
displacer
parents: 356
diff changeset
    67
{
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2522
diff changeset
    68
    framePlaying->setInteractivity(interactive);
362
b28e0dd48269 hedgehogs num modification now allowed to chief client only
displacer
parents: 356
diff changeset
    69
}
b28e0dd48269 hedgehogs num modification now allowed to chief client only
displacer
parents: 356
diff changeset
    70
352
4665bfe25470 first buggy hedgehogs num net change
displacer
parents: 348
diff changeset
    71
void TeamSelWidget::hhNumChanged(const HWTeam& team)
4665bfe25470 first buggy hedgehogs num net change
displacer
parents: 348
diff changeset
    72
{
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2522
diff changeset
    73
    QList<HWTeam>::iterator itPlay=std::find(curPlayingTeams.begin(), curPlayingTeams.end(), team);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2522
diff changeset
    74
    if(itPlay==curPlayingTeams.end())
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2522
diff changeset
    75
    {
6015
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5773
diff changeset
    76
        qWarning() << QString("hhNumChanged: team '%1' not found").arg(team.name());
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2522
diff changeset
    77
        return;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2522
diff changeset
    78
    }
6015
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5773
diff changeset
    79
    itPlay->setNumHedgehogs(team.numHedgehogs());
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2522
diff changeset
    80
    emit hhogsNumChanged(team);
352
4665bfe25470 first buggy hedgehogs num net change
displacer
parents: 348
diff changeset
    81
}
4665bfe25470 first buggy hedgehogs num net change
displacer
parents: 348
diff changeset
    82
372
4bac77f8cd38 network colors (alpha)
displacer
parents: 362
diff changeset
    83
void TeamSelWidget::proxyTeamColorChanged(const HWTeam& team)
4bac77f8cd38 network colors (alpha)
displacer
parents: 362
diff changeset
    84
{
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2522
diff changeset
    85
    QList<HWTeam>::iterator itPlay=std::find(curPlayingTeams.begin(), curPlayingTeams.end(), team);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2522
diff changeset
    86
    if(itPlay==curPlayingTeams.end())
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2522
diff changeset
    87
    {
6015
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5773
diff changeset
    88
        qWarning() << QString("proxyTeamColorChanged: team '%1' not found").arg(team.name());
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2522
diff changeset
    89
        return;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2522
diff changeset
    90
    }
6015
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5773
diff changeset
    91
    itPlay->setColor(team.color());
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2522
diff changeset
    92
    emit teamColorChanged(team);
372
4bac77f8cd38 network colors (alpha)
displacer
parents: 362
diff changeset
    93
}
4bac77f8cd38 network colors (alpha)
displacer
parents: 362
diff changeset
    94
352
4665bfe25470 first buggy hedgehogs num net change
displacer
parents: 348
diff changeset
    95
void TeamSelWidget::changeHHNum(const HWTeam& team)
4665bfe25470 first buggy hedgehogs num net change
displacer
parents: 348
diff changeset
    96
{
6616
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
    97
    QList<HWTeam>::iterator itPlay=std::find(curPlayingTeams.begin(), curPlayingTeams.end(), team);
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2522
diff changeset
    98
    if(itPlay==curPlayingTeams.end())
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2522
diff changeset
    99
    {
6015
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5773
diff changeset
   100
        qWarning() << QString("changeHHNum: team '%1' not found").arg(team.name());
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2522
diff changeset
   101
        return;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2522
diff changeset
   102
    }
6616
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   103
    itPlay->setNumHedgehogs(team.numHedgehogs());
352
4665bfe25470 first buggy hedgehogs num net change
displacer
parents: 348
diff changeset
   104
6616
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   105
    framePlaying->setHHNum(team);
352
4665bfe25470 first buggy hedgehogs num net change
displacer
parents: 348
diff changeset
   106
}
4665bfe25470 first buggy hedgehogs num net change
displacer
parents: 348
diff changeset
   107
372
4bac77f8cd38 network colors (alpha)
displacer
parents: 362
diff changeset
   108
void TeamSelWidget::changeTeamColor(const HWTeam& team)
4bac77f8cd38 network colors (alpha)
displacer
parents: 362
diff changeset
   109
{
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2522
diff changeset
   110
    QList<HWTeam>::iterator itPlay=std::find(curPlayingTeams.begin(), curPlayingTeams.end(), team);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2522
diff changeset
   111
    if(itPlay==curPlayingTeams.end())
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2522
diff changeset
   112
    {
6015
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5773
diff changeset
   113
        qWarning() << QString("changeTeamColor: team '%1' not found").arg(team.name());
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2522
diff changeset
   114
        return;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2522
diff changeset
   115
    }
6015
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5773
diff changeset
   116
    itPlay->setColor(team.color());
372
4bac77f8cd38 network colors (alpha)
displacer
parents: 362
diff changeset
   117
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2522
diff changeset
   118
    framePlaying->setTeamColor(team);
372
4bac77f8cd38 network colors (alpha)
displacer
parents: 362
diff changeset
   119
}
4bac77f8cd38 network colors (alpha)
displacer
parents: 362
diff changeset
   120
347
6521e1b2cd40 more correct remove net teams
displacer
parents: 341
diff changeset
   121
void TeamSelWidget::removeNetTeam(const HWTeam& team)
6521e1b2cd40 more correct remove net teams
displacer
parents: 341
diff changeset
   122
{
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2522
diff changeset
   123
    //qDebug() << QString("removeNetTeam: removing team '%1'").arg(team.TeamName);
6616
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   124
    for(;;)
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   125
    {
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2522
diff changeset
   126
        QList<HWTeam>::iterator itPlay=std::find(curPlayingTeams.begin(), curPlayingTeams.end(), team);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2522
diff changeset
   127
        if(itPlay==curPlayingTeams.end())
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2522
diff changeset
   128
        {
6015
daffc14a518a cleaning up a little bit more, especially team class. we were leaking teams into heap memory on quick game starts btw
sheepluva
parents: 5773
diff changeset
   129
            qWarning() << QString("removeNetTeam: team '%1' not found").arg(team.name());
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2522
diff changeset
   130
            break;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2522
diff changeset
   131
        }
6616
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   132
        if(itPlay->isNetTeam())
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   133
        {
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2522
diff changeset
   134
            QObject::disconnect(framePlaying->getTeamWidget(*itPlay), SIGNAL(teamStatusChanged(HWTeam)));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2522
diff changeset
   135
            framePlaying->removeTeam(team);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2522
diff changeset
   136
            curPlayingTeams.erase(itPlay);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2522
diff changeset
   137
            break;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2522
diff changeset
   138
        }
7523
0790527b4e00 When exiting a room where one was host, server sends a REMOVE_TEAM for the local team. It appears that this loop would not break in that case. Add a log message and a break. (I've hit a frozen frontend twice now)
nemo
parents: 7145
diff changeset
   139
        else
0790527b4e00 When exiting a room where one was host, server sends a REMOVE_TEAM for the local team. It appears that this loop would not break in that case. Add a log message and a break. (I've hit a frozen frontend twice now)
nemo
parents: 7145
diff changeset
   140
        {
0790527b4e00 When exiting a room where one was host, server sends a REMOVE_TEAM for the local team. It appears that this loop would not break in that case. Add a log message and a break. (I've hit a frozen frontend twice now)
nemo
parents: 7145
diff changeset
   141
            qWarning() << QString("removeNetTeam: team '%1' was actually a local team!").arg(team.name());
0790527b4e00 When exiting a room where one was host, server sends a REMOVE_TEAM for the local team. It appears that this loop would not break in that case. Add a log message and a break. (I've hit a frozen frontend twice now)
nemo
parents: 7145
diff changeset
   142
            break;
0790527b4e00 When exiting a room where one was host, server sends a REMOVE_TEAM for the local team. It appears that this loop would not break in that case. Add a log message and a break. (I've hit a frozen frontend twice now)
nemo
parents: 7145
diff changeset
   143
        }
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2522
diff changeset
   144
    }
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2522
diff changeset
   145
    emit setEnabledGameStart(curPlayingTeams.size()>1);
347
6521e1b2cd40 more correct remove net teams
displacer
parents: 341
diff changeset
   146
}
6521e1b2cd40 more correct remove net teams
displacer
parents: 341
diff changeset
   147
6521e1b2cd40 more correct remove net teams
displacer
parents: 341
diff changeset
   148
void TeamSelWidget::netTeamStatusChanged(const HWTeam& team)
6521e1b2cd40 more correct remove net teams
displacer
parents: 341
diff changeset
   149
{
6616
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   150
    QList<HWTeam>::iterator itPlay=std::find(curPlayingTeams.begin(), curPlayingTeams.end(), team);
486
7ea71cd3acd5 - Change proto version to 4
unc0rr
parents: 482
diff changeset
   151
347
6521e1b2cd40 more correct remove net teams
displacer
parents: 341
diff changeset
   152
}
6521e1b2cd40 more correct remove net teams
displacer
parents: 341
diff changeset
   153
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   154
//void TeamSelWidget::removeTeam(__attribute__ ((unused)) HWTeam team)
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   155
//{
6616
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   156
//curDontPlayingTeams.erase(std::find(curDontPlayingTeams.begin(), curDontPlayingTeams.end(), team));
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   157
//}
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   158
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   159
void TeamSelWidget::changeTeamStatus(HWTeam team)
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   160
{
6616
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   161
    QList<HWTeam>::iterator itDontPlay=std::find(m_curNotPlayingTeams.begin(), m_curNotPlayingTeams.end(), team);
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   162
    QList<HWTeam>::iterator itPlay=std::find(curPlayingTeams.begin(), curPlayingTeams.end(), team);
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   163
6616
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   164
    bool willBePlaying=itDontPlay!=m_curNotPlayingTeams.end();
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   165
6616
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   166
    if(!willBePlaying)
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   167
    {
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   168
        // playing team => dont playing
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   169
        m_curNotPlayingTeams.push_back(*itPlay);
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   170
        emit teamNotPlaying(*itPlay);
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   171
        curPlayingTeams.erase(itPlay);
8129
98e4a60da2ca GCI2012: Empty list help text (Issue 375)
Bryan Dunsmore
parents: 7835
diff changeset
   172
98e4a60da2ca GCI2012: Empty list help text (Issue 375)
Bryan Dunsmore
parents: 7835
diff changeset
   173
        // Show team notice if less than two teams.
98e4a60da2ca GCI2012: Empty list help text (Issue 375)
Bryan Dunsmore
parents: 7835
diff changeset
   174
        if (curPlayingTeams.size() < 2)
98e4a60da2ca GCI2012: Empty list help text (Issue 375)
Bryan Dunsmore
parents: 7835
diff changeset
   175
        {
98e4a60da2ca GCI2012: Empty list help text (Issue 375)
Bryan Dunsmore
parents: 7835
diff changeset
   176
            numTeamNotice->show();
98e4a60da2ca GCI2012: Empty list help text (Issue 375)
Bryan Dunsmore
parents: 7835
diff changeset
   177
        }
6616
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   178
    }
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   179
    else
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   180
    {
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   181
        // return if max playing teams reached
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   182
        if(framePlaying->isFullTeams()) return;
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   183
        // dont playing team => playing
7145
1d1a14b39400 Fix a bug with wrong state of teams list when color isn't changed manually
unc0rr
parents: 6952
diff changeset
   184
        itDontPlay->setColor(framePlaying->getNextColor());
6616
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   185
        team=*itDontPlay; // for net team info saving in framePlaying (we have only name with netID from network)
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   186
        curPlayingTeams.push_back(*itDontPlay);
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   187
        if(!m_acceptOuter) emit teamWillPlay(*itDontPlay);
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   188
        m_curNotPlayingTeams.erase(itDontPlay);
8129
98e4a60da2ca GCI2012: Empty list help text (Issue 375)
Bryan Dunsmore
parents: 7835
diff changeset
   189
98e4a60da2ca GCI2012: Empty list help text (Issue 375)
Bryan Dunsmore
parents: 7835
diff changeset
   190
        // Hide team notice if at least two teams.
98e4a60da2ca GCI2012: Empty list help text (Issue 375)
Bryan Dunsmore
parents: 7835
diff changeset
   191
        if (curPlayingTeams.size() >= 2)
98e4a60da2ca GCI2012: Empty list help text (Issue 375)
Bryan Dunsmore
parents: 7835
diff changeset
   192
        {
98e4a60da2ca GCI2012: Empty list help text (Issue 375)
Bryan Dunsmore
parents: 7835
diff changeset
   193
            numTeamNotice->hide();
98e4a60da2ca GCI2012: Empty list help text (Issue 375)
Bryan Dunsmore
parents: 7835
diff changeset
   194
        }
6616
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   195
    }
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   196
6616
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   197
    FrameTeams* pRemoveTeams;
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   198
    FrameTeams* pAddTeams;
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   199
    if(!willBePlaying)
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   200
    {
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   201
        pRemoveTeams=framePlaying;
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   202
        pAddTeams=frameDontPlaying;
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   203
    }
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   204
    else
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   205
    {
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   206
        pRemoveTeams=frameDontPlaying;
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   207
        pAddTeams=framePlaying;
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   208
    }
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   209
6616
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   210
    pAddTeams->addTeam(team, willBePlaying);
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   211
    pRemoveTeams->removeTeam(team);
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   212
    if(!team.isNetTeam() && m_acceptOuter && !willBePlaying)
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   213
    {
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   214
        connect(frameDontPlaying->getTeamWidget(team), SIGNAL(teamStatusChanged(HWTeam)),
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   215
                this, SLOT(pre_changeTeamStatus(HWTeam)));
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   216
    }
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   217
    else
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   218
    {
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   219
        connect(pAddTeams->getTeamWidget(team), SIGNAL(teamStatusChanged(HWTeam)),
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   220
                this, SLOT(changeTeamStatus(HWTeam)));
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   221
    }
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   222
    if(willBePlaying)
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   223
    {
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   224
        connect(framePlaying->getTeamWidget(team), SIGNAL(hhNmChanged(const HWTeam&)),
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   225
                this, SLOT(hhNumChanged(const HWTeam&)));
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   226
        dynamic_cast<TeamShowWidget*>(framePlaying->getTeamWidget(team))->hhNumChanged();
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   227
        connect(framePlaying->getTeamWidget(team), SIGNAL(teamColorChanged(const HWTeam&)),
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   228
                this, SLOT(proxyTeamColorChanged(const HWTeam&)));
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   229
        emit teamColorChanged(((TeamShowWidget*)framePlaying->getTeamWidget(team))->getTeam());
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   230
    }
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   231
6616
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   232
    QSize szh=pAddTeams->sizeHint();
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   233
    QSize szh1=pRemoveTeams->sizeHint();
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   234
    if(szh.isValid() && szh1.isValid())
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   235
    {
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   236
        pAddTeams->resize(pAddTeams->size().width(), szh.height());
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   237
        pRemoveTeams->resize(pRemoveTeams->size().width(), szh1.height());
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   238
    }
492
78e80f899b59 disable start game button with teams num < 2
displacer
parents: 486
diff changeset
   239
6616
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   240
    emit setEnabledGameStart(curPlayingTeams.size()>1);
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   241
}
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   242
1647
ab0c8c4be7b3 Reorganize net game page
unc0rr
parents: 1475
diff changeset
   243
void TeamSelWidget::addScrArea(FrameTeams* pfteams, QColor color, int fixedHeight)
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   244
{
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2522
diff changeset
   245
    VertScrArea* area = new VertScrArea(color);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2522
diff changeset
   246
    area->setWidget(pfteams);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2522
diff changeset
   247
    mainLayout.addWidget(area, 30);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2522
diff changeset
   248
    if (fixedHeight > 0)
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2522
diff changeset
   249
    {
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2522
diff changeset
   250
        area->setMinimumHeight(fixedHeight);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2522
diff changeset
   251
        area->setMaximumHeight(fixedHeight);
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2522
diff changeset
   252
        area->setStyleSheet(
6616
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   253
            "FrameTeams{"
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   254
            "border: solid;"
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   255
            "border-width: 1px;"
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   256
            "border-radius: 16px;"
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   257
            "border-color: #ffcc00;"
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   258
            "}"
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2522
diff changeset
   259
        );
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2522
diff changeset
   260
    }
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   261
}
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   262
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   263
TeamSelWidget::TeamSelWidget(QWidget* parent) :
6616
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   264
    QGroupBox(parent), mainLayout(this), m_acceptOuter(false)
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   265
{
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2522
diff changeset
   266
    setTitle(QGroupBox::tr("Playing teams"));
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2522
diff changeset
   267
    framePlaying = new FrameTeams();
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2522
diff changeset
   268
    frameDontPlaying = new FrameTeams();
2377
f3fab2b09e0c And in frontend
nemo
parents: 2110
diff changeset
   269
8129
98e4a60da2ca GCI2012: Empty list help text (Issue 375)
Bryan Dunsmore
parents: 7835
diff changeset
   270
    // Add notice about number of required teams.
98e4a60da2ca GCI2012: Empty list help text (Issue 375)
Bryan Dunsmore
parents: 7835
diff changeset
   271
    numTeamNotice = new QLabel("Two teams are required to play!");
8140
a098374b847b A bit of refactoring
unc0rr
parents: 8129
diff changeset
   272
    mainLayout.addWidget(numTeamNotice);
8129
98e4a60da2ca GCI2012: Empty list help text (Issue 375)
Bryan Dunsmore
parents: 7835
diff changeset
   273
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2522
diff changeset
   274
    QPalette p;
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2522
diff changeset
   275
    p.setColor(QPalette::Window, QColor(0x00, 0x00, 0x00));
8424
225ede46e3dc On pagenetgame, when window is too small the map/game options becomes a tabbed interface to allow for a few lines of chat to always be visible.
dag10
parents: 8140
diff changeset
   276
    addScrArea(framePlaying, p.color(QPalette::Window).light(105), 150);
2948
3f21a9dc93d0 Replace tabs with spaces using 'expand -t 4' command
unc0rr
parents: 2522
diff changeset
   277
    addScrArea(frameDontPlaying, p.color(QPalette::Window).dark(105), 0);
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   278
}
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   279
373
df912aab6b7e network team add can be denied by server
displacer
parents: 372
diff changeset
   280
void TeamSelWidget::setAcceptOuter(bool acceptOuter)
df912aab6b7e network team add can be denied by server
displacer
parents: 372
diff changeset
   281
{
6616
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   282
    m_acceptOuter=acceptOuter;
373
df912aab6b7e network team add can be denied by server
displacer
parents: 372
diff changeset
   283
}
df912aab6b7e network team add can be denied by server
displacer
parents: 372
diff changeset
   284
231
c77b16e48273 bots power icons added
displacer
parents: 207
diff changeset
   285
void TeamSelWidget::resetPlayingTeams(const QList<HWTeam>& teamslist)
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   286
{
6616
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   287
    //for(it=curPlayingTeams.begin(); it!=curPlayingTeams.end(); it++) {
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   288
    //framePlaying->removeTeam(*it);
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   289
    //}
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   290
    framePlaying->resetTeams();
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   291
    framePlaying->resetColors();
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   292
    curPlayingTeams.clear();
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   293
    //for(it=curDontPlayingTeams.begin(); it!=curDontPlayingTeams.end(); it++) {
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   294
    //frameDontPlaying->removeTeam(*it);
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   295
    //}
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   296
    frameDontPlaying->resetTeams();
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   297
    m_curNotPlayingTeams.clear();
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   298
6616
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   299
    foreach(HWTeam team, teamslist)
5772
c09c50efe8b5 Replace iterators with simple declarative foreach (not tested if it works)
unc0rr
parents: 5140
diff changeset
   300
    addTeam(team);
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   301
}
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   302
7835
a84936d1618a Clear hedgehog's gear Power value when switching. Should fix issue 446 (not tested, but looks obvious).
unc0rr
parents: 7523
diff changeset
   303
bool TeamSelWidget::isPlaying(const HWTeam &team) const
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   304
{
7835
a84936d1618a Clear hedgehog's gear Power value when switching. Should fix issue 446 (not tested, but looks obvious).
unc0rr
parents: 7523
diff changeset
   305
    return curPlayingTeams.contains(team);
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   306
}
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   307
352
4665bfe25470 first buggy hedgehogs num net change
displacer
parents: 348
diff changeset
   308
QList<HWTeam> TeamSelWidget::getPlayingTeams() const
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   309
{
6616
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   310
    return curPlayingTeams;
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   311
}
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 183
diff changeset
   312
5773
c277657854a2 Some renaming
unc0rr
parents: 5772
diff changeset
   313
QList<HWTeam> TeamSelWidget::getNotPlayingTeams() const
535
a14eaf35cf4b "Setup" button instead of "New team", exclude playing teams from setup
displacer
parents: 523
diff changeset
   314
{
6616
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   315
    return m_curNotPlayingTeams;
535
a14eaf35cf4b "Setup" button instead of "New team", exclude playing teams from setup
displacer
parents: 523
diff changeset
   316
}
a14eaf35cf4b "Setup" button instead of "New team", exclude playing teams from setup
displacer
parents: 523
diff changeset
   317
7835
a84936d1618a Clear hedgehog's gear Power value when switching. Should fix issue 446 (not tested, but looks obvious).
unc0rr
parents: 7523
diff changeset
   318
void TeamSelWidget::pre_changeTeamStatus(const HWTeam & team)
373
df912aab6b7e network team add can be denied by server
displacer
parents: 372
diff changeset
   319
{
7145
1d1a14b39400 Fix a bug with wrong state of teams list when color isn't changed manually
unc0rr
parents: 6952
diff changeset
   320
    //team.setColor(framePlaying->getNextColor());
6616
f77bb02b669f astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents: 6060
diff changeset
   321
    emit acceptRequested(team);
373
df912aab6b7e network team add can be denied by server
displacer
parents: 372
diff changeset
   322
}