diff -r c5ee81217f70 -r 3d8176df0461 mainwindow.cc --- a/mainwindow.cc Sun Jan 22 22:53:56 2012 +0100 +++ b/mainwindow.cc Tue Jan 24 01:38:43 2012 +0100 @@ -9,6 +9,8 @@ connect(ui->actionAboutQt, SIGNAL(triggered()), qApp, SLOT(aboutQt())); connect(ui->actionExit, SIGNAL(triggered()), qApp, SLOT(quit())); connect(ui->actionOpen, SIGNAL(triggered()), this, SLOT(open())); + + } MainWindow::~MainWindow() @@ -16,34 +18,71 @@ delete ui; } -void MainWindow::open() +void MainWindow::open(const QString &s) { - QString fileName = QFileDialog::getOpenFileName( - this, - tr("Open IGC file"), - "flights", tr("IGC files (*.igc);; All files (*)")); - if (fileName.isEmpty()) return; + QString fileName; + if (s.isEmpty()) { + fileName = QFileDialog::getOpenFileName( + this, + tr("Open IGC file"), + "flights", tr("IGC files (*.igc);; All files (*)")); + if (fileName.isEmpty()) return; + } + else fileName = s; - if(currentFile.isOpen()) - currentFile.close(); + + if(currentFile_.isOpen()) + currentFile_.close(); - currentFile.setFileName(fileName); + currentFile_.setFileName(fileName); - if (!currentFile.open(QFile::ReadOnly)) { + if (!currentFile_.open(QFile::ReadOnly)) { QMessageBox::critical(this, tr("Ooops!"), - tr("The file %1 cannot be opened: %2!").arg(fileName).arg(currentFile.errorString())); + tr("The file %1 cannot be opened: %2!").arg(fileName).arg(currentFile_.errorString())); return; } - input.setDevice(¤tFile); + input_.setDevice(¤tFile_); setWindowTitle(QFileInfo(fileName).baseName()); statusBar()->showMessage(tr("opening %1").arg(fileName), 5000); - igc.read(input); + igc_.read(input_); + + + // now let's fill the table + QTableWidget *t = ui->table; + int r = 0; + const int K = 0; + const int V = 1; + + // cleanup + t->clearContents(); + t->setRowCount(0); + + // fill + t->setRowCount(t->rowCount() + 1); + t->setItem(r, K, new QTableWidgetItem(tr("Pilot"))); + t->setItem(r, V, new QTableWidgetItem(igc_.pilot())); + ++r; - qDebug() << igc.device(); - qDebug() << igc.pilot(); - qDebug() << igc.date(); + t->setRowCount(t->rowCount() + 1); + t->setItem(r, K, new QTableWidgetItem(tr("Date"))); + t->setItem(r, V, new QTableWidgetItem(igc_ + .date() + .toString(tr("yyyy-MMM-dd (dddd)")))); + ++r; + + t->setRowCount(t->rowCount() + 1); + t->setItem(r, K, new QTableWidgetItem(tr("Glider"))); + t->setItem(r, V, new QTableWidgetItem(igc_.glider())); + ++r; + + +// ui->table->setItem(0, 1, new QTableWidgetItem(igc_.pilot())); + + qDebug() << igc_.device(); + qDebug() << igc_.pilot(); + qDebug() << igc_.date(); }