forrest-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From thorsten <thors...@apache.org>
Subject Re: synchronising skins leather-dev and pelt
Date Tue, 05 Oct 2004 17:27:49 GMT
David Crossley wrote:
> thorsten wrote:
> 
>>David Crossley wrote:
>><snip/>
>>
>>>My mission is to start looking at the old forrest-site and
>>>krysalis-site skins to ensure that we have all capabilities
>>>in the current pelt skin. While doing that i was also
>>>intending to add whatever to leather-dev and if i have
>>>trouble then just make a note somewhere.
>>
>>Sounds like a good plan. I reckon I forgot some stuff while developing 
>>pelt. ...
> 
> 
> Ah, you confirm my fears.
> 
> I reckon that lots of *good stuff* gets dropped
> along the way during development. In my view,
> the big problem with Open Source is that very few
> people consolidate and rather rush on to new things.
> 

Is that a heads-up for me? ;-)
Yeah, you are right. I may not have tested all features, but I reckon 
the one who wrote the skin will not find all the bugs by him(her)self.

Anyway for my first skin IMO there are not too many issues with pelt so 
far. ...and I think I "just" forgot the additional format links.

> 
>>Just drop everything in the responding semantic container (sc) and 
>>I will take care about the display. Having everything in sc will it make 
>>easy to find an element and alter the display. :)
>>
>>
>>>I am not yet a CSS expert, so will need help.
> 
> 
> Er, please give an example of what you mean by "dropping in".
> 

<div id="content-main">
<div title="Portable Document Format" id="content-pdf">
<a class="dida" href="index.pdf"><img alt="PDF - icon" 
src="skin/images/pdfdoc.gif" class="skin"><br>
         PDF</a>
</div>
</div>

"Dropping in" means just add the matches within the semantic container 
where the content semanticly belongs to. e.g.
<div title="XML" id="content-xml">
<a class="dida" href="index.xml"><img alt="xml - icon" 
src="skin/images/xml.gif" class="skin"><br>
         xml</a>
</div>

Would be dopped in like:
<div id="content-main">
<div title="Portable Document Format" id="content-pdf">
<a class="dida" href="index.pdf"><img alt="PDF - icon" 
src="skin/images/pdfdoc.gif" class="skin"><br>
         PDF</a>
</div>
<div title="XML" id="content-xml">
<a class="dida" href="index.xml"><img alt="xml - icon" 
src="skin/images/xml.gif" class="skin"><br>
         xml</a>
</div>
</div>


> 
>>:) Me neither. I hope that people will start contributing css styles for 
>>Leather that we have a pool of styles to choose. Maybe we should 
>>announce a design competition for leather-dev based css-designs.
> 
> 
> Wait. Let us make that "leather" first.
> Then i thought that you chose "corium" for the next skin.
> 

Yeah, that is also right. The aim of "leather" is to established a 
semantic container approach for div elements that I can use a base for 
all upcoming skins. I mean once I finished leather (with style) I then 
can use this DOM (and style) for "corium" as well. Actually I plan to 
base corium internal on leather DOM.

*Leather*
This is the first skin that follows a standard regarding naming 
conventions and semantic containers. It has the following top level DOM 
structure.

container
  +-branding
  +-search
  +-nav
  +-content
  +-siteinfo

Unlike other skins I did not use graphical hooks at all. That makes it 
possible to add/change/override any style information with ease. Another 
thing is that devs do not have to worry about design any more, because 
they can drop the content within the corresponding semantic container. 
Later on that can be overridden by providing custom css-files or using 
the skinconf <extra-css/>. This input will come from designers. Leather 
now has:
.
|-- base-contracts.css (all misc. css contracts e.g. search)
|-- basic.css (html elements only e.g. h1)
|-- branding.css (everything that is branding a site e.g. logo)
|-- navigation.css (everything related to navigation e.g. menu)
`-- profiling.css.xslt (overriding the default color profile by custom 
color profile)

Every user or designer can provide custom css-files that will change the 
style. The target is to get away to alter site2xhtml et. al.. I hope to 
attract some designer to submit styles. If we will have some provider 
than ...

*Corium*
Corium is the first skin that gives you the full control over the 
outcoming DOM structure and style. I will base it internal on leather. 
The resulting transformation is then more site2leather.xsl (rather then 
site2xhtml.xsl). Having this common base I will then provide different 
leather2x.xsl. e.g. leather2zenCssGarden.xsl.

[RT] NOTE
This stylesheets are based on config files where a binding takes place.
e.g. zenCssGarden uses a special DOM structure (have a look at the 
source). Matching the different DOM elements of zen with the 
corresponding elements of leather should be configurable.
[RT] END NOTE

The aim is that the combination of DOM-provider and CSS-Style provider 
will be added to forrest.properties and the user can choose a broad 
ranges of styles. Like
# If you want to use leather2zenCssGarden.xsl as
# final transformation than use e.g.
#forrest.skins.DOM.provider = zenCssGarden

# If you want to use other css-files then the default ones than
# override it here. Point to the location of the dir containg the files
#forrest.skins.CSS.dir = /home/thorsten/style/zenCssGarden/someSkin
#forrest.skins.CSS.dir = http://provider/style/someSkin

King regards
thorsten


Mime
View raw message