From e462081c257a7f62557413f9b4d2189dc8ec51e7 Mon Sep 17 00:00:00 2001 From: Thomas Thurman Date: Mon, 31 Aug 2009 18:14:17 -0400 Subject: [PATCH] make directions button work --- belltower.c | 24 +++++++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) diff --git a/belltower.c b/belltower.c index f995a6c..802d5d3 100644 --- a/belltower.c +++ b/belltower.c @@ -361,6 +361,19 @@ show_tower_map (void) } static void +show_tower_directions (void) +{ + if (tower_directions) + { + show_browser (tower_directions); + } + else + { + show_message ("I don't know where you are!"); + } +} + +static void show_peals_list (void) { show_browser (peals_list); @@ -627,7 +640,7 @@ single_tower_cb (tower *details, } add_button ("Peals", show_peals_list); add_button ("Map", show_tower_map); - add_button ("Directions", NULL); + add_button ("Directions", show_tower_directions); /* don't use a toggle button: it looks stupid */ button = hildon_button_new_with_text (HILDON_SIZE_AUTO_WIDTH | HILDON_SIZE_FINGER_HEIGHT, @@ -658,6 +671,15 @@ single_tower_cb (tower *details, tower_map = g_strdup_printf ("http://maps.google.com/maps?q=%s,%s", details->fields[FieldLat], details->fields[FieldLong]); + g_free (tower_directions); + if (device->fix->fields & LOCATION_GPS_DEVICE_LATLONG_SET) + { + tower_directions = g_strdup_printf ("http://maps.google.com/maps?q=%f,%f+to+%s,%s", + device->fix->latitude, + device->fix->longitude, + details->fields[FieldLat], + details->fields[FieldLong]); + } g_free (tower_displayed); tower_displayed = g_strdup (details->fields[FieldPrimaryKey]); -- 1.7.9.5