1 #include "carmainwindow.h"
2 #include "ui_carmainwindow.h"
3 #include "stringlistmodel.h"
4 #include <QStandardItemModel>
9 *Constructor of this class.
10 *@param QWidget pointer to parent object. By default the value is NULL.
12 CarMainWindow::CarMainWindow(QWidget *parent):QMainWindow(parent), ui(new Ui::CarMainWindow)
15 result = new ResultDialog();
16 measure = new MeasureDialog();
20 initCategoryCompoBox();
24 *Destructor of this class. Should be used to release all allocated resources.
26 CarMainWindow::~CarMainWindow()
34 *This function is used to .
37 void CarMainWindow::changeEvent(QEvent *e)
39 QMainWindow::changeEvent(e);
41 case QEvent::LanguageChange:
42 ui->retranslateUi(this);
50 *This slot function is called when ever list view is update.
51 *@param QModelIndex index.
53 void CarMainWindow::on_listView_clicked(QModelIndex index)
55 QString str = index.data().toString();
56 QStringList list = str.split("-");
57 QStringList list2 = list[1].split(" ");
59 ui->minLineEdit->setText(list[0]);
60 ui->maxLineEdit->setText(list2[0]);
61 updateUnitCompoBox(list2[1]);
65 *This slot function is called when ever auto start button clicked.
67 void CarMainWindow::on_autoStartButton_clicked()
72 measure = new MeasureDialog();
74 connect(measure, SIGNAL(speedAchieved()), this, SLOT(openResultView()));
75 // Show measure dialog.
80 *This slot function is called when ever list view is update.
83 void CarMainWindow::updateUnitCompoBox(QString unit)
85 ui->unitComboBox->setCurrentIndex(ui->unitComboBox->findText(unit, Qt::MatchExactly));
89 *This function is used to init unit combobox.
91 void CarMainWindow::initUnitCompoBox()
93 units << "km/h" << "km" << "h" << "m" << "min" << "mil" << "in" << "ft" << "yrd";
94 ui->unitComboBox->addItems(units);
98 *This function is used to set items to unit combobox.
99 *@param QStringlist numbers
101 void CarMainWindow::setUnitCompoBox(QStringList units)
103 ui->unitComboBox->addItems(units);
107 *This function is used to init speed listview.
109 void CarMainWindow::initSpeedListView()
111 numbers << "0-100 km/h" << "0-1/4 mil" << "0-50 km" << "50-100 mil" << "0-100 m" << "0-50 ft" << "0-50 yrd" << "0-500 in";
112 QAbstractItemModel *model = new StringListModel(numbers);
113 ui->listView->setModel(model);
117 <<<<<<< HEAD:Client/carmainwindow.cpp
118 *This function is used to set items to speed listview.
119 *@param QStringlist numbers
121 void CarMainWindow::setSpeedListView(QStringList numbers)
123 QAbstractItemModel *model = new StringListModel(numbers);
124 ui->listView->setModel(model);
128 *This function is used to init category combobox.
130 void CarMainWindow::initCategoryCompoBox()
132 categories << "Top 10 1/4 mile" << "Top 10 0-100 km/h" << "Top 10 car";
133 ui->comboBoxTopCategory->addItems(categories);
137 *This function is used to set items to category combobox.
138 *@param QStringlist categories
140 void CarMainWindow::setCategoryCompoBox(QStringList categories)
142 ui->comboBoxTopCategory->addItems(categories);
146 *This slot function is called when ever categories combobox is update.
147 *@param QString category
149 void CarMainWindow::on_comboBoxTopCategory_activated(QString category)
154 topList << "1. Pertti 7,5s" << "2. Ville 10,2s";
156 QAbstractItemModel *model = new StringListModel(topList);
157 ui->listViewTopList->setModel(model);
161 *This slot function is called when speed is achieved in measure dialog. Opens result dialog.
163 void CarMainWindow::openResultView()
165 result->saveMeasuresToArray(measure->measures);
166 // Show result dialog.