okra pushed a commit to branch master.

http://git.enlightenment.org/apps/ephoto.git/commit/?id=f670969435c5f0014f4c99b4b5cd4bdd0119079d

commit f670969435c5f0014f4c99b4b5cd4bdd0119079d
Author: Stephen Houston <[email protected]>
Date:   Fri Feb 20 19:22:43 2015 -0600

    Ephoto: More work on crop scale/aspect
---
 data/themes/crop.edc            | 26 +++++++++-----------------
 src/bin/ephoto_single_browser.c |  4 ++--
 2 files changed, 11 insertions(+), 19 deletions(-)

diff --git a/data/themes/crop.edc b/data/themes/crop.edc
index 2b79115..c6f3371 100644
--- a/data/themes/crop.edc
+++ b/data/themes/crop.edc
@@ -95,25 +95,17 @@ collections {
                   set_state_val(PART:"ephoto.swallow.cropper", 
STATE_REL2_OFFSET, ppox, ppoy);
                }
                if (movetype == 9) {
-                  new ppox, ppoy;
+                  new ppox, ppoy, oldw, oldh, scalew, scaleh;
                   get_state_val(PART:"ephoto.swallow.cropper", 
STATE_REL1_OFFSET, pox, poy);
                   get_state_val(PART:"ephoto.swallow.cropper", 
STATE_REL2_OFFSET, ppox, ppoy);
-                  if (cx < ix) {
-                     pox += ix-cx;
-                     ppox += ix-cx;
-                  }
-                  if (cx+cw > ix+iw) {
-                     pox += (ix+iw)-(cx+cw);
-                     ppox += (ix+iw)-(cx+cw);
-                  }
-                  if (cy < iy) {
-                     poy += iy-cy;
-                     ppoy += iy-cy;
-                  }
-                  if (cy+ch > iy+ih) {
-                     poy += (iy+ih)-(cy+ch);
-                     ppoy += (iy+ih)-(cy+ch);
-                  }
+                  oldw = cw + cox;
+                  oldh = ch + coy;
+                  scalew = oldw/cw;
+                  scaleh = oldh/ch;
+                  pox *= scalew;
+                  ppox *= scalew;
+                  poy *= scaleh;
+                  ppoy *= scaleh;
                   set_state_val(PART:"ephoto.swallow.cropper", 
STATE_REL1_OFFSET, pox, poy);
                   set_state_val(PART:"ephoto.swallow.cropper", 
STATE_REL2_OFFSET, ppox, ppoy);
                }
diff --git a/src/bin/ephoto_single_browser.c b/src/bin/ephoto_single_browser.c
index 6d4d8e1..5614d64 100644
--- a/src/bin/ephoto_single_browser.c
+++ b/src/bin/ephoto_single_browser.c
@@ -464,8 +464,8 @@ _mouse_wheel(void *data, Evas *e EINA_UNUSED, Evas_Object 
*obj EINA_UNUSED, void
    Evas_Event_Mouse_Wheel *ev = event_info;
    if (!evas_key_modifier_is_set(ev->modifiers, "Control")) return;
 
-   if (ev->z > 0) _zoom_in(sb);
-   else _zoom_out(sb);
+   if (ev->z > 0) _zoom_out(sb);
+   else _zoom_in(sb);
 }
 
 static Ephoto_Entry *

-- 


Reply via email to