code. The time needed for the design−compile−test cycle is greatly reduced. By using UIL as a prototyping tool, you
can try out several alternative interfaces without wasting too much time on those you don't use.
Many of the graphical user interface builders (UIBs) available today can read and write UIL files, which can be an
advantage if you're currently using such a builder or might use one in the future. The syntax of UIL is simple enough
that these products can read any UIL file, including one written without the builder. However, there are currently no
tools that can read an interface created with arbitrary C code. Most builders can generate application code, but unlike
UIL files, you cannot make changes to the generated C code and have a UIB import it.
Internationalizing applications with UIL is often easier than internationalizing applications written only in C because
nearly all the strings used in an interface are stored in the application's associated UIL modules. Internationalizing the
application is simply a matter of isolating language−dependent strings in a single module and writing separate
versions of that module for each language supported by the application. (An example of this technique is presented in
Section #suili18n in Chapter 26.) If you decide to work with UIL, you must spend some time learning how to use it.
This is mainly a problem for experienced Motif and Xt programers who already know how to create an interface in C.
People entirely new to Motif can usually ...