WHO: Bryan Oakley WHAT: mclistbox v1.02, a pure tcl multicolumn listbox widget WHERE: http://purl.oclc.org/net/oakley/tcl/mclistbox/index.html REQUIREMENTS: tcl/tk 8.0 or greater (8.0.3 recommended) SUPPORTS: all platforms supported by tcl 8.x WHAT'S NEW SINCE 1.0: * fixed bugs in how yview was computed. yview should now return the proper value even when the window is resized, and scrolling the listbox after resizing should properly scroll all the way up and down. * fixed some bugs when a column id has spaces in it * fixed a bug in the label bind command, where curly braces were improperly being added around the %W substitution. * added additional tests to the test suite, and improved the format of tests to be a bit more readable * added the file "defs" to the distribution, so that the test script (mclistbox.test) would work. This is a modified version of the "defs" file that comes with the tcl source. The modifications allow for a more human-friendly format of the test data * fixed a bug where the fill column wasn't filling properly * fixed a bug when trying to canonize a column name. BASIC FEATURES: * multiple columns, each which may have its own foreground and background colors (and fonts, with a caveat), and which may be visible or invisible. * column headers, which may be turned on or off. Headers may have fonts, colors and borders distinct from the columns * scrollable -- the width of all of the columns may exceed the size of the container; the view can be adjusted using normal methods (ie: by attaching scrollbars) * a -selectcommand option, which will run a command whenever the selection changes. Doing something when the selection changes seems to be something a lot of beginners stumble over; this feature is an attempt to alleviate that to some degree. * written in pure tcl. Nothing more to download or install. * completely, totally, free. I retain copyright but you are free to use the code however you see fit. Don't be mean. * fully cross-platform. Works on Macintosh, Unix, and other more inferior operating systems :-) * an API that is a superset of the standard listbox (for a low, low double-yer-money-back-guarantee learning curve) KNOWN BUGS: * I'm not sure if the option database code is working right; I'm not really up to speed on how best to use it. * if you use different fonts for different columns, if those fonts don't have the same line height the data will not line up properly. There is no workaround other than to use fonts with the same height.