mirror of
https://github.com/subsurface/subsurface.git
synced 2025-02-19 22:16:15 +00:00
Helpers: add get_cylinder_used_gas_string()
get_cylinder_used_gas_string() retrieves used gas per cylinder with optional units display. Signed-off-by: Lubomir I. Ivanov <neolit123@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This commit is contained in:
parent
c478ea30cb
commit
50e74f4565
2 changed files with 32 additions and 0 deletions
|
@ -16,6 +16,7 @@ QString get_depth_string(int mm, bool showunit = false, bool showdecimal = true)
|
|||
QString get_depth_unit();
|
||||
QString get_weight_string(weight_t weight, bool showunit = false);
|
||||
QString get_weight_unit();
|
||||
QString get_cylinder_used_gas_string(cylinder_t *cyl, bool showunit = false);
|
||||
QString get_temperature_string(temperature_t temp, bool showunit = false);
|
||||
QString get_temp_unit();
|
||||
QString get_volume_string(volume_t volume, bool showunit = false);
|
||||
|
|
31
qt-gui.cpp
31
qt-gui.cpp
|
@ -233,6 +233,37 @@ QString get_weight_unit()
|
|||
return "lbs";
|
||||
}
|
||||
|
||||
/* these methods retrieve used gas per cylinder */
|
||||
static unsigned start_pressure(cylinder_t *cyl)
|
||||
{
|
||||
return cyl->start.mbar ? : cyl->sample_start.mbar;
|
||||
}
|
||||
|
||||
static unsigned end_pressure(cylinder_t *cyl)
|
||||
{
|
||||
return cyl->end.mbar ? : cyl->sample_end.mbar;
|
||||
}
|
||||
|
||||
QString get_cylinder_used_gas_string(cylinder_t *cyl, bool showunit)
|
||||
{
|
||||
int decimals;
|
||||
const char *unit;
|
||||
double gas_usage;
|
||||
/* Get the cylinder gas use in mbar */
|
||||
gas_usage = start_pressure(cyl) - end_pressure(cyl);
|
||||
/* Can we turn it into a volume? */
|
||||
if (cyl->type.size.mliter) {
|
||||
gas_usage = bar_to_atm(gas_usage / 1000);
|
||||
gas_usage *= cyl->type.size.mliter;
|
||||
gas_usage = get_volume_units(gas_usage, &decimals, &unit);
|
||||
} else {
|
||||
gas_usage = get_pressure_units(gas_usage, &unit);
|
||||
decimals = 0;
|
||||
}
|
||||
// tr("%.*f %s"
|
||||
return QString("%1 %2").arg(gas_usage, 0, 'f', decimals).arg(showunit ? unit : "");
|
||||
}
|
||||
|
||||
QString get_temperature_string(temperature_t temp, bool showunit)
|
||||
{
|
||||
if (prefs.units.temperature == units::CELSIUS) {
|
||||
|
|
Loading…
Add table
Reference in a new issue