Resending it......
Please let know your opinion regarding adding @import support in Trinidad
for importing skins (see below).
thanks,
Piyush
----- Original Message -----
From: "Piyush Hari" <[EMAIL PROTECTED]>
To: <adffaces-dev@incubator.apache.org>
Sent: Wednesday, November 15, 2006 4:05 PM
Subject: Re: Custom Skins for Different Form Factors
Hello,
I would like to revive the issue with creating custom PDA skins(see emails
below). I propose adding the @import support so that a user can create
plus-pda skin by extending the simple-pda and importing the plus-Desktop
skin.
please read the emails below and let me know what you think about this. I
will create a JIRA for the same.
Take Care,
Piyush
----- Original Message -----
From: "Jeanne Waldman" <[EMAIL PROTECTED]>
To: <adffaces-dev@incubator.apache.org>
Sent: Wednesday, August 23, 2006 1:44 PM
Subject: Re: Custom Skins for Different Form Factors
Hi Joey,
We have simple-desktop and simple-pda skins.
You can create a pda or desktop skin by specifying the render-kit-id in
your skin.
The pda skin extends simple-pda skin. The desktop skin extends
simple-desktop.
You created a plus-desktop skin that extends simple-desktop skin.
You like that skin a lot and it has a lot of definitions. Now you need a
pda version.
You want to use the plus-desktop skin, but you want it to extend
simple-pda instead.
If you make your plus-pda skin extend plus-desktop skin, it will go
through
simple-desktop. (you've verified this, right?)
You don't want that. You want your plus-pda skin to extend
plus-desktop skin, but then you want that to go through simple-pda
instead of simple-desktop.
I've thought about this some and I think we need a concept of a
render-kit-neutral skin.
This skin, if picked, will default to extend simple-desktop.
But if this skin is used as a base skin for plus-pda, it will eventually
extend from simple-pda (the
simple skin with the same render-kit-it).
Another option is to allow imports in the skinning .css file. So you can
import the stylesheet definitions.
We have this feature in XSS, which is why you see simple-pda.xss imports
simple-desktop.xss.
I like the 'abstract' skin idea better. Resource bundles aren't a part of
the css file, and you might
want to inherit those, too.
I don't know how hard/easy it is to implement these ideas.
One question, how much will need to change if you forget extending
simple-pda, and have your
plus-pda skin extend plus-desktop which extends simple-desktop? If it is
just a few fonts, then it might easy enough
to go that route until we have something in place.
Joseph Rozier wrote:
Hello,
The current method of skin inheritance leads to some issues when a
developer wishes to create a skin family targetting desktop and PDA.
There's no way to make a large number of changes that affect both
desktop and pda in one place, and then tweak what needs to be tweaked
for desktop or PDA. For example, I may want to change the color in
both desktop and PDA, but I might want to change the font size to 20
for the desktop and 6 for the PDA.
The reason for the problem is that each skin can only extend
Trinidad's simple skin. There is no way to have an abstract "plus
skin" that makes the common changes, and then have a "plus-desktop
skin" and "plus-pda skin" that makes desktop/pda specific changes.
(Also note that today things are a bit odder, because there's a
simple-pda.xss that extends simple-desktop.xss. If I specify a skin
in trinidad-skins.xml that is for use with the desktop RenderKit, its
css inherits from simple-desktop.xss. If I instead specify its use
for the pda RenderKit, its css inherits from simple-pda.xss. However,
this doesn't lead to a solution because my plus.css may override a
font that is specified in simple-desktop.xss or simple-pda.xss, so
that font would now be used on both desktop and pda.)
I'm hoping that the skinning experts can provide insights/solutions to
this problem.
Thanks,
Joey