****/
#include "callbacks.h"
+#include "appdata.h"
-void location_changed(LocationGPSDevice *device, gpointer userdata) {
- g_print ("Latitude: %.2f\nLongitude: %.2f\nAltitude: %.2f\n",
- device->fix->latitude, device->fix->longitude, device->fix->altitude);
+// this is just here for debugging and tracing purposes
+static void print_location(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 userdata) {
+
+}
+
+gboolean key_press_cb(GtkWidget* widget, GdkEventKey* event, HildonWindow* window) {
+ switch (event->keyval) {
+ case GDK_Up:
+ hildon_banner_show_information(GTK_WIDGET(window), NULL, "Navigation Key Up");
+ return TRUE;
+
+ case GDK_Down:
+ hildon_banner_show_information(GTK_WIDGET(window), NULL, "Navigation Key Down");
+ return TRUE;
+
+ case GDK_Left:
+ hildon_banner_show_information(GTK_WIDGET(window), NULL, "Navigation Key Left");
+ return TRUE;
+
+ case GDK_Right:
+ hildon_banner_show_information(GTK_WIDGET(window), NULL, "Navigation Key Right");
+ return TRUE;
+
+ case GDK_Return:
+ hildon_banner_show_information(GTK_WIDGET(window), NULL, "Navigation Key select");
+ return TRUE;
+
+ case GDK_F6:
+ hildon_banner_show_information(GTK_WIDGET(window), NULL, "Full screen");
+ return TRUE;
+
+ case GDK_F7:
+ hildon_banner_show_information(GTK_WIDGET(window), NULL, "Increase (zoom in)");
+ return TRUE;
+
+ case GDK_F8:
+ hildon_banner_show_information(GTK_WIDGET(window), NULL, "Decrease (zoom out)");
+ return TRUE;
+
+ case GDK_Escape:
+ hildon_banner_show_information(GTK_WIDGET(window), NULL, "Cancel/Close");
+ return TRUE;
+ }
+
+ 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");
+ stop_gps(appdata);
+ g_signal_emit_by_name(appdata->window, "delete_event");
+ }
+ else {
+ randomize(appdata);
+ }
+ 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);
+ AppData* appdata = (AppData*) data;
+
+ randomize(data);
+ return TRUE;
+}