# Copyright © 2021 rdbende # MIT License # # Copyright (c) 2021 rdbende # # Permission is hereby granted, free of charge, to any person obtaining a copy # of this software and associated documentation files (the "Software"), to deal # in the Software without restriction, including without limitation the rights # to use, copy, modify, merge, publish, distribute, sublicense, and/or sell # copies of the Software, and to permit persons to whom the Software is # furnished to do so, subject to the following conditions: # # The above copyright notice and this permission notice shall be included in all # copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE # AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE # SOFTWARE. source [file join [file dirname [info script]] theme light.tcl] 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 "azure-dark" array set colors { -fg "#ffffff" -bg "#333333" -disabledfg "#ffffff" -disabledbg "#737373" -selectfg "#ffffff" -selectbg "#007fff" } ttk::style configure . \ -background $colors(-bg) \ -foreground $colors(-fg) \ -troughcolor $colors(-bg) \ -focuscolor $colors(-selectbg) \ -selectbackground $colors(-selectbg) \ -selectforeground $colors(-selectfg) \ -insertcolor $colors(-fg) \ -insertwidth 1 \ -fieldbackground $colors(-selectbg) \ -font {"Segoe Ui" 10} \ -borderwidth 1 \ -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) } elseif {$mode == "light"} { ttk::style theme use "azure-light" array set colors { -fg "#000000" -bg "#ffffff" -disabledfg "#737373" -disabledbg "#ffffff" -selectfg "#ffffff" -selectbg "#007fff" } ttk::style configure . \ -background $colors(-bg) \ -foreground $colors(-fg) \ -troughcolor $colors(-bg) \ -focuscolor $colors(-selectbg) \ -selectbackground $colors(-selectbg) \ -selectforeground $colors(-selectfg) \ -insertcolor $colors(-fg) \ -insertwidth 1 \ -fieldbackground $colors(-selectbg) \ -font {"Segoe Ui" 10} \ -borderwidth 1 \ -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) } }