Re: [E-devel] patch for embryo functions

2008-05-18 Thread The Rasterman
On Tue, 13 May 2008 19:19:44 -0300 Rafael Antognolli
[EMAIL PROTECTED] babbled:

in cvs :) thanks!

 Hi, I was creating a theme with edje and missed some functions to
 resize a dragable part with embryo inside the .edc
 
 Looking at the code of edje I verified that these functions were
 already implemented, so all that would be needed to do was to create a
 binding for embryo that pointed to these functions.
 
 I made a patch that create these bindings, and called these functions
 set_drag_size and get_drag_size. It works fine for me.
 
 []'s
 
 Rafael Antognolli
 


-- 
- Codito, ergo sum - I code, therefore I am --
The Rasterman (Carsten Haitzler)[EMAIL PROTECTED]


-
This SF.net email is sponsored by: Microsoft 
Defy all challenges. Microsoft(R) Visual Studio 2008. 
http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[E-devel] patch for embryo functions

2008-05-13 Thread Rafael Antognolli
Hi, I was creating a theme with edje and missed some functions to
resize a dragable part with embryo inside the .edc

Looking at the code of edje I verified that these functions were
already implemented, so all that would be needed to do was to create a
binding for embryo that pointed to these functions.

I made a patch that create these bindings, and called these functions
set_drag_size and get_drag_size. It works fine for me.

[]'s

Rafael Antognolli
Index: data/include/edje.inc
===
RCS file: /var/cvs/e17/libs/edje/data/include/edje.inc,v
retrieving revision 1.24
diff -u -r1.24 edje.inc
--- data/include/edje.inc   11 Apr 2008 23:36:35 -  1.24
+++ data/include/edje.inc   13 May 2008 21:59:26 -
@@ -90,6 +90,8 @@
 native   get_drag_dir (part_id);
 native   get_drag (part_id, Float:dx, Float:dy);
 native   set_drag (part_id, Float:dx, Float:dy);
+native   get_drag_size(part_id, Float:dx, Float:dy);
+native   set_drag_size(part_id, Float:dx, Float:dy);
 native   get_drag_step(part_id, Float:dx, Float:dy);
 native   set_drag_step(part_id, Float:dx, Float:dy);
 native   get_drag_page(part_id, Float:dx, Float:dy);
Index: src/lib/edje_embryo.c
===
RCS file: /var/cvs/e17/libs/edje/src/lib/edje_embryo.c,v
retrieving revision 1.60
diff -u -r1.60 edje_embryo.c
--- src/lib/edje_embryo.c   11 Apr 2008 23:36:35 -  1.60
+++ src/lib/edje_embryo.c   13 May 2008 21:59:26 -
@@ -80,6 +80,8 @@
  * Direction:get_drag_dir(part_id)
  * get_drag(part_id, Float:dx, Float:dy)
  * set_drag(part_id, Float:dx, Float:dy)
+ * get_drag_size(part_id, Float:dx, Float:dy)
+ * set_drag_size(part_id, Float:dx, Float:dy)
  * set_text(part_id, str[])
  * get_text(part_id, dst[], maxlen)
  * get_min_size(w, h)
@@ -998,6 +1000,46 @@
return(0);
 }
 
+/* get_drag_size(part_id, Float:dx, Float:dy) */
+static Embryo_Cell
+_edje_embryo_fn_get_drag_size(Embryo_Program *ep, Embryo_Cell *params)
+{
+   Edje *ed;
+   int part_id = 0;
+   Edje_Real_Part *rp;
+   double dx = 0.0, dy = 0.0;
+
+   CHKPARAM(3);
+   ed = embryo_program_data_get(ep);
+   part_id = params[1];
+   if (part_id  0) return 0;
+   rp = ed-table_parts[part_id % ed-table_parts_size];
+   edje_object_part_drag_size_get(ed-obj, rp-part-name, dx, dy);
+   SETFLOAT(dx, params[2]);
+   SETFLOAT(dy, params[3]);
+
+   return 0;
+}
+
+/* set_drag_size(part_id, Float:dx, Float:dy) */
+static Embryo_Cell
+_edje_embryo_fn_set_drag_size(Embryo_Program *ep, Embryo_Cell *params)
+{
+   Edje *ed;
+   int part_id = 0;
+   Edje_Real_Part *rp;
+
+   CHKPARAM(3);
+   ed = embryo_program_data_get(ep);
+   part_id = params[1];
+   if (part_id  0) return 0;
+   rp = ed-table_parts[part_id % ed-table_parts_size];
+   edje_object_part_drag_size_set(ed-obj, rp-part-name,
+  (double)EMBRYO_CELL_TO_FLOAT(params[2]),
+  (double)EMBRYO_CELL_TO_FLOAT(params[3]));
+   return(0);
+}
+
 /* set_text(part_id, str[]) */
 static Embryo_Cell
 _edje_embryo_fn_set_text(Embryo_Program *ep, Embryo_Cell *params)
@@ -2216,6 +2258,8 @@
embryo_program_native_call_add(ep, get_drag_dir, 
_edje_embryo_fn_get_drag_dir);
embryo_program_native_call_add(ep, get_drag, _edje_embryo_fn_get_drag);
embryo_program_native_call_add(ep, set_drag, _edje_embryo_fn_set_drag);
+   embryo_program_native_call_add(ep, get_drag_size, 
_edje_embryo_fn_get_drag_size);
+   embryo_program_native_call_add(ep, set_drag_size, 
_edje_embryo_fn_set_drag_size);
embryo_program_native_call_add(ep, set_text, _edje_embryo_fn_set_text);
embryo_program_native_call_add(ep, get_text, _edje_embryo_fn_get_text);
embryo_program_native_call_add(ep, get_min_size, 
_edje_embryo_fn_get_min_size);
-
This SF.net email is sponsored by: Microsoft 
Defy all challenges. Microsoft(R) Visual Studio 2008. 
http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel