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>
This commit is contained in:
Dirk Hohndel 2013-04-06 20:49:06 -07:00
parent a412753b0a
commit 1d61955be9
7 changed files with 2401 additions and 2305 deletions

View file

@ -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