[ulis] a(Virtual)ListBox is a Tcl megawidget that displays a virtual list. The idea of a virtual listbox was evoked early (1995) by Greg Goodman in c.l.t: http://groups.google.com/groups?hl=fr&lr=&ie=UTF-8&frame=right&th=401f5a4fb1e3a888&seekm=3lcide%24l62%40Starbase.NeoSoft.COM#link1 I never read the thread before but his description is very close to my design. [http://perso.wanadoo.fr/maurice.ulis/tcl/Virtuallist/demo1.gif] [http://perso.wanadoo.fr/maurice.ulis/tcl/Virtuallist/demo3.gif] [http://perso.wanadoo.fr/maurice.ulis/tcl/Virtuallist/virtuallists.gif] The items are virtual and are obtained through a procedure callback when they should be displayed. * the list is not fixed and can vary on demand, * there can be more virtual items than memory can contain (until 2^30 - 1 items), * the items can be memorized to optimize the display, * the items can be invalidated to free the memory, * a note can be associated with each item. doc & dowload: http://perso.wanadoo.fr/maurice.ulis/tcl/Virtuallist ---- '''See also''' * [Hugecombo] * [Hugelist] * [Lightbutton] ---- 28 Sep, 2003 - How is it different from a (Tktable) table? [ulis]: It's not a multi-columns megawidget but a widget with virtual data (given by a callback). At the top of the page you can see: * the demo with computed items * the demo with items from the Web * the demo with items from a DB (3 associated virtuallists) - '''''Sorry, it still is not very clear.''''' ---- [LV] It's very clear to me - and quite exciting. ulis, have you considered submitting your widgets to [tklib] for wider distribution? As for the VirtualList, think of things this way. In most cases, a listbox contains a fixed set of data that you obtain up front, storing the values in at least the widget, if not additionally some sort of list variable. However, with VirtualList, it sounds as if ulis uses callbacks, so that the data need not all be in memory - instead, it is fetched as you scroll further in the list. ---- [Category GUI] | [Category Widget]