Commit Graph

72 Commits

Author SHA1 Message Date
Jiyoun Park 346b8647a2 remove code related with
ELM_MAP_ROUTE_SOURCE_
elm_map_utils_rotate_coord
elm_map_utils_convert_
elm_map_utils_downloading_status_get
elm_map_canvas_to_geo_convert
elm_map_geo_region_
elm_map_source_zoom_
elm_map_source_name
elm_map_route_source
elm_map_max_marker_per
elm_map_paused_markers

elm_map_name_remove
which was deprecated


SVN revision: 69167
2012-03-10 10:07:27 +00:00
cnook 6477874b2f From: cnook <kimcinoo@gmail.com>
Subject: [E-devel] [Patch][elementary_test] test_label

I have attached a patch for test_label. Please review the patch and
give any feedbacks. Thanks.



SVN revision: 68949
2012-03-07 13:50:37 +00:00
Bluezery 8479b5f328 From: Bluezery <ohpowel@gmail.com>
Subject: [E-devel]  [Patch][elm_map] Change & Add map APIs

I rename & add some APIs.
As previously discussed, I categorized map APIs.
(http://marc.info/?l=enlightenment-devel&m=132685497711772&w=2)

1) Zoom
elm_map_zoom_set/get
elm_map_zoom_mode_set/get
elm_map_zoom_min_set/get
elm_map_zoom_max_set/get

2) Region - Geographic coordinates (region)
elm_map_region_get
elm_map_region_show/bring_in
elm_map_canvas_to_region_convert

I will not use "_geo_" in map APIs. All map APIs are basically used by
geographic coordinates.

3) Property
elm_map_paused_set/get
elm_map_rotate_set/get
elm_map_wheel_disabled_set/get
elm_map_user_agent_set/get

4) Overlay
elm_map_overlay_add/del
elm_map_overlay_xxx
elm_map_overlay_class_xxx
elm_map_overlay_bubble_xxx
elm_map_overlay_route_xxx

I will add line, rectangle, poi overlays  ASAP.

5) Source - External Provider  (Tile, Route, Name, )
elm_map_sources_get
elm_map_source_set/get

I will add more provider ASAP such as POI, etc.

6) Route
elm_map_route_add/del
elm_map_route_distance_get
elm_map_route_node_get
elm_map_route_waypoints_get

7) Name
elm_map_name_add/del
elm_map_route_address_get
elm_map_route_region_get

6) Route and 7) Name do not return visible objects actually.  Those
just return data.
I don't know "_add" suffix is correct for none visible objects.
I cannot decide yet whether those should be removed from map widget.
But current trends are that route, geocoding are  tightly coupled with
Map.

If Apps want to use only data, just use elm_map_route_add().
If not, use elm_map_route_add() & elm_map_overlay_route_add().
Also name overlay could be added in the future.

8) Miscellaneous
elm_map_tile_load_status_get

9) Signals
Basic events : "clicked", "clicked,double", "press", "longpressed",
Scroller events: "scroll", "scroll,xxx,xxx"
Zoom events: "zoom,start/stop/change"
Source (provider) events: "tile,load/loaded/loaded,fail" ,
"route,load/loaded/loaded,fail", "name,load/loaded/loaded,fail"

There are some big patches. I think diff program do not make exact
diff. :D.
Anyway, it's  better to maintain if this can be in before API fix
(elementary 1.0).
Because after these change, It is hard to maintain old APIs.

PS) Documentations and some minor bugs are remained yet.



SVN revision: 68915
2012-03-07 09:28:08 +00:00
Carsten Haitzler fca8286e0d track bubble deprecation.
SVN revision: 68682
2012-03-05 08:37:28 +00:00
Bluezery 4de5c80ede From: Bluezery <ohpowel@gmail.com>
Subject: [E-devel] [Patch][elm_map] Add overlay in the map

I made a overlay APIs in the map. This will replace the marker APIs.
I hope that markers will be deleted before elementary 1.0 release.
This was discussed before in
http://marc.info/?l=enlightenment-devel&m=132685497711772&w=2

Marker only supports layout style overlay. So only icon and image are
suitable for marker.  For now on, overlay can support any evas object
and also layout style.
Currently overlay support default, bubble, and class types.  And more
types will be added (Polyline, Polygon, scale, POI etc.).
I made a Elm_Map_Overlay opaque structure for handling general overlay
properties (hide, pause, show, etc.) and coordinates or internal
content (icon, content, etc.) for those different types.
Class type overlay is something like mixture of previous marker group
and marker class.
If member overlays in the same class are closed, they will be grouped.
(Same functionality as previous maker group.) The group's properties
and contents are defined by using general overlay functions.  (New
functionality)
This defined properties and contents can be be propagated to member
overlays appended to this class.  (Same functionality as previous
maker class.)

There are some missing functionalities remained. Group callbacks are
not supported yet in the overlays.
So images inside group bubble can not be shown. I will implement this
feature.

After this patch, I will fix signals and function names before
elementary 1.0 releases.




SVN revision: 68672
2012-03-05 04:18:33 +00:00
Bluezery acf31ec4cd From: Bluezery <ohpowel@gmail.com>
Subject: [E-devel] [Patch][elm_map] Refactoring Elementary Map

I have done refactoring & code clean-up in elm_map.  Event if this
patch have much changes, refactoring & code clean-up jobs almost
always do.
Anyway, code is shortened and optimized I think.
 I have done following jobs in my patch.
 
 (1) Always change child size
 Scroller Child size is changed when integer zoom level is changed
 before. This makes bugs which mouse pointer is not correct on the map
 when map is dragging.
 Now, scroller child size is always changed when double zoom level is
changed.

(2) Evas map
Evas map is used for rotation & zooming before. But now it is used for
only rotation. evas_object_resize() can do zooming because (1) makes
child size always changed.

(3) Grid & Marker & Route, etc.
Because of (1), all coordinate calculations are all changed. So grid &
marker & route should be changed.
When I have fixed these, I have these split into small function
(create, free, update, place, etc.)
So these can be easily reused for other purpose ( I will add overlay
later.)
Also marker size is not changed and is not rotated anymore because
marker's coordinate is just rotated and evas_map is not used for
marker.

And grouping algorithm is somewhat changed. Each marker can be group
leader and if other markers (followers) are closed to leader, markers
are grouped.

Actually _marker_place() function do almost everything. (place marker,
bubble, group & make group, etc.)

Bubbles go along with parent object. (show, hide, move) and this is
created when marker & group are opened.
At now, bubble display bugs are all fixed.

As before, grid is created when elm_map_add() or tile source is
changed. And I add _grid_item_* functions for each 256x256 tile
management.  So grid_place() function can be simple now.

(4) Download idler
Before download is not a job or idler and is integrated with grid
calculation.
I have separated this into independent idler. So now, download idler
do download jobs when idler time.

(5) Zoom
I have made one zoom_do() function.  This does all zoom jobs. At now,
pinch_zoom & wheel_zoom & animated zoom do not much jobs. just call
zoom_do().

(6) Delayed jobs
As I know, evas is based on a retained mode and calculation can be do
later. So sometimes elm_map APIs can not  do the jobs correctly.
For example, elm_map_marker_list_show() or elm_map_zoom_set() can not
be used right after elm_map_add()  because window size and pan size
can be 0.   (refer map_example_02.c)
So when APIs related such calculation are called. These are deferred
and calculated later when _pan_calculate() is called.

5) Code clean-up
I have removed unused variables & functions.  and rearranged struct &
functions & declaration & static variables, etc.
Instead of "if (!wd) return; ", I changed this by macro,
"EINA_SAFETY_ON_NULL_RETURN(wd);". This is better for function
entrance check. Also ELM_NEW is used instead of calloc or malloc.

Aboves are all related each other. So it can be hard to split this
file. If these should be splitted, I'm going to freak ;D.
This patch does no harm!!!! :D.
 After this patch, I will add overlay APIs based on this patch.  I
 doubt whether I will add this before elementary 1.0 release.  :(
 


SVN revision: 68207
2012-02-21 08:01:22 +00:00
Carsten Haitzler 6636c616bf aah we'll take bluz' patch then instead of my fixing
SVN revision: 68206
2012-02-21 07:59:19 +00:00
Carsten Haitzler c31c89176a and other part of bluez map commit
SVN revision: 68193
2012-02-21 03:25:24 +00:00
Bluezery 80a3a87fa9 From: Bluezery <ohpowel@gmail.com>
Subject: [E-devel]  [Patch][elm_map] Fix zoom & rotated coordinates bug

In my point of view, elm_map did not consider zooming & rotation by
using Evas_Map initially.
There are no problems if you use only elm_map_zoom_set(). But if you
use pinch gesture or wheel to do subtle zooming & rotating, the
calculations of coordinates are not correct currently.

I have fixed these problem and also made some utility APIs for user
convenience.
I made following 3 APIs.
1. elm_map_utils_size_get()
Currently users can only get integer zoom level by using
elm_map_zoom_get().
So if user want to calculate full map size, user should calculate
pow(2.0, zoom level) * tile size.  Furthermore, user assumes tile size
as 256. (tile size can be changed!!)
Also it's not correct sometimes because Evas_map is used for subtle
zooming between zoom levels.
Above APIs return correct full map size.

2. elm_map_utils_region_get()
It can used for getting left top coordinates, center coordinates and
width, height of currently shown map area.

3. elm_map_utils_convert_canvas_into_geo()
Currently it is hard to converting x, y coordinates to geographical
longitude, latitude because of subtle zooming & rotating.
If use wants to get it, user uses combination of above functions and
more. It is harsh job.
This function is used for getting longitude, latitude from x, y
coordinates of current viewport.



SVN revision: 67286
2012-01-18 03:55:40 +00:00
Bluezery 03e6f69c3d From: Bluezery <ohpowel@gmail.com>
Subject: [E-devel] [Patch][elm_map] Bug fix for map test

This patch is for test map.
This fixes two simple bugs.
1. Max zoom level can be changed depends on the map source, not always 18.
2. $HOME can be NULL.



SVN revision: 66154
2011-12-13 10:39:53 +00:00
ChunEon Park 25d9ba0731 elementary/map
I have using elementary_test for testing elementary map widget.
But it use invalid object for signal callback. I have changed win --> map.
Also I have fixed invalid log message.

Signed-Off-By: TaeHwan Kim(ohpowel@gmail.com)
Signed-Off-By: ChunEon Park(hermet@hermet.pe.kr)



SVN revision: 65886
2011-12-05 05:04:24 +00:00
ChunEon Park 468985fa84 elementary/menu - Elm_Menu_Item -> Elm_Object_Item
SVN revision: 65596
2011-11-25 10:57:39 +00:00
Boris Faure 1112d30a41 elm: change elm_object_content_part_set/get/unset to elm_object_part_content_set/get/unset
SVN revision: 65349
2011-11-17 21:02:31 +00:00
ChunEon Park 236192cd9a elementary - modified content_set/get/unset part names to be simple names.
Previous part names are just the swallow part names
but in modified version, the part names chaned to simpler meaning names to use.

i.e for button

elm_object_content_part_set(button, "elm.swallow.icon", icon);
-> elm_object_content_part_set(button, "icon", icon);




SVN revision: 65295
2011-11-16 12:51:53 +00:00
ChunEon Park 7ea44dee3b elementary/test_map.c - Those test code should not be committed.
maybe raster you. 



SVN revision: 65071
2011-11-11 16:47:05 +00:00
Bluezery 84f0b47a95 From: Bluezery <ohpowel@gmail.com>
Subject: [E-devel] [elm_map] ecore_file_download_full() should be used
properly

elm_map only checked that returned job is NULL.
But ecore_file_download_full() returns EINA_FALSE when error occurred.
So return value should be checked for proper usage.
Please review this simple bug fix



SVN revision: 64794
2011-11-06 06:11:57 +00:00
Sangho Park 4739f9fe16 Elementary Map: remove unused vbox
Actually.. rollback to r64370.


SVN revision: 64638
2011-11-02 08:14:02 +00:00
Sung W. Park 86dc87bb2c From: "Sung W. Park" <sungwoo@gmail.com>
Subject: [E-devel] [E-Devel][Patch] Evas GL Color Format Enum change
(and ElmGLview changes accordingly)

I'm submitting a patch that changes the color format for Evas GL.

When I first wrote Evas_GL, I just had EVAS_GL_RGB_8 and EVAS_GL_RGBA_8 and etc
but it was misleading for some people.  It was more of a filler since I couldn't decide on
a name.  I'm finally changing it to make it more clear.



SVN revision: 64491
2011-10-28 11:08:23 +00:00
ChunEon Park 8d85b136bf elementary/button -> use elm_object_content_set/get/unset
SVN revision: 64370
2011-10-25 01:23:25 +00:00
Daniel Juyung Seo d473e343eb elm test: Refactoring. Changed 1 to EINA_TRUE for Eina_Bool parameter of elm_win_autodel_set() API.
SVN revision: 61695
2011-07-25 14:22:19 +00:00
Mike McCormack 0295f4d56e elementary: elm_label_label_ -> elm_object_text
Clear deprecated warnings.

Signed-off-by: Mike McCormack <mj.mccormack@samsung.com>

SVN revision: 60798
2011-06-29 06:41:31 +00:00
Daniel Juyung Seo a4705d7d9d elm test_map: Fixed 'unused parameter' warnings.
SVN revision: 60746
2011-06-28 07:02:37 +00:00
Jonathan Atton d47854c49f elm: add elm_route: widget to display a route on elm_map. Currently the widget use lines, in the futur it will use edje
SVN revision: 60703
2011-06-26 17:36:18 +00:00
Jonathan Atton 4717eea85d elm: do not include config.h
SVN revision: 60687
2011-06-25 17:48:55 +00:00
Jonathan Atton 6b88bee7e5 elm_map: use emap
SVN revision: 60684
2011-06-25 14:30:10 +00:00
Daniel Juyung Seo 5b30088911 Elm: Use 'canvas' API and structure rather than 'output' API and
structure.

'canvas' and 'output' are same. So we need to deprecate one of them
later(may be evas 2.0 or so.) After I discuss this with raster, I've
got to use 'canvas' not 'output'. So I fixed elementary codes.


SVN revision: 60268
2011-06-13 11:26:08 +00:00
Sangho Park 92060c1ed5 Elementary map: add APIs for setting min,max zoom level
SVN revision: 59704
2011-05-26 12:40:29 +00:00
Sangho Park 0203bfdb0e Elementary Map: --warns (-Wshadow)
SVN revision: 59562
2011-05-21 08:59:19 +00:00
Sangho Park 1a547f902f Elementary map: split route & track (watchwolf's suggestion)
SVN revision: 59548
2011-05-20 05:55:15 +00:00
Sangho Park 2c7fc83f40 Elementary map:
> fix ZOOM_AUTO_FILL, FIT bug
  > fix wheel bug  when paused is set


SVN revision: 59257
2011-05-07 06:32:34 +00:00
Sangho Park 0a07dc8225 Elementary map:
> --bug of zoom
   > API change (double elm_map_zoom_get() -> int elm_map_zoom_get())


SVN revision: 59216
2011-05-05 15:15:43 +00:00
Sangho Park 2afcbf5d44 Elementary map: remove warnings of test_map
SVN revision: 59198
2011-05-05 07:42:12 +00:00
Sangho Park cb2a485477 Elementary map: add elm_menu to test_map
SVN revision: 59193
2011-05-04 15:01:07 +00:00
Sangho Park b4830b8e84 Elementary map: elm_map source patch
i removed all custom enum & url callback of elm_map.
(ELM_MAP_SOURCE_CUSTOM_1, ELM_MAP_SOURCE_CUSTOM_2, ..., _custom1_url_cb, _custom2_url_cb, ... etc)
instead of those, i made sources list.
changed APIs are almost internal APIs...
but some APIs were changed for intuitive usage of map source.
user can make map module instead of setting custom APIs.

another change is "elm_module -> eina_module".
the reason of this change, is that elm_module uses environment value (i.e getenv, setenv.. ELM_MODULES)
i don't want to have a environment value dependency.


SVN revision: 59184
2011-05-04 09:44:53 +00:00
Daniel Juyung Seo a66af23825 Elementary map: Fixed warning.
SVN revision: 59036
2011-04-29 12:37:31 +00:00
Sangho Park 524096648e Elementary map: change evas_object_line (route) to evas_object_polygon
SVN revision: 59016
2011-04-28 16:52:52 +00:00
Sangho Park 2bf6702d02 elm_map: add default wheel control for zoom in/out
SVN revision: 58985
2011-04-28 02:47:12 +00:00
Daniel Juyung Seo 2c0b0050e5 Elementary test_map.c: Fixed formatting.
Fixed indentation. Put a space between if/for and (. Removed unnecessary blank lines.


SVN revision: 58937
2011-04-26 16:19:58 +00:00
Sangho Park 6bc4670615 - add rotate feature
- pinch zoom improvement


SVN revision: 58784
2011-04-21 08:55:02 +00:00
Sangho Park fe580b2fdb This is a patch for elm_map name(address) feature.
I added some APIs for name to elm_map.c and added some test code to test_map.c

I used nominatim OSM service. (http://http://nominatim.openstreetmap.org/)
as i felt, it's response time was very good to use.


SVN revision: 58703
2011-04-18 06:42:47 +00:00
Daniel Juyung Seo 64ff85f610 Elementary src/bin: Removed all trailing whitespaces.
SVN revision: 58491
2011-04-08 14:30:48 +00:00
Carsten Haitzler dccd5aa4c6 spank! wanings--
SVN revision: 58483
2011-04-08 08:42:32 +00:00
Daniel Juyung Seo d61cf35694 Elementary map: Route patch. Patch by Sangho Park <gouache95@gmail.com>
Mail from Sangho Park.
I added some APIs for route to elm_map.c
There are some route services provided by Open Street Map (yours, open
route service, monav...)
I just added 'yours' url callback and will add ors, monav.
And added some test code to test_map.c


SVN revision: 58474
2011-04-08 06:14:10 +00:00
Christopher Michael 95ae8f0624 add __UNUSED__ for data paramater as it's not used.
SVN revision: 57070
2011-02-15 21:29:44 +00:00
sangho park ce03c84077 From: sangho park <gouache95@gmail.com>
Subject: [E-devel] [Patch] elm_map_marker_remove test code

Dear all,

This is a patch for elm_map_marker_remove test code.
I added one button for marker_remove to test_map.c



SVN revision: 57044
2011-02-15 10:28:39 +00:00
Carsten Haitzler 305ee514a6 warnings--
SVN revision: 56049
2011-01-11 09:58:34 +00:00
sangho park 4502370c80 From: sangho park <gouache95@gmail.com>
Subject: [E-devel] [Patch] elm_map downloading progress info & bug fix

I added one new signal, one new API and fixed seg fault bug.

- signal : "download" (this signal is called when map_tile is
downloaded)
- API : elm_map_utils_downloading_status_get(const Evas_Object *obj, int
*try_num, int *finish_num)
- seg fault : if user select custom map provider, seg fault occurs,
because
there is no url_cb in the custom map provider

you can check download progress using these signal & API.
the example is in "test_map.c".



SVN revision: 56039
2011-01-11 05:48:28 +00:00
sangho park 6f63c7bf30 From: sangho park <gouache95@gmail.com>
Subject: [E-devel] [Patch] elm_map module patch

This is a patch for elm_map module.
when app developers or companies want to use specific license map (i.e
google map), module is needed.

- add new map provider for module "ELM_MAP_SOURCE_MODULE".
- add test_map module.
- add test code for module provider.
- add my name to AUTHORS.



SVN revision: 55684
2010-12-21 09:14:47 +00:00
Tiago Rezende Campos Falcao 1a93e760bd Coccinelle
SVN revision: 53786
2010-10-22 21:41:22 +00:00
Tiago Rezende Campos Falcao fff738fbe8 Removing more warnings
Using: -Werror -W -Wall -Wextra -Wcast-align -Wchar-subscripts -Wformat
-Wformat-security -Wmissing-format-attribute -Wpointer-arith
-Wreturn-type -Wundef -Wwrite-strings

SVN revision: 53683
2010-10-20 17:15:14 +00:00