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("Select game mode"));
+00046 introLabel->setWordWrap(true);
+00047
+00048 QVBoxLayout* leftLayout = new QVBoxLayout;
+00049 leftLayout->addWidget(titleLabel);
+00050 leftLayout->addWidget(logoLabel);
+00051 leftLayout->addWidget(copyLabel);
+00052
+00053 modeSelect_ = new QListWidget();
+00054 modeSelect_->setViewMode(QListView::IconMode);
+00055 modeSelect_->setMovement(QListView::Static);
+00056 modeSelect_->setSelectionMode(QAbstractItemView::NoSelection);
+00057 modeSelect_->setIconSize(QSize(64,64 ));
+00058
+00059 connect( modeSelect_, SIGNAL(itemClicked(QListWidgetItem*)),this,SLOT(selectControl(QListWidgetItem*)));
+00060
+00061 QVBoxLayout* rightLayout = new QVBoxLayout;
+00062 rightLayout->addWidget(introLabel);
+00063 rightLayout->addWidget(modeSelect_);
+00064
+00065 QHBoxLayout* layout = new QHBoxLayout;
+00066 layout->addLayout(leftLayout);
+00067 layout->addLayout(rightLayout);
+00068
+00069
+00070 setLayout( layout );
+00071 }
+00072
+00073 void StartWidget::addTimeControl(TimeControl *tc)
+00074 {
+00075 timeControls_.append(tc);
+00076 QListWidgetItem* item = new QListWidgetItem(modeSelect_);
+00077 item->setText( tc->getName());
+00078 item->setIcon( tc->getIcon());
+00079
+00080 item->setData(Qt::UserRole, timeControls_.size()-1);
+00081
+00082 }
+00083
+00084 void StartWidget::selectControl(QListWidgetItem *item)
+00085 {
+00086 int index=item->data(Qt::UserRole).toInt();
+00087 TimeControl* tc=timeControls_.at(index);
+00088 emit selected(tc);
+00089
+00090 }
+00091
+