00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #include "startwidget.h"
00023 #include "timecontrol.h"
00024
00025 #include <QVBoxLayout>
00026 #include <QHBoxLayout>
00027 #include <QApplication>
00028 #include <QFont>
00029 #include <QLabel>
00030 #include <QListWidgetItem>
00031
00032 StartWidget::StartWidget(QWidget *parent) :
00033 QWidget(parent)
00034 {
00035 QLabel* titleLabel = new QLabel( qApp->applicationName() );
00036 titleLabel->setFont(QFont("Helvetica",32,QFont::Bold));
00037
00038 QLabel* copyLabel = new QLabel( tr("© Arto Hyvättinen 2010<br>Free software GPL3"));
00039 copyLabel->setTextFormat(Qt::RichText);
00040 copyLabel->setWordWrap(true);
00041
00042 QLabel* logoLabel = new QLabel;
00043 logoLabel->setPixmap( QPixmap(":/rc/pic/logo.png"));
00044
00045 QLabel* introLabel = new QLabel( tr("<b>Select game mode →</b>"));
00046 introLabel->setWordWrap(true);
00047
00048 QVBoxLayout* leftLayout = new QVBoxLayout;
00049 leftLayout->addWidget(titleLabel);
00050 leftLayout->addWidget(introLabel);
00051 leftLayout->addWidget(logoLabel);
00052 leftLayout->addWidget(copyLabel);
00053
00054 modeSelect_ = new QListWidget();
00055 modeSelect_->setViewMode(QListView::ListMode);
00056 modeSelect_->setMovement(QListView::Static);
00057 modeSelect_->setSelectionMode(QAbstractItemView::NoSelection);
00058 modeSelect_->setIconSize(QSize(40,40 ));
00059
00060 connect( modeSelect_, SIGNAL(itemClicked(QListWidgetItem*)),this,SLOT(selectControl(QListWidgetItem*)));
00061
00062
00063
00064
00065
00066 QHBoxLayout* layout = new QHBoxLayout;
00067 layout->addLayout(leftLayout);
00068 layout->addWidget(modeSelect_);
00069
00070
00071 setLayout( layout );
00072 }
00073
00074 void StartWidget::addTimeControl(TimeControl *tc)
00075 {
00076 timeControls_.append(tc);
00077 QListWidgetItem* item = new QListWidgetItem(modeSelect_);
00078 item->setText( tc->getName());
00079 item->setIcon( tc->getIcon());
00080
00081 item->setData(Qt::UserRole, timeControls_.size()-1);
00082
00083 }
00084
00085 void StartWidget::selectControl(QListWidgetItem *item)
00086 {
00087 int index=item->data(Qt::UserRole).toInt();
00088 TimeControl* tc=timeControls_.at(index);
00089 emit selected(tc);
00090
00091 }
00092