Museum

Home

Lab Overview

Retrotechnology Articles

⇒ Online Manual

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

XtSetValues(3Xt)



XtSetValues(3Xt)                                 XtSetValues(3Xt)



NAME
     XtSetValues, XtSetSubvalues, XtGetValues, XtGetSubvalues -
     obtain and set widget resources

SYNTAX
     void XtSetValues(w, args, num_args)
           Widget w;
           ArgList args;
           Cardinal num_args;

     void XtSetSubvalues(base, resources, num_resources, args,
     num_args)
           caddr_t base;
           XtResourceList resources;
           Cardinal num_resources;
           ArgList args;
           Cardinal num_args;

     void XtGetValues(w, args, num_args)
           Widget w;
           ArgList args;
           Cardinal num_args;

     void XtGetSubvalues(base, resources, num_resources, args,
     num_args)
           caddr_t base;
           XtResourceList resources;
           Cardinal num_resources;
           ArgList args;
           Cardinal num_args;

ARGUMENTS
     args      Specifies the argument list of name/address pairs
               that contain the resource name and either the
               address into which the resource value is to be
               stored or their new values.

     base      Specifies the base address of the subpart data
               structure where the resources should be retrieved
               or written.

     num_args  Specifies the number of arguments in the argument
               list.

     resources Specifies the nonwidget resource list or values.

     num_resources
               Specifies the number of resources in the resource
               list.

     w         Specifies the widget.




XWIN 3.0               Last change: 9/1/88                 .ie t





XtSetValues(3Xt)                                 XtSetValues(3Xt)



DESCRIPTION
     The XtSetValues function starts with the resources specified
     for the Core widget fields and proceeds down the subclass
     chain to the widget.  At each stage, it writes the new value
     (if specified by one of the arguments) or the existing value
     (if no new value is specified) to a new widget data record.
     XtSetValues then calls the set_values procedures for the
     widget in superclass-to-subclass order.  If the widget has
     any non-NULL set_values_hook fields, these are called
     immediately after the corresponding set_values procedure.
     This procedure permits subclasses to set nonwidget data for
     XtSetValues.

     If the widget's parent is a subclass of con-
     straintWidgetClass, XtSetValues also updates the widget's
     constraints.  It starts with the constraint resources speci-
     fied for constraintWidgetClass and proceeds down the sub-
     class chain to the parent's class.  At each stage, it writes
     the new value or the existing value to a new constraint
     record.  It then calls the constraint set_values procedures
     from constraintWidgetClass down to the parent's class.  The
     constraint set_values procedures are called with widget
     arguments, as for all set_values procedures, not just the
     constraint record arguments, so that they can make adjust-
     ments to the desired values based on full information about
     the widget.

     XtSetValues determines if a geometry request is needed by
     comparing the current widget to the new widget.  If any
     geometry changes are required, it makes the request, and the
     geometry manager returns XtGeometryYes, XtGeometryAlmost, or
     XtGeometryNo.  If XtGeometryYes, XtSetValues calls the
     widget's resize procedure.  If XtGeometryNo, XtSetValues
     resets the geometry fields to their original values.  If
     XtGeometryAlmost, XtSetValues calls the set_values_almost
     procedure, which determines what should be done and writes
     new values for the geometry fields into the new widget.
     XtSetValues then repeats this process, deciding once more
     whether the geometry manager should be called.

     Finally, if any of the set_values procedures returned True,
     XtSetValues causes the widget's expose procedure to be
     invoked by calling the Xlib XClearArea function on the
     widget's window.

     The XtSetSubvalues function stores resources into the struc-
     ture identified by base.

     The XtGetValues function starts with the resources specified
     for the core widget fields and proceeds down the subclass
     chain to the widget.  The value field of a passed argument
     list should contain the address into which to store the



XWIN 3.0               Last change: 9/1/88                 .ie t





XtSetValues(3Xt)                                 XtSetValues(3Xt)



     corresponding resource value.  It is the caller's responsi-
     bility to allocate and deallocate this storage according to
     the size of the resource representation type used within the
     widget.

     If the widget's parent is a subclass of con-
     straintWidgetClass, XtGetValues then fetches the values for
     any constraint resources requested.  It starts with the con-
     straint resources specified for constraintWidgetClass and
     proceeds down to the subclass chain to the parent's con-
     straint resources.  If the argument list contains a resource
     name that is not found in any of the resource lists
     searched, the value at the corresponding address is not
     modified.  Finally, if the get_values_hook procedures are
     non-NULL, they are called in superclass-to-subclass order
     after all the resource values have been fetched by XtGet-
     Values.  This permits a subclass to provide nonwidget
     resource data to XtGetValues.

     The XtGetSubvalues function obtains resource values from the
     structure identified by base.

SEE ALSO
     X Toolkit Intrinsics - C Language Interface
     Xlib - C Language X Interface






























XWIN 3.0               Last change: 9/1/88                 .ie t





XtSetValues(3Xt)                                 XtSetValues(3Xt)























































XWIN 3.0               Last change: 9/1/88                 .ie t






Typewritten Software • bear@typewritten.org • Edmonds, WA 98026