summaryrefslogtreecommitdiffstats
path: root/library/tkfbox.tcl
diff options
context:
space:
mode:
authorcsaba <csaba>2023-09-22 10:41:16 (GMT)
committercsaba <csaba>2023-09-22 10:41:16 (GMT)
commit628f976cd9d13a10763f46c60d238965f8bec1bb (patch)
treeae4919b92e8c9c8bf341ab6b1fd7fb3dbe6cd0be /library/tkfbox.tcl
parentafe6ee91d03fffe21999b5ee7891d730e7a7ca8f (diff)
downloadtk-628f976cd9d13a10763f46c60d238965f8bec1bb.zip
tk-628f976cd9d13a10763f46c60d238965f8bec1bb.tar.gz
tk-628f976cd9d13a10763f46c60d238965f8bec1bb.tar.bz2
Guarded the library script tkfbox.tcl against icon deletion (like in several Tk tests).
Diffstat (limited to 'library/tkfbox.tcl')
-rw-r--r--library/tkfbox.tcl15
1 files changed, 10 insertions, 5 deletions
diff --git a/library/tkfbox.tcl b/library/tkfbox.tcl
index 52e632e..244524e 100644
--- a/library/tkfbox.tcl
+++ b/library/tkfbox.tcl
@@ -66,21 +66,26 @@ namespace eval ::tk::dialog::file {
}
# Create the images if they did not already exist.
- if {![info exists ::tk::Priv(updirImage)]} {
+ if {![info exists ::tk::Priv(updirImage)] ||
+ $::tk::Priv(updirImage) ni [image names]} {
set ::tk::Priv(updirImage) [image create photo \
-format $::tk::svgFmt -data [UpdateUpdirImageData]]
bindtags . [linsert [bindtags .] 1 TkFileDialog]
bind TkFileDialog <<ThemeChanged>> {
- $::tk::Priv(updirImage) configure \
- -data [::tk::dialog::file::UpdateUpdirImageData]
+ if {$::tk::Priv(updirImage) in [image names]} {
+ $::tk::Priv(updirImage) configure \
+ -data [::tk::dialog::file::UpdateUpdirImageData]
+ }
}
}
- if {![info exists ::tk::Priv(folderImage)]} {
+ if {![info exists ::tk::Priv(folderImage)] ||
+ $::tk::Priv(folderImage) ni [image names]} {
set ::tk::Priv(folderImage) [image create photo \
-format $::tk::svgFmt -data $folderImageData]
}
- if {![info exists ::tk::Priv(fileImage)]} {
+ if {![info exists ::tk::Priv(fileImage)] ||
+ $::tk::Priv(fileImage) ni [image names]} {
set ::tk::Priv(fileImage) [image create photo \
-format $::tk::svgFmt -data $fileImageData]
}