Doomseeker
Wadseeker
Download
Tracker
Git
Docs
Main Page
Plugin API
Modules
Classes
Files
File List
All
Classes
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Groups
Pages
src
core
gui
createserverdialog.h
1
//------------------------------------------------------------------------------
2
// createserverdialog.h
3
//------------------------------------------------------------------------------
4
//
5
// This program is free software; you can redistribute it and/or
6
// modify it under the terms of the GNU General Public License
7
// as published by the Free Software Foundation; either version 2
8
// of the License, or (at your option) any later version.
9
//
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.
14
//
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
17
// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
18
// 02110-1301, USA.
19
//
20
//------------------------------------------------------------------------------
21
// Copyright (C) 2009-2012 "Zalewa" <zalewapl@gmail.com>
22
//------------------------------------------------------------------------------
23
#ifndef DOOMSEEKER_GUI_CREATESERVERDIALOG_H
24
#define DOOMSEEKER_GUI_CREATESERVERDIALOG_H
25
26
#include "
serverapi/serverstructs.h
"
27
#include "dptr.h"
28
#include <QDialog>
29
30
class
CreateServerDialogPage
;
31
class
EnginePlugin
;
32
class
GameCreateParams
;
33
class
Message
;
34
class
Server
;
35
39
class
CreateServerDialog
:
public
QDialog
40
{
41
Q_OBJECT
42
43
public
:
44
CreateServerDialog
(QWidget* parent = NULL);
45
virtual
~
CreateServerDialog
();
46
47
bool
commandLineArguments(QString &executable, QStringList &args);
48
void
makeRemoteGameSetupDialog(
const
EnginePlugin
*plugin);
49
void
setIwadByName(
const
QString &iwad);
50
51
private
slots:
52
void
btnCommandLineClicked();
53
void
btnLoadClicked();
54
void
btnPlayOfflineClicked();
55
void
btnSaveClicked();
56
void
btnStartServerClicked();
57
void
firstLoadConfigTimer();
58
64
void
initEngineSpecific(
EnginePlugin
*engineInfo);
65
void
initGamemodeSpecific(
const
GameMode
&gameMode);
66
67
private
:
68
static
const
QString TEMP_SERVER_CONFIG_FILENAME;
69
70
DPtr<CreateServerDialog>
d;
71
77
void
addIwad(
const
QString& path);
78
84
bool
createHostInfo(
GameCreateParams
& params,
bool
offline);
85
void
createHostInfoDemoRecord(
GameCreateParams
& params,
bool
offline);
86
87
GameMode
currentGameMode()
const
;
88
89
bool
fillInParamsFromPluginPages(
GameCreateParams
¶ms);
90
void
initDMFlagsTabs();
91
97
void
initEngineSpecificPages(
EnginePlugin
* engineInfo);
98
99
void
initInfoAndPassword();
100
101
void
initRules();
102
103
bool
loadConfig(
const
QString& filename,
bool
loadingPrevious);
104
void
runGame(
bool
offline);
105
bool
saveConfig(
const
QString& filename);
106
};
107
108
#endif
GameCreateParams
Game parametrization data used when creating new games.
Definition:
gamecreateparams.h:41
Message
Message object used to pass messages throughout the Doomseeker's system.
Definition:
message.h:62
Server
A representation of a server for a given game.
Definition:
server.h:93
CreateServerDialog
Dialog window allowing user to host a game.
Definition:
createserverdialog.h:39
GameMode
Game mode representation.
Definition:
serverstructs.h:205
CreateServerDialogPage
Base class to be used by plugins to define custom pages in Create Server dialog.
Definition:
createserverdialogpage.h:38
serverstructs.h
DPtr< CreateServerDialog >
EnginePlugin
Definition:
engineplugin.h:69
Doomseeker © 2009-2024 The Doomseeker Team