diff options
author | Dirk Hohndel <dirk@hohndel.org> | 2011-09-20 12:40:34 -0700 |
---|---|---|
committer | Dirk Hohndel <dirk@hohndel.org> | 2011-09-20 12:48:56 -0700 |
commit | 682135838ff313594c7f67fabd9be8f88a33883b (patch) | |
tree | 7fc1d8df51ce54f1529d6c50aa4d41f99283d463 /divelist.c | |
parent | 6ea513246363ba2df29b0dfa9bc752c7d40c0c38 (diff) | |
download | subsurface-682135838ff313594c7f67fabd9be8f88a33883b.tar.gz |
Separate out the UI from the program logic
The following are UI toolkit specific:
gtk-gui.c - overall layout, main window of the UI
divelist.c - list of dives subsurface maintains
equipment.c - equipment / tank information for each dive
info.c - detailed dive info
print.c - printing
The rest is independent of the UI:
main.c i - program frame
dive.c i - creates and maintaines the internal dive list structure
libdivecomputer.c
uemis.c
parse-xml.c
save-xml.c - interface with dive computers and the XML files
profile.c - creates the data for the profile and draws it using cairo
This commit should contain NO functional changes, just moving code around
and a couple of minor abstractions.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
Diffstat (limited to 'divelist.c')
-rw-r--r-- | divelist.c | 30 |
1 files changed, 13 insertions, 17 deletions
diff --git a/divelist.c b/divelist.c index 01ab1b11a..e00092436 100644 --- a/divelist.c +++ b/divelist.c @@ -1,3 +1,13 @@ +/* divelist.c */ +/* this creates the UI for the dive list - + * controlled through the following interfaces: + * + * void flush_divelist(struct dive *dive) + * GtkWidget dive_list_create(void) + * void dive_list_update_dives(void) + * void update_dive_list_units(void) + * void set_divelist_font(const char *font) + */ #include <stdio.h> #include <stdlib.h> #include <string.h> @@ -6,6 +16,7 @@ #include "divelist.h" #include "dive.h" #include "display.h" +#include "display-gtk.h" struct DiveList { GtkWidget *tree_view; @@ -34,6 +45,8 @@ enum { DIVELIST_COLUMNS }; +/* the global dive list that we maintain */ +static struct DiveList dive_list; static void selection_cb(GtkTreeSelection *selection, GtkTreeModel *model) { @@ -48,23 +61,6 @@ static void selection_cb(GtkTreeSelection *selection, GtkTreeModel *model) repaint_dive(); } -const char *weekday(int wday) -{ - static const char wday_array[7][4] = { - "Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat" - }; - return wday_array[wday]; -} - -const char *monthname(int mon) -{ - static const char month_array[12][4] = { - "Jan", "Feb", "Mar", "Apr", "May", "Jun", - "Jul", "Aug", "Oct", "Sep", "Nov", "Dec", - }; - return month_array[mon]; -} - static void date_data_func(GtkTreeViewColumn *col, GtkCellRenderer *renderer, GtkTreeModel *model, |