16.1 New GUI Front Ends
New with version 1.2 of Aubit4GL is support via an XML protocol for separate Graphical front end applications to provide display services for Aubit4GL programs in the spirit of X display servers.
The Aubit4GL project began with support for the traditional ASCII Informix form files displaying on an 80x24, 80x25, or 128x24 character screen. This is still the default for Aubit4GL but it can be enforced by setting A4GL_UI=TUI.
Then support was added for rendering the same forms in a graphical user interface using the GNOME Tool Kit (GTK) library. This rendered the standard Informix menus and form fields with graphical equivalents from the GTK library.
Later the Aubit4GL syntax was extended to give specific support for graphical widgets (BUTTON, COMBO, LABEL, PIXMAP, TEXT, etc). In order to support further expansion of graphical capabilities, Mike Aubury embarked on splitting the interface code into High Level code (with a prefix HL e.g. HL_TUI) with common calling functions. The idea was that the possible graphical interfaces of the future would share the same High Level interface and implement the functionality with calls to the various libraries in C++, C#, and Java through their C interfaces.
With version 1.2 onwards this approach has lapsed. For the non-graphical text user interface, use TUI (not HL_TUI) by setting A4GL_UI=TUI.
16.1.1.4 Graphical Front Ends
For graphical user interfaces, you can still use GTK by setting
A4GL_UI=HL_GTK,
but there will not be much future development of the GTK GUI. Its place is being taken by a new generation of graphical front ends being built by commercial enterprises which are part of the Aubit4GL fraternity. These draw their inspiration from 4Js applications and emulate much of their style and syntax.
At the time of writing early July 2010, the most advanced of these is Ventas Display Client (VDC) from
www.ventas.de.
There are also a C# application and a Java application in the wings all using the same XML protocols to interface with 4GL programs.
Aubit4GL now has a XML formats (DTDs) for
-
Forms. The command fcompile -xml <formname> will produce an XML file understood by the new generation of graphical front ends. Even if you haven’t compiled your .per file to XML, Aubit4GL will convert your .afr file to xml on the fly provided you have set A4GL_UI=XML.
-
Client -> 4GL. An XML protocol for sending user input from the front end client to a 4GL program (remote or local)
-
4GL -> Client. An XML protocol for sending data and commands from the Aubit4GL program to a graphical front end.