smart boy, you figured it out
yes, I try to get the translated styleClass and if I don't get anything, I
do nothing
about "..Classes" properties
as mentioned above I try to get 'rowClass1', 'rowClass2' and so on until I
don't get the translated styleClass
about registering renderers
well, I have a full delegating RenderKit
but I'm still working on how to add it
because I have to let the user define it's own render-kit and then decorate
it
I still have some small things to do
after that, I'll put the sources in a public place so everybody can
contribute
regards,
Cristi Toth
-------------
Codebeat
www.codebeat.ro
On 8/2/07, Leonardo Uribe <[EMAIL PROTECTED]> wrote:
>
> Hi Cristi!
>
> Here are some comments about this:
>
> Well the nice thing was that I don't need to define the selectors
> statically somewhere
> f.e. the selectors for tomahawk are made on this rule:
> mf|fully_qualified_component_Class::style_property_name:css_pseudo_class
>
> I get to the same selector solution at start of my project too, I say this
> to my graphical designer, but he doesn't understand this, because is too
> much complicated to do something like this in my case:
>
> af|javax_faces_component_html_HtmlOutputText::style:hover{
>
> }
>
> if is a tomahawk component:
>
> af|org_apache_myfaces_component_html_ext_HtmlOutputText::style {
>
> }
>
> But the designer see in the jsp something like this
>
> <h:outputText ..... />
>
> or
>
> <t:outputText ..... />
>
> He had to ask me every time for each component what is the selector, and
> look through tomahawk code
> for the correct class name. It could be more clear if you can do this:
>
> h|outputText::style
> {
>
> }
>
> But you have to create one class per component that looks something like
> this:
>
> package org.apache.myfaces.custom.skin.html ;
>
> import org.apache.myfaces.custom.skin.AdapterSkinRenderer;
>
> public class HtmlOutputTextSkinRenderer extends AdapterSkinRenderer
> {
>
> public HtmlOutputTextSkinRenderer()
> {
> super("h", "outputText");
> }
> }
>
> Note that the price for an increase of code is very low, compared with the
> easy of use and speed of code for my designer.
>
> Note that this is my point of view, not the absolute truth.
>
> about the properties ending in Class but not being a StyleClass property
> the only thing you shouldn't do is declare that selector in the skin
>
> So you hacked the map that contains the skin selectors (in the original
> Skin implementation of trinidad hide this map) and I suppose that you can
> find the selectors mapped to a specific component ?. or you call to a class
> that works like RenderingContext like this:
>
> styleClass = arc.getStyleClass(selector);
>
> And if does not return anything you don't set the property through
> reflection?
>
> about properties with style classes list (rowClasses, columnClasses)
> it's very simple : you can define the selectors with the suffix
> rowClass1,rowClass2, ...
>
> Cool idea! But for doing this you have to search through the selectors
> that matches for an specific component (this feature is not inside trinidad
> skin implementation)? How you are doing this?
>
> for any uncommon skinning behavior, you just have to extend the base
> renderer
>
> How do you register the extended the base renderer? How does he call to
> the base renderer in tomahawk?
>
> Sorry if I ask many questions but I want to do the best for the community
> (and for my projects too!!). If you could publish your code with Apache
> 2.0 license, It would be nice ;)
>
> regards
>
> Att: Leonardo Uribe
>
>
>
--
Cristi Toth
-------------
Codebeat
www.codebeat.ro