2016-08-11 11:32 GMT+02:00 Tom Hacohen <t...@osg.samsung.com>: > On 10/08/16 22:30, Davide Andreoli wrote: > > 2016-08-10 16:35 GMT+02:00 Tom Hacohen <t...@osg.samsung.com>: > > > >> On 10/08/16 14:51, Davide Andreoli wrote: > >>> 2016-08-10 15:48 GMT+02:00 Tom Hacohen <t...@osg.samsung.com>: > >>> > >>>> On 10/08/16 14:45, Davide Andreoli wrote: > >>>>> 2016-08-10 15:22 GMT+02:00 Tom Hacohen <t...@osg.samsung.com>: > >>>>> > >>>>>> On 09/08/16 20:37, Davide Andreoli wrote: > >>>>>>> Starting from this commit: > >>>>>>> https://git.enlightenment.org/core/elementary.git/commit/?id= > >>>>>> 015db15c626b9b06116fcc8f7ec61bbae3c6cc30 > >>>>>>> > >>>>>>> combobox now inherit from Genlist and Multibuttonentry, this is > >> causing > >>>>>>> some name clashes, in particular > >>>>>>> I found the item_append() function to be present (and needed) in > both > >>>>>>> parent class. > >>>>>>> > >>>>>>> This is an issue in bindings, where you use it like: > >>>>>>> cbox.item_append(...) > >>>>>>> what function do I need to call in this case? the one from genlist > or > >>>> the > >>>>>>> one from multibuttonentry? > >>>>>>> do you want to add the item in the genlist or in the mbe? > >>>>>>> > >>>>>>> TBH I also found the new combobox multi selection functionality > quite > >>>>>>> broken atm, for example it's > >>>>>>> quite impossible to make the widget the right size, it always > appear > >>>>>> super > >>>>>>> small, unless you perform > >>>>>>> hacks like the table+rect one, or use and edje layout (like is done > >> the > >>>>>>> elementary_test) > >>>>>>> > >>>>>>> If we don't a have a solution/explanation for the name clash I > >> suggest > >>>> to > >>>>>>> revert this commit for the > >>>>>>> 1.18 release and fix/discuss better in the next cycle > >>>>>>> > >>>>>>> Thanks > >>>>>>> davemds > >>>>>> > >>>>>> Hey, > >>>>>> > >>>>>> My reply will be based on my basic checks and a few assumptions, if > >> you > >>>>>> think any of the assumptions are wrong, please correct me. But given > >> the > >>>>>> quick glance I took of the code, and our chat on IRC, I think I'm on > >> top > >>>>>> of it. > >>>>>> > >>>>>> > >>>>>> The Eo API is not stable. This obviously includes eo functions like > >>>>>> eo_add, but also eo properties, like multiple inheritance. Combobox > >>>>>> inherits from box, and is extended (composite if I had to assume) by > >>>>>> genlist. This means that any genlist calls on combobox objects are > >>>>>> actually BETA are not "released". This means one of two things: if > you > >>>>>> can use combobox without these calls, all is well. If you rely on > >> using > >>>>>> these calls, then combobox should be marked as beta too as it's not > >>>>>> useful without the Eo api. That is it. > >>>>>> > >>>>>> > >>>>> I can understand your point here, but the problem is that legacy > users > >>>> can > >>>>> use this legacy functions: > >>>>> o = elm_combobox_add() > >>>>> elm_genlist_item_append(o) > >>>>> elm_multibuttonentry_item_append(o) > >>>> > >>>> I understand. > >>>> > >>>>> > >>>>> those functions are not BETA, and people can use them. While you > >>>>> say they are (conceptually) BETA. > >>>>> > >>>>> Infact we already have bindings for the combobox in python-efl. > >>>>> > >>>>> To be more clear: the only way to actually use the combobox widget in > >>>>> any useful way is to use functions from other widgets (composited) > >>>>> And if composited is conceptually BETA then the full widget should be > >>>>> marked as BETA. > >>>> > >>>> That's what I said. So the widget should be marked as beta. > >>>> > >>>> > >>> It's a bit too late for this, it was also in the 1.17 release (without > >> beta) > >> > >> Well, it's not a problem, because as I said, it's undefined behaviour > >> (the way it was used), and it shouldn't have been used that way. It > >> relied on unreleased API. Combobox itself is not an API break, just > >> certain usages. So we just released a useless widget in 1.17, I'm fine > >> with that. Doesn't matter. Read my previous mail for more info. > >> > > > > It probably doesn't matter for you but maybe does matter for all the > people > > (like me) that have used the combo widget released in 1.17. > > Yes! it has been released, not under beta, with legacy functions, and > > without any note to not use it. > > > > So we have done a big mess and a HUGE error releasing this widget, and > > the fact that you don't admit this is quite disturbing. > > > > I have now deprecated the combobox widget in python-efl, with a > > BIG FAT WARNING to not use it anymore. > > https://build.enlightenment.org/job/base_pyefl_build/ > lastSuccessfulBuild/artifact/build/sphinx/html/elementary/combobox.html > > > > I suggest that someone do the same for the C api/docs, and > > again I suggest to revert the multi_selection/Multibuttonentry ability. > > I think you misunderstood my email. It's a big fuckup. It's bad that it > happened. But what do you want us to do now? It was released in a > non-working state and the recommended usage was beta but was never told. > Seriously, what do you want us to do now? There's nothing to do...
The only thing to do (that I can think of) is what I have done in pyefl: a BIG FAT WARNING to not use that widget in legacy code. well... and maybe check if there are other widgets that suffer for the same problem: rely on composition (thus BETA) but released in legacy. > All > I'm saying is that in the future we will be able to fix the clash > because the Eo API can still be changed. That's it. So yes, it's not > useful for bindings at the moment unfortunately. > > -- > Tom. > > > ------------------------------------------------------------ > ------------------ > What NetFlow Analyzer can do for you? Monitors network bandwidth and > traffic > patterns at an interface-level. Reveals which users, apps, and protocols > are > consuming the most bandwidth. Provides multi-vendor support for NetFlow, > J-Flow, sFlow and other flows. Make informed decisions using capacity > planning reports. http://sdm.link/zohodev2dev > _______________________________________________ > enlightenment-devel mailing list > enlightenment-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/enlightenment-devel > ------------------------------------------------------------------------------ What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic patterns at an interface-level. Reveals which users, apps, and protocols are consuming the most bandwidth. Provides multi-vendor support for NetFlow, J-Flow, sFlow and other flows. Make informed decisions using capacity planning reports. http://sdm.link/zohodev2dev _______________________________________________ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel