WIP stuff
This commit is contained in:
parent
24a8b7251a
commit
9cd40f0605
|
@ -2582,6 +2582,48 @@ e_comp_object_zoomap_set(Evas_Object *obj, Eina_Bool enabled)
|
|||
cw->zoomap_disabled = !enabled;
|
||||
}
|
||||
|
||||
E_API void
|
||||
e_comp_object_viewport_source_set(Evas_Object *obj, int src_x, int src_y, int src_width, int src_height)
|
||||
{
|
||||
API_ENTRY;
|
||||
|
||||
e_zoomap_viewport_source_set(cw->zoomobj, src_x, src_y, src_width, src_height);
|
||||
}
|
||||
|
||||
E_API void
|
||||
e_comp_object_viewport_destination_set(Evas_Object *obj, int width, int height)
|
||||
{
|
||||
API_ENTRY;
|
||||
|
||||
e_zoomap_viewport_destination_set(cw->zoomobj, width, height);
|
||||
}
|
||||
|
||||
E_API void
|
||||
e_comp_object_viewport_set(Evas_Object *obj, Eina_Bool enabled)
|
||||
{
|
||||
API_ENTRY;
|
||||
|
||||
e_zoomap_commit(cw->zoomobj);
|
||||
}
|
||||
|
||||
E_API void
|
||||
e_comp_object_scale_set(Evas_Object *obj, int32_t scale)
|
||||
{
|
||||
API_ENTRY;
|
||||
|
||||
e_zoomap_scale_set(cw->zoomobj, scale);
|
||||
e_zoomap_commit(cw->zoomobj);
|
||||
}
|
||||
|
||||
E_API void
|
||||
e_comp_object_transform_set(Evas_Object *obj, uint32_t transform)
|
||||
{
|
||||
API_ENTRY;
|
||||
|
||||
e_zoomap_transform_set(cw->zoomobj, transform);
|
||||
e_zoomap_commit(cw->zoomobj);
|
||||
}
|
||||
|
||||
E_API Eina_Bool
|
||||
e_comp_object_mirror_visibility_check(Evas_Object *obj)
|
||||
{
|
||||
|
|
|
@ -92,6 +92,11 @@ E_API Eina_Bool e_comp_object_effect_stop(Evas_Object *obj, Edje_Signal_Cb end_c
|
|||
E_API E_Comp_Object_Mover *e_comp_object_effect_mover_add(int pri, const char *sig, E_Comp_Object_Mover_Cb provider, const void *data);
|
||||
E_API void e_comp_object_effect_mover_del(E_Comp_Object_Mover *prov);
|
||||
E_API void e_comp_object_map_set(Evas_Object *obj, Evas_Map *map);
|
||||
E_API void e_comp_object_viewport_source_set(Evas_Object *obj, int src_x, int src_y, int src_width, int src_height);
|
||||
E_API void e_comp_object_viewport_destination_set(Evas_Object *obj, int width, int height);
|
||||
E_API void e_comp_object_viewport_set(Evas_Object *obj, Eina_Bool enabled);
|
||||
E_API void e_comp_object_scale_set(Evas_Object *obj, int32_t scale);
|
||||
E_API void e_comp_object_transform_set(Evas_Object *obj, uint32_t transform);
|
||||
|
||||
#endif
|
||||
#endif
|
||||
|
|
|
@ -1248,8 +1248,8 @@ _e_comp_wl_surface_state_init(E_Comp_Wl_Surface_State *state, int w, int h)
|
|||
state->opaque = eina_tiler_new(w, h);
|
||||
eina_tiler_tile_size_set(state->opaque, 1, 1);
|
||||
|
||||
state->buffer_viewport.buffer.transform = WL_OUTPUT_TRANSFORM_NORMAL;
|
||||
state->buffer_viewport.buffer.scale = 1;
|
||||
state->transform = WL_OUTPUT_TRANSFORM_NORMAL;
|
||||
state->scale = 1;
|
||||
state->buffer_viewport.buffer.src_width = wl_fixed_from_int(-1);
|
||||
state->buffer_viewport.surface.width = -1;
|
||||
state->buffer_viewport.changed = 0;
|
||||
|
@ -1305,70 +1305,6 @@ _e_comp_wl_surface_state_attach(E_Client *ec, E_Comp_Wl_Surface_State *state)
|
|||
e_pixmap_refresh(ec->pixmap);
|
||||
}
|
||||
|
||||
static void
|
||||
_e_comp_wl_map_transform(int width, int height, uint32_t transform, int32_t scale,
|
||||
int sx, int sy, int *dx, int *dy)
|
||||
{
|
||||
switch (transform)
|
||||
{
|
||||
case WL_OUTPUT_TRANSFORM_NORMAL:
|
||||
default:
|
||||
*dx = sx, *dy = sy;
|
||||
break;
|
||||
case WL_OUTPUT_TRANSFORM_FLIPPED:
|
||||
*dx = width - sx, *dy = sy;
|
||||
break;
|
||||
case WL_OUTPUT_TRANSFORM_90:
|
||||
*dx = height - sy, *dy = sx;
|
||||
break;
|
||||
case WL_OUTPUT_TRANSFORM_FLIPPED_90:
|
||||
*dx = height - sy, *dy = width - sx;
|
||||
break;
|
||||
case WL_OUTPUT_TRANSFORM_180:
|
||||
*dx = width - sx, *dy = height - sy;
|
||||
break;
|
||||
case WL_OUTPUT_TRANSFORM_FLIPPED_180:
|
||||
*dx = sx, *dy = height - sy;
|
||||
break;
|
||||
case WL_OUTPUT_TRANSFORM_270:
|
||||
*dx = sy, *dy = width - sx;
|
||||
break;
|
||||
case WL_OUTPUT_TRANSFORM_FLIPPED_270:
|
||||
*dx = sy, *dy = sx;
|
||||
break;
|
||||
}
|
||||
|
||||
*dx *= scale;
|
||||
*dy *= scale;
|
||||
}
|
||||
|
||||
static void
|
||||
_e_comp_wl_map_size_cal_from_buffer(E_Client *ec, int32_t *ow, int32_t *oh)
|
||||
{
|
||||
E_Comp_Wl_Buffer_Viewport *vp = &ec->comp_data->scaler.buffer_viewport;
|
||||
int32_t width, height, pw, ph;
|
||||
|
||||
if (!e_pixmap_size_get(ec->pixmap, &pw, &ph)) return;
|
||||
|
||||
switch (vp->buffer.transform)
|
||||
{
|
||||
case WL_OUTPUT_TRANSFORM_90:
|
||||
case WL_OUTPUT_TRANSFORM_270:
|
||||
case WL_OUTPUT_TRANSFORM_FLIPPED_90:
|
||||
case WL_OUTPUT_TRANSFORM_FLIPPED_270:
|
||||
width = ph / vp->buffer.scale;
|
||||
height = pw / vp->buffer.scale;
|
||||
break;
|
||||
default:
|
||||
width = pw / vp->buffer.scale;
|
||||
height = ph / vp->buffer.scale;
|
||||
break;
|
||||
}
|
||||
|
||||
*ow = width;
|
||||
*oh = height;
|
||||
}
|
||||
|
||||
static void
|
||||
_e_comp_wl_map_size_cal_from_viewport(E_Client *ec, int32_t bw, int32_t bh, int32_t *ow, int32_t *oh)
|
||||
{
|
||||
|
@ -1398,7 +1334,7 @@ _e_comp_wl_map_size_cal_from_viewport(E_Client *ec, int32_t bw, int32_t bh, int3
|
|||
*ow = width;
|
||||
*oh = height;
|
||||
}
|
||||
|
||||
/*
|
||||
static void
|
||||
_e_comp_wl_map_apply(E_Client *ec)
|
||||
{
|
||||
|
@ -1455,7 +1391,7 @@ _e_comp_wl_map_apply(E_Client *ec)
|
|||
|
||||
evas_map_free(map);
|
||||
}
|
||||
|
||||
*/
|
||||
static void
|
||||
_e_comp_wl_surface_state_commit(E_Client *ec, E_Comp_Wl_Surface_State *state)
|
||||
{
|
||||
|
@ -1629,9 +1565,35 @@ _e_comp_wl_surface_state_commit(E_Client *ec, E_Comp_Wl_Surface_State *state)
|
|||
}
|
||||
}
|
||||
|
||||
if (e_pixmap_usable_get(ec->pixmap))
|
||||
{
|
||||
if (state->scale > 1 && state->scale != ec->comp_data->scale)
|
||||
{
|
||||
ec->comp_data->scale = state->scale;
|
||||
e_comp_object_zoomap_set(ec->frame, 1);
|
||||
e_comp_object_scale_set(ec->frame, state->scale);
|
||||
}
|
||||
if (state->transform && state->transform != ec->comp_data->transform)
|
||||
{
|
||||
ec->comp_data->transform = state->transform;
|
||||
e_comp_object_zoomap_set(ec->frame, 1);
|
||||
e_comp_object_transform_set(ec->frame, state->transform);
|
||||
}
|
||||
}
|
||||
if (e_pixmap_usable_get(ec->pixmap) && state->buffer_viewport.changed)
|
||||
{
|
||||
_e_comp_wl_map_apply(ec);
|
||||
E_Comp_Wl_Buffer_Viewport *vp = &ec->comp_data->scaler.buffer_viewport;
|
||||
|
||||
e_comp_object_zoomap_set(ec->frame, 1);
|
||||
e_comp_object_viewport_source_set(ec->frame,
|
||||
wl_fixed_to_int(vp->buffer.src_x),
|
||||
wl_fixed_to_int(vp->buffer.src_y),
|
||||
wl_fixed_to_int(vp->buffer.src_width),
|
||||
wl_fixed_to_int(vp->buffer.src_height));
|
||||
e_comp_object_viewport_destination_set(ec->frame,
|
||||
vp->surface.width,
|
||||
vp->surface.height);
|
||||
e_comp_object_viewport_set(ec->frame, 1);
|
||||
state->buffer_viewport.changed = 0;
|
||||
}
|
||||
|
||||
|
@ -1882,15 +1844,25 @@ _e_comp_wl_surface_cb_commit(struct wl_client *client EINA_UNUSED, struct wl_res
|
|||
}
|
||||
|
||||
static void
|
||||
_e_comp_wl_surface_cb_buffer_transform_set(struct wl_client *client EINA_UNUSED, struct wl_resource *resource EINA_UNUSED, int32_t transform EINA_UNUSED)
|
||||
_e_comp_wl_surface_cb_buffer_transform_set(struct wl_client *client EINA_UNUSED, struct wl_resource *resource EINA_UNUSED, int32_t transform)
|
||||
{
|
||||
/* DBG("Surface Buffer Transform: %d", wl_resource_get_id(resource)); */
|
||||
E_Client *ec;
|
||||
|
||||
if (!(ec = wl_resource_get_user_data(resource))) return;
|
||||
if (e_object_is_del(E_OBJECT(ec))) return;
|
||||
|
||||
ec->comp_data->pending.transform = transform;
|
||||
}
|
||||
|
||||
static void
|
||||
_e_comp_wl_surface_cb_buffer_scale_set(struct wl_client *client EINA_UNUSED, struct wl_resource *resource EINA_UNUSED, int32_t scale EINA_UNUSED)
|
||||
_e_comp_wl_surface_cb_buffer_scale_set(struct wl_client *client EINA_UNUSED, struct wl_resource *resource EINA_UNUSED, int32_t scale)
|
||||
{
|
||||
/* DBG("Surface Buffer Scale: %d", wl_resource_get_id(resource)); */
|
||||
E_Client *ec;
|
||||
|
||||
if (!(ec = wl_resource_get_user_data(resource))) return;
|
||||
if (e_object_is_del(E_OBJECT(ec))) return;
|
||||
|
||||
ec->comp_data->pending.scale = scale;
|
||||
}
|
||||
|
||||
static const struct wl_surface_interface _e_surface_interface =
|
||||
|
@ -2585,8 +2557,8 @@ _e_comp_wl_client_cb_new(void *data EINA_UNUSED, E_Client *ec)
|
|||
/* set initial client data properties */
|
||||
ec->comp_data->mapped = EINA_FALSE;
|
||||
|
||||
ec->comp_data->scaler.buffer_viewport.buffer.transform = WL_OUTPUT_TRANSFORM_NORMAL;
|
||||
ec->comp_data->scaler.buffer_viewport.buffer.scale = 1;
|
||||
ec->comp_data->transform = WL_OUTPUT_TRANSFORM_NORMAL;
|
||||
ec->comp_data->scale = 1;
|
||||
ec->comp_data->scaler.buffer_viewport.buffer.src_width = wl_fixed_from_int(-1);
|
||||
ec->comp_data->scaler.buffer_viewport.surface.width = -1;
|
||||
|
||||
|
|
|
@ -68,9 +68,6 @@ struct _E_Comp_Wl_Buffer
|
|||
struct _E_Comp_Wl_Buffer_Viewport {
|
||||
struct
|
||||
{
|
||||
uint32_t transform; /* wl_surface.set_buffer_transform */
|
||||
int32_t scale; /* wl_surface.set_scaling_factor */
|
||||
|
||||
/* If src_width != wl_fixed_from_int(-1), then and only then src_* are used. */
|
||||
wl_fixed_t src_x, src_y;
|
||||
wl_fixed_t src_width, src_height;
|
||||
|
@ -93,6 +90,8 @@ struct _E_Comp_Wl_Surface_State
|
|||
struct wl_listener buffer_destroy_listener;
|
||||
Eina_List *damages, *frames;
|
||||
Eina_Tiler *input, *opaque;
|
||||
uint32_t transform;
|
||||
int32_t scale;
|
||||
E_Comp_Wl_Buffer_Viewport buffer_viewport;
|
||||
Eina_Bool new_attach : 1;
|
||||
Eina_Bool has_data : 1;
|
||||
|
@ -331,6 +330,9 @@ struct _E_Comp_Wl_Client_Data
|
|||
int32_t x, y;
|
||||
} popup;
|
||||
|
||||
uint32_t transform;
|
||||
int32_t scale;
|
||||
|
||||
struct
|
||||
{
|
||||
struct wl_resource *viewport;
|
||||
|
|
|
@ -10,10 +10,15 @@ struct _E_Smart_Data
|
|||
Evas_Object *smart_obj, *child_obj;
|
||||
Evas_Coord x, y, w, h;
|
||||
Evas_Coord child_w, child_h;
|
||||
int32_t scale;
|
||||
uint32_t transform;
|
||||
int src_x, src_y, src_w, src_h;
|
||||
int dst_w, dst_h;
|
||||
unsigned int recurse;
|
||||
Eina_Bool solid : 1;
|
||||
Eina_Bool smooth : 1;
|
||||
Eina_Bool always : 1;
|
||||
Eina_Bool viewport : 1;
|
||||
};
|
||||
|
||||
/* local subsystem functions */
|
||||
|
@ -36,6 +41,60 @@ static void _e_zoomap_smart_init(void);
|
|||
static Evas_Smart *_e_smart = NULL;
|
||||
|
||||
/* externally accessible functions */
|
||||
E_API void
|
||||
e_zoomap_commit(Evas_Object *obj)
|
||||
{
|
||||
API_ENTRY return;
|
||||
|
||||
_e_zoomap_smart_reconfigure(sd);
|
||||
}
|
||||
|
||||
E_API void
|
||||
e_zoomap_viewport_source_set(Evas_Object *obj, int x, int y, int w, int h)
|
||||
{
|
||||
API_ENTRY return;
|
||||
fprintf(stderr, "ZOOM: %d %d %d %d\n", x, y, w, h);
|
||||
sd->src_x = x;
|
||||
sd->src_y = y;
|
||||
sd->src_w = w;
|
||||
sd->src_h = h;
|
||||
sd->viewport = EINA_TRUE;
|
||||
}
|
||||
|
||||
E_API void
|
||||
e_zoomap_viewport_destination_set(Evas_Object *obj, int w, int h)
|
||||
{
|
||||
API_ENTRY return;
|
||||
|
||||
sd->w = w;
|
||||
sd->h = h;
|
||||
sd->viewport = EINA_TRUE;
|
||||
}
|
||||
|
||||
E_API void
|
||||
e_zoomap_viewport_set(Evas_Object *obj, Eina_Bool enabled)
|
||||
{
|
||||
API_ENTRY return;
|
||||
fprintf(stderr, "ZOOM: %d\n", enabled);
|
||||
sd->viewport = enabled;
|
||||
}
|
||||
|
||||
E_API void
|
||||
e_zoomap_scale_set(Evas_Object *obj, int32_t scale)
|
||||
{
|
||||
API_ENTRY return;
|
||||
|
||||
sd->scale = scale;
|
||||
}
|
||||
|
||||
E_API void
|
||||
e_zoomap_transform_set(Evas_Object *obj, uint32_t transform)
|
||||
{
|
||||
API_ENTRY return;
|
||||
|
||||
sd->transform = transform;
|
||||
}
|
||||
|
||||
E_API Evas_Object *
|
||||
e_zoomap_add(Evas *evas)
|
||||
{
|
||||
|
@ -47,6 +106,7 @@ E_API void
|
|||
e_zoomap_child_set(Evas_Object *obj, Evas_Object *child)
|
||||
{
|
||||
API_ENTRY return;
|
||||
fprintf(stderr, "CHILD SET: %p %p\n", obj, child);
|
||||
if (child == sd->child_obj) return;
|
||||
if (sd->child_obj)
|
||||
{
|
||||
|
@ -68,6 +128,7 @@ e_zoomap_child_set(Evas_Object *obj, Evas_Object *child)
|
|||
evas_object_smart_member_add(sd->child_obj, sd->smart_obj);
|
||||
evas_object_geometry_get(sd->child_obj, NULL, NULL,
|
||||
&sd->child_w, &sd->child_h);
|
||||
fprintf(stderr, "child set: (%p)'s CHILD (%p) SIZE: %d %d\n", obj, sd->child_obj, sd->child_w, sd->child_h);
|
||||
evas_object_event_callback_add(child, EVAS_CALLBACK_DEL,
|
||||
_e_zoomap_smart_child_del_hook, sd);
|
||||
evas_object_event_callback_add(child, EVAS_CALLBACK_RESIZE,
|
||||
|
@ -86,6 +147,8 @@ e_zoomap_child_resize(Evas_Object *obj, int w, int h)
|
|||
{
|
||||
API_ENTRY return;
|
||||
evas_object_resize(sd->child_obj, w, h);
|
||||
fprintf(stderr, "child_resize (%p)'s CHILD (%p) RESIZED... %d %d\n", obj, sd->child_obj, w, h);
|
||||
sd->child_w = w; sd->child_h = h;
|
||||
}
|
||||
|
||||
E_API Evas_Object *
|
||||
|
@ -189,13 +252,94 @@ _e_zoomap_smart_child_resize_hook(void *data, Evas *e EINA_UNUSED, Evas_Object *
|
|||
}
|
||||
}
|
||||
|
||||
static void
|
||||
_e_zoomap_size(E_Smart_Data *sd, int32_t *ow, int32_t *oh)
|
||||
{
|
||||
switch (sd->transform)
|
||||
{
|
||||
case WL_OUTPUT_TRANSFORM_90:
|
||||
case WL_OUTPUT_TRANSFORM_270:
|
||||
case WL_OUTPUT_TRANSFORM_FLIPPED_90:
|
||||
case WL_OUTPUT_TRANSFORM_FLIPPED_270:
|
||||
*ow = sd->child_h;
|
||||
*oh = sd->child_w;
|
||||
break;
|
||||
default:
|
||||
*ow = sd->child_w;
|
||||
*oh = sd->child_h;
|
||||
break;
|
||||
}
|
||||
|
||||
if (sd->scale > 1)
|
||||
{
|
||||
*ow /= sd->scale;
|
||||
*oh /= sd->scale;
|
||||
}
|
||||
}
|
||||
|
||||
static void
|
||||
_e_zoomap_transform_point(E_Smart_Data *sd, int sx, int sy, int *dx, int *dy)
|
||||
{
|
||||
int width, height;
|
||||
|
||||
_e_zoomap_size(sd, &width, &height);
|
||||
|
||||
switch (sd->transform)
|
||||
{
|
||||
case WL_OUTPUT_TRANSFORM_NORMAL:
|
||||
default:
|
||||
*dx = sx, *dy = sy;
|
||||
break;
|
||||
case WL_OUTPUT_TRANSFORM_FLIPPED:
|
||||
*dx = width - sx, *dy = sy;
|
||||
break;
|
||||
case WL_OUTPUT_TRANSFORM_90:
|
||||
*dx = height - sy, *dy = sx;
|
||||
break;
|
||||
case WL_OUTPUT_TRANSFORM_FLIPPED_90:
|
||||
*dx = height - sy, *dy = width - sx;
|
||||
break;
|
||||
case WL_OUTPUT_TRANSFORM_180:
|
||||
*dx = width - sx, *dy = height - sy;
|
||||
break;
|
||||
case WL_OUTPUT_TRANSFORM_FLIPPED_180:
|
||||
*dx = sx, *dy = height - sy;
|
||||
break;
|
||||
case WL_OUTPUT_TRANSFORM_270:
|
||||
*dx = sy, *dy = width - sx;
|
||||
break;
|
||||
case WL_OUTPUT_TRANSFORM_FLIPPED_270:
|
||||
*dx = sy, *dy = sx;
|
||||
break;
|
||||
}
|
||||
|
||||
if (sd->scale > 1)
|
||||
{
|
||||
*dx *= sd->scale;
|
||||
*dy *= sd->scale;
|
||||
}
|
||||
|
||||
fprintf(stderr, "TRANSFORM %d %d rot %d scale %d to %d %d\n", sx, sy, sd->transform, sd->scale, *dx, *dy);
|
||||
}
|
||||
|
||||
static Eina_Bool
|
||||
_e_zoomap_transformed(E_Smart_Data *sd)
|
||||
{
|
||||
if (sd->scale > 1) return EINA_TRUE;
|
||||
fprintf(stderr, "TRANSFORM: %d\n", sd->transform);
|
||||
if (sd->transform != 0) return EINA_TRUE;
|
||||
|
||||
return EINA_FALSE;
|
||||
}
|
||||
|
||||
static void
|
||||
_e_zoomap_smart_reconfigure(E_Smart_Data *sd)
|
||||
{
|
||||
if (!sd->child_obj) return;
|
||||
sd->recurse++;
|
||||
if ((!sd->always) &&
|
||||
((sd->w == sd->child_w) && (sd->h == sd->child_h)))
|
||||
((sd->w == sd->child_w) && (sd->h == sd->child_h)) &&
|
||||
(!_e_zoomap_transformed(sd)))
|
||||
{
|
||||
evas_object_map_set(sd->child_obj, NULL);
|
||||
evas_object_map_enable_set(sd->child_obj, EINA_FALSE);
|
||||
|
@ -208,6 +352,7 @@ _e_zoomap_smart_reconfigure(E_Smart_Data *sd)
|
|||
Evas *e = evas_object_evas_get(sd->child_obj);
|
||||
Evas_Coord cx = 0, cy = 0;
|
||||
int r = 0, g = 0, b = 0, a = 0;
|
||||
int width, height, x, y;
|
||||
|
||||
evas_object_geometry_get(sd->child_obj, &cx, &cy, NULL, NULL);
|
||||
if (sd->recurse != 1)
|
||||
|
@ -227,12 +372,23 @@ _e_zoomap_smart_reconfigure(E_Smart_Data *sd)
|
|||
}
|
||||
evas_object_color_get(sd->child_obj, &r, &g, &b, &a);
|
||||
m = evas_map_new(4);
|
||||
_e_zoomap_size(sd, &width, &height);
|
||||
fprintf(stderr, "PLZ HALP buffer:(%d, %d) surface:(%d, %d)\n", sd->child_w, sd->child_h, width, height);
|
||||
evas_map_util_points_populate_from_geometry(m, sd->x, sd->y,
|
||||
sd->w, sd->h, 0);
|
||||
evas_map_point_image_uv_set(m, 0, 0, 0);
|
||||
evas_map_point_image_uv_set(m, 1, sd->child_w, 0);
|
||||
evas_map_point_image_uv_set(m, 2, sd->child_w, sd->child_h);
|
||||
evas_map_point_image_uv_set(m, 3, 0, sd->child_h);
|
||||
width, height, 0);
|
||||
|
||||
_e_zoomap_transform_point(sd, 0, 0, &x, &y);
|
||||
evas_map_point_image_uv_set(m, 0, x, y);
|
||||
|
||||
_e_zoomap_transform_point(sd, width, 0, &x, &y);
|
||||
evas_map_point_image_uv_set(m, 1, x, y);
|
||||
|
||||
_e_zoomap_transform_point(sd, width, height, &x, &y);
|
||||
evas_map_point_image_uv_set(m, 2, x, y);
|
||||
|
||||
_e_zoomap_transform_point(sd, 0, height, &x, &y);
|
||||
evas_map_point_image_uv_set(m, 3, x, y);
|
||||
|
||||
evas_map_smooth_set(m, sd->smooth);
|
||||
evas_map_point_color_set(m, 0, r, g, b, a);
|
||||
evas_map_point_color_set(m, 1, r, g, b, a);
|
||||
|
|
|
@ -14,5 +14,12 @@ E_API void e_zoomap_always_set (Evas_Object *obj, Eina_Bool always);
|
|||
E_API Eina_Bool e_zoomap_always_get (Evas_Object *obj);
|
||||
E_API void e_zoomap_child_resize(Evas_Object *zoomap, int w, int h);
|
||||
E_API void e_zoomap_child_edje_solid_setup(Evas_Object *obj);
|
||||
E_API void e_zoomap_viewport_source_set(Evas_Object *obj, int x, int y, int w, int h);
|
||||
E_API void e_zoomap_viewport_destination_set(Evas_Object *obj, int w, int h);
|
||||
E_API void e_zoomap_viewport_set(Evas_Object *obj, Eina_Bool enabled);
|
||||
E_API void e_zoomap_scale_set(Evas_Object *obj, int32_t scale);
|
||||
E_API void e_zoomap_transform_set(Evas_Object *obj, uint32_t transform);
|
||||
E_API void e_zoomap_commit(Evas_Object *obj);
|
||||
|
||||
#endif
|
||||
#endif
|
||||
|
|
Loading…
Reference in New Issue