[E-devel] [Patch][elm_map] Fix related zoom

2012-03-23 Thread Bluezery
Hello,

This is patch for zoom behavior in elm_map.
1) wd-zoom_max is defined by user.  wd-src_tile-zoom_max is defined
by source map provider.
Therefore, I decide to do not touch those things. Just check these
while zooming ( zoom_do() )

2) When pan being re-sized, I changed from zoom with animation to
zoom with NO animation  because too many animation is occurred while
window size is changing.

3) When argument is invalid for
elm_map_zoom_min_get/elm_map_zoom_max_get, those return -1.

Please review this patch
Thanks.

-- 
BRs,
Kim.
Index: src/lib/elm_map.c
===
--- src/lib/elm_map.c	(리비전 69583)
+++ src/lib/elm_map.c	(작업 사본)
@@ -1151,6 +1151,8 @@ static void
 zoom_do(Widget_Data *wd, double zoom)
 {
EINA_SAFETY_ON_NULL_RETURN(wd);
+   if (zoom  wd-src_tile-zoom_max) zoom = wd-src_tile-zoom_max;
+   else if (zoom  wd-src_tile-zoom_min) zoom = wd-src_tile-zoom_min;
if (zoom  wd-zoom_max) zoom = wd-zoom_max;
else if (zoom  wd-zoom_min) zoom = wd-zoom_min;
 
@@ -2506,7 +2508,7 @@ _overlays_show(void *data)
EINA_SAFETY_ON_NULL_RETURN(data);
Delayed_Data *dd = data;
 
-   int zoom;
+   int zoom, zoom_max;
double max_lon, min_lon, max_lat, min_lat;
Evas_Coord vw, vh;
 
@@ -2516,7 +2518,10 @@ _overlays_show(void *data)
 
zoom = dd-wd-src_tile-zoom_min;
_viewport_coord_get(dd-wd, NULL, NULL, vw, vh);
-   while (zoom = dd-wd-src_tile-zoom_max)
+   if (dd-wd-src_tile-zoom_max  dd-wd-zoom_max)
+  zoom_max = dd-wd-src_tile-zoom_max;
+   else zoom_max = dd-wd-zoom_max;
+   while (zoom = zoom_max)
  {
 Evas_Coord size, max_x, max_y, min_x, min_y;
 size = pow(2.0, zoom) * dd-wd-tsize;
@@ -3528,7 +3533,7 @@ _zoom_mode_set(void *data)
   }
}
   }
-   zoom_with_animation(dd-wd, zoom, 10);
+zoom_do(dd-wd, zoom);
  }
 }
 
@@ -3987,9 +3992,6 @@ elm_map_zoom_set(Evas_Object *obj, int z
if (wd-mode != ELM_MAP_ZOOM_MODE_MANUAL) return;
if (zoom  0) zoom = 0;
if (wd-zoom == zoom) return;
-   if (zoom  wd-src_tile-zoom_max) zoom = wd-src_tile-zoom_max;
-   if (zoom  wd-src_tile-zoom_min) zoom = wd-src_tile-zoom_min;
-
Delayed_Data *data = ELM_NEW(Delayed_Data);
data-func = _zoom_set;
data-wd = wd;
@@ -4063,8 +4065,6 @@ elm_map_zoom_max_set(Evas_Object *obj, i
EINA_SAFETY_ON_NULL_RETURN(wd);
EINA_SAFETY_ON_NULL_RETURN(wd-src_tile);
 
-   if ((zoom  wd-src_tile-zoom_max) || (zoom  wd-src_tile-zoom_min))
-  return;
wd-zoom_max = zoom;
 #else
(void) obj;
@@ -4076,7 +4076,7 @@ EAPI int
 elm_map_zoom_max_get(const Evas_Object *obj)
 {
 #ifdef HAVE_ELEMENTARY_ECORE_CON
-   ELM_CHECK_WIDTYPE(obj, widtype) 18;
+   ELM_CHECK_WIDTYPE(obj, widtype) -1;
Widget_Data *wd = elm_widget_data_get(obj);
EINA_SAFETY_ON_NULL_RETURN_VAL(wd, -1);
EINA_SAFETY_ON_NULL_RETURN_VAL(wd-src_tile, -1);
@@ -4084,7 +4084,7 @@ elm_map_zoom_max_get(const Evas_Object *
return wd-zoom_max;
 #else
(void) obj;
-   return 18;
+   return -1;
 #endif
 }
 
@@ -4097,8 +4097,6 @@ elm_map_zoom_min_set(Evas_Object *obj, i
EINA_SAFETY_ON_NULL_RETURN(wd);
EINA_SAFETY_ON_NULL_RETURN(wd-src_tile);
 
-   if ((zoom  wd-src_tile-zoom_max) || (zoom  wd-src_tile-zoom_min))
-  return;
wd-zoom_min = zoom;
 #else
(void) obj;
@@ -4110,7 +4108,7 @@ EAPI int
 elm_map_zoom_min_get(const Evas_Object *obj)
 {
 #ifdef HAVE_ELEMENTARY_ECORE_CON
-   ELM_CHECK_WIDTYPE(obj, widtype) 0;
+   ELM_CHECK_WIDTYPE(obj, widtype) -1;
Widget_Data *wd = elm_widget_data_get(obj);
EINA_SAFETY_ON_NULL_RETURN_VAL(wd, -1);
EINA_SAFETY_ON_NULL_RETURN_VAL(wd-src_tile, -1);
@@ -4118,11 +4116,10 @@ elm_map_zoom_min_get(const Evas_Object *
return wd-zoom_min;
 #else
(void) obj;
-   return 0;
+   return -1;
 #endif
 }
 
-
 EAPI void
 elm_map_region_bring_in(Evas_Object *obj, double lon, double lat)
 {
--
This SF email is sponsosred by:
Try Windows Azure free for 90 days Click Here 
http://p.sf.net/sfu/sfd2d-msazure___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] [Patch][elm_map] Fix related zoom

2012-03-23 Thread Sanjeev BA
Why is zoom with animation changed to zoom_do ?

On Fri, Mar 23, 2012 at 7:36 PM, Bluezery ohpo...@gmail.com wrote:

 Hello,

 This is patch for zoom behavior in elm_map.
 1) wd-zoom_max is defined by user.  wd-src_tile-zoom_max is defined
 by source map provider.
 Therefore, I decide to do not touch those things. Just check these
 while zooming ( zoom_do() )

 2) When pan being re-sized, I changed from zoom with animation to
 zoom with NO animation  because too many animation is occurred while
 window size is changing.

 3) When argument is invalid for
 elm_map_zoom_min_get/elm_map_zoom_max_get, those return -1.

 Please review this patch
 Thanks.

 --
 BRs,
 Kim.


 --
 This SF email is sponsosred by:
 Try Windows Azure free for 90 days Click Here
 http://p.sf.net/sfu/sfd2d-msazure
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


--
This SF email is sponsosred by:
Try Windows Azure free for 90 days Click Here 
http://p.sf.net/sfu/sfd2d-msazure
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] [Patch][elm_map] Fix related zoom

2012-03-23 Thread Bluezery
2012/3/23 Sanjeev BA eflel...@gmail.com:
 Why is zoom with animation changed to zoom_do ?

Because too many animations occurred while window size is changing. :)
Zoom with animation can be used by elm_map_zoom_set().

 On Fri, Mar 23, 2012 at 7:36 PM, Bluezery ohpo...@gmail.com wrote:

 Hello,

 This is patch for zoom behavior in elm_map.
 1) wd-zoom_max is defined by user.  wd-src_tile-zoom_max is defined
 by source map provider.
 Therefore, I decide to do not touch those things. Just check these
 while zooming ( zoom_do() )

 2) When pan being re-sized, I changed from zoom with animation to
 zoom with NO animation  because too many animation is occurred while
 window size is changing.

 3) When argument is invalid for
 elm_map_zoom_min_get/elm_map_zoom_max_get, those return -1.

 Please review this patch
 Thanks.

 --
 BRs,
 Kim.


 --
 This SF email is sponsosred by:
 Try Windows Azure free for 90 days Click Here
 http://p.sf.net/sfu/sfd2d-msazure
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


 --
 This SF email is sponsosred by:
 Try Windows Azure free for 90 days Click Here
 http://p.sf.net/sfu/sfd2d-msazure
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel



-- 
BRs,
Kim.

--
This SF email is sponsosred by:
Try Windows Azure free for 90 days Click Here 
http://p.sf.net/sfu/sfd2d-msazure
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] [Patch][elm_map] Fix related zoom

2012-03-23 Thread Sanjeev BA
ok. In SVN : r69590.

On Fri, Mar 23, 2012 at 8:13 PM, Bluezery ohpo...@gmail.com wrote:

 2012/3/23 Sanjeev BA eflel...@gmail.com:
  Why is zoom with animation changed to zoom_do ?
 
 Because too many animations occurred while window size is changing. :)
 Zoom with animation can be used by elm_map_zoom_set().

  On Fri, Mar 23, 2012 at 7:36 PM, Bluezery ohpo...@gmail.com wrote:
 
  Hello,
 
  This is patch for zoom behavior in elm_map.
  1) wd-zoom_max is defined by user.  wd-src_tile-zoom_max is defined
  by source map provider.
  Therefore, I decide to do not touch those things. Just check these
  while zooming ( zoom_do() )
 
  2) When pan being re-sized, I changed from zoom with animation to
  zoom with NO animation  because too many animation is occurred while
  window size is changing.
 
  3) When argument is invalid for
  elm_map_zoom_min_get/elm_map_zoom_max_get, those return -1.
 
  Please review this patch
  Thanks.
 
  --
  BRs,
  Kim.
 
 
 
 --
  This SF email is sponsosred by:
  Try Windows Azure free for 90 days Click Here
  http://p.sf.net/sfu/sfd2d-msazure
  ___
  enlightenment-devel mailing list
  enlightenment-devel@lists.sourceforge.net
  https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
 
 
 
 --
  This SF email is sponsosred by:
  Try Windows Azure free for 90 days Click Here
  http://p.sf.net/sfu/sfd2d-msazure
  ___
  enlightenment-devel mailing list
  enlightenment-devel@lists.sourceforge.net
  https://lists.sourceforge.net/lists/listinfo/enlightenment-devel



 --
 BRs,
 Kim.

--
This SF email is sponsosred by:
Try Windows Azure free for 90 days Click Here 
http://p.sf.net/sfu/sfd2d-msazure
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel