Diff of /trunk/src/osm-gps-map.h

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 57 by harbaum, Sun Aug 16 19:29:01 2009 UTC revision 75 by harbaum, Mon Aug 24 12:57:15 2009 UTC
# Line 25  Line 25 
25  #ifndef _OSM_GPS_MAP_H_  #ifndef _OSM_GPS_MAP_H_
26  #define _OSM_GPS_MAP_H_  #define _OSM_GPS_MAP_H_
27    
28    #include "config.h"
29    
30  #include <glib.h>  #include <glib.h>
31  #include <glib-object.h>  #include <glib-object.h>
32  #include <gtk/gtk.h>  #include <gtk/gtk.h>
# Line 76  typedef enum { Line 78  typedef enum {
78      OSM_GPS_MAP_SOURCE_YAHOO_HYBRID      OSM_GPS_MAP_SOURCE_YAHOO_HYBRID
79  } OsmGpsMapSource_t;  } OsmGpsMapSource_t;
80    
81    typedef struct {
82        gint x, y, w, h;
83    } OsmGpsMapRect_t;
84    
85    typedef enum {
86        OSD_NONE = 0,
87        OSD_BG,
88        OSD_UP,
89        OSD_DOWN,
90        OSD_LEFT,
91        OSD_RIGHT,
92        OSD_IN,
93        OSD_OUT,
94        OSD_CUSTOM   // first custom buttom
95    } osd_button_t;
96    
97    typedef void (*OsmGpsMapOsdCallback)(osd_button_t but, gpointer data);
98    #define OSM_GPS_MAP_OSD_CALLBACK(f) ((OsmGpsMapOsdCallback) (f))
99    
100    /* the osd structure mainly contains various callbacks */
101    /* required to draw and update the OSD */
102    typedef struct osm_gps_map_osd_s {
103        GtkWidget *widget;   // the main map widget (to get its stlye info)
104    
105        void(*render)(struct osm_gps_map_osd_s *);
106        void(*draw)(struct osm_gps_map_osd_s *, GdkDrawable *);
107        osd_button_t(*check)(gint, gint);       /* check if x/y lies within OSD */
108        void(*free)(struct osm_gps_map_osd_s *);
109    
110        OsmGpsMapOsdCallback cb;
111        gpointer data;
112    
113        gpointer priv;
114    } osm_gps_map_osd_t;
115    
116    typedef void (*OsmGpsMapBalloonCallback)(cairo_t *, OsmGpsMapRect_t *rect,
117                                             gpointer data);
118    #define OSM_GPS_MAP_BALLOON_CALLBACK(f) ((OsmGpsMapBalloonCallback) (f))
119    
120  GType osm_gps_map_get_type (void) G_GNUC_CONST;  GType osm_gps_map_get_type (void) G_GNUC_CONST;
121    
122  const char* osm_gps_map_source_get_friendly_name(OsmGpsMapSource_t source);  const char* osm_gps_map_source_get_friendly_name(OsmGpsMapSource_t source);
# Line 94  void osm_gps_map_clear_tracks (OsmGpsMap Line 135  void osm_gps_map_clear_tracks (OsmGpsMap
135  void osm_gps_map_add_image (OsmGpsMap *map, float latitude, float longitude, GdkPixbuf *image);  void osm_gps_map_add_image (OsmGpsMap *map, float latitude, float longitude, GdkPixbuf *image);
136  gboolean osm_gps_map_remove_image (OsmGpsMap *map, GdkPixbuf *image);  gboolean osm_gps_map_remove_image (OsmGpsMap *map, GdkPixbuf *image);
137  void osm_gps_map_clear_images (OsmGpsMap *map);  void osm_gps_map_clear_images (OsmGpsMap *map);
 void osm_gps_map_osd_speed (OsmGpsMap *map, float speed);  
138  void osm_gps_map_draw_gps (OsmGpsMap *map, float latitude, float longitude, float heading);  void osm_gps_map_draw_gps (OsmGpsMap *map, float latitude, float longitude, float heading);
139  void osm_gps_map_clear_gps (OsmGpsMap *map);  void osm_gps_map_clear_gps (OsmGpsMap *map);
140  coord_t osm_gps_map_get_co_ordinates (OsmGpsMap *map, int pixel_x, int pixel_y);  coord_t osm_gps_map_get_co_ordinates (OsmGpsMap *map, int pixel_x, int pixel_y);
# Line 107  void osm_gps_map_geographic_to_screen (O Line 147  void osm_gps_map_geographic_to_screen (O
147                                         gint *pixel_x, gint *pixel_y);                                         gint *pixel_x, gint *pixel_y);
148  void osm_gps_map_scroll (OsmGpsMap *map, gint dx, gint dy);  void osm_gps_map_scroll (OsmGpsMap *map, gint dx, gint dy);
149  float osm_gps_map_get_scale(OsmGpsMap *map);  float osm_gps_map_get_scale(OsmGpsMap *map);
150  void osm_gps_map_draw_balloon (OsmGpsMap *map, float latitude, float longitude);  #ifdef ENABLE_BALLOON
151    void osm_gps_map_draw_balloon (OsmGpsMap *map, float latitude, float longitude, OsmGpsMapBalloonCallback cb, gpointer data);
152  void osm_gps_map_clear_balloon (OsmGpsMap *map);  void osm_gps_map_clear_balloon (OsmGpsMap *map);
153    #endif
154    #ifdef ENABLE_OSD
155    void osm_gps_map_register_osd(OsmGpsMap *map, osm_gps_map_osd_t *osd);
156    void osm_gps_map_redraw (OsmGpsMap *map);
157    osm_gps_map_osd_t *osm_gps_map_osd_get(OsmGpsMap *map);
158    #endif
159    
160    
161  G_END_DECLS  G_END_DECLS
162    

Legend:
Removed from v.57  
changed lines
  Added in v.75