[comp.windows.x] Gadgets in Motif

pererik@KHEOPS.CMI.NO (Per-Erik Nordbo) (08/16/89)

Gadgets versus Widgets in Motif
-------------------------------

Motif has introduced the user interface object "Gadget" as an alternative to
"windowless" Widgets ( arrow, button, label, separator etc).

Is the advantage converting a Widget into a functionally equilavalent Gadget
primarily speed, memory savings or both? Is this a Motif-only toolkit extension?

============================
Per Erik Nordboe
Chr. Michelsens Institute
Norway
email: pererik@kheops.cmi.no
============================

graham@fuel.dec.com (kris graham) (08/17/89)

>Gadgets versus Widgets in Motif
>-------------------------------

>Motif has introduced the user interface object "Gadget" as an alternative to
>"windowless" Widgets ( arrow, button, label, separator etc).

>Is the advantage converting a Widget into a functionally equilavalent Gadget
>primarily speed, memory savings or both? Is this a Motif-only toolkit extension?


Gadgets have been in the DECwindows toolkit long before Motif  was created.  I  
(am not sure) believe the MIT folks have it also.

The implementors of gadgets say that there are tremendous performance improvements
both in execution speed and data space.....for *both* application and server processes....
and reduces the incidence of lost functionality associated with widgets.

Gadgets have no visuals so, they are 'barren"...ie.  they can't have popup children, translations,
etc.

I am using a very fast workstation  with a very fast server (DECstation 3100), so the differences
between gadgets and widgets, may be in infinitesimal small units ;-)

-- 
Christopher Graham          
Digital Equipment Corp            
Ultrix Resource Center                                         
New York City  (usual disclaimers go in here)

anon@dip.eecs.umich.edu (Omar S. Juma) (08/17/89)

In article <322.8908161255@jupiter.cmi.no> pererik@KHEOPS.CMI.NO (Per-Erik Nordbo) writes:
>Gadgets versus Widgets in Motif
>-------------------------------
>
>Motif has introduced the user interface object "Gadget" as an alternative to
>"windowless" Widgets ( arrow, button, label, separator etc).
>
>Is the advantage converting a Widget into a functionally equilavalent Gadget
>primarily speed, memory savings or both? Is this a Motif-only toolkit extension?
>
>============================
>Per Erik Nordboe
>Chr. Michelsens Institute
>Norway
>email: pererik@kheops.cmi.no
>============================

I believe the trend in UIMSen [the new unofficial plural of UIMS] is towards
windowless interface objects.  You're not likely to save memory; the allocation
burden is now moved to the client, not the server.  You are, however, relieving
the server from tracking hundreds of tiny little objects all over the place.

Giving the client full tracking "rights" enables a variety of highlighting
methods (maybe even none).  It leaves the server more time to do what it does
best: drawing text and graphics in windows, and handling device input.  All
other higher-level functionality is the domain of clients.  That is the correct
abstraction, until somebody decides to write an interface server.

That's one small step forward.  Unfortunately, we are now entering the tail-fin 
era in X user interfaces, and for a while, there will be too many garish,
eminently forgettable UIMSen.  But remember, even though some of us look back
at pink Cadillacs with fondness, it's very unlikely than anyone will want to
exhibit any emotion over the demise of the xedit-xmh school of user interface
design.

By the way, could someone from OSF provide information on the choice of "Motif"
for a title?  How did OSF get away with not naming it "Open Motive"?  :-)


Omar S. Juma
Computer Aided Engineering Network (CAEN)
University of Michigan, Ann Arbor MI 48109

phone: 313-936-2486
email: anon@caen.engin.umich.edu

ben@hpcvlx.HP.COM (Benjamin Ellsworth) (08/18/89)

> Is the advantage converting a Widget into a functionally equilavalent
> Gadget primarily speed, memory savings or both?

Primarily memory, however any time you get smaller on a virtual memory
platform you also get faster -- the classical Speed vs. Size tradeoff is
simply not accurate on most systems anymore.  A gadget can be designed
to carry only the minimum data neccessary to perform its function.  All
of the "shadow" window data (normally carried in and supported from 
core) can be eliminated.  Gadgets allow both the client and the window 
server to be smaller and faster.

> Is this a Motif-only toolkit extension?

The idea is not new or unique with OSF.  HP did them (the idea is at
least as old as the XRay toolkit on X10), DEC did them (although to 
hear them talk about it you'd think theirs were the first, the best or 
the only), SPC did them, a couple of universities did them in the 
course of other work, and I don't know who else but I'm sure a lot of 
others did them also.  Eliminating uneeded window overhead is an 
obvious enhancement to the original Xt Intrinsics design.  Everybody, 
to the best of my knowledge, did them slightly differently.  The OSF 
Motif gadgets follow a particular design policy which I'm sure OSF 
considers either copyrighted or a "trade secret" so I won't elaborate 
on it.

If you want to build your own gadgets, either buy a OSF Motif source
license and extend the current gadget set or create your own style of 
windowless objects.  The latter may take some careful enhancements to 
the Xt Intrinsics.

-----------------------------------------------------------------------
Benjamin Ellsworth      | ben@cv.hp.com                | INTERNET
Hewlett-Packard Company | {backbone}!hplabs!hp-pcd!ben | UUCP
1000 N.E. Circle        | (USA) (503) 750-4980         | FAX
Corvallis, OR 97330     | (USA) (503) 757-2000         | VOICE
-----------------------------------------------------------------------
                     All relevant disclaimers apply.
-----------------------------------------------------------------------

asente@decwrl.dec.com (Paul Asente) (08/18/89)

In article <100920101@hpcvlx.HP.COM> ben@hpcvlx.HP.COM (Benjamin Ellsworth) writes:
>If you want to build your own gadgets, either buy a OSF Motif source
>license and extend the current gadget set or create your own style of 
>windowless objects.  The latter may take some careful enhancements to 
>the Xt Intrinsics.

Or, you can wait for the R4 intrinsics, which will fully support gadgets,
compatibly with Motif, XUI, the Athena widgets, or any other R3-based
widget set.

	-paul asente
	    asente@decwrl.dec.com	decwrl!asente