Posted to tcl by jenglish at Sat Dec 08 22:14:36 GMT 2007view pretty

package provide ttk::theme::green 8.5.0

namespace eval ttk::theme::green {

    variable colors
    array set colors {
	-frame 		"#bbffbb"
	-window		"#ffffbd"
	-darkest 	"#4b664b"
	-darker 	"#709970"
	-dark 		"#a8e6a8"
	-light		"#d2ffd2"
	-lighter 	"#ddffdd"
	-disabledfg	"#a3a3a3"
	-selectbg	"#400080"
	-selectfg	"#ffffff"
    }

    ttk::style theme create green -parent alt -settings {

	ttk::style configure "." \
	    -background 	$colors(-frame) \
	    -foreground 	black \
	    -bordercolor	$colors(-darkest) \
	    -selectbackground 	$colors(-selectbg) \
	    -selectforeground 	$colors(-selectfg) \
	    -troughcolor	$colors(-dark) \
	    -arrowcolor 	$colors(-darkest) \
	    -font 		TkDefaultFont \
	    ;

	ttk::style map "." -background \
	    [list disabled $colors(-frame)  active $colors(-lighter)] ;
	ttk::style map "." -foreground [list disabled $colors(-disabledfg)] ;
        ttk::style map "." -embossed [list disabled 1] ;

	ttk::style configure TButton \
	    -anchor center -width -11 -padding "1 1" \
	    -relief raised -shiftrelief 1 \
	    -highlightthickness 1 -highlightcolor $colors(-frame)

	ttk::style map TButton -relief {
	    {pressed !disabled} 	sunken
	    {active !disabled} 	raised
	} -highlightcolor {alternate black}

	ttk::style configure TCheckbutton \
		-indicatorcolor $colors(-window) -padding 2
	ttk::style configure TRadiobutton \
		-indicatorcolor $colors(-window) -padding 2
	ttk::style map TCheckbutton -indicatorcolor \
	    [list  disabled $colors(-frame)  pressed $colors(-frame)]
	ttk::style map TRadiobutton -indicatorcolor \
	    [list  disabled $colors(-frame)  pressed $colors(-frame)]

	ttk::style configure TMenubutton \
	    -width -11 -padding "3 3" -relief raised

	ttk::style configure TEntry \
		-padding 1 -fieldbackground $colors(-window) ;
	ttk::style map TEntry -fieldbackground \
		[list readonly $colors(-frame) disabled $colors(-frame)]
	ttk::style configure TCombobox \
		-padding 1 -fieldbackground $colors(-window) ;
	ttk::style map TCombobox -fieldbackground \
		[list readonly $colors(-frame) disabled $colors(-frame)]

	ttk::style configure Toolbutton -relief flat -padding 2
	ttk::style map Toolbutton -relief \
	    {disabled flat selected sunken pressed sunken active raised}
	ttk::style map Toolbutton -background \
	    [list pressed $colors(-dark)  active $colors(-light)]

	ttk::style configure TScrollbar -relief raised
	ttk::style configure TScale \
	    -groovewidth 4 -troughrelief sunken \
	    -sliderwidth raised -borderwidth 2
	ttk::style configure TProgressbar \
	    -background $colors(-selectbg) -borderwidth 0

	ttk::style configure TLabelframe -relief groove -borderwidth 2

	ttk::style configure TNotebook -tabmargins {2 2 1 0}
	ttk::style configure TNotebook.Tab \
	    -padding {4 2} -background $colors(-dark)
	ttk::style map TNotebook.Tab \
	    -background [list selected $colors(-frame)] \
	    -expand [list selected {2 2 1 0}] \
	    ;

	ttk::style configure Treeview -fieldbackground $colors(-window)
	ttk::style configure Heading -font TkHeadingFont -relief raised
	ttk::style configure Row -background $colors(-window)
	ttk::style map Row \
	    -background [list selected $colors(-selectbg)]
	ttk::style map Item \
	    -foreground [list selected $colors(-selectfg)]
	ttk::style map Cell \
	    -foreground [list selected $colors(-selectfg)]

    }
}