summaryrefslogtreecommitdiffstats
path: root/qt-ui
diff options
context:
space:
mode:
authorGravatar Dirk Hohndel <dirk@hohndel.org>2014-06-09 22:45:44 -0700
committerGravatar Dirk Hohndel <dirk@hohndel.org>2014-06-09 22:48:21 -0700
commit8a0d852a7c17643bd6d45751c8b7489c23699829 (patch)
tree2168e215a9caac3aede8022aeafad8f544fc29d9 /qt-ui
parent01026046451ef706bb184fad01032bb4c11add35 (diff)
downloadsubsurface-8a0d852a7c17643bd6d45751c8b7489c23699829.tar.gz
Add gas consumption statistic for selected dives
We already did a list of gases and volume consumed for the selected dive on the Dive Info tab, but did not provide that same data on the Stats tab for all the selected dives. I arbitrary limited this to eight gases (as the list can get quite long when you select a lot of dives). The gases are sorted by volume consumed. Fixes #535 Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
Diffstat (limited to 'qt-ui')
-rw-r--r--qt-ui/maintab.cpp17
-rw-r--r--qt-ui/maintab.ui46
2 files changed, 50 insertions, 13 deletions
diff --git a/qt-ui/maintab.cpp b/qt-ui/maintab.cpp
index 19b47c872..5b8985b3e 100644
--- a/qt-ui/maintab.cpp
+++ b/qt-ui/maintab.cpp
@@ -530,6 +530,23 @@ void MainTab::updateDiveInfo(int dive)
ui.timeLimits->setAverage(get_time_string(seconds, 0));
ui.timeLimits->setMaximum(get_time_string(stats_selection.longest_time.seconds, 0));
ui.timeLimits->setMinimum(get_time_string(stats_selection.shortest_time.seconds, 0));
+ // now let's get some gas use statistics
+ QVector<QPair<QString, int> > gasUsed;
+ QString gasUsedString;
+ QPair<QString, int> topGases[8] = { };
+ volume_t vol;
+ selectedDivesGasUsed(gasUsed);
+ for (int j = 0; j < 8; j++) {
+ if (gasUsed.isEmpty())
+ break;
+ QPair<QString, int> gasPair = gasUsed.last();
+ gasUsed.pop_back();
+ vol.mliter = gasPair.second;
+ gasUsedString.append(gasPair.first).append(": ").append(get_volume_string(vol, true)).append("\n");
+ }
+ if (!gasUsed.isEmpty())
+ gasUsedString.append("...");
+ ui.gasConsumption->setText(gasUsedString);
} else {
/* clear the fields */
clearInfo();
diff --git a/qt-ui/maintab.ui b/qt-ui/maintab.ui
index 904a49304..2a0d3353e 100644
--- a/qt-ui/maintab.ui
+++ b/qt-ui/maintab.ui
@@ -37,8 +37,8 @@
<rect>
<x>0</x>
<y>0</y>
- <width>662</width>
- <height>649</height>
+ <width>668</width>
+ <height>658</height>
</rect>
</property>
<layout class="QGridLayout" name="gridLayout_2">
@@ -289,8 +289,8 @@
<rect>
<x>0</x>
<y>0</y>
- <width>662</width>
- <height>649</height>
+ <width>100</width>
+ <height>30</height>
</rect>
</property>
<layout class="QGridLayout" name="gridLayout_5">
@@ -369,8 +369,8 @@
<rect>
<x>0</x>
<y>0</y>
- <width>662</width>
- <height>649</height>
+ <width>387</width>
+ <height>285</height>
</rect>
</property>
<layout class="QGridLayout" name="gridLayout_6">
@@ -679,8 +679,8 @@
<rect>
<x>0</x>
<y>0</y>
- <width>662</width>
- <height>649</height>
+ <width>337</width>
+ <height>157</height>
</rect>
</property>
<layout class="QGridLayout" name="gridLayout_7">
@@ -766,7 +766,7 @@
</layout>
</widget>
</item>
- <item row="1" column="2">
+ <item row="2" column="1">
<widget class="QGroupBox" name="groupBox_7b">
<property name="title">
<string>Dives</string>
@@ -785,8 +785,27 @@
</layout>
</widget>
</item>
- <item row="2" column="0">
- <spacer>
+ <item row="1" column="2">
+ <widget class="QGroupBox" name="groupBox_13">
+ <property name="title">
+ <string>Gas Consumption</string>
+ </property>
+ <layout class="QHBoxLayout" name="horizontalLayout_15b">
+ <item>
+ <widget class="QLabel" name="gasConsumption">
+ <property name="text">
+ <string/>
+ </property>
+ <property name="alignment">
+ <set>Qt::AlignCenter</set>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </widget>
+ </item>
+ <item row="3" column="0">
+ <spacer name="verticalSpacer">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
@@ -795,8 +814,8 @@
</property>
<property name="sizeHint" stdset="0">
<size>
- <width>20</width>
- <height>20</height>
+ <width>0</width>
+ <height>0</height>
</size>
</property>
</spacer>
@@ -808,6 +827,7 @@
<zorder>groupBox_14</zorder>
<zorder>groupBoxb</zorder>
<zorder>groupBox_7b</zorder>
+ <zorder>groupBox_13</zorder>
</widget>
</widget>
</item>