Hello Cristi I'm working in adding skinning support to non trinidad components like tomahawk and sandbox components like you did (as a part of a Google Summer of code project), but using a different approach. I'm not an expert, just a student that wants this behaviour in my projects to simplify the design and implementation of some web applications (specially avoid css configuration hell).
Instead of trying to create a independent module, I created a module that uses the trinidad skin api and make work with tomahawk components using a decorator pattern over the Renderer classes. This approach has its drawbacks, like some incompatibilities between trinidad and tomahawk, but there are a lot people working on this, and now, there is a lot of components that works without problem. Others (t:datatable) are incompatible with StateManagerImpl of trinidad, but you can avoid this behaviour restoring the StateManager implementation of myfaces. I agree with you that it would be cool that the skin api of trinidad was in a separate module, but the dependences are very strong, specially the class RenderingContext, that is used in other parts of trinidad. How to separate it? I ignore this. The code is hosted here: http://code.google.com/p/myfaces-csi/ If you want to take a look (there are some wiki pages describing what I'm doing). It would be cool if you could share your code with Apache 2.0 license, Surely you have some cool ideas about this topic. regards. Att: Leonardo Uribe
