# HG changeset patch # User sheepluva # Date 1316999529 -7200 # Node ID 58d9badf3e7f771d003e8bb1eef169fd77880245 # Parent 727d13409891439408dd6a0c0fb4a8ca76a71890 wow, somebody was smoking some reaaally good sh!t right there, man! diff -r 727d13409891 -r 58d9badf3e7f QTfrontend/AbstractPage.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/QTfrontend/AbstractPage.cpp Mon Sep 26 03:12:09 2011 +0200 @@ -0,0 +1,70 @@ +/* + * 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 + */ + +#include "AbstractPage.h" + +AbstractPage::AbstractPage(QWidget* parent) +{ + Q_UNUSED(parent); + + font14 = new QFont("MS Shell Dlg", 14); +} + +QPushButton * AbstractPage::formattedButton(const QString & btname, bool hasIcon) +{ + QPushButton* btn = new QPushButton(this); + + if (hasIcon) + { + const QIcon& lp=QIcon(btname); + QSize sz = lp.actualSize(QSize(65535, 65535)); + btn->setIcon(lp); + btn->setFixedSize(sz); + btn->setIconSize(sz); + btn->setFlat(true); + btn->setSizePolicy(QSizePolicy::Fixed, QSizePolicy::Fixed); + } + else + { + btn->setFont(*font14); + btn->setText(btname); + } + return btn; +} + +QPushButton * AbstractPage::addButton(const QString & btname, QGridLayout* grid, int wy, int wx, bool hasIcon) +{ + QPushButton* btn = formattedButton(btname, hasIcon); + grid->addWidget(btn, wy, wx); + return btn; +} + +QPushButton * AbstractPage::addButton(const QString & btname, QGridLayout* grid, int wy, int wx, int rowSpan, int columnSpan, bool hasIcon) +{ + QPushButton* btn = formattedButton(btname, hasIcon); + grid->addWidget(btn, wy, wx, rowSpan, columnSpan); + return btn; +} + +QPushButton * AbstractPage::addButton(const QString & btname, QBoxLayout* box, int where, bool hasIcon) +{ + QPushButton* btn = formattedButton(btname, hasIcon); + box->addWidget(btn, where); + return btn; +} + diff -r 727d13409891 -r 58d9badf3e7f QTfrontend/AbstractPage.h --- a/QTfrontend/AbstractPage.h Mon Sep 26 00:15:10 2011 +0200 +++ b/QTfrontend/AbstractPage.h Mon Sep 26 03:12:09 2011 +0200 @@ -45,79 +45,28 @@ class QAbstractItemModel; class QSettings; class QSlider; +class QGridlayout; class AbstractPage : public QWidget { Q_OBJECT - signals: - void goBack(); - - protected: - AbstractPage(QWidget* parent = 0) { - Q_UNUSED(parent); - - font14 = new QFont("MS Shell Dlg", 14); - //setFocusPolicy(Qt::StrongFocus); - } - virtual ~AbstractPage() {}; + signals: + void goBack(); - QPushButton* addButton(QString btname, QGridLayout* grid, int wy, int wx, bool iconed = false) { - QPushButton* butt = new QPushButton(this); - if (!iconed) { - butt->setFont(*font14); - butt->setText(btname); - //butt->setStyleSheet("background-color: #0d0544"); - } else { - const QIcon& lp=QIcon(btname); - QSize sz = lp.actualSize(QSize(65535, 65535)); - butt->setIcon(lp); - butt->setFixedSize(sz); - butt->setIconSize(sz); - butt->setFlat(true); - butt->setSizePolicy(QSizePolicy::Fixed, QSizePolicy::Fixed); - } - grid->addWidget(butt, wy, wx); - return butt; - }; + protected: + // constructor and virtual destructor + AbstractPage(QWidget* parent = 0); + virtual ~AbstractPage() {}; - QPushButton* addButton(QString btname, QGridLayout* grid, int wy, int wx, int rowSpan, int columnSpan, bool iconed = false) { - QPushButton* butt = new QPushButton(this); - if (!iconed) { - butt->setFont(*font14); - butt->setText(btname); - } else { - const QIcon& lp=QIcon(btname); - QSize sz = lp.actualSize(QSize(65535, 65535)); - butt->setIcon(lp); - butt->setFixedSize(sz); - butt->setIconSize(sz); - butt->setFlat(true); - butt->setSizePolicy(QSizePolicy::Fixed, QSizePolicy::Fixed); - } - grid->addWidget(butt, wy, wx, rowSpan, columnSpan); - return butt; - }; + 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); - QPushButton* addButton(QString btname, QBoxLayout* box, int where, bool iconed = false) { - QPushButton* butt = new QPushButton(this); - if (!iconed) { - butt->setFont(*font14); - butt->setText(btname); - } else { - const QIcon& lp=QIcon(btname); - QSize sz = lp.actualSize(QSize(65535, 65535)); - butt->setIcon(lp); - butt->setFixedSize(sz); - butt->setIconSize(sz); - butt->setFlat(true); - butt->setSizePolicy(QSizePolicy::Fixed, QSizePolicy::Fixed); - } - box->addWidget(butt, where); - return butt; - }; + QFont * font14; - QFont * font14; + private: + QPushButton * formattedButton(const QString & btname, bool hasIcon); }; #endif diff -r 727d13409891 -r 58d9badf3e7f QTfrontend/CMakeLists.txt --- a/QTfrontend/CMakeLists.txt Mon Sep 26 00:15:10 2011 +0200 +++ b/QTfrontend/CMakeLists.txt Mon Sep 26 03:12:09 2011 +0200 @@ -71,6 +71,7 @@ gameuiconfig.cpp ui_hwform.cpp gamecfgwidget.cpp + AbstractPage.cpp pagemain.cpp pageeditteam.cpp pagemultiplayer.cpp