1# 2# "classic" Tk theme. 3# 4# Implements Tk's traditional Motif-like look and feel. 5# 6 7namespace eval ttk::theme::classic { 8 9 variable colors; array set colors { 10 -frame "#d9d9d9" 11 -window "#ffffff" 12 -activebg "#ececec" 13 -troughbg "#c3c3c3" 14 -selectbg "#c3c3c3" 15 -selectfg "#000000" 16 -disabledfg "#a3a3a3" 17 -indicator "#b03060" 18 } 19 20 ttk::style theme settings classic { 21 ttk::style configure "." \ 22 -font TkDefaultFont \ 23 -background $colors(-frame) \ 24 -foreground black \ 25 -selectbackground $colors(-selectbg) \ 26 -selectforeground $colors(-selectfg) \ 27 -troughcolor $colors(-troughbg) \ 28 -indicatorcolor $colors(-frame) \ 29 -highlightcolor $colors(-frame) \ 30 -highlightthickness 1 \ 31 -selectborderwidth 1 \ 32 -insertwidth 2 \ 33 ; 34 35 # To match pre-Xft X11 appearance, use: 36 # ttk::style configure . -font {Helvetica 12 bold} 37 38 ttk::style map "." -background \ 39 [list disabled $colors(-frame) active $colors(-activebg)] 40 ttk::style map "." -foreground \ 41 [list disabled $colors(-disabledfg)] 42 43 ttk::style map "." -highlightcolor [list focus black] 44 45 ttk::style configure TButton \ 46 -anchor center -padding "3m 1m" -relief raised -shiftrelief 1 47 ttk::style map TButton -relief [list {!disabled pressed} sunken] 48 49 ttk::style configure TCheckbutton -indicatorrelief raised 50 ttk::style map TCheckbutton \ 51 -indicatorcolor [list \ 52 pressed $colors(-frame) selected $colors(-indicator)] \ 53 -indicatorrelief {selected sunken pressed sunken} \ 54 ; 55 56 ttk::style configure TRadiobutton -indicatorrelief raised 57 ttk::style map TRadiobutton \ 58 -indicatorcolor [list \ 59 pressed $colors(-frame) selected $colors(-indicator)] \ 60 -indicatorrelief {selected sunken pressed sunken} \ 61 ; 62 63 ttk::style configure TMenubutton -relief raised -padding "3m 1m" 64 65 ttk::style configure TEntry -relief sunken -padding 1 -font TkTextFont 66 ttk::style map TEntry -fieldbackground \ 67 [list readonly $colors(-frame) disabled $colors(-frame)] 68 ttk::style configure TCombobox -padding 1 69 ttk::style map TCombobox -fieldbackground \ 70 [list readonly $colors(-frame) disabled $colors(-frame)] 71 ttk::style configure ComboboxPopdownFrame \ 72 -relief solid -borderwidth 1 73 74 ttk::style configure TSpinbox -arrowsize 10 -padding {2 0 10 0} 75 ttk::style map TSpinbox -fieldbackground \ 76 [list readonly $colors(-frame) disabled $colors(-frame)] 77 78 ttk::style configure TLabelframe -borderwidth 2 -relief groove 79 80 ttk::style configure TScrollbar -relief raised 81 ttk::style map TScrollbar -relief {{pressed !disabled} sunken} 82 83 ttk::style configure TScale -sliderrelief raised 84 ttk::style map TScale -sliderrelief {{pressed !disabled} sunken} 85 86 ttk::style configure TProgressbar -background SteelBlue 87 ttk::style configure TNotebook.Tab \ 88 -padding {3m 1m} \ 89 -background $colors(-troughbg) 90 ttk::style map TNotebook.Tab -background [list selected $colors(-frame)] 91 92 # Treeview: 93 ttk::style configure Heading -font TkHeadingFont -relief raised 94 ttk::style configure Treeview -background $colors(-window) 95 ttk::style map Treeview \ 96 -background [list selected $colors(-selectbg)] \ 97 -foreground [list selected $colors(-selectfg)] ; 98 99 # 100 # Toolbar buttons: 101 # 102 ttk::style configure Toolbutton -padding 2 -relief flat -shiftrelief 2 103 ttk::style map Toolbutton -relief \ 104 {disabled flat selected sunken pressed sunken active raised} 105 ttk::style map Toolbutton -background \ 106 [list pressed $colors(-troughbg) active $colors(-activebg)] 107 } 108} 109