#ifndef _MAPPER_UI_COMMON_H
#define _MAPPER_UI_COMMON_H
-#include <config.h>
-
-#define _GNU_SOURCE
+#include "config.h"
#include <unistd.h>
#include <stdlib.h>
#include <glib/gstdio.h>
#include <gtk/gtk.h>
#include <fcntl.h>
-#include <gdk/gdkkeysyms.h>
-#include <libgnomevfs/gnome-vfs.h>
-#include <curl/multi.h>
-#include <gconf/gconf-client.h>
-#include <libxml/parser.h>
+#include "gps.h"
#include "mapper-types.h"
#include "ui-maemo.h"
#include "hildon-wrappers.h"
+#include "path.h"
#define SCALE_WIDTH (200)
/** The main GtkContainer of the application. */
GtkWidget *_window;
+GtkWidget *_gps_widget;
+GtkWidget *_map;
+GtkWidget *_toolbar;
-/** The widget that provides the visual display of the map. */
-GtkWidget *_map_widget;
+/* GPS Tab widget */
+GtkWidget *_gps_sat_view;
-/** The backing pixmap of _map_widget. */
-GdkPixmap *_map_pixmap;
+/* Heading Tab widget */
+GtkWidget *_tab_compass;
-GtkWidget *_gps_widget;
+/* Panel widgets */
+GtkWidget *_gps_compass;
+GtkWidget *_gps_signal;
-GtkWidget *_sat_details_panel;
GtkWidget *_sdi_lat;
GtkWidget *_sdi_lon;
GtkWidget *_sdi_spd;
GtkWidget *_sdi_msp;
/** Pango stuff. */
-GdkRectangle _scale_rect;
-PangoContext *_scale_context;
-PangoFontDescription *_scale_font;
-PangoLayout *_scale_layout;
-GdkGC *_speed_limit_gc1;
-GdkGC *_speed_limit_gc2;
-PangoContext *_speed_limit_context;
-PangoLayout *_speed_limit_layout;
-PangoFontDescription *_speed_limit_fontdesc;
PangoContext *_sat_panel_context;
PangoLayout *_sat_panel_layout;
PangoFontDescription *_sat_panel_fontdesc;
-PangoContext *_heading_panel_context;
-PangoLayout *_heading_panel_layout;
-PangoFontDescription *_heading_panel_fontdesc;
GdkGC *_sat_info_gc1;
GdkGC *_sat_info_gc2;
PangoContext *_sat_info_context;
PangoLayout *_sat_info_layout;
PangoFontDescription *_sat_info_fontdesc;
-PangoContext *_sat_details_context;
-PangoLayout *_sat_details_layout;
-PangoFontDescription *_sat_details_fontdesc;
-PangoContext *_sat_details_expose_context;
-PangoLayout *_sat_details_expose_layout;
-PangoFontDescription *_sat_details_expose_fontdesc;
/** THE GdkGC OBJECTS USED FOR DRAWING. */
GdkGC *_gc[COLORABLE_ENUM_COUNT];
GtkWidget *_cmenu_poi_goto_nearpoi;
/* Banners/Progress bars */
-GtkWidget *_download_banner;
GtkWidget *_status_bar;
struct _info_banner {
};
struct _info_banner info_banner;
+gint _show_tracks;
+gboolean _show_scale;
+gboolean _show_velvec;
+gboolean _show_poi;
+
GtkMenu *_menu_map;
-/** Context menu click location on map */
-guint _cmenu_position_x;
-guint _cmenu_position_y;
+GtkWidget *route_tree_view;
+GtkWidget *track_tree_view;
+
+Path *_route;
+Path *_track;
+
+AutoRouteDownloadData _autoroute_data;
-gboolean window_present();
-void popup_error(GtkWidget * window, const gchar * error);
void mapper_ui_init(void);
+gboolean window_present();
+
+void set_action_sensitive(const char *name, gboolean sensitive);
+void set_action_activate(const char *name, gboolean active);
+
+/* XXX: Not the right place but.. */
+gboolean gps_info_update(Gps *gps);
+gboolean gps_location_update(Gps *gps);
+gboolean gps_retry_connection(Gps *gps, const gchar *error);
#endif