diff options
-rw-r--r-- | library/tkfbox.tcl | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/library/tkfbox.tcl b/library/tkfbox.tcl index 4d46903..2173a0d 100644 --- a/library/tkfbox.tcl +++ b/library/tkfbox.tcl @@ -11,7 +11,7 @@ # files by clicking on the file icons or by entering a filename # in the "Filename:" entry. # -# RCS: @(#) $Id: tkfbox.tcl,v 1.40 2003/11/11 22:48:14 hobbs Exp $ +# RCS: @(#) $Id: tkfbox.tcl,v 1.41 2003/11/12 00:07:03 hobbs Exp $ # # Copyright (c) 1994-1998 Sun Microsystems, Inc. # @@ -1509,10 +1509,17 @@ proc ::tk::dialog::file::ActivateEnt {w} { # names as a true list, watching out for a single file with a # space in the name. Thus we query the IconList directly. + set selIcos [::tk::IconList_Curselection $data(icons)] set data(selectFile) "" - foreach item [::tk::IconList_Curselection $data(icons)] { - ::tk::dialog::file::VerifyFileName $w \ + if {[llength $selIcos] == 0 && $text ne ""} { + # This assumes the user typed something in without selecting + # files - so assume they only type in a single filename. + ::tk::dialog::file::VerifyFileName $w $text + } else { + foreach item $selIcos { + ::tk::dialog::file::VerifyFileName $w \ [::tk::IconList_Get $data(icons) $item] + } } } else { ::tk::dialog::file::VerifyFileName $w $text |