diff -r 2d5717595471 -r a80833ddaef0 QTfrontend/AbstractPage.h --- a/QTfrontend/AbstractPage.h Fri Oct 21 20:58:49 2011 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,96 +0,0 @@ -/* - * 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 ABSTRACTPAGE_H -#define ABSTRACTPAGE_H - -#include -#include -#include -#include -#include -#include - -class QPushButton; -class QGroupBox; -class QComboBox; -class QLabel; -class QToolBox; -class QLineEdit; -class QListWidget; -class QCheckBox; -class QSpinBox; -class QTextEdit; -class QRadioButton; -class QTableView; -class QTextBrowser; -class QTableWidget; -class QAction; -class QDataWidgetMapper; -class QAbstractItemModel; -class QSettings; -class QSlider; -class QGridlayout; - -class AbstractPage : public QWidget -{ - Q_OBJECT - - signals: - void goBack(); - - protected: - // constructor and virtual destructor - AbstractPage(QWidget * parent = 0); - - // call this in the constructor of your subclass - void initPage(); - - // the following methods are used during page construction - - // you MUST implement this method in your subclass - // only define layout, not behavior in here - virtual QLayout * bodyLayoutDefinition() = 0; - - // you CAN implement this method in your subclass - virtual QLayout * footerLayoutDefinition() { return NULL; }; - - // you CAN but most likely want to implement this method in your subclass - // keep in mind not to expose twidgets as public! - // instead define a signal with a meaningful name and connect the widget - // signals to your page signals - virtual void connectSignals() {}; - - virtual ~AbstractPage() {}; - - QPushButton * formattedButton(const QString & btname, bool hasIcon = false); - QPushButton * addButton(const QString & btname, QGridLayout * grid, int wy, int wx, bool hasIcon = false); - QPushButton * addButton(const QString & btname, QGridLayout * grid, int wy, int wx, int rowSpan, int columnSpan, bool hasIcon = false); - QPushButton * addButton(const QString & btname, QBoxLayout * box, int where, bool hasIcon = false); - - void setBackButtonVisible(bool visible = true); - - QFont * font14; - - private: - - QPushButton * btnBack; -}; - -#endif -