summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--qt-ui/maintab.cpp8
-rw-r--r--qt-ui/mainwindow.cpp10
-rw-r--r--qt-ui/models.cpp6
-rw-r--r--statistics.c21
-rw-r--r--statistics.h1
5 files changed, 36 insertions, 10 deletions
diff --git a/qt-ui/maintab.cpp b/qt-ui/maintab.cpp
index c684a5bfd..378ba8721 100644
--- a/qt-ui/maintab.cpp
+++ b/qt-ui/maintab.cpp
@@ -135,7 +135,10 @@ void MainTab::updateDiveInfo(int dive)
// click on the item and check its objectName,
// the access is ui->objectName from here on.
volume_t sacVal;
+ struct dive *prevd;
struct dive *d = get_dive(dive);
+
+ process_all_dives(d, &prevd);
currentDive = d;
UPDATE_TEXT(d, notes);
UPDATE_TEXT(d, location);
@@ -151,6 +154,11 @@ void MainTab::updateDiveInfo(int dive)
ui->waterTemperatureText->setText(get_temperature_string(d->watertemp, TRUE));
ui->airTemperatureText->setText(get_temperature_string(d->airtemp, TRUE));
ui->gasUsedText->setText(get_volume_string(get_gas_used(d), TRUE));
+ ui->oxygenHeliumText->setText(get_gaslist(d));
+ ui->dateText->setText(get_dive_date_string(d->when));
+ ui->diveTimeText->setText(QString::number((int)((d->duration.seconds + 30) / 60)));
+ if (prevd)
+ ui->surfaceIntervalText->setText(get_time_string(d->when - (prevd->when + prevd->duration.seconds), 4));
if ((sacVal.mliter = d->sac) > 0)
ui->sacText->setText(get_volume_string(sacVal, TRUE).append("/min"));
else
diff --git a/qt-ui/mainwindow.cpp b/qt-ui/mainwindow.cpp
index b60f668e2..eed9aa883 100644
--- a/qt-ui/mainwindow.cpp
+++ b/qt-ui/mainwindow.cpp
@@ -126,16 +126,6 @@ void MainWindow::on_actionClose_triggered()
ui->ListWidget->reload();
clear_events();
-#if USE_GTK_UI
- show_dive_stats(NULL);
-
- /* redraw the screen */
- //WARNING: Port this to Qt.
- dive_list_update_dives();
-
- // WARNING? Port this to Qt.
- show_dive_info(NULL);
-#endif /* USE_GTK_UI */
}
void MainWindow::on_actionImport_triggered()
diff --git a/qt-ui/models.cpp b/qt-ui/models.cpp
index 9bc8db0bb..90c826331 100644
--- a/qt-ui/models.cpp
+++ b/qt-ui/models.cpp
@@ -9,6 +9,7 @@
#include <QDebug>
#include <QColor>
#include <QBrush>
+#include <QFont>
extern struct tank_info tank_info[100];
@@ -610,6 +611,11 @@ QVariant DiveTripModel::data(const QModelIndex& index, int role) const
if (!index.isValid())
return QVariant();
+ if (role == Qt::FontRole){
+ QFont font;
+ font.setPointSizeF(font.pointSizeF() * 0.7);
+ return font;
+ }
TreeItemDT* item = static_cast<TreeItemDT*>(index.internalPointer());
return item->data(index.column(), role);
diff --git a/statistics.c b/statistics.c
index d7f8371fa..411ba1c1f 100644
--- a/statistics.c
+++ b/statistics.c
@@ -289,3 +289,24 @@ volume_t get_gas_used(struct dive *dive)
}
return gas_used;
}
+
+#define MAXBUF 80
+/* for the O2/He readings just create a list of them */
+char *get_gaslist(struct dive *dive)
+{
+ int idx, offset = 0;
+ static char buf[MAXBUF];
+
+ buf[0] = '\0';
+ for (idx = 0; idx < MAX_CYLINDERS; idx++) {
+ cylinder_t *cyl = &dive->cylinder[idx];
+ if (!cylinder_none(cyl)) {
+ int o2 = get_o2(&cyl->gasmix);
+ int he = get_he(&cyl->gasmix);
+ snprintf(buf + offset, MAXBUF - offset, (offset > 0) ? ", %d/%d" : "%d/%d",
+ (o2 + 5) / 10, (he + 5) / 10);
+ offset = strlen(buf);
+ }
+ }
+ return buf;
+}
diff --git a/statistics.h b/statistics.h
index 732a287e1..81a560568 100644
--- a/statistics.h
+++ b/statistics.h
@@ -40,6 +40,7 @@ extern char *get_minutes(int seconds);
extern void process_all_dives(struct dive *dive, struct dive **prev_dive);
extern void get_selected_dives_text(char *buffer, int size);
extern volume_t get_gas_used(struct dive *dive);
+extern char *get_gaslist(struct dive *dive);
#ifdef __cplusplus
}