2013/1/30 Yakov Goldberg <yako...@samsung.com>

> Hi Davide,
>
>      The idea is to provide Eo with introspection and automatic bindings
> generation.
>

Hi Yakov,
I gave a quick look at you project, the idea is really interesting but as
you
said it's really a PoC; I can think of an high number of issues.
So I'm happy that our projects don't 'overlap'  :)

Can we really call your approach introspection? you are parsing the source
files :/
Should not introspection be at run-time by definition?


>
>      I made some PoC, and can generate bindings for Python and JS -
> elev8. (elev8 is javascript runtime based on Google's v8 js engine).
>
>      I scan C -souces for Eo classes and functions definitions and
> generate python(cython) code (or C++ for elev8) which compiled into
> extern module.
>
>      There are still issues to solve..
>
>      You can look at it here:
> https://github.com/yakov-g/eo_bindings/blob/master/DEV_README
>
>      I can answer any questions.
>      And discuss how it can be properly done.
>

Sorry but I'm really out-of-time to help with your project, I need well
working
bindings NOW ;)


>
> Yakov
>
>
> On 01/30/2013 12:09 AM, Davide Andreoli wrote:
> > 2013/1/29 Tom Hacohen <t...@stosb.com>
> >
> >> No, custom constructor is not the old one.
> >>
> >> You need to use:
> >>
> >> #define elm_obj_win_constructor(name, type)
> >> ELM_OBJ_WIN_ID(ELM_OBJ_WIN_SUB_ID_WIN_CONSTRUCTOR), EO_TYPECHECK(const
> >> char *, name), EO_TYPECHECK(Elm_Win_Type, type)
> >>
> > haa, ok,now i can create a window using:
> > win = eo_add_custom(ELM_OBJ_WIN_CLASS, NULL,
> > elm_obj_win_constructor("main", ELM_WIN_BASIC));
> >
> > thanks, I will make more tests tomorrow...too tired now
> >
> >
> >> >From elm_win.h.
> >>
> >> And well, you should switch to Eo for all the objects. Please also talk
> to
> >> Yakov in CC, as I believe he has already got Python bindings for Eo.
> >>
> > Yakov: ping
> > are you working on py bindings? we are doing double work? whats your
> goal?
> >
> >
> >
> >>
> >> On Tue, Jan 29, 2013 at 9:18 PM, Davide Andreoli <
> d...@gurumeditation.it
> >>> wrote:
> >>> 2013/1/29 Tom Hacohen <t...@stosb.com>
> >>>
> >>>> Don't use eo_del/unref as counterparts to the old API. Create the
> >> objects
> >>>> with the new API if you would like to use them...
> >>>>
> >>> Hi, thanks for the fast reply.
> >>>
> >>> I have tried that approach but I have problems with some objects than,
> >>> for example elm_win:
> >>> if I do:
> >>> win = eo_add(ELM_OBJ_WIN_CLASS, NULL);
> >>>
> >>> I get the error:
> >>> ERR<3716>:elementary elm_win.c:2979 _constructor() only custom
> >> constructor
> >>> can be used with 'elm_win' class
> >>>
> >>> "custom constructor" is the old one right?
> >>> In that case I have to manage different delete cases for objs that
> >> support
> >>> eo and the ones that don't,
> >>> and I lost all the benefits of a single-delete-code for every objects
> :/
> >>>
> >>> thanks
> >>> davemds
> >>>
> >>>
> >>>
> >>>> On 29 Jan 2013 19:37, "Davide Andreoli" <d...@gurumeditation.it>
> >> wrote:
> >>>>> Hi all,
> >>>>> I'm working/studying Eo while trying to optimize the python bindings
> >>>>> and I have some problems deleting eo objects.
> >>>>>
> >>>>> see this super simple example:
> >>>>> (pastebin.com/1C0dqdYA for a "colored" version)
> >>>>>
> >>>>>
> >>>>> #include <Eo.h>
> >>>>> #include <Elementary.h>
> >>>>>
> >>>>> void
> >>>>> my_win_del(void *data, Evas_Object *obj, void *event_info)
> >>>>> {
> >>>>>     elm_exit();
> >>>>> }
> >>>>>
> >>>>> EAPI_MAIN int
> >>>>> elm_main(int argc, char **argv)
> >>>>> {
> >>>>>      Evas_Object *win, *r;
> >>>>>
> >>>>>      win = elm_win_add(NULL, "main", ELM_WIN_BASIC);
> >>>>>      elm_win_title_set(win, "Elementary Tests");
> >>>>>      evas_object_smart_callback_add(win, "delete,request",
> my_win_del,
> >>>>> NULL);
> >>>>>      evas_object_resize(win, 320, 320);
> >>>>>      evas_object_show(win);
> >>>>>
> >>>>>      r = evas_object_rectangle_add(evas_object_evas_get(win));
> >>>>>      evas_object_resize(r, 100, 100);
> >>>>>      evas_object_show(r);
> >>>>>
> >>>>>      evas_object_del(r); // this one work as expected
> >>>>>      // eo_del(r);               // this give a bad warnig
> >>>>>      // eo_unref(r);            // this cause an endless loop on
> >>>>> elm_shutdown
> >>>>>
> >>>>>      elm_run();
> >>>>>      elm_shutdown();
> >>>>>
> >>>>>      return 0;
> >>>>> }
> >>>>>
> >>>>> ELM_MAIN()
> >>>>>
> >>>>>
> >>>>>
> >>>>> The example simply create a rectangle and then delete it, the only
> >>>> working
> >>>>> way to delete the rect
> >>>>> seems to be the evas_object_del call (that work as expected)
> >>>>>
> >>>>> Using eo_del() to delete the rect cause this warning:
> >>>>> ERR<3219>:eo lib/eo/eo.c:1306 _eo_unref() Object 0x21d9920 already
> >>>> deleted.
> >>>>> ERR<3219>:eo lib/eo/eo.c:1306 _eo_unref() Object 0x21d9920 already
> >>>> deleted.
> >>>>> as soon as you call eo_del()
> >>>>>
> >>>>> While eo_unref() cause an endless loop on elm_shutdown with this
> >>> warning
> >>>>> repeated forever:
> >>>>> CRI<3242>: lib/eo/eo.c:1081 eo_parent_set() *** Eina Magic Check
> >> Failed
> >>>> at
> >>>>> 0x1a88f80 !!!
> >>>>>      Input handle is wrong type
> >>>>>      Expected: a186bc32 - Eo
> >>>>>      Supplied: afda6798 - (unknown)
> >>>>> *** NAUGHTY PROGRAMMER!!!
> >>>>> *** SPANK SPANK SPANK!!!
> >>>>> *** Now go fix your code. Tut tut tut!
> >>>>>
> >>>>>
> >>>>> I'm doing something wrong? I'm misunderstanding something?
> >>>>>
> >>>>> any help is appreciated
> >>>>>
> >>>>> thanks
> >>>>> davemds
> >>>>>
> >>>>>
> >>
> ------------------------------------------------------------------------------
> >>>>> Master Visual Studio, SharePoint, SQL, ASP.NET, C# 2012, HTML5, CSS,
> >>>>> MVC, Windows 8 Apps, JavaScript and much more. Keep your skills
> >> current
> >>>>> with LearnDevNow - 3,200 step-by-step video tutorials by Microsoft
> >>>>> MVPs and experts. ON SALE this month only -- learn more at:
> >>>>> http://p.sf.net/sfu/learnnow-d2d
> >>>>> _______________________________________________
> >>>>> enlightenment-devel mailing list
> >>>>> enlightenment-devel@lists.sourceforge.net
> >>>>> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
> >>>>>
> >>>>
> >>
> ------------------------------------------------------------------------------
> >>>> Master Visual Studio, SharePoint, SQL, ASP.NET, C# 2012, HTML5, CSS,
> >>>> MVC, Windows 8 Apps, JavaScript and much more. Keep your skills
> current
> >>>> with LearnDevNow - 3,200 step-by-step video tutorials by Microsoft
> >>>> MVPs and experts. ON SALE this month only -- learn more at:
> >>>> http://p.sf.net/sfu/learnnow-d2d
> >>>> _______________________________________________
> >>>> enlightenment-devel mailing list
> >>>> enlightenment-devel@lists.sourceforge.net
> >>>> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
> >>>>
> >>>
> >>
> ------------------------------------------------------------------------------
> >>> Master Visual Studio, SharePoint, SQL, ASP.NET, C# 2012, HTML5, CSS,
> >>> MVC, Windows 8 Apps, JavaScript and much more. Keep your skills current
> >>> with LearnDevNow - 3,200 step-by-step video tutorials by Microsoft
> >>> MVPs and experts. ON SALE this month only -- learn more at:
> >>> http://p.sf.net/sfu/learnnow-d2d
> >>> _______________________________________________
> >>> enlightenment-devel mailing list
> >>> enlightenment-devel@lists.sourceforge.net
> >>> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
> >>>
> >>
> >>
> >> --
> >> Tom.
> >>
> >>
> ------------------------------------------------------------------------------
> >> Master Visual Studio, SharePoint, SQL, ASP.NET, C# 2012, HTML5, CSS,
> >> MVC, Windows 8 Apps, JavaScript and much more. Keep your skills current
> >> with LearnDevNow - 3,200 step-by-step video tutorials by Microsoft
> >> MVPs and experts. ON SALE this month only -- learn more at:
> >> http://p.sf.net/sfu/learnnow-d2d
> >> _______________________________________________
> >> enlightenment-devel mailing list
> >> enlightenment-devel@lists.sourceforge.net
> >> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
> >>
> >
> ------------------------------------------------------------------------------
> > Master Visual Studio, SharePoint, SQL, ASP.NET, C# 2012, HTML5, CSS,
> > MVC, Windows 8 Apps, JavaScript and much more. Keep your skills current
> > with LearnDevNow - 3,200 step-by-step video tutorials by Microsoft
> > MVPs and experts. ON SALE this month only -- learn more at:
> > http://p.sf.net/sfu/learnnow-d2d
> > _______________________________________________
> > 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_d2d_jan
> _______________________________________________
> 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_d2d_jan
_______________________________________________
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to