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

Reply via email to