On Mon, 1 Jan 2007 15:43:42 +0100 "Jorge Luis Zapata Muga"
<[EMAIL PROTECTED]> babbled:

> On 7/2/06, The Rasterman Carsten Haitzler <[EMAIL PROTECTED]> wrote:
> > On Mon, 19 Jun 2006 01:17:03 +0200 "Jorge Luis Zapata Muga"
> > <[EMAIL PROTECTED]> babbled:
> >
> > > Hi all,
> > > i have some doubts-ideas about evas smart objects,
> > >
> > > 1. the API
> > > in order to add an object to a smart object you have to do
> > > _member_add(o, s) and to delete _member_del(o,s). On the code of both
> > > an evas smart object actually stores the members on a list but theres
> > > no function to retrieve them, Evas_List * _members_get(s), so when you
> > > code an evas smart obejct and you need to keep track of the objects
> > > you have, you need to duplicate the list and code a different function
> > > to do that.
> >
> > a get call would be useful and a good idea. :)
> 
> hi all and happy new year =)
> 
> ive retaken this thread to not add another one about almost the same
> topic (Evas smarts) :)
> i know the get call is indeed usefull, but im having another "problem"
> with evas smarts, the member_add/member_del functions. Wouldnt be good
> to have the smart class also define (if it wants) a member add/del
> callbacks?
> 
> all smart classes define their own api to add a member in case they
> want to track down/do something with the objects added/deleted which
> is good, but imho isnt consistent because if someone uses the "normal
> api" to do that (evas api) the smart object will be in a inconsistent
> status. one solution is to do everything through evas api, do a
> _member_add and the smart callback will be called.
> 
> If the smart also wants to add its own objects in case an object is
> added it still has to differentiate in the callback if the object
> added is its own or another, but isnt a problem i think =)
> 
> what do you think?

so basically you want generic "packing" calls - right? (the reason its done in
a more fine grained fashion is that often adding a smart member is PART of
packing a child - but it can also be just adding a normal internal member that
is always there (like decorations)

> >
> > > 2. the implementation
> > > ive been playing with smart objects for evoak, so ill explain the case:
> > > my goal was to create a container, an evas objects container. the
> > > problem i see is that the evas smart objects where thought for a
> > > static environment, on the callback of a smart object add you create
> > > the static objects inside, store them on your list and when something
> > > happens (move, resize, whatever) you act accord with that and apply
> > > that to your internal objects. thats fine. but i thought the idea of
> > > the smart objects was to actually be a sub canvas of evas, so when you
> > > add an object: evas_object_add(evas) and then add it as a member of
> > > smart object it is no longer part of the evas objects but of the smart
> > > objects, so for example a layer change on that is actually a layer
> > > change inside the layers of the sub canvas, wich in fact the subcanvas
> > > is in one layer. but not in the evas canvas layers. another example is
> > > that when you move an object what is member of a smart object it
> > > should move relative to it, no relative to the evas canvas. dont know
> > > if i explain myself correctly :)
> > > so a problem with this is that if you want to move an object that is
> > > part of smart object you should call a different (own) function to
> > > calculate all the relative coordinates and move it there.
> >
> > well no - smart objects are not sub canvases. definitely not. they are  a
> > overgrown solution to people asking for "object groups" - a way to group
> > objects together and operate on them as a whole. since how a group would
> > behave on a move or resize can be so variable, i wrote a very generic
> > mechanism that doubled as a way to make new object primitives from existing
> > ones, as there is no way to provide a custom first-class object yet.
> > setting layers of objects once in a smart object is invalid. :)
> >
> > > so my question is, the current aproach of evas smart objects in the
> > > correct way? or my use case is just an specific and doesnt make sense
> > > to change the behaviour of the smart objects?
> > > maybe a solution could be to add callbacks for a move, resize,
> > > layer_set, whatever, but not for the smart object but for the elements
> > > of a smart object.
> > >
> > > btw, if i made a wrong assumption about smart objects please forgive
> > > me :) havent used them a lot :)
> >
> > definitely wrong assumption. they aren't meant for sub-canvases really :)
> >
> > > bye
> > >
> > >
> > > _______________________________________________
> > > enlightenment-devel mailing list
> > > enlightenment-devel@lists.sourceforge.net
> > > https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
> > >
> >
> >
> > --
> > ------------- Codito, ergo sum - "I code, therefore I am" --------------
> > The Rasterman (Carsten Haitzler)    [EMAIL PROTECTED]
> > 裸好多
> > Tokyo, Japan (東京 日本)
> >
> 


-- 
------------- Codito, ergo sum - "I code, therefore I am" --------------
The Rasterman (Carsten Haitzler)    [EMAIL PROTECTED]
裸好多
Tokyo, Japan (東京 日本)

-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier.
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to