Parent document is top of "Motif FAQ (Part 8 of 9)"
Previous document is "256) TOPIC: UIL"
Next document is "258) What is Mrm?"
257) What is UIL and why is it so popular?
[Last modified: Sept 94]
Answer:
UIL is the acronym for "User Interface Language", a Motif standard which
permits separation of the user interface from application code. UIL is a
textual description of the user interface which is compiled into binary form
called UID ("User Interface Definition") using the Motif-provided compiler
called "uil".
It is important to realize that UIL is a static description of the UI in that
connections between buttons and the dialogs they invoke, for example, is not
expressed here; dynamic UI behavior appears in C code.
The Period Table of Widgets, called "periodic" (delivered by many Motif
vendors) is an example of a UIL application.
There are many advantages and disadvantages of UIL applications. A few of the
advantages are:
UIL is a standard format which encourages separation of the
user interface from application code.
UIL can be read and/or written by many of the GUI builders and UIMS
tools mentioned elsewhere in this FAQ, making your interface portable
(to a degree) across builder tools.
UIL is a much better language than C for defining a widget
hierarchy: in C, the widget hierarchy is expressed "linearly"
by referencing a previously-created parent widget when creating
a child widget; in UIL, widget trees are defined more naturally
using nesting.
With UIL, you separate the definition of the widget tree from
the application. You can make major changes to the look-and-feel
without re-building the application.
It is possible to write a "general-purpose" application that defines
a library of callbacks. The application may "execute" any UIL file
that references callbacks from the library.
For a good UIL reference, see "Motif Programming Manual", Volume 6A, published
by O'Reilly and Associates. [See "BOOKS" for details.]
Parent document is top of "Motif FAQ (Part 8 of 9)"
Previous document is "256) TOPIC: UIL"
Next document is "258) What is Mrm?"