diff --git a/gui_data/sv_ttk/__init__.py b/gui_data/sv_ttk/__init__.py index b265472..978626b 100644 --- a/gui_data/sv_ttk/__init__.py +++ b/gui_data/sv_ttk/__init__.py @@ -1,4 +1,10 @@ from pathlib import Path +import platform + +if platform.system() == "Darwin": + sun_valley_tcl = "sun-valley_darwin.tcl" +else: + sun_valley_tcl = "sun-valley.tcl" inited = False root = None @@ -12,7 +18,7 @@ def init(func): if not inited: from tkinter import _default_root - path = (Path(__file__).parent / "sun-valley.tcl").resolve() + path = (Path(__file__).parent / sun_valley_tcl).resolve() try: _default_root.tk.call("source", str(path)) diff --git a/gui_data/sv_ttk/sun-valley_darwin.tcl b/gui_data/sv_ttk/sun-valley_darwin.tcl new file mode 100644 index 0000000..f76c535 --- /dev/null +++ b/gui_data/sv_ttk/sun-valley_darwin.tcl @@ -0,0 +1,49 @@ +# Copyright © 2021 rdbende + +source [file join [file dirname [info script]] theme dark.tcl] + +option add *tearOff 0 + +proc set_theme {mode} { + if {$mode == "dark"} { + ttk::style theme use "sun-valley-dark" + + array set colors { + -fg "#F6F6F7" + -bg "#0e0e0f" + -disabledfg "#F6F6F7" + -selectfg "#F6F6F7" + -selectbg "#003b50" + } + + ttk::style configure . \ + -background $colors(-bg) \ + -foreground $colors(-fg) \ + -troughcolor $colors(-bg) \ + -focuscolor $colors(-selectbg) \ + -selectbackground $colors(-selectbg) \ + -selectforeground $colors(-selectfg) \ + -insertwidth 0 \ + -insertcolor $colors(-fg) \ + -fieldbackground $colors(-selectbg) \ + -font {"Century Gothic" 13} \ + -borderwidth 0 \ + -relief flat + + tk_setPalette \ + background [ttk::style lookup . -background] \ + foreground [ttk::style lookup . -foreground] \ + highlightColor [ttk::style lookup . -focuscolor] \ + selectBackground [ttk::style lookup . -selectbackground] \ + selectForeground [ttk::style lookup . -selectforeground] \ + activeBackground [ttk::style lookup . -selectbackground] \ + activeForeground [ttk::style lookup . -selectforeground] + + ttk::style map . -foreground [list disabled $colors(-disabledfg)] + + option add *font [ttk::style lookup . -font] + option add *Menu.selectcolor $colors(-fg) + option add *Menu.background #0e0e0f + + } +}