September 1, 1993                               Version 1.0

                           O V E R V I E W

    The Widget Builder (wided) is a Widget previewer.  It allows one
to add, delete and reorder widgets to create an IDL widget interface.
Although its primary intent is as previewer -- to allow the user to
view a widget interface before coding it -- wided will create a
skeleton of IDL code which the user then may flesh out with various
event code.

    Every widget in the interface has an associated control panel
which allows you to change the values of the keywords and parameters
used to build that widget.  The interface does not update the changes
immediately, instead, only when the "Rebuild" button on the main
control panel is pressed. The interface is then regenerated to reflect
the current state of the widget tree being previewed.


                      M A I N       D I A L O G

    The main dialog box is central to using the wided.  It controls
the keywords associated with the top-level widget.  In addition there
are general wided functions which are accesses via its menu bar.

    The menu bar:

File:
    New - Destroy the current widget tree.
    Open - Destroy the current widget tree and then read in a widget
        tree which was previously saved in a file.  Widget trees are
        saved in .WID files.
    Save - Save the current widget tree to disk.
    Create .PRO - Create an IDL script which will create the current
        widget tree.  The widget builder can NOT recreate an interface
        from a .PRO file, only from a .WID file.
    Show Object Tree - Shows in text form, the widget hierarchy
    Quit - Exit wided

Edit:
    Cut - Allows one to remove a subtree from the widget tree.
    Copy - Allows one to copy a subtree of the widget tree.
    Paste - Allows one to add a subtree (previously cut or copied) to
        the widget tree.
    Edit - Allows one to access the dialog box associated with any
        of the widgets in the widget tree.

Add:
    Add a widget of the specified type to the top level base.
    dependent bases are not actually contained in the top level base,
    rather, the top level base becomes that base's group leader.
    Currently, the following objects are supported:
        Bases, Buttons, Bitmapped Buttons, Button Groups (CW_BGROUP),
        Draw Widgets, Fields (CW_FIELD), Label, List, Text Widgets,
        Pull Down Menus (CW_PDMENU), Sliders, and Floating Point
        Sliders (CW_FSLIDER).

Rebuild:
    Updates the preview of the widget tree.

Help:
    Displays this document.

-----------------------------------------

It is not possible to 'Cancel' a base.  Use 'Cut' to remove a base.

When editing a bitmapped button using a 3 button mouse, the left button
flips colors, the middle button draws in white and the right button draws
in black.

Random plots are placed in draw widgets.  This happens only in the
preview to help you see the effects of backing store and scrolling.
Plots are not drawn in code generated by the widget builder.

On some platforms lists, button groups, and multi-line text will have
an extra line already in the edit field.  This will cause an extra
button, list item, or blank line at the end.  You can always delete
this line when editing its value.

A Button Group with no buttons will be given a single button: <Nil BGROUP>

A List with no entries will be given a single entry: <Nil LIST>

A pull down menu with no entries will be given the entry: <Empty Menu>


The user may override the normal help file and the normal widget
definition file:

The widget builder looks in the current directory for "widdef.dat" and
then in $IDL_DIR/lib/obsolete/wided.  "widdef.dat" is an ascii data file which
describes what widgets the widget builder supports.

The widget builder looks in the current directory and then
$IDL_DIR/help/widget to find its help file, "WidAbout".
