X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=divelist.c;h=b43adfd0cd4728e6b50fefdcf6e46611ae10b015;hb=fe0eff8f1ef6f5bd73a0b89d3ac5fc334650c184;hp=13257a437173672cb21b67da32a9657b54ea066d;hpb=d5c86ebe3dd67397f0f61d57ae9c07d995c38728;p=ext%2Fsubsurface.git diff --git a/divelist.c b/divelist.c index 13257a4..b43adfd 100644 --- a/divelist.c +++ b/divelist.c @@ -26,7 +26,7 @@ struct DiveList { GtkWidget *container_widget; GtkListStore *model; GtkTreeViewColumn *date, *depth, *duration, *location; - GtkTreeViewColumn *temperature, *cylinder, *nitrox, *sac; + GtkTreeViewColumn *temperature, *cylinder, *nitrox, *sac, *otu; int changed; }; @@ -422,6 +422,13 @@ void update_dive_list_units(void) gtk_tree_model_foreach(model, set_one_dive, NULL); } +void update_dive_list_col_visibility(void) +{ + gtk_tree_view_column_set_visible(dive_list.sac, visible_cols.sac); + gtk_tree_view_column_set_visible(dive_list.otu, visible_cols.otu); + return; +} + static void fill_dive_list(void) { int i; @@ -469,7 +476,7 @@ typedef void (*data_func_t)(GtkTreeViewColumn *col, gpointer data); static GtkTreeViewColumn *divelist_column(struct DiveList *dl, int index, const char *title, - data_func_t data_func, PangoAlignment align) + data_func_t data_func, PangoAlignment align, gboolean visible) { GtkCellRenderer *renderer; GtkTreeViewColumn *col; @@ -499,6 +506,7 @@ static GtkTreeViewColumn *divelist_column(struct DiveList *dl, int index, const break; } gtk_cell_renderer_set_alignment(GTK_CELL_RENDERER(renderer), xalign, 0.5); + gtk_tree_view_column_set_visible(col, visible); gtk_tree_view_append_column(GTK_TREE_VIEW(dl->tree_view), col); return col; } @@ -542,8 +550,8 @@ GtkWidget *dive_list_create(void) dive_list.temperature = divelist_column(&dive_list, DIVE_TEMPERATURE, UTF8_DEGREE "F", temperature_data_func, PANGO_ALIGN_RIGHT, TRUE); dive_list.cylinder = divelist_column(&dive_list, DIVE_CYLINDER, "Cyl", NULL, PANGO_ALIGN_CENTER, TRUE); dive_list.nitrox = divelist_column(&dive_list, DIVE_NITROX, "O" UTF8_SUBSCRIPT_2 "%", nitrox_data_func, PANGO_ALIGN_CENTER, TRUE); - dive_list.sac = divelist_column(&dive_list, DIVE_SAC, "SAC", sac_data_func, PANGO_ALIGN_CENTER, TRUE); - dive_list.sac = divelist_column(&dive_list, DIVE_OTU, "OTU", otu_data_func, PANGO_ALIGN_CENTER, FALSE); + dive_list.sac = divelist_column(&dive_list, DIVE_SAC, "SAC", sac_data_func, PANGO_ALIGN_CENTER, visible_cols.sac); + dive_list.otu = divelist_column(&dive_list, DIVE_OTU, "OTU", otu_data_func, PANGO_ALIGN_CENTER, visible_cols.otu); dive_list.location = divelist_column(&dive_list, DIVE_LOCATION, "Location", NULL, PANGO_ALIGN_LEFT, TRUE); fill_dive_list();