X-Git-Url: http://git.tdb.fi/?p=ext%2Fsubsurface.git;a=blobdiff_plain;f=equipment.c;h=b74d85b7b6509ab910620c3c2ffe9d8b2e91f099;hp=abfb0e7b5979bba41b9af71b1d5391d610ed4359;hb=618a20ba5f2a9adc0e5a35117535f8eaa9fd34a4;hpb=81fddfa67e779c8d378eee4c57fd9f201e15f96f diff --git a/equipment.c b/equipment.c index abfb0e7..b74d85b 100644 --- a/equipment.c +++ b/equipment.c @@ -664,10 +664,10 @@ static struct tank_info { { "AL100", .cuft = 100, .psi = 3300 }, /* Somewhat common LP steel cylinders */ - { "LP85", .cuft = 85, 2640 }, - { "LP95", .cuft = 95, 2640 }, - { "LP108", .cuft = 108, 2640 }, - { "LP121", .cuft = 121, 2640 }, + { "LP85", .cuft = 85, .psi = 2640 }, + { "LP95", .cuft = 95, .psi = 2640 }, + { "LP108", .cuft = 108, .psi = 2640 }, + { "LP121", .cuft = 121, .psi = 2640 }, /* Somewhat common HP steel cylinders */ { "HP65", .cuft = 65, .psi = 3442 }, @@ -696,23 +696,29 @@ static void fill_tank_list(GtkListStore *store) GtkTreeIter iter; struct tank_info *info = tank_info; - while (info->name) { + for (info = tank_info ; info->name; info++) { int ml = info->ml; int cuft = info->cuft; int psi = info->psi; int mbar; double bar = info->bar; + if (psi && bar) + goto bad_tank_info; + if (ml && cuft) + goto bad_tank_info; + if (cuft && !psi) + goto bad_tank_info; + /* Is it in cuft and psi? */ - if (psi) { + if (psi) bar = psi_to_bar(psi); - if (cuft) { - double airvolume = cuft_to_l(cuft) * 1000.0; - double atm = bar_to_atm(bar); + if (cuft) { + double airvolume = cuft_to_l(cuft) * 1000.0; + double atm = bar_to_atm(bar); - ml = airvolume / atm + 0.5; - } + ml = airvolume / atm + 0.5; } mbar = bar * 1000 + 0.5; @@ -723,7 +729,10 @@ static void fill_tank_list(GtkListStore *store) 1, ml, 2, mbar, -1); - info++; + continue; + +bad_tank_info: + fprintf(stderr, "Bad tank info for '%s'\n", info->name); } } @@ -1334,6 +1343,14 @@ static void row_activated_cb(GtkTreeView *tree_view, edit_cb(NULL, tree_view); } +static void ws_row_activated_cb(GtkTreeView *tree_view, + GtkTreePath *path, + GtkTreeViewColumn *column, + GtkTreeModel *model) +{ + ws_edit_cb(NULL, tree_view); +} + GtkWidget *cylinder_list_widget(void) { GtkListStore *model = cylinder_list.model; @@ -1371,7 +1388,7 @@ GtkWidget *weightsystem_list_widget(void) tree_view = gtk_tree_view_new_with_model(GTK_TREE_MODEL(model)); gtk_widget_set_can_focus(tree_view, FALSE); - g_signal_connect(tree_view, "row-activated", G_CALLBACK(row_activated_cb), model); + g_signal_connect(tree_view, "row-activated", G_CALLBACK(ws_row_activated_cb), model); selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(tree_view)); gtk_tree_selection_set_mode(GTK_TREE_SELECTION(selection), GTK_SELECTION_BROWSE);