subsurface/subsurface-core
Linus Torvalds 288aff9dbb Don't use "get_volume_string()" for cylinder size string
We had two totally different usage cases for "get_volume_string()": one
that did the obvious "show this volume as a string", and one that tried
to show a cylinder size.

The function used a magic third argument (the working pressure of the
cylinder) to distinguish between the two cases, but it still got it
wrong.

A metric cylinder doesn't necessarily have a working pressure at all,
and the size is a wet size in liters.  We'd pass in zero as the working
pressure, and if the volume units were set to cubic feet, the logic in
"get_volume_string()" would happily convert the metric wet size into the
wet size in cubic feet.

But that's completely wrong.  An imperial cylinder size simply isn't a
wet size.  If you don't have a working pressure, you cannot convert the
cylinder size to cubic feet.  End of story.

So instead of having "get_volume_string()" have magical behavior
depending on working pressure, and getting it wrong anyway, just make
get_volume_string do a pure volume conversion, and create a whole new
function for showing the size of a cylinder.

Now, if the cylinder doesn't have a working pressure, we just show the
metric size, even if the user had asked for cubic feet.

[Dirk Hohndel: added call to translation functions for the units]

Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2016-02-25 00:58:09 +01:00
..
subsurface-qt Don't use "get_volume_string()" for cylinder size string 2016-02-25 00:58:09 +01:00
android.cpp Android: go back to using Qt's DataLocation 2015-11-07 10:52:19 -08:00
checkcloudconnection.cpp Switch to compile time connect syntax 2015-12-01 15:34:00 -08:00
checkcloudconnection.h
cloudstorage.cpp Fix usage of QString 2016-01-26 09:51:14 -08:00
cloudstorage.h Fix usage of QString 2016-01-26 09:51:14 -08:00
CMakeLists.txt Move CloudStorage out of the widgets 2016-01-26 09:50:32 -08:00
cochran.c
cochran.h
color.cpp Move qt-ui to desktop-widgets 2015-10-30 10:36:49 -07:00
color.h Move qt-ui to desktop-widgets 2015-10-30 10:36:49 -07:00
configuredivecomputer.cpp
configuredivecomputer.h
configuredivecomputerthreads.cpp configure OSTC/OSTC3: Add safety stop parameters 2016-01-22 06:50:22 -08:00
configuredivecomputerthreads.h Remove unused headers 2016-01-22 06:50:06 -08:00
datatrak.c simple spelling changes 2015-11-15 12:10:37 -08:00
datatrak.h
deco.c Merge branch 'cmakeAndPreferences' 2015-11-02 19:54:34 -08:00
deco.h
device.c Add option to allocate the samples in fake_dc() 2016-02-20 09:36:14 -08:00
device.h Add option to allocate the samples in fake_dc() 2016-02-20 09:36:14 -08:00
devicedetails.cpp configure OSTC/OSTC3: Add safety stop parameters 2016-01-22 06:50:22 -08:00
devicedetails.h configure OSTC/OSTC3: Add safety stop parameters 2016-01-22 06:50:22 -08:00
display.h
dive.c gas pressures: do not use gas compressibility for cylinder naming 2016-02-25 00:45:38 +01:00
dive.h gas pressures: do some initial cleanup 2016-02-25 00:45:35 +01:00
divecomputer.cpp
divecomputer.h
divelist.c Silence compiler warnings 2016-02-01 18:01:05 -08:00
divelist.h
divelogexportlogic.cpp
divelogexportlogic.h
divesite.c
divesite.cpp
divesite.h
divesitehelpers.cpp
divesitehelpers.h
equipment.c
exif.cpp
exif.h
file.c Don't just keep going when opening a git URL fails 2016-02-10 21:03:52 -08:00
file.h
gaspressures.c pressure interpolation: incrementally update interpolation data 2016-02-21 16:36:10 -08:00
gaspressures.h
gettext.h
gettextfromc.cpp
gettextfromc.h
git-access.c Don't connect to remote if git_local_only is set 2016-02-12 22:01:20 -08:00
git-access.h Cloud storage: check the top commit without loading dives 2015-12-27 10:06:33 -08:00
gpslocation.cpp Avoid precision loss on GPS fixes 2016-01-22 06:41:43 -08:00
gpslocation.h Random whitespace cleanup 2016-01-11 06:14:45 -08:00
helpers.h Don't use "get_volume_string()" for cylinder size string 2016-02-25 00:58:09 +01:00
imagedownloader.cpp If all else fails try loading images from cloud server 2016-01-10 14:12:36 -08:00
imagedownloader.h If all else fails try loading images from cloud server 2016-01-10 14:12:36 -08:00
isocialnetworkintegration.cpp Removed unused files 2015-11-09 18:00:56 -08:00
isocialnetworkintegration.h Remove the PluginSystem 2015-11-09 18:00:56 -08:00
libdivecomputer.c Only warn about different number of tanks and gases if there are tanks 2015-12-06 09:40:21 -08:00
libdivecomputer.h libdivecomputer.h: fix warning with DC_VERSION on Win32 2015-11-18 19:24:21 -08:00
linux.c
liquivision.c Fix Liquivision import crash 2016-02-03 06:06:23 -08:00
load-git.c Mark CCR dive's divetype properly 2016-01-31 13:06:39 -08:00
macos.c
membuffer.c
membuffer.h
metrics.cpp Move qt-ui to desktop-widgets 2015-10-30 10:36:49 -07:00
metrics.h Move qt-ui to desktop-widgets 2015-10-30 10:36:49 -07:00
ostctools.c simple spelling changes 2015-11-15 12:10:37 -08:00
parse-xml.c Mark CCR dive's divetype properly 2016-01-31 13:06:39 -08:00
planner.c Only close html tags if they were opened before 2015-11-24 09:20:40 -08:00
planner.h
pluginmanager.cpp Make it possible to connect to facebook again 2015-11-08 09:44:40 -08:00
pluginmanager.h Remove empty implementations 2015-11-09 18:00:56 -08:00
pref.h Language Settings Wrapper 2016-01-24 21:26:45 -08:00
prefs-macros.h
profile.c Do not run the deco calculations in the mobile app 2016-02-05 20:45:18 -08:00
profile.h Silence compiler warnings 2016-02-01 18:01:05 -08:00
qt-gui.h Missing half of the previous commit 2015-11-14 10:43:37 -08:00
qt-init.cpp
qthelper.cpp Don't use "get_volume_string()" for cylinder size string 2016-02-25 00:58:09 +01:00
qthelper.h Simplify image hashing logic 2016-01-10 14:12:23 -08:00
qthelperfromc.h Remove the non-canonical Subusrface version 2015-12-20 07:59:50 -08:00
qtserialbluetooth.cpp
save-git.c Remove the non-canonical Subusrface version 2015-12-20 07:59:50 -08:00
save-html.c Support for imperial depth on worldmap export 2016-01-10 14:13:58 -08:00
save-html.h Support for imperial depth on worldmap export 2016-01-10 14:13:58 -08:00
save-xml.c Interpret - as STDOUT on writing xml files 2015-11-24 09:20:03 -08:00
serial_ftdi.c ftdi: fix memory leak on error 2015-12-27 21:31:13 -08:00
sha1.c
sha1.h
statistics.c Fix crash with empty (or very short) dive list 2016-01-18 11:45:25 -08:00
statistics.h Add dive type to statistics window 2016-01-18 09:34:54 -08:00
strndup.h
strtod.c
subsurfacestartup.c subsurfacestartup.c: leave free_prefs() empty 2015-11-15 10:29:36 -08:00
subsurfacestartup.h
subsurfacesysinfo.cpp
subsurfacesysinfo.h
taxonomy.c
taxonomy.h
time.c
uemis-downloader.c Uemis downloader: handle yet another corner case 2015-12-06 13:38:38 -08:00
uemis.c
uemis.h
units.h Make it compile 2016-01-24 21:27:05 -08:00
version.c Remove the non-canonical Subusrface version 2015-12-20 07:59:50 -08:00
version.h Remove the non-canonical Subusrface version 2015-12-20 07:59:50 -08:00
webservice.h
windows.c
windowtitleupdate.cpp Don't crash if we have no WindowTitleUpdater registered 2015-11-07 09:53:17 -08:00
windowtitleupdate.h
worldmap-options.h
worldmap-save.c Support for imperial depth on worldmap export 2016-01-10 14:13:58 -08:00
worldmap-save.h