You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@forrest.apache.org by "Thorsten Scherler (JIRA)" <ji...@apache.org> on 2006/03/30 09:11:31 UTC

[jira] Resolved: (FOR-366) forrest-templates

     [ http://issues.apache.org/jira/browse/FOR-366?page=all ]
     
Thorsten Scherler resolved FOR-366:
-----------------------------------

    Resolution: Fixed

The dispatcher is doing the described.

> forrest-templates
> -----------------
>
>          Key: FOR-366
>          URL: http://issues.apache.org/jira/browse/FOR-366
>      Project: Forrest
>         Type: Task
>   Components: Skins (general issues)
>     Reporter: Thorsten Scherler
>     Priority: Minor

>
> http://marc.theaimsgroup.com/?l=forrest-dev&m=109959086204887&w=2
> The problem is that if we allow graphical hooks in leather we cannot use 
> it anymore as internal format for our future skin becaused we mix up 
> concerns again. The consequence will be that if we implemend a new 
> function we have to implemend it not only in 1 skin but in x and we have 
> to know where we have to place it in each skin. That means editing the 
> xsl of several different skins.
> The solution could be to use the contracts we have and introduce a 
> templating file that designer can use to place the elements whithin 
> graphical container. This would make it easy to create new styles 
> without programming xsl and still keeping the concept of "dropping in" 
> new functions.
> The following template shows the pelt skin using leather naming 
> conventions and graphical hooks. I will refer to this template as 
> forrest-template (ft).
> <forrest-template>
>    <contract name="branding-trail-path"/>
>    <hook name="intro">
>      <contract name="grouplogo"/>
>      <contract name="projectlogo"/>
>      <contract name="search-input"/>
>      <contract name="nav-main"/>
>      <contract name="nav-main-sub"/>
>    </hook>
>    <hook name="main">
>      <contract name="published-a1"/>
>      <contract name="branding-trail-path-a1"/>
>      <contract name="nav-section">
>        <contract name="nav-section-current"/>
>      </contract>
>      <contract name="content">
>        <contract name="content-pdf"/>
>        <contract name="content-xml"/>
>        <contract name="content-txt"/>
>        <contract name="font-size"/>
>        <contract name="minitoc"/>
>      </contract>
>    </hook>
>    <hook name="clear"/>
>    <hook name="outro">
>      <contract name="siteinfo-legal"/>
>      <contract name="published"/>
>      <hook name="outro-feedback">
>        <contract name="feedback"/>
>      </hook>
>    </hook>
> </forrest-template>
> This template file contains all the information of how the new skin can 
> look like. Now let us see the big picture.
> 1) pipeline A - use the values of the skinconf to determine which 
> elements and functions are used and where.
> ****************   ***********   *********************************
> * skinconf.xml * + * leather * = * customized set of elements CE *
> ****************   ***********   *********************************
> 2) pipeline B - transform the customized elements with the 
> forrest-template to create the final page.
> ******   ******
> * CE * + * FT * = final skin output
> ******   ******

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira