Updated 2018-09-11 22:57:03 by bll

List of ttk Themes  edit

Most of the themes can be downloaded here: A collection of Ttk themes

The SCID themes can be downloaded here: https://sourceforge.net/projects/scid/files/Scid/Additional%20Files/

The waldorf theme is here: waldorf ttk theme

The black theme is here: black ttk theme

The awdark theme wiki: awdark ttk theme source: https://gentoo.com/tcl/awthemes.tcl

The awlight theme wiki: awlight ttk theme source: https://gentoo.com/tcl/awthemes.tcl

The equilux theme is available here: https://github.com/RedFantom/ttkthemes/tree/master/ttkthemes/themes

Smog theme: https://sourceforge.net/projects/daft/files/themes/DaFT%201.3/ (original tile version)

Itft1 theme: https://sourceforge.net/projects/daft/files/themes/Themes%20for%20DaFT%201.4/ (original tile version)

The themes can also be retrieved from here: https://sourceforge.net/p/ballroomdj/code/ci/default/tree/code/themes/ But I make no guarantees as to fidelity to the original source.

Graphical? indicates that the theme uses pixmaps, GIFs or PNG files. Graphical themes may not scale properly on high resolution displays. Native themes are supported by the operating system's built-in libraries, and are only available on the relevant platform.
aquabuilt-innativeMac OS X only; Native Mac OS XTcl
aquablueexternalyesclamOddly, there is no blue involved
aquativoexternalyesGTK aquativoAndrew Wyatt, Pat Thoyts
arcexternalyesdefaultGTK arc; Good for Linux; Modern scrollbar look with no up/down arrows. Disabled and read-only colors will not work due to graphics.Sergei Golovan
awdarkexternalyesclamawdark ttk theme Loosely based on adwaita dark. Good for Linux. Helper routines are included to set the colors for text, menu and listbox widgets.zlib/libpngBrad Lanam
awlightexternalyesclamawlight ttk theme Loosely based on adwaita light. Good for Linux. Helper routines are included to set the colors for text, menu and listbox widgets.zlib/libpngBrad Lanam
blackexternalnoclamblack ttk themeMats Bengtsson
blueexternalyesThis one is blue; Button gradient creates an illusion that the buttons are not squarePat Thoyts
blueeleganceexternalyesGTK2 Blue Elegance Light; No blue; Odd button graphics. Disabled and read-only colors will not work due to graphics.
clearlooksexternalyesclamGTK Clearlooks; Good for Linux
equiluxexternalyesDark theme. I changed the text color to white in the pic.GPLv3
gtk2externalyesclamX11 Only; defColor, xtk::theme (1) (2)Jürgen "Arthur" Beyersdorff
itft1externalyesGPLJelco Huijser
keramikexternalyesaltPat Thoyts
keramik_altexternalyesaltPat Thoyts
krocexternalyesclamOrangeDavid Zolli
plastikexternalyesdefaultDisabled and read-only colors will not work due to graphics.Pat Thoyts
rivet2dexternalyesclamX11 Only; defColor, xtk::theme, xtk::theme::rivet (1) (2)Jürgen "Arthur" Beyersdorff
rivet3dexternalyesclamX11 Only; defColor, xtk::theme, xtk::theme::rivet (1) (2)Jürgen "Arthur" Beyersdorff
scidblueexternalyesThe scid* themes have nice focus colors and a modern scrollbar with no up/down arrows.TclUwe Klimmek
scidgreenexternalyesTclUwe Klimmek
scidgreyexternalyesTclUwe Klimmek
scidmintexternalyesTclUwe Klimmek
scidpinkexternalyesTclUwe Klimmek
scidpurpleexternalyesTclUwe Klimmek
scidsandexternalyesTclUwe Klimmek
smogexternalyesGPLJelco Huijser
srivexternalyesGlassy. Includes several different button colors.Pat Thoyts
srivlgexternalUnable to locate
stepexternalnodefaultOld, unattractive. In the version I found, the checkbuttons and radiobuttons do not work.
tilegtkexternalnoX11 Only; out of date, could not get to compile
tileqtexternalnoX11 Only; out of date, compiles, does not work
tkexternalyesclamX11 Only; defColor, xtk::theme (1) (2)Jürgen "Arthur" Beyersdorff
vistabuilt-innativeWindows only; Native WindowsTcl
waldorfexternalyes2016. Disabled and read-only colors will not work due to graphics. waldorf ttk themeFrançois Tonneau
winnativebuilt-innativeWindows only; Old-Style Windows theme; Native WindowsTcl
winxpblueexternalyesclamGTK WinXP BluePat Thoyts
xpnativebuilt-innativeWindows only; Native WindowsTcl


(1) bll 2017-4-12: I personally, cannot get these to work.

(2) 2018-6-12: Source is already lost.

Screenshots  edit

vista (windows 7)vista (windows 8)waldorf
winnativewinxpbluexpnative (windows XP)
xpnative (windows 7)

 Demo Code


package require Tk

set theme [lindex $::argv 0]

## replace this block with your method of loading the theme
#set ap [file join [file dirname [info script]] .. code]
#if { $ap ni $::auto_path } {
#  lappend ::auto_path $ap
#unset ap
#package require themeloader
#themeloader::loadTheme $theme

if { [file exists $theme.tcl] } {
  source $theme.tcl

ttk::style theme use $theme
set tbg [ttk::style lookup TFrame -background]
lassign [winfo rgb . $tbg] bg_r bg_g bg_b
set tbg [format {#%02x%02x%02x} \
  [expr {$bg_r / 256}] \
  [expr {$bg_g / 256}] \
  [expr {$bg_b / 256}]]

set val 55
set valb $theme
set off 0
set on 1

. configure -background $tbg

ttk::notebook .nb
pack .nb -side left -fill both -expand true
ttk::labelframe .lf -text " $theme "
.nb add .lf -text $theme
ttk::frame .junk
.nb add .junk -text [join [lreverse [split $theme {}]] {}]
ttk::frame .bf
ttk::label .lb -text $theme
ttk::button .b -text $theme
pack .lb .b -in .bf -side left -padx 3p
ttk::combobox .combo -values [list aaa bbb ccc] -textvariable valb -width 15
ttk::frame .cbf
ttk::checkbutton .cboff -text off -variable off
ttk::checkbutton .cbon -text on -variable on
pack .cboff .cbon -in .cbf -side left -padx 3p
ttk::separator .sep
ttk::frame .rbf
ttk::radiobutton .rboff -text off -variable on -value 0
ttk::radiobutton .rbon -text on -variable on -value 1
pack .rboff .rbon -in .rbf -side left -padx 3p
ttk::scale .sc -from 0 -to 100 -variable val
ttk::progressbar .pb -mode determinate -length 100 -variable val
ttk::entry .ent -textvariable valb -width 15
ttk::spinbox .sbox -textvariable val -width 5
ttk::scrollbar .sb
ttk::sizegrip  .sg
pack .sb -side right -fill y -expand true
pack .bf .combo .cbf .sep .rbf .sc .pb .ent .sbox \
    -in .lf -side top -anchor w -padx 3p -pady 3p
pack configure .sep -fill x -expand true
pack .sg -in .lf -side right -anchor s