summaryrefslogtreecommitdiffstats
path: root/friendfinder/e_smart_map.c
diff options
context:
space:
mode:
authorPatrick Hornecker2010-01-13 19:22:19 +0100
committerPatrick Hornecker2010-01-13 19:22:19 +0100
commitb61e4bd4fc98907bc438b707e15ce4f82860e109 (patch)
tree1692f56f810d77bc02b10fe5328aa23cdab9e8e7 /friendfinder/e_smart_map.c
parentfew bugs fixed, position drawing corrected... (diff)
downloadfriendfinder-b61e4bd4fc98907bc438b707e15ce4f82860e109.tar.gz
friendfinder-b61e4bd4fc98907bc438b707e15ce4f82860e109.tar.xz
friendfinder-b61e4bd4fc98907bc438b707e15ce4f82860e109.zip
file reader built in (currently not working)...few map bug fixed...msg_sender not stable atm
Diffstat (limited to 'friendfinder/e_smart_map.c')
-rw-r--r--friendfinder/e_smart_map.c50
1 files changed, 36 insertions, 14 deletions
diff --git a/friendfinder/e_smart_map.c b/friendfinder/e_smart_map.c
index a35abf3..a248f2d 100644
--- a/friendfinder/e_smart_map.c
+++ b/friendfinder/e_smart_map.c
@@ -84,7 +84,7 @@ static struct bubble *create_text_bubble(struct smart_map *smart, char *info, ch
return bubble;
}
-void e_smart_map_overlay_set_bubble(Evas_Object *o, char *overlay, char *info, char *text, double lat, double lon, int flags)
+void e_smart_map_overlay_set_bubble(Evas_Object *o, char *overlay, char *info, char *text, double lat, double lon, int flags, int type)
{
struct smart_map *smart;
smart = evas_object_smart_data_get(o);
@@ -93,22 +93,44 @@ void e_smart_map_overlay_set_bubble(Evas_Object *o, char *overlay, char *info, c
struct overlay_item *poi = malloc(sizeof(struct overlay_item));
bb = create_text_bubble(smart, info, text);
- poi->obj = &bb->object;
- poi->lat = lat;
- poi->lon = lon;
- poi->level_mask = flags;
+ if (type == 0)
+ {
- struct map_overlay *ov = overlay_find_by_name(smart, overlay);
- if(ov == NULL)
- e_smart_map_add_overlay(o, overlay);
+ poi->obj = &bb->object;
+ poi->lat = lat;
+ poi->lon = lon;
+ poi->level_mask = flags;
- ov = overlay_find_by_name(smart, overlay);
- if(ov == NULL)
- return;
+ struct map_overlay *ov = overlay_find_by_name(smart, overlay);
+ if(ov == NULL)
+ e_smart_map_add_overlay(o, overlay);
- overlay_add(smart, ov, poi);
- overlay_change_level(smart, smart->current_level);
- map_object_update(smart);
+ ov = overlay_find_by_name(smart, overlay);
+ if(ov == NULL)
+ return;
+
+ overlay_add(smart, ov, poi);
+ overlay_change_level(smart, smart->current_level);
+ map_object_update(smart);
+ }
+
+ if (type == 1)
+ {
+ poi->obj = &bb->object;
+ poi->lat = lat;
+ poi->lon = lon;
+ poi->level_mask = flags;
+
+ struct map_overlay *ov = overlay_find_by_name(smart, overlay);
+ if(ov == NULL)
+ e_smart_map_add_overlay(o, overlay);
+
+ ov = overlay_find_by_name(smart, overlay);
+ if(ov == NULL)
+ return;
+
+ map_object_update(smart);
+ }
}
void e_smart_map_overlay_hide(Evas_Object *o, char *overlay)