summaryrefslogtreecommitdiffstats
path: root/friendfinder
diff options
context:
space:
mode:
authorPatrick Hornecker2010-02-05 10:22:24 +0100
committerPatrick Hornecker2010-02-05 10:22:24 +0100
commit99e14a0d8f0447290eaff38be4e71afb63a3e332 (patch)
tree4326645e0fff19aa8136eac8777b304c99768eb3 /friendfinder
parenttex source and barcode improvements (diff)
downloadfriendfinder-99e14a0d8f0447290eaff38be4e71afb63a3e332.tar.gz
friendfinder-99e14a0d8f0447290eaff38be4e71afb63a3e332.tar.xz
friendfinder-99e14a0d8f0447290eaff38be4e71afb63a3e332.zip
tex source and barcode improvements
Diffstat (limited to 'friendfinder')
-rw-r--r--friendfinder/DlTdkw19.xhtml.part560
-rw-r--r--friendfinder/Makefile.inc2
-rw-r--r--friendfinder/barcode.c55
-rw-r--r--friendfinder/barcode.h1
-rw-r--r--friendfinder/barcode.pngbin1561 -> 524 bytes
-rwxr-xr-xfriendfinder/guibin188787 -> 186893 bytes
-rw-r--r--friendfinder/gui.c4
7 files changed, 53 insertions, 569 deletions
diff --git a/friendfinder/DlTdkw19.xhtml.part b/friendfinder/DlTdkw19.xhtml.part
deleted file mode 100644
index dd4b938..0000000
--- a/friendfinder/DlTdkw19.xhtml.part
+++ /dev/null
@@ -1,560 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US" lang="en-US">
-<!-- git web interface version 1.6.0.4, (C) 2005-2006, Kay Sievers <kay.sievers@vrfy.org>, Christian Gierke -->
-<!-- git core binaries version 1.6.0.4 -->
-<head>
-<meta http-equiv="content-type" content="application/xhtml+xml; charset=utf-8"/>
-<meta name="generator" content="gitweb/1.6.0.4 git/1.6.0.4"/>
-<meta name="robots" content="index, nofollow"/>
-<title>git.openslx.org - lsfks/friendfinder.git/blob - friendfinder/e_smart_map.c</title>
-<link rel="stylesheet" type="text/css" href="/gitweb.css"/>
-<link rel="alternate" title="lsfks/friendfinder.git - history of friendfinder/e_smart_map.c - RSS feed" href="http://git.openslx.org/lsfks/friendfinder.git?a=rss;f=friendfinder/e_smart_map.c" type="application/rss+xml" />
-<link rel="alternate" title="lsfks/friendfinder.git - history of friendfinder/e_smart_map.c - RSS feed (no merges)" href="http://git.openslx.org/lsfks/friendfinder.git?a=rss;f=friendfinder/e_smart_map.c;opt=--no-merges" type="application/rss+xml" />
-<link rel="alternate" title="lsfks/friendfinder.git - history of friendfinder/e_smart_map.c - Atom feed" href="http://git.openslx.org/lsfks/friendfinder.git?a=atom;f=friendfinder/e_smart_map.c;opt=--no-merges" type="application/atom+xml" />
-<link rel="alternate" title="lsfks/friendfinder.git - history of friendfinder/e_smart_map.c - Atom feed (no merges)" href="http://git.openslx.org/lsfks/friendfinder.git?a=atom;f=friendfinder/e_smart_map.c;opt=--no-merges" type="application/atom+xml" />
-<link rel="shortcut icon" href="/git-favicon.png" type="image/png" />
-</head>
-<body>
-<div class="page_header">
-<a title="git homepage" href="http://git.or.cz/"><img src="/git-logo.png" width="72" height="27" alt="git" class="logo"/></a><a href="http://git.openslx.org">projects</a> / <a href="http://git.openslx.org/lsfks/friendfinder.git">lsfks/friendfinder.git</a> / blob
-</div>
-<form method="get" action="http://git.openslx.org/lsfks/friendfinder.git" enctype="application/x-www-form-urlencoded">
-<div class="search">
-<input name="a" type="hidden" value="search" />
-<input name="h" type="hidden" value="c8e4f9198d2055515a4678ae1f1136979e8cb431" />
-<select name="st" >
-<option selected="selected" value="commit">commit</option>
-<option value="grep">grep</option>
-<option value="author">author</option>
-<option value="committer">committer</option>
-<option value="pickaxe">pickaxe</option>
-</select><sup><a href="http://git.openslx.org/lsfks/friendfinder.git?a=search_help">?</a></sup> search:
-<input type="text" name="s" />
-<span title="Extended regular expression"><label><input type="checkbox" name="sr" value="1" />re</label></span></div>
-</form>
-<div class="page_nav">
-<a href="http://git.openslx.org/lsfks/friendfinder.git">summary</a> | <a href="http://git.openslx.org/lsfks/friendfinder.git?a=shortlog">shortlog</a> | <a href="http://git.openslx.org/lsfks/friendfinder.git?a=log">log</a> | <a href="http://git.openslx.org/lsfks/friendfinder.git?a=commit;h=c8e4f9198d2055515a4678ae1f1136979e8cb431">commit</a> | <a href="http://git.openslx.org/lsfks/friendfinder.git?a=commitdiff;h=c8e4f9198d2055515a4678ae1f1136979e8cb431">commitdiff</a> | <a href="http://git.openslx.org/lsfks/friendfinder.git?a=tree;h=4bb23ce3f096887805873d90584776310163f188;hb=c8e4f9198d2055515a4678ae1f1136979e8cb431">tree</a><br/>
-<a href="http://git.openslx.org/lsfks/friendfinder.git?a=history;f=friendfinder/e_smart_map.c;h=a248f2dc3217b847d8f3ccdb7769686d3ffb8cb4;hb=c8e4f9198d2055515a4678ae1f1136979e8cb431">history</a> | <a href="http://git.openslx.org/lsfks/friendfinder.git?a=blob_plain;f=friendfinder/e_smart_map.c;h=a248f2dc3217b847d8f3ccdb7769686d3ffb8cb4;hb=c8e4f9198d2055515a4678ae1f1136979e8cb431">raw</a> | <a href="http://git.openslx.org/lsfks/friendfinder.git?a=blob;f=friendfinder/e_smart_map.c;hb=HEAD">HEAD</a><br/>
-</div>
-<div class="header">
-<a class="title" href="http://git.openslx.org/lsfks/friendfinder.git?a=commit;h=c8e4f9198d2055515a4678ae1f1136979e8cb431">bugs and memory fixes</a>
-</div>
-<div class="page_path"><a title="tree root" href="http://git.openslx.org/lsfks/friendfinder.git?a=tree;hb=c8e4f9198d2055515a4678ae1f1136979e8cb431">[lsfks/friendfinder.git]</a> / <a title="friendfinder" href="http://git.openslx.org/lsfks/friendfinder.git?a=tree;f=friendfinder;hb=c8e4f9198d2055515a4678ae1f1136979e8cb431">friendfinder</a> / <a title="friendfinder/e_smart_map.c" href="http://git.openslx.org/lsfks/friendfinder.git?a=blob_plain;f=friendfinder/e_smart_map.c;hb=c8e4f9198d2055515a4678ae1f1136979e8cb431">e_smart_map.c</a><br/></div>
-<div class="page_body">
-<div class="pre"><a id="l1" href="#l1" class="linenr"> 1</a> #include&nbsp;&lt;stdio.h&gt;</div>
-<div class="pre"><a id="l2" href="#l2" class="linenr"> 2</a> #include&nbsp;&lt;string.h&gt;</div>
-<div class="pre"><a id="l3" href="#l3" class="linenr"> 3</a> </div>
-<div class="pre"><a id="l4" href="#l4" class="linenr"> 4</a> #include&nbsp;&lt;Ecore.h&gt;</div>
-<div class="pre"><a id="l5" href="#l5" class="linenr"> 5</a> #include&nbsp;&lt;Ecore_Evas.h&gt;</div>
-<div class="pre"><a id="l6" href="#l6" class="linenr"> 6</a> #include&nbsp;&lt;Edje.h&gt;</div>
-<div class="pre"><a id="l7" href="#l7" class="linenr"> 7</a> #include&nbsp;&lt;Elementary.h&gt;</div>
-<div class="pre"><a id="l8" href="#l8" class="linenr"> 8</a> </div>
-<div class="pre"><a id="l9" href="#l9" class="linenr"> 9</a> #include&nbsp;&quot;e_smart_map.h&quot;</div>
-<div class="pre"><a id="l10" href="#l10" class="linenr"> 10</a> #include&nbsp;&quot;e_smart_tile.h&quot;</div>
-<div class="pre"><a id="l11" href="#l11" class="linenr"> 11</a> </div>
-<div class="pre"><a id="l12" href="#l12" class="linenr"> 12</a> #include&nbsp;&quot;render/line.h&quot;</div>
-<div class="pre"><a id="l13" href="#l13" class="linenr"> 13</a> </div>
-<div class="pre"><a id="l14" href="#l14" class="linenr"> 14</a> #include&nbsp;&quot;map/smart_map_priv.h&quot;</div>
-<div class="pre"><a id="l15" href="#l15" class="linenr"> 15</a> </div>
-<div class="pre"><a id="l16" href="#l16" class="linenr"> 16</a> #include&nbsp;&quot;util/sqlite_helper.h&quot;</div>
-<div class="pre"><a id="l17" href="#l17" class="linenr"> 17</a> </div>
-<div class="pre"><a id="l18" href="#l18" class="linenr"> 18</a> static&nbsp;Evas_Smart&nbsp;*get_smart();</div>
-<div class="pre"><a id="l19" href="#l19" class="linenr"> 19</a> static&nbsp;void&nbsp;_map_object_add(Evas_Object&nbsp;*o);</div>
-<div class="pre"><a id="l20" href="#l20" class="linenr"> 20</a> static&nbsp;void&nbsp;_map_object_del(Evas_Object&nbsp;*o);</div>
-<div class="pre"><a id="l21" href="#l21" class="linenr"> 21</a> static&nbsp;void&nbsp;_map_object_move(Evas_Object&nbsp;*o,&nbsp;Evas_Coord&nbsp;x,&nbsp;Evas_Coord&nbsp;y);</div>
-<div class="pre"><a id="l22" href="#l22" class="linenr"> 22</a> static&nbsp;void&nbsp;_map_object_resize(Evas_Object&nbsp;*o,&nbsp;Evas_Coord&nbsp;w,&nbsp;Evas_Coord&nbsp;h);</div>
-<div class="pre"><a id="l23" href="#l23" class="linenr"> 23</a> static&nbsp;void&nbsp;_map_object_show(Evas_Object&nbsp;*o);</div>
-<div class="pre"><a id="l24" href="#l24" class="linenr"> 24</a> static&nbsp;void&nbsp;_map_object_hide(Evas_Object&nbsp;*o);</div>
-<div class="pre"><a id="l25" href="#l25" class="linenr"> 25</a> static&nbsp;void&nbsp;_map_object_color_set(Evas_Object&nbsp;*o,&nbsp;int&nbsp;r,&nbsp;int&nbsp;g,&nbsp;int&nbsp;b,&nbsp;int&nbsp;a);</div>
-<div class="pre"><a id="l26" href="#l26" class="linenr"> 26</a> static&nbsp;void&nbsp;_map_object_clip_set(Evas_Object&nbsp;*o,&nbsp;Evas_Object&nbsp;*clip);</div>
-<div class="pre"><a id="l27" href="#l27" class="linenr"> 27</a> static&nbsp;void&nbsp;_map_object_clip_unset(Evas_Object&nbsp;*o);</div>
-<div class="pre"><a id="l28" href="#l28" class="linenr"> 28</a> </div>
-<div class="pre"><a id="l29" href="#l29" class="linenr"> 29</a> #define&nbsp;SMART_MAP_NAME&nbsp;&quot;e_smart_map&quot;</div>
-<div class="pre"><a id="l30" href="#l30" class="linenr"> 30</a> </div>
-<div class="pre"><a id="l31" href="#l31" class="linenr"> 31</a> void&nbsp;e_smart_map_set_info(Evas_Object&nbsp;*o,&nbsp;const&nbsp;char&nbsp;*info)</div>
-<div class="pre"><a id="l32" href="#l32" class="linenr"> 32</a> {</div>
-<div class="pre"><a id="l33" href="#l33" class="linenr"> 33</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;struct&nbsp;smart_map&nbsp;*smart;</div>
-<div class="pre"><a id="l34" href="#l34" class="linenr"> 34</a> </div>
-<div class="pre"><a id="l35" href="#l35" class="linenr"> 35</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;smart&nbsp;=&nbsp;evas_object_smart_data_get(o);</div>
-<div class="pre"><a id="l36" href="#l36" class="linenr"> 36</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(smart-&gt;theme&nbsp;==&nbsp;NULL)</div>
-<div class="pre"><a id="l37" href="#l37" class="linenr"> 37</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return;</div>
-<div class="pre"><a id="l38" href="#l38" class="linenr"> 38</a> </div>
-<div class="pre"><a id="l39" href="#l39" class="linenr"> 39</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;edje_object_part_text_set(smart-&gt;theme,&nbsp;&quot;position&quot;,&nbsp;info);</div>
-<div class="pre"><a id="l40" href="#l40" class="linenr"> 40</a> }</div>
-<div class="pre"><a id="l41" href="#l41" class="linenr"> 41</a> </div>
-<div class="pre"><a id="l42" href="#l42" class="linenr"> 42</a> struct&nbsp;bubble</div>
-<div class="pre"><a id="l43" href="#l43" class="linenr"> 43</a> {</div>
-<div class="pre"><a id="l44" href="#l44" class="linenr"> 44</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;struct&nbsp;overlay_object&nbsp;object;</div>
-<div class="pre"><a id="l45" href="#l45" class="linenr"> 45</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Evas_Object&nbsp;*av;</div>
-<div class="pre"><a id="l46" href="#l46" class="linenr"> 46</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Evas_Object&nbsp;*bb;</div>
-<div class="pre"><a id="l47" href="#l47" class="linenr"> 47</a> };</div>
-<div class="pre"><a id="l48" href="#l48" class="linenr"> 48</a> </div>
-<div class="pre"><a id="l49" href="#l49" class="linenr"> 49</a> static&nbsp;struct&nbsp;bubble&nbsp;*create_text_bubble(struct&nbsp;smart_map&nbsp;*smart,&nbsp;char&nbsp;*info,&nbsp;char&nbsp;*text)</div>
-<div class="pre"><a id="l50" href="#l50" class="linenr"> 50</a> {</div>
-<div class="pre"><a id="l51" href="#l51" class="linenr"> 51</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;struct&nbsp;bubble&nbsp;*bubble;</div>
-<div class="pre"><a id="l52" href="#l52" class="linenr"> 52</a> </div>
-<div class="pre"><a id="l53" href="#l53" class="linenr"> 53</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;bubble&nbsp;=&nbsp;(struct&nbsp;bubble*)malloc(sizeof(struct&nbsp;bubble));</div>
-<div class="pre"><a id="l54" href="#l54" class="linenr"> 54</a> </div>
-<div class="pre"><a id="l55" href="#l55" class="linenr"> 55</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;bubble-&gt;object.obj&nbsp;=&nbsp;elm_box_add(smart-&gt;win);</div>
-<div class="pre"><a id="l56" href="#l56" class="linenr"> 56</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;evas_object_size_hint_weight_set(bubble-&gt;object.obj,&nbsp;1.0,&nbsp;1.0);</div>
-<div class="pre"><a id="l57" href="#l57" class="linenr"> 57</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;evas_object_size_hint_align_set(bubble-&gt;object.obj,&nbsp;0.0,&nbsp;0.0);</div>
-<div class="pre"><a id="l58" href="#l58" class="linenr"> 58</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div>
-<div class="pre"><a id="l59" href="#l59" class="linenr"> 59</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;bubble-&gt;av&nbsp;=&nbsp;elm_entry_add(smart-&gt;win);</div>
-<div class="pre"><a id="l60" href="#l60" class="linenr"> 60</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;elm_entry_entry_set(bubble-&gt;av,&nbsp;text);</div>
-<div class="pre"><a id="l61" href="#l61" class="linenr"> 61</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;elm_entry_line_wrap_set(bubble-&gt;av,&nbsp;0);</div>
-<div class="pre"><a id="l62" href="#l62" class="linenr"> 62</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;evas_object_size_hint_weight_set(bubble-&gt;av,&nbsp;1.0,&nbsp;1.0);</div>
-<div class="pre"><a id="l63" href="#l63" class="linenr"> 63</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;evas_object_smart_callback_add(av,&nbsp;&quot;anchor,clicked&quot;,&nbsp;my_anchorblock_anchor,&nbsp;av);</div>
-<div class="pre"><a id="l64" href="#l64" class="linenr"> 64</a> </div>
-<div class="pre"><a id="l65" href="#l65" class="linenr"> 65</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;bubble-&gt;bb&nbsp;=&nbsp;elm_bubble_add(smart-&gt;win);</div>
-<div class="pre"><a id="l66" href="#l66" class="linenr"> 66</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;elm_bubble_info_set(bubble-&gt;bb,&nbsp;info);</div>
-<div class="pre"><a id="l67" href="#l67" class="linenr"> 67</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;evas_object_size_hint_min_set(bubble-&gt;bb,&nbsp;150,&nbsp;150);</div>
-<div class="pre"><a id="l68" href="#l68" class="linenr"> 68</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;evas_object_size_hint_max_set(bubble-&gt;bb,&nbsp;300,&nbsp;300);</div>
-<div class="pre"><a id="l69" href="#l69" class="linenr"> 69</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;evas_object_size_hint_weight_set(bubble-&gt;bb,&nbsp;1.0,&nbsp;1.0);</div>
-<div class="pre"><a id="l70" href="#l70" class="linenr"> 70</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;evas_object_size_hint_align_set(bubble-&gt;bb,&nbsp;0.0,&nbsp;0.0);</div>
-<div class="pre"><a id="l71" href="#l71" class="linenr"> 71</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;elm_bubble_content_set(bubble-&gt;bb,&nbsp;bubble-&gt;av);</div>
-<div class="pre"><a id="l72" href="#l72" class="linenr"> 72</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;evas_object_show(bubble-&gt;av);</div>
-<div class="pre"><a id="l73" href="#l73" class="linenr"> 73</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;elm_anchorblock_hover_end(bubble-&gt;av);</div>
-<div class="pre"><a id="l74" href="#l74" class="linenr"> 74</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;elm_box_pack_end(bubble-&gt;object.obj,&nbsp;bubble-&gt;bb);</div>
-<div class="pre"><a id="l75" href="#l75" class="linenr"> 75</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div>
-<div class="pre"><a id="l76" href="#l76" class="linenr"> 76</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;evas_object_resize(bb,&nbsp;100,&nbsp;80);</div>
-<div class="pre"><a id="l77" href="#l77" class="linenr"> 77</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;evas_object_move(bb,&nbsp;120&nbsp;-&nbsp;15,160-23);</div>
-<div class="pre"><a id="l78" href="#l78" class="linenr"> 78</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;evas_object_show(bubble-&gt;bb);</div>
-<div class="pre"><a id="l79" href="#l79" class="linenr"> 79</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;bubble-&gt;object.ox&nbsp;=&nbsp;-14;</div>
-<div class="pre"><a id="l80" href="#l80" class="linenr"> 80</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;bubble-&gt;object.oy&nbsp;=&nbsp;-14;</div>
-<div class="pre"><a id="l81" href="#l81" class="linenr"> 81</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;bubble-&gt;object.sw&nbsp;=&nbsp;480;</div>
-<div class="pre"><a id="l82" href="#l82" class="linenr"> 82</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;bubble-&gt;object.sh&nbsp;=&nbsp;640;</div>
-<div class="pre"><a id="l83" href="#l83" class="linenr"> 83</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//fprintf(stderr,&nbsp;&quot;FIXME:&nbsp;%s:%i\n&quot;,&nbsp;__FILE__,&nbsp;__LINE__);</div>
-<div class="pre"><a id="l84" href="#l84" class="linenr"> 84</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;bubble;</div>
-<div class="pre"><a id="l85" href="#l85" class="linenr"> 85</a> }</div>
-<div class="pre"><a id="l86" href="#l86" class="linenr"> 86</a> </div>
-<div class="pre"><a id="l87" href="#l87" class="linenr"> 87</a> void&nbsp;e_smart_map_overlay_set_bubble(Evas_Object&nbsp;*o,&nbsp;char&nbsp;*overlay,&nbsp;char&nbsp;*info,&nbsp;char&nbsp;*text,&nbsp;double&nbsp;lat,&nbsp;double&nbsp;lon,&nbsp;int&nbsp;flags,&nbsp;int&nbsp;type)</div>
-<div class="pre"><a id="l88" href="#l88" class="linenr"> 88</a> {</div>
-<div class="pre"><a id="l89" href="#l89" class="linenr"> 89</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;struct&nbsp;smart_map&nbsp;*smart;</div>
-<div class="pre"><a id="l90" href="#l90" class="linenr"> 90</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;smart&nbsp;=&nbsp;evas_object_smart_data_get(o);</div>
-<div class="pre"><a id="l91" href="#l91" class="linenr"> 91</a> </div>
-<div class="pre"><a id="l92" href="#l92" class="linenr"> 92</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;struct&nbsp;bubble&nbsp;*bb;</div>
-<div class="pre"><a id="l93" href="#l93" class="linenr"> 93</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;struct&nbsp;overlay_item&nbsp;*poi&nbsp;=&nbsp;malloc(sizeof(struct&nbsp;overlay_item));</div>
-<div class="pre"><a id="l94" href="#l94" class="linenr"> 94</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;bb&nbsp;=&nbsp;create_text_bubble(smart,&nbsp;info,&nbsp;text);</div>
-<div class="pre"><a id="l95" href="#l95" class="linenr"> 95</a> </div>
-<div class="pre"><a id="l96" href="#l96" class="linenr"> 96</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(type&nbsp;==&nbsp;0)</div>
-<div class="pre"><a id="l97" href="#l97" class="linenr"> 97</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{</div>
-<div class="pre"><a id="l98" href="#l98" class="linenr"> 98</a> </div>
-<div class="pre"><a id="l99" href="#l99" class="linenr"> 99</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;poi-&gt;obj&nbsp;=&nbsp;&amp;bb-&gt;object;</div>
-<div class="pre"><a id="l100" href="#l100" class="linenr"> 100</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;poi-&gt;lat&nbsp;=&nbsp;lat;</div>
-<div class="pre"><a id="l101" href="#l101" class="linenr"> 101</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;poi-&gt;lon&nbsp;=&nbsp;lon;</div>
-<div class="pre"><a id="l102" href="#l102" class="linenr"> 102</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;poi-&gt;level_mask&nbsp;=&nbsp;flags;</div>
-<div class="pre"><a id="l103" href="#l103" class="linenr"> 103</a> </div>
-<div class="pre"><a id="l104" href="#l104" class="linenr"> 104</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;struct&nbsp;map_overlay&nbsp;*ov&nbsp;=&nbsp;overlay_find_by_name(smart,&nbsp;overlay);</div>
-<div class="pre"><a id="l105" href="#l105" class="linenr"> 105</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(ov&nbsp;==&nbsp;NULL)</div>
-<div class="pre"><a id="l106" href="#l106" class="linenr"> 106</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;e_smart_map_add_overlay(o,&nbsp;overlay);</div>
-<div class="pre"><a id="l107" href="#l107" class="linenr"> 107</a> </div>
-<div class="pre"><a id="l108" href="#l108" class="linenr"> 108</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ov&nbsp;=&nbsp;overlay_find_by_name(smart,&nbsp;overlay);</div>
-<div class="pre"><a id="l109" href="#l109" class="linenr"> 109</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(ov&nbsp;==&nbsp;NULL)</div>
-<div class="pre"><a id="l110" href="#l110" class="linenr"> 110</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return;</div>
-<div class="pre"><a id="l111" href="#l111" class="linenr"> 111</a> </div>
-<div class="pre"><a id="l112" href="#l112" class="linenr"> 112</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;overlay_add(smart,&nbsp;ov,&nbsp;poi);</div>
-<div class="pre"><a id="l113" href="#l113" class="linenr"> 113</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;overlay_change_level(smart,&nbsp;smart-&gt;current_level);</div>
-<div class="pre"><a id="l114" href="#l114" class="linenr"> 114</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;map_object_update(smart);</div>
-<div class="pre"><a id="l115" href="#l115" class="linenr"> 115</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</div>
-<div class="pre"><a id="l116" href="#l116" class="linenr"> 116</a> </div>
-<div class="pre"><a id="l117" href="#l117" class="linenr"> 117</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(type&nbsp;==&nbsp;1)</div>
-<div class="pre"><a id="l118" href="#l118" class="linenr"> 118</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{</div>
-<div class="pre"><a id="l119" href="#l119" class="linenr"> 119</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;poi-&gt;obj&nbsp;=&nbsp;&amp;bb-&gt;object;</div>
-<div class="pre"><a id="l120" href="#l120" class="linenr"> 120</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;poi-&gt;lat&nbsp;=&nbsp;lat;</div>
-<div class="pre"><a id="l121" href="#l121" class="linenr"> 121</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;poi-&gt;lon&nbsp;=&nbsp;lon;</div>
-<div class="pre"><a id="l122" href="#l122" class="linenr"> 122</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;poi-&gt;level_mask&nbsp;=&nbsp;flags;</div>
-<div class="pre"><a id="l123" href="#l123" class="linenr"> 123</a> </div>
-<div class="pre"><a id="l124" href="#l124" class="linenr"> 124</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;struct&nbsp;map_overlay&nbsp;*ov&nbsp;=&nbsp;overlay_find_by_name(smart,&nbsp;overlay);</div>
-<div class="pre"><a id="l125" href="#l125" class="linenr"> 125</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(ov&nbsp;==&nbsp;NULL)</div>
-<div class="pre"><a id="l126" href="#l126" class="linenr"> 126</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;e_smart_map_add_overlay(o,&nbsp;overlay);</div>
-<div class="pre"><a id="l127" href="#l127" class="linenr"> 127</a> </div>
-<div class="pre"><a id="l128" href="#l128" class="linenr"> 128</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ov&nbsp;=&nbsp;overlay_find_by_name(smart,&nbsp;overlay);</div>
-<div class="pre"><a id="l129" href="#l129" class="linenr"> 129</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(ov&nbsp;==&nbsp;NULL)</div>
-<div class="pre"><a id="l130" href="#l130" class="linenr"> 130</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return;</div>
-<div class="pre"><a id="l131" href="#l131" class="linenr"> 131</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div>
-<div class="pre"><a id="l132" href="#l132" class="linenr"> 132</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;map_object_update(smart);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div>
-<div class="pre"><a id="l133" href="#l133" class="linenr"> 133</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</div>
-<div class="pre"><a id="l134" href="#l134" class="linenr"> 134</a> }</div>
-<div class="pre"><a id="l135" href="#l135" class="linenr"> 135</a> </div>
-<div class="pre"><a id="l136" href="#l136" class="linenr"> 136</a> void&nbsp;e_smart_map_overlay_hide(Evas_Object&nbsp;*o,&nbsp;char&nbsp;*overlay)</div>
-<div class="pre"><a id="l137" href="#l137" class="linenr"> 137</a> {</div>
-<div class="pre"><a id="l138" href="#l138" class="linenr"> 138</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;struct&nbsp;smart_map&nbsp;*smart;</div>
-<div class="pre"><a id="l139" href="#l139" class="linenr"> 139</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;smart&nbsp;=&nbsp;evas_object_smart_data_get(o);</div>
-<div class="pre"><a id="l140" href="#l140" class="linenr"> 140</a> </div>
-<div class="pre"><a id="l141" href="#l141" class="linenr"> 141</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;overlay_hide(smart,&nbsp;overlay);</div>
-<div class="pre"><a id="l142" href="#l142" class="linenr"> 142</a> }</div>
-<div class="pre"><a id="l143" href="#l143" class="linenr"> 143</a> </div>
-<div class="pre"><a id="l144" href="#l144" class="linenr"> 144</a> void&nbsp;e_smart_map_set_pos_px(Evas_Object&nbsp;*o,&nbsp;Evas_Coord&nbsp;x,&nbsp;Evas_Coord&nbsp;y)</div>
-<div class="pre"><a id="l145" href="#l145" class="linenr"> 145</a> {</div>
-<div class="pre"><a id="l146" href="#l146" class="linenr"> 146</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;struct&nbsp;smart_map&nbsp;*smart;</div>
-<div class="pre"><a id="l147" href="#l147" class="linenr"> 147</a> </div>
-<div class="pre"><a id="l148" href="#l148" class="linenr"> 148</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;smart&nbsp;=&nbsp;evas_object_smart_data_get(o);</div>
-<div class="pre"><a id="l149" href="#l149" class="linenr"> 149</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;smart-&gt;ta.ox&nbsp;=&nbsp;x;</div>
-<div class="pre"><a id="l150" href="#l150" class="linenr"> 150</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;smart-&gt;ta.oy&nbsp;=&nbsp;y;</div>
-<div class="pre"><a id="l151" href="#l151" class="linenr"> 151</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;smart-&gt;ta.mode&nbsp;=&nbsp;POSITION_PX;</div>
-<div class="pre"><a id="l152" href="#l152" class="linenr"> 152</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;map_object_update(smart);</div>
-<div class="pre"><a id="l153" href="#l153" class="linenr"> 153</a> }</div>
-<div class="pre"><a id="l154" href="#l154" class="linenr"> 154</a> </div>
-<div class="pre"><a id="l155" href="#l155" class="linenr"> 155</a> void&nbsp;e_smart_map_set_pos(Evas_Object&nbsp;*o,&nbsp;double&nbsp;lat,&nbsp;double&nbsp;lon)</div>
-<div class="pre"><a id="l156" href="#l156" class="linenr"> 156</a> {</div>
-<div class="pre"><a id="l157" href="#l157" class="linenr"> 157</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;struct&nbsp;smart_map&nbsp;*smart;</div>
-<div class="pre"><a id="l158" href="#l158" class="linenr"> 158</a> </div>
-<div class="pre"><a id="l159" href="#l159" class="linenr"> 159</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;smart&nbsp;=&nbsp;evas_object_smart_data_get(o);</div>
-<div class="pre"><a id="l160" href="#l160" class="linenr"> 160</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;smart-&gt;ta.lat&nbsp;=&nbsp;lat;</div>
-<div class="pre"><a id="l161" href="#l161" class="linenr"> 161</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;smart-&gt;ta.lon&nbsp;=&nbsp;lon;</div>
-<div class="pre"><a id="l162" href="#l162" class="linenr"> 162</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;smart-&gt;ta.mode&nbsp;=&nbsp;POSITION_WORLD;</div>
-<div class="pre"><a id="l163" href="#l163" class="linenr"> 163</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;smart-&gt;lat&nbsp;=&nbsp;lat;</div>
-<div class="pre"><a id="l164" href="#l164" class="linenr"> 164</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;smart-&gt;lon&nbsp;=&nbsp;lon;</div>
-<div class="pre"><a id="l165" href="#l165" class="linenr"> 165</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;map_object_update(smart);</div>
-<div class="pre"><a id="l166" href="#l166" class="linenr"> 166</a> }</div>
-<div class="pre"><a id="l167" href="#l167" class="linenr"> 167</a> </div>
-<div class="pre"><a id="l168" href="#l168" class="linenr"> 168</a> void&nbsp;e_smart_map_get_pos(Evas_Object&nbsp;*o,&nbsp;double&nbsp;*lat,&nbsp;double&nbsp;*lon)</div>
-<div class="pre"><a id="l169" href="#l169" class="linenr"> 169</a> {</div>
-<div class="pre"><a id="l170" href="#l170" class="linenr"> 170</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;struct&nbsp;smart_map&nbsp;*smart;</div>
-<div class="pre"><a id="l171" href="#l171" class="linenr"> 171</a> </div>
-<div class="pre"><a id="l172" href="#l172" class="linenr"> 172</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;smart&nbsp;=&nbsp;evas_object_smart_data_get(o);</div>
-<div class="pre"><a id="l173" href="#l173" class="linenr"> 173</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*lat&nbsp;=&nbsp;smart-&gt;lat;</div>
-<div class="pre"><a id="l174" href="#l174" class="linenr"> 174</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*lon&nbsp;=&nbsp;smart-&gt;lon;</div>
-<div class="pre"><a id="l175" href="#l175" class="linenr"> 175</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;printf(&quot;%f&nbsp;\n&quot;,&nbsp;smart-&gt;lat);</div>
-<div class="pre"><a id="l176" href="#l176" class="linenr"> 176</a> }</div>
-<div class="pre"><a id="l177" href="#l177" class="linenr"> 177</a> </div>
-<div class="pre"><a id="l178" href="#l178" class="linenr"> 178</a> </div>
-<div class="pre"><a id="l179" href="#l179" class="linenr"> 179</a> void&nbsp;e_smart_map_move(Evas_Object&nbsp;*o,&nbsp;Evas_Coord&nbsp;dx,&nbsp;Evas_Coord&nbsp;dy)</div>
-<div class="pre"><a id="l180" href="#l180" class="linenr"> 180</a> {</div>
-<div class="pre"><a id="l181" href="#l181" class="linenr"> 181</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;struct&nbsp;smart_map&nbsp;*smart;</div>
-<div class="pre"><a id="l182" href="#l182" class="linenr"> 182</a> </div>
-<div class="pre"><a id="l183" href="#l183" class="linenr"> 183</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;smart&nbsp;=&nbsp;evas_object_smart_data_get(o);</div>
-<div class="pre"><a id="l184" href="#l184" class="linenr"> 184</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;smart-&gt;ta.ox&nbsp;+=&nbsp;dx;</div>
-<div class="pre"><a id="l185" href="#l185" class="linenr"> 185</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;smart-&gt;ta.oy&nbsp;+=&nbsp;dy;</div>
-<div class="pre"><a id="l186" href="#l186" class="linenr"> 186</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;smart-&gt;ta.mode&nbsp;=&nbsp;POSITION_PX;</div>
-<div class="pre"><a id="l187" href="#l187" class="linenr"> 187</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;map_object_update(smart);</div>
-<div class="pre"><a id="l188" href="#l188" class="linenr"> 188</a> }</div>
-<div class="pre"><a id="l189" href="#l189" class="linenr"> 189</a> </div>
-<div class="pre"><a id="l190" href="#l190" class="linenr"> 190</a> static&nbsp;inline&nbsp;void&nbsp;</div>
-<div class="pre"><a id="l191" href="#l191" class="linenr"> 191</a> _polyline_to_map(struct&nbsp;smart_map&nbsp;*smart,&nbsp;struct&nbsp;polyline&nbsp;*pl)</div>
-<div class="pre"><a id="l192" href="#l192" class="linenr"> 192</a> {</div>
-<div class="pre"><a id="l193" href="#l193" class="linenr"> 193</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;int&nbsp;i;</div>
-<div class="pre"><a id="l194" href="#l194" class="linenr"> 194</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;int&nbsp;bx,&nbsp;by;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div>
-<div class="pre"><a id="l195" href="#l195" class="linenr"> 195</a> &nbsp;&nbsp;</div>
-<div class="pre"><a id="l196" href="#l196" class="linenr"> 196</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(smart-&gt;li&nbsp;==&nbsp;NULL)</div>
-<div class="pre"><a id="l197" href="#l197" class="linenr"> 197</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return;</div>
-<div class="pre"><a id="l198" href="#l198" class="linenr"> 198</a> &nbsp;&nbsp;</div>
-<div class="pre"><a id="l199" href="#l199" class="linenr"> 199</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for(i&nbsp;=&nbsp;0;&nbsp;i&nbsp;&lt;&nbsp;pl-&gt;count;&nbsp;i++)</div>
-<div class="pre"><a id="l200" href="#l200" class="linenr"> 200</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{</div>
-<div class="pre"><a id="l201" href="#l201" class="linenr"> 201</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(i&nbsp;==&nbsp;0)</div>
-<div class="pre"><a id="l202" href="#l202" class="linenr"> 202</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{</div>
-<div class="pre"><a id="l203" href="#l203" class="linenr"> 203</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div>
-<div class="pre"><a id="l204" href="#l204" class="linenr"> 204</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;latlon_to_map(smart-&gt;li,&nbsp;</div>
-<div class="pre"><a id="l205" href="#l205" class="linenr"> 205</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;pl-&gt;points[i].lat,&nbsp;pl-&gt;points[i].lon,&nbsp;&amp;bx,&nbsp;&amp;by);</div>
-<div class="pre"><a id="l206" href="#l206" class="linenr"> 206</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;pl-&gt;points[i].x&nbsp;=&nbsp;bx;</div>
-<div class="pre"><a id="l207" href="#l207" class="linenr"> 207</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;pl-&gt;points[i].y&nbsp;=&nbsp;by;</div>
-<div class="pre"><a id="l208" href="#l208" class="linenr"> 208</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</div>
-<div class="pre"><a id="l209" href="#l209" class="linenr"> 209</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;else&nbsp;{</div>
-<div class="pre"><a id="l210" href="#l210" class="linenr"> 210</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;int&nbsp;x,&nbsp;y;</div>
-<div class="pre"><a id="l211" href="#l211" class="linenr"> 211</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;latlon_to_map(smart-&gt;li,&nbsp;</div>
-<div class="pre"><a id="l212" href="#l212" class="linenr"> 212</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;pl-&gt;points[i].lat,&nbsp;pl-&gt;points[i].lon,&nbsp;&amp;x,&nbsp;&amp;y);</div>
-<div class="pre"><a id="l213" href="#l213" class="linenr"> 213</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;pl-&gt;points[i].x&nbsp;=&nbsp;x;</div>
-<div class="pre"><a id="l214" href="#l214" class="linenr"> 214</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;pl-&gt;points[i].y&nbsp;=&nbsp;y;</div>
-<div class="pre"><a id="l215" href="#l215" class="linenr"> 215</a> </div>
-<div class="pre"><a id="l216" href="#l216" class="linenr"> 216</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</div>
-<div class="pre"><a id="l217" href="#l217" class="linenr"> 217</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;point_dump(&amp;pl-&gt;points[i]);</div>
-<div class="pre"><a id="l218" href="#l218" class="linenr"> 218</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</div>
-<div class="pre"><a id="l219" href="#l219" class="linenr"> 219</a> }</div>
-<div class="pre"><a id="l220" href="#l220" class="linenr"> 220</a> </div>
-<div class="pre"><a id="l221" href="#l221" class="linenr"> 221</a> int&nbsp;e_smart_map_add_path(Evas_Object&nbsp;*o,&nbsp;struct&nbsp;polyline&nbsp;*_pl)</div>
-<div class="pre"><a id="l222" href="#l222" class="linenr"> 222</a> {</div>
-<div class="pre"><a id="l223" href="#l223" class="linenr"> 223</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;struct&nbsp;smart_map&nbsp;*smart;</div>
-<div class="pre"><a id="l224" href="#l224" class="linenr"> 224</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;smart&nbsp;=&nbsp;evas_object_smart_data_get(o);</div>
-<div class="pre"><a id="l225" href="#l225" class="linenr"> 225</a> </div>
-<div class="pre"><a id="l226" href="#l226" class="linenr"> 226</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Evas_Object&nbsp;*poly&nbsp;=&nbsp;e_smart_line_add(smart-&gt;evas);</div>
-<div class="pre"><a id="l227" href="#l227" class="linenr"> 227</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;_polyline_to_map(smart,&nbsp;_pl);</div>
-<div class="pre"><a id="l228" href="#l228" class="linenr"> 228</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;e_smart_line_set(poly,&nbsp;_pl);</div>
-<div class="pre"><a id="l229" href="#l229" class="linenr"> 229</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;evas_object_layer_set(poly,&nbsp;0);</div>
-<div class="pre"><a id="l230" href="#l230" class="linenr"> 230</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;evas_object_pass_events_set(poly,&nbsp;1);</div>
-<div class="pre"><a id="l231" href="#l231" class="linenr"> 231</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;evas_object_layer_set(smart-&gt;c.ctrl,&nbsp;5);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div>
-<div class="pre"><a id="l232" href="#l232" class="linenr"> 232</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;evas_object_show(poly);</div>
-<div class="pre"><a id="l233" href="#l233" class="linenr"> 233</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;eina_array_push(smart-&gt;paths,&nbsp;poly);</div>
-<div class="pre"><a id="l234" href="#l234" class="linenr"> 234</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;map_object_update(smart);</div>
-<div class="pre"><a id="l235" href="#l235" class="linenr"> 235</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;0;</div>
-<div class="pre"><a id="l236" href="#l236" class="linenr"> 236</a> }</div>
-<div class="pre"><a id="l237" href="#l237" class="linenr"> 237</a> </div>
-<div class="pre"><a id="l238" href="#l238" class="linenr"> 238</a> int&nbsp;e_smart_map_add_overlay(Evas_Object&nbsp;*o,&nbsp;char&nbsp;*name)</div>
-<div class="pre"><a id="l239" href="#l239" class="linenr"> 239</a> {</div>
-<div class="pre"><a id="l240" href="#l240" class="linenr"> 240</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;struct&nbsp;smart_map&nbsp;*smart;</div>
-<div class="pre"><a id="l241" href="#l241" class="linenr"> 241</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;smart&nbsp;=&nbsp;evas_object_smart_data_get(o);</div>
-<div class="pre"><a id="l242" href="#l242" class="linenr"> 242</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div>
-<div class="pre"><a id="l243" href="#l243" class="linenr"> 243</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;struct&nbsp;map_overlay&nbsp;*ov&nbsp;=&nbsp;overlay_create(smart,&nbsp;name);</div>
-<div class="pre"><a id="l244" href="#l244" class="linenr"> 244</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(ov&nbsp;==&nbsp;NULL)</div>
-<div class="pre"><a id="l245" href="#l245" class="linenr"> 245</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;-1;</div>
-<div class="pre"><a id="l246" href="#l246" class="linenr"> 246</a> </div>
-<div class="pre"><a id="l247" href="#l247" class="linenr"> 247</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;eina_array_push(smart-&gt;overlays,&nbsp;ov);&nbsp;&nbsp;&nbsp;&nbsp;</div>
-<div class="pre"><a id="l248" href="#l248" class="linenr"> 248</a> }</div>
-<div class="pre"><a id="l249" href="#l249" class="linenr"> 249</a> </div>
-<div class="pre"><a id="l250" href="#l250" class="linenr"> 250</a> Evas_Object&nbsp;*e_smart_map_add(Evas_Object&nbsp;*win,&nbsp;const&nbsp;char&nbsp;*map_eet)</div>
-<div class="pre"><a id="l251" href="#l251" class="linenr"> 251</a> {</div>
-<div class="pre"><a id="l252" href="#l252" class="linenr"> 252</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Evas_Object&nbsp;*obj;</div>
-<div class="pre"><a id="l253" href="#l253" class="linenr"> 253</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;struct&nbsp;smart_map&nbsp;*smart;</div>
-<div class="pre"><a id="l254" href="#l254" class="linenr"> 254</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Evas&nbsp;*e;</div>
-<div class="pre"><a id="l255" href="#l255" class="linenr"> 255</a> </div>
-<div class="pre"><a id="l256" href="#l256" class="linenr"> 256</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;e&nbsp;=&nbsp;evas_object_evas_get(win);</div>
-<div class="pre"><a id="l257" href="#l257" class="linenr"> 257</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;obj&nbsp;=&nbsp;evas_object_smart_add(e,&nbsp;get_smart());</div>
-<div class="pre"><a id="l258" href="#l258" class="linenr"> 258</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(obj&nbsp;==&nbsp;NULL)</div>
-<div class="pre"><a id="l259" href="#l259" class="linenr"> 259</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;NULL;</div>
-<div class="pre"><a id="l260" href="#l260" class="linenr"> 260</a> </div>
-<div class="pre"><a id="l261" href="#l261" class="linenr"> 261</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;smart&nbsp;=&nbsp;evas_object_smart_data_get(obj);</div>
-<div class="pre"><a id="l262" href="#l262" class="linenr"> 262</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(smart&nbsp;==&nbsp;NULL)</div>
-<div class="pre"><a id="l263" href="#l263" class="linenr"> 263</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{</div>
-<div class="pre"><a id="l264" href="#l264" class="linenr"> 264</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;evas_object_del(obj);</div>
-<div class="pre"><a id="l265" href="#l265" class="linenr"> 265</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;NULL;</div>
-<div class="pre"><a id="l266" href="#l266" class="linenr"> 266</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</div>
-<div class="pre"><a id="l267" href="#l267" class="linenr"> 267</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;smart-&gt;mi&nbsp;=&nbsp;map_info_read(map_eet);</div>
-<div class="pre"><a id="l268" href="#l268" class="linenr"> 268</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(smart-&gt;mi&nbsp;==&nbsp;NULL)</div>
-<div class="pre"><a id="l269" href="#l269" class="linenr"> 269</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{</div>
-<div class="pre"><a id="l270" href="#l270" class="linenr"> 270</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;printf(&quot;map_info&nbsp;read&nbsp;failed\n&quot;);</div>
-<div class="pre"><a id="l271" href="#l271" class="linenr"> 271</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;evas_object_del(obj);</div>
-<div class="pre"><a id="l272" href="#l272" class="linenr"> 272</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;NULL;</div>
-<div class="pre"><a id="l273" href="#l273" class="linenr"> 273</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</div>
-<div class="pre"><a id="l274" href="#l274" class="linenr"> 274</a> </div>
-<div class="pre"><a id="l275" href="#l275" class="linenr"> 275</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;smart-&gt;evas&nbsp;=&nbsp;e;</div>
-<div class="pre"><a id="l276" href="#l276" class="linenr"> 276</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;smart-&gt;li&nbsp;=&nbsp;NULL;</div>
-<div class="pre"><a id="l277" href="#l277" class="linenr"> 277</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;smart-&gt;ta.tiles&nbsp;=&nbsp;NULL;</div>
-<div class="pre"><a id="l278" href="#l278" class="linenr"> 278</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;smart-&gt;ta.ox&nbsp;=&nbsp;0;</div>
-<div class="pre"><a id="l279" href="#l279" class="linenr"> 279</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;smart-&gt;ta.oy&nbsp;=&nbsp;0;</div>
-<div class="pre"><a id="l280" href="#l280" class="linenr"> 280</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;smart-&gt;ta.mode&nbsp;=&nbsp;POSITION_PX;</div>
-<div class="pre"><a id="l281" href="#l281" class="linenr"> 281</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;smart-&gt;drag&nbsp;=&nbsp;0;</div>
-<div class="pre"><a id="l282" href="#l282" class="linenr"> 282</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;smart-&gt;theme&nbsp;=&nbsp;NULL;</div>
-<div class="pre"><a id="l283" href="#l283" class="linenr"> 283</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;smart-&gt;win&nbsp;=&nbsp;win;</div>
-<div class="pre"><a id="l284" href="#l284" class="linenr"> 284</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;smart-&gt;overlays&nbsp;=&nbsp;eina_array_new(4);</div>
-<div class="pre"><a id="l285" href="#l285" class="linenr"> 285</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;smart-&gt;paths&nbsp;=&nbsp;eina_array_new(4);</div>
-<div class="pre"><a id="l286" href="#l286" class="linenr"> 286</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;controls_init(smart);</div>
-<div class="pre"><a id="l287" href="#l287" class="linenr"> 287</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;_set_level(smart,&nbsp;8);&nbsp;&nbsp;&nbsp;</div>
-<div class="pre"><a id="l288" href="#l288" class="linenr"> 288</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;obj;</div>
-<div class="pre"><a id="l289" href="#l289" class="linenr"> 289</a> }</div>
-<div class="pre"><a id="l290" href="#l290" class="linenr"> 290</a> </div>
-<div class="pre"><a id="l291" href="#l291" class="linenr"> 291</a> int&nbsp;_set_level(struct&nbsp;smart_map&nbsp;*smart,&nbsp;int&nbsp;level)</div>
-<div class="pre"><a id="l292" href="#l292" class="linenr"> 292</a> {</div>
-<div class="pre"><a id="l293" href="#l293" class="linenr"> 293</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Eina_Array_Iterator&nbsp;iterator;</div>
-<div class="pre"><a id="l294" href="#l294" class="linenr"> 294</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;int&nbsp;i;</div>
-<div class="pre"><a id="l295" href="#l295" class="linenr"> 295</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Evas_Object&nbsp;*path;</div>
-<div class="pre"><a id="l296" href="#l296" class="linenr"> 296</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div>
-<div class="pre"><a id="l297" href="#l297" class="linenr"> 297</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;smart-&gt;li&nbsp;=&nbsp;map_info_get_level(smart-&gt;mi,&nbsp;&amp;level);</div>
-<div class="pre"><a id="l298" href="#l298" class="linenr"> 298</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(smart-&gt;li&nbsp;==&nbsp;NULL)</div>
-<div class="pre"><a id="l299" href="#l299" class="linenr"> 299</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;-1;</div>
-<div class="pre"><a id="l300" href="#l300" class="linenr"> 300</a> </div>
-<div class="pre"><a id="l301" href="#l301" class="linenr"> 301</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;smart-&gt;current_level&nbsp;=&nbsp;level;</div>
-<div class="pre"><a id="l302" href="#l302" class="linenr"> 302</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;smart-&gt;ta.lat&nbsp;=&nbsp;smart-&gt;lat;</div>
-<div class="pre"><a id="l303" href="#l303" class="linenr"> 303</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;smart-&gt;ta.lon&nbsp;=&nbsp;smart-&gt;lon;</div>
-<div class="pre"><a id="l304" href="#l304" class="linenr"> 304</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;smart-&gt;ta.mode&nbsp;=&nbsp;POSITION_WORLD;</div>
-<div class="pre"><a id="l305" href="#l305" class="linenr"> 305</a> </div>
-<div class="pre"><a id="l306" href="#l306" class="linenr"> 306</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;EINA_ARRAY_ITER_NEXT(smart-&gt;paths,&nbsp;i,&nbsp;path,&nbsp;iterator)</div>
-<div class="pre"><a id="l307" href="#l307" class="linenr"> 307</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{</div>
-<div class="pre"><a id="l308" href="#l308" class="linenr"> 308</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;struct&nbsp;polyline&nbsp;*_pl&nbsp;=&nbsp;e_smart_line_get(path);</div>
-<div class="pre"><a id="l309" href="#l309" class="linenr"> 309</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(_pl&nbsp;==&nbsp;NULL)</div>
-<div class="pre"><a id="l310" href="#l310" class="linenr"> 310</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;continue;</div>
-<div class="pre"><a id="l311" href="#l311" class="linenr"> 311</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;_polyline_to_map(smart,&nbsp;_pl);</div>
-<div class="pre"><a id="l312" href="#l312" class="linenr"> 312</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;e_smart_line_set(path,&nbsp;_pl);</div>
-<div class="pre"><a id="l313" href="#l313" class="linenr"> 313</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;evas_object_show(path);</div>
-<div class="pre"><a id="l314" href="#l314" class="linenr"> 314</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</div>
-<div class="pre"><a id="l315" href="#l315" class="linenr"> 315</a> </div>
-<div class="pre"><a id="l316" href="#l316" class="linenr"> 316</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;overlay_change_level(smart,&nbsp;level);</div>
-<div class="pre"><a id="l317" href="#l317" class="linenr"> 317</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;map_object_update(smart);</div>
-<div class="pre"><a id="l318" href="#l318" class="linenr"> 318</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;0;</div>
-<div class="pre"><a id="l319" href="#l319" class="linenr"> 319</a> }</div>
-<div class="pre"><a id="l320" href="#l320" class="linenr"> 320</a> </div>
-<div class="pre"><a id="l321" href="#l321" class="linenr"> 321</a> int&nbsp;e_smart_map_set_level(Evas_Object&nbsp;*o,&nbsp;int&nbsp;level)</div>
-<div class="pre"><a id="l322" href="#l322" class="linenr"> 322</a> {</div>
-<div class="pre"><a id="l323" href="#l323" class="linenr"> 323</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;struct&nbsp;smart_map&nbsp;*smart;</div>
-<div class="pre"><a id="l324" href="#l324" class="linenr"> 324</a> </div>
-<div class="pre"><a id="l325" href="#l325" class="linenr"> 325</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;smart&nbsp;=&nbsp;evas_object_smart_data_get(o);</div>
-<div class="pre"><a id="l326" href="#l326" class="linenr"> 326</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;_set_level(smart,&nbsp;level);</div>
-<div class="pre"><a id="l327" href="#l327" class="linenr"> 327</a> }</div>
-<div class="pre"><a id="l328" href="#l328" class="linenr"> 328</a> </div>
-<div class="pre"><a id="l329" href="#l329" class="linenr"> 329</a> static&nbsp;void</div>
-<div class="pre"><a id="l330" href="#l330" class="linenr"> 330</a> zoom_cb(void&nbsp;*data,&nbsp;Evas_Object&nbsp;*o,&nbsp;const&nbsp;char&nbsp;*emission,&nbsp;const&nbsp;char&nbsp;*source)</div>
-<div class="pre"><a id="l331" href="#l331" class="linenr"> 331</a> {</div>
-<div class="pre"><a id="l332" href="#l332" class="linenr"> 332</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;double&nbsp;x,&nbsp;y;</div>
-<div class="pre"><a id="l333" href="#l333" class="linenr"> 333</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;int&nbsp;new_level;</div>
-<div class="pre"><a id="l334" href="#l334" class="linenr"> 334</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;struct&nbsp;smart_map&nbsp;*smart&nbsp;=&nbsp;(struct&nbsp;smart_map&nbsp;*)data;</div>
-<div class="pre"><a id="l335" href="#l335" class="linenr"> 335</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;int&nbsp;max_level&nbsp;=&nbsp;smart-&gt;mi-&gt;max_level;&nbsp;</div>
-<div class="pre"><a id="l336" href="#l336" class="linenr"> 336</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;int&nbsp;min_level&nbsp;=&nbsp;smart-&gt;mi-&gt;min_level;</div>
-<div class="pre"><a id="l337" href="#l337" class="linenr"> 337</a> </div>
-<div class="pre"><a id="l338" href="#l338" class="linenr"> 338</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;edje_object_part_drag_value_get(smart-&gt;theme,&nbsp;&quot;zoom&quot;,&nbsp;&amp;x,&nbsp;&amp;y);</div>
-<div class="pre"><a id="l339" href="#l339" class="linenr"> 339</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;new_level&nbsp;=&nbsp;max_level&nbsp;-&nbsp;((max_level&nbsp;-&nbsp;min_level)&nbsp;*&nbsp;y);</div>
-<div class="pre"><a id="l340" href="#l340" class="linenr"> 340</a> </div>
-<div class="pre"><a id="l341" href="#l341" class="linenr"> 341</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;smart-&gt;ta.lat&nbsp;=&nbsp;smart-&gt;lat;</div>
-<div class="pre"><a id="l342" href="#l342" class="linenr"> 342</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;smart-&gt;ta.lon&nbsp;=&nbsp;smart-&gt;lon;</div>
-<div class="pre"><a id="l343" href="#l343" class="linenr"> 343</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;smart-&gt;ta.mode&nbsp;=&nbsp;POSITION_WORLD;</div>
-<div class="pre"><a id="l344" href="#l344" class="linenr"> 344</a> </div>
-<div class="pre"><a id="l345" href="#l345" class="linenr"> 345</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;_set_level(smart,&nbsp;new_level);</div>
-<div class="pre"><a id="l346" href="#l346" class="linenr"> 346</a> }</div>
-<div class="pre"><a id="l347" href="#l347" class="linenr"> 347</a> </div>
-<div class="pre"><a id="l348" href="#l348" class="linenr"> 348</a> int&nbsp;e_smart_map_set_theme(Evas_Object&nbsp;*o,&nbsp;const&nbsp;char&nbsp;*theme,&nbsp;const&nbsp;char&nbsp;*group)</div>
-<div class="pre"><a id="l349" href="#l349" class="linenr"> 349</a> {</div>
-<div class="pre"><a id="l350" href="#l350" class="linenr"> 350</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Evas_Object&nbsp;*edje;</div>
-<div class="pre"><a id="l351" href="#l351" class="linenr"> 351</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;struct&nbsp;smart_map&nbsp;*smart;</div>
-<div class="pre"><a id="l352" href="#l352" class="linenr"> 352</a> </div>
-<div class="pre"><a id="l353" href="#l353" class="linenr"> 353</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;smart&nbsp;=&nbsp;evas_object_smart_data_get(o);</div>
-<div class="pre"><a id="l354" href="#l354" class="linenr"> 354</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;edje&nbsp;=&nbsp;edje_object_add(evas_object_evas_get(o));</div>
-<div class="pre"><a id="l355" href="#l355" class="linenr"> 355</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(!edje_object_file_set(edje,&nbsp;theme,&nbsp;group))</div>
-<div class="pre"><a id="l356" href="#l356" class="linenr"> 356</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{</div>
-<div class="pre"><a id="l357" href="#l357" class="linenr"> 357</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;printf(&quot;failed&nbsp;loading&nbsp;%s/%s\n&quot;,&nbsp;theme,&nbsp;group);</div>
-<div class="pre"><a id="l358" href="#l358" class="linenr"> 358</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;-1;</div>
-<div class="pre"><a id="l359" href="#l359" class="linenr"> 359</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</div>
-<div class="pre"><a id="l360" href="#l360" class="linenr"> 360</a> </div>
-<div class="pre"><a id="l361" href="#l361" class="linenr"> 361</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;XXX:&nbsp;reset&nbsp;?&nbsp;</div>
-<div class="pre"><a id="l362" href="#l362" class="linenr"> 362</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;smart-&gt;theme&nbsp;=&nbsp;edje;</div>
-<div class="pre"><a id="l363" href="#l363" class="linenr"> 363</a> </div>
-<div class="pre"><a id="l364" href="#l364" class="linenr"> 364</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;evas_object_smart_member_add(edje,&nbsp;o);</div>
-<div class="pre"><a id="l365" href="#l365" class="linenr"> 365</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;evas_object_move(edje,&nbsp;smart-&gt;x,&nbsp;smart-&gt;y);</div>
-<div class="pre"><a id="l366" href="#l366" class="linenr"> 366</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;evas_object_resize(edje,&nbsp;smart-&gt;w,&nbsp;smart-&gt;h);</div>
-<div class="pre"><a id="l367" href="#l367" class="linenr"> 367</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;evas_object_clip_set(edje,&nbsp;smart-&gt;clip);</div>
-<div class="pre"><a id="l368" href="#l368" class="linenr"> 368</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;evas_object_show(edje);</div>
-<div class="pre"><a id="l369" href="#l369" class="linenr"> 369</a> </div>
-<div class="pre"><a id="l370" href="#l370" class="linenr"> 370</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;edje_object_signal_callback_add(edje,&nbsp;&quot;drag&quot;,&nbsp;&quot;zoom&quot;,&nbsp;zoom_cb,&nbsp;smart);</div>
-<div class="pre"><a id="l371" href="#l371" class="linenr"> 371</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;edje_object_part_drag_value_set(edje,&nbsp;&quot;zoom&quot;,&nbsp;0.0,&nbsp;0.5);</div>
-<div class="pre"><a id="l372" href="#l372" class="linenr"> 372</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;0;</div>
-<div class="pre"><a id="l373" href="#l373" class="linenr"> 373</a> }</div>
-<div class="pre"><a id="l374" href="#l374" class="linenr"> 374</a> </div>
-<div class="pre"><a id="l375" href="#l375" class="linenr"> 375</a> static&nbsp;void&nbsp;_map_object_add(Evas_Object&nbsp;*o)</div>
-<div class="pre"><a id="l376" href="#l376" class="linenr"> 376</a> {</div>
-<div class="pre"><a id="l377" href="#l377" class="linenr"> 377</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;struct&nbsp;smart_map&nbsp;*smart;</div>
-<div class="pre"><a id="l378" href="#l378" class="linenr"> 378</a> </div>
-<div class="pre"><a id="l379" href="#l379" class="linenr"> 379</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;smart&nbsp;=&nbsp;calloc(1,&nbsp;sizeof(struct&nbsp;smart_map));</div>
-<div class="pre"><a id="l380" href="#l380" class="linenr"> 380</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(smart&nbsp;==&nbsp;NULL)</div>
-<div class="pre"><a id="l381" href="#l381" class="linenr"> 381</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return;</div>
-<div class="pre"><a id="l382" href="#l382" class="linenr"> 382</a> </div>
-<div class="pre"><a id="l383" href="#l383" class="linenr"> 383</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;smart-&gt;obj&nbsp;=&nbsp;o;</div>
-<div class="pre"><a id="l384" href="#l384" class="linenr"> 384</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;smart-&gt;x&nbsp;=&nbsp;0;</div>
-<div class="pre"><a id="l385" href="#l385" class="linenr"> 385</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;smart-&gt;y&nbsp;=&nbsp;0;</div>
-<div class="pre"><a id="l386" href="#l386" class="linenr"> 386</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;smart-&gt;w&nbsp;=&nbsp;0;</div>
-<div class="pre"><a id="l387" href="#l387" class="linenr"> 387</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;smart-&gt;h&nbsp;=&nbsp;0;</div>
-<div class="pre"><a id="l388" href="#l388" class="linenr"> 388</a> </div>
-<div class="pre"><a id="l389" href="#l389" class="linenr"> 389</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;smart-&gt;clip&nbsp;=&nbsp;evas_object_rectangle_add(evas_object_evas_get(o));</div>
-<div class="pre"><a id="l390" href="#l390" class="linenr"> 390</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;evas_object_smart_member_add(smart-&gt;clip,&nbsp;o);</div>
-<div class="pre"><a id="l391" href="#l391" class="linenr"> 391</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;evas_object_color_set(smart-&gt;clip,&nbsp;255,&nbsp;255,&nbsp;255,&nbsp;255);</div>
-<div class="pre"><a id="l392" href="#l392" class="linenr"> 392</a> </div>
-<div class="pre"><a id="l393" href="#l393" class="linenr"> 393</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;evas_object_smart_data_set(o,&nbsp;smart);</div>
-<div class="pre"><a id="l394" href="#l394" class="linenr"> 394</a> }</div>
-<div class="pre"><a id="l395" href="#l395" class="linenr"> 395</a> </div>
-<div class="pre"><a id="l396" href="#l396" class="linenr"> 396</a> static&nbsp;void&nbsp;_map_object_del(Evas_Object&nbsp;*o)</div>
-<div class="pre"><a id="l397" href="#l397" class="linenr"> 397</a> {</div>
-<div class="pre"><a id="l398" href="#l398" class="linenr"> 398</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;struct&nbsp;smart_map&nbsp;*smart;</div>
-<div class="pre"><a id="l399" href="#l399" class="linenr"> 399</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;smart&nbsp;=&nbsp;evas_object_smart_data_get(o);</div>
-<div class="pre"><a id="l400" href="#l400" class="linenr"> 400</a> </div>
-<div class="pre"><a id="l401" href="#l401" class="linenr"> 401</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;XXX</div>
-<div class="pre"><a id="l402" href="#l402" class="linenr"> 402</a> </div>
-<div class="pre"><a id="l403" href="#l403" class="linenr"> 403</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;free(smart);</div>
-<div class="pre"><a id="l404" href="#l404" class="linenr"> 404</a> }</div>
-<div class="pre"><a id="l405" href="#l405" class="linenr"> 405</a> </div>
-<div class="pre"><a id="l406" href="#l406" class="linenr"> 406</a> static&nbsp;void&nbsp;_map_object_move(Evas_Object&nbsp;*o,&nbsp;Evas_Coord&nbsp;x,&nbsp;Evas_Coord&nbsp;y)</div>
-<div class="pre"><a id="l407" href="#l407" class="linenr"> 407</a> {</div>
-<div class="pre"><a id="l408" href="#l408" class="linenr"> 408</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;struct&nbsp;smart_map&nbsp;*smart;</div>
-<div class="pre"><a id="l409" href="#l409" class="linenr"> 409</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;smart&nbsp;=&nbsp;evas_object_smart_data_get(o);</div>
-<div class="pre"><a id="l410" href="#l410" class="linenr"> 410</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(!smart)</div>
-<div class="pre"><a id="l411" href="#l411" class="linenr"> 411</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return;</div>
-<div class="pre"><a id="l412" href="#l412" class="linenr"> 412</a> </div>
-<div class="pre"><a id="l413" href="#l413" class="linenr"> 413</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;smart-&gt;x&nbsp;=&nbsp;x;</div>
-<div class="pre"><a id="l414" href="#l414" class="linenr"> 414</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;smart-&gt;y&nbsp;=&nbsp;y;</div>
-<div class="pre"><a id="l415" href="#l415" class="linenr"> 415</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;evas_object_move(smart-&gt;clip,&nbsp;x,&nbsp;y);</div>
-<div class="pre"><a id="l416" href="#l416" class="linenr"> 416</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;evas_object_move(smart-&gt;c.ctrl,&nbsp;x,&nbsp;y);</div>
-<div class="pre"><a id="l417" href="#l417" class="linenr"> 417</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(smart-&gt;theme)</div>
-<div class="pre"><a id="l418" href="#l418" class="linenr"> 418</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;evas_object_move(smart-&gt;theme,&nbsp;x,&nbsp;y);</div>
-<div class="pre"><a id="l419" href="#l419" class="linenr"> 419</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;map_object_update(smart);</div>
-<div class="pre"><a id="l420" href="#l420" class="linenr"> 420</a> }</div>
-<div class="pre"><a id="l421" href="#l421" class="linenr"> 421</a> </div>
-<div class="pre"><a id="l422" href="#l422" class="linenr"> 422</a> static&nbsp;void&nbsp;_map_object_resize(Evas_Object&nbsp;*o,&nbsp;Evas_Coord&nbsp;w,&nbsp;Evas_Coord&nbsp;h)</div>
-<div class="pre"><a id="l423" href="#l423" class="linenr"> 423</a> {</div>
-<div class="pre"><a id="l424" href="#l424" class="linenr"> 424</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;struct&nbsp;smart_map&nbsp;*smart;</div>
-<div class="pre"><a id="l425" href="#l425" class="linenr"> 425</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;smart&nbsp;=&nbsp;evas_object_smart_data_get(o);</div>
-<div class="pre"><a id="l426" href="#l426" class="linenr"> 426</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(!smart)</div>
-<div class="pre"><a id="l427" href="#l427" class="linenr"> 427</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return;</div>
-<div class="pre"><a id="l428" href="#l428" class="linenr"> 428</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;smart-&gt;w&nbsp;=&nbsp;w;</div>
-<div class="pre"><a id="l429" href="#l429" class="linenr"> 429</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;smart-&gt;h&nbsp;=&nbsp;h;</div>
-<div class="pre"><a id="l430" href="#l430" class="linenr"> 430</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;smart-&gt;ta.w&nbsp;=&nbsp;w;</div>
-<div class="pre"><a id="l431" href="#l431" class="linenr"> 431</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;smart-&gt;ta.h&nbsp;=&nbsp;h;</div>
-<div class="pre"><a id="l432" href="#l432" class="linenr"> 432</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;evas_object_resize(smart-&gt;clip,&nbsp;w,&nbsp;h);</div>
-<div class="pre"><a id="l433" href="#l433" class="linenr"> 433</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;evas_object_resize(smart-&gt;c.ctrl,&nbsp;w,&nbsp;h);</div>
-<div class="pre"><a id="l434" href="#l434" class="linenr"> 434</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(smart-&gt;theme)</div>
-<div class="pre"><a id="l435" href="#l435" class="linenr"> 435</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;evas_object_resize(smart-&gt;theme,&nbsp;w,&nbsp;h);</div>
-<div class="pre"><a id="l436" href="#l436" class="linenr"> 436</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;map_object_update(smart);</div>
-<div class="pre"><a id="l437" href="#l437" class="linenr"> 437</a> }</div>
-<div class="pre"><a id="l438" href="#l438" class="linenr"> 438</a> </div>
-<div class="pre"><a id="l439" href="#l439" class="linenr"> 439</a> static&nbsp;void&nbsp;_map_object_show(Evas_Object&nbsp;*o)</div>
-<div class="pre"><a id="l440" href="#l440" class="linenr"> 440</a> {</div>
-<div class="pre"><a id="l441" href="#l441" class="linenr"> 441</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;struct&nbsp;smart_map&nbsp;*smart;</div>
-<div class="pre"><a id="l442" href="#l442" class="linenr"> 442</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;smart&nbsp;=&nbsp;evas_object_smart_data_get(o);</div>
-<div class="pre"><a id="l443" href="#l443" class="linenr"> 443</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(!smart)</div>
-<div class="pre"><a id="l444" href="#l444" class="linenr"> 444</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return;</div>
-<div class="pre"><a id="l445" href="#l445" class="linenr"> 445</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;evas_object_show(smart-&gt;clip);</div>
-<div class="pre"><a id="l446" href="#l446" class="linenr"> 446</a> }</div>
-<div class="pre"><a id="l447" href="#l447" class="linenr"> 447</a> </div>
-<div class="pre"><a id="l448" href="#l448" class="linenr"> 448</a> static&nbsp;void&nbsp;_map_object_hide(Evas_Object&nbsp;*o)</div>
-<div class="pre"><a id="l449" href="#l449" class="linenr"> 449</a> {</div>
-<div class="pre"><a id="l450" href="#l450" class="linenr"> 450</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;struct&nbsp;smart_map&nbsp;*smart;</div>
-<div class="pre"><a id="l451" href="#l451" class="linenr"> 451</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;smart&nbsp;=&nbsp;evas_object_smart_data_get(o);</div>
-<div class="pre"><a id="l452" href="#l452" class="linenr"> 452</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(!smart)</div>
-<div class="pre"><a id="l453" href="#l453" class="linenr"> 453</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return;</div>
-<div class="pre"><a id="l454" href="#l454" class="linenr"> 454</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;evas_object_hide(smart-&gt;clip);&nbsp;&nbsp;</div>
-<div class="pre"><a id="l455" href="#l455" class="linenr"> 455</a> }</div>
-<div class="pre"><a id="l456" href="#l456" class="linenr"> 456</a> </div>
-<div class="pre"><a id="l457" href="#l457" class="linenr"> 457</a> static&nbsp;void&nbsp;_map_object_color_set(Evas_Object&nbsp;*o,&nbsp;int&nbsp;r,&nbsp;int&nbsp;g,&nbsp;int&nbsp;b,&nbsp;int&nbsp;a)</div>
-<div class="pre"><a id="l458" href="#l458" class="linenr"> 458</a> {</div>
-<div class="pre"><a id="l459" href="#l459" class="linenr"> 459</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;struct&nbsp;smart_map&nbsp;*smart;</div>
-<div class="pre"><a id="l460" href="#l460" class="linenr"> 460</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;smart&nbsp;=&nbsp;evas_object_smart_data_get(o);</div>
-<div class="pre"><a id="l461" href="#l461" class="linenr"> 461</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(!smart)</div>
-<div class="pre"><a id="l462" href="#l462" class="linenr"> 462</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return;</div>
-<div class="pre"><a id="l463" href="#l463" class="linenr"> 463</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;evas_object_color_set(smart-&gt;clip,&nbsp;r,&nbsp;g,&nbsp;b,&nbsp;a);</div>
-<div class="pre"><a id="l464" href="#l464" class="linenr"> 464</a> }</div>
-<div class="pre"><a id="l465" href="#l465" class="linenr"> 465</a> </div>
-<div class="pre"><a id="l466" href="#l466" class="linenr"> 466</a> static&nbsp;void&nbsp;_map_object_clip_set(Evas_Object&nbsp;*o,&nbsp;Evas_Object&nbsp;*clip)</div>
-<div class="pre"><a id="l467" href="#l467" class="linenr"> 467</a> {</div>
-<div class="pre"><a id="l468" href="#l468" class="linenr"> 468</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;struct&nbsp;smart_map&nbsp;*smart;</div>
-<div class="pre"><a id="l469" href="#l469" class="linenr"> 469</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;smart&nbsp;=&nbsp;evas_object_smart_data_get(o);</div>
-<div class="pre"><a id="l470" href="#l470" class="linenr"> 470</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(!smart)</div>
-<div class="pre"><a id="l471" href="#l471" class="linenr"> 471</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return;</div>
-<div class="pre"><a id="l472" href="#l472" class="linenr"> 472</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;evas_object_clip_set(smart-&gt;clip,&nbsp;clip);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div>
-<div class="pre"><a id="l473" href="#l473" class="linenr"> 473</a> }</div>
-<div class="pre"><a id="l474" href="#l474" class="linenr"> 474</a> </div>
-<div class="pre"><a id="l475" href="#l475" class="linenr"> 475</a> static&nbsp;void&nbsp;_map_object_clip_unset(Evas_Object&nbsp;*o)</div>
-<div class="pre"><a id="l476" href="#l476" class="linenr"> 476</a> {</div>
-<div class="pre"><a id="l477" href="#l477" class="linenr"> 477</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;struct&nbsp;smart_map&nbsp;*smart;</div>
-<div class="pre"><a id="l478" href="#l478" class="linenr"> 478</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;smart&nbsp;=&nbsp;evas_object_smart_data_get(o);</div>
-<div class="pre"><a id="l479" href="#l479" class="linenr"> 479</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(!smart)</div>
-<div class="pre"><a id="l480" href="#l480" class="linenr"> 480</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return;</div>
-<div class="pre"><a id="l481" href="#l481" class="linenr"> 481</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;evas_object_clip_unset(smart-&gt;clip);&nbsp;&nbsp;&nbsp;&nbsp;</div>
-<div class="pre"><a id="l482" href="#l482" class="linenr"> 482</a> }</div>
-<div class="pre"><a id="l483" href="#l483" class="linenr"> 483</a> </div>
-<div class="pre"><a id="l484" href="#l484" class="linenr"> 484</a> static&nbsp;Evas_Smart&nbsp;*get_smart()</div>
-<div class="pre"><a id="l485" href="#l485" class="linenr"> 485</a> {</div>
-<div class="pre"><a id="l486" href="#l486" class="linenr"> 486</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;static&nbsp;Evas_Smart&nbsp;*e_smart_map&nbsp;=&nbsp;NULL;</div>
-<div class="pre"><a id="l487" href="#l487" class="linenr"> 487</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div>
-<div class="pre"><a id="l488" href="#l488" class="linenr"> 488</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(e_smart_map&nbsp;!=&nbsp;NULL)</div>
-<div class="pre"><a id="l489" href="#l489" class="linenr"> 489</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;e_smart_map;</div>
-<div class="pre"><a id="l490" href="#l490" class="linenr"> 490</a> </div>
-<div class="pre"><a id="l491" href="#l491" class="linenr"> 491</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;e_smart_map&nbsp;=&nbsp;evas_smart_new(SMART_MAP_NAME,</div>
-<div class="pre"><a id="l492" href="#l492" class="linenr"> 492</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;_map_object_add,</div>
-<div class="pre"><a id="l493" href="#l493" class="linenr"> 493</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;_map_object_del,</div>
-<div class="pre"><a id="l494" href="#l494" class="linenr"> 494</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;NULL,</div>
-<div class="pre"><a id="l495" href="#l495" class="linenr"> 495</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;NULL,</div>
-<div class="pre"><a id="l496" href="#l496" class="linenr"> 496</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;NULL,</div>
-<div class="pre"><a id="l497" href="#l497" class="linenr"> 497</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;NULL,</div>
-<div class="pre"><a id="l498" href="#l498" class="linenr"> 498</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;NULL,</div>
-<div class="pre"><a id="l499" href="#l499" class="linenr"> 499</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;_map_object_move,</div>
-<div class="pre"><a id="l500" href="#l500" class="linenr"> 500</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;_map_object_resize,</div>
-<div class="pre"><a id="l501" href="#l501" class="linenr"> 501</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;_map_object_show,</div>
-<div class="pre"><a id="l502" href="#l502" class="linenr"> 502</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;_map_object_hide,</div>
-<div class="pre"><a id="l503" href="#l503" class="linenr"> 503</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;_map_object_color_set,</div>
-<div class="pre"><a id="l504" href="#l504" class="linenr"> 504</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;_map_object_clip_set,</div>
-<div class="pre"><a id="l505" href="#l505" class="linenr"> 505</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;_map_object_clip_unset,</div>
-<div class="pre"><a id="l506" href="#l506" class="linenr"> 506</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;NULL);</div>
-<div class="pre"><a id="l507" href="#l507" class="linenr"> 507</a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;e_smart_map;</div>
-<div class="pre"><a id="l508" href="#l508" class="linenr"> 508</a> }</div>
-<div class="pre"><a id="l509" href="#l509" class="linenr"> 509</a> </div>
-</div><div class="page_footer">
-<div class="page_footer_text">tool zur verschlüsselten kommunikation und positionsübertragung zwischen smartphones</div>
-<a class="rss_logo" title="history of friendfinder/e_smart_map.c RSS feed" href="http://git.openslx.org/lsfks/friendfinder.git?a=rss;f=friendfinder/e_smart_map.c">RSS</a>
-<a class="rss_logo" title="history of friendfinder/e_smart_map.c Atom feed" href="http://git.openslx.org/lsfks/friendfinder.git?a=atom;f=friendfinder/e_smart_map.c">Atom</a>
-</div>
-</body>
-</html> \ No newline at end of file
diff --git a/friendfinder/Makefile.inc b/friendfinder/Makefile.inc
index 019f3d6..75b248c 100644
--- a/friendfinder/Makefile.inc
+++ b/friendfinder/Makefile.inc
@@ -4,7 +4,7 @@
CFLAGS = -g -Wall -rdynamic -std=c99
INCLUDES = -I../include
-LIBS = -ledje -lecore -levas -lelementary -lircclient -lcrypto -lproj -lpthread -ldmtx -lImlib2
+LIBS = -ledje -lecore -levas -lelementary -lircclient -lcrypto -lproj -lpthread -lqrencode
###########
diff --git a/friendfinder/barcode.c b/friendfinder/barcode.c
index 25866e0..21915db 100644
--- a/friendfinder/barcode.c
+++ b/friendfinder/barcode.c
@@ -2,13 +2,54 @@
#include <string.h>
#include <stdlib.h>
-#include "dmtx.h"
+#include "qrencode.h"
#include "Imlib2.h"
#include "barcode.h"
+#include "Evas.h"
+#include "Ecore.h"
+#include "Ecore_Evas.h"
+void write_img(QRcode *code)
+{
+ Ecore_Evas *ee;
+ Evas_Object *pic;
+ Evas *e;
+
+
+ ee = ecore_evas_buffer_new(1, 1);
+ e = ecore_evas_get(ee);
+
+ if (!e)
+ {
+ fputs("ERROR: could not create ecore evas buffer\n", stderr);
+ return;
+ }
+
+ evas_image_cache_set(e, 0);
+ evas_font_cache_set(e, 0);
+
+ pic = evas_object_image_add(e);
+ evas_object_image_file_set(pic, "barcode.png", NULL);
+
+ evas_object_image_size_set(pic, code->width, code->width);
+ //evas_object_image_alpha_set(pic, 0);
+ evas_object_image_data_set(pic, code->data);
+ evas_object_image_data_convert(pic, EVAS_COLORSPACE_ARGB8888);
+ evas_object_image_save(pic, "barcode.png", NULL, "quality=100 compress=9");
+// return pic;
+}
void generate_barcode(char* key)
{
+ QRcode *code;
+
+ code = QRcode_encodeString8bit(key, 0, QR_ECLEVEL_M);//, QR_MODE_8, 1);
+
+ write_img(code);
+
+ QRcode_free(code);
+/*
+ Evas_Object *pic;
size_t width, height, bytesPerPixel;
unsigned char *pxl;
DmtxEncode *enc;
@@ -28,12 +69,12 @@ void generate_barcode(char* key)
dmtxImageSetProp(enc->image, DmtxPropImageFlip, DmtxFlipNone);
- write_img(enc);
-}
-
-
-void write_img(DmtxEncode* enc)
-{
+ write_img(enc, win);
+
+ if (pic != NULL)
+ printf("barcode created...\n"); */
+// return pic;
}
+
diff --git a/friendfinder/barcode.h b/friendfinder/barcode.h
index ca00d68..715a44d 100644
--- a/friendfinder/barcode.h
+++ b/friendfinder/barcode.h
@@ -1,6 +1,7 @@
#ifndef __GUI_H_
#define __GUI_H_
+
void generate_barcode(char* key);
#endif
diff --git a/friendfinder/barcode.png b/friendfinder/barcode.png
index 6e4cdd6..17a47e7 100644
--- a/friendfinder/barcode.png
+++ b/friendfinder/barcode.png
Binary files differ
diff --git a/friendfinder/gui b/friendfinder/gui
index ad42c82..2a3c03f 100755
--- a/friendfinder/gui
+++ b/friendfinder/gui
Binary files differ
diff --git a/friendfinder/gui.c b/friendfinder/gui.c
index 4138d67..9dfb1c0 100644
--- a/friendfinder/gui.c
+++ b/friendfinder/gui.c
@@ -113,17 +113,19 @@ static void create_barcode(void *data, Evas_Object *obj, void *event_info)
else return;
Evas_Object *img = elm_image_add(win);
- printf("%i \n",elm_image_file_set(img, "barcode.png", ""));
+ elm_image_file_set(img, "barcode.png", "");
evas_object_size_hint_weight_set(img, 1.0, 1.0);
evas_object_size_hint_align_set(img, -1.0, -1.0);
evas_object_resize(img, w*0.5, h*0.5);
elm_box_pack_end((Evas_Object*)data, img);
evas_object_show(img);
+
}
static void on_keyenter(void *data, Evas_Object *obj, void *event_info)
{
+// key = (char*) malloc(sizeof(char) * sizeof(data));
key = elm_entry_entry_get(obj);
}