# HG changeset patch # User koda # Date 1304952989 -7200 # Node ID e1a5f4d5d86a96d51c2d1d166a6b9cff9b71799e # Parent b77f28facca6b9217dd0537caba1e0eb3c19af37 split pages.h into several header files diff -r b77f28facca6 -r e1a5f4d5d86a QTfrontend/CMakeLists.txt --- a/QTfrontend/CMakeLists.txt Sun May 08 21:15:42 2011 +0400 +++ b/QTfrontend/CMakeLists.txt Mon May 09 16:56:29 2011 +0200 @@ -140,6 +140,26 @@ gameuiconfig.h gamecfgwidget.h pages.h + pagenet.h + pagemultiplayer.h + pagenetserver.h + pageingame.h + pagetraining.h + pageeditteam.h + pageoptions.h + pagemain.h + pageinfo.h + pagesingleplayer.h + pagenettype.h + pageconnecting.h + pagedrawmap.h + pagecampaign.h + pagenetgame.h + pageeditteam.h + pageroomslist.h + pageadmin.h + pagescheme.h + pageselectweapon.h SquareLabel.h hedgehogerWidget.h hwmap.h diff -r b77f28facca6 -r e1a5f4d5d86a QTfrontend/gameuiconfig.cpp --- a/QTfrontend/gameuiconfig.cpp Sun May 08 21:15:42 2011 +0400 +++ b/QTfrontend/gameuiconfig.cpp Mon May 09 16:56:29 2011 +0200 @@ -25,7 +25,8 @@ #include "gameuiconfig.h" #include "hwform.h" -#include "pages.h" +#include "pageoptions.h" +#include "pagenetserver.h" #include "hwconsts.h" #include "fpsedit.h" diff -r b77f28facca6 -r e1a5f4d5d86a QTfrontend/hwform.cpp --- a/QTfrontend/hwform.cpp Sun May 08 21:15:42 2011 +0400 +++ b/QTfrontend/hwform.cpp Mon May 09 16:56:29 2011 +0200 @@ -45,7 +45,24 @@ #include "teamselect.h" #include "selectWeapon.h" #include "gameuiconfig.h" -#include "pages.h" +#include "pageinfo.h" +#include "pagetraining.h" +#include "pagesingleplayer.h" +#include "pageselectweapon.h" +#include "pageadmin.h" +#include "pagecampaign.h" +#include "pagescheme.h" +#include "pagenetgame.h" +#include "pageroomslist.h" +#include "pageconnecting.h" +#include "pageoptions.h" +#include "pageeditteam.h" +#include "pagemultiplayer.h" +#include "pagenet.h" +#include "pagemain.h" +#include "pagenetserver.h" +#include "pagedrawmap.h" +#include "pagenettype.h" #include "statsPage.h" #include "hwconsts.h" #include "newnetclient.h" diff -r b77f28facca6 -r e1a5f4d5d86a QTfrontend/newnetclient.cpp --- a/QTfrontend/newnetclient.cpp Sun May 08 21:15:42 2011 +0400 +++ b/QTfrontend/newnetclient.cpp Mon May 09 16:56:29 2011 +0200 @@ -31,7 +31,7 @@ #include "misc.h" /* only to get the ignoreList from the chat widget */ #include "hwform.h" -#include "pages.h" +#include "pageroomslist.h" #include "chatwidget.h" char delimeter='\n'; diff -r b77f28facca6 -r e1a5f4d5d86a QTfrontend/pageadmin.cpp --- a/QTfrontend/pageadmin.cpp Sun May 08 21:15:42 2011 +0400 +++ b/QTfrontend/pageadmin.cpp Mon May 09 16:56:29 2011 +0200 @@ -23,7 +23,7 @@ #include #include -#include "pages.h" +#include "pageadmin.h" #include "chatwidget.h" PageAdmin::PageAdmin(QWidget* parent) : diff -r b77f28facca6 -r e1a5f4d5d86a QTfrontend/pageadmin.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/QTfrontend/pageadmin.h Mon May 09 16:56:29 2011 +0200 @@ -0,0 +1,57 @@ +/* + * Hedgewars, a free turn based strategy game + * Copyright (c) 2006-2011 Andrey Korotaev + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; version 2 of the License + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA + */ + +#ifndef PAGE_ADMIN_H +#define PAGE_ADMIN_H + +#include "pages.h" + +class PageAdmin : public AbstractPage +{ + Q_OBJECT + +public: + PageAdmin(QWidget* parent = 0); + + QPushButton * BtnBack; + QPushButton * pbClearAccountsCache; + +private: + QLineEdit * leServerMessageNew; + QLineEdit * leServerMessageOld; + QPushButton * pbSetSM; + QPushButton * pbAsk; + QSpinBox * sbProtocol; + QTextBrowser * tb; + +private slots: + void smChanged(); + +public slots: + void serverMessageNew(const QString & str); + void serverMessageOld(const QString & str); + void protocol(int proto); + +signals: + void setServerMessageNew(const QString & str); + void setServerMessageOld(const QString & str); + void setProtocol(int proto); + void askServerVars(); +}; + +#endif diff -r b77f28facca6 -r e1a5f4d5d86a QTfrontend/pagecampaign.cpp --- a/QTfrontend/pagecampaign.cpp Sun May 08 21:15:42 2011 +0400 +++ b/QTfrontend/pagecampaign.cpp Mon May 09 16:56:29 2011 +0200 @@ -20,7 +20,7 @@ #include #include -#include "pages.h" +#include "pagecampaign.h" PageCampaign::PageCampaign(QWidget* parent) : AbstractPage(parent) { diff -r b77f28facca6 -r e1a5f4d5d86a QTfrontend/pagecampaign.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/QTfrontend/pagecampaign.h Mon May 09 16:56:29 2011 +0200 @@ -0,0 +1,37 @@ +/* + * Hedgewars, a free turn based strategy game + * Copyright (c) 2006-2011 Andrey Korotaev + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; version 2 of the License + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA + */ + +#ifndef PAGE_CAMPAIGN_H +#define PAGE_CAMPAIGN_H + +#include "pages.h" + +class PageCampaign : public AbstractPage +{ + Q_OBJECT + +public: + PageCampaign(QWidget* parent = 0); + + QPushButton *BtnStartCampaign; + QPushButton *BtnBack; + QComboBox *CBSelect; + QComboBox *CBTeam; +}; + +#endif diff -r b77f28facca6 -r e1a5f4d5d86a QTfrontend/pageconnecting.cpp --- a/QTfrontend/pageconnecting.cpp Sun May 08 21:15:42 2011 +0400 +++ b/QTfrontend/pageconnecting.cpp Mon May 09 16:56:29 2011 +0200 @@ -19,7 +19,7 @@ #include #include -#include "pages.h" +#include "pageconnecting.h" PageConnecting::PageConnecting(QWidget* parent) : AbstractPage(parent) diff -r b77f28facca6 -r e1a5f4d5d86a QTfrontend/pageconnecting.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/QTfrontend/pageconnecting.h Mon May 09 16:56:29 2011 +0200 @@ -0,0 +1,35 @@ +/* + * Hedgewars, a free turn based strategy game + * Copyright (c) 2006-2011 Andrey Korotaev + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; version 2 of the License + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA + */ + +#ifndef PAGE_CONNECTING_H +#define PAGE_CONNECTING_H + +#include "pages.h" + +class PageConnecting : public AbstractPage +{ + Q_OBJECT + +public: + PageConnecting(QWidget* parent = 0); + +signals: + void cancelConnection(); +}; + +#endif diff -r b77f28facca6 -r e1a5f4d5d86a QTfrontend/pagedrawmap.cpp --- a/QTfrontend/pagedrawmap.cpp Sun May 08 21:15:42 2011 +0400 +++ b/QTfrontend/pagedrawmap.cpp Mon May 09 16:56:29 2011 +0200 @@ -20,7 +20,7 @@ #include #include -#include "pages.h" +#include "pagedrawmap.h" #include "drawmapwidget.h" PageDrawMap::PageDrawMap(QWidget* parent) : AbstractPage(parent) diff -r b77f28facca6 -r e1a5f4d5d86a QTfrontend/pagedrawmap.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/QTfrontend/pagedrawmap.h Mon May 09 16:56:29 2011 +0200 @@ -0,0 +1,44 @@ +/* + * Hedgewars, a free turn based strategy game + * Copyright (c) 2006-2011 Andrey Korotaev + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; version 2 of the License + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA + */ + + +#ifndef PAGE_DRAWMAP_H +#define PAGE_DRAWMAP_H + +#include "pages.h" + +class DrawMapWidget; + +class PageDrawMap : public AbstractPage +{ + Q_OBJECT + +public: + PageDrawMap(QWidget* parent = 0); + + QPushButton * BtnBack; + + DrawMapWidget * drawMapWidget; + +private slots: + void load(); + void save(); +}; + +#endif + diff -r b77f28facca6 -r e1a5f4d5d86a QTfrontend/pageeditteam.cpp --- a/QTfrontend/pageeditteam.cpp Sun May 08 21:15:42 2011 +0400 +++ b/QTfrontend/pageeditteam.cpp Mon May 09 16:56:29 2011 +0200 @@ -26,7 +26,7 @@ #include #include -#include "pages.h" +#include "pageeditteam.h" #include "sdlkeys.h" #include "hwconsts.h" #include "SquareLabel.h" diff -r b77f28facca6 -r e1a5f4d5d86a QTfrontend/pageeditteam.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/QTfrontend/pageeditteam.h Mon May 09 16:56:29 2011 +0200 @@ -0,0 +1,65 @@ +/* + * Hedgewars, a free turn based strategy game + * Copyright (c) 2006-2011 Andrey Korotaev + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; version 2 of the License + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA + */ + +#ifndef PAGE_EDITTEAM_H +#define PAGE_EDITTEAM_H + +#include "pages.h" + +class SquareLabel; + +class PageEditTeam : public AbstractPage +{ + Q_OBJECT + +public: + PageEditTeam(QWidget* parent, SDLInteraction * sdli); + QSignalMapper* signalMapper; + QGroupBox *GBoxHedgehogs; + QGroupBox *GBoxTeam; + QGroupBox *GBoxFort; + QComboBox *CBFort; + SquareLabel *FortPreview; + QComboBox *CBGrave; + QComboBox *CBFlag; + QComboBox *CBTeamLvl; + QComboBox *CBVoicepack; + QGroupBox *GBoxBinds; + QToolBox *BindsBox; + QPushButton *BtnTeamDiscard; + QPushButton *BtnTeamSave; + QPushButton * BtnTestSound; + QLineEdit * TeamNameEdit; + QLineEdit * HHNameEdit[8]; + QComboBox * HHHats[8]; + QPushButton * randButton[8]; + QComboBox * CBBind[BINDS_NUMBER]; + QPushButton * randTeamButton; + +private: + SDLInteraction * mySdli; + +public slots: + void CBFort_activated(const QString & gravename); + +private slots: + void testSound(); +}; + +#endif + diff -r b77f28facca6 -r e1a5f4d5d86a QTfrontend/pageinfo.cpp --- a/QTfrontend/pageinfo.cpp Sun May 08 21:15:42 2011 +0400 +++ b/QTfrontend/pageinfo.cpp Mon May 09 16:56:29 2011 +0200 @@ -19,7 +19,7 @@ #include #include -#include "pages.h" +#include "pageinfo.h" #include "about.h" PageInfo::PageInfo(QWidget* parent) : AbstractPage(parent) diff -r b77f28facca6 -r e1a5f4d5d86a QTfrontend/pageinfo.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/QTfrontend/pageinfo.h Mon May 09 16:56:29 2011 +0200 @@ -0,0 +1,38 @@ +/* + * Hedgewars, a free turn based strategy game + * Copyright (c) 2006-2011 Andrey Korotaev + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; version 2 of the License + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA + */ + +#ifndef PAGE_INFO_H +#define PAGE_INFO_H + +#include "pages.h" + +class About; + +class PageInfo : public AbstractPage +{ + Q_OBJECT + +public: + PageInfo(QWidget* parent = 0); + + QPushButton *BtnBack; + About *about; +}; + +#endif + diff -r b77f28facca6 -r e1a5f4d5d86a QTfrontend/pageingame.cpp --- a/QTfrontend/pageingame.cpp Sun May 08 21:15:42 2011 +0400 +++ b/QTfrontend/pageingame.cpp Mon May 09 16:56:29 2011 +0200 @@ -18,7 +18,7 @@ #include -#include "pages.h" +#include "pageingame.h" PageInGame::PageInGame(QWidget* parent) : AbstractPage(parent) @@ -26,3 +26,4 @@ QLabel * label = new QLabel(this); label->setText("In game..."); } + diff -r b77f28facca6 -r e1a5f4d5d86a QTfrontend/pageingame.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/QTfrontend/pageingame.h Mon May 09 16:56:29 2011 +0200 @@ -0,0 +1,33 @@ +/* + * Hedgewars, a free turn based strategy game + * Copyright (c) 2006-2011 Andrey Korotaev + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; version 2 of the License + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA + */ + +#ifndef PAGE_INGAME_H +#define PAGE_INGAME_H + +#include "pages.h" + +class PageInGame : public AbstractPage +{ + Q_OBJECT + +public: + PageInGame(QWidget* parent = 0); +}; + +#endif + diff -r b77f28facca6 -r e1a5f4d5d86a QTfrontend/pagemain.cpp --- a/QTfrontend/pagemain.cpp Sun May 08 21:15:42 2011 +0400 +++ b/QTfrontend/pagemain.cpp Mon May 09 16:56:29 2011 +0200 @@ -21,7 +21,7 @@ #include #include -#include "pages.h" +#include "pagemain.h" #include "hwconsts.h" PageMain::PageMain(QWidget* parent) : diff -r b77f28facca6 -r e1a5f4d5d86a QTfrontend/pagemain.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/QTfrontend/pagemain.h Mon May 09 16:56:29 2011 +0200 @@ -0,0 +1,40 @@ +/* + * Hedgewars, a free turn based strategy game + * Copyright (c) 2006-2011 Andrey Korotaev + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; version 2 of the License + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA + */ + +#ifndef PAGE_MAIN_H +#define PAGE_MAIN_H + +#include "pages.h" + +class PageMain : public AbstractPage +{ + Q_OBJECT + +public: + PageMain(QWidget* parent = 0); + + QPushButton *BtnSinglePlayer; + QPushButton *BtnNet; + QPushButton *BtnSetup; + QPushButton *BtnInfo; + QPushButton *BtnExit; + QLabel *mainNote; +}; + +#endif + diff -r b77f28facca6 -r e1a5f4d5d86a QTfrontend/pagemultiplayer.cpp --- a/QTfrontend/pagemultiplayer.cpp Sun May 08 21:15:42 2011 +0400 +++ b/QTfrontend/pagemultiplayer.cpp Mon May 09 16:56:29 2011 +0200 @@ -19,7 +19,7 @@ #include #include -#include "pages.h" +#include "pagemultiplayer.h" #include "gamecfgwidget.h" #include "teamselect.h" diff -r b77f28facca6 -r e1a5f4d5d86a QTfrontend/pagemultiplayer.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/QTfrontend/pagemultiplayer.h Mon May 09 16:56:29 2011 +0200 @@ -0,0 +1,45 @@ +/* + * Hedgewars, a free turn based strategy game + * Copyright (c) 2006-2011 Andrey Korotaev + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; version 2 of the License + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA + */ + +#ifndef PAGE_MULTIPLAYER_H +#define PAGE_MULTIPLAYER_H + +#include "pages.h" + +class GameCFGWidget; +class TeamSelWidget; + +class PageMultiplayer : public AbstractPage +{ + Q_OBJECT + +public: + PageMultiplayer(QWidget* parent = 0); + + QPushButton *BtnBack; + GameCFGWidget *gameCFG; + TeamSelWidget *teamsSelect; + QPushButton *BtnStartMPGame; + +signals: + void SetupClicked(); +}; + +#endif + + diff -r b77f28facca6 -r e1a5f4d5d86a QTfrontend/pagenet.cpp --- a/QTfrontend/pagenet.cpp Sun May 08 21:15:42 2011 +0400 +++ b/QTfrontend/pagenet.cpp Mon May 09 16:56:29 2011 +0200 @@ -23,7 +23,7 @@ #include #include -#include "pages.h" +#include "pagenet.h" #include "hwconsts.h" #include "netudpwidget.h" diff -r b77f28facca6 -r e1a5f4d5d86a QTfrontend/pagenet.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/QTfrontend/pagenet.h Mon May 09 16:56:29 2011 +0200 @@ -0,0 +1,53 @@ +/* + * Hedgewars, a free turn based strategy game + * Copyright (c) 2006-2011 Andrey Korotaev + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; version 2 of the License + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA + */ + +#ifndef PAGE_NET_H +#define PAGE_NET_H + +#include "pages.h" + +class PageNet : public AbstractPage +{ + Q_OBJECT + +public: + PageNet(QWidget* parent = 0); + + QPushButton* BtnUpdateSList; + QTableView * tvServersList; + QPushButton * BtnBack; + QPushButton * BtnNetConnect; + QPushButton * BtnNetSvrStart; + QPushButton * BtnSpecifyServer; + +private: + QGroupBox * ConnGroupBox; + QGridLayout * GBClayout; + +private slots: + void slotConnect(); + +public slots: + void updateServersList(); + +signals: + void connectClicked(const QString & host, quint16 port); +}; + +#endif + diff -r b77f28facca6 -r e1a5f4d5d86a QTfrontend/pagenetgame.cpp --- a/QTfrontend/pagenetgame.cpp Sun May 08 21:15:42 2011 +0400 +++ b/QTfrontend/pagenetgame.cpp Mon May 09 16:56:29 2011 +0200 @@ -22,7 +22,7 @@ #include #include -#include "pages.h" +#include "pagenetgame.h" #include "gamecfgwidget.h" #include "teamselect.h" #include "chatwidget.h" diff -r b77f28facca6 -r e1a5f4d5d86a QTfrontend/pagenetgame.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/QTfrontend/pagenetgame.h Mon May 09 16:56:29 2011 +0200 @@ -0,0 +1,58 @@ +/* + * Hedgewars, a free turn based strategy game + * Copyright (c) 2006-2011 Andrey Korotaev + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; version 2 of the License + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA + */ + +#ifndef PAGE_NETGAME_H +#define PAGE_NETGAME_H + +#include "pages.h" +class HWChatWidget; + +class PageNetGame : public AbstractPage +{ + Q_OBJECT + +public: + PageNetGame(QWidget* parent, QSettings * config, SDLInteraction * sdli); + + QPushButton *BtnBack; + QPushButton *BtnGo; + QPushButton *BtnMaster; + QPushButton *BtnStart; + QPushButton *BtnUpdate; + + QLineEdit * leRoomName; + + QAction * restrictJoins; + QAction * restrictTeamAdds; + + HWChatWidget* pChatWidget; + + TeamSelWidget* pNetTeamsWidget; + GameCFGWidget* pGameCFG; + +public slots: + void setReadyStatus(bool isReady); + void onUpdateClick(); + void setMasterMode(bool isMaster); + +signals: + void SetupClicked(); + void askForUpdateRoomName(const QString &); +}; + +#endif diff -r b77f28facca6 -r e1a5f4d5d86a QTfrontend/pagenetserver.cpp --- a/QTfrontend/pagenetserver.cpp Sun May 08 21:15:42 2011 +0400 +++ b/QTfrontend/pagenetserver.cpp Mon May 09 16:56:29 2011 +0200 @@ -23,7 +23,7 @@ #include #include -#include "pages.h" +#include "pagenetserver.h" PageNetServer::PageNetServer(QWidget* parent) : AbstractPage(parent) { diff -r b77f28facca6 -r e1a5f4d5d86a QTfrontend/pagenetserver.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/QTfrontend/pagenetserver.h Mon May 09 16:56:29 2011 +0200 @@ -0,0 +1,43 @@ +/* + * Hedgewars, a free turn based strategy game + * Copyright (c) 2006-2011 Andrey Korotaev + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; version 2 of the License + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA + */ + +#ifndef PAGE_NETSERVER_H +#define PAGE_NETSERVER_H + +#include "pages.h" + +class PageNetServer : public AbstractPage +{ + Q_OBJECT + +public: + PageNetServer(QWidget* parent = 0); + + QPushButton *BtnBack; + QPushButton *BtnStart; + QPushButton *BtnDefault; + QLabel *labelSD; + QLineEdit *leServerDescr; + QLabel *labelPort; + QSpinBox *sbPort; + +private slots: + void setDefaultPort(); +}; + +#endif diff -r b77f28facca6 -r e1a5f4d5d86a QTfrontend/pagenettype.cpp --- a/QTfrontend/pagenettype.cpp Sun May 08 21:15:42 2011 +0400 +++ b/QTfrontend/pagenettype.cpp Mon May 09 16:56:29 2011 +0200 @@ -19,7 +19,7 @@ #include #include -#include "pages.h" +#include "pagenettype.h" PageNetType::PageNetType(QWidget* parent) : AbstractPage(parent) { diff -r b77f28facca6 -r e1a5f4d5d86a QTfrontend/pagenettype.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/QTfrontend/pagenettype.h Mon May 09 16:56:29 2011 +0200 @@ -0,0 +1,37 @@ +/* + * Hedgewars, a free turn based strategy game + * Copyright (c) 2006-2011 Andrey Korotaev + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; version 2 of the License + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA + */ + +#ifndef PAGE_NETTYPE_H +#define PAGE_NETTYPE_H + +#include "pages.h" + + +class PageNetType : public AbstractPage +{ + Q_OBJECT + +public: + PageNetType(QWidget* parent = 0); + + QPushButton * BtnBack; + QPushButton * BtnLAN; + QPushButton * BtnOfficialServer; +}; + +#endif diff -r b77f28facca6 -r e1a5f4d5d86a QTfrontend/pageoptions.cpp --- a/QTfrontend/pageoptions.cpp Sun May 08 21:15:42 2011 +0400 +++ b/QTfrontend/pageoptions.cpp Mon May 09 16:56:29 2011 +0200 @@ -28,7 +28,7 @@ #include #include -#include "pages.h" +#include "pageoptions.h" #include "hwconsts.h" #include "fpsedit.h" #include "igbox.h" diff -r b77f28facca6 -r e1a5f4d5d86a QTfrontend/pageoptions.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/QTfrontend/pageoptions.h Mon May 09 16:56:29 2011 +0200 @@ -0,0 +1,89 @@ +/* + * Hedgewars, a free turn based strategy game + * Copyright (c) 2006-2011 Andrey Korotaev + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; version 2 of the License + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA + */ + +#ifndef PAGE_OPTIONS_H +#define PAGE_OPTIONS_H + +#include "pages.h" + +class FPSEdit; + +class PageOptions : public AbstractPage +{ + Q_OBJECT + +public: + PageOptions(QWidget* parent = 0); + + QCheckBox *WeaponTooltip; + QPushButton *WeaponNew; + QPushButton *WeaponEdit; + QPushButton *WeaponDelete; + QComboBox *WeaponsName; + QPushButton *SchemeNew; + QPushButton *SchemeEdit; + QPushButton *SchemeDelete; + QComboBox *SchemesName; + + QComboBox *CBLanguage; + + QPushButton *BtnBack; + IconedGroupBox *teamsBox; + QPushButton *BtnNewTeam; + QPushButton *BtnEditTeam; + QPushButton *BtnDeleteTeam; + QPushButton *BtnAssociateFiles; + QLabel *LblNoEditTeam; + QComboBox *CBTeamName; + IconedGroupBox *AGGroupBox; + QComboBox *CBResolution; + QComboBox *CBStereoMode; + QCheckBox *CBEnableSound; + QCheckBox *CBEnableFrontendSound; + QCheckBox *CBEnableMusic; + QCheckBox *CBEnableFrontendMusic; + QCheckBox *CBFullscreen; + QCheckBox *CBFrontendFullscreen; + QCheckBox *CBShowFPS; + QCheckBox *CBAltDamage; + QCheckBox *CBNameWithDate; +#ifdef __APPLE__ + QCheckBox *CBAutoUpdate; +#endif + + FPSEdit *fpsedit; + QPushButton *BtnSaveOptions; + QLabel *labelNN; + QSpinBox * volumeBox; + QLineEdit *editNetNick; + QSlider *SLQuality; + QCheckBox *CBFrontendEffects; + +private: + bool previousFullscreenValue; + int previousResolutionIndex; + int previousQuality; + +private slots: + void forceFullscreen(int index); + void setFullscreen(void); + void trimNetNick(); +}; + +#endif + diff -r b77f28facca6 -r e1a5f4d5d86a QTfrontend/pageroomslist.cpp --- a/QTfrontend/pageroomslist.cpp Sun May 08 21:15:42 2011 +0400 +++ b/QTfrontend/pageroomslist.cpp Mon May 09 16:56:29 2011 +0200 @@ -26,7 +26,7 @@ #include #include "ammoSchemeModel.h" -#include "pages.h" +#include "pageroomslist.h" #include "hwconsts.h" #include "chatwidget.h" diff -r b77f28facca6 -r e1a5f4d5d86a QTfrontend/pageroomslist.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/QTfrontend/pageroomslist.h Mon May 09 16:56:29 2011 +0200 @@ -0,0 +1,54 @@ + +#ifndef PAGE_ROOMLIST_H +#define PAGE_ROOMLIST_H + +#include "pages.h" + +class HWChatWidget; + +class PageRoomsList : public AbstractPage +{ + Q_OBJECT + +public: + PageRoomsList(QWidget* parent, QSettings * config, SDLInteraction * sdli); + + QLineEdit * roomName; + QLineEdit * searchText; + QTableWidget * roomsList; + QPushButton * BtnBack; + QPushButton * BtnCreate; + QPushButton * BtnJoin; + QPushButton * BtnRefresh; + QPushButton * BtnAdmin; + QPushButton * BtnClear; + QComboBox * CBState; + QComboBox * CBRules; + QComboBox * CBWeapons; + HWChatWidget * chatWidget; + +private: + bool gameInLobby; + QString gameInLobbyName; + QStringList listFromServer; + AmmoSchemeModel * ammoSchemeModel; + +public slots: + void setRoomsList(const QStringList & list); + void setAdmin(bool); + +private slots: + void onCreateClick(); + void onJoinClick(); + void onRefreshClick(); + void onClearClick(); + void onJoinConfirmation(const QString &); + +signals: + void askForCreateRoom(const QString &); + void askForJoinRoom(const QString &); + void askForRoomList(); + void askJoinConfirmation(const QString &); +}; + +#endif diff -r b77f28facca6 -r e1a5f4d5d86a QTfrontend/pages.h --- a/QTfrontend/pages.h Sun May 08 21:15:42 2011 +0400 +++ b/QTfrontend/pages.h Mon May 09 16:56:29 2011 +0200 @@ -50,19 +50,6 @@ class QSettings; class QSlider; -class GameCFGWidget; -class TeamSelWidget; -class DemosList; -class SquareLabel; -class About; -class FPSEdit; -class HWChatWidget; -class SelWeaponWidget; -class IconedGroupBox; -class FreqSpinBox; - -class DrawMapWidget; - class AbstractPage : public QWidget { Q_OBJECT @@ -136,485 +123,4 @@ QFont * font14; }; -class PageMain : public AbstractPage -{ - Q_OBJECT - -public: - PageMain(QWidget* parent = 0); - - QPushButton *BtnSinglePlayer; - QPushButton *BtnNet; - QPushButton *BtnSetup; - QPushButton *BtnInfo; - QPushButton *BtnExit; - QLabel *mainNote; -}; - -class PageEditTeam : public AbstractPage -{ - Q_OBJECT - -public: - PageEditTeam(QWidget* parent, SDLInteraction * sdli); - QSignalMapper* signalMapper; - QGroupBox *GBoxHedgehogs; - QGroupBox *GBoxTeam; - QGroupBox *GBoxFort; - QComboBox *CBFort; - SquareLabel *FortPreview; - QComboBox *CBGrave; - QComboBox *CBFlag; - QComboBox *CBTeamLvl; - QComboBox *CBVoicepack; - QGroupBox *GBoxBinds; - QToolBox *BindsBox; - QPushButton *BtnTeamDiscard; - QPushButton *BtnTeamSave; - QPushButton * BtnTestSound; - QLineEdit * TeamNameEdit; - QLineEdit * HHNameEdit[8]; - QComboBox * HHHats[8]; - QPushButton * randButton[8]; - QComboBox * CBBind[BINDS_NUMBER]; - QPushButton * randTeamButton; - -private: - SDLInteraction * mySdli; - -public slots: - void CBFort_activated(const QString & gravename); - -private slots: - void testSound(); -}; - -class PageMultiplayer : public AbstractPage -{ - Q_OBJECT - -public: - PageMultiplayer(QWidget* parent = 0); - - QPushButton *BtnBack; - GameCFGWidget *gameCFG; - TeamSelWidget *teamsSelect; - QPushButton *BtnStartMPGame; - -signals: - void SetupClicked(); -}; - -class PageOptions : public AbstractPage -{ - Q_OBJECT - -public: - PageOptions(QWidget* parent = 0); - - QCheckBox *WeaponTooltip; - QPushButton *WeaponNew; - QPushButton *WeaponEdit; - QPushButton *WeaponDelete; - QComboBox *WeaponsName; - QPushButton *SchemeNew; - QPushButton *SchemeEdit; - QPushButton *SchemeDelete; - QComboBox *SchemesName; - - QComboBox *CBLanguage; - - QPushButton *BtnBack; - IconedGroupBox *teamsBox; - QPushButton *BtnNewTeam; - QPushButton *BtnEditTeam; - QPushButton *BtnDeleteTeam; - QPushButton *BtnAssociateFiles; - QLabel *LblNoEditTeam; - QComboBox *CBTeamName; - IconedGroupBox *AGGroupBox; - QComboBox *CBResolution; - QComboBox *CBStereoMode; - QCheckBox *CBEnableSound; - QCheckBox *CBEnableFrontendSound; - QCheckBox *CBEnableMusic; - QCheckBox *CBEnableFrontendMusic; - QCheckBox *CBFullscreen; - QCheckBox *CBFrontendFullscreen; - QCheckBox *CBShowFPS; - QCheckBox *CBAltDamage; - QCheckBox *CBNameWithDate; -#ifdef __APPLE__ - QCheckBox *CBAutoUpdate; -#endif - - FPSEdit *fpsedit; - QPushButton *BtnSaveOptions; - QLabel *labelNN; - QSpinBox * volumeBox; - QLineEdit *editNetNick; - QSlider *SLQuality; - QCheckBox *CBFrontendEffects; - -private: - bool previousFullscreenValue; - int previousResolutionIndex; - int previousQuality; - -private slots: - void forceFullscreen(int index); - void setFullscreen(void); - void trimNetNick(); -}; - -class PageNet : public AbstractPage -{ - Q_OBJECT - -public: - PageNet(QWidget* parent = 0); - - QPushButton* BtnUpdateSList; - QTableView * tvServersList; - QPushButton * BtnBack; - QPushButton * BtnNetConnect; - QPushButton * BtnNetSvrStart; - QPushButton * BtnSpecifyServer; - -private: - QGroupBox * ConnGroupBox; - QGridLayout * GBClayout; - -private slots: - void slotConnect(); - -public slots: - void updateServersList(); - -signals: - void connectClicked(const QString & host, quint16 port); -}; - -class PageNetServer : public AbstractPage -{ - Q_OBJECT - -public: - PageNetServer(QWidget* parent = 0); - - QPushButton *BtnBack; - QPushButton *BtnStart; - QPushButton *BtnDefault; - QLabel *labelSD; - QLineEdit *leServerDescr; - QLabel *labelPort; - QSpinBox *sbPort; - -private slots: - void setDefaultPort(); -}; - -class PageNetGame : public AbstractPage -{ - Q_OBJECT - -public: - PageNetGame(QWidget* parent, QSettings * config, SDLInteraction * sdli); - - QPushButton *BtnBack; - QPushButton *BtnGo; - QPushButton *BtnMaster; - QPushButton *BtnStart; - QPushButton *BtnUpdate; - - QLineEdit * leRoomName; - - QAction * restrictJoins; - QAction * restrictTeamAdds; - - HWChatWidget* pChatWidget; - - TeamSelWidget* pNetTeamsWidget; - GameCFGWidget* pGameCFG; - -public slots: - void setReadyStatus(bool isReady); - void onUpdateClick(); - void setMasterMode(bool isMaster); - -signals: - void SetupClicked(); - void askForUpdateRoomName(const QString &); -}; - -class PageInfo : public AbstractPage -{ - Q_OBJECT - -public: - PageInfo(QWidget* parent = 0); - - QPushButton *BtnBack; - About *about; -}; - -class PageSinglePlayer : public AbstractPage -{ - Q_OBJECT - -public: - PageSinglePlayer(QWidget* parent = 0); - - QPushButton *BtnSimpleGamePage; - QPushButton *BtnTrainPage; - QPushButton *BtnCampaignPage; - QPushButton *BtnMultiplayer; - QPushButton *BtnLoad; - QPushButton *BtnDemos; - QPushButton *BtnBack; - GameCFGWidget *gameCFG; -}; - -class PageTraining : public AbstractPage -{ - Q_OBJECT - -public: - PageTraining(QWidget* parent = 0); - - QPushButton *BtnStartTrain; - QPushButton *BtnBack; - QComboBox *CBSelect; -}; - -class PageCampaign : public AbstractPage -{ - Q_OBJECT - -public: - PageCampaign(QWidget* parent = 0); - - QPushButton *BtnStartCampaign; - QPushButton *BtnBack; - QComboBox *CBSelect; - QComboBox *CBTeam; -}; - -class PageSelectWeapon : public AbstractPage -{ - Q_OBJECT - -public: - PageSelectWeapon(QWidget* parent = 0); - - QPushButton *BtnSave; - QPushButton *BtnDefault; - QPushButton *BtnDelete; - QPushButton *BtnNew; - QPushButton *BtnCopy; - QPushButton *BtnBack; - SelWeaponWidget* pWeapons; - QComboBox* selectWeaponSet; -}; - -class PageInGame : public AbstractPage -{ - Q_OBJECT - -public: - PageInGame(QWidget* parent = 0); -}; - -class PageRoomsList : public AbstractPage -{ - Q_OBJECT - -public: - PageRoomsList(QWidget* parent, QSettings * config, SDLInteraction * sdli); - - QLineEdit * roomName; - QLineEdit * searchText; - QTableWidget * roomsList; - QPushButton * BtnBack; - QPushButton * BtnCreate; - QPushButton * BtnJoin; - QPushButton * BtnRefresh; - QPushButton * BtnAdmin; - QPushButton * BtnClear; - QComboBox * CBState; - QComboBox * CBRules; - QComboBox * CBWeapons; - HWChatWidget * chatWidget; - -private: - bool gameInLobby; - QString gameInLobbyName; - QStringList listFromServer; - AmmoSchemeModel * ammoSchemeModel; - -public slots: - void setRoomsList(const QStringList & list); - void setAdmin(bool); - -private slots: - void onCreateClick(); - void onJoinClick(); - void onRefreshClick(); - void onClearClick(); - void onJoinConfirmation(const QString &); - -signals: - void askForCreateRoom(const QString &); - void askForJoinRoom(const QString &); - void askForRoomList(); - void askJoinConfirmation(const QString &); -}; - -class PageConnecting : public AbstractPage -{ - Q_OBJECT - -public: - PageConnecting(QWidget* parent = 0); - -signals: - void cancelConnection(); -}; - -class PageScheme : public AbstractPage -{ - Q_OBJECT - -public: - PageScheme(QWidget* parent = 0); - - QPushButton * BtnBack; - QPushButton * BtnCopy; - QPushButton * BtnNew; - QPushButton * BtnDelete; - QPushButton * BtnSave; - QComboBox * selectScheme; - - void setModel(QAbstractItemModel * model); - -public slots: - void newRow(); - void copyRow(); - void deleteRow(); - -private: - QDataWidgetMapper * mapper; - ToggleButtonWidget * TBW_mode_Forts; - ToggleButtonWidget * TBW_teamsDivide; - ToggleButtonWidget * TBW_solid; - ToggleButtonWidget * TBW_border; - ToggleButtonWidget * TBW_lowGravity; - ToggleButtonWidget * TBW_laserSight; - ToggleButtonWidget * TBW_invulnerable; - ToggleButtonWidget * TBW_resethealth; - ToggleButtonWidget * TBW_vampiric; - ToggleButtonWidget * TBW_karma; - ToggleButtonWidget * TBW_artillery; - ToggleButtonWidget * TBW_randomorder; - ToggleButtonWidget * TBW_king; - ToggleButtonWidget * TBW_placehog; - ToggleButtonWidget * TBW_sharedammo; - ToggleButtonWidget * TBW_disablegirders; - ToggleButtonWidget * TBW_disablelandobjects; - ToggleButtonWidget * TBW_aisurvival; - ToggleButtonWidget * TBW_infattack; - ToggleButtonWidget * TBW_resetweps; - ToggleButtonWidget * TBW_perhogammo; - ToggleButtonWidget * TBW_nowind; - ToggleButtonWidget * TBW_morewind; - ToggleButtonWidget * TBW_tagteam; - - QSpinBox * SB_DamageModifier; - QSpinBox * SB_TurnTime; - QSpinBox * SB_InitHealth; - QSpinBox * SB_SuddenDeath; - QSpinBox * SB_WaterRise; - QSpinBox * SB_HealthDecrease; - FreqSpinBox * SB_CaseProb; - QSpinBox * SB_HealthCrates; - QSpinBox * SB_CrateHealth; - QSpinBox * SB_MinesTime; - QSpinBox * SB_Mines; - QSpinBox * SB_MineDuds; - QSpinBox * SB_Explosives; - QSpinBox * SB_RopeModifier; - QSpinBox * SB_GetAwayTime; - QLineEdit * LE_name; - - QGroupBox * gbGameModes; - QGroupBox * gbBasicSettings; - -private slots: - void schemeSelected(int); - -}; - -class PageAdmin : public AbstractPage -{ - Q_OBJECT - -public: - PageAdmin(QWidget* parent = 0); - - QPushButton * BtnBack; - QPushButton * pbClearAccountsCache; - -private: - QLineEdit * leServerMessageNew; - QLineEdit * leServerMessageOld; - QPushButton * pbSetSM; - QPushButton * pbAsk; - QSpinBox * sbProtocol; - QTextBrowser * tb; - -private slots: - void smChanged(); - -public slots: - void serverMessageNew(const QString & str); - void serverMessageOld(const QString & str); - void protocol(int proto); - -signals: - void setServerMessageNew(const QString & str); - void setServerMessageOld(const QString & str); - void setProtocol(int proto); - void askServerVars(); -}; - - -class PageNetType : public AbstractPage -{ - Q_OBJECT - -public: - PageNetType(QWidget* parent = 0); - - QPushButton * BtnBack; - QPushButton * BtnLAN; - QPushButton * BtnOfficialServer; -}; - - -class PageDrawMap : public AbstractPage -{ - Q_OBJECT - -public: - PageDrawMap(QWidget* parent = 0); - - QPushButton * BtnBack; - - DrawMapWidget * drawMapWidget; - -private slots: - void load(); - void save(); -}; - #endif // PAGES_H diff -r b77f28facca6 -r e1a5f4d5d86a QTfrontend/pagescheme.cpp --- a/QTfrontend/pagescheme.cpp Sun May 08 21:15:42 2011 +0400 +++ b/QTfrontend/pagescheme.cpp Mon May 09 16:56:29 2011 +0200 @@ -27,7 +27,7 @@ #include #include "ammoSchemeModel.h" -#include "pages.h" +#include "pagescheme.h" #include "misc.h" PageScheme::PageScheme(QWidget* parent) : diff -r b77f28facca6 -r e1a5f4d5d86a QTfrontend/pagescheme.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/QTfrontend/pagescheme.h Mon May 09 16:56:29 2011 +0200 @@ -0,0 +1,99 @@ +/* + * Hedgewars, a free turn based strategy game + * Copyright (c) 2006-2011 Andrey Korotaev + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; version 2 of the License + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA + */ + +#ifndef PAGE_SCHEME_H +#define PAGE_SCHEME_H + +#include "pages.h" + +class FreqSpinBox; + +class PageScheme : public AbstractPage +{ + Q_OBJECT + +public: + PageScheme(QWidget* parent = 0); + + QPushButton * BtnBack; + QPushButton * BtnCopy; + QPushButton * BtnNew; + QPushButton * BtnDelete; + QPushButton * BtnSave; + QComboBox * selectScheme; + + void setModel(QAbstractItemModel * model); + +public slots: + void newRow(); + void copyRow(); + void deleteRow(); + +private: + QDataWidgetMapper * mapper; + ToggleButtonWidget * TBW_mode_Forts; + ToggleButtonWidget * TBW_teamsDivide; + ToggleButtonWidget * TBW_solid; + ToggleButtonWidget * TBW_border; + ToggleButtonWidget * TBW_lowGravity; + ToggleButtonWidget * TBW_laserSight; + ToggleButtonWidget * TBW_invulnerable; + ToggleButtonWidget * TBW_resethealth; + ToggleButtonWidget * TBW_vampiric; + ToggleButtonWidget * TBW_karma; + ToggleButtonWidget * TBW_artillery; + ToggleButtonWidget * TBW_randomorder; + ToggleButtonWidget * TBW_king; + ToggleButtonWidget * TBW_placehog; + ToggleButtonWidget * TBW_sharedammo; + ToggleButtonWidget * TBW_disablegirders; + ToggleButtonWidget * TBW_disablelandobjects; + ToggleButtonWidget * TBW_aisurvival; + ToggleButtonWidget * TBW_infattack; + ToggleButtonWidget * TBW_resetweps; + ToggleButtonWidget * TBW_perhogammo; + ToggleButtonWidget * TBW_nowind; + ToggleButtonWidget * TBW_morewind; + ToggleButtonWidget * TBW_tagteam; + + QSpinBox * SB_DamageModifier; + QSpinBox * SB_TurnTime; + QSpinBox * SB_InitHealth; + QSpinBox * SB_SuddenDeath; + QSpinBox * SB_WaterRise; + QSpinBox * SB_HealthDecrease; + FreqSpinBox * SB_CaseProb; + QSpinBox * SB_HealthCrates; + QSpinBox * SB_CrateHealth; + QSpinBox * SB_MinesTime; + QSpinBox * SB_Mines; + QSpinBox * SB_MineDuds; + QSpinBox * SB_Explosives; + QSpinBox * SB_RopeModifier; + QSpinBox * SB_GetAwayTime; + QLineEdit * LE_name; + + QGroupBox * gbGameModes; + QGroupBox * gbBasicSettings; + +private slots: + void schemeSelected(int); + +}; + +#endif diff -r b77f28facca6 -r e1a5f4d5d86a QTfrontend/pageselectweapon.cpp --- a/QTfrontend/pageselectweapon.cpp Sun May 08 21:15:42 2011 +0400 +++ b/QTfrontend/pageselectweapon.cpp Mon May 09 16:56:29 2011 +0200 @@ -20,7 +20,7 @@ #include #include -#include "pages.h" +#include "pageselectweapon.h" #include "hwconsts.h" #include "selectWeapon.h" diff -r b77f28facca6 -r e1a5f4d5d86a QTfrontend/pageselectweapon.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/QTfrontend/pageselectweapon.h Mon May 09 16:56:29 2011 +0200 @@ -0,0 +1,43 @@ +/* + * Hedgewars, a free turn based strategy game + * Copyright (c) 2006-2011 Andrey Korotaev + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; version 2 of the License + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA + */ + +#ifndef PAGE_SELECTWEAPON_H +#define PAGE_SELECTWEAPON_H + +#include "pages.h" + +class SelWeaponWidget; + +class PageSelectWeapon : public AbstractPage +{ + Q_OBJECT + +public: + PageSelectWeapon(QWidget* parent = 0); + + QPushButton *BtnSave; + QPushButton *BtnDefault; + QPushButton *BtnDelete; + QPushButton *BtnNew; + QPushButton *BtnCopy; + QPushButton *BtnBack; + SelWeaponWidget* pWeapons; + QComboBox* selectWeaponSet; +}; + +#endif diff -r b77f28facca6 -r e1a5f4d5d86a QTfrontend/pagesingleplayer.cpp --- a/QTfrontend/pagesingleplayer.cpp Sun May 08 21:15:42 2011 +0400 +++ b/QTfrontend/pagesingleplayer.cpp Mon May 09 16:56:29 2011 +0200 @@ -19,7 +19,7 @@ #include #include -#include "pages.h" +#include "pagesingleplayer.h" #include "gamecfgwidget.h" PageSinglePlayer::PageSinglePlayer(QWidget* parent) : AbstractPage(parent) diff -r b77f28facca6 -r e1a5f4d5d86a QTfrontend/pagesingleplayer.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/QTfrontend/pagesingleplayer.h Mon May 09 16:56:29 2011 +0200 @@ -0,0 +1,44 @@ +/* + * Hedgewars, a free turn based strategy game + * Copyright (c) 2006-2011 Andrey Korotaev + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; version 2 of the License + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA + */ + +#ifndef PAGE_SINGLE_PLAYER_H +#define PAGE_SINGLE_PLAYER_H + +#include "pages.h" + +class GameCFGWidget; + +class PageSinglePlayer : public AbstractPage +{ + Q_OBJECT + +public: + PageSinglePlayer(QWidget* parent = 0); + + QPushButton *BtnSimpleGamePage; + QPushButton *BtnTrainPage; + QPushButton *BtnCampaignPage; + QPushButton *BtnMultiplayer; + QPushButton *BtnLoad; + QPushButton *BtnDemos; + QPushButton *BtnBack; + GameCFGWidget *gameCFG; +}; + +#endif + diff -r b77f28facca6 -r e1a5f4d5d86a QTfrontend/pagetraining.cpp --- a/QTfrontend/pagetraining.cpp Sun May 08 21:15:42 2011 +0400 +++ b/QTfrontend/pagetraining.cpp Mon May 09 16:56:29 2011 +0200 @@ -20,7 +20,7 @@ #include #include -#include "pages.h" +#include "pagetraining.h" #include "hwconsts.h" PageTraining::PageTraining(QWidget* parent) : AbstractPage(parent) diff -r b77f28facca6 -r e1a5f4d5d86a QTfrontend/pagetraining.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/QTfrontend/pagetraining.h Mon May 09 16:56:29 2011 +0200 @@ -0,0 +1,37 @@ +/* + * Hedgewars, a free turn based strategy game + * Copyright (c) 2006-2011 Andrey Korotaev + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; version 2 of the License + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA + */ + +#ifndef PAGE_TRAINING_H +#define PAGE_TRAINING_H + +#include "pages.h" + +class PageTraining : public AbstractPage +{ + Q_OBJECT + +public: + PageTraining(QWidget* parent = 0); + + QPushButton *BtnStartTrain; + QPushButton *BtnBack; + QComboBox *CBSelect; +}; + +#endif + diff -r b77f28facca6 -r e1a5f4d5d86a QTfrontend/team.cpp --- a/QTfrontend/team.cpp Sun May 08 21:15:42 2011 +0400 +++ b/QTfrontend/team.cpp Mon May 09 16:56:29 2011 +0200 @@ -25,7 +25,7 @@ #include #include "team.h" #include "hwform.h" -#include "pages.h" +#include "pageeditteam.h" #include "hwconsts.h" #include "hats.h" diff -r b77f28facca6 -r e1a5f4d5d86a QTfrontend/ui_hwform.cpp --- a/QTfrontend/ui_hwform.cpp Sun May 08 21:15:42 2011 +0400 +++ b/QTfrontend/ui_hwform.cpp Mon May 09 16:56:29 2011 +0200 @@ -23,7 +23,25 @@ #include "ui_hwform.h" #include "hwform.h" -#include "pages.h" +#include "pagenet.h" +#include "pagetraining.h" +#include "pagenetserver.h" +#include "pageoptions.h" +#include "pageingame.h" +#include "pagescheme.h" +#include "pagenettype.h" +#include "pageroomslist.h" +#include "pageinfo.h" +#include "pagenetgame.h" +#include "pageeditteam.h" +#include "pagedrawmap.h" +#include "pageadmin.h" +#include "pageconnecting.h" +#include "pagemultiplayer.h" +#include "pagesingleplayer.h" +#include "pageselectweapon.h" +#include "pagecampaign.h" +#include "pagemain.h" #include "statsPage.h" #include "playrecordpage.h" #include "hwconsts.h"