Hello. This is Jaehyun Cho.

   This email is to discuss and share opinions about current issues on EFL
   C# language bindings and how to solve the issues.


   Originally I asked questions about EFL C# language bindings to Mr.
   Felipe Magno de Almeida, but anyone can answer or share your opinions.

   Please give your opinions if you may concern.

   Thank you.


   Best Regards,

   Jaehyun Cho.


   --------- Original Message ---------

   Sender : Xavier
   Artigas <x.arti...@partner.samsung.com> Contractor/SRA-Open Source/

   Date : 2018-07-23 18:19 (GMT+9)

   Title : RE: Re(16) : Some questions on this year's project


   Hi Jaehyun,


   By the way, could we move this discussion to the public EFL mailing
   list? in this way more people could share their insights.

   I am already adding Marcel Hollerbach in the CC.


   Xavi


   --------- Original Message ---------

   Sender : Xavier
   Artigas <x.arti...@partner.samsung.com> Contractor/SRA-Open Source/

   Date : 2018-07-23 15:38 (GMT+9)

   Title : RE: Re(16) : Some questions on this year's project


   Hi Jaehyun,

   Thanks for including me in this discussion, I am also very interested
   in Felipe's answers.

   I can only answer in regard to 3 (What if multi class inheritance is
   not allowed in eo). Current eo files already contain 38 mixins. I could
   study how much work it would be to remove them, but I don't think it
   will be easy.


   Xavi


   --------- Original Message ---------

   Sender : Jaehyun Cho <jae_hyun....@samsung.com> Engineer/Tizen Platform
   Lab./Samsung Electronics

   Date : 2018-07-19 14:37 (GMT+2)

   Title : Re(16) : Some questions on this year's project

   To : null<fel...@expertisesolutions.com.br>, Jaehyun
   Cho<jae_hyun....@samsung.com>

   CC : woohyun jung<wh0705.j...@samsung.com>, JONGMIN
   LEE<jm105....@samsung.com>, Myoung-Woon Roy
   Kim<myoungwoon....@samsung.com>, Hermet Park<chuneon.p...@samsung.com>,
   Xavier Artigas<x.arti...@partner.samsung.com>


   Dear Felipe Magno de Almeida,


   Hello. This is Jaehyun Cho.

   Thank you for replying.


   I have some more questions as follows. Please give us your opinion.


   1. About user-defined class inheritance

    - I followed your instruction and made an example. Aparently, it looks
   ok.

      But when I inherit efl.ui.ButtonInherit class, then "ClickedEvt"
   cannot be found in the derived class.

    class MyButton : efl.ui.ButtonInherit

    {

       ...

    }


    class Test

    {

       public static void Main()

       {

          ...

          MyButton btn = new MyButton(parent);

          btn.ClickedEvt += callback; // This causes error because
   ClickedEvt cannot be found in MyButton.

          ...

       }

    }

    - To use ClickedEvt, the variable needs to be casted to
   efl.ui.IButton. I think this is not a correct way..


   2. Crash with ClickedEvt callback

    - When I register callback function for ClickedEvt, crash happens when
   clicked event happens.

      (e.g. btn.ClickedEvt += callback;)


   3. What if multi class inheritance is not allowed in eo?

    - As far as I know, the reason, why efl.ui.IButton exists and there is
   no class hierarchy in generated cs files, is because eo allows multi
   class inheritance.

      What if eo does not allow multi class inheritance?

      If so, is it possible to generate class hierarchy in cs files
   without efl.ui.IButton and does not need to implement all interface
   methods?

      (e.g. In efl_ui_button.eo.cs, efl.ui.IButton does not exist and
   SetSize() method does not need to be implemented because it is
   implemented in efl.ui.Layout.Object.)


   4. About class only for inheritance

    - You mentioned as follows. Could you explain details why we need to
   create new eo class instead of exising widget class (e.g.
   efl_ui_button)?

    We need one class for inheritance, which effectively creates a new Eo
   class in Eo

    virtual call mechanism, and another class for the user to call methods
   on a Eo class.


    - Hermet and I checked that the difference between Button and
   ButtonInherit constructor is as follows.

      It seems that the new eo class is the same as efl_ui_button class.

      What happened if user-defined class inherits efl.ui.Button unless it
   is not sealed class?

    klass = efl.eo.Globals.register_class(new
   efl.eo.Globals.class_initializer(ButtonNativeInherit.class_initializer)
   , "Button", efl_ui_button_class_get());



   Best Regards,

   Jaehyun Cho.


   [cid:cafe_image_0@s-core.co.kr]

   [update?userid=jae_hyun.cho&do=bWFpbElEPTIwMTgwNzI0MDQzOTE5ZXBjbXMxcDhk
   MTJjZWZmYmM5NTJlYmY4NmNjYjQ4NjA3YzE5Nzg1YyZyZWNpcGllbnRBZGRyZXNzPWVubGl
   naHRlbm1lbnQtZGV2ZWxAbGlzdHMuc291cmNlZm9yZ2UubmV0]
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to