GtkWidget *bar;
} progressbar_t;
+typedef struct {
+ gboolean cylinder;
+ gboolean temperature;
+ gboolean nitrox;
+ gboolean sac;
+ gboolean otu;
+} visible_cols_t;
+
+typedef enum {
+ PREF_BOOL,
+ PREF_STRING
+} pref_type_t;
+
+#define BOOL_TO_PTR(_cond) ((_cond) ? (void *)1 : NULL)
+#define PTR_TO_BOOL(_ptr) ((_ptr) != NULL)
+
+extern void subsurface_open_conf(void);
+extern void subsurface_set_conf(char *name, pref_type_t type, const void *value);
+extern const void *subsurface_get_conf(char *name, pref_type_t type);
+extern void subsurface_close_conf(void);
+
+extern visible_cols_t visible_cols;
+
extern const char *divelist_font;
extern void set_divelist_font(const char *);
extern GtkWidget *dive_info_frame(void);
extern GtkWidget *extended_dive_info_widget(void);
extern GtkWidget *equipment_widget(void);
+extern GtkWidget *stats_widget(void);
+extern GtkWidget *cylinder_list_widget(void);
extern GtkWidget *dive_list_create(void);
+typedef void (*data_func_t)(GtkTreeViewColumn *col,
+ GtkCellRenderer *renderer,
+ GtkTreeModel *model,
+ GtkTreeIter *iter,
+ gpointer data);
+
+extern GtkTreeViewColumn *tree_view_column(GtkWidget *tree_view, int index, const char *title,
+ data_func_t data_func, PangoAlignment align, gboolean visible);
+
#endif