author | unC0Rr |
Tue, 03 Oct 2023 21:13:41 +0200 | |
changeset 15980 | 39ae4ed7de6e |
parent 13689 | 27e5e311c7a3 |
permissions | -rw-r--r-- |
153 | 1 |
/* |
1066 | 2 |
* Hedgewars, a free turn based strategy game |
4976 | 3 |
* Copyright (c) 2006-2007 Igor Ulyanov <iulyanov@gmail.com> |
11046 | 4 |
* Copyright (c) 2004-2015 Andrey Korotaev <unC0Rr@gmail.com> |
153 | 5 |
* |
184 | 6 |
* This program is free software; you can redistribute it and/or modify |
7 |
* it under the terms of the GNU General Public License as published by |
|
8 |
* the Free Software Foundation; version 2 of the License |
|
153 | 9 |
* |
184 | 10 |
* This program is distributed in the hope that it will be useful, |
11 |
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
12 |
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
13 |
* GNU General Public License for more details. |
|
153 | 14 |
* |
184 | 15 |
* You should have received a copy of the GNU General Public License |
16 |
* 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:
9998
diff
changeset
|
17 |
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA |
153 | 18 |
*/ |
19 |
||
50 | 20 |
#ifndef _TEAM_SELECT_INCLUDED |
21 |
#define _TEAM_SELECT_INCLUDED |
|
22 |
||
8129 | 23 |
#include <QLabel> |
240 | 24 |
#include <QGroupBox> |
50 | 25 |
#include <QVBoxLayout> |
382
e7220e48ead1
colors changing config fully working (still need disabling in slaves)
displacer
parents:
373
diff
changeset
|
26 |
#include <QColor> |
471 | 27 |
#include <QMultiMap> |
50 | 28 |
|
117 | 29 |
#include "team.h" |
30 |
||
63 | 31 |
class TeamSelWidget; |
32 |
class FrameTeams; |
|
311 | 33 |
class QFrame; |
34 |
class QPushButton; |
|
63 | 35 |
|
50 | 36 |
using namespace std; |
37 |
||
240 | 38 |
class TeamSelWidget : public QGroupBox |
50 | 39 |
{ |
6616
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6060
diff
changeset
|
40 |
Q_OBJECT |
240 | 41 |
|
6616
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6060
diff
changeset
|
42 |
public: |
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6060
diff
changeset
|
43 |
TeamSelWidget(QWidget* parent); |
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6060
diff
changeset
|
44 |
void setAcceptOuter(bool acceptOuter); |
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6060
diff
changeset
|
45 |
void removeNetTeam(const HWTeam& team); |
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6060
diff
changeset
|
46 |
void resetPlayingTeams(const QList<HWTeam>& teamslist); |
7835
a84936d1618a
Clear hedgehog's gear Power value when switching. Should fix issue 446 (not tested, but looks obvious).
unc0rr
parents:
6952
diff
changeset
|
47 |
bool isPlaying(const HWTeam &team) const; |
6616
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6060
diff
changeset
|
48 |
QList<HWTeam> getPlayingTeams() const; |
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6060
diff
changeset
|
49 |
QList<HWTeam> getNotPlayingTeams() const; |
12217
a6cd48b8ef61
Prevent frontend from starting game w/ >48 hogs
Wuzzy <almikes@aol.com>
parents:
11046
diff
changeset
|
50 |
unsigned short getNumHedgehogs() const; |
6616
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6060
diff
changeset
|
51 |
void setInteractivity(bool interactive); |
13689
27e5e311c7a3
Fix critical failure to cleanup teams list after rejoining game after a force-quit. Fixes bug 597
Wuzzy <Wuzzy2@mail.ru>
parents:
12298
diff
changeset
|
52 |
void setUser(const QString& nickname); |
27e5e311c7a3
Fix critical failure to cleanup teams list after rejoining game after a force-quit. Fixes bug 597
Wuzzy <Wuzzy2@mail.ru>
parents:
12298
diff
changeset
|
53 |
void cleanupFakeNetTeams(); |
50 | 54 |
|
6616
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6060
diff
changeset
|
55 |
public slots: |
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6060
diff
changeset
|
56 |
void addTeam(HWTeam team); |
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6060
diff
changeset
|
57 |
void changeHHNum(const HWTeam&); |
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6060
diff
changeset
|
58 |
void changeTeamColor(const HWTeam&); |
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6060
diff
changeset
|
59 |
void changeTeamStatus(HWTeam team); |
471 | 60 |
|
6616
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6060
diff
changeset
|
61 |
signals: |
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6060
diff
changeset
|
62 |
void setEnabledGameStart(bool); |
7835
a84936d1618a
Clear hedgehog's gear Power value when switching. Should fix issue 446 (not tested, but looks obvious).
unc0rr
parents:
6952
diff
changeset
|
63 |
void teamWillPlay(const HWTeam& team); |
6616
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6060
diff
changeset
|
64 |
void teamNotPlaying(const HWTeam& team); |
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6060
diff
changeset
|
65 |
void hhogsNumChanged(const HWTeam&); |
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6060
diff
changeset
|
66 |
void teamColorChanged(const HWTeam&); |
7835
a84936d1618a
Clear hedgehog's gear Power value when switching. Should fix issue 446 (not tested, but looks obvious).
unc0rr
parents:
6952
diff
changeset
|
67 |
void acceptRequested(const HWTeam& team); |
471 | 68 |
|
6616
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6060
diff
changeset
|
69 |
private slots: |
7835
a84936d1618a
Clear hedgehog's gear Power value when switching. Should fix issue 446 (not tested, but looks obvious).
unc0rr
parents:
6952
diff
changeset
|
70 |
void pre_changeTeamStatus(const HWTeam&); |
6616
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6060
diff
changeset
|
71 |
void hhNumChanged(const HWTeam& team); |
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6060
diff
changeset
|
72 |
void proxyTeamColorChanged(const HWTeam& team); |
50 | 73 |
|
6616
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6060
diff
changeset
|
74 |
private: |
12298
91ebbadc461d
Stretch teamselwidget across whole page in local multiplayer page
Wuzzy <almikes@aol.com>
parents:
12217
diff
changeset
|
75 |
void addScrArea(FrameTeams* pfteams, QColor color, int minHeight, int maxHeight, bool setFrame); |
6616
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6060
diff
changeset
|
76 |
FrameTeams* frameDontPlaying; |
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6060
diff
changeset
|
77 |
FrameTeams* framePlaying; |
61 | 78 |
|
6616
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6060
diff
changeset
|
79 |
QVBoxLayout mainLayout; |
8129 | 80 |
QLabel *numTeamNotice; |
6616
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6060
diff
changeset
|
81 |
bool m_acceptOuter; |
8430
5a5c34a75e1a
Aesthetic improvements to chat widget. Also fixed the ghosting issue in a few areas by using repaint().
dag10
parents:
8129
diff
changeset
|
82 |
void repaint(); |
13689
27e5e311c7a3
Fix critical failure to cleanup teams list after rejoining game after a force-quit. Fixes bug 597
Wuzzy <Wuzzy2@mail.ru>
parents:
12298
diff
changeset
|
83 |
QString m_curUser; |
50 | 84 |
|
6616
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6060
diff
changeset
|
85 |
QList<HWTeam> curPlayingTeams; |
f77bb02b669f
astyle -C -S -L -N --style=allman --recursive "QTfrontend/*.cpp" "QTfrontend/*.h"
nemo
parents:
6060
diff
changeset
|
86 |
QList<HWTeam> m_curNotPlayingTeams; |
50 | 87 |
}; |
88 |
||
89 |
#endif // _TEAM_SELECT_INCLUDED |