#include "windowrennliste.h" #include "ui_windowrennliste.h" #include #include #include #include using std::vector; using std::string; WindowRennliste::WindowRennliste(DataBase *db, QWidget *parent) : QMainWindow(parent), ui(new Ui::WindowRennliste) { this->selectedRow = 0; ui->setupUi(this); this->ui->tWRennliste->setSelectionBehavior(QAbstractItemView::SelectRows); this->ui->tWRennliste->setSelectionMode(QAbstractItemView::SingleSelection); this->db = db; string statement; vector< vector > fahrer, autos, rennid; statement = "select id_rennen from aktrennen group by id_rennen order by id_rennen DESC limit 1"; rennid = this->db->getData(statement, 1); statement = "select fahrershellid, autoshellid, fahrerdeaid, autodeaid from aktrennen where id_rennen like "+rennid[0][0].toStdString(); tableData = db->getData(statement, 4); this->ui->tWRennliste->setRowCount(this->tableData.size()); this->ui->tWRennliste->setColumnCount(6); QStringList header; header<< "Fahrer" << "Auto"<< "Zeit"<< "Fahrer"<< "Auto"<< "Zeit"; this->ui->tWRennliste->setHorizontalHeaderLabels(header); for(int i = 0; i < this->ui->tWRennliste->horizontalHeader()->count();i++){ this->ui->tWRennliste->horizontalHeader()->setSectionResizeMode(i, QHeaderView::Stretch); } for(unsigned int i = 0; i < tableData.size(); i++){ statement = "select name from fahrer where id like " + tableData[i][0].toStdString(); fahrer = this->db->getData(statement, 1); this->ui->tWRennliste->setItem(i, 0, new QTableWidgetItem(fahrer[0][0])); this->ui->tWRennliste->item(i,0)->setFlags(Qt::ItemIsEnabled); statement = "select name from AutoKonfiguration where id like " + tableData[i][1].toStdString()+" order by seit DESC"; autos = this->db->getData(statement, 1); this->ui->tWRennliste->setItem(i, 1, new QTableWidgetItem(autos[0][0])); this->ui->tWRennliste->item(i,1)->setFlags(Qt::ItemIsEnabled); this->ui->tWRennliste->setItem(i, 2, new QTableWidgetItem()); statement = "select name from fahrer where id like " + tableData[i][2].toStdString(); fahrer = this->db->getData(statement, 1); this->ui->tWRennliste->setItem(i, 3, new QTableWidgetItem(fahrer[0][0])); this->ui->tWRennliste->item(i,3)->setFlags(Qt::ItemIsEnabled); statement = "select name from AutoKonfiguration where id like " + tableData[i][3].toStdString()+" order by seit DESC"; autos = this->db->getData(statement, 1); this->ui->tWRennliste->setItem(i, 4, new QTableWidgetItem(autos[0][0])); this->ui->tWRennliste->item(i,4)->setFlags(Qt::ItemIsEnabled); this->ui->tWRennliste->setItem(i, 5, new QTableWidgetItem()); } for(int i = 0; i < 6; i++){ this->ui->tWRennliste->item(0, i)->setBackground(Qt::green); } } void WindowRennliste::changeSelection(){ if(this->selectedRow + 1 < this->tableData.size()){ for(unsigned int i = 0; i < 6; i++){ this->ui->tWRennliste->item(this->selectedRow, i)->setBackground(Qt::gray); this->ui->tWRennliste->item(this->selectedRow+1, i)->setBackground(Qt::green); } this->selectedRow += 1; } } WindowRennliste::~WindowRennliste() { delete ui; }