Ephoto: More work on crop scale/aspect

v-1.6.0
Stephen Houston 9 years ago
parent 7175e45d59
commit f670969435
  1. 26
      data/themes/crop.edc
  2. 4
      src/bin/ephoto_single_browser.c

@ -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);
}

@ -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 *

Loading…
Cancel
Save