Enlightenment CVS committal Author : dj2 Project : e17 Module : apps/e
Dir : e17/apps/e/src/bin Modified Files: e_border.c Log Message: - display window coords while moving =================================================================== RCS file: /cvsroot/enlightenment/e17/apps/e/src/bin/e_border.c,v retrieving revision 1.125 retrieving revision 1.126 diff -u -3 -r1.125 -r1.126 --- e_border.c 5 Apr 2005 14:47:39 -0000 1.125 +++ e_border.c 9 Apr 2005 07:10:25 -0000 1.126 @@ -95,6 +95,10 @@ static void _e_border_resize_end(E_Border *bd); static void _e_border_resize_update(E_Border *bd); +static void _e_border_move_begin(E_Border *bd); +static void _e_border_move_end(E_Border *bd); +static void _e_border_move_update(E_Border *bd); + static void _e_border_reorder_after(E_Border *bd, E_Border *after); static void _e_border_reorder_before(E_Border *bd, E_Border *before); @@ -107,6 +111,9 @@ static Ecore_Evas *resize_ee = NULL; static Evas_Object *resize_obj = NULL; +static Ecore_Evas *move_ee = NULL; +static Evas_Object *move_obj = NULL; + int E_EVENT_BORDER_ADD = 0; int E_EVENT_BORDER_REMOVE = 0; int E_EVENT_BORDER_ZONE_SET = 0; @@ -479,6 +486,7 @@ bd->y + bd->client_inset.t, bd->client.w, bd->client.h); + _e_border_move_update(bd); _e_border_zone_update(bd); ev = calloc(1, sizeof(E_Event_Border_Move)); ev->border = bd; @@ -599,6 +607,7 @@ ev->above = NULL; ecore_event_add(E_EVENT_BORDER_RAISE, ev, _e_border_event_border_raise_free, NULL); } + if (move_ee) ecore_evas_raise(move_ee); } void @@ -1666,6 +1675,7 @@ bd = data; bd->moving = 1; _e_border_moveinfo_gather(bd, source); + _e_border_move_begin(bd); e_border_raise(bd); } @@ -1676,6 +1686,7 @@ bd = data; bd->moving = 0; + _e_border_move_end(bd); } static void @@ -3592,6 +3603,62 @@ } static void +_e_border_move_begin(E_Border *bd) +{ + Evas_Coord w, h; + char buf[40]; + + if (move_ee) ecore_evas_free(move_ee); + move_ee = ecore_evas_software_x11_new(NULL, bd->zone->container->manager->win, + 0, 0, 10, 10); + ecore_evas_override_set(move_ee, 1); + ecore_evas_software_x11_direct_resize_set(move_ee, 1); + e_canvas_add(move_ee); + ecore_evas_borderless_set(move_ee, 1); + ecore_evas_layer_set(move_ee, 999); + ecore_evas_show(move_ee); + + move_obj = edje_object_add(ecore_evas_get(move_ee)); + edje_object_file_set(move_obj, e_path_find(path_themes, "default.edj"), + "widgets/border/default/move"); + snprintf(buf, sizeof(buf), "9999x9999"); + edje_object_part_text_set(move_obj, "text", buf); + + edje_object_size_min_calc(move_obj, &w, &h); + evas_object_move(move_obj, 0, 0); + evas_object_resize(move_obj, w, h); + evas_object_show(move_obj); + + snprintf(buf, sizeof(buf), "%ix%i", bd->x, bd->y); + edje_object_part_text_set(move_obj, "text", buf); + + ecore_evas_move(move_ee, (bd->zone->w - w) / 2, (bd->zone->h - h) / 2); + ecore_evas_resize(move_ee, w, h); + + ecore_evas_show(move_ee); +} + +static void +_e_border_move_end(E_Border *bd) +{ + evas_object_del(move_obj); + if (move_ee) + { + ecore_evas_free(move_ee); + move_ee = NULL; + } +} + +static void +_e_border_move_update(E_Border *bd) +{ + char buf[40]; + + snprintf(buf, sizeof(buf) - 1, "%ix%i", bd->x, bd->y); + edje_object_part_text_set(move_obj, "text", buf); +} + +static void _e_border_reorder_after(E_Border *bd, E_Border *after) { if (after) ------------------------------------------------------- SF email is sponsored by - The IT Product Guide Read honest & candid reviews on hundreds of IT Products from real users. Discover which products truly live up to the hype. Start reading now. http://ads.osdn.com/?ad_id=6595&alloc_id=14396&op=click _______________________________________________ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs