Hi esteban

Next time I have a look at Bloc2 I will check if there is such concept and see how we can package it.

Stef
Le 2/8/16 à 12:06, Esteban Lorenzano a écrit :

On 02 Aug 2016, at 08:59, stepharo <[email protected] <mailto:[email protected]>> wrote:

Hi esteban

It looks cool. For the error could you use a different one because I cannot read it.

Else when I tried to use the same way than Setting to manage skins it did not work

because theming is a lot of things:

- a skin
- a color palette
- etc.

for now, I would be happy with extract the color palette into a “StyleSheet” object… this could be modified in settings (while a complete skin not).

Esteban

because a skin is not just color it can be behavior and you have to attach it somewhere.

Now in bloc 2 :)

    you can the look (that can be expressed with CSS)

and you have skins (the behavior: a date can be displayed as a calendar vs. a roller).

In this model a theme (color) will just be similar to applying a new CSS.

Stef


Le 1/8/16 à 11:13, Esteban Lorenzano a écrit :
Hi,

For one of my side-projects, I made a new theme for Pharo (still no name, I was planing to call it “Dark Metal” or something like that. Is a variation on the Dark Theme but “our” dark theme is more brown and this one is more blue (see attached)… I wanted to publish it to push it but then I arrived to an unexpected problem: For Spotter and GTTools in general, theming is not done following current theming approach. Instead, they made a full hierarchy of objects.

IMO this is plain bad. I understand the attempt to decouple, but now that means if I want to create a new theme, I need to create my theme object with colors I want and then also I need to create an undetermined number of classes (at least one for each tool, but there is also a hierarchy of things there)… anyway, this DOES NOT scale. Because each tool will have to have a “theme class” for each existing theme… How themes (skins, bah) work in all word is to have a color palette and then tools takes them (they can “play” a bit with this palette, but need to always respect the palette).

Then, I will commit a SLICE modifying the “themer” classes to take colors from the current theme (instead of have them hardcoded). But of course, how theme work now is not good because they mix “theme” (how they display) and “skin” (color palette). I will also extract the palette to where should have always been (some kind of a style sheet object)… who also should have been editable in settings so people can tweak their configuration.

I didn’t wanted to touch this before, because this will supposedly change with brick, but honestly this will not be ready for Pharo 6 and this is annoying (also, I want to publish my theme and I do not want to add overrides all around :P)

cheers,
Esteban


<Mail Attachment.png>



Reply via email to