Gustavo Sverzut Barbieri schrieb: > Just to make clear: what goes into Evas_Object is the hints. They > could be represented as allocated structs managed with > evas_object_data_*(), but since they're so common we could 1) make it > more standard, helping integration and I don't see where they are "so common". Sure every widget set use this or a similar concept for fill policies, but for widgets and not for evas objects. > 2) minor optimizations by not > walking the linked list doing strcmp() in order to find these values. > You can use a hash or a tree instead. > The integration idea came out after the layout stuff appeared and it > would duplicate lots of stuff into edje, thus having this would help. > What I have read is that raster wants this layout stuff anyway in edje, so you can reuse it there. > All this layout stuff will not go inside evas, but some other library, > either a new one or esmart. > Right and that is the weak point of the whole thing. Why putting all the getters and setters into evas, if evas has no concept to deal with the values? If you need the callback infrastructure you can probably extend evas_object to support custom callbacks. And as you said you can already attach data to evas_objects. > Also, layout is not widgets, but they can be used to provide widgets. > They're regular smart objects that will be provided to avoid code > duplication and help integration. Also, by making it like that and > using standard properties (size hints) we can expose it from Edje > without much trouble. The big picture is to have this and enable > toolkit integration one day, like be able to mix in the same vertical > list a rectangle, an etk button and a ewl list, this would be really > easy since these (in THEORY!) should expose Evas_Object with all the > properties set. >
You can already mix them if you want this. Just put your widget(s) into an ewl_embed or in an etk_embed (or however the etk counter-part is called) and put them into a esmart_container. In general, i think, you make the assumption that a widget is an evas (smart) object plus some other values that are needed to manage them. But this is not true, at least for ewl. An ewl widget that is off-screen or hidden will not have an evas object at all. So even if we would want to, we cannot re-use this flags. Peter ------------------------------------------------------------------------- This SF.net email is sponsored by the 2008 JavaOne(SM) Conference Don't miss this year's exciting event. There's still time to save $100. Use priority code J8TL2D2. http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone _______________________________________________ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel