From 5d731c9e8e10ebd0cd518762ba38b81f38d8afb5 Mon Sep 17 00:00:00 2001
From: Alex Plotnikov Units
-The Last Visited list is a comrade of the favorites. It allows fast access to the last visited units. The last visits are registered at clicking units in the unit tree or at clicking found lines in the info listbox. +The Last Visited list is a comrade of Favorites. It allows fast access to the last visited units. The last visits are registered at clicking units in the unit tree or at clicking found lines in the info listbox.
diff --git a/lib/e_menu/e_menu.tcl b/lib/e_menu/e_menu.tcl
index 96e93c6..7f0d492 100644
--- a/lib/e_menu/e_menu.tcl
+++ b/lib/e_menu/e_menu.tcl
@@ -27,7 +27,7 @@
package require Tk
namespace eval ::em {
- variable em_version "e_menu 3.4.5b10"
+ variable em_version "e_menu 3.4.5.3"
variable solo [expr {[info exist ::em::executable] || ( \
[info exist ::argv0] && [file normalize $::argv0] eq [file normalize [info script]])} ? 1 : 0]
variable Argv0
@@ -625,7 +625,8 @@ proc ::em::checkForShell {rsel} {
set res yes
}
if {[string first "tclsh " $sel]==0 || [string first "wish " $sel]==0} {
- set sel [append _ [Tclexe] [string range $sel [string first { } $sel] end]]
+ set tclexe [string map {wish.exe tclsh.exe} [Tclexe]]
+ set sel [append _ $tclexe [string range $sel [string first { } $sel] end]]
}
return $res
}
diff --git a/lib/e_menu/src/apave.tcl b/lib/e_menu/src/apave.tcl
index 142097e..6034741 100755
--- a/lib/e_menu/src/apave.tcl
+++ b/lib/e_menu/src/apave.tcl
@@ -1643,8 +1643,8 @@ oo::class create ::apave::APave {
} else {
set dn [file dirname $fn]
set fn [file tail $fn]
- set args [::apave::removeOptions $args -initialdir]
}
+ set dn [::apave::extractOptions args -initialdir $dn]
set args "-initialfile \"$fn\" -initialdir \"$dn\" $parent $args"
incr isfilename
} elseif {$nchooser eq "tk_chooseDirectory"} {
@@ -2828,7 +2828,7 @@ oo::class create ::apave::APave {
if {[string index $st1 0] in [list \t { }]} {
# if space(s) are at the right, remove them at cutting
set n1 [my leadingSpaces $st1]
- $w delete [$w index $idx1] [$w index "$idx1 +$n1 char"]
+ $w delete $idx1 [$w index "$idx1 +$n1 char"]
} elseif {$ch2 eq "\{" && $st1 eq {}} {
# indent + closing brace
if {$st2 eq {}} {
@@ -2846,11 +2846,13 @@ oo::class create ::apave::APave {
set nchars [my leadingSpaces $st2]
set indent [string range $st2 0 [expr {$nchars-1}]]
}
- if {$islist} {
+ if {$islist && ![string match *.0 $idx1] && \
+ [string trim [$w get "$idx1 linestart" $idx1]] ne {}} {
+ # a new line supplied with "list-like pattern"
set indent "$indent$ch1"
incr nchars 2
}
- $w insert [$w index $idx1] \n$indent
+ $w insert $idx1 \n$indent
::tk::TextSetCursor $w [$w index "$idx2 linestart +$nchars char"]
return -code break
}
@@ -3158,9 +3160,10 @@ oo::class create ::apave::APave {
set lst1 [lindex $lwidgets $i]
if {[my Replace_Tcl i lwlen lwidgets {*}$lst1] ne ""} {incr i}
}
- set lwlen [llength $lwidgets]
# firstly, normalize all names that are "subwidgets": .lab instead fra.lab etc
- for {set i $lwlen} {$i} {incr i -1} {
+ set i [set lwlen [llength $lwidgets]]
+ while {$i>1} {
+ incr i -1
set lst1 [lindex $lwidgets $i]
lassign $lst1 name neighbor
lassign [my NormalizeName name i lwidgets] name wname
@@ -3385,8 +3388,15 @@ oo::class create ::apave::APave {
if {[set ontop [::apave::getOption -ontop {*}$args]] eq {}} {
set ontop no
catch {
- set wpar [winfo parent $win]
- set ontop [wm attributes $wpar -topmost]
+ set ontop [wm attributes [winfo parent $win] -topmost]
+ }
+ if {!$ontop} {
+ # find if a window child of "." is topmost
+ # if so, let this one be topmost too
+ foreach w [winfo children .] {
+ catch {set ontop [wm attributes $w -topmost]}
+ if {$ontop} break
+ }
}
}
if {[set modal [::apave::getOption -modal {*}$args]] eq {}} {
diff --git a/lib/e_menu/src/apaveinput.tcl b/lib/e_menu/src/apaveinput.tcl
index b055d96..0b13e96 100644
--- a/lib/e_menu/src/apaveinput.tcl
+++ b/lib/e_menu/src/apaveinput.tcl
@@ -34,7 +34,7 @@
package require Tk
-package provide apave 3.4.5b10
+package provide apave 3.4.5.4
source [file join [file dirname [info script]] apavedialog.tcl]
diff --git a/lib/e_menu/src/obbit.tcl b/lib/e_menu/src/obbit.tcl
index 7b404c9..c0d9b2c 100644
--- a/lib/e_menu/src/obbit.tcl
+++ b/lib/e_menu/src/obbit.tcl
@@ -44,54 +44,54 @@ namespace eval ::apave {
fI bI --12-- bM fW bW itemHL2 tabHL #004...reserved...
set ::apave::_CS_(ALL) {
-{{ 0: AzureLight} "#050b0d" #050b0d #fff #e1e1df #002aaa #8dd9db #000 #444 grey #0e7b7c #000 #81cdcf - #d7d7d7 #000 #FBFB95 #e2e2e0 #ad0000 #004 #005 #006 #007}
-{{ 1: ForestLight} "#050b0d" #050b0d #fff #e1e1df #004000 #A8CCA8 #000 #444 grey #217346 #000 #a8bda8 - #d7d7d7 #000 #FBFB95 #e2e2e0 #ad0000 #004 #005 #006 #007}
-{{ 2: SunValleyLight} "#050b0d" #050b0d #fff #d9d9d9 #00469f #74c9ff #000 #444 grey #005fb8 #000 #7fcbff - #cccccc #000 #FBFB95 #e2e2e0 #950000 #004 #005 #006 #007}
-{{ 3: AwLight} "#141414" #151616 #dfdfde #d1d1d0 #562222 #85b4e7 #000 #444 grey #1a497c #000 #7fb8ce - #bebebd #000 #FBFB96 #cacaca #a20000 #004 #005 #006 #007}
+{{ 0: AwLight} "#141414" #151616 #dfdfde #d1d1d0 #562222 #85b4e7 #000 #444 grey #1a497c #000 #7fb8ce - #bebebd #000 #FBFB96 #cacaca #a20000 #004 #005 #006 #007}
+{{ 1: AzureLight} "#050b0d" #050b0d #fff #e1e1e1 #002aaa #8dd9db #000 #444 grey #0e7b7c #000 #81cdcf - #cccccc #000 #FBFB95 #e2e2e0 #ad0000 #004 #005 #006 #007}
+{{ 2: ForestLight} "#050b0d" #050b0d #fff #e1e1e1 #004000 #A8CCA8 #000 #444 grey #217346 #000 #a8bda8 - #cccccc #000 #FBFB95 #e2e2e0 #ad0000 #004 #005 #006 #007}
+{{ 3: SunValleyLight} "#050b0d" #050b0d #fff #e1e1e1 #00469f #74c9ff #000 #444 grey #005fb8 #000 #7fcbff - #cccccc #000 #FBFB95 #e2e2e0 #950000 #004 #005 #006 #007}
{{ 4: Grey1} "#050b0d" #050b0d #F8F8F8 #dadad8 #5c1616 #AFAFAF #000 #444 grey #933232 #000 #AFAFAF - #caccd0 #000 #FBFB95 #e0e0d8 #a20000 #004 #005 #006 #007}
-{{ 5: Grey2} "#050b0d" #050b0d #e9e9e7 #F8F8F8 #5c1616 #b8b8b8 #000 #444 grey #933232 #000 #c1c1c1 - #e1e1df #000 #FBFB95 #d5d5d3 #a20000 #004 #005 #006 #007}
+{{ 5: Grey2} "#050b0d" #050b0d #e9e9e7 #F8F8F8 #5c1616 #b8b8b8 #000 #444 grey #933232 #000 #c1c1c1 - #e1e1e1 #000 #FBFB95 #d5d5d3 #a20000 #004 #005 #006 #007}
{{ 6: Rosy} "#2B122A" #000 #FFFFFF #F6E6E9 #570957 #C5ADC8 #000 #444 grey #870287 #000 #ceb6d1 - #e3d3d6 #000 #FBFB95 #e5e3e1 #a20000 #004 #005 #006 #007}
{{ 7: Clay} "#000" #000 #fdf4ed #ded3cc #500a0a #bcaea2 #000 #444 grey #843500 #fff #9a8f83 - #d5c9c1 #000 #FBFB95 #e1dfde #a20000 #004 #005 #006 #007}
{{ 8: Dawn} "#08085D" #030358 #FFFFFF #e3f9f9 #562222 #a3dce5 #000 #444 grey #933232 #000 #99d2db - #d3e9e9 #000 #FBFB96 #dbe9ed #a20000 #004 #005 #006 #007}
{{ 9: Sky} "#102433" #0A1D33 #d0fdff #bdf6ff #562222 #95ced7 #000 #444 grey #933232 #000 #9ad3dc - #b1eaf3 #000 #FBFB95 #c0e9ef #a20000 #004 #005 #006 #007}
-{{10: Florid} "#000" #004000 #e4fce4 #fff #5c1616 #93e493 #0F2D0F #444 grey #802e00 #004000 #a7f8a7 - #eefdee #000 #FBFB96 #d7e6d7 #a20000 #004 #005 #006 #007}
-{{11: LightGreen} "#122B05" #091900 #edffed #DEF8DE #562222 #A8CCA8 #000 #444 grey #933232 #000 #A8CCA8 - #d0ead0 #000 #FBFB96 #dee9de #a20000 #004 #005 #006 #007}
-{{12: InverseGreen} "#122B05" #091900 #cce6c8 #DEF8DE #562222 #9cc09c #000 #444 grey #933232 #000 #b5d9b5 - #cce6cc #000 #FBFB96 #bed8ba #a20000 #004 #005 #006 #007}
-{{13: GreenPeace} "#001000" #001000 #e1ffdd #cadfca #562222 #9dbb99 #000 #444 grey #933232 #000 #9cb694 - #c1dfbd #000 #FBFB96 #d2e1d2 #a20000 #004 #005 #006 #007}
-{{14: African} "#000" #000 #fff #ffffe7 #460000 #ffd797 #000 #6f2509 #7e7e7e #771d00 #000 #e6ae80 - #fffff9 #000 #eded89 #ededd5 #a20000 #004 #005 #006 #007}
-{{15: African1} "#000" #000 #f5f5dd #f2ebd2 #460000 #ffc48a #000 #6f2509 #7e7e7e #771d00 #000 #e6ae80 - #fffce3 #000 #eded89 #e3e3cb #a20000 #004 #005 #006 #007}
-{{16: African2} "#000" #000 #ffffe4 #eae7c0 #500a0a #eaac7a #000 #6f2509 grey #771d00 #00003c #e6ae80 - #f4f0ca #000 #fbfb74 #e7e7cb #a20000 #004 #005 #006 #007}
-{{17: African3} "#000" #000 #fdf9d0 #d5d2af #500a0a #d59d6f #000 #6f2509 grey #771d00 #00003c #e6ae80 - #dedbb8 #000 #fbfb74 #e5e5cc #c10000 #004 #005 #006 #007}
+{{10: Florid} "#000" #004000 #e4fce4 #fff #5c1616 #93e493 #0F2D0F #444 grey #802e00 #004000 #a7f8a7 - #d8e7d8 #000 #FBFB96 #d7e6d7 #a20000 #004 #005 #006 #007}
+{{11: LightGreen} "#122B05" #091900 #edffed #DEF8DE #562222 #A8CCA8 #000 #444 grey #933232 #000 #A8CCA8 - #cde7cd #000 #FBFB96 #dee9de #a20000 #004 #005 #006 #007}
+{{12: InverseGreen} "#122B05" #091900 #cce6c8 #DEF8DE #562222 #9cc09c #000 #444 grey #933232 #000 #b5d9b5 - #c9e3c9 #000 #FBFB96 #bed8ba #a20000 #004 #005 #006 #007}
+{{13: GreenPeace} "#001000" #001000 #e1ffdd #cadfca #562222 #9dbb99 #000 #444 grey #933232 #000 #9cb694 - #b9d3b9 #000 #FBFB96 #d2e1d2 #a20000 #004 #005 #006 #007}
+{{14: African} "#000" #000 #fff #ffffe7 #460000 #ffd797 #000 #6f2509 #7e7e7e #771d00 #000 #e6ae80 - #e7e7cf #000 #eded89 #ededd5 #a20000 #004 #005 #006 #007}
+{{15: African1} "#000" #000 #f5f5dd #f2ebd2 #460000 #ffc48a #000 #6f2509 #7e7e7e #771d00 #000 #f2ebd2 - #e3dcc3 #000 #eded89 #e3e3cb #a20000 #004 #005 #006 #007}
+{{16: African2} "#000" #000 #ffffe4 #eae7c0 #500a0a #eaac7a #000 #6f2509 grey #771d00 #00003c #e6ae80 - #dddab3 #000 #fbfb74 #e7e7cb #a20000 #004 #005 #006 #007}
+{{17: African3} "#000" #000 #fdf9d0 #d5d2af #500a0a #d59d6f #000 #6f2509 grey #771d00 #00003c #e6ae80 - #c5c29f #000 #fbfb74 #e5e5cc #c10000 #004 #005 #006 #007}
{{18: Yellowstone} "#00002f" #00003c #ffffd1 #cfcdb1 #591c0e #c89160 #000 #444 grey #771d00 #3b1516 #cfab86 - #c2c0a4 #000 #ffff45 #e6e6bb #a30000 #004 #005 #006 #007}
{{19: Notebook} "#000" #000 #e9e1c8 #c2bca8 #460000 #d59d6f #000 #444 #7e7e7e #771d00 #000 #c09c77 - #d0cab6 #000 #eded89 #dad2b9 #a20000 #004 #005 #006 #007}
{{20: Notebook1} "#000" #000 #dad2b9 #b5af9b #460000 #d59d6f #000 #444 #707070 #771d00 #000 #ba9671 - #c5bfab #000 #eded89 #ccc4ab #a20000 #004 #005 #006 #007}
{{21: Notebook2} "#000" #000 #cdc5ac #a6a08c #460000 #d59d6f #000 #444 #606060 #771d00 #000 #cfab86 - #b4ae9a #000 #eded89 #c1b9a0 #980000 #004 #005 #006 #007}
{{22: Notebook3} "#000" #000 #beb69d #96907c #460000 #d59d6f #000 #444 #505050 #771d00 #000 #cfab86 - #a6a08c #000 #eded89 #b2aa91 #7b1010 #004 #005 #006 #007}
-{{23: Dusk} "#ececec" #ececec #1a1f21 #262b2d #f1b479 #6b7072 #000 #f4f49f #585d5f #ffbb6d #000 #6b7072 - #363b3d #000 #9e9e3a #23282a #ffabab #004 #005 #006 #007}
-{{24: Darcula} "#ececec" #c7c7c7 #272727 #323232 #e98f1c #2F5692 #e1e1e1 #f4f49f grey #d18d3f #EDC881 #2a518d - #444444 #000 #a2a23e #343434 #f28787 #004 #005 #006 #007}
-{{25: AzureDark} "#ececec" #c7c7c7 #272727 #393939 #28a7ff #007fff #FFF #f4f49f grey #33b2ff #EDC881 #0062a5 - #444444 #000 #a2a23e #404040 #ffc341 #004 #005 #006 #007}
-{{26: ForestDark} "#ececec" #c7c7c7 #272727 #393939 #95bf95 #217346 #FFF #f4f49f grey #99c399 #ffffff #247649 - #444444 #000 #a2a23e #323232 #efaf6f #004 #005 #006 #007}
-{{27: SunValleyDark} "#dfdfdf" #dddddd #131313 #252525 #38a9e0 #2f60d8 #FFF #f4f49f #6f6f6f #57c8ff #fff #2051c9 - #2d2d2d #000 #a2a23e #2a2a2a #efaf6f #004 #005 #006 #007}
-{{28: AwDark} "#F0E8E8" #E7E7E7 #1f2223 #232829 #de9e5e #215d9c #fff #f4f49f grey #80bcfb #fff #134f8e - #313637 #000 #cdcd69 #292e2f #ffabab #004 #005 #006 #007}
+{{23: Darcula} "#ececec" #c7c7c7 #272727 #323232 #e98f1c #2F5692 #e1e1e1 #f4f49f grey #d18d3f #EDC881 #2a518d - #444444 #000 #a2a23e #343434 #f28787 #004 #005 #006 #007}
+{{24: Dusk} "#ececec" #ececec #1a1f21 #262b2d #f1b479 #6b7072 #000 #f4f49f #585d5f #ffbb6d #000 #6b7072 - #363b3d #000 #9e9e3a #23282a #ffabab #004 #005 #006 #007}
+{{25: AwDark} "#F0E8E8" #E7E7E7 #1f2223 #232829 #de9e5e #215d9c #fff #f4f49f grey #80bcfb #fff #134f8e - #313637 #000 #cdcd69 #292e2f #ffabab #004 #005 #006 #007}
+{{26: AzureDark} "#ececec" #c7c7c7 #272727 #393939 #28a7ff #007fff #FFF #f4f49f grey #33b2ff #EDC881 #0062a5 - #4a4a4a #000 #a2a23e #404040 #ffc341 #004 #005 #006 #007}
+{{27: ForestDark} "#ececec" #c7c7c7 #272727 #393939 #95bf95 #217346 #FFF #f4f49f grey #99c399 #ffffff #247649 - #4a4a4a #000 #a2a23e #323232 #efaf6f #004 #005 #006 #007}
+{{28: SunValleyDark} "#dfdfdf" #dddddd #131313 #252525 #38a9e0 #2f60d8 #FFF #f4f49f #6f6f6f #57c8ff #fff #2051c9 - #323232 #000 #a2a23e #2a2a2a #efaf6f #004 #005 #006 #007}
{{29: Dark1} "#E0D9D9" #C4C4C4 #212121 #292929 #de9e5e #6c6c6c #000 #f4f49f #606060 #eda95b #000 #767676 - #363636 #000 #cdcd69 #292929 #ffabab #004 #005 #006 #007}
-{{30: Dark2} "#bebebe" #bebebe #1f1f1f #262626 #de9e5e #6b6b6b #000 #f4f49f #616161 #eda95b #000 #767676 - #2b2b2b #000 #b0b04c #262626 #ffabab #004 #005 #006 #007}
-{{31: Dark3} "#bebebe" #bebebe #0a0a0a #232323 #de9e5e #6a6a6a #000 #f4f49f #616161 #eda95b #000 #767676 - #1c1c1c #000 #bebe5a #131313 #ffabab #004 #005 #006 #007}
-{{32: Oscuro} "#f1f1f1" #f1f1f1 #344545 #526d6d #f1b479 #728d8d #fff #f4f49f #afafaf #f7c475 #000 #94afaf - #4f6666 #000 #cdcd69 #3d4e4e #ffbcbc #004 #005 #006 #007}
-{{33: Oscuro1} "#f1f1f1" #f1f1f1 #2a3b3b #466161 #e5a565 #6c8787 #fff #f4f49f #a2a2a2 #edba6b #000 #8ba6a6 - #4a6161 #000 #cdcd69 #354646 #ffbcbc #004 #005 #006 #007}
-{{34: Oscuro2} "#f1f1f1" #f1f1f1 #223333 #3e5959 #de9e5e #668181 #fff #f4f49f #a2a2a2 #e4b162 #000 #819c9c - #3f5656 #000 #cdcd69 #2b3c3c #ffbcbc #004 #005 #006 #007}
-{{35: Oscuro3} "#f1f1f1" #f1f1f1 #192a2a #355050 #de9e5e #5c7777 #fff #f4f49f #9e9e9e #dfac5d #000 #779292 - #364d4d #000 #cdcd69 #223333 #ffbcbc #004 #005 #006 #007}
-{{36: MildDark} "#d2d2d2" #fff #222323 #384e66 #2ccaca #4b7391 #fff #00ffff #939393 #43e1e1 #000 #668eac - #2c4057 #000 #bebe5a #2b2c2c #ffa2a2 #004 #005 #006 #007}
-{{37: MildDark1} "#d2d2d2" #fff #151616 #2D435B #2ac8c8 #436b89 #fff #00ffff grey #36d4d4 #000 #668eac - #24384f #000 #bebe5a #1f2020 #ffb0b0 #004 #005 #006 #007}
-{{38: MildDark2} "#b4b4b4" #fff #0d0e0e #24384f #28c6c6 #3e6684 #fff #00ffff #757575 #33d1d1 #000 #668eac - #1a2f47 #000 #bebe5a #161717 #ffaeae #004 #005 #006 #007}
-{{39: MildDark3} "#e2e2e2" #f1f1f1 #000 #1B3048 #27c5c5 #375f7d #fff #00ffff #6c6c6c #31d0d0 #000 #668eac - #11263e #000 #b0b04c #0f0f0f #ffafaf #004 #005 #006 #007}
+{{30: Dark2} "#bebebe" #bebebe #1f1f1f #262626 #de9e5e #6b6b6b #000 #f4f49f #616161 #eda95b #000 #767676 - #323232 #000 #b0b04c #262626 #ffabab #004 #005 #006 #007}
+{{31: Dark3} "#bebebe" #bebebe #0a0a0a #232323 #de9e5e #6a6a6a #000 #f4f49f #616161 #eda95b #000 #767676 - #303030 #000 #bebe5a #131313 #ffabab #004 #005 #006 #007}
+{{32: Oscuro} "#f1f1f1" #f1f1f1 #344545 #526d6d #f1b479 #728d8d #fff #f4f49f #afafaf #f7c475 #000 #94afaf - #5d7474 #000 #cdcd69 #3d4e4e #ffbcbc #004 #005 #006 #007}
+{{33: Oscuro1} "#f1f1f1" #f1f1f1 #2a3b3b #466161 #e5a565 #6c8787 #fff #f4f49f #a2a2a2 #edba6b #000 #8ba6a6 - #526969 #000 #cdcd69 #354646 #ffbcbc #004 #005 #006 #007}
+{{34: Oscuro2} "#f1f1f1" #f1f1f1 #223333 #3e5959 #de9e5e #668181 #fff #f4f49f #a2a2a2 #e4b162 #000 #819c9c - #4c6363 #000 #cdcd69 #2b3c3c #ffbcbc #004 #005 #006 #007}
+{{35: Oscuro3} "#f1f1f1" #f1f1f1 #192a2a #355050 #de9e5e #5c7777 #fff #f4f49f #9e9e9e #dfac5d #000 #779292 - #425959 #000 #cdcd69 #223333 #ffbcbc #004 #005 #006 #007}
+{{36: MildDark} "#d2d2d2" #fff #222323 #384e66 #2ccaca #4b7391 #fff #00ffff #939393 #43e1e1 #000 #668eac - #455b73 #000 #bebe5a #2b2c2c #ffa2a2 #004 #005 #006 #007}
+{{37: MildDark1} "#d2d2d2" #fff #151616 #2D435B #2ac8c8 #436b89 #fff #00ffff grey #36d4d4 #000 #668eac - #3a5068 #000 #bebe5a #1f2020 #ffb0b0 #004 #005 #006 #007}
+{{38: MildDark2} "#b4b4b4" #fff #0d0e0e #24384f #28c6c6 #3e6684 #fff #00ffff #757575 #33d1d1 #000 #668eac - #33475e #000 #bebe5a #161717 #ffaeae #004 #005 #006 #007}
+{{39: MildDark3} "#e2e2e2" #f1f1f1 #000 #1B3048 #27c5c5 #375f7d #fff #00ffff #6c6c6c #31d0d0 #000 #668eac - #2a3f57 #000 #b0b04c #0f0f0f #ffafaf #004 #005 #006 #007}
{{40: Inkpot} "#d3d3ff" #AFC2FF #16161f #1E1E27 #de9e5e #6767a8 #000 #f4f49f #6e6e6e #ffbb6d #000 #8585c6 - #292936 #000 #a2a23e #202029 #ffa5a5 #004 #005 #006 #007}
{{41: Quiverly} "#cdd8d8" #cdd8d8 #2b303b #333946 #de9e5e #6f7582 #000 #f4f49f #757575 #eda95b #000 #9197a4 - #414650 #000 #b0b04c #323742 #ffabab #004 #005 #006 #007}
{{42: Monokai} "#f8f8f2" #f8f8f2 #353630 #4e5044 #f1b479 #707070 #000 #f4f49f #9a9a9a #ffbb6d #000 #777777 - #46473d #000 #cdcd69 #3c3d37 #ffabab #004 #005 #006 #007}
-{{43: Desert} "#fff" #fff #47382d #5a4b40 #f1b479 #78695e #000 #f4f49f #a2a2a2 #ffbb6d #000 #7f7065 - #55463b #000 #eded89 #503f34 #ffabab #004 #005 #006 #007}
+{{43: TKE Default} "#dbdbdb" #dbdbdb #000 #282828 #de9e5e #0a0acc #fff #f4f49f #6a6a6a #d3a85a #fff #0000d3 - #383838 #000 #b0b04c #0d0e0e #ffabab #004 #005 #006 #007}
{{44: Magenta} "#E8E8E8" #F0E8E8 #381e44 #4A2A4A #f1b479 #846484 #000 #f4f49f grey #ffbb6d #000 #ad8dad - #573757 #000 #cdcd69 #42284e #ffabab #004 #005 #006 #007}
-{{45: Red} "#fff" #e9e9e6 #340202 #440702 #f1b479 #b05e5e #000 #f4f49f #828282 #ffbb6d #000 #ba6868 - #3e0100 #000 #bebe5a #461414 #ffc1c1 #004 #005 #006 #007}
-{{46: Chocolate} "#d6d1ab" #d6d1ab #251919 #402020 #de9e5e #664D4D #fff #f4f49f #828282 #c3984a #fff #583f3f - #361d1d #000 #b0b04c #2d2121 #ffb7b7 #004 #005 #006 #007}
-{{47: TKE Default} "#dbdbdb" #dbdbdb #000 #282828 #de9e5e #0a0acc #fff #f4f49f #6a6a6a #d3a85a #fff #0000d3 - #383838 #000 #b0b04c #0d0e0e #ffabab #004 #005 #006 #007}
+{{45: Red} "#fff" #e9e9e6 #340202 #440702 #f1b479 #b05e5e #000 #f4f49f #828282 #ffbb6d #000 #ba6868 - #521514 #000 #bebe5a #461414 #ffc1c1 #004 #005 #006 #007}
+{{46: Chocolate} "#d6d1ab" #d6d1ab #251919 #402020 #de9e5e #664D4D #fff #f4f49f #828282 #c3984a #fff #583f3f - #432a2a #000 #b0b04c #2d2121 #ffb7b7 #004 #005 #006 #007}
+{{47: Desert} "#fff" #fff #47382d #5a4b40 #f1b479 #78695e #000 #f4f49f #a2a2a2 #ffbb6d #000 #7f7065 - #695a4f #000 #eded89 #503f34 #ffabab #004 #005 #006 #007}
}
set ::apave::_CS_(initall) 1
set ::apave::_CS_(initWM) 1
@@ -1451,7 +1451,7 @@ oo::class create ::apave::ObjectTheming {
}
set fontdef [font actual apaveFontDef]
# configuring themed widgets
- foreach ts {TLabel TButton TCheckbutton TRadiobutton TNotebook.Tab} {
+ foreach ts {TLabel TButton TCheckbutton TRadiobutton} {
my Ttk_style configure $ts -font $fontdef
my Ttk_style configure $ts -foreground $tfg1
my Ttk_style configure $ts -background $tbg1
@@ -1465,14 +1465,14 @@ oo::class create ::apave::ObjectTheming {
my Ttk_style configure TLabelframe.Label -background $tbg1
my Ttk_style configure TLabelframe.Label -font $fontdef
foreach ts {TNotebook TFrame} {
- my Ttk_style configure $ts -background $tbg1
+ my Ttk_style map $ts -background [list focus $tbg1 !focus $tbg1]
}
foreach ts {TNotebook.Tab} {
my Ttk_style configure $ts -font $fontdef
if {[my apaveTheme]} {
- my Ttk_style map $ts -foreground [list selected $tfgS active $tfg2]
+ my Ttk_style map $ts -foreground [list {selected !active} $tfgS {!selected !active} $tfgM active $tfg2 {selected active} $tfg2]
}
- my Ttk_style map $ts -background [list selected $tbgS {active disabled} $tbg1 active $tbg2]
+ my Ttk_style map $ts -background [list {selected !active} $tbgS {!selected !active} $tbgM {!selected active} $tbg2 {selected active} $tbg2]
}
foreach ts {TEntry Treeview TSpinbox TCombobox TCombobox.Spinbox TMatchbox TNotebook.Tab TScrollbar TScale} {
my Ttk_style map $ts -lightcolor [list focus $bclr active $bclr]
@@ -1525,6 +1525,8 @@ oo::class create ::apave::ObjectTheming {
option add *Menu.font $fontdef
my Ttk_style configure TMenubutton -foreground $tfgM
my Ttk_style configure TMenubutton -background $tbgM
+ my Ttk_style configure TButton -foreground $tfgM
+ my Ttk_style configure TButton -background $tbgM
foreach {nam clr} {back tbg2 fore tfg2 selectBack tbgS selectFore tfgS} {
option add *Listbox.${nam}ground [set $clr]
}
@@ -1562,12 +1564,14 @@ oo::class create ::apave::ObjectTheming {
set ::apave::_C_($ts,4) "-activebackground $tbgS"
set ::apave::_C_($ts,5) "-disabledforeground $tfgD"
set ::apave::_C_($ts,6) "-font {$fontdef}"
- if {[my apaveTheme]} {
- set ::apave::_C_($ts,7) {-borderwidth 2}
- set ::apave::_C_($ts,8) {-relief raised}
+ if {[::iswindows]} {
+ set ::apave::_C_($ts,0) 6
+ } elseif {[my apaveTheme]} {
+ set ::apave::_C_($ts,7) {-borderwidth 2}
+ set ::apave::_C_($ts,8) {-relief raised}
} else {
- set ::apave::_C_($ts,7) {-borderwidth 1}
- set ::apave::_C_($ts,8) {-relief groove}
+ set ::apave::_C_($ts,7) {-borderwidth 1}
+ set ::apave::_C_($ts,8) {-relief groove}
}
if {[my csDarkEdit]} {set c white} {set c black}
set ::apave::_C_($ts,9) "-selectcolor $c"
diff --git a/lib/e_menu/src/pkgIndex.tcl b/lib/e_menu/src/pkgIndex.tcl
index 2e31da7..a0d74df 100644
--- a/lib/e_menu/src/pkgIndex.tcl
+++ b/lib/e_menu/src/pkgIndex.tcl
@@ -1,5 +1,5 @@
-package ifneeded apave 3.4.5b10 [list source [file join $dir apaveinput.tcl]]
+package ifneeded apave 3.4.5.4 [list source [file join $dir apaveinput.tcl]]
# A short intro (for Ruff! docs generator:)
diff --git a/lib/hl_tcl/hl_c.tcl b/lib/hl_tcl/hl_c.tcl
index c7750c9..3d13f1a 100755
--- a/lib/hl_tcl/hl_c.tcl
+++ b/lib/hl_tcl/hl_c.tcl
@@ -542,6 +542,7 @@ proc ::hl_c::hl_init {txt args} {
set args [lrange $args 1 end]
}
set ::hl_c::my::data(REG_TXT,$txt) {} ;# disables Modified at changing the text
+ set ::hl_c::my::data(KEYWORDS,$txt) {}
foreach {opt val} {-dark 0 -readonly 0 -cmd {} -cmdpos {} -optRE 1 \
-multiline 1 -seen 500 -plaintext no -insertwidth 2 -keywords {}} {
if {[dict exists $args $opt]} {
@@ -680,15 +681,14 @@ proc ::hl_c::hl_line {txt} {
# txt - text's path
if {!$::hl_c::my::data(PLAINTEXT,$txt)} {
- set ln [expr {int([$txt index insert])}]
set tSTR [$txt tag ranges tagSTR]
set tCMN [$txt tag ranges tagCMN]
- if {$ln==1} {
- set currQtd -1
- } else {
- set currQtd [::hl_c::my::LineState $txt $tSTR $tCMN "$ln.0 -1 chars"]
- }
- ::hl_c::my::HighlightLine $txt $ln $currQtd
+ set ln0 [expr {int([$txt index insert])}]
+ set ln2 [expr {int([$txt index end])}]
+ set ln1 [expr {max (1,$ln0-1)}]
+ set ln2 [expr {min ($ln2,$ln0+1)}]
+ # update lines: previous, current, next
+ after idle "::hl_c::my::CoroRun $txt $ln1 $ln2"
}
::hl_c::my::MemPos $txt yes
$txt configure -insertwidth $::hl_c::my::data(INSERTWIDTH,$txt)
diff --git a/lib/hl_tcl/hl_tcl.tcl b/lib/hl_tcl/hl_tcl.tcl
index 2087005..0171339 100755
--- a/lib/hl_tcl/hl_tcl.tcl
+++ b/lib/hl_tcl/hl_tcl.tcl
@@ -7,7 +7,7 @@
# License: MIT.
###########################################################
-package provide hl_tcl 0.9.22
+package provide hl_tcl 0.9.26
# ______________________ Common data ____________________ #
@@ -37,7 +37,7 @@ namespace eval ::hl_tcl {
pkg::create tcl::prefix \
http::config http::geturl http::formatQuery http::reset http::wait \
http::status http::size http::code http::ncode http::meta http::data \
- http::error http::cleanup http::register http::unregister \
+ http::error http::cleanup http::register http::unregister * \
]]
# Ttk commands
@@ -57,25 +57,28 @@ namespace eval ::hl_tcl {
]
# Tk/ttk commands united
- set data(CMD_TK) [lsort [concat $data(CMD_TTK) $data(CMD_TK2) [list \
+ set data(CMD_TK) [concat $data(CMD_TTK) $data(CMD_TK2) [list \
button entry checkbutton radiobutton label menubutton menu wm winfo bind \
grid pack event bell text canvas frame listbox grab scale scrollbar \
labelframe focus font bindtags image selection toplevel destroy \
option options spinbox bitmap photo keysyms send lower clipboard colors \
console message cursors panedwindow place raise \
- ]]]
+ ]]
# allowed edges of string (as one and only)
- set data(S_LEFT) [list "\{" "\["]
- set data(S_RIGHT) [list "\}" "\]"]
+ set data(S_LEFT) [list \{ \[]
+ set data(S_RIGHT) [list \} \]]
# allowed edges of string (as one or both)
- set data(S_SPACE) [list "" " " "\t" ";"]
- set data(S_SPACE2) [concat $data(S_SPACE) [list "\{"]]
- set data(S_BOTH) [concat $data(S_SPACE) [list "\"" "="]]
+ set data(S_SPACE) [list {} { } \t {;}]
+ set data(S_SPACE2) [concat $data(S_SPACE) [list \{]]
+ set data(S_BOTH) [concat $data(S_SPACE) [list \" \}]]
- set data(RE0) {(^|[\{\}\[;])+\s*([:\w]+)([\s\}\];]|$){1}}
- set data(RE1) {([\{\}\[;])+\s*([:\w]+)([\s\}\];]|$){1}}
+ set data(RE0) {(^|[\{\}\[;])+\s*([:\w*]+)(\s|\]|\}|\\|$)}
+ set data(RE1) {([\{\}\[;])+\s*([:\w*]+)(\s|\]|\}|\\|$)}
set data(RE5) {(^|[^\\])(\[|\]|\$|\{|\})+}
+
+ set data(LBR) {\{(\[}
+ set data(RBR) {\})\]}
}
}
@@ -168,7 +171,7 @@ proc ::hl_tcl::my::HighlightCmd {txt line ln pri i} {
$txt tag add tagCOM "$ln.$pri +$i1 char" "$ln.$pri +$i2 char"
} elseif {[lsearch -exact -sorted $data(PROC_TCL) $c]>-1} {
$txt tag add tagPROC "$ln.$pri +$i1 char" "$ln.$pri +$i2 char"
- } elseif {[lsearch -exact -sorted $data(CMD_TK) $c]>-1} {
+ } elseif {[lsearch -exact -sorted $data(CMD_TK_EXP) $c]>-1} {
$txt tag add tagCOMTK "$ln.$pri +$i1 char" "$ln.$pri +$i2 char"
}
}
@@ -401,7 +404,7 @@ proc ::hl_tcl::my::CountQSH {txt ln} {
set ln [expr {int($ln)}]
set st [$txt get $ln.0 $ln.end]
- return [list [CountChar $st "\""] [CountChar $st "\\"] [CountChar $st #]]
+ return [list [CountChar $st \"] [CountChar $st \\] [CountChar $st #]]
}
#_____
@@ -440,7 +443,7 @@ proc ::hl_tcl::my::MemPos1 {txt {donorm yes} {K ""} {s ""}} {
# This fixes an issue with text cursor: less width at 0th column.
variable data
- if {$K eq "Home" && [string is digit -strict $s] && \
+ if {$K eq {Home} && [string is digit -strict $s] && \
[expr {$s & 4}]==0 && [expr {$s & 1}]==0} {
# Ctrl-Home & Shift-Home are passed
set p1 [$txt index insert]
@@ -458,7 +461,7 @@ proc ::hl_tcl::my::MemPos1 {txt {donorm yes} {K ""} {s ""}} {
}
set insLC [$txt index insert]
lassign [split $insLC .] L C
- if {$data(_INSPOS_,$txt) eq ""} {
+ if {$data(_INSPOS_,$txt) eq {}} {
set L2 [set C2 0]
} else {
lassign [split $data(_INSPOS_,$txt) .] L2 C2
@@ -472,6 +475,7 @@ proc ::hl_tcl::my::MemPos1 {txt {donorm yes} {K ""} {s ""}} {
}
return $insLC
}
+#_____
proc ::hl_tcl::my::MemPos {txt {doit no}} {
# Remembers the state of current line.
@@ -648,10 +652,6 @@ proc ::hl_tcl::my::InRange {p1 p2 l {c -1}} {
return [expr { \
($l>=$l1 && $l<$l2 && $c>=$c1) || ($l>$l1 && $l<=$l2 && $c<=$c2) ||
($l==$l1 && $l1==$l2 && $c>=$c1 && $c<=$c2) || ($l>$l1 && $l<$l2)}]
- #set p [format "%09d%09d" $l $c]
- #set p1 [format "%09d%09d" $l1 $c1]
- #set p2 [format "%09d%09d" $l2 $c2]
- #return [expr {$p>=$p1 && $p<=$p2}]
}
# doctest:
#% ::hl_tcl::my::InRange 9.0 9.20 9.0
@@ -718,7 +718,7 @@ proc ::hl_tcl::my::LineState {txt tSTR tCMN l1} {
set co1 [set co2 {}]
while {$nl>1} {
incr nl -1
- if {[set line [$txt get $nl.0 $nl.end]] ne ""} {
+ if {[set line [$txt get $nl.0 $nl.end]] ne {}} {
if {$co2 eq {}} {
set co2 [$txt index "$nl.end -1 char"]
if {[string length $line]>1} {
@@ -736,7 +736,7 @@ proc ::hl_tcl::my::LineState {txt tSTR tCMN l1} {
set ch [$txt get $co2 "$co2 +1 chars"]
set c [lindex [split [$txt index $co2] .] 1]
if {![NotEscaped $line $c]} {set ch {}}
- return [expr {$ch!="\"" && $f2 || $ch=="\"" && !$f1}]
+ return [expr {$ch ne {"} && $f2 || $ch eq {"} && !$f1}]
}
# is the end of line quoted?
set line {}
@@ -751,7 +751,7 @@ proc ::hl_tcl::my::LineState {txt tSTR tCMN l1} {
if {![NotEscaped $line $c]} {set ch {}}
set f1 [expr {[SearchTag $tSTR [$txt index $i1]]!=-1}]
set f2 [expr {[SearchTag $tSTR [$txt index "$i1 +1 chars"]]!=-1}]
- return [expr {$ch!="\"" && $f1 || $ch=="\"" && !$f2}]
+ return [expr {$ch ne {"} && $f1 || $ch eq {"} && !$f2}]
}
return 0
}
@@ -884,28 +884,27 @@ proc ::hl_tcl::my::HighlightBrackets {w} {
# Highlights matching brackets if any.
# w - text widget's path
+ variable data
set curpos [ShowCurrentLine $w]
set curpos2 [$w index {insert -1 chars}]
set ch [$w get $curpos]
- set lbr "\{(\["
- set rbr "\})\]"
- set il [string first $ch $lbr]
- set ir [string first $ch $rbr]
+ set il [string first $ch $data(LBR)]
+ set ir [string first $ch $data(RBR)]
set txt [split [$w get 1.0 end] \n]
if {$il>-1} {
set brcpos [MatchedBrackets $txt $curpos \
- [string index $lbr $il] [string index $rbr $il] 1]
+ [string index $data(LBR) $il] [string index $data(RBR) $il] 1]
} elseif {$ir>-1} {
set brcpos [MatchedBrackets $txt $curpos \
- [string index $rbr $ir] [string index $lbr $ir] -1]
- } elseif {[set il [string first [$w get $curpos2] $lbr]]>-1} {
+ [string index $data(RBR) $ir] [string index $data(LBR) $ir] -1]
+ } elseif {[set il [string first [$w get $curpos2] $data(LBR)]]>-1} {
set curpos $curpos2
set brcpos [MatchedBrackets $txt $curpos \
- [string index $lbr $il] [string index $rbr $il] 1]
- } elseif {[set ir [string first [$w get $curpos2] $rbr]]>-1} {
+ [string index $data(LBR) $il] [string index $data(RBR) $il] 1]
+ } elseif {[set ir [string first [$w get $curpos2] $data(RBR)]]>-1} {
set curpos $curpos2
set brcpos [MatchedBrackets $txt $curpos \
- [string index $rbr $ir] [string index $lbr $ir] -1]
+ [string index $data(RBR) $ir] [string index $data(LBR) $ir] -1]
} else {
return
}
@@ -935,20 +934,20 @@ proc ::hl_tcl::hl_readonly {txt {ro -1} {com2 ""}} {
if {[info commands $newcom] eq ""} {rename $txt $newcom}
set com "[namespace current]::my::Modified $txt"
#if {$com2 ne ""} {append com " ; $com2"}
- if {$ro} {proc ::$txt {args} "
- switch -exact -- \[lindex \$args 0\] \{
- insert \{$com2\}
- delete \{$com2\}
- replace \{$com2\}
- default \{ return \[eval $newcom \$args\] \}
+ if {$ro} {proc ::$txt {args} " \
+ switch -exact -- \[lindex \$args 0\] \{ \
+ insert \{$com2\} \
+ delete \{$com2\} \
+ replace \{$com2\} \
+ default \{ return \[eval $newcom \$args\] \} \
\}"
- } else {proc ::$txt {args} "
- switch -exact -- \[lindex \$args 0\] \{
- delete \{$com {*}\$args\}
- insert \{$com {*}\$args\}
- replace \{$com {*}\$args\}
- \}
- set _res_ \[eval $newcom \$args\]
+ } else {proc ::$txt {args} " \
+ switch -exact -- \[lindex \$args 0\] \{ \
+ delete \{$com {*}\$args\} \
+ insert \{$com {*}\$args\} \
+ replace \{$com {*}\$args\} \
+ \} ; \
+ set _res_ \[eval $newcom \$args\] ; \
return \$_res_"
}
}
@@ -975,8 +974,9 @@ proc ::hl_tcl::hl_init {txt args} {
set args [lrange $args 1 end]
}
set ::hl_tcl::my::data(REG_TXT,$txt) {} ;# disables Modified at changing the text
+ set ::hl_tcl::my::data(KEYWORDS,$txt) {}
foreach {opt val} {-dark 0 -readonly 0 -cmd {} -cmdpos {} -optRE 1 \
- -multiline 1 -seen 500 -plaintext no -insertwidth 2} {
+ -multiline 1 -seen 500 -plaintext no -insertwidth 2 -keywords {}} {
if {[dict exists $args $opt]} {
set val [dict get $args $opt]
} elseif {$setonly} {
@@ -984,6 +984,9 @@ proc ::hl_tcl::hl_init {txt args} {
}
set ::hl_tcl::my::data([string toupper [string range $opt 1 end]],$txt) $val
}
+ set ::hl_tcl::my::data(CMD_TK_EXP) [lsort [list \
+ {*}$::hl_tcl::my::data(CMD_TK) {*}$::hl_tcl::my::data(KEYWORDS,$txt)]]
+ unset ::hl_tcl::my::data(KEYWORDS,$txt)
if {[dict exists $args -colors]} {
set ::hl_tcl::my::data(COLORS,$txt) [dict get $args -colors]
set ::hl_tcl::my::data(SETCOLORS,$txt) 1
@@ -1125,15 +1128,14 @@ proc ::hl_tcl::hl_line {txt} {
# txt - text's path
if {!$::hl_tcl::my::data(PLAINTEXT,$txt)} {
- set ln [expr {int([$txt index insert])}]
set tSTR [$txt tag ranges tagSTR]
set tCMN [$txt tag ranges tagCMN]
- if {$ln==1} {
- set currQtd 0
- } else {
- set currQtd [::hl_tcl::my::LineState $txt $tSTR $tCMN "$ln.0 -1 chars"]
- }
- ::hl_tcl::my::HighlightLine $txt $ln $currQtd
+ set ln0 [expr {int([$txt index insert])}]
+ set ln2 [expr {int([$txt index end])}]
+ set ln1 [expr {max (1,$ln0-1)}]
+ set ln2 [expr {min ($ln2,$ln0+1)}]
+ # update lines: previous, current, next
+ ::hl_tcl::my::RunCoroAfterIdle $txt $ln1 $ln2 no
}
::hl_tcl::my::MemPos $txt yes
$txt configure -insertwidth $::hl_tcl::my::data(INSERTWIDTH,$txt)
diff --git a/lib/hl_tcl/pkgIndex.tcl b/lib/hl_tcl/pkgIndex.tcl
index f6ae556..4f6e13b 100644
--- a/lib/hl_tcl/pkgIndex.tcl
+++ b/lib/hl_tcl/pkgIndex.tcl
@@ -1,5 +1,5 @@
-package ifneeded hl_tcl 0.9.22 [list source [file join $dir hl_tcl.tcl]]
+package ifneeded hl_tcl 0.9.26 [list source [file join $dir hl_tcl.tcl]]
# short intro (for Ruff! docs generator)
diff --git a/lib/pave/apave.tcl b/lib/pave/apave.tcl
index 142097e..6034741 100755
--- a/lib/pave/apave.tcl
+++ b/lib/pave/apave.tcl
@@ -1643,8 +1643,8 @@ oo::class create ::apave::APave {
} else {
set dn [file dirname $fn]
set fn [file tail $fn]
- set args [::apave::removeOptions $args -initialdir]
}
+ set dn [::apave::extractOptions args -initialdir $dn]
set args "-initialfile \"$fn\" -initialdir \"$dn\" $parent $args"
incr isfilename
} elseif {$nchooser eq "tk_chooseDirectory"} {
@@ -2828,7 +2828,7 @@ oo::class create ::apave::APave {
if {[string index $st1 0] in [list \t { }]} {
# if space(s) are at the right, remove them at cutting
set n1 [my leadingSpaces $st1]
- $w delete [$w index $idx1] [$w index "$idx1 +$n1 char"]
+ $w delete $idx1 [$w index "$idx1 +$n1 char"]
} elseif {$ch2 eq "\{" && $st1 eq {}} {
# indent + closing brace
if {$st2 eq {}} {
@@ -2846,11 +2846,13 @@ oo::class create ::apave::APave {
set nchars [my leadingSpaces $st2]
set indent [string range $st2 0 [expr {$nchars-1}]]
}
- if {$islist} {
+ if {$islist && ![string match *.0 $idx1] && \
+ [string trim [$w get "$idx1 linestart" $idx1]] ne {}} {
+ # a new line supplied with "list-like pattern"
set indent "$indent$ch1"
incr nchars 2
}
- $w insert [$w index $idx1] \n$indent
+ $w insert $idx1 \n$indent
::tk::TextSetCursor $w [$w index "$idx2 linestart +$nchars char"]
return -code break
}
@@ -3158,9 +3160,10 @@ oo::class create ::apave::APave {
set lst1 [lindex $lwidgets $i]
if {[my Replace_Tcl i lwlen lwidgets {*}$lst1] ne ""} {incr i}
}
- set lwlen [llength $lwidgets]
# firstly, normalize all names that are "subwidgets": .lab instead fra.lab etc
- for {set i $lwlen} {$i} {incr i -1} {
+ set i [set lwlen [llength $lwidgets]]
+ while {$i>1} {
+ incr i -1
set lst1 [lindex $lwidgets $i]
lassign $lst1 name neighbor
lassign [my NormalizeName name i lwidgets] name wname
@@ -3385,8 +3388,15 @@ oo::class create ::apave::APave {
if {[set ontop [::apave::getOption -ontop {*}$args]] eq {}} {
set ontop no
catch {
- set wpar [winfo parent $win]
- set ontop [wm attributes $wpar -topmost]
+ set ontop [wm attributes [winfo parent $win] -topmost]
+ }
+ if {!$ontop} {
+ # find if a window child of "." is topmost
+ # if so, let this one be topmost too
+ foreach w [winfo children .] {
+ catch {set ontop [wm attributes $w -topmost]}
+ if {$ontop} break
+ }
}
}
if {[set modal [::apave::getOption -modal {*}$args]] eq {}} {
diff --git a/lib/pave/apaveinput.tcl b/lib/pave/apaveinput.tcl
index b055d96..0b13e96 100644
--- a/lib/pave/apaveinput.tcl
+++ b/lib/pave/apaveinput.tcl
@@ -34,7 +34,7 @@
package require Tk
-package provide apave 3.4.5b10
+package provide apave 3.4.5.4
source [file join [file dirname [info script]] apavedialog.tcl]
diff --git a/lib/pave/obbit.tcl b/lib/pave/obbit.tcl
index 7b404c9..c0d9b2c 100644
--- a/lib/pave/obbit.tcl
+++ b/lib/pave/obbit.tcl
@@ -44,54 +44,54 @@ namespace eval ::apave {
fI bI --12-- bM fW bW itemHL2 tabHL #004...reserved...
set ::apave::_CS_(ALL) {
-{{ 0: AzureLight} "#050b0d" #050b0d #fff #e1e1df #002aaa #8dd9db #000 #444 grey #0e7b7c #000 #81cdcf - #d7d7d7 #000 #FBFB95 #e2e2e0 #ad0000 #004 #005 #006 #007}
-{{ 1: ForestLight} "#050b0d" #050b0d #fff #e1e1df #004000 #A8CCA8 #000 #444 grey #217346 #000 #a8bda8 - #d7d7d7 #000 #FBFB95 #e2e2e0 #ad0000 #004 #005 #006 #007}
-{{ 2: SunValleyLight} "#050b0d" #050b0d #fff #d9d9d9 #00469f #74c9ff #000 #444 grey #005fb8 #000 #7fcbff - #cccccc #000 #FBFB95 #e2e2e0 #950000 #004 #005 #006 #007}
-{{ 3: AwLight} "#141414" #151616 #dfdfde #d1d1d0 #562222 #85b4e7 #000 #444 grey #1a497c #000 #7fb8ce - #bebebd #000 #FBFB96 #cacaca #a20000 #004 #005 #006 #007}
+{{ 0: AwLight} "#141414" #151616 #dfdfde #d1d1d0 #562222 #85b4e7 #000 #444 grey #1a497c #000 #7fb8ce - #bebebd #000 #FBFB96 #cacaca #a20000 #004 #005 #006 #007}
+{{ 1: AzureLight} "#050b0d" #050b0d #fff #e1e1e1 #002aaa #8dd9db #000 #444 grey #0e7b7c #000 #81cdcf - #cccccc #000 #FBFB95 #e2e2e0 #ad0000 #004 #005 #006 #007}
+{{ 2: ForestLight} "#050b0d" #050b0d #fff #e1e1e1 #004000 #A8CCA8 #000 #444 grey #217346 #000 #a8bda8 - #cccccc #000 #FBFB95 #e2e2e0 #ad0000 #004 #005 #006 #007}
+{{ 3: SunValleyLight} "#050b0d" #050b0d #fff #e1e1e1 #00469f #74c9ff #000 #444 grey #005fb8 #000 #7fcbff - #cccccc #000 #FBFB95 #e2e2e0 #950000 #004 #005 #006 #007}
{{ 4: Grey1} "#050b0d" #050b0d #F8F8F8 #dadad8 #5c1616 #AFAFAF #000 #444 grey #933232 #000 #AFAFAF - #caccd0 #000 #FBFB95 #e0e0d8 #a20000 #004 #005 #006 #007}
-{{ 5: Grey2} "#050b0d" #050b0d #e9e9e7 #F8F8F8 #5c1616 #b8b8b8 #000 #444 grey #933232 #000 #c1c1c1 - #e1e1df #000 #FBFB95 #d5d5d3 #a20000 #004 #005 #006 #007}
+{{ 5: Grey2} "#050b0d" #050b0d #e9e9e7 #F8F8F8 #5c1616 #b8b8b8 #000 #444 grey #933232 #000 #c1c1c1 - #e1e1e1 #000 #FBFB95 #d5d5d3 #a20000 #004 #005 #006 #007}
{{ 6: Rosy} "#2B122A" #000 #FFFFFF #F6E6E9 #570957 #C5ADC8 #000 #444 grey #870287 #000 #ceb6d1 - #e3d3d6 #000 #FBFB95 #e5e3e1 #a20000 #004 #005 #006 #007}
{{ 7: Clay} "#000" #000 #fdf4ed #ded3cc #500a0a #bcaea2 #000 #444 grey #843500 #fff #9a8f83 - #d5c9c1 #000 #FBFB95 #e1dfde #a20000 #004 #005 #006 #007}
{{ 8: Dawn} "#08085D" #030358 #FFFFFF #e3f9f9 #562222 #a3dce5 #000 #444 grey #933232 #000 #99d2db - #d3e9e9 #000 #FBFB96 #dbe9ed #a20000 #004 #005 #006 #007}
{{ 9: Sky} "#102433" #0A1D33 #d0fdff #bdf6ff #562222 #95ced7 #000 #444 grey #933232 #000 #9ad3dc - #b1eaf3 #000 #FBFB95 #c0e9ef #a20000 #004 #005 #006 #007}
-{{10: Florid} "#000" #004000 #e4fce4 #fff #5c1616 #93e493 #0F2D0F #444 grey #802e00 #004000 #a7f8a7 - #eefdee #000 #FBFB96 #d7e6d7 #a20000 #004 #005 #006 #007}
-{{11: LightGreen} "#122B05" #091900 #edffed #DEF8DE #562222 #A8CCA8 #000 #444 grey #933232 #000 #A8CCA8 - #d0ead0 #000 #FBFB96 #dee9de #a20000 #004 #005 #006 #007}
-{{12: InverseGreen} "#122B05" #091900 #cce6c8 #DEF8DE #562222 #9cc09c #000 #444 grey #933232 #000 #b5d9b5 - #cce6cc #000 #FBFB96 #bed8ba #a20000 #004 #005 #006 #007}
-{{13: GreenPeace} "#001000" #001000 #e1ffdd #cadfca #562222 #9dbb99 #000 #444 grey #933232 #000 #9cb694 - #c1dfbd #000 #FBFB96 #d2e1d2 #a20000 #004 #005 #006 #007}
-{{14: African} "#000" #000 #fff #ffffe7 #460000 #ffd797 #000 #6f2509 #7e7e7e #771d00 #000 #e6ae80 - #fffff9 #000 #eded89 #ededd5 #a20000 #004 #005 #006 #007}
-{{15: African1} "#000" #000 #f5f5dd #f2ebd2 #460000 #ffc48a #000 #6f2509 #7e7e7e #771d00 #000 #e6ae80 - #fffce3 #000 #eded89 #e3e3cb #a20000 #004 #005 #006 #007}
-{{16: African2} "#000" #000 #ffffe4 #eae7c0 #500a0a #eaac7a #000 #6f2509 grey #771d00 #00003c #e6ae80 - #f4f0ca #000 #fbfb74 #e7e7cb #a20000 #004 #005 #006 #007}
-{{17: African3} "#000" #000 #fdf9d0 #d5d2af #500a0a #d59d6f #000 #6f2509 grey #771d00 #00003c #e6ae80 - #dedbb8 #000 #fbfb74 #e5e5cc #c10000 #004 #005 #006 #007}
+{{10: Florid} "#000" #004000 #e4fce4 #fff #5c1616 #93e493 #0F2D0F #444 grey #802e00 #004000 #a7f8a7 - #d8e7d8 #000 #FBFB96 #d7e6d7 #a20000 #004 #005 #006 #007}
+{{11: LightGreen} "#122B05" #091900 #edffed #DEF8DE #562222 #A8CCA8 #000 #444 grey #933232 #000 #A8CCA8 - #cde7cd #000 #FBFB96 #dee9de #a20000 #004 #005 #006 #007}
+{{12: InverseGreen} "#122B05" #091900 #cce6c8 #DEF8DE #562222 #9cc09c #000 #444 grey #933232 #000 #b5d9b5 - #c9e3c9 #000 #FBFB96 #bed8ba #a20000 #004 #005 #006 #007}
+{{13: GreenPeace} "#001000" #001000 #e1ffdd #cadfca #562222 #9dbb99 #000 #444 grey #933232 #000 #9cb694 - #b9d3b9 #000 #FBFB96 #d2e1d2 #a20000 #004 #005 #006 #007}
+{{14: African} "#000" #000 #fff #ffffe7 #460000 #ffd797 #000 #6f2509 #7e7e7e #771d00 #000 #e6ae80 - #e7e7cf #000 #eded89 #ededd5 #a20000 #004 #005 #006 #007}
+{{15: African1} "#000" #000 #f5f5dd #f2ebd2 #460000 #ffc48a #000 #6f2509 #7e7e7e #771d00 #000 #f2ebd2 - #e3dcc3 #000 #eded89 #e3e3cb #a20000 #004 #005 #006 #007}
+{{16: African2} "#000" #000 #ffffe4 #eae7c0 #500a0a #eaac7a #000 #6f2509 grey #771d00 #00003c #e6ae80 - #dddab3 #000 #fbfb74 #e7e7cb #a20000 #004 #005 #006 #007}
+{{17: African3} "#000" #000 #fdf9d0 #d5d2af #500a0a #d59d6f #000 #6f2509 grey #771d00 #00003c #e6ae80 - #c5c29f #000 #fbfb74 #e5e5cc #c10000 #004 #005 #006 #007}
{{18: Yellowstone} "#00002f" #00003c #ffffd1 #cfcdb1 #591c0e #c89160 #000 #444 grey #771d00 #3b1516 #cfab86 - #c2c0a4 #000 #ffff45 #e6e6bb #a30000 #004 #005 #006 #007}
{{19: Notebook} "#000" #000 #e9e1c8 #c2bca8 #460000 #d59d6f #000 #444 #7e7e7e #771d00 #000 #c09c77 - #d0cab6 #000 #eded89 #dad2b9 #a20000 #004 #005 #006 #007}
{{20: Notebook1} "#000" #000 #dad2b9 #b5af9b #460000 #d59d6f #000 #444 #707070 #771d00 #000 #ba9671 - #c5bfab #000 #eded89 #ccc4ab #a20000 #004 #005 #006 #007}
{{21: Notebook2} "#000" #000 #cdc5ac #a6a08c #460000 #d59d6f #000 #444 #606060 #771d00 #000 #cfab86 - #b4ae9a #000 #eded89 #c1b9a0 #980000 #004 #005 #006 #007}
{{22: Notebook3} "#000" #000 #beb69d #96907c #460000 #d59d6f #000 #444 #505050 #771d00 #000 #cfab86 - #a6a08c #000 #eded89 #b2aa91 #7b1010 #004 #005 #006 #007}
-{{23: Dusk} "#ececec" #ececec #1a1f21 #262b2d #f1b479 #6b7072 #000 #f4f49f #585d5f #ffbb6d #000 #6b7072 - #363b3d #000 #9e9e3a #23282a #ffabab #004 #005 #006 #007}
-{{24: Darcula} "#ececec" #c7c7c7 #272727 #323232 #e98f1c #2F5692 #e1e1e1 #f4f49f grey #d18d3f #EDC881 #2a518d - #444444 #000 #a2a23e #343434 #f28787 #004 #005 #006 #007}
-{{25: AzureDark} "#ececec" #c7c7c7 #272727 #393939 #28a7ff #007fff #FFF #f4f49f grey #33b2ff #EDC881 #0062a5 - #444444 #000 #a2a23e #404040 #ffc341 #004 #005 #006 #007}
-{{26: ForestDark} "#ececec" #c7c7c7 #272727 #393939 #95bf95 #217346 #FFF #f4f49f grey #99c399 #ffffff #247649 - #444444 #000 #a2a23e #323232 #efaf6f #004 #005 #006 #007}
-{{27: SunValleyDark} "#dfdfdf" #dddddd #131313 #252525 #38a9e0 #2f60d8 #FFF #f4f49f #6f6f6f #57c8ff #fff #2051c9 - #2d2d2d #000 #a2a23e #2a2a2a #efaf6f #004 #005 #006 #007}
-{{28: AwDark} "#F0E8E8" #E7E7E7 #1f2223 #232829 #de9e5e #215d9c #fff #f4f49f grey #80bcfb #fff #134f8e - #313637 #000 #cdcd69 #292e2f #ffabab #004 #005 #006 #007}
+{{23: Darcula} "#ececec" #c7c7c7 #272727 #323232 #e98f1c #2F5692 #e1e1e1 #f4f49f grey #d18d3f #EDC881 #2a518d - #444444 #000 #a2a23e #343434 #f28787 #004 #005 #006 #007}
+{{24: Dusk} "#ececec" #ececec #1a1f21 #262b2d #f1b479 #6b7072 #000 #f4f49f #585d5f #ffbb6d #000 #6b7072 - #363b3d #000 #9e9e3a #23282a #ffabab #004 #005 #006 #007}
+{{25: AwDark} "#F0E8E8" #E7E7E7 #1f2223 #232829 #de9e5e #215d9c #fff #f4f49f grey #80bcfb #fff #134f8e - #313637 #000 #cdcd69 #292e2f #ffabab #004 #005 #006 #007}
+{{26: AzureDark} "#ececec" #c7c7c7 #272727 #393939 #28a7ff #007fff #FFF #f4f49f grey #33b2ff #EDC881 #0062a5 - #4a4a4a #000 #a2a23e #404040 #ffc341 #004 #005 #006 #007}
+{{27: ForestDark} "#ececec" #c7c7c7 #272727 #393939 #95bf95 #217346 #FFF #f4f49f grey #99c399 #ffffff #247649 - #4a4a4a #000 #a2a23e #323232 #efaf6f #004 #005 #006 #007}
+{{28: SunValleyDark} "#dfdfdf" #dddddd #131313 #252525 #38a9e0 #2f60d8 #FFF #f4f49f #6f6f6f #57c8ff #fff #2051c9 - #323232 #000 #a2a23e #2a2a2a #efaf6f #004 #005 #006 #007}
{{29: Dark1} "#E0D9D9" #C4C4C4 #212121 #292929 #de9e5e #6c6c6c #000 #f4f49f #606060 #eda95b #000 #767676 - #363636 #000 #cdcd69 #292929 #ffabab #004 #005 #006 #007}
-{{30: Dark2} "#bebebe" #bebebe #1f1f1f #262626 #de9e5e #6b6b6b #000 #f4f49f #616161 #eda95b #000 #767676 - #2b2b2b #000 #b0b04c #262626 #ffabab #004 #005 #006 #007}
-{{31: Dark3} "#bebebe" #bebebe #0a0a0a #232323 #de9e5e #6a6a6a #000 #f4f49f #616161 #eda95b #000 #767676 - #1c1c1c #000 #bebe5a #131313 #ffabab #004 #005 #006 #007}
-{{32: Oscuro} "#f1f1f1" #f1f1f1 #344545 #526d6d #f1b479 #728d8d #fff #f4f49f #afafaf #f7c475 #000 #94afaf - #4f6666 #000 #cdcd69 #3d4e4e #ffbcbc #004 #005 #006 #007}
-{{33: Oscuro1} "#f1f1f1" #f1f1f1 #2a3b3b #466161 #e5a565 #6c8787 #fff #f4f49f #a2a2a2 #edba6b #000 #8ba6a6 - #4a6161 #000 #cdcd69 #354646 #ffbcbc #004 #005 #006 #007}
-{{34: Oscuro2} "#f1f1f1" #f1f1f1 #223333 #3e5959 #de9e5e #668181 #fff #f4f49f #a2a2a2 #e4b162 #000 #819c9c - #3f5656 #000 #cdcd69 #2b3c3c #ffbcbc #004 #005 #006 #007}
-{{35: Oscuro3} "#f1f1f1" #f1f1f1 #192a2a #355050 #de9e5e #5c7777 #fff #f4f49f #9e9e9e #dfac5d #000 #779292 - #364d4d #000 #cdcd69 #223333 #ffbcbc #004 #005 #006 #007}
-{{36: MildDark} "#d2d2d2" #fff #222323 #384e66 #2ccaca #4b7391 #fff #00ffff #939393 #43e1e1 #000 #668eac - #2c4057 #000 #bebe5a #2b2c2c #ffa2a2 #004 #005 #006 #007}
-{{37: MildDark1} "#d2d2d2" #fff #151616 #2D435B #2ac8c8 #436b89 #fff #00ffff grey #36d4d4 #000 #668eac - #24384f #000 #bebe5a #1f2020 #ffb0b0 #004 #005 #006 #007}
-{{38: MildDark2} "#b4b4b4" #fff #0d0e0e #24384f #28c6c6 #3e6684 #fff #00ffff #757575 #33d1d1 #000 #668eac - #1a2f47 #000 #bebe5a #161717 #ffaeae #004 #005 #006 #007}
-{{39: MildDark3} "#e2e2e2" #f1f1f1 #000 #1B3048 #27c5c5 #375f7d #fff #00ffff #6c6c6c #31d0d0 #000 #668eac - #11263e #000 #b0b04c #0f0f0f #ffafaf #004 #005 #006 #007}
+{{30: Dark2} "#bebebe" #bebebe #1f1f1f #262626 #de9e5e #6b6b6b #000 #f4f49f #616161 #eda95b #000 #767676 - #323232 #000 #b0b04c #262626 #ffabab #004 #005 #006 #007}
+{{31: Dark3} "#bebebe" #bebebe #0a0a0a #232323 #de9e5e #6a6a6a #000 #f4f49f #616161 #eda95b #000 #767676 - #303030 #000 #bebe5a #131313 #ffabab #004 #005 #006 #007}
+{{32: Oscuro} "#f1f1f1" #f1f1f1 #344545 #526d6d #f1b479 #728d8d #fff #f4f49f #afafaf #f7c475 #000 #94afaf - #5d7474 #000 #cdcd69 #3d4e4e #ffbcbc #004 #005 #006 #007}
+{{33: Oscuro1} "#f1f1f1" #f1f1f1 #2a3b3b #466161 #e5a565 #6c8787 #fff #f4f49f #a2a2a2 #edba6b #000 #8ba6a6 - #526969 #000 #cdcd69 #354646 #ffbcbc #004 #005 #006 #007}
+{{34: Oscuro2} "#f1f1f1" #f1f1f1 #223333 #3e5959 #de9e5e #668181 #fff #f4f49f #a2a2a2 #e4b162 #000 #819c9c - #4c6363 #000 #cdcd69 #2b3c3c #ffbcbc #004 #005 #006 #007}
+{{35: Oscuro3} "#f1f1f1" #f1f1f1 #192a2a #355050 #de9e5e #5c7777 #fff #f4f49f #9e9e9e #dfac5d #000 #779292 - #425959 #000 #cdcd69 #223333 #ffbcbc #004 #005 #006 #007}
+{{36: MildDark} "#d2d2d2" #fff #222323 #384e66 #2ccaca #4b7391 #fff #00ffff #939393 #43e1e1 #000 #668eac - #455b73 #000 #bebe5a #2b2c2c #ffa2a2 #004 #005 #006 #007}
+{{37: MildDark1} "#d2d2d2" #fff #151616 #2D435B #2ac8c8 #436b89 #fff #00ffff grey #36d4d4 #000 #668eac - #3a5068 #000 #bebe5a #1f2020 #ffb0b0 #004 #005 #006 #007}
+{{38: MildDark2} "#b4b4b4" #fff #0d0e0e #24384f #28c6c6 #3e6684 #fff #00ffff #757575 #33d1d1 #000 #668eac - #33475e #000 #bebe5a #161717 #ffaeae #004 #005 #006 #007}
+{{39: MildDark3} "#e2e2e2" #f1f1f1 #000 #1B3048 #27c5c5 #375f7d #fff #00ffff #6c6c6c #31d0d0 #000 #668eac - #2a3f57 #000 #b0b04c #0f0f0f #ffafaf #004 #005 #006 #007}
{{40: Inkpot} "#d3d3ff" #AFC2FF #16161f #1E1E27 #de9e5e #6767a8 #000 #f4f49f #6e6e6e #ffbb6d #000 #8585c6 - #292936 #000 #a2a23e #202029 #ffa5a5 #004 #005 #006 #007}
{{41: Quiverly} "#cdd8d8" #cdd8d8 #2b303b #333946 #de9e5e #6f7582 #000 #f4f49f #757575 #eda95b #000 #9197a4 - #414650 #000 #b0b04c #323742 #ffabab #004 #005 #006 #007}
{{42: Monokai} "#f8f8f2" #f8f8f2 #353630 #4e5044 #f1b479 #707070 #000 #f4f49f #9a9a9a #ffbb6d #000 #777777 - #46473d #000 #cdcd69 #3c3d37 #ffabab #004 #005 #006 #007}
-{{43: Desert} "#fff" #fff #47382d #5a4b40 #f1b479 #78695e #000 #f4f49f #a2a2a2 #ffbb6d #000 #7f7065 - #55463b #000 #eded89 #503f34 #ffabab #004 #005 #006 #007}
+{{43: TKE Default} "#dbdbdb" #dbdbdb #000 #282828 #de9e5e #0a0acc #fff #f4f49f #6a6a6a #d3a85a #fff #0000d3 - #383838 #000 #b0b04c #0d0e0e #ffabab #004 #005 #006 #007}
{{44: Magenta} "#E8E8E8" #F0E8E8 #381e44 #4A2A4A #f1b479 #846484 #000 #f4f49f grey #ffbb6d #000 #ad8dad - #573757 #000 #cdcd69 #42284e #ffabab #004 #005 #006 #007}
-{{45: Red} "#fff" #e9e9e6 #340202 #440702 #f1b479 #b05e5e #000 #f4f49f #828282 #ffbb6d #000 #ba6868 - #3e0100 #000 #bebe5a #461414 #ffc1c1 #004 #005 #006 #007}
-{{46: Chocolate} "#d6d1ab" #d6d1ab #251919 #402020 #de9e5e #664D4D #fff #f4f49f #828282 #c3984a #fff #583f3f - #361d1d #000 #b0b04c #2d2121 #ffb7b7 #004 #005 #006 #007}
-{{47: TKE Default} "#dbdbdb" #dbdbdb #000 #282828 #de9e5e #0a0acc #fff #f4f49f #6a6a6a #d3a85a #fff #0000d3 - #383838 #000 #b0b04c #0d0e0e #ffabab #004 #005 #006 #007}
+{{45: Red} "#fff" #e9e9e6 #340202 #440702 #f1b479 #b05e5e #000 #f4f49f #828282 #ffbb6d #000 #ba6868 - #521514 #000 #bebe5a #461414 #ffc1c1 #004 #005 #006 #007}
+{{46: Chocolate} "#d6d1ab" #d6d1ab #251919 #402020 #de9e5e #664D4D #fff #f4f49f #828282 #c3984a #fff #583f3f - #432a2a #000 #b0b04c #2d2121 #ffb7b7 #004 #005 #006 #007}
+{{47: Desert} "#fff" #fff #47382d #5a4b40 #f1b479 #78695e #000 #f4f49f #a2a2a2 #ffbb6d #000 #7f7065 - #695a4f #000 #eded89 #503f34 #ffabab #004 #005 #006 #007}
}
set ::apave::_CS_(initall) 1
set ::apave::_CS_(initWM) 1
@@ -1451,7 +1451,7 @@ oo::class create ::apave::ObjectTheming {
}
set fontdef [font actual apaveFontDef]
# configuring themed widgets
- foreach ts {TLabel TButton TCheckbutton TRadiobutton TNotebook.Tab} {
+ foreach ts {TLabel TButton TCheckbutton TRadiobutton} {
my Ttk_style configure $ts -font $fontdef
my Ttk_style configure $ts -foreground $tfg1
my Ttk_style configure $ts -background $tbg1
@@ -1465,14 +1465,14 @@ oo::class create ::apave::ObjectTheming {
my Ttk_style configure TLabelframe.Label -background $tbg1
my Ttk_style configure TLabelframe.Label -font $fontdef
foreach ts {TNotebook TFrame} {
- my Ttk_style configure $ts -background $tbg1
+ my Ttk_style map $ts -background [list focus $tbg1 !focus $tbg1]
}
foreach ts {TNotebook.Tab} {
my Ttk_style configure $ts -font $fontdef
if {[my apaveTheme]} {
- my Ttk_style map $ts -foreground [list selected $tfgS active $tfg2]
+ my Ttk_style map $ts -foreground [list {selected !active} $tfgS {!selected !active} $tfgM active $tfg2 {selected active} $tfg2]
}
- my Ttk_style map $ts -background [list selected $tbgS {active disabled} $tbg1 active $tbg2]
+ my Ttk_style map $ts -background [list {selected !active} $tbgS {!selected !active} $tbgM {!selected active} $tbg2 {selected active} $tbg2]
}
foreach ts {TEntry Treeview TSpinbox TCombobox TCombobox.Spinbox TMatchbox TNotebook.Tab TScrollbar TScale} {
my Ttk_style map $ts -lightcolor [list focus $bclr active $bclr]
@@ -1525,6 +1525,8 @@ oo::class create ::apave::ObjectTheming {
option add *Menu.font $fontdef
my Ttk_style configure TMenubutton -foreground $tfgM
my Ttk_style configure TMenubutton -background $tbgM
+ my Ttk_style configure TButton -foreground $tfgM
+ my Ttk_style configure TButton -background $tbgM
foreach {nam clr} {back tbg2 fore tfg2 selectBack tbgS selectFore tfgS} {
option add *Listbox.${nam}ground [set $clr]
}
@@ -1562,12 +1564,14 @@ oo::class create ::apave::ObjectTheming {
set ::apave::_C_($ts,4) "-activebackground $tbgS"
set ::apave::_C_($ts,5) "-disabledforeground $tfgD"
set ::apave::_C_($ts,6) "-font {$fontdef}"
- if {[my apaveTheme]} {
- set ::apave::_C_($ts,7) {-borderwidth 2}
- set ::apave::_C_($ts,8) {-relief raised}
+ if {[::iswindows]} {
+ set ::apave::_C_($ts,0) 6
+ } elseif {[my apaveTheme]} {
+ set ::apave::_C_($ts,7) {-borderwidth 2}
+ set ::apave::_C_($ts,8) {-relief raised}
} else {
- set ::apave::_C_($ts,7) {-borderwidth 1}
- set ::apave::_C_($ts,8) {-relief groove}
+ set ::apave::_C_($ts,7) {-borderwidth 1}
+ set ::apave::_C_($ts,8) {-relief groove}
}
if {[my csDarkEdit]} {set c white} {set c black}
set ::apave::_C_($ts,9) "-selectcolor $c"
diff --git a/lib/pave/pkgIndex.tcl b/lib/pave/pkgIndex.tcl
index 2e31da7..a0d74df 100644
--- a/lib/pave/pkgIndex.tcl
+++ b/lib/pave/pkgIndex.tcl
@@ -1,5 +1,5 @@
-package ifneeded apave 3.4.5b10 [list source [file join $dir apaveinput.tcl]]
+package ifneeded apave 3.4.5.4 [list source [file join $dir apaveinput.tcl]]
# A short intro (for Ruff! docs generator:)
diff --git a/lib/theme/azure/theme/light.tcl b/lib/theme/azure/theme/light.tcl
index b41afd1..6f0daf4 100644
--- a/lib/theme/azure/theme/light.tcl
+++ b/lib/theme/azure/theme/light.tcl
@@ -535,14 +535,15 @@ namespace eval ttk::theme::azure-light {
ttk::style element create Treeheading.cell \
image [list $I(tree-basic) \
- pressed $I(tree-pressed)
- ] -border 5 -padding 4 -sticky ewns
+ pressed $I(tree-basic) \
+ active $I(tree-pressed)
+ ] -border 5 -padding 4 -sticky nsew
ttk::style element create Treeitem.indicator \
image [list $I(right) \
user2 $I(empty) \
user1 $I(down) \
- ] -width 26 -sticky {}
+ ] -width 17 -sticky {}
# ttk::style configure Treeview -background $colors(-bg)
ttk::style configure Treeview.Item -padding {2 0 0 0}
diff --git a/lib/theme/azure/theme/light/tree-basic.png b/lib/theme/azure/theme/light/tree-basic.png
index 755062b10eafc9d5daff1daa4ff664795df7be2d..5c0ad96070c1d70dc2885802af7ae639c3b9494f 100644
GIT binary patch
delta 77
zcmbQr7(YS6ospS=fnmFQzaNld3-AeXefaRo=EOCt}3C>R|DNig)WhgH%
z*UQYyE>2D?NY%?PN}v7CMhd7%$