diff options
Diffstat (limited to 'core/equipment.c')
-rw-r--r-- | core/equipment.c | 22 |
1 files changed, 18 insertions, 4 deletions
diff --git a/core/equipment.c b/core/equipment.c index 253ef2086..af6f092a9 100644 --- a/core/equipment.c +++ b/core/equipment.c @@ -246,11 +246,8 @@ int find_best_gasmix_match(struct gasmix mix, const struct cylinder_table *cylin * we should pick up any other names from the dive * logs directly. */ -struct tank_info_table tank_info_table; -void reset_tank_info_table(struct tank_info_table *table) +static void add_default_tank_infos(struct tank_info_table *table) { - clear_tank_info_table(table); - /* Size-only metric cylinders */ add_tank_info_metric(table, "10.0ℓ", 10000, 0); add_tank_info_metric(table, "11.1ℓ", 11100, 0); @@ -301,6 +298,23 @@ void reset_tank_info_table(struct tank_info_table *table) add_tank_info_metric(table, "D20 232 bar", 40000, 232); } +struct tank_info_table tank_info_table; +void reset_tank_info_table(struct tank_info_table *table) +{ + clear_tank_info_table(table); + if (prefs.display_default_tank_infos) + add_default_tank_infos(table); + + /* Add cylinders from dive list */ + for (int i = 0; i < dive_table.nr; ++i) { + const struct dive *dive = dive_table.dives[i]; + for (int j = 0; j < dive->cylinders.nr; j++) { + const cylinder_t *cyl = get_cylinder(dive, j); + add_cylinder_description(&cyl->type); + } + } +} + /* * We hardcode the most common weight system types * This is a bit odd as the weight system types don't usually encode weight |