summaryrefslogtreecommitdiffstats
path: root/divelist.h
diff options
context:
space:
mode:
authorGravatar Dirk Hohndel <dirk@hohndel.org>2013-04-06 20:49:06 -0700
committerGravatar Dirk Hohndel <dirk@hohndel.org>2013-04-06 20:49:06 -0700
commit1d61955be973cfcc67f4e82a65487721a9ae84b8 (patch)
treef1e7e7a7f81da2cb77f4be8bc6d16cdf5f54ccfd /divelist.h
parenta412753b0a2eb6323f350e98287b004f5b3b6c5c (diff)
downloadsubsurface-1d61955be973cfcc67f4e82a65487721a9ae84b8.tar.gz
Separate Gtk related code from core logic: divelist
This is simplistic & brute force: any function that touches Gtk related data structures is moved to divelist-gtk.c, everything else stays in divelist.c. Header files have been adjusted so that this still compiles and appears to work. More thought is needed to truly abstract this out, but this seems to be a good point to commit this change. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
Diffstat (limited to 'divelist.h')
-rw-r--r--divelist.h22
1 files changed, 21 insertions, 1 deletions
diff --git a/divelist.h b/divelist.h
index c9ec973f7..6a0b98bc9 100644
--- a/divelist.h
+++ b/divelist.h
@@ -4,7 +4,6 @@
#ifdef __cplusplus
extern "C" {
#endif
-
struct dive;
extern void dive_list_update_dives(void);
@@ -21,6 +20,27 @@ extern void show_and_select_dive(struct dive *dive);
extern double init_decompression(struct dive * dive);
extern void export_all_dives_uddf_cb();
+/* divelist core logic functions */
+extern dive_trip_t *find_trip_by_idx(int idx);
+extern int trip_has_selected_dives(dive_trip_t *trip);
+extern void get_dive_gas(struct dive *dive, int *o2_p, int *he_p, int *o2low_p);
+extern int get_divenr(struct dive *dive);
+extern void get_location(struct dive *dive, char **str);
+extern void get_cylinder(struct dive *dive, char **str);
+extern void get_suit(struct dive *dive, char **str);
+extern dive_trip_t *find_matching_trip(timestamp_t when);
+extern void remove_dive_from_trip(struct dive *dive);
+extern dive_trip_t *create_and_hookup_trip_from_dive(struct dive *dive);
+extern void autogroup_dives(void);
+extern void merge_dive_index(int i, struct dive *a);
+extern void select_dive(int idx);
+extern void deselect_dive(int idx);
+
+#ifdef DEBUG_TRIP
+extern void dump_selection(void);
+extern void dump_trip_list(void);
+#endif
+
#ifdef __cplusplus
}
#endif