[comp.windows.misc] Languages for building Graphical User Interfaces

rudolf@turing.ac.uk (Jim Rudolf) (04/10/90)

sandell@ferret.ils.nwu.edu (Greg Sandell) writes:

>How powerful are GUI toolkits for the user who wants to create a
>a highly individualized environment?  For example, creating
>a button or menu that departs in stylistic and performance details
>from the ready-made buttons or menus provided by the toolkit...
>are the toolkits flexible enough to allow changes?  Or do they force
>you to jump though so many hoops that it would be easier to write
>your own low-level code?  Do you believe that GUI toolkits ought to
>be used only for their ready-made objects, whereas customized
>programming has to be done from the ground up by necessity?    

The Turing Institute has developed a tool called HyperNeWS for quick
development of user interfaces by direct manipulation.  HyperNeWS
uses two forms of instantiation to handle the examples you mention.
There are a number of system objects, such as menus and buttons, that
you can instantiate from the system class.  This would be useful for
someone who is satisfied with the look and behavior of the predefined
classes.  You can also instantiate by prototyping.  If you copy & paste
an instance of a system object, a replica is created.  You are now free
to change the look (with a drawing tool) or the behavior by adding
methods or over-riding the system methods you want to change.  You can
also copy & paste this new object to create multiple customized objects.
This does *not* create a subclass of the system class, but a copy of
an instance.

This distinction between class and prototype instantiation was first
used in the hopes of creating portable tools that aren't dependent upon
a site's proliferation of subclasses based on the system classes.  But
it has also provided the user with some flexibility to use the objects
as is, or personalize them.

HyperNeWS is free for research and academic use, and is available from
various FTP sites.  It requires OpenWindows1.0.

--


Jim Rudolf              The Turing Institute              rudolf@turing.ac.uk