From: greg@thirdi.uucp (Greg Holmberg)
Newsgroups: comp.windows.x.motif
Subject: Re: Public Domain GUI Builder for Motif
Date: 20 Aug 92 02:31:44 GMT
Reply-To: greg@thirdi.UUCP (Greg Holmberg)
Organization: Third Eye Software, Menlo Park, CA

In article <1992Aug17.203949.29596@cs.odu.edu>
kale@aelle.cs.odu.edu (Vijay S. Kale) writes:

> Is there a public domain GUI builder available for motif.

Yes, it's called Dirt and it's available at the MIT machine
(expo.lcs.mit.edu or something like that).  It uses Wcl, the Widget
Create Library, an extension to app-defaults resource files.  Wcl is
also available on expo.

I use Wcl and love it.  I haven't used Dirt.  If you have Wcl, I don't
think you really need an interactive builder.  After all, what's an
interactive builder really best at?  Setting widgets down on other
widgets.  This is fine in the MS-Windows world where applications tend
not to have dynamic resizing ability, but with widgets, the size and
position relationships are rule-based, not absolute positions.  You'll
be using Form's and Table's (comes with Wcl).  I don't consider dialog
boxes that don't resize because of fixed positions user friendly.

In other words, you're not just going to plop down a widget and leave
it there.  You're going to have to define constraints and
relationships.  This is done by typing text, not picking things up with
a mouse and moving them.

The other thing a builder does is let you enter values for resources.
This is also done by typing text.  It's just as easy to type it into an
app-defaults file and use Wcl.

Also, with some builders that write out code (UIL or C), you have the
problem of merging or losing manual changes to the file the next time
you use the builder and regenerate the file.

On the other hand, it would be nice if the builders provided the
resource list (like editres) and possible values based on resource type
for each widget.  Then you wouldn't have to look up the available
resources in a book all the time and you might be prevented from typing
mistakes by choosing values from a fixed list.  In this sense, a builder
would be a sort of on-line documentation system, i.e. I wouldn't have
to have my O'Reilly manual open all the time!

Of course, by now I've pretty much got the resource names and values
memorized, at least the common ones.  So a builder, if it had this
intelligent resource editing, might be helpful, but mostly to a novice
Motif developer as a learning tool.

After that, I'm not so sure.  One might argue that builders make good
prototyping tools, but I can prototype in Wcl pretty darn quickly too.
For an experienced Motif developer, a builder might be slightly faster,
but would it be faster enough to justify the cost?

Like builders, Wcl gives you some standard callbacks for prototyping.
But with either one, you're going to write C code at some point if you
want your application to do anything interesting.

You can also use editres to interactively change resource values on a
running application.  I just wish they would get those *ToString
resource converters written so editres could _display_ current values!


Tsch|_,


Greg Holmberg

Third Eye Software, Inc.                415/321-0967 Voice
750 Menlo Avenue, Suite 300             415/321-2066 Fax
Menlo Park, CA  94025                   greg@thirdeye.com