Tix Frequently Asked Questions

Table of Contents

General Questions

Legal Issues

Porting from Tix 3.6 to Tix 4.0

Question About Specific Platforms

Trivia


General Questions

[G.1] What does the "-disablecallback" option do?

Many Tix widgets have both a -value option and a -command option. Any modification of the -value will cause the -command callback to be executed. Sometimes this is undesirable. For example, calling "config -value" inside the callback procedure will cause the callback to be re-entered and thus an infinite recursion.

The -disablecallback can be used to advoid this problem. When this option is set, the -command callback will not be executed even if the -value of a widget is changed. Therefore, if you need to modify the -value of a widget inside its callback, do this:

    proc my_callback {w} {
	$w config -disablecallback true
	$w config value blah
	$w config -disablecallback false
    }
    
If you find this too troublesome, you can call the command tixSetSilent:
    proc my_callback {w} {
	tixSetSilent $w blah
    }
    

[G.2] How do I set the width of the entry subwidget inside the tixControl widget?

You can use the option database or the -options flag to set the configuration options of the subwidgets. E.g:

option add *TixControl*entry.width 10
OR
tixControl .c -options {
   entry.width  10
}

[G.3] What is the "setslient" method?

This is an obsolete method. You could use it to achieve the same effect as the -disablecallback option. selsilent used to be a widget command for the ComboBox, Control, etc. It has been removed since Tix 4.0a4 and replaced by the tixSetSilent command. Please note that tixSetSilent is not a widget command but an external procedure.

[G.4] Is there a Tix interface builder in the works?

Yes. But I don't know when it will be finished. (probably in 96).

[G.5] Can you tell me about the syntax of tixForm

Please see the file man/Form.html or man/Form.n.


Legal Issues

[L.1] I am developing a commercial application, can I use Tix 4.0?

Yes. The legal and copyright status of Tix is exactly the same as that of TK (with only one catch, see [2]). If you are bold enough to use TK in your commercial app, you should be able to use Tix for free.

[L.2] I am developing a commercial GUI builder, something like zApp, can I use Tix 4.0?

You can use every aspect of Tix except the tixForm geometry manager (please read the file LEGAL.html ). That means, for example, your product can include the TixComboBox and other widgets. However, TixForm, including the TCL command, the C library code or the documentation, cannot be included into your product at all. You are also explicitly prohibited form examining, imitating, copying, reverse-enrgineering or otherwise using the file tixForm.c.

[L.3] Can I use tixForm in my commercial app which is not a GUI builder.

Yes.

[L.4] I am writing a free GUI builder, can I use tixForm in it?

Yes, provided you distributed your GUI builder freely. That means it should be no less free than at least one of the following:
  1. GNU Public License
  2. "Berkeley" type license.

[L.5] Will future versions of Tix be free?

I don't have much control over this. The availability of future versions (i.e., beyond the final release of Tix 4.0) can be affected by many reasons. However, Tix 4.0 will be kept freely distributed for its lifetime or mine, whichever is longer.


Porting from Tix 3.6 to Tix 4.0

[P.1] What happened to the tixInit command?

You don't need to use it anymore. It is provided in Tix 4.0 only for backward compatibility.

[P.2] How do I set the schemes and fontsets in Tix 4.0?

You can set the color schemes and fontsets using the standard X resource database (.Xdefaults file). You can add these two lines in the user's .Xdefaults file:

	*TixScheme:   Gray
	*TixFontSet:  14Point 
If you want to switch color schemes and fontsets during run time, you can issue the following commands:
	tix config -scheme Gray -fontset 14Point
    
Please read the tix manual page for more details


Question About Specific Platforms

[S.1] Solaris 2.4: Filenames in FileSelectBox are chopped off.

Problem:
With Tix4.0a7 (and also with Tix4.0a6) on Solaris 2.4, when running the widget demo, in tixFileSelectBox, in the two scolling lists (for Files an Directories), some of the file and directory names have their first 2 letters chopped off. And some files are repeated.
Solution: tixwish has some conflicts with /usr/ucblib/libucb.so.1 and you should not linke it tixwish (you don't need it). Here is a solution provided by Charles L Ditzel (charles@hanami.cyberspace.com):
To fix the problem I was having, all I did was:
   unsetenv LD_LIBRARY_PATH
   set my PATH to something basic like:
     /usr/bin:/usr/ccs/bin:/bin:/usr/openwin/bin:/opt/SUNWspro/bin
   removed config.cache
   ./configure
   make clean
   make
    
and now it works!! Must have been something in my old PATH or LD_LIBRARY_PATH that was causing it to pick up /usr/ucblib/libucb.so.


Trivia

[T.1] How do you pronunce "Ioi"

You take the first "I" as a "Y" : so it goes like "Yoi"

[T.2] How on earth did you pick such a name

Well, I didn't pick it myself. Nor did my parents. I was born in China and then my family moved to Macao , which was under a Portugese government. So they made a transliteration of my Chinese name into Portugese. And since there isn't the character "Y" in Portugese, they were forced name me using a symmetrical binary string.


Last modified Jul 20 09:31 --- Serial 806247071