X-Git-Url: https://vcs.maemo.org/git/?a=blobdiff_plain;f=callbacks.c;h=f8e29ff040fd079e0bd6283b48fca79bb40a1a8e;hb=04eaf74dc982120cdf34cd17eece780dea8d6034;hp=7ba4ce9d865d2eb4e272ca8d1187d9a2c765ac5e;hpb=d79de8ce81132a774376eccaf4411482d208dd7d;p=speedometer
diff --git a/callbacks.c b/callbacks.c
index 7ba4ce9..f8e29ff 100644
--- a/callbacks.c
+++ b/callbacks.c
@@ -16,20 +16,25 @@
along with this program. If not, see .
****/
+#include
+#include
+
#include "callbacks.h"
+#include "appdata.h"
+#include "util.h"
-static void print_stuff(LocationGPSDevice* device) {
- g_print("Latitude: %.2f\n"
- "Longitude: %.2f\n"
- "Altitude: %.2f\n"
- "Speed: %d",
- device->fix->latitude,
- device->fix->longitude,
- device->fix->altitude,
- device->fix->speed);
-}
+void location_changed(LocationGPSDevice* device, gpointer data) {
+ g_assert(data);
+ g_assert(device);
+
+ AppData* appdata = (AppData*) data;
-void location_changed(LocationGPSDevice* device, gpointer userdata) {
+ // check for NaN before passing values
+ if(device->fix->fields & LOCATION_GPS_DEVICE_SPEED_SET) {
+ if(!isnan(device->fix->speed)) {
+ interpret_speed_from_gps(appdata, device->fix->speed);
+ }
+ }
}
gboolean key_press_cb(GtkWidget* widget, GdkEventKey* event, HildonWindow* window) {
@@ -73,3 +78,23 @@ gboolean key_press_cb(GtkWidget* widget, GdkEventKey* event, HildonWindow* windo
return FALSE;
}
+
+gboolean top_event_box_button_press(GtkWidget* widget, GdkEventButton* event, gpointer data) {
+ gdouble x = event->x;
+ g_print("Top event box pressed at: %f\n", x);
+ AppData* appdata = (AppData*) data;
+
+ if(x > 750) {
+ g_print("Exiting..\n");
+ g_signal_emit_by_name(appdata->window, "delete_event");
+ }
+ return TRUE;
+}
+
+
+gboolean bottom_event_box_button_press(GtkWidget* widget, GdkEventButton* event, gpointer data) {
+ gdouble x = event->x;
+ g_print("Bottom event box pressed at: %f\n", x);
+ return TRUE;
+}
+