summaryrefslogtreecommitdiffstats
path: root/core
diff options
context:
space:
mode:
authorGravatar Robert C. Helling <helling@atdotde.de>2018-05-17 10:04:41 +0200
committerGravatar Robert C. Helling <helling@atdotde.de>2018-05-28 09:57:00 +0200
commit7c6e5ed5dbc32c90984b1cc92bc9dfc023295c84 (patch)
tree340500dba2318c05db62c76073a1e31165b91adc /core
parent424efb77201de370d35b10028eba40736a0fe955 (diff)
downloadsubsurface-7c6e5ed5dbc32c90984b1cc92bc9dfc023295c84.tar.gz
Distinguish between user and internal divemode names
The former should be translated but not those that go to xml/git. ... and fix capitalization of pSCR. Suggested-by: Stefan Fuchs <sfuchs@gmx.de> Signed-off-by: Robert C. Helling <helling@atdotde.de>
Diffstat (limited to 'core')
-rw-r--r--core/dive.c12
-rw-r--r--core/dive.h1
-rw-r--r--core/statistics.c8
3 files changed, 16 insertions, 5 deletions
diff --git a/core/dive.c b/core/dive.c
index 255631ec3..c0a034280 100644
--- a/core/dive.c
+++ b/core/dive.c
@@ -35,7 +35,17 @@ static const char *default_tags[] = {
const char *cylinderuse_text[] = {
QT_TRANSLATE_NOOP("gettextFromC", "OC-gas"), QT_TRANSLATE_NOOP("gettextFromC", "diluent"), QT_TRANSLATE_NOOP("gettextFromC", "oxygen"), QT_TRANSLATE_NOOP("gettextFromC", "not used")
};
-const char *divemode_text[] = { "OC", "CCR", "PSCR", "Freedive" };
+
+// For user visible text
+const char *divemode_text_ui[] = {
+ QT_TRANSLATE_NOOP("gettextFromC", "Open circuit"),
+ QT_TRANSLATE_NOOP("gettextFromC", "CCR"),
+ QT_TRANSLATE_NOOP("gettextFromC", "pSCR"),
+ QT_TRANSLATE_NOOP("gettextFromC", "Freedive")
+};
+
+// For writing/reading files.
+const char *divemode_text[] = {"OC", "CCR", "pSCR", "Freedive"};
/*
* Adding a cylinder pressure sample field is not quite as trivial as it
diff --git a/core/dive.h b/core/dive.h
index 31a568667..5c7b74395 100644
--- a/core/dive.h
+++ b/core/dive.h
@@ -31,6 +31,7 @@ enum divemode_t {OC, CCR, PSCR, FREEDIVE, NUM_DIVEMODE, UNDEF_COMP_TYPE}; // Fla
enum cylinderuse {OC_GAS, DILUENT, OXYGEN, NOT_USED, NUM_GAS_USE}; // The different uses for cylinders
extern const char *cylinderuse_text[];
+extern const char *divemode_text_ui[];
extern const char *divemode_text[];
struct gasmix {
diff --git a/core/statistics.c b/core/statistics.c
index d8ddf914c..ab3d0b628 100644
--- a/core/statistics.c
+++ b/core/statistics.c
@@ -140,13 +140,13 @@ void process_all_dives(struct dive *dive, struct dive **prev_dive)
* field in the statistics window */
stats_by_type[0].location = strdup(translate("gettextFromC", "All (by type stats)"));
stats_by_type[0].is_trip = true;
- stats_by_type[1].location = strdup(translate("gettextFromC","OC"));
+ stats_by_type[1].location = strdup(divemode_text_ui[OC]);
stats_by_type[1].is_trip = true;
- stats_by_type[2].location = strdup(translate("gettextFromC","CCR"));
+ stats_by_type[2].location = strdup(divemode_text_ui[CCR]);
stats_by_type[2].is_trip = true;
- stats_by_type[3].location = strdup(translate("gettextFromC","pSCR"));
+ stats_by_type[3].location = strdup(divemode_text_ui[PSCR]);
stats_by_type[3].is_trip = true;
- stats_by_type[4].location = strdup(translate("gettextFromC","Freedive"));
+ stats_by_type[4].location = strdup(divemode_text_ui[FREEDIVE]);
stats_by_type[4].is_trip = true;
/* this relies on the fact that the dives in the dive_table