Newsletter sign-up
View all newsletters

Enterprise Java Newsletter
Stay up to date on the latest tutorials and Java community news posted on JavaWorld

Sponsored Links

Optimize with a SATA RAID Storage Solution
Range of capacities as low as $1250 per TB. Ideal if you currently rely on servers/disks/JBODs

Easily switch from Visual Basic to a Swing-based platform

AbaGUIBuilder: An open source GUI builder for the Delphi and VB developer

  • Print
  • Feedback

When Abacus Research AG, a business software development company in Switzerland, decided to switch development platforms from Borland's Delphi to Java Swing, it found itself at a development crossroads. Our large application development team had many years of GUI development in Delphi, but little experience with Java/Swing, and we needed to port hundreds of Delphi applications to Swing within a tight schedule. After researching the GUI tools available at the time, we felt we could accomplish our goals by sponsoring a GPL (GNU General Public License) open source Java GUI builder that could help other application developers facing the same challenge.

The Abacus Java GUI builder, called AbaGUIBuilder, was designed to ease the development transition from Visual Basic (VB) or Delphi into Java Swing. This strategy has helped Abacus Research meet its delivery goals for its Java release, reduced development time, and allowed its application developers to focus on the business application instead of the intricacies of the Swing framework.

As illustrated in Figure 1, AbaGUIBuilder has most of the elements found in other development environments such as VB and Delphi. At the top-left corner of the window is the active object tree and below it is the Swing component palette. Located at the top center is the development panel, or "canvas," where all Swing components are dropped and instantiated. At the top right is a property editor. At the bottom is the Event panel, containing two tab pages: the Event Code editor, where you add event code for each individual visual object, and the Messages panel, which displays the AbaGUIBuilder's status messages.

Figure 1. The Abacus GUI builder. Click on thumbnail to view full-sized image.

Why write our own GUI tool?

Why did we choose to write our own tool? In the beginning, we decided our tool should include the following five requirements:

  1. Easy to use
  2. Little or no experience with layout managers required
  3. No experience with Swing required
  4. No need to output Swing code
  5. The UI could be separated from the business logic

During our evaluation of the GUI development tools available at that time, we found good IDEs that manufactured Java Swing code; however, they did not meet our first and last key requirements.

We defined easy-to-use as the ability of any developer, regardless of his or her Java Swing experience, to create a running GUI form within minutes, not hours, thus allowing the developer to concentrate on the business logic instead of the framework details. From the beginning, our developers wanted a WYSIWYG environment so they could visually predict how their applications would look and feel at deployment. As it turns out, this feature has saved them hours of development time. None of the tools we evaluated at that time provided this capability; the designed screen never matched the output screen and vice versa—this was a huge drawback for us. The AbaGUIBuilder handles this requirement with a preview mode so you can see how your application will look when you run it.

  • Print
  • Feedback

Resources