On Sat, 2005-04-02 at 14:04 +0100, Kevin wrote:
> Hi,
>
> I'm using 0.7-dev and wondered if it was possible
> to use other text elements from processed skinconf
> as done in group.svg and project.svg.
>
> ie. from
>
> forrest run
>
> http://localhost:port/images/group.png
>
> shows the skinconf text in group.svg:
>
> <for:group-name />
>
> --
>
> The 'for' namespace allowed <for:project-name />
> but not <for:year /> which was in skinconf too?
>
Yes and no.
The for:group-name will be matches later on in
{forrest-trunk}/main/webapp/resources/stylesheets/project2text.xsl
Here you find:
<xsl:template match="for:project-name">
<xsl:value-of select="$config/project-name"/>
</xsl:template>
<xsl:template match="for:group-name">
<xsl:value-of select="$config/group-name"/>
</xsl:template>
</xsl:stylesheet>
...and no <for:year />!
You would need to add new matches here if you want to extend the
functionality.
> After a refresh I expected group.png to show the
> year as it did changing group-name to project-name?
>
Yes and no.
Actually for project-name the match was on the project.svg which has
<for:project-name/>
> Could someone help with my understanding of how
> this works. Thanks.
>
You will need into the above xsl's and where we match them to really
understand what is going on. ;-)
HTH
> --
>
> My aim was to get the svg linearGradient stop-colors
> in skinconf (from colors.color.tab-selected etc.) eg.
> <svg-stop-color-1>#4c6c8f</svg-stop-color-1>
> <svg-stop-color-2>#e5e4d9</svg-stop-color-2>
> so the project and group logo colors would match the
> skin.
>
An easy way would be (I had no time to test!) but it gives you the idea
(I hope ;-)):
a) extend the skinconf.dtd to allow and add to skinconf.xml:
<svg-stop>
<stop style="stop-color:white" offset="0"/>
<stop style="stop-color:lightgreen" offset="1"/>
</svg-stop>
b) change project.svg and group.svg and change:
<linearGradient id="gradient" x1="0" y1="0" x2="0" y2="1">
<stop style="stop-color:white" offset="0"/>
<stop style="stop-color:lightgreen" offset="1"/>
</linearGradient>
to:
<linearGradient id="gradient" x1="0" y1="0" x2="0" y2="1">
<for:stop />
</linearGradient>
c) change project2text.xsl and add
<xsl:template match="for:stop">
<xsl:copy-of select="$config/svg-stop/*"/>
</xsl:template>
This solution would change the project and group logo the same way. If
you want to have it different you need to do something like :
in skinconf.xml
<project-svg-stop>
<stop style="stop-color:white" offset="0"/>
<stop style="stop-color:lightgreen" offset="1"/>
</project-svg-stop>
...and change all above to match the new situation. ;-)
> Used in an an svg <style> element:
>
> <style type="text/css">
> .svg-stop-color2 {
> stop-color: <for:svg-stop-color-2 />;
> }
> .svg-stop-color1 {
> stop-color: <for:svg-stop-color-1 />;
> }
> </style>
>
That is as well possible but will cost a wee bit much work.
> The above shows the idea probably need CDATA tags.
>
HTH and if it is working please create a patch, add it to our issue
tracker and we will apply the patch.
> --
>
> Kevin.
>
salu2
--
thorsten
"Together we stand, divided we fall!"
Hey you (Pink Floyd)