From b3fce3497cc6cd801afae01f713b56b1d8e883b8 Mon Sep 17 00:00:00 2001 From: Dirk Hohndel Date: Mon, 6 May 2013 10:16:16 -0700 Subject: Fill Dive Notes widget Make sure we clear things out if no dive is selected. Signed-off-by: Dirk Hohndel --- qt-ui/maintab.cpp | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) (limited to 'qt-ui/maintab.cpp') diff --git a/qt-ui/maintab.cpp b/qt-ui/maintab.cpp index 84f29e6e8..df6ee69eb 100644 --- a/qt-ui/maintab.cpp +++ b/qt-ui/maintab.cpp @@ -60,6 +60,12 @@ void MainTab::clearStats() ui->shortestAllText->setText(QString()); } +#define UPDATE_TEXT(d, field) \ + if (!d || !d->field) \ + ui->field->setText(""); \ + else \ + ui->field->setText(d->field) + void MainTab::updateDiveInfo(int dive) { // So, this is what happens now: @@ -73,7 +79,15 @@ void MainTab::updateDiveInfo(int dive) // the access is ui->objectName from here on. struct dive *d = get_dive(dive); - ui->notes->setText(d->notes); + UPDATE_TEXT(d, notes); + UPDATE_TEXT(d, location); + UPDATE_TEXT(d, suit); + UPDATE_TEXT(d, divemaster); + UPDATE_TEXT(d, buddy); + if (d) + ui->rating->setCurrentStars(d->rating); + else + ui->rating->setCurrentStars(0); } void MainTab::on_addCylinder_clicked() -- cgit v1.2.3-70-g09d2