Re: [E-devel] E SVN: hermet IN trunk/evas/src/lib: . canvas include
Hi Guys, On Thu, Nov 01, 2012 at 09:37:18AM +0900, ChunEon Park wrote: Ok i will see this. Thank you for reporting. -Regards, Hermet- -Original Message- From: Bruno Dillylt;bdi...@profusion.mobigt; To: Enlightenment developer listlt;enlightenment-devel@lists.sourceforge.netgt;; Cc: Sent: 2012-11-01 (목) 06:29:06 Subject: Re: [E-devel] E SVN: hermet IN trunk/evas/src/lib: . canvas include On Mon, Oct 29, 2012 at 11:28 PM, ChunEon Park lt;hermetgt;@naver.comgt; wrote: gt; evas_object_image_source_event_set(proxy, EINA_TRUE); gt; this one? gt; gt; gt; I can say Evas Events can be passed to the source definitely now. gt; gt; (if not, then it's bug. should be fixed.) gt; gt; gt; But some smart events (i.e. in elementary widgets) may not be happened by this mechanism because of the focus or whatever event hold or grab problem. gt; gt; gt; gt; What object type of the source is? Elm image. gt; gt; gt; gt; Could u give me test case for it? OK, the initial issue was that my proxies were smaller (obj size) then source / map. So it was receiving events only on part of the map. It was fixed setting the same size for proxies and source. But when I was looking for this issue, I found the following line on _image_source_visible_set evas_object_image.c:633 //FIXME: Feed mouse events here. So I decided to send this email. OK, that was solved, but when I'm trying to grab an object it receives a wrong value on Evas_Event_Mouse_Move, received on the move callback of the source object. I'm not sure if it's an issue with proxy -gt; source events conversion, or it's an issue on map conversion, or even a misuse on ephysics, since I wasn't able to reproduce it on a smaller example. The ephysics test displaying such error has about 450 proxy objects. I`ve managed to reproduce the proble. I`m attaching an example program to explore the problem. To test it click on over the evas object and grab it out - keep grabbing to better notice the coord inconsistence. There`re two big issues here, the first is about evas map, if you grab off of the evas object Evas will not handle the event coord properly, what happens is that the point is not inside the map but we keep assuming that. The problem is not specifically related to source object events, the same will happen if handling an evas object mouse move event or a proxy - source one. The second issue is about the _evas_event_source_mouse_move_events function, there the canvas and output event attribute values are considered to be the same, so the user will receive the same values both on canvas and output. I`m not sure if the same happens for other cases/events, I don't even know the proper meaning of each(but I think canvas and output mean different things in this context). I`m attaching a patch which cares about both the 2 cases I`ve mentioned, I would love your review and a better test since I`ve not tested all the possible use cases/scenarios so I can not be sure if I`m breaking something else. PS: Let me know if I`ve misunderstood the problem here or have fixed the wrong bug. :-) Regards -- Leandro Dorileo ProFUSION embedded systems http://profusion.mobi #include Ecore.h #include Ecore_Evas.h #define WIDTH 500 #define HEIGHT 500 static void _on_delete(Ecore_Evas *ee) { ecore_main_loop_quit(); } static void _mouse_move_cb(void *data, Evas *evas, Evas_Object *obj, void *event_info) { Evas_Event_Mouse_Move *mmove = event_info; printf(canvas: (%d, %d) - , mmove-cur.canvas.x, mmove-cur.canvas.y); printf(output: (%d, %d)\n, mmove-cur.output.x, mmove-cur.output.y); } int main(int argc, const char *argv[]) { Ecore_Evas *ee; Evas *evas; Evas_Object *bg, *rect, *proxy; Evas_Map *map; Evas_Coord x, y, w, h; if (!ecore_evas_init()) return EXIT_FAILURE; ee = ecore_evas_new(NULL, 0, 0, WIDTH, HEIGHT, NULL); if (!ee) goto no_ee; ecore_evas_title_set(ee, Test); ecore_evas_callback_delete_request_set(ee, _on_delete); ecore_evas_show(ee); evas = ecore_evas_get(ee); bg = evas_object_rectangle_add(evas); evas_object_resize(bg, WIDTH, HEIGHT); evas_object_move(bg, 0, 0); evas_object_color_set(bg, 255, 255, 255, 255); evas_object_show(bg); evas_object_focus_set(bg, EINA_TRUE); rect = evas_object_rectangle_add(evas); evas_object_color_set(rect, 0, 0, 0, 122); evas_object_resize(rect, 70, 70); evas_object_move(rect, 0, 0); evas_object_show(rect); evas_object_event_callback_add(rect, EVAS_CALLBACK_MOUSE_MOVE, _mouse_move_cb, NULL); proxy = evas_object_image_filled_add(evas); evas_object_image_source_set(proxy, rect); evas_object_resize(proxy, 70, 70); evas_object_move(proxy, WIDTH - 70, 0); evas_object_show(proxy); evas_object_image_source_visible_set(proxy, EINA_FALSE); evas_object_image_source_events_set(proxy, EINA_TRUE
Re: [E-devel] E SVN: hermet IN trunk/evas/src/lib: . canvas include
On Mon, Oct 29, 2012 at 11:28 PM, ChunEon Park her...@naver.com wrote: evas_object_image_source_event_set(proxy, EINA_TRUE); this one? I can say Evas Events can be passed to the source definitely now. (if not, then it's bug. should be fixed.) But some smart events (i.e. in elementary widgets) may not be happened by this mechanism because of the focus or whatever event hold or grab problem. What object type of the source is? Elm image. Could u give me test case for it? OK, the initial issue was that my proxies were smaller (obj size) then source / map. So it was receiving events only on part of the map. It was fixed setting the same size for proxies and source. But when I was looking for this issue, I found the following line on _image_source_visible_set evas_object_image.c:633 //FIXME: Feed mouse events here. So I decided to send this email. OK, that was solved, but when I'm trying to grab an object it receives a wrong value on Evas_Event_Mouse_Move, received on the move callback of the source object. I'm not sure if it's an issue with proxy - source events conversion, or it's an issue on map conversion, or even a misuse on ephysics, since I wasn't able to reproduce it on a smaller example. The ephysics test displaying such error has about 450 proxy objects. I've upstreamed the code, so if you run $ephysics_test -to Flag - Cloth you will see, moving the mouse over it will print canvas.x, canvas.y, output.x, output.y They look fine while you're just moving, but if you try to grab one of them, values will be something like -687194607, -2147483505 ... this test code is on src/bin/test_flag.c slicing code (where it creates and manipulates proxies) is on _ephysics_body_soft_body_slices_init and _ephysics_body_soft_body_slices_apply I would be really glad if you have some time to take a look on this. Thanks I need to check it to fix. -Regards, Hermet- -Original Message- From: Bruno Dillylt;bdi...@profusion.mobigt; To: Enlightenment developer listlt;enlightenment-devel@lists.sourceforge.netgt;; Cc: Sent: 2012-10-30 (화) 01:58:43 Subject: Re: [E-devel] E SVN: hermet IN trunk/evas/src/lib: . canvas include On Tue, Oct 23, 2012 at 2:42 PM, Bruno Dilly lt;bdillygt;@profusion.mobigt; wrote: gt; On Tue, Oct 23, 2012 at 12:35 PM, ChunEon Park lt;hermetgt;@naver.comgt; wrote: gt;gt; gt;gt; Sorry. totally I mistook for your reply. gt;gt; gt;gt; Here is the actually example for this API. gt;gt; gt;gt; gt;gt; gt;gt; ex) gt;gt; gt;gt; Evas_Object *btn; gt;gt; gt;gt; Evas_Object *img; gt;gt; gt;gt; gt;gt; gt;gt; ... gt;gt; gt;gt; gt;gt; gt;gt; evas_object_show(btn); gt;gt; gt;gt; evas_object_show(img); gt;gt; gt;gt; gt;gt; gt;gt; evas_object_image_source_set(img, btn); gt;gt; gt;gt; evas_object_image_source_visible_set(img, EINA_FALSE); gt; gt; Right, right. gt; It should be set on proxy. gt; I misunderstood your commit. gt; gt;gt; gt;gt; gt;gt; gt;gt; //here is a more API added. gt;gt; gt;gt; evas_object_image_source_event_set(img, EINA_TRUE); //this img will pass it's events to btn. gt; gt; Great addition, btw. gt; I believe it will be useful as well. Hi again, Hermet, I've tried to use it on ephysics, but it's missing mouse events handling. Are you planning to make it work ? Do you have an expected date to commit it ? Regards gt; gt; =) gt; gt;gt; gt;gt; gt;gt; gt;gt; Only the final state will be available for source visiblity, gt;gt; gt;gt; If the multiple proxies are racing to set their shared source visibility. gt;gt; gt;gt; gt;gt; gt;gt; And doc and example needs to be updated. gt;gt; gt;gt; gt;gt; gt;gt; Thank you. gt;gt; gt;gt; gt;gt; gt;gt; -Regards, Hermet- gt;gt; gt;gt; gt;gt; -Original Message- gt;gt; From: Rafael Antognollilt;antogno...@gmail.comgt; gt;gt; To: Enlightenment developer listlt;enlightenment-devel@lists.sourceforge.netgt;; gt;gt; Cc: gt;gt; Sent: 2012-10-23 (화) 20:04:15 gt;gt; Subject: Re: [E-devel] E SVN: hermet IN trunk/evas/src/lib: . canvas include gt;gt; gt;gt; Hello Hermet, gt;gt; gt;gt; The feature seems nice, good work! gt;gt; gt;gt; But I am still not sure how to control the source object from gt;gt; different proxies. Will there be any conflict if different proxies set gt;gt; the source to different visible states? Is that expected or, if it's gt;gt; wrong to do it, maybe this should be added to the docs? gt;gt; gt;gt; On Mon, Oct 22, 2012 at 11:42 PM, ChunEon Park lt;hermetgt;@naver.comgt; wrote: gt;gt; gt; ahh mistake. gt;gt; gt; gt;gt; gt; gt;gt; gt; do FALSE. gt;gt; gt; gt;gt; gt; evas_object_image_source_visible_set(source, EINA_FALSE); gt;gt; gt; gt;gt; gt; gt;gt; gt; gt;gt; gt; gt;gt; gt; -Regards, Hermet- gt;gt; gt; gt;gt; gt; -Original Message- gt;gt; gt; From: ChunEon
Re: [E-devel] E SVN: hermet IN trunk/evas/src/lib: . canvas include
Ok i will see this. Thank you for reporting. -Regards, Hermet- -Original Message- From: Bruno Dillylt;bdi...@profusion.mobigt; To: Enlightenment developer listlt;enlightenment-devel@lists.sourceforge.netgt;; Cc: Sent: 2012-11-01 (목) 06:29:06 Subject: Re: [E-devel] E SVN: hermet IN trunk/evas/src/lib: . canvas include On Mon, Oct 29, 2012 at 11:28 PM, ChunEon Park lt;hermetgt;@naver.comgt; wrote: gt; evas_object_image_source_event_set(proxy, EINA_TRUE); gt; this one? gt; gt; gt; I can say Evas Events can be passed to the source definitely now. gt; gt; (if not, then it's bug. should be fixed.) gt; gt; gt; But some smart events (i.e. in elementary widgets) may not be happened by this mechanism because of the focus or whatever event hold or grab problem. gt; gt; gt; gt; What object type of the source is? Elm image. gt; gt; gt; gt; Could u give me test case for it? OK, the initial issue was that my proxies were smaller (obj size) then source / map. So it was receiving events only on part of the map. It was fixed setting the same size for proxies and source. But when I was looking for this issue, I found the following line on _image_source_visible_set evas_object_image.c:633 //FIXME: Feed mouse events here. So I decided to send this email. OK, that was solved, but when I'm trying to grab an object it receives a wrong value on Evas_Event_Mouse_Move, received on the move callback of the source object. I'm not sure if it's an issue with proxy -gt; source events conversion, or it's an issue on map conversion, or even a misuse on ephysics, since I wasn't able to reproduce it on a smaller example. The ephysics test displaying such error has about 450 proxy objects. I've upstreamed the code, so if you run $ephysics_test -to Flag - Cloth you will see, moving the mouse over it will print canvas.x, canvas.y, output.x, output.y They look fine while you're just moving, but if you try to grab one of them, values will be something like -687194607, -2147483505 ... this test code is on src/bin/test_flag.c slicing code (where it creates and manipulates proxies) is on _ephysics_body_soft_body_slices_init and _ephysics_body_soft_body_slices_apply I would be really glad if you have some time to take a look on this. Thanks gt; gt; gt; gt; I need to check it to fix. gt; gt; gt; gt; gt; gt; -Regards, Hermet- gt; gt; -Original Message- gt; From: Bruno Dillylt;bdi...@profusion.mobigt; gt; To: Enlightenment developer listlt;enlightenment-devel@lists.sourceforge.netgt;; gt; Cc: gt; Sent: 2012-10-30 (화) 01:58:43 gt; Subject: Re: [E-devel] E SVN: hermet IN trunk/evas/src/lib: . canvas include gt; gt; On Tue, Oct 23, 2012 at 2:42 PM, Bruno Dilly lt;bdillygt;@profusion.mobigt; wrote: gt; gt; On Tue, Oct 23, 2012 at 12:35 PM, ChunEon Park lt;hermetgt;@naver.comgt; wrote: gt; gt;gt; gt; gt;gt; Sorry. totally I mistook for your reply. gt; gt;gt; gt; gt;gt; Here is the actually example for this API. gt; gt;gt; gt; gt;gt; gt; gt;gt; gt; gt;gt; ex) gt; gt;gt; gt; gt;gt; Evas_Object *btn; gt; gt;gt; gt; gt;gt; Evas_Object *img; gt; gt;gt; gt; gt;gt; gt; gt;gt; gt; gt;gt; ... gt; gt;gt; gt; gt;gt; gt; gt;gt; gt; gt;gt; evas_object_show(btn); gt; gt;gt; gt; gt;gt; evas_object_show(img); gt; gt;gt; gt; gt;gt; gt; gt;gt; gt; gt;gt; evas_object_image_source_set(img, btn); gt; gt;gt; gt; gt;gt; evas_object_image_source_visible_set(img, EINA_FALSE); gt; gt; gt; gt; Right, right. gt; gt; It should be set on proxy. gt; gt; I misunderstood your commit. gt; gt; gt; gt;gt; gt; gt;gt; gt; gt;gt; gt; gt;gt; //here is a more API added. gt; gt;gt; gt; gt;gt; evas_object_image_source_event_set(img, EINA_TRUE); //this img will pass it's events to btn. gt; gt; gt; gt; Great addition, btw. gt; gt; I believe it will be useful as well. gt; gt; Hi again, Hermet, gt; gt; I've tried to use it on ephysics, but it's missing mouse events handling. gt; Are you planning to make it work ? Do you have an expected date to commit it ? gt; gt; Regards gt; gt; gt; gt; gt; =) gt; gt; gt; gt;gt; gt; gt;gt; gt; gt;gt; gt; gt;gt; Only the final state will be available for source visiblity, gt; gt;gt; gt; gt;gt; If the multiple proxies are racing to set their shared source visibility. gt; gt;gt; gt; gt;gt; gt; gt;gt; gt; gt;gt; And doc and example needs to be updated. gt; gt;gt; gt; gt;gt; gt; gt;gt; gt; gt;gt; Thank you. gt; gt;gt; gt; gt;gt; gt; gt;gt; gt; gt;gt; -Regards, Hermet- gt; gt;gt; gt; gt;gt; gt; gt;gt; -Original Message- gt; gt;gt; From: Rafael Antognollilt;antogno...@gmail.comgt; gt; gt;gt; To: Enlightenment developer listlt;enlightenment-devel@lists.sourceforge.netgt;; gt; gt;gt; Cc: gt; gt;gt; Sent: 2012-10-23 (화) 20:04:15 gt; gt;gt; Subject: Re: [E-devel] E SVN: hermet IN trunk/evas/src/lib: . canvas include gt; gt;gt; gt; gt;gt; Hello Hermet, gt; gt;gt; gt; gt;gt; The feature seems nice, good work
Re: [E-devel] E SVN: hermet IN trunk/evas/src/lib: . canvas include
On Tue, Oct 23, 2012 at 2:42 PM, Bruno Dilly bdi...@profusion.mobi wrote: On Tue, Oct 23, 2012 at 12:35 PM, ChunEon Park her...@naver.com wrote: Sorry. totally I mistook for your reply. Here is the actually example for this API. ex) Evas_Object *btn; Evas_Object *img; ... evas_object_show(btn); evas_object_show(img); evas_object_image_source_set(img, btn); evas_object_image_source_visible_set(img, EINA_FALSE); Right, right. It should be set on proxy. I misunderstood your commit. //here is a more API added. evas_object_image_source_event_set(img, EINA_TRUE); //this img will pass it's events to btn. Great addition, btw. I believe it will be useful as well. Hi again, Hermet, I've tried to use it on ephysics, but it's missing mouse events handling. Are you planning to make it work ? Do you have an expected date to commit it ? Regards =) Only the final state will be available for source visiblity, If the multiple proxies are racing to set their shared source visibility. And doc and example needs to be updated. Thank you. -Regards, Hermet- -Original Message- From: Rafael Antognollilt;antogno...@gmail.comgt; To: Enlightenment developer listlt;enlightenment-devel@lists.sourceforge.netgt;; Cc: Sent: 2012-10-23 (화) 20:04:15 Subject: Re: [E-devel] E SVN: hermet IN trunk/evas/src/lib: . canvas include Hello Hermet, The feature seems nice, good work! But I am still not sure how to control the source object from different proxies. Will there be any conflict if different proxies set the source to different visible states? Is that expected or, if it's wrong to do it, maybe this should be added to the docs? On Mon, Oct 22, 2012 at 11:42 PM, ChunEon Park lt;hermetgt;@naver.comgt; wrote: gt; ahh mistake. gt; gt; gt; do FALSE. gt; gt; evas_object_image_source_visible_set(source, EINA_FALSE); gt; gt; gt; gt; gt; -Regards, Hermet- gt; gt; -Original Message- gt; From: ChunEon Parklt;her...@naver.comgt; gt; To: Enlightenment developer listlt;enlightenment-devel@lists.sourceforge.netgt;; gt; Cc: gt; Sent: 2012-10-23 (화) 10:16:15 gt; Subject: Re: [E-devel]E SVN: hermet IN trunk/evas/src/lib: . canvas include gt; gt; Hi, gt; I don't know about aborting. it doesn't happened here. gt; please rebuild evas fully again or give me the scenario . gt; gt; gt; And to show only proxy, gt; Don't hide source. gt; just call evas_object_image_source_visible_set(source, EINA_TRUE); gt; gt; gt; gt; ex) gt; gt; evas_object_image_source_visible_set(source, EINA_TRUE); gt; evas_object_show(proxy); gt; gt; gt; gt; gt; gt; -Regards, Hermet- gt; gt; -Original Message- gt; From: Bruno Dillylt;bdi...@profusion.mobigt; gt; To: lt;enlightenment-devel@lists.sourceforge.netgt;; gt; Cc: gt; Sent: 2012-10-23 (화) 01:47:22 gt; Subject: Re: [E-devel] E SVN: hermet IN trunk/evas/src/lib: . canvas include gt; gt; On Thu, Oct 18, 2012 at 8:30 AM, Enlightenment SVN gt; lt;no-replygt;@enlightenment.orggt; wrote: gt; gt; Log: gt; gt; evas/proxy - +source visible set APIs gt; gt; gt; gt; Need to care some more cases. will be upstreamed additionally. gt; gt; gt; gt; gt; gt; gt; gt; Author: hermet gt; gt; Date: 2012-10-18 04:30:04 -0700 (Thu, 18 Oct 2012) gt; gt; New Revision: 78180 gt; gt; Trac: http://trac.enlightenment.org/e/changeset/78180 gt; gt; gt; gt; Hey, Hermet gt; gt; it looks interesting. I'm trying it on ephysics, but I got the following error: gt; gt; ERRlt;12565gt;:eo eo.c:405 _eo_dov_internal() Can't find func for op 1b6 gt; (Evas_Object_Image:EVAS_OBJ_IMAGE_SUB_ID_SOURCE_VISIBLE_SET) for class gt; 'Evas_Object_Smart'. Aborting. gt; gt; I'm trying to keep the source invisible and proxy visible doing: gt; evas_object_image_source_visible_set(source, EINA_TRUE); gt; evas_object_hide(source); gt; evas_object_show(proxy); gt; gt; And everything is hidden. gt; gt; The source is a smart object, an elm_image. gt; gt; -- gt; Bruno Dilly gt; Senior Developer gt; ProFUSION embedded systems gt; http://profusion.mobi gt; gt; -- gt; Everyone hates slow websites. So do we. gt; Make your web apps faster with AppDynamics gt; Download AppDynamics Lite for free today: gt; http://p.sf.net/sfu/appdyn_sfd2d_oct gt; ___ gt; enlightenment-devel mailing list gt; enlightenment-devel@lists.sourceforge.net gt; https://lists.sourceforge.net/lists/listinfo/enlightenment-devel gt; gt; gt; -- gt; Everyone hates slow websites. So do we. gt; Make your web apps faster with AppDynamics gt; Download AppDynamics Lite for free today: gt; http://p.sf.net/sfu
Re: [E-devel] E SVN: hermet IN trunk/evas/src/lib: . canvas include
evas_object_image_source_event_set(proxy, EINA_TRUE); this one? I can say Evas Events can be passed to the source definitely now. (if not, then it's bug. should be fixed.) But some smart events (i.e. in elementary widgets) may not be happened by this mechanism because of the focus or whatever event hold or grab problem. What object type of the source is? Could u give me test case for it? I need to check it to fix. -Regards, Hermet- -Original Message- From: Bruno Dillylt;bdi...@profusion.mobigt; To: Enlightenment developer listlt;enlightenment-devel@lists.sourceforge.netgt;; Cc: Sent: 2012-10-30 (화) 01:58:43 Subject: Re: [E-devel] E SVN: hermet IN trunk/evas/src/lib: . canvas include On Tue, Oct 23, 2012 at 2:42 PM, Bruno Dilly lt;bdillygt;@profusion.mobigt; wrote: gt; On Tue, Oct 23, 2012 at 12:35 PM, ChunEon Park lt;hermetgt;@naver.comgt; wrote: gt;gt; gt;gt; Sorry. totally I mistook for your reply. gt;gt; gt;gt; Here is the actually example for this API. gt;gt; gt;gt; gt;gt; gt;gt; ex) gt;gt; gt;gt; Evas_Object *btn; gt;gt; gt;gt; Evas_Object *img; gt;gt; gt;gt; gt;gt; gt;gt; ... gt;gt; gt;gt; gt;gt; gt;gt; evas_object_show(btn); gt;gt; gt;gt; evas_object_show(img); gt;gt; gt;gt; gt;gt; gt;gt; evas_object_image_source_set(img, btn); gt;gt; gt;gt; evas_object_image_source_visible_set(img, EINA_FALSE); gt; gt; Right, right. gt; It should be set on proxy. gt; I misunderstood your commit. gt; gt;gt; gt;gt; gt;gt; gt;gt; //here is a more API added. gt;gt; gt;gt; evas_object_image_source_event_set(img, EINA_TRUE); //this img will pass it's events to btn. gt; gt; Great addition, btw. gt; I believe it will be useful as well. Hi again, Hermet, I've tried to use it on ephysics, but it's missing mouse events handling. Are you planning to make it work ? Do you have an expected date to commit it ? Regards gt; gt; =) gt; gt;gt; gt;gt; gt;gt; gt;gt; Only the final state will be available for source visiblity, gt;gt; gt;gt; If the multiple proxies are racing to set their shared source visibility. gt;gt; gt;gt; gt;gt; gt;gt; And doc and example needs to be updated. gt;gt; gt;gt; gt;gt; gt;gt; Thank you. gt;gt; gt;gt; gt;gt; gt;gt; -Regards, Hermet- gt;gt; gt;gt; gt;gt; -Original Message- gt;gt; From: Rafael Antognollilt;antogno...@gmail.comgt; gt;gt; To: Enlightenment developer listlt;enlightenment-devel@lists.sourceforge.netgt;; gt;gt; Cc: gt;gt; Sent: 2012-10-23 (화) 20:04:15 gt;gt; Subject: Re: [E-devel] E SVN: hermet IN trunk/evas/src/lib: . canvas include gt;gt; gt;gt; Hello Hermet, gt;gt; gt;gt; The feature seems nice, good work! gt;gt; gt;gt; But I am still not sure how to control the source object from gt;gt; different proxies. Will there be any conflict if different proxies set gt;gt; the source to different visible states? Is that expected or, if it's gt;gt; wrong to do it, maybe this should be added to the docs? gt;gt; gt;gt; On Mon, Oct 22, 2012 at 11:42 PM, ChunEon Park lt;hermetgt;@naver.comgt; wrote: gt;gt; gt; ahh mistake. gt;gt; gt; gt;gt; gt; gt;gt; gt; do FALSE. gt;gt; gt; gt;gt; gt; evas_object_image_source_visible_set(source, EINA_FALSE); gt;gt; gt; gt;gt; gt; gt;gt; gt; gt;gt; gt; gt;gt; gt; -Regards, Hermet- gt;gt; gt; gt;gt; gt; -Original Message- gt;gt; gt; From: ChunEon Parklt;her...@naver.comgt; gt;gt; gt; To: Enlightenment developer listlt;enlightenment-devel@lists.sourceforge.netgt;; gt;gt; gt; Cc: gt;gt; gt; Sent: 2012-10-23 (화) 10:16:15 gt;gt; gt; Subject: Re: [E-devel]E SVN: hermet IN trunk/evas/src/lib: . canvas include gt;gt; gt; gt;gt; gt; Hi, gt;gt; gt; I don't know about aborting. it doesn't happened here. gt;gt; gt; please rebuild evas fully again or give me the scenario . gt;gt; gt; gt;gt; gt; gt;gt; gt; And to show only proxy, gt;gt; gt; Don't hide source. gt;gt; gt; just call evas_object_image_source_visible_set(source, EINA_TRUE); gt;gt; gt; gt;gt; gt; gt;gt; gt; gt;gt; gt; ex) gt;gt; gt; gt;gt; gt; evas_object_image_source_visible_set(source, EINA_TRUE); gt;gt; gt; evas_object_show(proxy); gt;gt; gt; gt;gt; gt; gt;gt; gt; gt;gt; gt; gt;gt; gt; gt;gt; gt; -Regards, Hermet- gt;gt; gt; gt;gt; gt; -Original Message- gt;gt; gt; From: Bruno Dillylt;bdi...@profusion.mobigt; gt;gt; gt; To: lt;enlightenment-devel@lists.sourceforge.netgt;; gt;gt; gt; Cc: gt;gt; gt; Sent: 2012-10-23 (화) 01:47:22 gt;gt; gt; Subject: Re: [E-devel] E SVN: hermet IN trunk/evas/src/lib: . canvas include gt;gt; gt; gt;gt; gt; On Thu, Oct 18, 2012 at 8:30 AM, Enlightenment SVN gt;gt; gt; lt;no-replygt;@enlightenment.orggt; wrote: gt;gt; gt; gt; Log: gt;gt; gt; gt; evas/proxy - +source visible set APIs gt;gt; gt; gt; gt;gt; gt; gt; Need to care some more cases. will be upstreamed additionally. gt;gt; gt; gt; gt;gt; gt; gt; gt;gt; gt; gt; gt;gt; gt; gt; Author: hermet gt;gt; gt; gt; Date
Re: [E-devel] E SVN: hermet IN trunk/evas/src/lib: . canvas include
Hermet, you have to revert ... you forgot the @since 1.8 for the Eo defines and Vincent will kill you ;-) On 10/23/2012 10:44 AM, Enlightenment SVN wrote: Log: evas/proxy - added 2 more apis. not enough yet. will fix them soon. evas_object_image_source_events_set/get Author: hermet Date: 2012-10-23 01:44:11 -0700 (Tue, 23 Oct 2012) New Revision: 78361 Trac: http://trac.enlightenment.org/e/changeset/78361 Modified: trunk/evas/src/lib/Evas.h trunk/evas/src/lib/canvas/evas_events.c trunk/evas/src/lib/canvas/evas_object_image.c trunk/evas/src/lib/include/evas_private.h Modified: trunk/evas/src/lib/Evas.h === --- trunk/evas/src/lib/Evas.h 2012-10-23 07:25:29 UTC (rev 78360) +++ trunk/evas/src/lib/Evas.h 2012-10-23 08:44:11 UTC (rev 78361) @@ -9160,6 +9160,44 @@ EAPI Eina_Bool evas_object_image_source_visible_get(const Evas_Object *obj) EINA_ARG_NONNULL(1); /** + * Set whether an Evas object is to source events. + * + * @param obj Proxy (image) object. + * @param source whether @p obj is to pass events (@c EINA_TRUE) or not + * (@c EINA_FALSE) + * + * Set whether an Evas object is to repeat events to source. + * + * If @p source is @c EINA_TRUE, it will make events on @p obj to also be + * repeated for the source object (see evas_object_image_source_set()). Even the + * @p obj and source geometries are different, the event position will be + * transformed to the source object's space. + * + * If @p source is @c EINA_FALSE, events occurring on @p obj will be + * processed only on it. + * + * @see evas_object_image_source_get() + * @see evas_object_image_source_visible_set() + * @see evas_object_source_events_set() + * @since 1.8 + */ +EAPI void evas_object_image_source_events_set(Evas_Object *obj, Eina_Bool source) EINA_ARG_NONNULL(1); + +/** + * Determine whether an object is set to source events. + * + * @param obj Proxy (image) object. + * @return source whether @p obj is set to source events (@c EINA_TRUE) or not + * (@c EINA_FALSE) + * + * @see evas_object_image_source_set() + * @see evas_object_image_source_visible_set() + * @see evas_object_source_events_set() + * @since 1.8 + */ +EAPI Eina_Bool evas_object_image_source_events_get(const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); + +/** * Check if a file extension may be supported by @ref Evas_Object_Image. * * @param file The file to check @@ -18047,6 +18085,8 @@ EVAS_OBJ_IMAGE_SUB_ID_ANIMATED_FRAME_SET, EVAS_OBJ_IMAGE_SUB_ID_SOURCE_VISIBLE_SET, EVAS_OBJ_IMAGE_SUB_ID_SOURCE_VISIBLE_GET, + EVAS_OBJ_IMAGE_SUB_ID_SOURCE_EVENTS_SET, + EVAS_OBJ_IMAGE_SUB_ID_SOURCE_EVENTS_GET, EVAS_OBJ_IMAGE_SUB_ID_LAST }; @@ -18151,6 +18191,28 @@ #define evas_obj_image_source_visible_get(visible) EVAS_OBJ_IMAGE_ID(EVAS_OBJ_IMAGE_SUB_ID_SOURCE_VISIBLE_GET), EO_TYPECHECK(Eina_Bool *, visible) /** + * @def evas_obj_image_source_events_set + * + * Set events to be repeated to the source object. + * + * @param[in] source in + * + * @see evas_object_image_source_events_get + */ +#define evas_obj_image_source_events_set(source) EVAS_OBJ_IMAGE_ID(EVAS_OBJ_IMAGE_SUB_ID_SOURCE_EVENTS_SET), EO_TYPECHECK(Eina_Bool, source) + +/** + * @def evas_obj_image_source_events_get + * + * Get the state of the source event. + * + * @param[out] source out + * + * @see evas_obj_image_source_event_set + */ +#define evas_obj_image_source_events_get(source) EVAS_OBJ_IMAGE_ID(EVAS_OBJ_IMAGE_SUB_ID_SOURCE_EVENTS_GET), EO_TYPECHECK(Eina_Bool *, source) + +/** * @def evas_obj_image_border_set * @since 1.8 * Modified: trunk/evas/src/lib/canvas/evas_events.c === --- trunk/evas/src/lib/canvas/evas_events.c 2012-10-23 07:25:29 UTC (rev 78360) +++ trunk/evas/src/lib/canvas/evas_events.c 2012-10-23 08:44:11 UTC (rev 78361) @@ -4,7 +4,7 @@ static Eina_List * _evas_event_object_list_in_get(Evas *eo_e, Eina_List *in, const Eina_Inlist *list, Evas_Object *stop, - int x, int y, int *no_rep); + int x, int y, int *no_rep, Eina_Bool source); static void _evas_event_havemap_adjust(Evas_Object *eo_obj EINA_UNUSED, Evas_Object_Protected_Data *obj, Evas_Coord *x, Evas_Coord *y, Eina_Bool mouse_grabbed) @@ -42,7 +42,7 @@ static Eina_List * _evas_event_object_list_raw_in_get(Evas *eo_e, Eina_List *in, const Eina_Inlist *list, Evas_Object *stop, - int x, int y, int *no_rep) + int x, int y, int *no_rep, Eina_Bool source) { Evas_Object *eo_obj; Evas_Object_Protected_Data *obj;
Re: [E-devel] E SVN: hermet IN trunk/evas/src/lib: . canvas include
Hello Hermet, The feature seems nice, good work! But I am still not sure how to control the source object from different proxies. Will there be any conflict if different proxies set the source to different visible states? Is that expected or, if it's wrong to do it, maybe this should be added to the docs? On Mon, Oct 22, 2012 at 11:42 PM, ChunEon Park her...@naver.com wrote: ahh mistake. do FALSE. evas_object_image_source_visible_set(source, EINA_FALSE); -Regards, Hermet- -Original Message- From: ChunEon Parklt;her...@naver.comgt; To: Enlightenment developer listlt;enlightenment-devel@lists.sourceforge.netgt;; Cc: Sent: 2012-10-23 (화) 10:16:15 Subject: Re: [E-devel]E SVN: hermet IN trunk/evas/src/lib: . canvas include Hi, I don't know about aborting. it doesn't happened here. please rebuild evas fully again or give me the scenario . And to show only proxy, Don't hide source. just call evas_object_image_source_visible_set(source, EINA_TRUE); ex) evas_object_image_source_visible_set(source, EINA_TRUE); evas_object_show(proxy); -Regards, Hermet- -Original Message- From: Bruno Dillylt;bdi...@profusion.mobigt; To: lt;enlightenment-devel@lists.sourceforge.netgt;; Cc: Sent: 2012-10-23 (화) 01:47:22 Subject: Re: [E-devel] E SVN: hermet IN trunk/evas/src/lib: . canvas include On Thu, Oct 18, 2012 at 8:30 AM, Enlightenment SVN lt;no-replygt;@enlightenment.orggt; wrote: gt; Log: gt; evas/proxy - +source visible set APIs gt; gt; Need to care some more cases. will be upstreamed additionally. gt; gt; gt; gt; Author: hermet gt; Date: 2012-10-18 04:30:04 -0700 (Thu, 18 Oct 2012) gt; New Revision: 78180 gt; Trac: http://trac.enlightenment.org/e/changeset/78180 gt; Hey, Hermet it looks interesting. I'm trying it on ephysics, but I got the following error: ERRlt;12565gt;:eo eo.c:405 _eo_dov_internal() Can't find func for op 1b6 (Evas_Object_Image:EVAS_OBJ_IMAGE_SUB_ID_SOURCE_VISIBLE_SET) for class 'Evas_Object_Smart'. Aborting. I'm trying to keep the source invisible and proxy visible doing: evas_object_image_source_visible_set(source, EINA_TRUE); evas_object_hide(source); evas_object_show(proxy); And everything is hidden. The source is a smart object, an elm_image. -- Bruno Dilly Senior Developer ProFUSION embedded systems http://profusion.mobi -- Everyone hates slow websites. So do we. Make your web apps faster with AppDynamics Download AppDynamics Lite for free today: http://p.sf.net/sfu/appdyn_sfd2d_oct ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel -- Everyone hates slow websites. So do we. Make your web apps faster with AppDynamics Download AppDynamics Lite for free today: http://p.sf.net/sfu/appdyn_sfd2d_oct ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel -- Everyone hates slow websites. So do we. Make your web apps faster with AppDynamics Download AppDynamics Lite for free today: http://p.sf.net/sfu/appdyn_sfd2d_oct ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel -- Rafael Antognolli http://antognolli.org/ -- Everyone hates slow websites. So do we. Make your web apps faster with AppDynamics Download AppDynamics Lite for free today: http://p.sf.net/sfu/appdyn_sfd2d_oct ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] E SVN: hermet IN trunk/evas/src/lib: . canvas include
Sorry. totally I mistook for your reply. Here is the actually example for this API. ex) Evas_Object *btn; Evas_Object *img; ... evas_object_show(btn); evas_object_show(img); evas_object_image_source_set(img, btn); evas_object_image_source_visible_set(img, EINA_FALSE); //here is a more API added. evas_object_image_source_event_set(img, EINA_TRUE); //this img will pass it's events to btn. Only the final state will be available for source visiblity, If the multiple proxies are racing to set their shared source visibility. And doc and example needs to be updated. Thank you. -Regards, Hermet- -Original Message- From: Rafael Antognollilt;antogno...@gmail.comgt; To: Enlightenment developer listlt;enlightenment-devel@lists.sourceforge.netgt;; Cc: Sent: 2012-10-23 (화) 20:04:15 Subject: Re: [E-devel] E SVN: hermet IN trunk/evas/src/lib: . canvas include Hello Hermet, The feature seems nice, good work! But I am still not sure how to control the source object from different proxies. Will there be any conflict if different proxies set the source to different visible states? Is that expected or, if it's wrong to do it, maybe this should be added to the docs? On Mon, Oct 22, 2012 at 11:42 PM, ChunEon Park lt;hermetgt;@naver.comgt; wrote: gt; ahh mistake. gt; gt; gt; do FALSE. gt; gt; evas_object_image_source_visible_set(source, EINA_FALSE); gt; gt; gt; gt; gt; -Regards, Hermet- gt; gt; -Original Message- gt; From: ChunEon Parklt;her...@naver.comgt; gt; To: Enlightenment developer listlt;enlightenment-devel@lists.sourceforge.netgt;; gt; Cc: gt; Sent: 2012-10-23 (화) 10:16:15 gt; Subject: Re: [E-devel]E SVN: hermet IN trunk/evas/src/lib: . canvas include gt; gt; Hi, gt; I don't know about aborting. it doesn't happened here. gt; please rebuild evas fully again or give me the scenario . gt; gt; gt; And to show only proxy, gt; Don't hide source. gt; just call evas_object_image_source_visible_set(source, EINA_TRUE); gt; gt; gt; gt; ex) gt; gt; evas_object_image_source_visible_set(source, EINA_TRUE); gt; evas_object_show(proxy); gt; gt; gt; gt; gt; gt; -Regards, Hermet- gt; gt; -Original Message- gt; From: Bruno Dillylt;bdi...@profusion.mobigt; gt; To: lt;enlightenment-devel@lists.sourceforge.netgt;; gt; Cc: gt; Sent: 2012-10-23 (화) 01:47:22 gt; Subject: Re: [E-devel] E SVN: hermet IN trunk/evas/src/lib: . canvas include gt; gt; On Thu, Oct 18, 2012 at 8:30 AM, Enlightenment SVN gt; lt;no-replygt;@enlightenment.orggt; wrote: gt; gt; Log: gt; gt; evas/proxy - +source visible set APIs gt; gt; gt; gt; Need to care some more cases. will be upstreamed additionally. gt; gt; gt; gt; gt; gt; gt; gt; Author: hermet gt; gt; Date: 2012-10-18 04:30:04 -0700 (Thu, 18 Oct 2012) gt; gt; New Revision: 78180 gt; gt; Trac: http://trac.enlightenment.org/e/changeset/78180 gt; gt; gt; gt; Hey, Hermet gt; gt; it looks interesting. I'm trying it on ephysics, but I got the following error: gt; gt; ERRlt;12565gt;:eo eo.c:405 _eo_dov_internal() Can't find func for op 1b6 gt; (Evas_Object_Image:EVAS_OBJ_IMAGE_SUB_ID_SOURCE_VISIBLE_SET) for class gt; 'Evas_Object_Smart'. Aborting. gt; gt; I'm trying to keep the source invisible and proxy visible doing: gt; evas_object_image_source_visible_set(source, EINA_TRUE); gt; evas_object_hide(source); gt; evas_object_show(proxy); gt; gt; And everything is hidden. gt; gt; The source is a smart object, an elm_image. gt; gt; -- gt; Bruno Dilly gt; Senior Developer gt; ProFUSION embedded systems gt; http://profusion.mobi gt; gt; -- gt; Everyone hates slow websites. So do we. gt; Make your web apps faster with AppDynamics gt; Download AppDynamics Lite for free today: gt; http://p.sf.net/sfu/appdyn_sfd2d_oct gt; ___ gt; enlightenment-devel mailing list gt; enlightenment-devel@lists.sourceforge.net gt; https://lists.sourceforge.net/lists/listinfo/enlightenment-devel gt; gt; gt; -- gt; Everyone hates slow websites. So do we. gt; Make your web apps faster with AppDynamics gt; Download AppDynamics Lite for free today: gt; http://p.sf.net/sfu/appdyn_sfd2d_oct gt; ___ gt; enlightenment-devel mailing list gt; enlightenment-devel@lists.sourceforge.net gt; https://lists.sourceforge.net/lists/listinfo/enlightenment-devel gt; -- gt; Everyone hates slow websites. So do we. gt; Make your web apps faster with AppDynamics gt; Download AppDynamics Lite for free today: gt; http://p.sf.net/sfu/appdyn_sfd2d_oct gt; ___ gt; enlightenment-devel mailing list gt; enlightenment-devel
Re: [E-devel] E SVN: hermet IN trunk/evas/src/lib: . canvas include
On Tue, Oct 23, 2012 at 12:35 PM, ChunEon Park her...@naver.com wrote: Sorry. totally I mistook for your reply. Here is the actually example for this API. ex) Evas_Object *btn; Evas_Object *img; ... evas_object_show(btn); evas_object_show(img); evas_object_image_source_set(img, btn); evas_object_image_source_visible_set(img, EINA_FALSE); Right, right. It should be set on proxy. I misunderstood your commit. //here is a more API added. evas_object_image_source_event_set(img, EINA_TRUE); //this img will pass it's events to btn. Great addition, btw. I believe it will be useful as well. =) Only the final state will be available for source visiblity, If the multiple proxies are racing to set their shared source visibility. And doc and example needs to be updated. Thank you. -Regards, Hermet- -Original Message- From: Rafael Antognollilt;antogno...@gmail.comgt; To: Enlightenment developer listlt;enlightenment-devel@lists.sourceforge.netgt;; Cc: Sent: 2012-10-23 (화) 20:04:15 Subject: Re: [E-devel] E SVN: hermet IN trunk/evas/src/lib: . canvas include Hello Hermet, The feature seems nice, good work! But I am still not sure how to control the source object from different proxies. Will there be any conflict if different proxies set the source to different visible states? Is that expected or, if it's wrong to do it, maybe this should be added to the docs? On Mon, Oct 22, 2012 at 11:42 PM, ChunEon Park lt;hermetgt;@naver.comgt; wrote: gt; ahh mistake. gt; gt; gt; do FALSE. gt; gt; evas_object_image_source_visible_set(source, EINA_FALSE); gt; gt; gt; gt; gt; -Regards, Hermet- gt; gt; -Original Message- gt; From: ChunEon Parklt;her...@naver.comgt; gt; To: Enlightenment developer listlt;enlightenment-devel@lists.sourceforge.netgt;; gt; Cc: gt; Sent: 2012-10-23 (화) 10:16:15 gt; Subject: Re: [E-devel]E SVN: hermet IN trunk/evas/src/lib: . canvas include gt; gt; Hi, gt; I don't know about aborting. it doesn't happened here. gt; please rebuild evas fully again or give me the scenario . gt; gt; gt; And to show only proxy, gt; Don't hide source. gt; just call evas_object_image_source_visible_set(source, EINA_TRUE); gt; gt; gt; gt; ex) gt; gt; evas_object_image_source_visible_set(source, EINA_TRUE); gt; evas_object_show(proxy); gt; gt; gt; gt; gt; gt; -Regards, Hermet- gt; gt; -Original Message- gt; From: Bruno Dillylt;bdi...@profusion.mobigt; gt; To: lt;enlightenment-devel@lists.sourceforge.netgt;; gt; Cc: gt; Sent: 2012-10-23 (화) 01:47:22 gt; Subject: Re: [E-devel] E SVN: hermet IN trunk/evas/src/lib: . canvas include gt; gt; On Thu, Oct 18, 2012 at 8:30 AM, Enlightenment SVN gt; lt;no-replygt;@enlightenment.orggt; wrote: gt; gt; Log: gt; gt; evas/proxy - +source visible set APIs gt; gt; gt; gt; Need to care some more cases. will be upstreamed additionally. gt; gt; gt; gt; gt; gt; gt; gt; Author: hermet gt; gt; Date: 2012-10-18 04:30:04 -0700 (Thu, 18 Oct 2012) gt; gt; New Revision: 78180 gt; gt; Trac: http://trac.enlightenment.org/e/changeset/78180 gt; gt; gt; gt; Hey, Hermet gt; gt; it looks interesting. I'm trying it on ephysics, but I got the following error: gt; gt; ERRlt;12565gt;:eo eo.c:405 _eo_dov_internal() Can't find func for op 1b6 gt; (Evas_Object_Image:EVAS_OBJ_IMAGE_SUB_ID_SOURCE_VISIBLE_SET) for class gt; 'Evas_Object_Smart'. Aborting. gt; gt; I'm trying to keep the source invisible and proxy visible doing: gt; evas_object_image_source_visible_set(source, EINA_TRUE); gt; evas_object_hide(source); gt; evas_object_show(proxy); gt; gt; And everything is hidden. gt; gt; The source is a smart object, an elm_image. gt; gt; -- gt; Bruno Dilly gt; Senior Developer gt; ProFUSION embedded systems gt; http://profusion.mobi gt; gt; -- gt; Everyone hates slow websites. So do we. gt; Make your web apps faster with AppDynamics gt; Download AppDynamics Lite for free today: gt; http://p.sf.net/sfu/appdyn_sfd2d_oct gt; ___ gt; enlightenment-devel mailing list gt; enlightenment-devel@lists.sourceforge.net gt; https://lists.sourceforge.net/lists/listinfo/enlightenment-devel gt; gt; gt; -- gt; Everyone hates slow websites. So do we. gt; Make your web apps faster with AppDynamics gt; Download AppDynamics Lite for free today: gt; http://p.sf.net/sfu/appdyn_sfd2d_oct gt; ___ gt; enlightenment-devel mailing list gt; enlightenment-devel@lists.sourceforge.net gt; https://lists.sourceforge.net/lists/listinfo/enlightenment-devel gt
Re: [E-devel] E SVN: hermet IN trunk/evas/src/lib: . canvas include
HI, Daniel. Yeh i missed since 1.8 for eos. will added it. But I didn't forget Vincent. I will update NEWS and Changes soon when features are completed. -Regards, Hermet- -Original Message- From: daniel.za...@samsung.comlt;daniel.za...@samsung.comgt; To: lt;enlightenment-devel@lists.sourceforge.netgt;; Cc: Sent: 2012-10-23 (화) 17:47:15 Subject: Re: [E-devel] E SVN: hermet IN trunk/evas/src/lib: . canvas include Hermet, you have to revert ... you forgot the @since 1.8 for the Eo defines and Vincent will kill you ;-) On 10/23/2012 10:44 AM, Enlightenment SVN wrote: gt; Log: gt; evas/proxy - added 2 more apis. not enough yet. will fix them soon. gt; gt; evas_object_image_source_events_set/get gt; gt; gt; gt; Author: hermet gt; Date: 2012-10-23 01:44:11 -0700 (Tue, 23 Oct 2012) gt; New Revision: 78361 gt; Trac: http://trac.enlightenment.org/e/changeset/78361 gt; gt; Modified: gt; trunk/evas/src/lib/Evas.h trunk/evas/src/lib/canvas/evas_events.c trunk/evas/src/lib/canvas/evas_object_image.c trunk/evas/src/lib/include/evas_private.h gt; gt; Modified: trunk/evas/src/lib/Evas.h gt; === gt; --- trunk/evas/src/lib/Evas.h 2012-10-23 07:25:29 UTC (rev 78360) gt; +++ trunk/evas/src/lib/Evas.h 2012-10-23 08:44:11 UTC (rev 78361) gt; @@ -9160,6 +9160,44 @@ gt; EAPI Eina_Bool evas_object_image_source_visible_get(const Evas_Object *obj) EINA_ARG_NONNULL(1); gt; gt; /** gt; + * Set whether an Evas object is to source events. gt; + * gt; + * @param obj Proxy (image) object. gt; + * @param source whether @p obj is to pass events (@c EINA_TRUE) or not gt; + * (@c EINA_FALSE) gt; + * gt; + * Set whether an Evas object is to repeat events to source. gt; + * gt; + * If @p source is @c EINA_TRUE, it will make events on @p obj to also be gt; + * repeated for the source object (see evas_object_image_source_set()). Even the gt; + * @p obj and source geometries are different, the event position will be gt; + * transformed to the source object's space. gt; + * gt; + * If @p source is @c EINA_FALSE, events occurring on @p obj will be gt; + * processed only on it. gt; + * gt; + * @see evas_object_image_source_get() gt; + * @see evas_object_image_source_visible_set() gt; + * @see evas_object_source_events_set() gt; + * @since 1.8 gt; + */ gt; +EAPI void evas_object_image_source_events_set(Evas_Object *obj, Eina_Bool source) EINA_ARG_NONNULL(1); gt; + gt; +/** gt; + * Determine whether an object is set to source events. gt; + * gt; + * @param obj Proxy (image) object. gt; + * @return source whether @p obj is set to source events (@c EINA_TRUE) or not gt; + * (@c EINA_FALSE) gt; + * gt; + * @see evas_object_image_source_set() gt; + * @see evas_object_image_source_visible_set() gt; + * @see evas_object_source_events_set() gt; + * @since 1.8 gt; + */ gt; +EAPI Eina_Bool evas_object_image_source_events_get(const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); gt; + gt; +/** gt; * Check if a file extension may be supported by @ref Evas_Object_Image. gt; * gt; * @param file The file to check gt; @@ -18047,6 +18085,8 @@ gt; EVAS_OBJ_IMAGE_SUB_ID_ANIMATED_FRAME_SET, gt; EVAS_OBJ_IMAGE_SUB_ID_SOURCE_VISIBLE_SET, gt; EVAS_OBJ_IMAGE_SUB_ID_SOURCE_VISIBLE_GET, gt; + EVAS_OBJ_IMAGE_SUB_ID_SOURCE_EVENTS_SET, gt; + EVAS_OBJ_IMAGE_SUB_ID_SOURCE_EVENTS_GET, gt; EVAS_OBJ_IMAGE_SUB_ID_LAST gt; }; gt; gt; @@ -18151,6 +18191,28 @@ gt; #define evas_obj_image_source_visible_get(visible) EVAS_OBJ_IMAGE_ID(EVAS_OBJ_IMAGE_SUB_ID_SOURCE_VISIBLE_GET), EO_TYPECHECK(Eina_Bool *, visible) gt; gt; /** gt; + * @def evas_obj_image_source_events_set gt; + * gt; + * Set events to be repeated to the source object. gt; + * gt; + * @param[in] source in gt; + * gt; + * @see evas_object_image_source_events_get gt; + */ gt; +#define evas_obj_image_source_events_set(source) EVAS_OBJ_IMAGE_ID(EVAS_OBJ_IMAGE_SUB_ID_SOURCE_EVENTS_SET), EO_TYPECHECK(Eina_Bool, source) gt; + gt; +/** gt; + * @def evas_obj_image_source_events_get gt; + * gt; + * Get the state of the source event. gt; + * gt; + * @param[out] source out gt; + * gt; + * @see evas_obj_image_source_event_set gt; + */ gt; +#define evas_obj_image_source_events_get(source) EVAS_OBJ_IMAGE_ID(EVAS_OBJ_IMAGE_SUB_ID_SOURCE_EVENTS_GET), EO_TYPECHECK(Eina_Bool *, source) gt; + gt; +/** gt; * @def evas_obj_image_border_set gt; * @since 1.8 gt; * gt; gt; Modified: trunk/evas/src/lib/canvas/evas_events.c gt; === gt; --- trunk/evas/src/lib/canvas/evas_events.c 2012-10-23 07:25:29 UTC (rev 78360) gt; +++ trunk/evas/src/lib/canvas/evas_events.c 2012-10-23 08:44:11 UTC (rev 78361) gt; @@ -4,7 +4,7 @@ gt; static Eina_List * gt; _evas_event_object_list_in_get(Evas *eo_e, Eina_List *in, gt; const Eina_Inlist *list, Evas_Object *stop, gt; - int x, int y, int *no_rep); gt; + int x, int y, int *no_rep, Eina_Bool source
Re: [E-devel] E SVN: hermet IN trunk/evas/src/lib: . canvas include
Hi, On Tue, Oct 23, 2012 at 10:16:15AM +0900, ChunEon Park wrote: Hi, I don't know about aborting. it doesn't happened here. please rebuild evas fully again or give me the scenario . And to show only proxy, Don't hide source. just call evas_object_image_source_visible_set(source, EINA_TRUE); ex) evas_object_image_source_visible_set(source, EINA_TRUE); evas_object_show(proxy); I suppose you meant: evas_object_image_source_visible_set(proxy, EINA_FALSE); evas_object_show(proxy); Toggle the visibility of the source of a proxy is what mostly what you want, unless your source is also a proxy of something else. Regards... -- Leandro Dorileo ProFUSION embedded systems http://profusion.mobi -- Everyone hates slow websites. So do we. Make your web apps faster with AppDynamics Download AppDynamics Lite for free today: http://p.sf.net/sfu/appdyn_sfd2d_oct ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] E SVN: hermet IN trunk/evas/src/lib: . canvas include
just add this to src/examples. Daniel Juyung Seo (SeoZ) On Oct 24, 2012 1:23 AM, ChunEon Park her...@naver.com wrote: Sorry. totally I mistook for your reply. Here is the actually example for this API. ex) Evas_Object *btn; Evas_Object *img; ... evas_object_show(btn); evas_object_show(img); evas_object_image_source_set(img, btn); evas_object_image_source_visible_set(img, EINA_FALSE); //here is a more API added. evas_object_image_source_event_set(img, EINA_TRUE); //this img will pass it's events to btn. Only the final state will be available for source visiblity, If the multiple proxies are racing to set their shared source visibility. And doc and example needs to be updated. Thank you. -Regards, Hermet- -Original Message- From: Rafael Antognollilt;antogno...@gmail.comgt; To: Enlightenment developer list lt;enlightenment-devel@lists.sourceforge.netgt;; Cc: Sent: 2012-10-23 (화) 20:04:15 Subject: Re: [E-devel] E SVN: hermet IN trunk/evas/src/lib: . canvas include Hello Hermet, The feature seems nice, good work! But I am still not sure how to control the source object from different proxies. Will there be any conflict if different proxies set the source to different visible states? Is that expected or, if it's wrong to do it, maybe this should be added to the docs? On Mon, Oct 22, 2012 at 11:42 PM, ChunEon Park lt;hermetgt;@naver.comgt; wrote: gt; ahh mistake. gt; gt; gt; do FALSE. gt; gt; evas_object_image_source_visible_set(source, EINA_FALSE); gt; gt; gt; gt; gt; -Regards, Hermet- gt; gt; -Original Message- gt; From: ChunEon Parklt;her...@naver.comgt; gt; To: Enlightenment developer list lt;enlightenment-devel@lists.sourceforge.netgt;; gt; Cc: gt; Sent: 2012-10-23 (화) 10:16:15 gt; Subject: Re: [E-devel]E SVN: hermet IN trunk/evas/src/lib: . canvas include gt; gt; Hi, gt; I don't know about aborting. it doesn't happened here. gt; please rebuild evas fully again or give me the scenario . gt; gt; gt; And to show only proxy, gt; Don't hide source. gt; just call evas_object_image_source_visible_set(source, EINA_TRUE); gt; gt; gt; gt; ex) gt; gt; evas_object_image_source_visible_set(source, EINA_TRUE); gt; evas_object_show(proxy); gt; gt; gt; gt; gt; gt; -Regards, Hermet- gt; gt; -Original Message- gt; From: Bruno Dillylt;bdi...@profusion.mobigt; gt; To: lt;enlightenment-devel@lists.sourceforge.netgt;; gt; Cc: gt; Sent: 2012-10-23 (화) 01:47:22 gt; Subject: Re: [E-devel] E SVN: hermet IN trunk/evas/src/lib: . canvas include gt; gt; On Thu, Oct 18, 2012 at 8:30 AM, Enlightenment SVN gt; lt;no-replygt;@enlightenment.orggt; wrote: gt; gt; Log: gt; gt; evas/proxy - +source visible set APIs gt; gt; gt; gt; Need to care some more cases. will be upstreamed additionally. gt; gt; gt; gt; gt; gt; gt; gt; Author: hermet gt; gt; Date: 2012-10-18 04:30:04 -0700 (Thu, 18 Oct 2012) gt; gt; New Revision: 78180 gt; gt; Trac: http://trac.enlightenment.org/e/changeset/78180 gt; gt; gt; gt; Hey, Hermet gt; gt; it looks interesting. I'm trying it on ephysics, but I got the following error: gt; gt; ERRlt;12565gt;:eo eo.c:405 _eo_dov_internal() Can't find func for op 1b6 gt; (Evas_Object_Image:EVAS_OBJ_IMAGE_SUB_ID_SOURCE_VISIBLE_SET) for class gt; 'Evas_Object_Smart'. Aborting. gt; gt; I'm trying to keep the source invisible and proxy visible doing: gt; evas_object_image_source_visible_set(source, EINA_TRUE); gt; evas_object_hide(source); gt; evas_object_show(proxy); gt; gt; And everything is hidden. gt; gt; The source is a smart object, an elm_image. gt; gt; -- gt; Bruno Dilly gt; Senior Developer gt; ProFUSION embedded systems gt; http://profusion.mobi gt; gt; -- gt; Everyone hates slow websites. So do we. gt; Make your web apps faster with AppDynamics gt; Download AppDynamics Lite for free today: gt; http://p.sf.net/sfu/appdyn_sfd2d_oct gt; ___ gt; enlightenment-devel mailing list gt; enlightenment-devel@lists.sourceforge.net gt; https://lists.sourceforge.net/lists/listinfo/enlightenment-devel gt; gt; gt; -- gt; Everyone hates slow websites. So do we. gt; Make your web apps faster with AppDynamics gt; Download AppDynamics Lite for free today: gt; http://p.sf.net/sfu/appdyn_sfd2d_oct gt; ___ gt; enlightenment-devel mailing list gt; enlightenment-devel@lists.sourceforge.net gt; https://lists.sourceforge.net/lists/listinfo/enlightenment-devel gt; -- gt; Everyone hates slow websites. So do we. gt; Make
Re: [E-devel] E SVN: hermet IN trunk/evas/src/lib: . canvas include
On Thu, Oct 18, 2012 at 8:30 AM, Enlightenment SVN no-re...@enlightenment.org wrote: Log: evas/proxy - +source visible set APIs Need to care some more cases. will be upstreamed additionally. Author: hermet Date: 2012-10-18 04:30:04 -0700 (Thu, 18 Oct 2012) New Revision: 78180 Trac: http://trac.enlightenment.org/e/changeset/78180 Hey, Hermet it looks interesting. I'm trying it on ephysics, but I got the following error: ERR12565:eo eo.c:405 _eo_dov_internal() Can't find func for op 1b6 (Evas_Object_Image:EVAS_OBJ_IMAGE_SUB_ID_SOURCE_VISIBLE_SET) for class 'Evas_Object_Smart'. Aborting. I'm trying to keep the source invisible and proxy visible doing: evas_object_image_source_visible_set(source, EINA_TRUE); evas_object_hide(source); evas_object_show(proxy); And everything is hidden. The source is a smart object, an elm_image. -- Bruno Dilly Senior Developer ProFUSION embedded systems http://profusion.mobi -- Everyone hates slow websites. So do we. Make your web apps faster with AppDynamics Download AppDynamics Lite for free today: http://p.sf.net/sfu/appdyn_sfd2d_oct ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] E SVN: hermet IN trunk/evas/src/lib: . canvas include
Hi, I don't know about aborting. it doesn't happened here. please rebuild evas fully again or give me the scenario . And to show only proxy, Don't hide source. just call evas_object_image_source_visible_set(source, EINA_TRUE); ex) evas_object_image_source_visible_set(source, EINA_TRUE); evas_object_show(proxy); -Regards, Hermet- -Original Message- From: Bruno Dillylt;bdi...@profusion.mobigt; To: lt;enlightenment-devel@lists.sourceforge.netgt;; Cc: Sent: 2012-10-23 (화) 01:47:22 Subject: Re: [E-devel] E SVN: hermet IN trunk/evas/src/lib: . canvas include On Thu, Oct 18, 2012 at 8:30 AM, Enlightenment SVN lt;no-replygt;@enlightenment.orggt; wrote: gt; Log: gt; evas/proxy - +source visible set APIs gt; gt; Need to care some more cases. will be upstreamed additionally. gt; gt; gt; gt; Author: hermet gt; Date: 2012-10-18 04:30:04 -0700 (Thu, 18 Oct 2012) gt; New Revision: 78180 gt; Trac: http://trac.enlightenment.org/e/changeset/78180 gt; Hey, Hermet it looks interesting. I'm trying it on ephysics, but I got the following error: ERRlt;12565gt;:eo eo.c:405 _eo_dov_internal() Can't find func for op 1b6 (Evas_Object_Image:EVAS_OBJ_IMAGE_SUB_ID_SOURCE_VISIBLE_SET) for class 'Evas_Object_Smart'. Aborting. I'm trying to keep the source invisible and proxy visible doing: evas_object_image_source_visible_set(source, EINA_TRUE); evas_object_hide(source); evas_object_show(proxy); And everything is hidden. The source is a smart object, an elm_image. -- Bruno Dilly Senior Developer ProFUSION embedded systems http://profusion.mobi -- Everyone hates slow websites. So do we. Make your web apps faster with AppDynamics Download AppDynamics Lite for free today: http://p.sf.net/sfu/appdyn_sfd2d_oct ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel -- Everyone hates slow websites. So do we. Make your web apps faster with AppDynamics Download AppDynamics Lite for free today: http://p.sf.net/sfu/appdyn_sfd2d_oct ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] E SVN: hermet IN trunk/evas/src/lib: . canvas include
ahh mistake. do FALSE. evas_object_image_source_visible_set(source, EINA_FALSE); -Regards, Hermet- -Original Message- From: ChunEon Parklt;her...@naver.comgt; To: Enlightenment developer listlt;enlightenment-devel@lists.sourceforge.netgt;; Cc: Sent: 2012-10-23 (화) 10:16:15 Subject: Re: [E-devel]E SVN: hermet IN trunk/evas/src/lib: . canvas include Hi, I don't know about aborting. it doesn't happened here. please rebuild evas fully again or give me the scenario . And to show only proxy, Don't hide source. just call evas_object_image_source_visible_set(source, EINA_TRUE); ex) evas_object_image_source_visible_set(source, EINA_TRUE); evas_object_show(proxy); -Regards, Hermet- -Original Message- From: Bruno Dillylt;bdi...@profusion.mobigt; To: lt;enlightenment-devel@lists.sourceforge.netgt;; Cc: Sent: 2012-10-23 (화) 01:47:22 Subject: Re: [E-devel] E SVN: hermet IN trunk/evas/src/lib: . canvas include On Thu, Oct 18, 2012 at 8:30 AM, Enlightenment SVN lt;no-replygt;@enlightenment.orggt; wrote: gt; Log: gt; evas/proxy - +source visible set APIs gt; gt; Need to care some more cases. will be upstreamed additionally. gt; gt; gt; gt; Author: hermet gt; Date: 2012-10-18 04:30:04 -0700 (Thu, 18 Oct 2012) gt; New Revision: 78180 gt; Trac: http://trac.enlightenment.org/e/changeset/78180 gt; Hey, Hermet it looks interesting. I'm trying it on ephysics, but I got the following error: ERRlt;12565gt;:eo eo.c:405 _eo_dov_internal() Can't find func for op 1b6 (Evas_Object_Image:EVAS_OBJ_IMAGE_SUB_ID_SOURCE_VISIBLE_SET) for class 'Evas_Object_Smart'. Aborting. I'm trying to keep the source invisible and proxy visible doing: evas_object_image_source_visible_set(source, EINA_TRUE); evas_object_hide(source); evas_object_show(proxy); And everything is hidden. The source is a smart object, an elm_image. -- Bruno Dilly Senior Developer ProFUSION embedded systems http://profusion.mobi -- Everyone hates slow websites. So do we. Make your web apps faster with AppDynamics Download AppDynamics Lite for free today: http://p.sf.net/sfu/appdyn_sfd2d_oct ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel -- Everyone hates slow websites. So do we. Make your web apps faster with AppDynamics Download AppDynamics Lite for free today: http://p.sf.net/sfu/appdyn_sfd2d_oct ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel -- Everyone hates slow websites. So do we. Make your web apps faster with AppDynamics Download AppDynamics Lite for free today: http://p.sf.net/sfu/appdyn_sfd2d_oct ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] E SVN: hermet IN trunk/evas/src/lib: . canvas include
ChangeLog and @since Vincent On Thu, 27 Oct 2011, Enlightenment SVN wrote: Log: evas - added new API evas_object_freeze_events_set/get and will handle for the key events also soon. Author: hermet Date: 2011-10-27 03:36:09 -0700 (Thu, 27 Oct 2011) New Revision: 64432 Trac: http://trac.enlightenment.org/e/changeset/64432 Modified: trunk/evas/src/lib/Evas.h trunk/evas/src/lib/canvas/evas_events.c trunk/evas/src/lib/canvas/evas_object_smart.c trunk/evas/src/lib/include/evas_inline.x trunk/evas/src/lib/include/evas_private.h Modified: trunk/evas/src/lib/Evas.h === --- trunk/evas/src/lib/Evas.h 2011-10-27 10:17:44 UTC (rev 64431) +++ trunk/evas/src/lib/Evas.h 2011-10-27 10:36:09 UTC (rev 64432) @@ -3922,6 +3922,7 @@ * @see evas_object_pass_events_get() for an example * @see evas_object_repeat_events_set() * @see evas_object_propagate_events_set() + * @see evas_object_freeze_events_set() */ EAPI void evas_object_pass_events_set(Evas_Object *obj, Eina_Bool pass) EINA_ARG_NONNULL(1); @@ -3942,6 +3943,7 @@ * @see evas_object_pass_events_set() * @see evas_object_repeat_events_get() * @see evas_object_propagate_events_get() + * @see evas_object_freeze_events_get() */ EAPI Eina_Bool evas_object_pass_events_get(const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; @@ -3967,8 +3969,9 @@ * See the full @ref Example_Evas_Stacking example. * * @see evas_object_repeat_events_get() - * @see evas_object_pass_events_get() - * @see evas_object_propagate_events_get() + * @see evas_object_pass_events_set() + * @see evas_object_propagate_events_set() + * @see evas_object_freeze_events_set() */ EAPI void evas_object_repeat_events_set (Evas_Object *obj, Eina_Bool repeat) EINA_ARG_NONNULL(1); @@ -3980,8 +3983,9 @@ * or not (@c EINA_FALSE) * * @see evas_object_repeat_events_set() for an example - * @see evas_object_pass_events_set() - * @see evas_object_propagate_events_set() + * @see evas_object_pass_events_get() + * @see evas_object_propagate_events_get() + * @see evas_object_freeze_events_get() */ EAPI Eina_Bool evas_object_repeat_events_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; @@ -4002,10 +4006,10 @@ * not be propagated on to the smart object of which @p obj is a * member. The default value is @c EINA_TRUE. * - * @see evas_object_event_callback_add() * @see evas_object_propagate_events_get() - * @see evas_object_repeat_events_get() - * @see evas_object_pass_events_get() + * @see evas_object_repeat_events_set() + * @see evas_object_pass_events_set() + * @see evas_object_freeze_events_set() */ EAPI void evas_object_propagate_events_set (Evas_Object *obj, Eina_Bool prop) EINA_ARG_NONNULL(1); @@ -4016,14 +4020,50 @@ * @return whether @p obj is set to propagate events (@c EINA_TRUE) * or not (@c EINA_FALSE) * - * @see evas_object_event_callback_add() * @see evas_object_propagate_events_set() - * @see evas_object_repeat_events_set() - * @see evas_object_pass_events_set() + * @see evas_object_repeat_events_get() + * @see evas_object_pass_events_get() + * @see evas_object_freeze_events_get() */ EAPI Eina_Bool evas_object_propagate_events_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; /** + * Set whether an Evas object is to freeze (discard) events. + * + * @param obj the Evas object to operate on + * @param pass whether @p obj is to freeze events (@c EINA_TRUE) or not + * (@c EINA_FALSE) + * + * If @p freeze is @c EINA_TRUE, it will make events on @p obj to be @b + * discarded. Unlike evas_object_pass_events_set(), events will not be + * passed to @b next lower object. This API can be used for blocking + * events while @p obj is on transiting. + * + * If @p freeze is @c EINA_FALSE, events will be processed on that + * object as normal. + * + * @see evas_object_freeze_events_get() + * @see evas_object_pass_events_set() + * @see evas_object_repeat_events_set() + * @see evas_object_propagate_events_set() + */ +EAPI void evas_object_freeze_events_set(Evas_Object *obj, Eina_Bool freeze) EINA_ARG_NONNULL(1); + +/** + * Determine whether an object is set to freeze (discard) events. + * + * @param obj the Evas object to get information from. + * @return freeze whether @p obj is set to freeze events (@c EINA_TRUE) or + * not (@c EINA_FALSE) + * + * @see evas_object_freeze_events_set() + * @see evas_object_pass_events_get() + * @see evas_object_repeat_events_get() + * @see evas_object_propagate_events_get() + */ +EAPI Eina_Bool evas_object_freeze_events_get(const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; + +/** * @} */ Modified:
Re: [E-devel] E SVN: hermet IN trunk/evas/src/lib: . canvas include
done. :) -Regards, Hermet- -Original Message- From: Vincent Torrilt;vto...@univ-evry.frgt; To: enlightenment-devel@lists.sourceforge.net Cc: enlightenment-...@lists.sourceforge.net Sent: 11-10-27(목) 20:56:12 Subject: Re: [E-devel] E SVN: hermet IN trunk/evas/src/lib: . canvas include ChangeLog and @since Vincent On Thu, 27 Oct 2011, Enlightenment SVN wrote: Log: evas - added new API evas_object_freeze_events_set/get and will handle for the key events also soon. Author: hermet Date: 2011-10-27 03:36:09 -0700 (Thu, 27 Oct 2011) New Revision: 64432 Trac: http://trac.enlightenment.org/e/changeset/64432 Modified: trunk/evas/src/lib/Evas.h trunk/evas/src/lib/canvas/evas_events.c trunk/evas/src/lib/canvas/evas_object_smart.c trunk/evas/src/lib/include/evas_inline.x trunk/evas/src/lib/include/evas_private.h Modified: trunk/evas/src/lib/Evas.h === --- trunk/evas/src/lib/Evas.h 2011-10-27 10:17:44 UTC (rev 64431) +++ trunk/evas/src/lib/Evas.h 2011-10-27 10:36:09 UTC (rev 64432) @@ -3922,6 +3922,7 @@ * @see evas_object_pass_events_get() for an example * @see evas_object_repeat_events_set() * @see evas_object_propagate_events_set() + * @see evas_object_freeze_events_set() */ EAPI void evas_object_pass_events_set (Evas_Object *obj, Eina_Bool pass) EINA_ARG_NONNULL(1); @@ -3942,6 +3943,7 @@ * @see evas_object_pass_events_set() * @see evas_object_repeat_events_get() * @see evas_object_propagate_events_get() + * @see evas_object_freeze_events_get() */ EAPI Eina_Bool evas_object_pass_events_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; @@ -3967,8 +3969,9 @@ * See the full @ref Example_Evas_Stacking example. * * @see evas_object_repeat_events_get() - * @see evas_object_pass_events_get() - * @see evas_object_propagate_events_get() + * @see evas_object_pass_events_set() + * @see evas_object_propagate_events_set() + * @see evas_object_freeze_events_set() */ EAPI void evas_object_repeat_events_set (Evas_Object *obj, Eina_Bool repeat) EINA_ARG_NONNULL(1); @@ -3980,8 +3983,9 @@ * or not (@c EINA_FALSE) * * @see evas_object_repeat_events_set() for an example - * @see evas_object_pass_events_set() - * @see evas_object_propagate_events_set() + * @see evas_object_pass_events_get() + * @see evas_object_propagate_events_get() + * @see evas_object_freeze_events_get() */ EAPI Eina_Bool evas_object_repeat_events_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; @@ -4002,10 +4006,10 @@ * not be propagated on to the smart object of which @p obj is a * member. The default value is @c EINA_TRUE. * - * @see evas_object_event_callback_add() * @see evas_object_propagate_events_get() - * @see evas_object_repeat_events_get() - * @see evas_object_pass_events_get() + * @see evas_object_repeat_events_set() + * @see evas_object_pass_events_set() + * @see evas_object_freeze_events_set() */ EAPI void evas_object_propagate_events_set (Evas_Object *obj, Eina_Bool prop) EINA_ARG_NONNULL(1); @@ -4016,14 +4020,50 @@ * @return whether @p obj is set to propagate events (@c EINA_TRUE) * or not (@c EINA_FALSE) * - * @see evas_object_event_callback_add() * @see evas_object_propagate_events_set() - * @see evas_object_repeat_events_set() - * @see evas_object_pass_events_set() + * @see evas_object_repeat_events_get() + * @see evas_object_pass_events_get() + * @see evas_object_freeze_events_get() */ EAPI Eina_Bool evas_object_propagate_events_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; /** + * Set whether an Evas object is to freeze (discard) events. + * + * @param obj the Evas object to operate on + * @param pass whether @p obj is to freeze events (@c EINA_TRUE) or not + * (@c EINA_FALSE) + * + * If @p freeze is @c EINA_TRUE, it will make events on @p obj to be @b + * discarded. Unlike evas_object_pass_events_set(), events will not be + * passed to @b next lower object. This API can be used for blocking + * events while @p obj is on transiting. + * + * If @p freeze is @c EINA_FALSE, events will be processed on that + * object as normal. + * + * @see evas_object_freeze_events_get() + * @see evas_object_pass_events_set() + * @see evas_object_repeat_events_set() + * @see evas_object_propagate_events_set() + */ +EAPI void evas_object_freeze_events_set(Evas_Object *obj, Eina_Bool freeze) EINA_ARG_NONNULL(1); + +/** + * Determine whether an object is set to freeze (discard) events. + * + * @param obj the Evas object to get information from. + * @return freeze whether @p obj is set to freeze events (@c EINA_TRUE) or + * not (@c EINA_FALSE) + * + * @see evas_object_freeze_events_set() + * @see evas_object_pass_events_get() + * @see evas_object_repeat_events_get() + * @see evas_object_propagate_events_get