# Changes Made to Tix

### Changes Since Tix 4.0.4

#### 5/5/96

- New feature: New tool unix-et-tk4.0/makescript.tcl. It includes the Tix script library into a ET application in the correct order. If A.tcl depends on B.tcl, then B.tcl is loaded first.

  #### 5/6/96

- New feature: Now the -default option of the Tix mega widget classes are inherited from their superclasses.

- New feature: New option -expand for the panes in PanedWindow

- Bug Fixed: ScrolledHList didn't calculate the size of the hlist subwidget correctly, resulting in scrollbars not appearing even if the hlist widget is not big enough to display all of its contents.

  #### 5/8/96

- New feature: New method setsize for PanedWindow.

  #### 5/10/96

- New feature: New widget tixMeter, can be used to display the progress of work.

- Bug Fixed: HList multiple and extended selectMode now work with TixTree.

  #### 5/11/96

- Bug Fixed: HList "see" method sometimes doesn't display the specified element correctly.

- New widgets: New widgets CheckList, Grid, ScrolledGrid, TList and ScrolledTList added to the Tix 4.1 distribution.

- New feature: New option -postcmd for PopupMenu widget.

### Changes Since Tix 4.1a3

#### 7/14/96

- New feature: Supports ET+TK4.1. --enable-tk41_et flag for configure script.

- New feature: Supports ITCL 2.1. --enable-itcl21 flag for configure script.

- New feature: Default color schemes and fontset can be set when Tix is compiled: --with-fontset= and --with-scheme= flags for configure script.

- Incompatibility: All the "::" qualifiers in Tix class methods have been replaced by ":", so that the Tix classes can be loaded into Itcl without patching Itcl. If you have written your own Tix classes, you need to modify the source files to use the ":" qualifier instead.

  The program tools/setcolon.sh helps you port your code from the "::" convention to the ":" convention. Execute the program without argument for usage syntax. It may modify your code in unexpected ways. Use with caution.

  #### 7/15/96

- New feature: New function Tix_SetRcFileName() and new macros TCL_7_5_OR_LATER, TK_4_1_OR_LATER to provide better support for both Tcl7.4/Tk4.0 and Tcl7.5+/Tk4.1+.

- Bug Fixed: `entrycget` method of OptionMenu didn't work as expected.

  #### 7/17/96

  The demos-c subdirectory has been moved to demos/c-code.

  #### 7/24/96

- Bug Fixed: tixMwm now deletes information about a toplevel when the toplevel is destroyed.

  #### 8/22/96

- New feature: New command "tixConsoleInit" available with Tcl 7.5/Tk 4.1. Create console window that runs in a separate interpreter.

- New feature: Now Tix works under multiple interpreters.

  #### 8/23/96

- New feature: Now ListNoteBook uses a PanedWindow to manage the HList and the pages.

- New feature: New option -dynamicgeometry for PanedWindow.

  #### 8/24/96

- New feature: New command "tixStrEq" compares the equality of two strings.

  #### 9/12/96

- New feature: Tix provides emulation for strcasecmp() for platforms that do not support this function.

  #### 9/14/96

- New feature: New widget command `selection get` for HList. This is just an alias for `info selection`. It's added so that the API is similar to the TK API.

- New feature: New widget command `info bbox` for HList. Used mainly in regression tests.

  #### 9/17/96

- New feature: Orientation of the pane subwidget in
- TixListNoteBook now configureable via the -options switch during creation.

  #### 9/22/96

- New feature: Now the default fontset and color scheme are configurable in the setup.tcl program as well as in the configure script.

  ### Changes Since Tix 4.1b1

  #### 10/13/96

- New feature: Now XPM image works on Windows.

  #### 10/18/96

- New feature: New options -editablecmd and -editcmd for the Grid widget to support editing of the entries.

- New feature: New options -editablecmd and -editcmd for the Grid widget to support editing of the entries.

- New feature: New widget TixFloatEntry to support editing of DItems.

  #### 10/27/96

- Feature Change: The following changes are made to the configuration and installation of Tix:
  - Naming convention of binaries: The binaries for the Tk 4.0 target are called tixwish and libtix.a. For Tk 4.1 and later, the executable is be called tixwish[Tix version].[Tk version] and the library is called libtix[Tix version].[Tk version].[lib extension]. For example, tixwish4.1.4.1 and libtix4.1.4.2.so. On platforms that do not allow the dot character in the names of shared libraries, the dot character will be omitted. E.g., libtix4142.so.
  - Shared vs static linking: The static binary will be created only if the -enable-[tkversion]-shared flag is disabled. If you want to create both shared and static binaries, configure and compile Tix twice.
  - ET support is replaced by SAM (stand-alone module) support.
  - The following options are removed from configure:
    - -enable-tk40_et
    - -enable-tk41_et
    - -enable-tk41_shared
  - The new options are added to configure:
    - -enable-tk40-sam
    - -enable-tk41-sam
    - -enable-tk42-sam
    - -enable-tk41-shared
    - -enable-tk42-shared

  #### 11/1/96

- New feature: XPM code has been rewritten. The code is now cleanly separated into three modules: generic, windows specific and Unix specific.

  #### 11/17/96

- New feature: Tix classes can be defined before their superclasses are defined. However, a class cannot be instantiated before all of its superclasses are defined. This feature makes it possible to load the Tix scripts into the SAM in any order, without having to worry about loading the superclasses before the subclasses.

- New feature: Tix is initialized by calling the command
- __tixInit, not by sourcing Init.tcl.

  #### 11/29/96

- Bug Fixed: tixTmpLine now correctly works on multiple X displays.

  #### 11/30/96

- Feature Change: DisplayStyle now uses a hash table to store the items associated with it (previously a link list was used). This speeds up the delete operations when a lot (1000 or more) of items are associated with the same style. Possible Incompatibility: widgets that use DItems must be recompiled.

- Bug Fixed: Tix no longer tempers with the way Tk handles errors, unless the environment variable TIX_DEBUG_INTERACTIVE is set. If this variable is set, all error messages will be printed to the standard output. This may be convenient for debugging purposes. Use this feature with discretion, and during program development only.

  ### Changes Since Tix 4.1b2

  #### 12/2/96

- Bug Fixed:Dotted anchor lines (HList, TList, Grid) and rubber-band lines (PanedWindow, ResizeHandle) are implemented on Windows.

- New feature: Tcl 7.6 support is complete for the Windows platform. makefile.vc and makefile.bc have been modified such that the Tcl version can be chosen at compile time by, e.g., "make TCL_VER=7.5 -f makefile.bc".

  #### 12/2/96

- Bug Fixed: Display items are correctly clipped. E.g., if a text item is wider than the width of a column in an HList, the item will be clipped.

  #### 12/20/96

- New feature: New sample file demos/samples/EditGrid.tcl that demonstrates the use of an editable grid widget.

  #### 12/21/96

- Bug Fixed: Tix works with multiple interpreters under tk4.1 and 4.2 (see test/general/minterp.tcl). However, minterp.tcl still core dumps under Itcl 2.1. It is not clear to me whether this is a problem of Tix or Itcl.

- Bug Fixed: Now when an interpreter is deleted, all Tix class informations associated with this interpreter are freed. (No memory leak is recorded by purify when running Tix against the complete test suite.)

  #### 1/17/96

- Feature Change: The old monolithic configure script is now split into one script per version of Tk/Itcl (tk 4.0, 4.1, 4.2, 4.3, 8.0 and itcl 2.0, 2.1, 2.1). This makes the maintainence of the configure scripts easier. The eight configure scripts and theisr associated Makefile.in are generated by the programs tools/doconfig.tcl and tools/domakefile.tcl.

- Feature Change: The Unix binary build directories have been moved from unix-tk4.x into unix/tk4.x. The test directory has been renamed into tests.

  ### Changes Since Tix 4.1b3

  #### 2/14/96

- Feature Change: Tix can be loaded using the "package require" command. The "binary version" associated with Tix binaries has been changed from 4.1.${TK_VERSION} to 4.1.${TCL_VERSION} (or 4.1.${TCL_VERSION}.1 for Itcl). See docs/Pkg.txt for details.

  ### Changes Since Tix 4.1.0

  #### 4/7/97

- New global Tcl variable tix_release that indicates a "release" of Tix. This makes it possible to identify frequent patch release of Tix without modifying the tix_version and tix_patchLevel variables.

- The missing "info selection" command is added to TList. Thanks to David Sundstrom for the patch.

- New "index" command for TList.

- The Itcl-enabled tixwish is installed as tixwish4.1.x.x.1 on Unix -- with a .1 suffix similar to the shared library.

  New patch release 4.1.0.001 uploaded to ftp.xpi.com/pub/Tix4.1.0.tar.gz

  #### 6/17/97

- New "info size" command for TList.

  #### 6/27/97

- New "see" command for TList.

- SAM works with Tk 8.0 and Itcl 2.2. (Only tixsam?.so is supported, no satixwish support.)