Changing existing widget options

Once created many of the options specified for the widget may subsequently
be changed. This is particularly useful for adding to or changing the contents
of list and galley widgets. However menus can be dynamically defined by
changing the list of strings which is used to specify the menu list.

procedure
                        :modify         name    arguments
        arguments define changes required to the widget known by name.
The changes possible are determined by the type of widget. Unless specified
otherwise the definition of the procedure which created the widget should be
referenced for a definition of the arguments.

        Widget type     frame
        arguments
                        :label          string
                        :w                      number
                        :h                      number
                        :closed         T|F
                        :delete         T       deletes the frame widget
                        :busy           T|F     see footer description
                        :transient              T

        Widget type     panel
        arguments
                        :w                      number
                        :h                      number
                        :delete         T       deletes the panel widget

        Widget type     button
        arguments
                        :deaf                   T|F
                        :inactive               T|F
                        :busy           T|F     if T then button show sunken
                        :label          string
                        :colour         value


        Widget type     text
        arguments
                        :label          string
                        :w                      number
                        :value          string
                        :deaf                   T|F
                        :inactive               T|F

        Widget type     list
        arguments
                        :strings                list
                        :rows           number
                        :cols                   number
                        :show           T|F
                        :see                    number
                        :select         value
                        :deselect               value
                        :empty          T|F
                        :append         T|F

        Widget type     galley
        arguments
                        :strings                list
                        :rows           number
                        :cols                   number
                        :see                    number
                        :show           T|F
                        :inactive               T|F
                        :empty          T|F
                        :append         T|F
                        :usingtag               number
                        :createtag              number
                        :deletetag              number
        :usingtag defines the tag to be used by subsequent :strings arguments.
        :createtag creates (configures) a tag in the text widget and :deletetag delete a tag.


        Widget type     message
        arguments
                        :label          string
                        :font                   string
                        :colour         string
                        :bold                   T|F

        Widget type     checkbox
        arguments
                        :value          value
                        :deaf                   T|F
                        :inactive               T|F
                        :colours                list

        Widget type     number
        arguments
                        :deaf                   T|F
                        :inactive               T|F
                        :label          string
                        :value          value

        Widget type     gauge
        arguments
                        :label          string
                        :value          value
                        :min                    value
                        :max                    value
                        :max-tick-value value
                        :inactive               T|F

        Widget type     slider
        arguments
                        :label          string
                        :value          value
                        :min                    value
                        :max                    value
                        :inactive               T|F


        Widget type     menubutton
        arguments
                        :strings                list
                        :menu           list
                        :label          string
                        :inactive               T|F

        Widget type     optionbutton
        arguments
                        :strings/:menu  list
                        :value          value
                        :inactive               T|F

        Widget type     choice
        arguments
                        :value          value
                        :inactive               T|F

        Widget type     choice-stack
        arguments
                        :strings                list
                        :menu           list
                        :value          value
                        :inactive               T|F

        Widget type     canvas
        arguments
                        :w                      number
                        :h                      number
                        delete          T|F