Re: [E-devel] E CVS: libs/evas tilman
Enlightenment CVS wrote: Enlightenment CVS committal Author : tilman Project : e17 Module : libs/evas Dir : e17/libs/evas/src/lib/canvas Modified Files: evas_object_textblock.c Log Message: rework how the html entity escape arrays are stored. this saves a few hundred bytes on the data section of the library, kills off ~300 locations, and makes the so 77K smaller. ... I think I understand why this is good for performance. However, it makes it non-trivial to make changes unless the offset table somehow can be auto-generated. Do you have some script for that? /Kim - 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
[E-devel] e16 menu accent bug
Hi, I've found the following bug in e-0.16.8.8: I have a fully UTF-8 system, the locale is set accordingly before e16 is started, and my menus are encoded in UTF-8 too. These accents appear correctly nearly always. They are okay in the window titles of applications, in the menus, and usually in the menu titles too. However, if a menu title (that is, the first line of the corresponding .menu file) contains an accented character that wouldn't fit in Latin-1 then -?- is displayed instead of the correct title. I have no e17 so I haven't checked whether that one is affected too. bye, Egmont - 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
Re: [E-devel] API Documentation
Docs are available in a few different forms. The first way to get them is to look for a gendoc script inside each lib, which will generate the doxygen API documentation. Another source is the new web site which has not yet replaced the main e.org site: http://web.enlightenment.org/p.php?p=docsl=en On 5/18/07, Chris Stromblad [EMAIL PROTECTED] wrote: -BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Hello chaps, Firstly, thanks for the amazing effort in developing EFL and Enlightenment. It rawks! :) Enough of that. I've decided to give it a try to do some development with EFL. However I have a tendency to always want to document and understand what each little parameter do. So I thought before possibly re-inventing the wheel, is there available API documentation for EFL? The one on get-e.org does not work, and have not for quite some time now. Regards, Chris PS: I have also checked the CVS, but not been able to find anything. Perhaps I've missed something really obvious, and apologies for that if I have! :) -BEGIN PGP SIGNATURE- Version: GnuPG v2.0.4 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iQEVAwUBRk3dSxs+yp9zuAsMAQLmhwf+KkJXE+/LfxCsulZ1LRtnyu01imIdF/u3 ZWzXCIbL8ZNjUPwN7tKZLigDTEafJ0thzXhKi/qRzCuZsktX0t0JUM52zmUIWpe3 wsZPSyGo0m4a9Mi9acpGnBRUGG3XpBmA6qdBCz5oF8x8CD5o8OqvTsw5hqextMZx FecluzKLZv3ad1eplECS/4p5lfbAwZ/lvAbtC2N0hJtQU9Xjv8p0KX2k/4NXdUt+ g3rGC9iLf6USO8dMTWkO2s571jC3cxbjEfftFk1zE86mFRfHVweLs6Bw/ayYbYek lFGnQdu2EOf0hr/TE9xhaw+Efkr3aKGHTc/V0XkH2W+UOTcBru8IHw== =f+so -END PGP SIGNATURE- - 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 - 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
Re: [E-devel] API Documentation
Hi there, I think this is what you are looking for: http://web.enlightenment.org/p.php?p=docsl=en, however not sure how up to date it is. Lucian On 5/18/07, Chris Stromblad [EMAIL PROTECTED] wrote: -BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Hello chaps, Firstly, thanks for the amazing effort in developing EFL and Enlightenment. It rawks! :) Enough of that. I've decided to give it a try to do some development with EFL. However I have a tendency to always want to document and understand what each little parameter do. So I thought before possibly re-inventing the wheel, is there available API documentation for EFL? The one on get-e.org does not work, and have not for quite some time now. Regards, Chris PS: I have also checked the CVS, but not been able to find anything. Perhaps I've missed something really obvious, and apologies for that if I have! :) -BEGIN PGP SIGNATURE- Version: GnuPG v2.0.4 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iQEVAwUBRk3dSxs+yp9zuAsMAQLmhwf+KkJXE+/LfxCsulZ1LRtnyu01imIdF/u3 ZWzXCIbL8ZNjUPwN7tKZLigDTEafJ0thzXhKi/qRzCuZsktX0t0JUM52zmUIWpe3 wsZPSyGo0m4a9Mi9acpGnBRUGG3XpBmA6qdBCz5oF8x8CD5o8OqvTsw5hqextMZx FecluzKLZv3ad1eplECS/4p5lfbAwZ/lvAbtC2N0hJtQU9Xjv8p0KX2k/4NXdUt+ g3rGC9iLf6USO8dMTWkO2s571jC3cxbjEfftFk1zE86mFRfHVweLs6Bw/ayYbYek lFGnQdu2EOf0hr/TE9xhaw+Efkr3aKGHTc/V0XkH2W+UOTcBru8IHw== =f+so -END PGP SIGNATURE- - 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 - 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
[E-devel] API Documentation
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Hello chaps, Firstly, thanks for the amazing effort in developing EFL and Enlightenment. It rawks! :) Enough of that. I've decided to give it a try to do some development with EFL. However I have a tendency to always want to document and understand what each little parameter do. So I thought before possibly re-inventing the wheel, is there available API documentation for EFL? The one on get-e.org does not work, and have not for quite some time now. Regards, Chris PS: I have also checked the CVS, but not been able to find anything. Perhaps I've missed something really obvious, and apologies for that if I have! :) -BEGIN PGP SIGNATURE- Version: GnuPG v2.0.4 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iQEVAwUBRk3dSxs+yp9zuAsMAQLmhwf+KkJXE+/LfxCsulZ1LRtnyu01imIdF/u3 ZWzXCIbL8ZNjUPwN7tKZLigDTEafJ0thzXhKi/qRzCuZsktX0t0JUM52zmUIWpe3 wsZPSyGo0m4a9Mi9acpGnBRUGG3XpBmA6qdBCz5oF8x8CD5o8OqvTsw5hqextMZx FecluzKLZv3ad1eplECS/4p5lfbAwZ/lvAbtC2N0hJtQU9Xjv8p0KX2k/4NXdUt+ g3rGC9iLf6USO8dMTWkO2s571jC3cxbjEfftFk1zE86mFRfHVweLs6Bw/ayYbYek lFGnQdu2EOf0hr/TE9xhaw+Efkr3aKGHTc/V0XkH2W+UOTcBru8IHw== =f+so -END PGP SIGNATURE- - 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
Re: [E-devel] API Documentation
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Thanks both of you for your quick replies. The documentation on web.enlightenment.org is pretty much exactly what I was looking for. Ta! / Chris Nathan Ingersoll wrote: Docs are available in a few different forms. The first way to get them is to look for a gendoc script inside each lib, which will generate the doxygen API documentation. Another source is the new web site which has not yet replaced the main e.org site: http://web.enlightenment.org/p.php?p=docsl=en On 5/18/07, Chris Stromblad [EMAIL PROTECTED] wrote: Hello chaps, Firstly, thanks for the amazing effort in developing EFL and Enlightenment. It rawks! :) Enough of that. I've decided to give it a try to do some development with EFL. However I have a tendency to always want to document and understand what each little parameter do. So I thought before possibly re-inventing the wheel, is there available API documentation for EFL? The one on get-e.org does not work, and have not for quite some time now. Regards, Chris PS: I have also checked the CVS, but not been able to find anything. Perhaps I've missed something really obvious, and apologies for that if I have! :) - - 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 -BEGIN PGP SIGNATURE- Version: GnuPG v2.0.4 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iQEVAwUBRk3h0hs+yp9zuAsMAQLjRAf9E+92+2nF99PYin2TWC2D3M8bqy3H3XlW hT52ULK+fAt4PaAoF/J0h8zLG86IcoFzWV3+u9D80yhCtI0TA74mqgv0AoPx4hU9 ADG52otXGlk6JWgEvENVHxU9bZOgNsO3op/IrZoF7TsjSRoi+zNGCv9IHwte6ja1 2C1aZ0d/3vLJLRQAzB1hnPqbD2lEcaWMoXd1vpj2O8YTajAXerGCA/4q/ChI7Rl+ TMCW7gI7zbwgt3g3pg+SESuGIxZR+myvwkCv0gySSVAQFxTKFkRBnaqZTDZgu62z 0hokmgWJblFhMD/YedamXtpC7k9Zx1JgjqkW5oGOouqK2erTNmcgAg== =RiqG -END PGP SIGNATURE- - 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
Re: [E-devel] E CVS: libs/evas tilman
Kim Woelders [2007-05-18 11:23]: Enlightenment CVS wrote: Enlightenment CVS committal Author : tilman Project : e17 Module : libs/evas Dir : e17/libs/evas/src/lib/canvas Modified Files: evas_object_textblock.c Log Message: rework how the html entity escape arrays are stored. this saves a few hundred bytes on the data section of the library, kills off ~300 locations, and makes the so 77K smaller. ... I think I understand why this is good for performance. However, it makes it non-trivial to make changes unless the offset table somehow can be auto-generated. Do you have some script for that? Yes, I have C code that does it. It's not in CVS yet because I frown upon the necessary automake changes. Regards, Tilman -- A: Because it messes up the order in which people normally read text. Q: Why is top-posting such a bad thing? A: Top-posting. Q: What is the most annoying thing on usenet and in e-mail? pgpAUJi8Vdhhn.pgp Description: PGP signature - 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
Re: [E-devel] E CVS: libs/evas tilman
On Fri, 18 May 2007 20:12:37 +0200 Tilman Sauerbeck [EMAIL PROTECTED] babbled: Kim Woelders [2007-05-18 11:23]: Enlightenment CVS wrote: Enlightenment CVS committal Author : tilman Project : e17 Module : libs/evas Dir : e17/libs/evas/src/lib/canvas Modified Files: evas_object_textblock.c Log Message: rework how the html entity escape arrays are stored. this saves a few hundred bytes on the data section of the library, kills off ~300 locations, and makes the so 77K smaller. ... I think I understand why this is good for performance. However, it makes it non-trivial to make changes unless the offset table somehow can be auto-generated. Do you have some script for that? Yes, I have C code that does it. It's not in CVS yet because I frown upon the necessary automake changes. mind you - i don't think we will be expanding that in a hurry. you can do all of this via utf-8 anyway. this table is mostly there because of the common use of things like lt; gt; amp; nbsp; copy; etc. - since the markup is html-ish. i added the rest (that i could find) for completeness. Regards, Tilman -- A: Because it messes up the order in which people normally read text. Q: Why is top-posting such a bad thing? A: Top-posting. Q: What is the most annoying thing on usenet and in e-mail? -- - Codito, ergo sum - I code, therefore I am -- The Rasterman (Carsten Haitzler)[EMAIL PROTECTED] 裸好多 Tokyo, Japan (東京 日本) - 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
Re: [E-devel] RFC evas_object_transform()
On Sat, 12 May 2007 07:14:04 GMT [EMAIL PROTECTED] [EMAIL PROTECTED] babbled: Carsten wrote: personally, as an intermediate-step i'd like to simply be able to modify the FILL of an image (or text object) so the FILL can be transformed (we need to be able to disable tiling for images). this will then allow for us to provide transformed image data but within a rect - allowing us to worry about events later but get the benefits of the visual elements now. I've already done all this. No need to 'disable tiling', that's what the fill-spread modes are for. Recall the shaped-gradient I once sent? Same thing.. except that here we take into account borders and hq down scaling (for the software engines). The gl engine is still a problem - if one wants to do things strictly with gl - since I need code to render to a texture buffer (though it may be possible to use a quad mesh or some such?). doing transformed fills in gl is easy - you just need to work out the quad corner points and then draw 1 or more textured quads (probably using gl's clip to limit the draw). that doesn't obviate the need for render-to-texture :) yup. you can convert a scale + rotate INTO a transform matrix, but not the other way around (easily). Not difficult - it's impossible in general.. and much depends on the order one wants the transforms to be applied. in simple cases it's possible - but not generically. if it happens to be a simple translation, or scale it's doable. rotation at the same time will make it hard- add in shearing and you are really going to have a hard time. 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 -- - Codito, ergo sum - I code, therefore I am -- The Rasterman (Carsten Haitzler)[EMAIL PROTECTED] 裸好多 Tokyo, Japan (東京 日本) - 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
Re: [E-devel] RFC evas_object_transform()
On Sat, 12 May 2007 10:58:26 +0200 Simon TRENY [EMAIL PROTECTED] babbled: On Sat, 12 May 2007 07:14:04 GMT, [EMAIL PROTECTED] [EMAIL PROTECTED] wrote : Carsten wrote: personally, as an intermediate-step i'd like to simply be able to modify the FILL of an image (or text object) so the FILL can be transformed (we need to be able to disable tiling for images). this will then allow for us to provide transformed image data but within a rect - allowing us to worry about events later but get the benefits of the visual elements now. I've already done all this. No need to 'disable tiling', that's what the fill-spread modes are for. Recall the shaped-gradient I once sent? Same thing.. except that here we take into account borders and hq down scaling (for the software engines). The gl engine is still a problem - if one wants to do things strictly with gl - since I need code to render to a texture buffer (though it may be possible to use a quad mesh or some such?). For the GL engine, you can probably modify the texture matrix to transform the filling of an image. I'm not sure how well it would work with borders though (but actually, what borders mean when the fill is transformed?) that is a good question. what do borders mean then? i would say that borders remain unscaled at the bounds of the transformed quad (the quad being the bounds of the image post-transform). yup. you can convert a scale + rotate INTO a transform matrix, but not the other way around (easily). Not difficult - it's impossible in general.. and much depends on the order one wants the transforms to be applied. 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 - 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 -- - Codito, ergo sum - I code, therefore I am -- The Rasterman (Carsten Haitzler)[EMAIL PROTECTED] 裸好多 Tokyo, Japan (東京 日本) - 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
Re: [E-devel] RFC gradient clip
On Sat, 12 May 2007 07:16:23 GMT [EMAIL PROTECTED] [EMAIL PROTECTED] babbled: Carsten wrote: the advice is i would like this and it would be good but its not trivial to do right/well and right now i really don't have the time to do it - thus it's one of those backburner when i get to it things. Ahhh... Well, if you're going to do it.. then I'll just leave it be. :) i might not get to it... for years! :) this basically was saying it's a desired feature - so don't give up - but i don't have time now to look into it :) 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 -- - Codito, ergo sum - I code, therefore I am -- The Rasterman (Carsten Haitzler)[EMAIL PROTECTED] 裸好多 Tokyo, Japan (東京 日本) - 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
Re: [E-devel] RFC evas_object_transform()
On Sat, 12 May 2007 09:36:28 GMT [EMAIL PROTECTED] [EMAIL PROTECTED] babbled: Simon wrote: For the GL engine, you can probably modify the texture matrix to transform the filling of an image. I'm not sure how well it would work with borders though (but actually, what borders mean when the fill is transformed?) Two different sets of 'transforms' are involved here: Simon wrote: For the GL engine, you can probably modify the texture matrix to transform the filling of an image. I'm not sure how well it would work with borders though (but actually, what borders mean when the fill is transformed?) One would be those which apply to how the image-fill should behave, ie. border-scale the fill, then rotate/skew that, etc. So, you need to border-scale first to a buffer and then apply any further trans (ie. any rotation/skewing/whatever) to *that* buffer result (and repeat/reflect/restrict as need be). That is basically independent of any engine particulars -- We need to fill-scale to a buffer first in order for the 'pieces' of the image to fit together accurately and without 'seams' when further tansformed and composited. The only way to avoid doing this is if the rendering engine has the ability to deal with the 9 abutting pieces as a 'whole', so that no edges get sampled/composited twice. It's possible that gl may be able to do that via meshes. yes - poly meshes will do this. :) you just need to calculate the 3x3 grid of meshes and how to transform the key points in it. thats a matter of figuring out policy - where does border kick in in the transform world? i would suggest it kicks in POST transform of the bounding quad - the border insets are done in post-transform space as calculated insets. maybe we need to also consider simplifying this. border scaling is only valid for aligned and scaled images. if a transform matrix is applied, it is applied post scale with borders. The second set of transforms would be as applies to the obj as a whole, and there what one actually does depends on what the engines have available as being easiest.. But the semantics would be that the result is that the object as a whole is transformed, after the filling transforms are done. yes - i am beginning to think if we add a transform matrix option - border scaling is done before transform. this means you simply need to take the 3x3 mesh and transform the points with the matrix - then draw the mesh. current fill settings will apply BEFORE the transform (as well as border scaling) If you think of an image object as a rectangle which has been filled with a pattern (in vgfx terminology.. or textured as I prefer to call it), then transforms to the image object (as opposed to the fill, ie. the pattern), are the same as transforming the patterned rectangle. :) 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 -- - Codito, ergo sum - I code, therefore I am -- The Rasterman (Carsten Haitzler)[EMAIL PROTECTED] 裸好多 Tokyo, Japan (東京 日本) - 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
Re: [E-devel] RFC gradient clip
On Tue, 15 May 2007 10:29:49 GMT [EMAIL PROTECTED] [EMAIL PROTECTED] babbled: Gustavo wrote: I want to know how difficult would be to implement support for clip using gradient objects. ... ... We are willing to implement it if you give us some hints :-) Just thought I'd go back to this a bit here, and see if I can give you an idea of what's 'really' needed for this. The way Carsten setup clip-object semantics in evas is that any object can clip any other, and this can be arbitrarily iterated (since a clip object can have a clip object as well). Also, an object can clip any number of objects. It's a very nice idea, though with that kind of generality it's going to be tough to do anything involved very efficiently. However, the real problem in evas right now is just trying to get this implemented *at all*. The way the internals are set up, it's just not feasible.. and neither is doing *anything* much beyond what raster initially set things up for (eg. rotations or any kind of transforms on image objs.. just can't really be 'done' right now, no matter how 'easy' it might be to accomplish that with any of the gfx backends). I've pointed this out several times in the past, but let me explain in a bit more detail exactly why this situation exists and what's needed to correct it. The canvas level has a structure that holds the state for an evas object (eg. size, clip-obj, etc). This structure also has a pointer to any type specific state (ie. things for rects, images, etc). It also has a pointer to a 'render' function that is called whenever a given object needs to be drawn - this function is given for each specific type of object, and has a generic form, eg. draw something to some dst at some point... and such things. The way these object render functions are obtained is in turn via certain other 'engine functions' which are implemented by the various engines, ie. by the various rendering backends. The problem is that this set of 'engine functions' then defines an immediate mode rendering api which is ALL that the canvas can work with. It ties the canvas lib's capabilities to the specific rendering model/api that this set of interfaces defines. Unfortunately, the current such interfaces, ie. the rendering model.. is extremely limited. That's the source of all the problems that evas faces right now as far as extending its capabilities to allow for such things as obj transforms, clipping, texturing, and any number of other gfx aspects. a very good summary/analysis :) Now, one can say Well, let's use eg. a vgfx rendering model, that's a powerful one..., or maybe say No, let's use a compositing rendering model, it's more flexible yet smaller..., or any number of other things.. and how is one to choose? (and the choice must make it easy for it to be realized with various other gfx libs. eg. xrender, gl, cairo, ...) Very easily: Let the canvas api be the rendering model, rather than impose some other. After all, what one wants is to modify 'obj' state, setup things, and draw the 'obj' as need be. the only problem is - this makes engines a lot bigger and more complex. What that means is that one needs to push all relevant canvas level 'object' state down to the engines level, and let things be implemented there as each 'engine' sees fit. Do this, and all the things everyone wants for evas to be able to do, and things that no one has maybe even thought of... will at least be feasible to *attempt* to implement. It simply isn't feasible or reasonable right now to even try otherwise. we do need to push more of it down - but i am not sure we should push it all down. the engine api imho is still best being an immediate-mode api. we just need to expand it more or re-factor it to deal with new operations. 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 -- - Codito, ergo sum - I code, therefore I am -- The Rasterman (Carsten Haitzler)[EMAIL PROTECTED] 裸好多 Tokyo, Japan (東京 日本) - 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
Re: [E-devel] RFC gradient clip
On Tue, 15 May 2007 21:33:29 GMT [EMAIL PROTECTED] [EMAIL PROTECTED] babbled: The way Carsten setup clip-object semantics in evas is that any object can clip any other, and this can be arbitrarily iterated (since a clip object can have a clip object as well). Also, an object can clip any number of objects. right now clip is all about rectangle operations to limit the visible are... or is anything else supported? Nothing else is 'supported' except plain rectangles, but it was intended as decribed.. and the canvas level does try. :) yup. canvas level was kept ultra-generic for the future where inside evas and the engines they got the ability to generate clip mask buffers and intermediate render buffers and use them. The way the internals are set up, it's just not feasible.. and neither is doing *anything* much beyond what raster initially set things up for (eg. rotations or any kind of transforms on image objs.. just can't really be 'done' right now, no matter how 'easy' it might be to accomplish that with any of the gfx backends). I don't get what you mean with rotations/transitions. If clip object is rotated, then you'd consider it rotated and you're done, just like you get its current size. In order to minimize work, we could do regular bounding box clip and when to process scanlines, segment it into intervals, these to be segmented by the next clip object and so on... In the end you get the continuous segments you would blit/blend/transform (in the gradient case). That's one way, software-wise. But it's just not the issue here. Do this, and all the things everyone wants for evas to be able to do, and things that no one has maybe even thought of... will at least be feasible to *attempt* to implement. It simply isn't feasible or reasonable right now to even try otherwise. Well... moving everything to engine will leave us with just a common API and very different implementations, that will be really extensible, trade off is consistency, complexity and possible more. If we extend clip to be any polygon or curve (if we allow ellipses, circles, ... in future) and also enable cumulative transformations we can do many things without all that pain. The former is not difficult, since well known algorithms exists, the later is more related to implementation details, while I know it's possible to do JIT and remove overhead of functions, just getting the operations on i686+software_x11, I'm not sure if it fits other sytems (GL?)... if we trade off memory in favor of performance we can always render to an auxiliary buffer and then do some operation (sub, add, or, and, mul, ...) while rendering clipped objs. That's my understandings so far, I don't know any engine or even the API that well, if I'm wrong just let me know. Well, you see.. the issue here isn't really about being able to implement things with software algorithms, or with some other gfx backend (gl or xrender or cairo or whatever). All that can be done. The problem is that evas just won't let you even try, not without extensively rewriting a large amount of things. Again, the way the internals are setup, every evas object calls a generic 'render' function to draw itself.. and this is an abstract kind of function since the rendering target and the rendering mechanisms can vary (different engines). But, this render function doesn't get directly implemented by the rendering backends. Instead, it uses a set of abstract 'engine functions' which are themselves what get implemented by each rendering backend. Those functions are what the canvas can use to draw an evas object.. and ONLY those functions. the problem here is - this begins to break down for things like textblock - you do NOT want to implement that in the engine. the object render func is probably the best design. for simple objects (rect, even objects) it might be ok to put n the engine. 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
Re: [E-devel] RFC gradient clip
On Wed, 16 May 2007 07:53:01 +0200 (CEST) Vincent Torri [EMAIL PROTECTED] babbled: On Tue, 15 May 2007, Gustavo Sverzut Barbieri wrote: On 5/15/07, [EMAIL PROTECTED] [EMAIL PROTECTED] wrote: 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. Great you're already doing it, at least it will serve as reference if not integrated/used... is there any CVS/SVN/GIT/... we can follow and do some testing? about that, why not doing a branch in cvs ? Branches exist for that kind of stuff. a perfectly sane idea. we use branches rarely - but this is a case where it would be good. we should add jose to the cvs access/devs. jose - if you want, send me your ssh public key (id_dsa.pub in ~/.ssh) then fill in this developer info form: Login:??? IRC Nick: ??? Name: ??? Location: ??? E-Mail: ??? WWW: ??? Managing: ??? Vincent - 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 -- - Codito, ergo sum - I code, therefore I am -- The Rasterman (Carsten Haitzler)[EMAIL PROTECTED] 裸好多 Tokyo, Japan (東京 日本) - 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
Re: [E-devel] RFC gradient clip
On Wed, 16 May 2007 04:12:44 GMT [EMAIL PROTECTED] [EMAIL PROTECTED] babbled: Gustavo wrote: Great you're already doing it, at least it will serve as reference if not integrated/used... is there any CVS/SVN/GIT/... we can follow and do some testing? None except my local copy.. and as it's partly working, partly in the process of being worked out.. until I feel that it's something that's complete enough to be 'usable', it'll likely stay that way. It may well stay that way in any case, if there's little or no interest in having this in evas. In fact, given raster's recent remarks on this, I'm rather inclined to just let it go as of now. It'll have to wait til he decides to get to it instead. :) i'm interested :) definitely! but i just dont have time to really work on it :( i wish i did. if we put this in cvs it's open and visible. likely vincent and gustavo will be interested. 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 -- - Codito, ergo sum - I code, therefore I am -- The Rasterman (Carsten Haitzler)[EMAIL PROTECTED] 裸好多 Tokyo, Japan (東京 日本) - 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