I wrote: > Let's take your example of an 'evas_object_transform_set' > api function that you want. > Ok, when you come to actually implement this, you will add > some 'transform' to the evas object structure so that all objects > keep the transform state. Then, when the canvas calls the object's > render function it needs to draw the transformed object.. so in > each object's render function you need to 'implement' the drawing > of such a trnasformed object. > > But, you can only call 'engine functions' for this.. that's > ALL you can work with. > > Suppose you then want to be able to set a 'filter' object > on an evas object, eg. to blur, bumpmap, ... an object. Again, > you will add such state to the evas object structure and in each > object's render function you need to 'implement' the drawing of > such an object with such a filter, and with the transform you > wanted for the object before, and maybe the filter itself admits > transforms, and maybe you have the object clipped by an image > object and this image object has borders, and is itself transformed > in some way, and possibly another filter is being applied to it, > and the image object has another clip object which is a path which > is.... and the object you're drawing is a rounded recangle, which > is to be stroked with some color and filled with some gradient > texture, and the gradient is a radial one, and is trasnformed in > some way, and................... > > And all this you have to 'implement' via the set of "engine > functions" beacuse that's ALL that the canvas can access to do > anything. That set of engine functions is the canvas' gfx api, not > the actual engine gfx backend apis. > > See the problem? > > Fortunately, there is a way to do this. :)
I should've added: and that involves a very large rewrite of the engine level internals. There is no way to avoid this -- if one wants evas to be able to do much of anything beyond what it now does. It's what I've been working on recently.. but it's a large amount of work - in itself not necessarily 'difficult', but a lot.. with many, many details. Not to mention that I had to work out a fair amount of other things, like a reasonable mechanism to do such clipping, and image fill-transforms, and textured stroke/fill of rounded rects, and try and figure out a better way to deal with styled-text (eg. something like what I did sometime back with imlib2 text-styling), and clean-up and improve a bunch of things... And it's going to take yet more time and work to finish off a lot of it still. jose. ------------------------------------------------------------------------- This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ _______________________________________________ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel