On Mon, Sep 08, 2014 at 04:42:04PM +0300, Daniel Zaoui wrote:
> Hi,
> 
> On 09/08/14 16:16, Jean Rene Dawin wrote:
> > On Sat, Aug 16, 2014 at 02:36:10PM +0900, Carsten Haitzler wrote:
> >> About time i got back to blogging about EFL etc.
> >>
> >> https://phab.enlightenment.org/phame/live/1//post/yet_another_c_object_model_but_better/
> >>
> > Hi,
> >
> > thanks for the explanations. Trying to reproduce the steps, the result of 
> > my tst.c
> > differd a bit, though. I didn't get 
> >
> >     EOLIAN static void
> >     _tst_eo_base_constructor(Eo *obj, Tst_Data *pd)
> >     {
> >        eo_do_super(obj, TST_CLASS, eo_constructor());
> >     }
> >     
> >     EOLIAN static void
> >     _tst_eo_base_destructor(Eo *obj, Tst_Data *pd)
> >     {
> >        eo_do_super(obj, TST_CLASS, eo_destructor());
> >     }
> >
> > but instead
> >
> >     EOLIAN static void
> >     _tst_class_constructor(Eo_Class *klass)
> >     {
> >     }
> >     EOLIAN static void
> >     _tst_class_destructor(Eo_Class *klass)
> >     {
> >     }
> >
> > Is there a more detailed documentation of the Eo-Syntax and API somewhere?
> > Becuase the one on docs.enlightenment.org is not so verbose or maybe 
> > outdated.
> > Is this because there will be more changes to Eo and things are not fixed 
> > yet?
> >
> > Thanks for your help,
> >
> > Jean Rene Dawin
> >
> 
> You should try with Base.constructor instead of class.constructor (same
> for the destructor).
> 
> You can look at https://phab.enlightenment.org/w/eolian/ for more docs
> on the syntax.
> 
> One of all the EFL Daniels

Hi,

thanks for the answers. The site you mentioned is indeed very informative about 
eo-file syntax. But what I'm more interested in is the whole mechanics of 
eo_add, eo_do and eo_add_custom and all those functions. For example I tried to 
do this 

    #define EFL_BETA_API_SUPPORT
    #define EFL_EO_API_SUPPORT
    #include <Elementary.h>
    EAPI_MAIN int
    elm_main(int argc, char **argv){
        eo_init();
        Eo *win = eo_add(ELM_WIN_CLASS, NULL);
        eo_do(win, 
            elm_obj_win_title_set("Nikotinamiddinukleotidphosphat")
        );
        elm_run();
        return 0;
    }
    ELM_MAIN()

and while it compiled fine it threw runtime errors like 

    ERR<818>:eo lib/eo/eo.c:1572 eo_error_set_internal() Error with obj 
'0x9500b30' at elm_win.c:3510.
    ERR<818>:elementary elm_win.c:3511 _elm_win_eo_base_constructor() only 
custom constructor can be used with 'Elm_Win' class
    ERR<818>:eo lib/eo/eo.c:953 _eo_add_internal_end() Object of class 
'Elm_Win' - Not all of the object constructors have been executed.

as I'm obviously using Eo/Elementary in a wrong manner, but I find it quite 
hard to understand from the source files like Eo.h, how it would be done the 
right way.
So, I guess I will have to try harder :)

Regards,

Jean Rne Dawin


------------------------------------------------------------------------------
Want excitement?
Manually upgrade your production database.
When you want reliability, choose Perforce
Perforce version control. Predictably reliable.
http://pubads.g.doubleclick.net/gampad/clk?id=157508191&iu=/4140/ostg.clktrk
_______________________________________________
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to