• ANNOUNCE: Multi-column listbox and tree widget package Tablelist 7.9

    From nemethi@csaba.nemethi@t-online.de to comp.lang.tcl on Mon Jan 5 11:55:38 2026
    From Newsgroup: comp.lang.tcl

    I am pleased to announce version 7.9 of the multi-column listbox and
    tree widget package Tablelist.

    What is new in Tablelist 7.9?
    -----------------------------

    1. The scrolling with the mouse wheel or touchpad is now disabled while
    the menu of a (ttk::)menubutton or the listbox component of a
    combobox used for interactive cell editing is posted (thanks to Steve
    Landers for his proposal).

    2. The default bindings now ignore any mouse actions in the free space
    that might appear below the tablelist widget's last row and/or to the
    right of its last column, except for setting the focus via left-click
    (thanks to Torsten Berg for his proposal).

    3. Because of the changes in the default bindings, the demo scripts
    "browse*.tcl" and "dirViewer*.tcl" now use the "active" index rather
    than the "curselection" subcommand.

    4. The wide spinbox package wsb now highlights the up and down arrows
    when they are in pressed state.

    5. Added the helper procedure "tablelist::getScalingPct", which returns
    the application's scaling percentage, derived from Tk's current
    scaling factor given by [tk scaling]. See the new section "The
    Procedure tablelist::getScalingPct" in Tablelist Programmer's Guide
    for details).

    6. The sizes of the GUI components created by the packages Tablelist,
    themepatch, and wsb now depend not only on the display's scaling
    level, but also on Tk's scaling factor given by [tk scaling] (thanks
    to Harald Oehlmann for discussions on this subject).

    7. Updated the details regarding the value of "tablelist::scalingpct"
    for GNOME on Wayland and KDE Plasma on Wayland in Tablelist
    Programmer's Guide, to reflect the changes made in recent versions of
    these desktops.

    How to get it?
    --------------

    Tablelist is available for free download from the URL

    https://www.nemethi.de

    The distribution file is "tablelist7.9.tar.gz" for UNIX and
    "tablelist7_9.zip" for Windows. These files contain the same
    information, except for the additional carriage return character
    preceding the linefeed at the end of each line in the text files for
    Windows.

    Tablelist is also included in tklib, which has the address

    https://core.tcl.tk/tklib

    How to install it?
    ------------------

    Install the package as a subdirectory of one of the directories given
    by the "auto_path" variable. For example, you can install it as a
    subdirectory of the "lib" directory within your Tcl/Tk installation.

    To install Tablelist on UNIX, "cd" to the desired directory and unpack
    the distribution file "tablelist7.9.tar.gz":

    gunzip -c tablelist7.9.tar.gz | tar -xf -

    On most UNIX systems this can be replaced with

    tar -zxf tablelist7.9.tar.gz

    Both commands will create a directory named "tablelist7.9 with the subdirectories "demos", "doc", and "scripts".

    On Windows, use WinZip or some other program capable of unpacking the distribution file "tablelist7_9.zip" into the directory "tablelist7.9",
    with the subdirectories "demos", "doc", and "scripts".

    How to use it?
    --------------

    The Tablelist distribution provides two packages, called Tablelist and Tablelist_tile. The main difference between the two is that
    Tablelist_tile enables the tile-based, theme-specific appearance of
    tablelist widgets; this package requires tile 0.6 or higher. It is not possible to use both packages in one and the same application, because
    both are implemented in the same "tablelist" namespace and provide
    identical commands.

    To be able to access the commands and variables of the Tablelist
    package, your scripts must contain one of the lines

    package require tablelist ?version?
    package require Tablelist ?version?

    Likewise, to be able to access the commands and variables of the
    Tablelist_tile package, your scripts must contain one of the lines

    package require tablelist_tile ?version?
    package require Tablelist_tile ?version?

    Since the packages Tablelist and Tablelist_tile are implemented in the "tablelist" namespace, you must either import the procedures you need,
    or use qualified names like "tablelist::tablelist".

    For a detailed description of the commands and variables provided by
    Tablelist and of the examples contained in the "demos" directory, see
    the tutorial "tablelist.html" and the reference pages, all located in
    the "doc" directory.
    --
    Csaba Nemethi https://www.nemethi.de mailto:csaba.nemethi@t-online.de

    --- Synchronet 3.21a-Linux NewsLink 1.2