2013-10-14 10:56:42 -07:00
|
|
|
#include "e_mod_main.h"
|
|
|
|
|
2013-10-15 01:19:03 -07:00
|
|
|
#define EC_HOOK_COUNT 6
|
2013-10-14 10:56:42 -07:00
|
|
|
|
|
|
|
static Evas_Object *mr_obj_x = NULL;
|
|
|
|
static Evas_Object *mr_obj_y = NULL;
|
|
|
|
static Evas_Object *fade_obj = NULL;
|
|
|
|
|
2013-10-15 01:19:03 -07:00
|
|
|
static E_Client_Hook *ec_hooks[EC_HOOK_COUNT] = {NULL};
|
|
|
|
|
2013-10-14 10:56:42 -07:00
|
|
|
static void
|
|
|
|
fade_end(void *d EINA_UNUSED, Efx_Map_Data *emd EINA_UNUSED, Evas_Object *obj EINA_UNUSED)
|
|
|
|
{
|
|
|
|
E_FREE_FUNC(fade_obj, evas_object_del);
|
|
|
|
}
|
|
|
|
|
|
|
|
static void
|
|
|
|
move_begin(void *d EINA_UNUSED, E_Client *ec)
|
|
|
|
{
|
|
|
|
if (fade_obj)
|
|
|
|
{
|
|
|
|
efx_fade_reset(fade_obj);
|
|
|
|
E_FREE_FUNC(fade_obj, evas_object_del);
|
|
|
|
E_FREE_FUNC(mr_obj_x, evas_object_del);
|
|
|
|
E_FREE_FUNC(mr_obj_y, evas_object_del);
|
|
|
|
}
|
|
|
|
ec->layer_block = 1;
|
|
|
|
|
|
|
|
fade_obj = evas_object_rectangle_add(ec->comp->evas);
|
|
|
|
evas_object_name_set(fade_obj, "fade_obj");
|
|
|
|
evas_object_geometry_set(fade_obj, 0, 0, ec->comp->man->w, ec->comp->man->h);
|
|
|
|
evas_object_layer_set(fade_obj, E_LAYER_MENU + 1);
|
|
|
|
evas_object_show(fade_obj);
|
|
|
|
efx_fade(fade_obj, EFX_EFFECT_SPEED_LINEAR, EFX_COLOR(0, 0, 0), 0, 0.0, NULL, NULL);
|
|
|
|
efx_fade(fade_obj, EFX_EFFECT_SPEED_LINEAR, EFX_COLOR(0, 0, 0), 192, 0.3, NULL, NULL);
|
|
|
|
|
|
|
|
evas_object_layer_set(ec->frame, E_LAYER_MENU + 2);
|
|
|
|
|
|
|
|
mr_obj_x = evas_object_line_add(ec->comp->evas);
|
|
|
|
evas_object_name_set(mr_obj_x, "mr_obj_x");
|
|
|
|
evas_object_layer_set(mr_obj_x, E_LAYER_MENU + 2);
|
|
|
|
evas_object_clip_set(mr_obj_x, ec->zone->bg_clip_object);
|
|
|
|
evas_object_line_xy_set(mr_obj_x, ec->x, ec->zone->y, ec->x, ec->y);
|
|
|
|
evas_object_color_set(mr_obj_x, 51, 153, 255, 255);
|
|
|
|
evas_object_show(mr_obj_x);
|
|
|
|
|
|
|
|
mr_obj_y = evas_object_line_add(ec->comp->evas);
|
|
|
|
evas_object_name_set(mr_obj_y, "mr_obj_y");
|
|
|
|
evas_object_layer_set(mr_obj_y, E_LAYER_MENU + 2);
|
|
|
|
evas_object_clip_set(mr_obj_y, ec->zone->bg_clip_object);
|
|
|
|
evas_object_line_xy_set(mr_obj_y, ec->zone->x, ec->y, ec->x, ec->y);
|
|
|
|
evas_object_color_set(mr_obj_y, 51, 153, 255, 255);
|
|
|
|
evas_object_show(mr_obj_y);
|
|
|
|
}
|
|
|
|
|
|
|
|
static void
|
|
|
|
move_update(void *d EINA_UNUSED, E_Client *ec)
|
|
|
|
{
|
|
|
|
evas_object_line_xy_set(mr_obj_x, ec->x, ec->zone->y, ec->x, ec->y);
|
|
|
|
evas_object_line_xy_set(mr_obj_y, ec->zone->x, ec->y, ec->x, ec->y);
|
|
|
|
}
|
|
|
|
|
|
|
|
static void
|
|
|
|
move_end(void *d EINA_UNUSED, E_Client *ec)
|
|
|
|
{
|
|
|
|
efx_fade(fade_obj, EFX_EFFECT_SPEED_LINEAR, EFX_COLOR(0, 0, 0), 0, 0.3, fade_end, NULL);
|
|
|
|
E_FREE_FUNC(mr_obj_x, evas_object_del);
|
|
|
|
E_FREE_FUNC(mr_obj_y, evas_object_del);
|
|
|
|
|
|
|
|
evas_object_layer_set(ec->frame, ec->layer);
|
|
|
|
ec->layer_block = 1;
|
|
|
|
}
|
|
|
|
|
|
|
|
static void
|
|
|
|
resize_begin(void *d EINA_UNUSED, E_Client *ec)
|
|
|
|
{
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
static void
|
|
|
|
resize_update(void *d EINA_UNUSED, E_Client *ec)
|
|
|
|
{
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
static void
|
|
|
|
resize_end(void *d EINA_UNUSED, E_Client *ec)
|
|
|
|
{
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
EINTERN void
|
|
|
|
mr_init(void)
|
|
|
|
{
|
2013-10-15 01:19:03 -07:00
|
|
|
unsigned int x = 0;
|
|
|
|
|
|
|
|
ec_hooks[x++] = e_client_hook_add(E_CLIENT_HOOK_MOVE_BEGIN, move_begin, NULL);
|
|
|
|
ec_hooks[x++] = e_client_hook_add(E_CLIENT_HOOK_MOVE_UPDATE, move_update, NULL);
|
|
|
|
ec_hooks[x++] = e_client_hook_add(E_CLIENT_HOOK_MOVE_END, move_end, NULL);
|
|
|
|
|
|
|
|
ec_hooks[x++] = e_client_hook_add(E_CLIENT_HOOK_RESIZE_BEGIN, resize_begin, NULL);
|
|
|
|
ec_hooks[x++] = e_client_hook_add(E_CLIENT_HOOK_RESIZE_UPDATE, resize_update, NULL);
|
|
|
|
ec_hooks[x++] = e_client_hook_add(E_CLIENT_HOOK_RESIZE_END, resize_end, NULL);
|
2013-10-14 10:56:42 -07:00
|
|
|
}
|
|
|
|
|
|
|
|
EINTERN void
|
|
|
|
mr_shutdown(void)
|
|
|
|
{
|
2013-10-15 01:19:03 -07:00
|
|
|
unsigned int x = 0;
|
2013-10-14 10:56:42 -07:00
|
|
|
|
2013-10-15 01:19:03 -07:00
|
|
|
for (; x < EC_HOOK_COUNT; x++)
|
|
|
|
E_FREE_FUNC(ec_hooks[x], e_client_hook_del);
|
2013-10-14 10:56:42 -07:00
|
|
|
}
|