Re: Gtk3 and theming - a proposal (with code)



On Wed, Oct 8, 2008 at 3:50 PM, Xavier Bestel <xavier bestel free fr> wrote:

[...]

> there's another project called [1]Manju (also with code [2]available),
> which seems to use SVG instead of CSS. Could you comment on the
> differences between these approaches, if you know them ?

Quoting from [1]:

<<The Manju project aims at creating graphical widget toolkit themes
from SVG files in a toolkit independent fashion. It combines the idea
of a pixmap theme engine, Jimmac's "One Canvas Workflow", SVG markup
features and Inkscape export functionality to fully automate the
creation of a scalable and stretchable pixmap theme from an SVG
source.>>

AFAIK Manju is generating a binary theme package [2, 3], from a single
SVG file. There is a naming spec for svg elements in place [4], so the
package generation tool can create PNGs from the theme components.

The CSS engine was born out of desire for a more powerful non-code
theming approach. There is a small enhancement patch against librsvg
in the works, once that's in it's just as well possible to design
themes in a single SVG canvas. Manju is exporting theme parts at
specific sizes to avoid ugly scaling effects, this is not needed in
the CSS engine because it relies on CSS-defined borders and will
support border-images [5] in the future.

Unlike manju, "GCE" (the gtk-css-engine) did initially focus on
delivering a gtk-oriented solution, but work is now underway to add
support for clutter and clutter's "Tidy" toolkit to the spun-off
"libccss" [6].

To the best of my knowledge it is not yet possible to use a manu-based
theme, there is no engine yet. On the other hand it is very well
possible to test CSS engine themes in "TheWidgetFactory" [7], the
upcoming release will be usable desktop wide.

It would probably be possible to use manju-created themes with GCE,
either by changing manju's theme creation process, or by changing the
way how themes are loaded in GCE, but I do currently not see any
advantage in using a binary theme package. On the contrary, the
"CSS-with-single-pixmaps/SVGs" approach lends itself very well to
rapid protoyping.

[1] http://labs.imendio.com/?p=21
[2] http://groups.google.com/group/manju-project/browse_thread/thread/2a93dbe94e40e1ec
[3] http://pages.testbit.eu/manju/package-spec.html
[4] http://pages.testbit.eu/manju/theme-spec.html
[5] http://ejohn.org/blog/border-image-in-firefox
[6] http://lists.o-hand.com/clutter/1904.html
[7] http://www.stellingwerff.com/?page_id=10

- Rob


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]