diff options
author | fvogel <fvogelnew1@free.fr> | 2020-11-01 14:17:03 (GMT) |
---|---|---|
committer | fvogel <fvogelnew1@free.fr> | 2020-11-01 14:17:03 (GMT) |
commit | 4d296190563cb28ae6c394e243da8f70973290b5 (patch) | |
tree | 4405d8acea64ad090d4b186aad902b29468930ac | |
parent | ab7e7f10137def475bf072146d6270b48a2efe49 (diff) | |
download | tk-4d296190563cb28ae6c394e243da8f70973290b5.zip tk-4d296190563cb28ae6c394e243da8f70973290b5.tar.gz tk-4d296190563cb28ae6c394e243da8f70973290b5.tar.bz2 |
Fix [4ebcc04dc4]: tk fontchooser partial configure on X11 overwrites options not specified.
-rw-r--r-- | library/comdlg.tcl | 9 | ||||
-rw-r--r-- | library/fontchooser.tcl | 2 |
2 files changed, 7 insertions, 4 deletions
diff --git a/library/comdlg.tcl b/library/comdlg.tcl index 18df8a6..b4d8978 100644 --- a/library/comdlg.tcl +++ b/library/comdlg.tcl @@ -29,7 +29,8 @@ # {....} # } # -# flags = currently unused. +# flags = a list of flags. Currently supported flags are: +# DONTSETDEFAULTS = skip default values setting # # argList = The list of "-option value" pairs. # @@ -63,8 +64,10 @@ proc tclParseConfigSpec {w specs flags argList} { # 2: set the default values # - foreach cmdsw [array names cmd] { - set data($cmdsw) $def($cmdsw) + if {"DONTSETDEFAULTS" ni $flags} { + foreach cmdsw [array names cmd] { + set data($cmdsw) $def($cmdsw) + } } # 3: parse the argument list diff --git a/library/fontchooser.tcl b/library/fontchooser.tcl index a9bd706..9d49c57 100644 --- a/library/fontchooser.tcl +++ b/library/fontchooser.tcl @@ -111,7 +111,7 @@ proc ::tk::fontchooser::Configure {args} { set cache [dict create -parent $S(-parent) -title $S(-title) \ -font $S(-font) -command $S(-command)] - set r [tclParseConfigSpec [namespace which -variable S] $specs "" $args] + set r [tclParseConfigSpec [namespace which -variable S] $specs DONTSETDEFAULTS $args] if {![winfo exists $S(-parent)]} { set code [list TK LOOKUP WINDOW $S(-parent)] set err "bad window path name \"$S(-parent)\"" |