am pleased to announce Version 3.6 of the multi-column listbox
What is new in Tablelist 3.6?
1. Support for embedded windows, with the aid of the new cell
configuration option "-window" (thanks to Wolf Grossi, Glenn
Herteg, Takeshi Sakamoto, and Keesang Song for proposing this
2. New demo script "embeddedWindows.tcl" illustrating the use of
embedded windows in tablelist widgets; this is discussed in a new
section of the tutorial "tablelist.html".
3. Significantly improved and optimized the handling of embedded
4. Simplified the support for user-defined binding scripts with the
aid of the new commands "tablelist::getTablelistPath" and
"tablelist::convEventFields", as well as of a new binding tag whose
name is returned by the new "bodytag" subcommand (which is now used
in the demo script "browse.tcl").
5. Support for the new virtual events <<TablelistRowMoved>>,
<<TablelistColumnMoved>>, <<TablelistColumnSorted>> and
<<TablelistCellUpdated>> (thanks to John Vidolich for his
proposal). In addition, the new virtual event <<TablelistSelect>>
can now be used instead of <<ListboxSelect>> (which is supported
for compatibility reasons).
6. New subcommand "itemlistvar", for accessing the tablelist widget's
internal list (thanks to Patrick Fradin for his valuable input).
7. Fixed a bug related to the "-listvariable" option, introduced in
the previous Tablelist release (thanks to Torsten Reincke for his
8. Fixed two bugs related to the "cellselection" subcommand (thanks to
John Vidolich for his bug report).
9. Fixed a few typos and minor bugs in the default binding scripts
(thanks to Patrick Fradin, Tore Morkemo, and Torsten Reincke for
their bug reports).
10. Numerous further improvements and minor bug fixes.
What is Tablelist?
Tablelist is a library package for Tcl/Tk version 8.0 or higher,
written in pure Tcl/Tk code. It contains:
- the implementation of the "tablelist" mega-widget, including a
general utility module for mega-widgets;
- a demo script containing a useful procedure that displays the
configuration options of an arbitrary widget in a tablelist and
enables you to edit their values interactively;
- a second demo script, implementing a simple widget browser based on
- a third demo script, showing several ways to improve the appearance
of a tablelist widget;
- three further demo scripts, illustrating the interactive cell
editing with the aid of various widgets from the Tk core and from
the packages BWidget, Iwidgets, combobox (by Bryan Oakley), and
- one further demo script, with a tablelist widget containing
- a tutorial in HTML format;
- reference pages in HTML format.
A tablelist widget is a multi-column listbox. The width of each column
can be dynamic (i.e., just large enough to hold all its elements,
including the header) or static (specified in characters or pixels).
The columns are, per default, resizable. The alignment of each column
can be specified as "left", "right", or "center".
The columns, rows, and cells can be configured individually. Seve