Conversion of the User Interface design
This stage involves converting the "front-end" code that builds and
displays the user interface for the application to Java. Typically, this
part of the application will either have been designed using a Motif GUI
Builder or coded by hand using C, C++ or UIL.
To address this stage of the process our X-Designer product is used to
translate the Motif GUI into an intermediate XML format. If the Motif
application was developed in UIL or using a Motif GUI Builder these GUI
files can be automatically converted into XML format using
X-Designer's
import filters. In cases where the GUI was hand coded using C or C++
X-Designer's unique XD/Capture utility is used to capture the GUI design
from the running application without the need to access the source code.
The intermediate XML format is then further translated to pure Java Swing
using an XML to Swing converter. Because we also map the Motif design into
a format that can be read by Visaj, our advanced Java GUI Builder, it is
possible to make modifications or design improvements to the Java GUI at
any time.
Conversion of GUI toolkit API calls in the back end
code
With your GUI converted to Java you now have the option of partitioning
your application into a client-server based architecture consisting of a
Java front-end client and a C/C++ back end server separated by a
communications layer.
At this stage of the process there are significant amounts of GUI toolkit
specific code embedded in the "back end" application code. This is the code
that brings the user interface to life and controls the interaction between
the user and the application logic. These API calls perform such tasks as
setting and getting properties of GUI components, responding to user events
and performing graphics drawing. In a Motif based application all of this
code is specific to the X and Motif toolkits and needs to be converted to
be toolkit independent
To accelerate this phase of the conversion process IST has developed a
suite of in-house migration tools that allow us to automatically identify
and rewrite the GUI toolkit dependent code in the back end code base. This
context sensitive translation process automatically converts X/Motif API
calls to toolkit neutral calls that interact with the Java GUI front end.
The end result is a true client-server based application consisting of a
pure Java GUI client that can be run on any system or in any browser and a
toolkit independent back end server that interacts with the Java client via
an industry standard communications layer. The client and server can be on
the same system, connected over a network or connected via the internet.