Hi Jaehwan, That's indeed a very cool and needed feature !
On Wed, Sep 14, 2011 at 9:19 AM, Tom Hacohen <tom.haco...@partner.samsung.com> wrote: > Thanks a lot for the patch. This is indeed a very cool and needed > feature. I don't have time (and I'm not the maintainer anyway) to review > the code and apply it, but I do have a couple of questions/comments: > > 1. Does it support multi level group inheritance? I.e group B inherits > from group A and group C inherits from group B. I.e A->B->C ? > 2. I see you use static variables as for context maintaining, why don't > you pass a context structure? In fact, you change to much thing that shouldn't in your patch. As an example you are modifying st_collections_group_parts_part_repeat_events when it's not related at all to the current patch. Please only change the function that should. > 3. Have you tested this properly? What happens when you try to inherit a > non-existing group? > 4. Please add a short explanation about it to the documentation in > src/bin/edje_cc_handlers.c > 5. Please include "@since 1.1.0" in the appropriate places in doc (after > you finish 4). > 6. Please add a changelog entry. 7. Do not increase the size of runtime structure, especially Edje_Part and also Edje_program as much as possible. The reorder is maybe doable when you find the keyword, that would avoid completly the reorder structure inside Edje_Part. 8. Right now, your implementation is a bit like virtual in C++, the group that inherit can change any part the way it want. Maybe, their is two other cases that should be considered : - program and part could be locked and impossible to change at all, throwing a warning if the group try to change the content of this items. - pure virtual part/program, that would prevent the compilation of a group if they are not implemented (like virtual = 0 in C++). > I can't wait to see it get in, I really want to update elm_entry's theme > to utilise this already, this will save me a lot of trouble. :) Oh, yeah, this is a very interesting things to see in. > On 14/09/11 09:37, 김재환 wrote: >> Dear all >> >> In the group of the edc, if you want another group which has just >> different >> color, >> >> you have to write a whole code of the group again and change the color. >> >> It's inefficient. So I made group inheritance. >> >> It inherit the whole group. If want to make new group which has just >> little >> different, >> >> just use group inherit and change the part you want. >> >> >> Done >> >> 1. Group inherit - It copy all data and make new group which has same >> property. >> >> 2. Override - You can change the part you want. >> >> 3. Part reorder - You can change the order of the parts. (use >> insert_before >> and insert_after) >> >> >> Future work >> >> 1. Delete - The part, description, program can be deleted. I don't know if this is really usefull as all the object model I know don't provide this kinde of feature. Do you have a use case for that ? Or maybe you know a language that provide this kind of feature, so I could read about it. >> 2. Inherit from other edc file (is it possible?) Hum, I would say that we don't want that. You don't know what an edc could be. It could be just a macro, or many group, or just one part. I don't think it would be doable. >> I attached the patch file (edje_group_inherit.patch) >> >> Please patch it to edje and test group inherit. >> >> I attached example patch file, too. (elementary_button_edc_example.patch) >> >> You can test with it in elementary. I changed the >> "elm/button/base/anchor" >> in button.edc by using group inherit. >> >> The code decreases 255 line and it works well. Yeah, that's the point :-) >> I think group inheritance is very useful feature. I think none of us will doubt about that ! Thanks for your patch and continue this good and usefull work, -- Cedric BAIL ------------------------------------------------------------------------------ BlackBerry® DevCon Americas, Oct. 18-20, San Francisco, CA Learn about the latest advances in developing for the BlackBerry® mobile platform with sessions, labs & more. See new tools and technologies. Register for BlackBerry® DevCon today! http://p.sf.net/sfu/rim-devcon-copy1 _______________________________________________ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel