Enlightenment CVS committal

Author  : doursse
Project : e17
Module  : apps/e

Dir     : e17/apps/e/src/bin


Modified Files:
        e_gadman.c 


Log Message:
display gadget coords while moving and gadget size while resizing
===================================================================
RCS file: /cvsroot/enlightenment/e17/apps/e/src/bin/e_gadman.c,v
retrieving revision 1.31
retrieving revision 1.32
diff -u -3 -r1.31 -r1.32
--- e_gadman.c  23 Apr 2005 05:16:24 -0000      1.31
+++ e_gadman.c  24 Apr 2005 14:44:23 -0000      1.32
@@ -69,6 +69,21 @@
 
 static E_Config_DD *gadman_config_edd = NULL;
 
+static Ecore_Evas  *move_gm_ee = NULL;
+static Evas_Object *move_gm_obj = NULL;
+
+static Ecore_Evas  *resize_left_gm_ee = NULL;
+static Evas_Object *resize_left_gm_obj = NULL;
+
+static Ecore_Evas  *resize_right_gm_ee = NULL;
+static Evas_Object *resize_right_gm_obj = NULL;
+
+static Ecore_Evas  *resize_up_gm_ee = NULL;
+static Evas_Object *resize_up_gm_obj = NULL;
+
+static Ecore_Evas  *resize_down_gm_ee = NULL;
+static Evas_Object *resize_down_gm_obj = NULL;
+
 /* externally accessible functions */
 int
 e_gadman_init(void)
@@ -1053,6 +1068,9 @@
 _e_gadman_cb_signal_move_start(void *data, Evas_Object *obj, const char 
*emission, const char *source)
 {
    E_Gadman_Client *gmc;
+   Evas_Coord       w, h;
+   char             buf[40];
+
    
    gmc = data;
    if (_e_gadman_client_is_being_modified(gmc)) return;
@@ -1061,6 +1079,40 @@
    evas_object_raise(gmc->control_object);
    evas_object_raise(gmc->event_object);
    _e_gadman_client_callback_call(gmc, E_GADMAN_CHANGE_RAISE);
+
+   if (move_gm_ee)
+      {
+        e_canvas_del(move_gm_ee);
+        ecore_evas_free(move_gm_ee);
+      }
+   move_gm_ee = ecore_evas_software_x11_new(NULL,
+                                           gmc->zone->container->manager->win,
+                                           0, 0, 10, 10);
+   ecore_evas_override_set(move_gm_ee, 1);
+   ecore_evas_software_x11_direct_resize_set(move_gm_ee, 1);
+   e_canvas_add(move_gm_ee);
+   ecore_evas_borderless_set(move_gm_ee, 1);
+   ecore_evas_layer_set(move_gm_ee, 999);
+   ecore_evas_show(move_gm_ee);
+
+   move_gm_obj = edje_object_add(ecore_evas_get(move_gm_ee));
+   edje_object_file_set(move_gm_obj, e_path_find(path_themes, "default.edj"),
+                       "widgets/border/default/move");
+   snprintf(buf, sizeof(buf), "9999 9999");
+   edje_object_part_text_set(move_gm_obj, "text", buf);
+
+   edje_object_size_min_calc(move_gm_obj, &w, &h);
+   evas_object_move(move_gm_obj, 0, 0);
+   evas_object_resize(move_gm_obj, w, h);
+   evas_object_show(move_gm_obj);
+
+   snprintf(buf, sizeof(buf), "%i %i", gmc->x, gmc->y);
+   edje_object_part_text_set(move_gm_obj, "text", buf);
+
+   ecore_evas_move(move_gm_ee, (gmc->zone->w - w) / 2, (gmc->zone->h - h) / 2);
+   ecore_evas_resize(move_gm_ee, w, h);
+
+   ecore_evas_show(move_gm_ee);
 }
 
 static void
@@ -1072,17 +1124,27 @@
    gmc->moving = 0;
    _e_gadman_client_geometry_to_align(gmc);
    e_gadman_client_save(gmc);
+
+   evas_object_del(move_gm_obj);
+   if (move_gm_ee)
+      {
+         e_canvas_del(move_gm_ee);
+        ecore_evas_hide(move_gm_ee);
+        move_gm_ee = NULL;
+      }
 }
 
 static void
 _e_gadman_cb_signal_move_go(void *data, Evas_Object *obj, const char 
*emission, const char *source)
 {
    E_Gadman_Client *gmc;
-   Evas_Coord x, y;
-   int new_edge = 0;
-   int nx, ny, nxx, nyy;
-   int new_zone = 0;
-   Evas_List *skiplist = NULL;
+   Evas_Coord       x, y;
+   int              new_edge = 0;
+   int              nx, ny, nxx, nyy;
+   int              new_zone = 0;
+   Evas_List       *skiplist = NULL;
+   char             buf[40];
+
    
    gmc = data;
    if (!gmc->moving) return;
@@ -1230,18 +1292,58 @@
    if (!e_object_del_get(E_OBJECT(gmc)))
      _e_gadman_client_callback_call(gmc, E_GADMAN_CHANGE_MOVE_RESIZE);
    e_object_unref(E_OBJECT(gmc));
+
+   snprintf(buf, sizeof(buf) - 1, "%i %i", gmc->x, gmc->y);
+   edje_object_part_text_set(move_gm_obj, "text", buf);
+
 }
 
 static void
 _e_gadman_cb_signal_resize_left_start(void *data, Evas_Object *obj, const char 
*emission, const char *source)
 {
    E_Gadman_Client *gmc;
+   Evas_Coord       w, h;
+   char             buf[40];
    
    gmc = data;
    if (_e_gadman_client_is_being_modified(gmc)) return;
    _e_gadman_client_down_store(gmc);
    gmc->use_autow = 0;
    gmc->resizing_l = 1;
+
+   if (resize_left_gm_ee)
+      {
+        e_canvas_del(resize_left_gm_ee);
+        ecore_evas_free(resize_left_gm_ee);
+      }
+   resize_left_gm_ee = ecore_evas_software_x11_new(NULL,
+                                           gmc->zone->container->manager->win,
+                                           0, 0, 10, 10);
+   ecore_evas_override_set(resize_left_gm_ee, 1);
+   ecore_evas_software_x11_direct_resize_set(resize_left_gm_ee, 1);
+   e_canvas_add(resize_left_gm_ee);
+   ecore_evas_borderless_set(resize_left_gm_ee, 1);
+   ecore_evas_layer_set(resize_left_gm_ee, 999);
+   ecore_evas_show(resize_left_gm_ee);
+
+   resize_left_gm_obj = edje_object_add(ecore_evas_get(resize_left_gm_ee));
+   edje_object_file_set(resize_left_gm_obj, e_path_find(path_themes, 
"default.edj"),
+                       "widgets/border/default/resize");
+   snprintf(buf, sizeof(buf), "9999 9999");
+   edje_object_part_text_set(resize_left_gm_obj, "text", buf);
+
+   edje_object_size_min_calc(resize_left_gm_obj, &w, &h);
+   evas_object_move(resize_left_gm_obj, 0, 0);
+   evas_object_resize(resize_left_gm_obj, w, h);
+   evas_object_show(resize_left_gm_obj);
+
+   snprintf(buf, sizeof(buf), "(%i,%i)", gmc->w, gmc->h);
+   edje_object_part_text_set(resize_left_gm_obj, "text", buf);
+
+   ecore_evas_move(resize_left_gm_ee, (gmc->zone->w - w) / 2, (gmc->zone->h - 
h) / 2);
+   ecore_evas_resize(resize_left_gm_ee, w, h);
+
+   ecore_evas_show(resize_left_gm_ee);
 }
 
 static void
@@ -1252,13 +1354,22 @@
    gmc = data;
    gmc->resizing_l = 0;
    e_gadman_client_save(gmc);
+
+   evas_object_del(resize_left_gm_obj);
+   if (resize_left_gm_ee)
+      {
+        e_canvas_del(resize_left_gm_ee);
+        ecore_evas_hide(resize_left_gm_ee);
+        resize_left_gm_ee = NULL;
+      }
 }
 
 static void
 _e_gadman_cb_signal_resize_left_go(void *data, Evas_Object *obj, const char 
*emission, const char *source)
 {
    E_Gadman_Client *gmc;
-   Evas_Coord x, y;
+   Evas_Coord       x, y;
+   char             buf[40];
    
    gmc = data;
    if (!gmc->resizing_l) return;
@@ -1307,18 +1418,57 @@
    _e_gadman_client_geometry_to_align(gmc);
    _e_gadman_client_geometry_apply(gmc);
    _e_gadman_client_callback_call(gmc, E_GADMAN_CHANGE_MOVE_RESIZE);
+
+   snprintf(buf, sizeof(buf) - 1, "(%i,%i)", gmc->w, gmc->h);
+   edje_object_part_text_set(resize_left_gm_obj, "text", buf);
 }
 
 static void
 _e_gadman_cb_signal_resize_right_start(void *data, Evas_Object *obj, const 
char *emission, const char *source)
 {
    E_Gadman_Client *gmc;
+   Evas_Coord       w, h;
+   char             buf[40];
    
    gmc = data;
    if (_e_gadman_client_is_being_modified(gmc)) return;
    _e_gadman_client_down_store(gmc);
    gmc->use_autow = 0;
    gmc->resizing_r = 1;
+
+   if (resize_right_gm_ee)
+      {
+         e_canvas_del(resize_right_gm_ee);
+        ecore_evas_free(resize_right_gm_ee);
+      }
+   resize_right_gm_ee = ecore_evas_software_x11_new(NULL,
+                                           gmc->zone->container->manager->win,
+                                           0, 0, 10, 10);
+   ecore_evas_override_set(resize_right_gm_ee, 1);
+   ecore_evas_software_x11_direct_resize_set(resize_right_gm_ee, 1);
+   e_canvas_add(resize_right_gm_ee);
+   ecore_evas_borderless_set(resize_right_gm_ee, 1);
+   ecore_evas_layer_set(resize_right_gm_ee, 999);
+   ecore_evas_show(resize_right_gm_ee);
+
+   resize_right_gm_obj = edje_object_add(ecore_evas_get(resize_right_gm_ee));
+   edje_object_file_set(resize_right_gm_obj, e_path_find(path_themes, 
"default.edj"),
+                       "widgets/border/default/resize");
+   snprintf(buf, sizeof(buf), "9999 9999");
+   edje_object_part_text_set(resize_right_gm_obj, "text", buf);
+
+   edje_object_size_min_calc(resize_right_gm_obj, &w, &h);
+   evas_object_move(resize_right_gm_obj, 0, 0);
+   evas_object_resize(resize_right_gm_obj, w, h);
+   evas_object_show(resize_right_gm_obj);
+
+   snprintf(buf, sizeof(buf), "(%i,%i)", gmc->w, gmc->h);
+   edje_object_part_text_set(resize_right_gm_obj, "text", buf);
+
+   ecore_evas_move(resize_right_gm_ee, (gmc->zone->w - w) / 2, (gmc->zone->h - 
h) / 2);
+   ecore_evas_resize(resize_right_gm_ee, w, h);
+
+   ecore_evas_show(resize_right_gm_ee);
 }
 
 static void
@@ -1329,13 +1479,22 @@
    gmc = data;
    gmc->resizing_r = 0;
    e_gadman_client_save(gmc);
+
+   evas_object_del(resize_right_gm_obj);
+   if (resize_right_gm_ee)
+      {
+        e_canvas_del(resize_right_gm_ee);
+        ecore_evas_hide(resize_right_gm_ee);
+        resize_right_gm_ee = NULL;
+      }
 }
 
 static void
 _e_gadman_cb_signal_resize_right_go(void *data, Evas_Object *obj, const char 
*emission, const char *source)
 {
    E_Gadman_Client *gmc;
-   Evas_Coord x, y;
+   Evas_Coord       x, y;
+   char             buf[40];
    
    gmc = data;
    if (!gmc->resizing_r) return;
@@ -1380,18 +1539,57 @@
    _e_gadman_client_geometry_to_align(gmc);
    _e_gadman_client_geometry_apply(gmc);
    _e_gadman_client_callback_call(gmc, E_GADMAN_CHANGE_MOVE_RESIZE);
+
+   snprintf(buf, sizeof(buf) - 1, "(%i,%i)", gmc->w, gmc->h);
+   edje_object_part_text_set(resize_right_gm_obj, "text", buf);
 }
 
 static void
 _e_gadman_cb_signal_resize_up_start(void *data, Evas_Object *obj, const char 
*emission, const char *source)
 {
    E_Gadman_Client *gmc;
+   Evas_Coord       w, h;
+   char             buf[40];
    
    gmc = data;
    if (_e_gadman_client_is_being_modified(gmc)) return;
    _e_gadman_client_down_store(gmc);
    gmc->use_autoh = 0;
    gmc->resizing_u = 1;
+
+   if (resize_up_gm_ee)
+      {
+        e_canvas_del (resize_up_gm_ee);
+        ecore_evas_free(resize_up_gm_ee);
+      }
+   resize_up_gm_ee = ecore_evas_software_x11_new(NULL,
+                                           gmc->zone->container->manager->win,
+                                           0, 0, 10, 10);
+   ecore_evas_override_set(resize_up_gm_ee, 1);
+   ecore_evas_software_x11_direct_resize_set(resize_up_gm_ee, 1);
+   e_canvas_add(resize_up_gm_ee);
+   ecore_evas_borderless_set(resize_up_gm_ee, 1);
+   ecore_evas_layer_set(resize_up_gm_ee, 999);
+   ecore_evas_show(resize_up_gm_ee);
+
+   resize_up_gm_obj = edje_object_add(ecore_evas_get(resize_up_gm_ee));
+   edje_object_file_set(resize_up_gm_obj, e_path_find(path_themes, 
"default.edj"),
+                       "widgets/border/default/resize");
+   snprintf(buf, sizeof(buf), "9999 9999");
+   edje_object_part_text_set(resize_up_gm_obj, "text", buf);
+
+   edje_object_size_min_calc(resize_up_gm_obj, &w, &h);
+   evas_object_move(resize_up_gm_obj, 0, 0);
+   evas_object_resize(resize_up_gm_obj, w, h);
+   evas_object_show(resize_up_gm_obj);
+
+   snprintf(buf, sizeof(buf), "(%i,%i)", gmc->w, gmc->h);
+   edje_object_part_text_set(resize_up_gm_obj, "text", buf);
+
+   ecore_evas_move(resize_up_gm_ee, (gmc->zone->w - w) / 2, (gmc->zone->h - h) 
/ 2);
+   ecore_evas_resize(resize_up_gm_ee, w, h);
+
+   ecore_evas_show(resize_up_gm_ee);
 }
 
 static void
@@ -1402,13 +1600,22 @@
    gmc = data;
    gmc->resizing_u = 0;
    e_gadman_client_save(gmc);
+
+   evas_object_del(resize_up_gm_obj);
+   if (resize_up_gm_ee)
+      {
+        e_canvas_del (resize_up_gm_ee);
+        ecore_evas_hide(resize_up_gm_ee);
+        resize_up_gm_ee = NULL;
+      }
 }
 
 static void
 _e_gadman_cb_signal_resize_up_go(void *data, Evas_Object *obj, const char 
*emission, const char *source)
 {
    E_Gadman_Client *gmc;
-   Evas_Coord x, y;
+   Evas_Coord       x, y;
+   char             buf[40];
    
    gmc = data;
    if (!gmc->resizing_u) return;
@@ -1457,18 +1664,57 @@
    _e_gadman_client_geometry_to_align(gmc);
    _e_gadman_client_geometry_apply(gmc);
    _e_gadman_client_callback_call(gmc, E_GADMAN_CHANGE_MOVE_RESIZE);
+
+   snprintf(buf, sizeof(buf) - 1, "(%i,%i)", gmc->w, gmc->h);
+   edje_object_part_text_set(resize_up_gm_obj, "text", buf);
 }
 
 static void
 _e_gadman_cb_signal_resize_down_start(void *data, Evas_Object *obj, const char 
*emission, const char *source)
 {
    E_Gadman_Client *gmc;
+   Evas_Coord       w, h;
+   char             buf[40];
    
    gmc = data;
    if (_e_gadman_client_is_being_modified(gmc)) return;
    _e_gadman_client_down_store(gmc);
    gmc->use_autoh = 0;
    gmc->resizing_d = 1;
+
+   if (resize_down_gm_ee)
+      {
+         e_canvas_del(resize_down_gm_ee);
+        ecore_evas_free(resize_down_gm_ee);
+      }
+   resize_down_gm_ee = ecore_evas_software_x11_new(NULL,
+                                           gmc->zone->container->manager->win,
+                                           0, 0, 10, 10);
+   ecore_evas_override_set(resize_down_gm_ee, 1);
+   ecore_evas_software_x11_direct_resize_set(resize_down_gm_ee, 1);
+   e_canvas_add(resize_down_gm_ee);
+   ecore_evas_borderless_set(resize_down_gm_ee, 1);
+   ecore_evas_layer_set(resize_down_gm_ee, 999);
+   ecore_evas_show(resize_down_gm_ee);
+
+   resize_down_gm_obj = edje_object_add(ecore_evas_get(resize_down_gm_ee));
+   edje_object_file_set(resize_down_gm_obj, e_path_find(path_themes, 
"default.edj"),
+                       "widgets/border/default/resize");
+   snprintf(buf, sizeof(buf), "9999 9999");
+   edje_object_part_text_set(resize_down_gm_obj, "text", buf);
+
+   edje_object_size_min_calc(resize_down_gm_obj, &w, &h);
+   evas_object_move(resize_down_gm_obj, 0, 0);
+   evas_object_resize(resize_down_gm_obj, w, h);
+   evas_object_show(resize_down_gm_obj);
+
+   snprintf(buf, sizeof(buf), "(%i,%i)", gmc->w, gmc->h);
+   edje_object_part_text_set(resize_down_gm_obj, "text", buf);
+
+   ecore_evas_move(resize_down_gm_ee, (gmc->zone->w - w) / 2, (gmc->zone->h - 
h) / 2);
+   ecore_evas_resize(resize_down_gm_ee, w, h);
+
+   ecore_evas_show(resize_down_gm_ee);
 }
 
 static void
@@ -1479,13 +1725,22 @@
    gmc = data;
    gmc->resizing_d = 0;
    e_gadman_client_save(gmc);
+
+   evas_object_del(resize_down_gm_obj);
+   if (resize_down_gm_ee)
+      {
+         e_canvas_del(resize_down_gm_ee);
+        ecore_evas_hide(resize_down_gm_ee);
+        resize_down_gm_ee = NULL;
+      }
 }
 
 static void
 _e_gadman_cb_signal_resize_down_go(void *data, Evas_Object *obj, const char 
*emission, const char *source)
 {
    E_Gadman_Client *gmc;
-   Evas_Coord x, y;
+   Evas_Coord       x, y;
+   char             buf[40];
    
    gmc = data;
    if (!gmc->resizing_d) return;
@@ -1530,6 +1785,9 @@
    _e_gadman_client_geometry_to_align(gmc);
    _e_gadman_client_geometry_apply(gmc);
    _e_gadman_client_callback_call(gmc, E_GADMAN_CHANGE_MOVE_RESIZE);
+
+   snprintf(buf, sizeof(buf) - 1, "(%i,%i)", gmc->w, gmc->h);
+   edje_object_part_text_set(resize_down_gm_obj, "text", buf);
 }
 
 static void




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