forrest-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Kevin <forr...@kegcl.demon.co.uk>
Subject Re: dynamic theme switcher (was: svn commit: r329808)
Date Wed, 09 Nov 2005 18:12:00 GMT
On Mon, 2005-11-07 at 20:28 +0100, Thorsten Scherler wrote:
> El sáb, 05-11-2005 a las 14:43 +0000, Kevin escribió:
> > My thoughts are:
> > 
> > branding-theme-switcher-profiler="false" needed a patch attached
> 
> The problem that I see on the patch is that if you have inline css in
> your view means that their will always be executed due to the nature of
> css. Everything that comes last will be used! Meaning that when using
> inline css you are not able to deactivate them anymore.

Consider a user not using branding-theme-profiler.ft in their view file
so there is no inline css. User is happy with <forrest:css ... to add
their alternate stylesheets and would like to use branding-theme-
switcher.ft to switch them. Setting branding-theme-switcher-profiler to
false didn't work so the patch (string "false" not boolean false). 

> > 
> > If branding-theme-switcher-defaultTheme="Pelt"
> > In view file have (<forrest:css ...) entries like below:
> > 
> > url="pelt.basic.css"
> >   rel="stylesheet"
> > (persistent | common - Is disabled=true allowed here?)
> 
> I comment just on this one. A theme switcher should not have common
> persistent stylesheet because they will interfere with other
> stylesheets. The current solution is using "common" css only for
> color-profiling to not adding the basic.css to every profiled css.

If I say another way. Structurer sends a fixed html layout to the
themer. This is a two column css layout with header and footer (S1).
Layout/structure is persistent then we switch color. In the future
structurer may be configurable and deliver a three column layout (S2)
or even a Netscape 4 implementation using old layer tags (S3) ;) 

url="s1.common.css"
  rel="stylesheet"
(persistent no title)

url="s1.fonts.css"
  rel="stylesheet" title="S1-Default"
url="s1.colors.css"
  rel="stylesheet" title="S1-Default"
(preferred have title)

A user may separate concerns from common layout with fonts and colors.
Collectively these three css are the default theme for that structure.

> > url="pelt.screen.css"
> >   rel="stylesheet" theme="Pelt"
> > (preferred | default - Is disabled=true allowed here?)
> > 
> > url="pelt.screen.css"
> >   rel="alternate stylesheet" theme="Pelt-Default"
> > (switchable back to default)
> > 
> 
> What is the difference between "pelt"? Why 2? 
> What do you mean by disabled=true? Do you mean the jscript disabling of
> the css? If so yes you can disable evrything. ;-)

Yes disabled=true in jscript. IMO all css with rel="alternate
stylesheet" will have disabled=true set by browser. IMO css that
are persistent and preferred are allways disabled=false and
should not be touched by jscript. Now the first alternate below
is to switch colors back to the default if another alternate has
been chosen. IMO only alternate stylesheets go in the jscript theme
chooser menu.

url="s1.colors.css"
  rel="alternate stylesheet" title="S1-Pelt"
(alternate to switch colors back to default)

> > url="pelt.forrest.css"
> >   rel="alternate stylesheet" theme="Pelt-Forrest"
> > (switchable)

url="s1.colors.forrest.css"
  rel="alternate stylesheet" title="S1-Pelt-Forrest"

> > url="pelt.collabnet.css"
> >   rel="alternate stylesheet" theme="Pelt-Collabnet"

url="s1.colors.collabnet.css"
  rel="alternate stylesheet" title="S1-Pelt-Collabnet"

> > url="default.css"
> >   rel="alternate stylesheet" theme="default"
> > url="leather-dev.css"
> >   rel="alternate stylesheet" theme="default"
> > (one switchable as both have same title)

url="s1.leather-dev.css"
  rel="alternate stylesheet" title="S1-Leather"
url="s1.default.css"
  rel="alternate stylesheet" title="S1-Leather"

> > IMO default.css and leather-dev.css could be combined together as
> > leather.screen.css (leather-dev.css turns off - "display: none;"
> > Pelt specific layout/structure). Is it default.css or common.css or
> > just another switchable?
> 
> I agree that we need a cleanup of all this css-files but like Cyriaque
> already stated I am  -1 to combine them. IMO leather-dev.css and
> default.css has to go away as soon as I manage to move default to
> common. Then we need a common.css out of both.

I agree. As Cyriaque said the leather-dev.css is disabling part of
the layout structure (S1). Though default.css (common) contains Leather
fonts and colors it would work as an alternate as S1-Leather above and
below S1-Leather-Hot S1-Leather-Cool. IMO the name default.css (common)
should be leather-complete.css.

> > 
> > url="leather.screen.css"
> >   rel="alternate stylesheet" theme="Leather-Default"
> > (switchable)
> > 
> > url="leather.hot.css"
> >   rel="alternate stylesheet" theme="Leather-Hot"
> > (switchable)

url="s1.leather-dev.css"
  rel="alternate stylesheet" title="S1-Leather-Hot"
url="s1.default.hot.css"
  rel="alternate stylesheet" title="S1-Leather-Hot"

url="s1.leather-dev.css"
  rel="alternate stylesheet" title="S1-Leather-Cool"
url="s1.default.cool.css"
  rel="alternate stylesheet" title="S1-Leather-Cool"

> > etc.
> > 
> 
> Color profiling right now is only possible for one theme (the main theme
> for the current request).

I think it is possible with alternates as above. If my explaination is
ok. The main theme is S1-Default and alternates are:
S1-Pelt, S1-Pelt-Forrest, S1-Pelt-Collabnet, etc
S1-Leather, S1-Leather-Hot, S1-Leather-Cool, etc
 
> > If branding-theme-switcher-defaultTheme="default"?
> > Hmmm I'll look closer at the script to understand this if
> > idea above is correct.
> > 
> > I understand if branding-theme-switcher-profiler="true"
> > <style> css with the same title as <link> css will have
> > disabled set false IMO only when rel="alternate stylesheet"
> > and disabled set true for other rel="alternate stylesheet".
> 
> Wow. sorry do not understand.

OK. I've avoided talking about inline css this time.

> > Is disabled=true allowed here? Was a comment next to
> > persistent and preferred css above. Would all browsers
> > allow it? The script works great just trying to understand.
> > 
> 
> Yes disabled=true is for all browser that support the jscript spec in
> this regard. IMO to get closer to a real theme switcher we should not
> use persistent css because they will/can interfere with other css

As above. Yes disabled=true for all but *one* alternate css (the current
color css or leather) which has disabled=false. I have used persistent
css in this discussion of css color switching and alternates override
colors. Then the special case of Leather which needs to disable part of
the layout and can override fonts and colors.

Not sure what you mean. How will persistent interfere with other css.

Anyway Thorsten thanks for your help I don't want to side track you
again from other work. These are my thoughts to get IE and Moz browsers
to behave the same. Is there someone to test theme switcher with Opera?

Kevin

> salu2
> 
> > Kevin



Mime
View raw message