if 0 {[Richard Suchenwirth] 2004-10-01 - Here's a little tool for inspecting [Windows] .ico files, which often contain several variants of an icon at different sizes and color depths. Lazily I let a [text] widget do geometry management for this UI, including the Load button, the images, and some text comments. [http://mini.net/files/icoview.gif] Img does not allow us to write such .ico files, however. For this, the [ico] package is recommended - and it also can read/write from/to .exe and .dll files.} package require Img proc loadIco w { set fn [tk_getOpenFile -f {{Icons .ico} {"All files" *}}] if {$fn eq ""} return $w delete 1.1 end $w insert end " $fn\n" set i 0 while 1 { if [catch { image create photo -file $fn -format "ico -index $i" } img] break $w insert end [image width $img]x[image height $img]: $w image create end -image $img $w insert end " " incr i } if ![string match "Invalid icon index*" $img] { $w insert end \n\n$img } } #-- Main: pack [text .t -height 6 -width 64 -wrap word] button .t.load -text Load -command {loadIco .t} .t window create end -window .t.load loadIco .t bind . {exec wish $argv0 &; exit} bind . {[image create photo -data .t] write icoview.gif} if 0 {See also [AniGIF]. ---- [Arts and crafts of Tcl-Tk programming] }