diff --git a/pref.h b/pref.h
index dd895f0f2..a5d90a921 100644
--- a/pref.h
+++ b/pref.h
@@ -40,6 +40,7 @@ struct preferences {
short show_sac;
bool display_unused_tanks;
bool zoomed_plot;
+ bool text_label_with_units;
};
enum unit_system_values {
METRIC,
diff --git a/qt-ui/maintab.cpp b/qt-ui/maintab.cpp
index 068d703a3..45483f177 100644
--- a/qt-ui/maintab.cpp
+++ b/qt-ui/maintab.cpp
@@ -201,6 +201,7 @@ void MainTab::hideMessage()
ui.diveEquipmentMessage->animatedHide();
ui.diveInfoMessage->animatedHide();
ui.diveStatisticsMessage->animatedHide();
+ updateTextLabels();
}
void MainTab::closeMessage()
@@ -222,6 +223,18 @@ void MainTab::displayMessage(QString str)
ui.diveInfoMessage->animatedShow();
ui.diveStatisticsMessage->setText(str);
ui.diveStatisticsMessage->animatedShow();
+ updateTextLabels(true);
+}
+
+void MainTab::updateTextLabels(bool showUnits)
+{
+ if (showUnits && prefs.text_label_with_units) {
+ ui.airTempLabel->setText(QApplication::translate("MainTab", "Air temp [%1]").arg(get_temp_unit()));
+ ui.waterTempLabel->setText(QApplication::translate("MainTab", "Water temp [%1]").arg(get_temp_unit()));
+ } else {
+ ui.airTempLabel->setText(QApplication::translate("MainTab", "Air temp", 0, QApplication::UnicodeUTF8));
+ ui.waterTempLabel->setText(QApplication::translate("MainTab", "Water temp", 0, QApplication::UnicodeUTF8));
+ }
}
void MainTab::enableEdition(EditMode newEditMode)
diff --git a/qt-ui/maintab.h b/qt-ui/maintab.h
index 946b673b6..9da1e897f 100644
--- a/qt-ui/maintab.h
+++ b/qt-ui/maintab.h
@@ -94,6 +94,7 @@ slots:
void displayMessage(QString str);
void enableEdition(EditMode newEditMode = NONE);
void toggleTriggeredColumn();
+ void updateTextLabels(bool showUnits = false);
private:
Ui::MainTab ui;
diff --git a/qt-ui/preferences.cpp b/qt-ui/preferences.cpp
index 2c72cebf2..03123858b 100644
--- a/qt-ui/preferences.cpp
+++ b/qt-ui/preferences.cpp
@@ -75,6 +75,7 @@ void PreferencesDialog::setUiFromPrefs()
ui.cuft->setChecked(prefs.units.volume == units::CUFT);
ui.kg->setChecked(prefs.units.weight == units::KG);
ui.lbs->setChecked(prefs.units.weight == units::LBS);
+ ui.text_label_with_units->setChecked(prefs.text_label_with_units);
ui.font->setCurrentFont(QString(prefs.divelist_font));
ui.fontsize->setValue(prefs.font_size);
@@ -190,6 +191,7 @@ void PreferencesDialog::syncSettings()
s.setValue("volume", ui.cuft->isChecked() ? units::CUFT : units::LITER);
s.setValue("weight", ui.lbs->isChecked() ? units::LBS : units::KG);
s.setValue("vertical_speed_time", ui.vertical_speed_minutes->isChecked() ? units::MINUTES : units::SECONDS);
+ SB("text_label_with_units", ui.text_label_with_units);
s.endGroup();
// Defaults
s.beginGroup("GeneralSettings");
@@ -244,6 +246,7 @@ void PreferencesDialog::loadSettings()
GET_UNIT("weight", weight, units::LBS, units::KG);
}
GET_UNIT("vertical_speed_time", vertical_speed_time, units::MINUTES, units::SECONDS);
+ GET_BOOL("text_label_with_units", text_label_with_units);
s.endGroup();
s.beginGroup("TecDetails");
GET_BOOL("po2graph", pp_graphs.po2);
diff --git a/qt-ui/preferences.ui b/qt-ui/preferences.ui
index 988c5484f..115e93526 100644
--- a/qt-ui/preferences.ui
+++ b/qt-ui/preferences.ui
@@ -478,7 +478,21 @@
-
+
+ -
+
+
-
+
+
+ true
+
+
+ Show units in text labels
+
+
+
+
+
-
diff --git a/subsurfacestartup.c b/subsurfacestartup.c
index efdcb9a6c..3f410aff4 100644
--- a/subsurfacestartup.c
+++ b/subsurfacestartup.c
@@ -29,7 +29,8 @@ struct preferences default_prefs = {
.font_size = -1,
.display_invalid_dives = false,
.show_sac = false,
- .display_unused_tanks = false
+ .display_unused_tanks = false,
+ .text_label_with_units = false
};
struct units *get_units()