-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathgpconfig.h
72 lines (64 loc) · 1.78 KB
/
gpconfig.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
#ifndef GPCONFIG_H
#define GPCONFIG_H
#include <QString>
#include <QStringList>
#include <QWidget>
#include <QBuffer>
struct PlayerInfo
{
QString strName;
int nPing;
bool bChangeRight;
QString strIP;
};
struct GameAllInfo
{
QString strName, strIP, strGameMap, strPassword, strGameList, strRoomPassword, strDescr;
unsigned short nPort;
int nMaxPlayers, nGameTime;
bool bCanJoinAfterStart, bServerReady;
QList<PlayerInfo> listPlayers;
QStringList vecParamValues;
bool bAdmin; // ma nas user pravo na zmenu parametru mistnosti?
};
class GameParam
{
protected:
GameParam(QString strText) : m_strText(strText) {}
virtual ~GameParam() {}
QString m_strText;
public:
static GameParam* createObject(QString text, const QStringList& params);
QString getText() { return m_strText; }
virtual void createWidget(QString value, QWidget** left, QWidget** right) = 0;
virtual QString getWidgetValue(QWidget* pWidget) = 0;
};
class GameParamInputRange : public GameParam
{
public:
GameParamInputRange(QString text, const QStringList& params);
virtual ~GameParamInputRange() {}
virtual void createWidget(QString value, QWidget** left, QWidget** right);
virtual QString getWidgetValue(QWidget* pWidget);
private:
int m_min,m_max;
};
class GameParamBoolean : public GameParam
{
public:
GameParamBoolean(QString text);
virtual ~GameParamBoolean() {}
virtual void createWidget(QString value, QWidget** left, QWidget** right);
virtual QString getWidgetValue(QWidget* pWidget);
};
struct GameConfig
{
QString id, command, name;
int protoid, poffset;
};
QString processGameConfig(QBuffer& buffer);
bool haveGameConfig();
bool haveGameConfig(QString id);
QList<GameConfig>& getGameConfig();
QString getStartCommand(QString format, QString id, QString ip, QString port, QString nick, QString password);
#endif