Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | update awthemes to version 3.1 |
---|---|
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA1: |
d1febd9750571ed8658b2ca56f31070d |
User & Date: | chw 2019-10-11 16:14:02.744 |
Context
2019-10-11
| ||
19:17 | update open62541 amalgamation to version 1.0 check-in: 0ba65209b1 user: chw tags: trunk | |
16:14 | update awthemes to version 3.1 check-in: d1febd9750 user: chw tags: trunk | |
09:40 | more tk upstream changes check-in: 173671ccd8 user: chw tags: trunk | |
Changes
Changes to assets/INVENTORY.
1 2 3 4 5 6 7 | {opt assets/ble*} {opt assets/blt* {libs/$arch/libblt.so jni/blt}} {req assets/borg* {libs/$arch/libmain.so jni/src src/tk/tcl/wish}} {opt assets/bwidget*} {opt assets/can2svg*} {opt assets/Canvas3d* {libs/$arch/libCanvas3d.so jni/3dcanvas}} {opt jni/sdl2tk/library/demos} | > | 1 2 3 4 5 6 7 8 | {opt assets/awthemes*} {opt assets/ble*} {opt assets/blt* {libs/$arch/libblt.so jni/blt}} {req assets/borg* {libs/$arch/libmain.so jni/src src/tk/tcl/wish}} {opt assets/bwidget*} {opt assets/can2svg*} {opt assets/Canvas3d* {libs/$arch/libCanvas3d.so jni/3dcanvas}} {opt jni/sdl2tk/library/demos} |
︙ | ︙ |
Changes to assets/awthemes3/README.txt.
1 |
| | | | > > > > > > > | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | Only the 'awthemes.tcl', 'colorutils.tcl', 'themeutils.tcl' and 'pkgIndex.tcl' files are necessary. The other files are infrastructure files and only needed for development. awthemes 3.1 - Added themeutils.tcl. ::themeutils::setThemeColors awdark color-name color ... allows the colors to be set. The graphical colors will be changed when tksvg is in use. See themeutils.tcl for a list of color names. awthemes 3.0 - Breaking change: The package name has been renamed so that 'package require awdark' works. - Support for tksvg has been added. New graphics have been added to support tksvg, and the graphics |
︙ | ︙ |
Changes to assets/awthemes3/awthemes.tcl.
︙ | ︙ | |||
22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 | # Sets the listbox widget colors. # # ::ttk::theme::awdark::setBackground color # requires the colorutils package # # ::ttk::theme::awdark::setHighlight color # requires the colorutils package # # Mac OS X notes for prior to 8.6.9: # To style the scrollbars, use: # ttk::scrollbar .sb -style Vertical.TScrollbar # or ttk::scrollbar .sb -style Horizontal.TScrollbar # This will turn off the aqua styling and use the theme styling. # Also note that the styling for the scrollbar cannot be configured # afterwards, it must be configured when the scrollbar is created. # # 3.0 # - tksvg support # 2.6 # - Fix mac colors # 2.5 # - Added missing TFrame style setup. # 2.4 | > > > > > > > > > > > > > > > | 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 | # Sets the listbox widget colors. # # ::ttk::theme::awdark::setBackground color # requires the colorutils package # # ::ttk::theme::awdark::setHighlight color # requires the colorutils package # This does not work with the scalable graphics. # # ::themeutils::setThemeColors awdark colorname color ... # Allows modification of any of the colors used by awdark and awlight. # The graphical colors will be changed to match. # e.g. # package require colorutils # package require themeutils # ::themeutils::setThemeColors awdark \ # highlight.selectbg #007000 highlight.selectdisabledbg #222222 # package require awdark # will change the selection and graphical colors to a green, and the # the disabled selection color to a dark grey. # # Mac OS X notes for prior to 8.6.9: # To style the scrollbars, use: # ttk::scrollbar .sb -style Vertical.TScrollbar # or ttk::scrollbar .sb -style Horizontal.TScrollbar # This will turn off the aqua styling and use the theme styling. # Also note that the styling for the scrollbar cannot be configured # afterwards, it must be configured when the scrollbar is created. # # 3.1 # - allow user configuration of colors # 3.0 # - tksvg support # 2.6 # - Fix mac colors # 2.5 # - Added missing TFrame style setup. # 2.4 |
︙ | ︙ | |||
109 110 111 112 113 114 115 116 117 118 119 120 121 122 | try { set ap [file normalize [file dirname [info script]]] if { $ap ni $::auto_path } { lappend ::auto_path $ap } unset ap package require colorutils } on error {err res} { } proc awinit { } { global awthemename foreach awthemename {awdark awlight} { | > > | | | 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 | try { set ap [file normalize [file dirname [info script]]] if { $ap ni $::auto_path } { lappend ::auto_path $ap } unset ap package require colorutils package require themeutils } on error {err res} { puts stderr "ERROR: colorutlis and themeutils packages are required" } proc awinit { } { global awthemename foreach awthemename {awdark awlight} { package provide $awthemename 3.1 package provide ttk::theme::$awthemename 3.1 namespace eval ::ttk::theme::$awthemename { variable colors variable images variable imgdata variable vars |
︙ | ︙ | |||
150 151 152 153 154 155 156 | set vars(have.tksvg) false if { ! [catch {package present tksvg}] } { set vars(have.tksvg) true } _setThemeBaseColors | > > | | | | > > > | > > | | > | > > | > > > | > | | | | | | | | | | | | | | < < < < < < < < < > > > > > > > > > > > > > > > > > > > > | | | | | | | | | > | 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 | set vars(have.tksvg) false if { ! [catch {package present tksvg}] } { set vars(have.tksvg) true } _setThemeBaseColors # set up the curr.* named colors foreach {k} [array names colors] { if { [regexp {^user\.} $k] } { continue } set colors(curr.$k) $colors($k) } # override colors with any user.* colors # these are set by the ::themeutils package # process the base colors first, then the derived colors foreach {k} $::themeutils::vars(names.colors.base) { if { [info exists colors(user.$k)] } { set colors(curr.$k) $colors(user.$k) } } # sets both the base colors and the curr.* colors _setDerivedColors # now override any derived colors with user-specified colors foreach {k} $::themeutils::vars(names.colors.derived) { if { [info exists colors(user.$k)] } { set colors(curr.$k) $colors(user.$k) } } _setImageData _createTheme _setStyledColors } proc _setThemeBaseColors { } { variable vars variable colors if { $vars(theme.name) eq "awdark" } { array set colors { base.disabledfg #919282 base.disabledbg #2d3234 base.disabledborder #202425 base.frame #33393b base.dark #252a2c base.darker #1b1f20 base.darkest #000000 base.bpress #424a4d base.lighter #525c5f base.lightest #ffffff highlight.selectbg #215d9c highlight.selectdisabledbg #224162 highlight.darkhighlight #1a497c highlight.selectfg #ffffff } } if { $vars(theme.name) eq "awlight" } { array set colors { base.frame #e8e8e7 base.disabledfg #8e8e8f base.disabledbg #cacaca base.disabledborder #c0c0bd base.dark #cacaca base.darker #8b8391 base.darkest #000000 base.bpress #e8e8e7 base.lighter #f0f0f0 base.lightest #ffffff highlight.selectbg #1a497c highlight.selectdisabledbg #f0f0f0 highlight.darkhighlight #1a497c highlight.selectfg #ffffff } } } proc _setDerivedColors { } { variable vars variable colors foreach {prefix} {{} curr.} { if { $vars(theme.name) eq "awdark" } { set colors(${prefix}base.arrow) $colors(base.lightest) set colors(${prefix}base.arrow.disabled) $colors(base.lighter) set colors(${prefix}base.border) $colors(base.darkest) set colors(${prefix}base.border.light) $colors(base.darkest) set colors(${prefix}text.text) $colors(base.lightest) set colors(${prefix}base.tabborder) $colors(base.darkest) set colors(${prefix}base.tabinactive) $colors(base.frame) set colors(${prefix}base.tabhighlight) #8b9ca1 set colors(${prefix}base.entrybg) $colors(base.darker) } if { $vars(theme.name) eq "awlight" } { set colors(${prefix}base.arrow) $colors(base.darkest) set colors(${prefix}base.arrow.disabled) $colors(base.darker) set colors(${prefix}base.border) $colors(base.dark) set colors(${prefix}base.border.light) $colors(base.dark) set colors(${prefix}text.text) $colors(base.darkest) set colors(${prefix}base.tabborder) $colors(base.frame) set colors(${prefix}base.tabinactive) $colors(base.darker) set colors(${prefix}base.tabhighlight) $colors(base.darkest) set colors(${prefix}base.entrybg) $colors(base.lightest) } } } proc _setImageData { } { variable vars variable imgdata variable imgtype |
︙ | ︙ | |||
3704 3705 3706 3707 3708 3709 3710 | style="opacity:1;fill:#215d9b;fill-opacity:1;stroke:#07090b;stroke-width:0;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path841-79-3" cx="12.721766" cy="284.22617" rx="0.69321311" ry="0.69321305" /> <ellipse | | | | | | | | | | | | | | | | | | | | | | | | | 3747 3748 3749 3750 3751 3752 3753 3754 3755 3756 3757 3758 3759 3760 3761 3762 3763 3764 3765 3766 3767 3768 3769 3770 3771 3772 3773 3774 3775 3776 3777 3778 3779 3780 3781 3782 3783 3784 3785 3786 3787 3788 3789 3790 3791 3792 3793 3794 3795 3796 3797 3798 3799 3800 3801 3802 3803 3804 3805 3806 3807 3808 3809 3810 3811 3812 3813 3814 3815 3816 3817 3818 3819 3820 3821 3822 3823 3824 3825 3826 3827 3828 3829 3830 3831 3832 3833 3834 3835 3836 3837 3838 3839 3840 3841 3842 3843 3844 3845 3846 3847 3848 3849 3850 3851 3852 3853 3854 3855 3856 3857 3858 3859 3860 3861 3862 3863 3864 3865 3866 3867 3868 3869 3870 3871 3872 3873 3874 3875 3876 3877 3878 3879 3880 3881 3882 3883 3884 3885 3886 3887 3888 3889 3890 3891 3892 3893 3894 3895 3896 3897 3898 3899 3900 3901 3902 3903 3904 3905 3906 3907 3908 3909 3910 3911 3912 3913 3914 3915 3916 3917 3918 3919 3920 3921 3922 3923 3924 3925 3926 3927 3928 3929 3930 3931 3932 3933 3934 3935 3936 3937 3938 3939 3940 3941 3942 3943 3944 3945 3946 3947 3948 3949 3950 3951 3952 3953 3954 3955 3956 3957 3958 3959 3960 3961 3962 3963 | style="opacity:1;fill:#215d9b;fill-opacity:1;stroke:#07090b;stroke-width:0;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path841-79-3" cx="12.721766" cy="284.22617" rx="0.69321311" ry="0.69321305" /> <ellipse style="opacity:1;fill:#215d9c;fill-opacity:1;stroke:#07090b;stroke-width:0;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path841-79-6" cx="11.119109" cy="285.81818" rx="0.69321311" ry="0.69321305" /> <ellipse style="opacity:1;fill:#215d9c;fill-opacity:1;stroke:#07090b;stroke-width:0;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path841-79-7" cx="9.5164518" cy="287.41016" rx="0.69321311" ry="0.69321305" /> <ellipse style="opacity:1;fill:#215d9c;fill-opacity:1;stroke:#07090b;stroke-width:0;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path841-79-5" cx="7.913794" cy="289.00214" rx="0.69321311" ry="0.69321305" /> <ellipse style="opacity:1;fill:#215d9c;fill-opacity:1;stroke:#07090b;stroke-width:0;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path841-79-35" cx="6.3111362" cy="290.59412" rx="0.69321311" ry="0.69321305" /> <ellipse style="opacity:1;fill:#215d9c;fill-opacity:1;stroke:#07090b;stroke-width:0;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path841-79-62" cx="4.7084789" cy="292.18613" rx="0.69321311" ry="0.69321305" /> <ellipse style="opacity:1;fill:#215d9c;fill-opacity:1;stroke:#07090b;stroke-width:0;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path841-79-9" cx="3.1058214" cy="293.77811" rx="0.69321311" ry="0.69321305" /> <ellipse style="opacity:1;fill:#215d9c;fill-opacity:1;stroke:#07090b;stroke-width:0;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path841-79-1" cx="1.5031636" cy="295.37009" rx="0.69321311" ry="0.69321305" /> </g> <g id="g959" transform="translate(-0.53809974,-0.04111673)"> <ellipse inkscape:transform-center-y="-2.5681986" inkscape:transform-center-x="-1.8183937" style="opacity:1;fill:#215d9c;fill-opacity:1;stroke:#07090b;stroke-width:0;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path841-79-3-7" cx="14.967299" cy="285.89139" rx="0.69321311" ry="0.69321305" /> <ellipse inkscape:transform-center-y="-1.8042036" inkscape:transform-center-x="-1.05441" style="opacity:1;fill:#215d9c;fill-opacity:1;stroke:#07090b;stroke-width:0;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path841-79-6-0" cx="13.364642" cy="287.48337" rx="0.69321311" ry="0.69321305" /> <ellipse inkscape:transform-center-y="-1.0402233" inkscape:transform-center-x="-0.29042529" style="opacity:1;fill:#215d9c;fill-opacity:1;stroke:#07090b;stroke-width:0;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path841-79-7-9" cx="11.761985" cy="289.07538" rx="0.69321311" ry="0.69321305" /> <ellipse inkscape:transform-center-y="-0.27624296" inkscape:transform-center-x="0.47355939" style="opacity:1;fill:#215d9c;fill-opacity:1;stroke:#07090b;stroke-width:0;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path841-79-5-3" cx="10.159327" cy="290.66736" rx="0.69321311" ry="0.69321305" /> <ellipse inkscape:transform-center-y="0.48773736" inkscape:transform-center-x="1.2375436" style="opacity:1;fill:#215d9c;fill-opacity:1;stroke:#07090b;stroke-width:0;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path841-79-35-6" cx="8.5566683" cy="292.25934" rx="0.69321311" ry="0.69321305" /> <ellipse inkscape:transform-center-y="1.2517323" inkscape:transform-center-x="2.0015276" style="opacity:1;fill:#215d9c;fill-opacity:1;stroke:#07090b;stroke-width:0;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path841-79-62-0" cx="6.954011" cy="293.85135" rx="0.69321311" ry="0.69321305" /> <ellipse inkscape:transform-center-y="2.0157126" inkscape:transform-center-x="2.7655121" style="opacity:1;fill:#215d9c;fill-opacity:1;stroke:#07090b;stroke-width:0;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path841-79-9-6" cx="5.3513532" cy="295.44333" rx="0.69321311" ry="0.69321305" /> </g> <g id="g1056" transform="translate(-0.28974602,-0.04111673)"> <ellipse inkscape:transform-center-y="-1.8042036" inkscape:transform-center-x="-1.05441" style="opacity:1;fill:#215d9c;fill-opacity:1;stroke:#07090b;stroke-width:0;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path841-79-6-0-8" cx="14.689195" cy="289.13831" rx="0.69321311" ry="0.69321305" /> <ellipse inkscape:transform-center-y="-1.0402233" inkscape:transform-center-x="-0.29042529" style="opacity:1;fill:#215d9c;fill-opacity:1;stroke:#07090b;stroke-width:0;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path841-79-7-9-7" cx="13.086537" cy="290.73032" rx="0.69321311" ry="0.69321305" /> <ellipse inkscape:transform-center-y="-0.27624296" inkscape:transform-center-x="0.47355939" style="opacity:1;fill:#215d9c;fill-opacity:1;stroke:#07090b;stroke-width:0;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path841-79-5-3-9" cx="11.48388" cy="292.3223" rx="0.69321311" ry="0.69321305" /> <ellipse inkscape:transform-center-y="0.48773736" inkscape:transform-center-x="1.2375436" style="opacity:1;fill:#215d9c;fill-opacity:1;stroke:#07090b;stroke-width:0;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path841-79-35-6-2" cx="9.8812218" cy="293.91428" rx="0.69321311" ry="0.69321305" /> <ellipse inkscape:transform-center-y="1.2517323" inkscape:transform-center-x="2.0015276" style="opacity:1;fill:#215d9c;fill-opacity:1;stroke:#07090b;stroke-width:0;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path841-79-62-0-0" cx="8.2785645" cy="295.50629" rx="0.69321311" ry="0.69321305" /> </g> <g id="g1034" transform="translate(8.4854191,7.1543113)"> <ellipse inkscape:transform-center-y="-1.0402233" inkscape:transform-center-x="-0.29042529" style="opacity:1;fill:#215d9c;fill-opacity:1;stroke:#07090b;stroke-width:0;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path841-79-7-9-7-7" cx="5.9463682" cy="285.23096" rx="0.69321311" ry="0.69321305" /> <ellipse inkscape:transform-center-y="-0.27624296" inkscape:transform-center-x="0.47355939" style="opacity:1;fill:#215d9c;fill-opacity:1;stroke:#07090b;stroke-width:0;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path841-79-5-3-9-5" cx="4.3437109" cy="286.82294" rx="0.69321311" ry="0.69321305" /> <ellipse inkscape:transform-center-y="0.48773736" inkscape:transform-center-x="1.2375436" style="opacity:1;fill:#215d9c;fill-opacity:1;stroke:#07090b;stroke-width:0;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path841-79-35-6-2-9" cx="2.7410524" cy="288.41492" rx="0.69321311" ry="0.69321305" /> </g> <ellipse ry="0.69321305" rx="0.69321311" cy="295.49088" cx="14.451189" id="path841-79-6-0-8-2" style="opacity:1;fill:#215d9c;fill-opacity:1;stroke:#07090b;stroke-width:0;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" inkscape:transform-center-x="-1.05441" inkscape:transform-center-y="-1.8042036" /> </g> </g> </svg> } # slider-hd |
︙ | ︙ | |||
4448 4449 4450 4451 4452 4453 4454 4455 4456 4457 4458 4459 4460 4461 | ry="0" transform="scale(-1)" /> </g> </svg> } #E == svgdata == } if { $vars(theme.name) eq "awdark" } { if { ! [info exists imgdata(cb-sa)] } { # cb-sa set imgdata(cb-sa) { iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz AAAOJgAADiYBou8l/AAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAABSdEVY | > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > | 4491 4492 4493 4494 4495 4496 4497 4498 4499 4500 4501 4502 4503 4504 4505 4506 4507 4508 4509 4510 4511 4512 4513 4514 4515 4516 4517 4518 4519 4520 4521 4522 4523 4524 4525 4526 4527 4528 4529 4530 4531 4532 4533 4534 4535 4536 4537 4538 4539 4540 4541 4542 4543 4544 4545 4546 4547 4548 4549 4550 4551 4552 4553 4554 4555 4556 4557 4558 4559 4560 4561 4562 4563 4564 4565 4566 4567 4568 4569 4570 4571 4572 4573 4574 4575 4576 4577 | ry="0" transform="scale(-1)" /> </g> </svg> } #E == svgdata == } if { $vars(theme.name) eq "awlight" } { # convert all the svg colors to awlight specific colors if { $vars(have.tksvg) } { foreach {n} [array names ::ttk::theme::awdark::imgdata] { set imgdata($n) $::ttk::theme::awdark::imgdata($n) if { [string match *arrow* $n] } { set oc $::ttk::theme::awdark::colors(highlight.selectbg) set nc $colors(curr.base.lighter) regsub -all $oc $imgdata($n) $nc imgdata($n) } foreach {oc nc} [list \ $::ttk::theme::awdark::colors(base.dark) \ $colors(base.dark) \ $::ttk::theme::awdark::colors(base.disabledfg) \ $colors(base.disabledfg) \ $::ttk::theme::awdark::colors(base.disabledbg) \ $colors(base.disabledbg) \ $::ttk::theme::awdark::colors(base.disabledborder) \ $colors(base.disabledborder) \ $::ttk::theme::awdark::colors(base.bpress) \ $colors(base.bpress) \ $::ttk::theme::awdark::colors(highlight.selectbg) \ $colors(highlight.selectbg) \ $::ttk::theme::awdark::colors(highlight.selectdisabledbg) \ $colors(highlight.selectdisabledbg) \ $::ttk::theme::awdark::colors(base.border) \ $colors(base.border) \ $::ttk::theme::awdark::colors(base.arrow) \ $colors(base.arrow) \ ] { regsub -all $oc $imgdata($n) $nc imgdata($n) } } } } # convert all the svg colors to the current colors if { $vars(have.tksvg) } { foreach {n} [array names imgdata] { if { [string match *arrow* $n] } { set oc $colors(highlight.selectbg) set nc $colors(curr.highlight.selectbg) if { $nc ne $oc } { regsub -all $oc $imgdata($n) $nc imgdata($n) } } foreach {oc nc} [list \ $colors(base.dark) \ $colors(curr.base.dark) \ $colors(base.disabledfg) \ $colors(curr.base.disabledfg) \ $colors(base.disabledbg) \ $colors(curr.base.disabledbg) \ $colors(base.disabledborder) \ $colors(curr.base.disabledborder) \ $colors(base.bpress) \ $colors(curr.base.bpress) \ $colors(highlight.selectbg) \ $colors(curr.highlight.selectbg) \ $colors(highlight.selectdisabledbg) \ $colors(curr.highlight.selectdisabledbg) \ $colors(base.border) \ $colors(curr.base.border) \ $colors(base.arrow) \ $colors(curr.base.arrow) \ ] { if { $nc ne $oc } { regsub -all $oc $imgdata($n) $nc imgdata($n) } } } } if { $vars(theme.name) eq "awdark" } { if { ! [info exists imgdata(cb-sa)] } { # cb-sa set imgdata(cb-sa) { iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz AAAOJgAADiYBou8l/AAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAABSdEVY |
︙ | ︙ | |||
4776 4777 4778 4779 4780 4781 4782 | QnjtvO9k08mVGKOIMfrvMylcVbHI0vhzOFyUh8u3zrm7wPK4DS8ZY55Yaz+LSCoimVj7Vax9Dmwf Hf4Dx8Kr4mNF2+sAAAAASUVORK5CYII= } } } if { $vars(theme.name) eq "awlight" } { | < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < | 4892 4893 4894 4895 4896 4897 4898 4899 4900 4901 4902 4903 4904 4905 | QnjtvO9k08mVGKOIMfrvMylcVbHI0vhzOFyUh8u3zrm7wPK4DS8ZY55Yaz+LSCoimVj7Vax9Dmwf Hf4Dx8Kr4mNF2+sAAAAASUVORK5CYII= } } } if { $vars(theme.name) eq "awlight" } { if { ! [info exists imgdata(cb-sa)] } { # cb-sa set imgdata(cb-sa) { iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz AAAOJgAADiYBou8l/AAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAABSdEVY dENvcHlyaWdodABDQyBBdHRyaWJ1dGlvbi1TaGFyZUFsaWtlIGh0dHA6Ly9jcmVhdGl2ZWNvbW1v bnMub3JnL2xpY2Vuc2VzL2J5LXNhLzQuMC/DVGIFAAAB3klEQVQ4jYWSvW9SURiHn3O4VMtH1ARb |
︙ | ︙ | |||
5496 5497 5498 5499 5500 5501 5502 | } proc _createNotebookStyle { } { variable colors variable images variable vars | | | | | | 5578 5579 5580 5581 5582 5583 5584 5585 5586 5587 5588 5589 5590 5591 5592 5593 5594 5595 5596 | } proc _createNotebookStyle { } { variable colors variable images variable vars set tag "$colors(curr.base.tabhighlight)$colors(curr.base.tabinactive)$colors(curr.highlight.selectbg)" foreach {k bg} [list \ indhover $colors(curr.base.tabhighlight) \ indnotactive $colors(curr.base.tabinactive) \ indselected $colors(curr.highlight.selectbg) \ ] { if { ! [info exists images($k.$bg)] } { set images($k.$bg) [image create photo \ -width $vars(nb.img.width) -height $vars(nb.img.height)] set row [lrepeat $vars(nb.img.width) $bg] set pix [list] for {set i 0} {$i < $vars(nb.img.height)} {incr i} { |
︙ | ︙ | |||
5547 5548 5549 5550 5551 5552 5553 | if { $theme eq {} } { set theme $vars(theme.name) } ttk::style theme settings $theme { # defaults ttk::style configure . \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 5629 5630 5631 5632 5633 5634 5635 5636 5637 5638 5639 5640 5641 5642 5643 5644 5645 5646 5647 5648 5649 5650 5651 5652 5653 5654 5655 5656 5657 5658 5659 5660 5661 5662 5663 5664 5665 5666 5667 5668 5669 5670 5671 5672 5673 5674 5675 5676 5677 5678 5679 5680 5681 5682 5683 5684 5685 5686 5687 5688 5689 5690 5691 5692 5693 5694 5695 5696 5697 5698 5699 5700 5701 5702 5703 5704 5705 5706 5707 5708 5709 5710 5711 5712 5713 5714 5715 5716 5717 5718 5719 5720 5721 5722 5723 5724 5725 5726 5727 5728 5729 5730 5731 5732 5733 5734 5735 5736 5737 5738 5739 5740 5741 5742 5743 5744 5745 5746 5747 5748 5749 5750 5751 5752 5753 5754 5755 5756 5757 5758 5759 5760 5761 5762 5763 5764 5765 5766 5767 5768 5769 5770 5771 5772 5773 5774 5775 5776 5777 5778 5779 5780 5781 5782 5783 5784 5785 5786 5787 5788 5789 5790 5791 5792 5793 5794 5795 5796 5797 5798 5799 5800 5801 5802 5803 5804 5805 5806 5807 5808 5809 5810 5811 5812 5813 5814 5815 5816 5817 5818 5819 5820 5821 5822 5823 5824 5825 5826 5827 5828 5829 5830 5831 5832 5833 5834 5835 5836 5837 5838 5839 5840 | if { $theme eq {} } { set theme $vars(theme.name) } ttk::style theme settings $theme { # defaults ttk::style configure . \ -background $colors(curr.base.frame) \ -foreground $colors(curr.text.text) \ -borderwidth 1 \ -bordercolor $colors(curr.base.border) \ -darkcolor $colors(curr.base.darkest) \ -lightcolor $colors(curr.base.darkest) \ -troughcolor $colors(curr.base.entrybg) \ -selectbackground $colors(curr.highlight.selectbg) \ -selectforeground $colors(curr.highlight.selectfg) \ -selectborderwidth 0 \ -fieldbackground $colors(curr.base.entrybg) \ -focuscolor $colors(curr.highlight.selectbg) \ -insertcolor $colors(curr.base.lightest) \ -relief none ttk::style map . \ -background [list disabled $colors(curr.base.frame)] \ -foreground [list active $colors(curr.text.text) \ focus $colors(curr.text.text) \ disabled $colors(curr.base.disabledfg)] \ -selectbackground [list !focus $colors(curr.base.darkest)] \ -selectforeground [list !focus $colors(curr.base.lightest)] \ -bordercolor [list disabled $colors(curr.base.disabledborder)] # button ttk::style configure TButton \ -bordercolor $colors(curr.base.frame) \ -background $colors(curr.base.dark) \ -lightcolor $colors(curr.base.lighter) \ -darkcolor $colors(curr.base.darker) ttk::style map TButton \ -background [list {hover !pressed !disabled} $colors(curr.base.bpress) \ {active !pressed} $colors(curr.base.bpress) \ {selected !disabled} $colors(curr.base.dark) \ pressed $colors(curr.base.dark) \ disabled $colors(curr.base.disabledbg)] \ -lightcolor [list pressed $colors(curr.base.darker)] \ -darkcolor [list pressed $colors(curr.base.lighter)] # checkbutton ttk::style map TCheckbutton \ -indicatorcolor [list selected $colors(curr.base.lightest)] \ -darkcolor [list disabled $colors(curr.base.frame)] \ -lightcolor [list disabled $colors(curr.base.frame)] # combobox ttk::style configure TCombobox \ -bordercolor $colors(curr.base.border) \ -lightcolor $colors(curr.base.dark) \ -darkcolor $colors(curr.base.dark) \ -arrowcolor $colors(curr.base.arrow) ttk::style map TCombobox \ -lightcolor [list active $colors(curr.highlight.selectbg) \ focus $colors(curr.highlight.selectbg)] \ -darkcolor [list active $colors(curr.highlight.selectbg) \ focus $colors(curr.highlight.selectbg)] \ -arrowcolor [list disabled $colors(curr.base.arrow.disabled)] \ -fieldbackground [list disabled $colors(curr.base.disabledbg)] if { $::tcl_platform(os) eq "Darwin" } { # mac os x has cross-platform incompatibilities ttk::style configure TCombobox \ -background $colors(curr.base.dark) ttk::style map TCombobox \ -background [list disabled $colors(curr.base.disabledbg)] } # entry ttk::style configure TEntry \ -background $colors(curr.base.dark) \ -bordercolor $colors(curr.base.border) \ -lightcolor $colors(curr.base.dark) ttk::style map TEntry \ -lightcolor [list active $colors(curr.highlight.selectbg) \ focus $colors(curr.highlight.selectbg)] \ -fieldbackground [list disabled $colors(curr.base.disabledbg)] if { $::tcl_platform(os) eq "Darwin" } { # mac os x has cross-platform incompatibilities ttk::style configure TEntry \ -background $colors(curr.base.dark) ttk::style map TEntry \ -background [list disabled $colors(curr.base.disabledbg)] } # frame ttk::style configure TFrame \ -bordercolor $colors(curr.base.frame) \ -lightcolor $colors(curr.base.lighter) \ -darkcolor $colors(curr.base.darker) # labelframe ttk::style configure TLabelframe \ -bordercolor $colors(curr.base.frame) \ -lightcolor $colors(curr.base.frame) \ -darkcolor $colors(curr.base.frame) # menubutton ttk::style configure TMenubutton \ -arrowcolor $colors(curr.base.arrow) ttk::style map TMenubutton \ -background [list {active !disabled} $colors(curr.highlight.selectbg)] \ -foreground [list {active !disabled} $colors(curr.highlight.selectfg) \ disabled $colors(curr.base.disabledfg)] \ -arrowcolor [list disabled $colors(curr.base.arrow.disabled)] # notebook ttk::style configure TNotebook \ -bordercolor $colors(curr.base.frame) \ -lightcolor $colors(curr.base.lighter) \ -darkcolor $colors(curr.base.darker) ttk::style configure TNotebook.Tab \ -lightcolor $colors(curr.base.frame) \ -darkcolor $colors(curr.base.frame) \ -bordercolor $colors(curr.base.tabborder) \ -background $colors(curr.base.dark) # panedwindow ttk::style configure TPanedwindow \ -background $colors(curr.base.dark) ttk::style configure Sash \ -lightcolor $colors(curr.highlight.darkhighlight) \ -darkcolor $colors(curr.base.darkest) \ -sashthickness [expr {round(10*$vars(scale.factor))}] # progressbar ttk::style configure TProgressbar \ -background $colors(curr.highlight.darkhighlight) \ -bordercolor $colors(curr.base.border.light) \ -lightcolor $colors(curr.highlight.darkhighlight) \ -darkcolor $colors(curr.highlight.darkhighlight) ttk::style map TProgressbar \ -troughcolor [list disabled $colors(curr.base.dark)] \ -darkcolor [list disabled $colors(curr.base.disabledbg)] \ -lightcolor [list disabled $colors(curr.base.disabledbg)] # scale # background is used both for the background and # for the grip colors ttk::style configure TScale \ -background $colors(curr.highlight.darkhighlight) \ -bordercolor $colors(curr.base.border.light) \ -lightcolor $colors(curr.highlight.darkhighlight) \ -darkcolor $colors(curr.highlight.darkhighlight) ttk::style map TScale \ -troughcolor [list disabled $colors(curr.base.dark)] \ -darkcolor [list disabled $colors(curr.base.disabledbg)] \ -lightcolor [list disabled $colors(curr.base.disabledbg)] # scrollbar ttk::style configure TScrollbar \ -background $colors(curr.highlight.selectbg) \ -bordercolor $colors(curr.base.border.light) \ -lightcolor $colors(curr.highlight.selectbg) \ -darkcolor $colors(curr.highlight.selectbg) \ -arrowcolor $colors(curr.base.lightest) ttk::style map TScrollbar \ -arrowcolor [list disabled $colors(curr.base.arrow.disabled)] \ -darkcolor [list disabled $colors(curr.base.frame)] \ -lightcolor [list disabled $colors(curr.base.frame)] # spinbox ttk::style configure TSpinbox \ -bordercolor $colors(curr.base.border) \ -lightcolor $colors(curr.base.dark) \ -arrowcolor $colors(curr.base.arrow) ttk::style map TSpinbox \ -lightcolor [list active $colors(curr.highlight.selectbg) \ focus $colors(curr.highlight.selectbg)] \ -darkcolor [list active $colors(curr.highlight.selectbg) \ focus $colors(curr.highlight.selectbg)] \ -arrowcolor [list disabled $colors(curr.base.arrow.disabled)] \ -fieldbackground [list disabled $colors(curr.base.disabledbg)] if { $::tcl_platform(os) eq "Darwin" } { # mac os x has cross-platform incompatibilities ttk::style configure TSpinbox \ -background $colors(curr.base.dark) ttk::style map TSpinbox \ -background [list disabled $colors(curr.base.disabledbg)] } # treeview ttk::style configure Treeview \ -fieldbackground $colors(curr.base.frame) ttk::style map Treeview \ -background [list selected $colors(curr.highlight.selectbg)] \ -foreground [list selected $colors(curr.highlight.selectfg)] } } proc setBackground { bcol } { variable colors variable vars |
︙ | ︙ | |||
5814 5815 5816 5817 5818 5819 5820 | variable images variable vars if { ! [dict exists $vars(cache.menu) $w] } { dict set vars(cache.menu) $w 1 } | | | | | | | | 5896 5897 5898 5899 5900 5901 5902 5903 5904 5905 5906 5907 5908 5909 5910 5911 5912 5913 5914 5915 | variable images variable vars if { ! [dict exists $vars(cache.menu) $w] } { dict set vars(cache.menu) $w 1 } $w configure -background $colors(curr.base.frame) $w configure -foreground $colors(curr.text.text) $w configure -activebackground $colors(curr.highlight.selectbg) $w configure -activeforeground $colors(curr.highlight.selectfg) $w configure -disabledforeground $colors(curr.base.disabledfg) $w configure -selectcolor $colors(curr.highlight.selectbg) set max [$w index end] if { $max eq "none" } { return } # the standard menu does not have a -mode option |
︙ | ︙ | |||
5859 5860 5861 5862 5863 5864 5865 | variable images variable vars if { ! [dict exists $vars(cache.listbox) $w] } { dict set vars(cache.listbox) $w 1 } | | | | | | | | | | | | | | | 5941 5942 5943 5944 5945 5946 5947 5948 5949 5950 5951 5952 5953 5954 5955 5956 5957 5958 5959 5960 5961 5962 5963 5964 5965 5966 5967 5968 5969 5970 5971 5972 5973 5974 5975 5976 5977 5978 5979 5980 5981 5982 5983 5984 5985 5986 5987 5988 5989 5990 5991 5992 5993 5994 5995 5996 5997 5998 | variable images variable vars if { ! [dict exists $vars(cache.listbox) $w] } { dict set vars(cache.listbox) $w 1 } $w configure -background $colors(curr.base.frame) $w configure -foreground $colors(curr.text.text) $w configure -disabledforeground $colors(curr.base.disabledfg) $w configure -selectbackground $colors(curr.highlight.selectbg) $w configure -selectforeground $colors(curr.highlight.selectfg) $w configure -borderwidth 1p $w configure -relief solid } proc setTextColors { w {useflag {}} } { variable colors variable images variable vars if { ! [dict exists $vars(cache.text) $w] } { dict set vars(cache.text) $w $useflag } if { $useflag eq "-entry" } { $w configure -background $colors(curr.base.entrybg) } elseif { $useflag eq "-dark" } { $w configure -background $colors(curr.base.dark) } else { $w configure -background $colors(curr.base.frame) } $w configure -foreground $colors(curr.text.text) $w configure -selectforeground $colors(curr.highlight.selectfg) $w configure -selectbackground $colors(curr.highlight.selectbg) $w configure -inactiveselectbackground $colors(curr.base.darkest) $w configure -borderwidth 1p } proc awCboxHandler { w } { variable vars variable colors set theme [ttk::style theme use] if { [info exists colors(curr.base.entrybg)] && $theme eq $vars(theme.name) && ! [dict exists $vars(cache.listbox) $w] } { ::ttk::theme::${vars(theme.name)}::setListboxColors $w } } init } } } awinit unset -nocomplain ::awthemename |
Changes to assets/awthemes3/pkgIndex.tcl.
|
| | | > > | | | 1 2 3 4 5 6 7 8 9 10 11 12 | package ifneeded awdark 3.1 \ [list source [file join $dir awthemes.tcl]] package ifneeded awlight 3.1 \ [list source [file join $dir awthemes.tcl]] package ifneeded colorutils 4.3 \ [list source [file join $dir colorutils.tcl]] package ifneeded themeutils 1.0 \ [list source [file join $dir themeutils.tcl]] package ifneeded ttk::theme::awdark 3.1 \ [list source [file join $dir awthemes.tcl]] package ifneeded ttk::theme::awlight 3.1 \ [list source [file join $dir awthemes.tcl]] |
Added assets/awthemes3/themeutils.tcl.
> > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 | #!/usr/bin/tclsh # # themeutils.tcl # # Copyright 2019 Brad Lanam Pleasant Hill, CA # # zlib/libpng license # package provide themeutils 1.0 namespace eval ::themeutils { variable vars proc init {} { variable vars set vars(names.colors.base) { base.disabledfg base.disabledbg base.disabledborder base.frame base.dark base.darker base.darkest base.bpress base.lighter base.lightest highlight.selectbg highlight.selectdisabledbg highlight.darkhighlight highlight.selectfg } set vars(names.colors.derived) { base.arrow base.arrow.disabled base.border base.border.light text.text base.tabborder base.tabinactive base.tabhighlight base.entrybg } # derived colors: # base.arrow # awdark: base.lightest awlight: base.darkest # base.arrow.disabled # awdark: base.lighter awlight: base.darker # base.border # awdark: base.darkest awlight: base.dark # base.border.light # awdark: base.darkest awlight: base.dark # text.text # awdark: base.lightest awlight: base.darkest # base.tabborder # awdark: base.darkest awlight: base.frame # base.tabinactive # awdark: base.frame awlight: base.darker # base.tabhighlight # awdark: #8b9ca1 awlight: base.darkest # base.entrybg # awdark: base.darker awlight: base.lightest } proc setThemeColors { theme args } { variable vars namespace eval ::ttk::theme::$theme {} foreach {cn col} $args { set ::ttk::theme::${theme}::colors(user.$cn) $col } } init } |