Version 147 of Jos Decoster

Updated 2012-08-09 07:09:44 by jdc

Contact info

mail: jos _dot_ decoster _at_ gmail _dot_ com

jdc on the Tcler's chat.



Using BLT with Tcl 8.5.2

For an application I develop, I'm using the BLT commands bgexec, busy, graph and barchart. bgexec and busy are available as starkits (check Standalone bgexec and busy), but the graph and barchart commands have no startkit equivalent. So I had to get BLT going for Tcl 8.5.2. The followings changes were needed:

  1. BLT has its own copy of the TkDisplay structure definition. A new member was added to this struct in Tk 8.5.2, which caused a crash of the busy command. This new member is XIMStyle inputStyle;, found in file tkInt.h of the Tk distribution. This member needs to be added to the TkDisplay definition as found in bltWindow.c file of BLT.
  2. Tk must be compiled without Xft support. Xft seems to cause trouble with e.g. the bitmap command.
  3. Some libs need to be added to the link command. This needs to be inserted before -lX11 in the generated Makefile in the src and src/shared subdirectories: -lX11 -lXss -lXext.
  4. When using the zoom-stack, some assertion trigger. Commenting them out solved the problem without introducing problems. I removed the 4 assert statements in the BoxesDontOverlap function in file bltGrMarker.c.

Note: I've stopped using BLT, so I don't know the usefulness of the items above.