Waldorf theme

453 views
Skip to first unread message

Francois Tonneau

unread,
Apr 10, 2016, 1:17:57 PM4/10/16
to
For those interested, this link:

http://www67.zippyshare.com/v/GVAunbwq/file.html

gives access to waldorf.tlc, a script with the crunchbang-waldorf theme for linux. This is not a package file, only a regular script. To test the theme, just copy the waldorf.tcl file to your working directory, source waldorf.tcl at the start of any of your scripts, and include this instruction:

ttk::style theme use waldorf

I would appreciate feedback on how the theme works. It is not _exactly_ like the Gtk+ theme, but should be close enough. The buttons etc. should react correctly when hovered by the mouse, and should also stand font resizing (within reasonable limits).

Brad Lanam

unread,
Apr 10, 2016, 2:08:55 PM4/10/16
to
a) There seems to be a problem with the positioning of the arrow in the comboboxes. I went through some of the other themes, and didn't see
an issue like this.

http://gentoo.com/waldorf-1.png

b) This is on my end: Changing background colors is always a
challenge with each different theme. I think I'll have
to put in some work to get this right with your theme.

http://gentoo.com/waldorf-2.png

Horizontal separator is not right:

http://gentoo.com/waldorf-3.png

For my particular use, I removed the font setting in the theme.

Font resizing works fine.

Opinions:
- I don't think the theme should be trying to set the font.
- I find the background color a bit dark.
- I'd like a little more color in the checkboxes/radio buttons so they pop out better.

Brad Lanam

unread,
Apr 10, 2016, 2:30:51 PM4/10/16
to
Also, this repository:

http://chiselapp.com/user/sgolovan/repository/ttk-themes/index

includes a demo program that has most every widget in it (it seems to be
missing the separators). And its combobox test isn't going to show
the issue I found.

Hmm...I seem to have missed the aquablue theme, and he doesn't have the 'black' theme.

Francois Tonneau

unread,
Apr 12, 2016, 6:10:13 PM4/12/16
to
Brad, thanks for your feedback, it is much appreciated.

About issue (a), the problems of arrow positioning in combobox. I never had problems on my side, but in any case, here is a new version of the theme:

http://www105.zippyshare.com/v/hq9oSrgC/file.html

(as before, just source it and use ttk::style theme use waldorf). The combobox layout is now closer to the original, would you mind testing the new version and see if it works better?

About issue (c), the problems with the separators. On my side the separators are always fine _provided_ I specify their orientations explicitly (with the -orient option). Perhaps you just create your separators without specifying their orientation? I have found that the classic ttk themes figure out the correct orientation by themselves (presumably they take orders from the geometry manager), but waldorf fails, you must specify orientation explicitly. (Note that other custom themes such as plastik etc. do not try to theme the separators, perhaps for good reason...) This link:

http://www8.zippyshare.com/v/MnfNpQrv/file.html

is a screenshot of waldorf with all the widgets. As you can see, vertical and horizontal separators are fine.

About issue (b), what the widgets look like if you change the background color. The theme is best run on its own default colors, but this link:

http://www94.zippyshare.com/v/I54Qtmia/file.html

shows you what the same screenshot looks like with the background color of your app, a kind of purple #C1A3C1. I just customized the theme by writing:

ttk::style configure "." -background #C1A3C1
ttk::style configure "." -troughcolor #C1A3C1
ttk::style map "." -background [list {active} #E1C3E1 {focus} #C193B1]

This takes care of issue (b), which has to do with the default active/focus colors of widgets such as radio and check boxes. Another good thing about the theme is that it allows notebook tabs in any position (= es for example).

Francois Tonneau

unread,
Apr 12, 2016, 6:53:49 PM4/12/16
to
I forgot to say that the screenshots have been made with the new version (better pixmaps with gray borders eliminated, etc.).

Brad Lanam

unread,
Apr 12, 2016, 7:02:07 PM4/12/16
to
On Tuesday, April 12, 2016 at 3:10:13 PM UTC-7, Francois Tonneau wrote:
> Brad, thanks for your feedback, it is much appreciated.
>
> About issue (a), the problems of arrow positioning in combobox. I never had problems on my side, but in any case, here is a new version of the theme:
>
> http://www105.zippyshare.com/v/hq9oSrgC/file.html

Yes, that fixes the combobox issue.

http://gentoo.com/waldorf-d.png

> About issue (c), the problems with the separators. On my side the separators are always fine _provided_ I specify their orientations explicitly (with the -orient option). Perhaps you just create your separators without specifying their orientation? I have found that the classic ttk themes figure out the correct orientation by themselves (presumably they take orders from the geometry manager), but waldorf fails, you must specify orientation explicitly. (Note that other custom themes such as plastik etc. do not try to theme the separators, perhaps for good reason...) This link:

Oops. I had -style BDJ.Vertical.TSeparator for a horizontal separator.
None of the other graphical themes made this problem apparent.

(d) The radiobutton text acts differently than other themes.

http://gentoo.com/waldorf-e.png

In this case, I am expanding the widget with -sticky ew
as I want to fill the width of the column.
I use -anchor e for the label on the second line.

ttk::radiobutton ${w}.rb$r \
-variable vars(mqueue.sel.$qsel) \
-style Listing.BDJ.TRadiobutton
grid {*}$sl -in $w -row $r -padx 4p -sticky new

Opinions:
- I like the spinbox styling.
- Somehow the scrollbar styling within the combobox appeals to me.
- I don't think I would use this style for myself, as I find it too
low contrast.


Brad Lanam

unread,
Apr 12, 2016, 7:10:53 PM4/12/16
to
Do you know what licensing terms you will be using for this theme?

Francois Tonneau

unread,
Apr 13, 2016, 9:10:49 AM4/13/16
to
Brad, I am pleased to know that the combobox and separator issues have been fixed. About issue (d) (radio-button text positioning), yet another link:

http://www112.zippyshare.com/v/l4odpaOl/file.html

Could you please check whether this version fixes issue (d)? As usual, your feedback is much appreciated.

Brad Lanam

unread,
Apr 13, 2016, 10:44:38 AM4/13/16
to
Yes, that fixes the issue with the radio button.
I'm not seeing anything else wrong using my application.
It's looking good.
Anyone else out there like to review this theme?

mse...@gmail.com

unread,
Apr 14, 2016, 4:30:56 AM4/14/16
to
On Wednesday, 13 April 2016 00:53:49 UTC+2, Francois Tonneau wrote:
> I forgot to say that the screenshots have been made with the new version (better pixmaps with gray borders eliminated, etc.).

Hi I tried this out and have a few observations.

1) I use the 'ttk::themes' command to give the list of themes not 'ttk::style theme names' and waldorf does not appear, it is necessary to add
package provide ttk::theme::waldorf 0.1
in the file for this to work.
2) I use alot of '-style Toolbutton' toolbar buttons and there is no definition in your code I added
ttk::style configure Toolbutton -padding -7 -relief flat
ttk::style configure Toolbutton.label -padding 0 -relief flat -anchor center -justify center

image create photo ttk::theme::waldorf::blank -data {
R0lGODlhGAAYAIAAAP8AAAAAACH5BAEAAAAALAAAAAAYABgAAAIWhI+py+0Po5y02ouz3rz7D4biSJZTAQA7
}
ttk::style element create Toolbutton.border image [list \
ttk::theme::waldorf::blank \
{!disabled pressed} ttk::theme::waldorf::button_p \
{!disabled active} ttk::theme::waldorf::button_a \
{!disabled focus} ttk::theme::waldorf::button_f \
{disabled} ttk::theme::waldorf::blank \
] -border 11 -sticky nsew
these lines as a quick addition and they look OK.
3) the other bitmap themes place their code/images in the ttk::theme namespace so I updated your code to this standard as well.
4) You did not reply to the license question from Brad

In any case this is a nice simple flat theme.
I will try and look into adding a background dark/light option like your purple idea.

Martyn

Francois Tonneau

unread,
Apr 14, 2016, 6:33:01 AM4/14/16
to
> 1) I use the 'ttk::themes' command to give the list of themes not 'ttk::style theme names' and waldorf does not appear

Thanks, I will add 'package provide ttk::theme::waldorf 0.1' as you suggest.

> 2) I use alot of '-style Toolbutton' toolbar buttons and there is no definition in your code

True, I provided code only for the list of themed widgets that appears in the latest (2nd) edition of _Tcl and the Tk toolkit_, p. 345.

> 3) the other bitmap themes place their code/images in the ttk::theme namespace so I updated your code to this standard as well.

Thanks, I will adjust the code in this direction, but I hate the use of an I array variable with all the images in it, as well as having the whole code indented within the namespace eval brackets.

> In any case this is a nice simple flat theme.

It is nice ;-). E.g., see this custom file dialog:

http://www99.zippyshare.com/v/G2pFXp5C/file.html

and compare with the default one.

But the theme is not flat. The gradients on the buttons are unobtrusive because they must do their best when stretched vertically by large fonts.

> 4) You did not reply to the license question from Brad

True, I am crassly ignorant of licensing and I have contacted Christian back-channel for more info. On the web site that Brad recommended most of the themes have no obvious licensing aside from a "copyright {author-name}". In my case, the theme simulates the _looks_ of the Waldorf Gtk+ theme on Linux Crunchbang, but I did not copy any _file._ What I did was to run Gtk+ apps, take screenshots, cutout/edit/clean/change all pixmaps manually, and convert them to base 64. So I did not copy or even use any Gtk+ image _file_.

Does this mean I must include a GPL license along with the code? Does this prohibit a BSD-style license? Does anyone on the list know?
Reply all
Reply to author
Forward
0 new messages