#include "cell-delegate.h"
+CourseSelectDialog::CourseSelectDialog(QWidget *parent) : QDialog(parent)
+{
+ QWidget *centralWidget = new QWidget(this);
+ createLayout(centralWidget);
+
+ setWindowTitle(tr("ScoreCard: New Club and/or Course"));
+}
+
+void CourseSelectDialog::createLayout(QWidget *parent)
+{
+ labelClub = new QLabel(tr("Club"));
+ labelCourse = new QLabel(tr("Course"));
+ lineEditClub = new QLineEdit;
+ lineEditCourse = new QLineEdit;
+ pushButtonNext = new QPushButton(tr("Next"));
+
+ connect(pushButtonNext, SIGNAL(clicked()), this, SLOT(next()));
+
+ leftLayout = new QVBoxLayout;
+ leftLayout->addWidget(lineEditClub);
+ leftLayout->addWidget(lineEditCourse);
+
+ rightLayout = new QVBoxLayout;
+ rightLayout->addStretch();
+ rightLayout->addWidget(pushButtonNext);
+
+ QHBoxLayout *mainLayout = new QHBoxLayout(parent);
+ mainLayout->addLayout(leftLayout);
+ mainLayout->addLayout(rightLayout);
+
+ setLayout(mainLayout);
+}
+
+void CourseSelectDialog::results(QString &club,
+ QString &course)
+{
+ club = lineEditClub->text();
+ course = lineEditCourse->text();
+}
+
+void CourseSelectDialog::next(void)
+{
+ done(1);
+}
+
CourseDialog::CourseDialog(QWidget *parent) : QDialog(parent)
{
resize(800, 400);
- QFont font;
- font.setPointSize(20);
- setFont(font);
-
createTable();
createLabel();
createLayout(this);
- setWindowTitle(tr("New Course"));
}
void CourseDialog::createLayout(QWidget *parent)
rightLayout = new QVBoxLayout;
rightLayout->addStretch();
- rightLayout->addWidget(pushButtonOk);
+ rightLayout->addWidget(pushButtonFinnish);
QHBoxLayout *mainLayout = new QHBoxLayout(parent);
mainLayout->addLayout(leftLayout);
clubEdit = new QLineEdit;
courseEdit = new QLineEdit;
- pushButtonOk = new QPushButton(tr("OK"));
+ pushButtonFinnish = new QPushButton(tr("Finnish"));
+ connect(pushButtonFinnish, SIGNAL(clicked()), this, SLOT(finnish()));
}
void CourseDialog::createTable(QWidget *parent)
#endif
}
+void CourseDialog::results(QVector<QString> &par,
+ QVector<QString> &hcp,
+ QVector<QString> &len)
+{
+ for (int i = 0; i < 9; i++) {
+ QTableWidgetItem *frontPar = table->item(ROW_PAR, i);
+ QTableWidgetItem *backPar = table->item(ROW_PAR_2, i);
+ QTableWidgetItem *frontHcp = table->item(ROW_HCP, i);
+ QTableWidgetItem *backHcp = table->item(ROW_HCP_2, i);
+ QTableWidgetItem *frontLen = table->item(ROW_LEN, i);
+ QTableWidgetItem *backLen = table->item(ROW_LEN_2, i);
+
+ if (frontPar)
+ par[i] = frontPar->text();
+ if (backPar)
+ par[i+9] = backPar->text();
+ if (frontHcp)
+ hcp[i] = frontHcp->text();
+ if (backHcp)
+ hcp[i+9] = backHcp->text();
+ if (frontLen)
+ len[i] = frontLen->text();
+ if (backLen)
+ len[i+9] = backLen->text();
+ }
+}
+
+// Only par is mandatory
+bool CourseDialog::validate(void)
+{
+ for (int i = 0; i < 9; i++) {
+ QTableWidgetItem *frontItem = table->item(ROW_PAR, i);
+ QTableWidgetItem *backItem = table->item(ROW_PAR_2, i);
+
+ if (!frontItem || !backItem)
+ return false;
+
+ QString str1 = frontItem->text();
+ QString str2 = backItem->text();
+
+ if (str1.isEmpty() || str2.isEmpty())
+ return false;
+ }
+ return true;
+}
+
+void CourseDialog::finnish(void)
+{
+ if (validate())
+ done(1);
+ else {
+ qDebug() << "CourseDialog: invalid data, cancel or correct";
+ }
+}
+
+