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

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

revision 66 by harbaum, Wed Aug 19 20:03:28 2009 UTC revision 73 by harbaum, Sun Aug 23 19:38: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 80  typedef struct { Line 82  typedef struct {
82      gint x, y, w, h;      gint x, y, w, h;
83  } OsmGpsMapRect_t;  } 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        GdkPixmap *pixmap;   // the main pixmap (to draw on it)
104        GtkWidget *widget;   // the main map widget (to get its stlye info)
105    
106        void(*render)(struct osm_gps_map_osd_s *);
107        void(*draw)(struct osm_gps_map_osd_s *, gint, gint);
108        void(*restore)(struct osm_gps_map_osd_s *) ;
109        osd_button_t(*check)(gint, gint);       /* check if x/y lies within OSD */
110        void(*free)(struct osm_gps_map_osd_s *);
111    
112        OsmGpsMapOsdCallback cb;
113        gpointer data;
114    
115        gpointer priv;
116    } osm_gps_map_osd_t;
117    
118  typedef void (*OsmGpsMapBalloonCallback)(cairo_t *, OsmGpsMapRect_t *rect,  typedef void (*OsmGpsMapBalloonCallback)(cairo_t *, OsmGpsMapRect_t *rect,
119                                           gpointer data);                                           gpointer data);
120  #define OSM_GPS_MAP_BALLOON_CALLBACK(f) ((OsmGpsMapBalloonCallback) (f))  #define OSM_GPS_MAP_BALLOON_CALLBACK(f) ((OsmGpsMapBalloonCallback) (f))
121    
 typedef void (*OsmGpsMapOsdGpsCallback)(gpointer data);  
 #define OSM_GPS_MAP_OSD_GPS_CALLBACK(f) ((OsmGpsMapOsdGpsCallback) (f))  
   
122  GType osm_gps_map_get_type (void) G_GNUC_CONST;  GType osm_gps_map_get_type (void) G_GNUC_CONST;
123    
124  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 123  void osm_gps_map_draw_balloon (OsmGpsMap Line 155  void osm_gps_map_draw_balloon (OsmGpsMap
155  void osm_gps_map_clear_balloon (OsmGpsMap *map);  void osm_gps_map_clear_balloon (OsmGpsMap *map);
156  #endif  #endif
157  #ifdef ENABLE_OSD  #ifdef ENABLE_OSD
158  void osm_gps_map_osd_enable_gps (OsmGpsMap *map, OsmGpsMapOsdGpsCallback cb, gpointer data);  void osm_gps_map_register_osd(OsmGpsMap *map, osm_gps_map_osd_t *osd);
159    void osm_gps_map_redraw (OsmGpsMap *map);
160    osm_gps_map_osd_t *osm_gps_map_osd_get(OsmGpsMap *map);
161  #endif  #endif
162    
163    

Legend:
Removed from v.66  
changed lines
  Added in v.73