set_valuesb(3) [hpux man page]
set_values_hook() set_values_hook() Name set_values_hook - obsolete Object method for handling changes to subpart resources. Synopsis typedef Boolean (*XtArgsFunc)(Widget, ArgList, Cardinal *); Widget w; ArgList args; Cardinal *num_args; Inputs w Specifies the widget whose nonwidget resource values are to be changed. args Specifies the argument list that was passed to XtSetValues(). num_args Specifies the number of arguments in the argument list. Returns True if the widget should be redrawn; False otherwise. Availability Obsolete in Release 4 and later. Description The set_values_hook() method is registered on the set_values_hook field of the Object, RectObj, or Core class part structure. It is called by XtSetValues() after the class's set_values() method has been called. As of Release 4, the set_values_hook() method is obsolete, because the args and num_args arguments are now passed to the set_values() method. Its purpose had been to allow the value of subpart resources to be set from the argument list, by calling XtSetSubvalues() for example. The arguments to the set_values_hook() method are the widget and the argument list that were passed to XtSetValues(). The widget will have been modified by any superclass methods that have already been called. It should return True if the change to subpart resources will require the widget to be redraw, and False otherwise. The set_values_hook() method is chained in superclass-to-subclass order and is called for compatibility with older widgets. It cannot be inherited, and any new widget classes should set their set_values_hook field to NULL. See XtSetValues(1) for details on when this method is called. See set_values(4) for a discussion of setting the values of subpart resources, and other resources that do not appear on the class resource list. See Also XtSetSubvalues(1), XtSetValues(1), Core(3), set_values(4). Xt - Intrinsics Methods set_values_hook()
Check Out this Related Man Page
XtSetSubvalues() XtSetSubvalues() Name XtSetSubvalues - copy resource settings from an ArgList to a subpart resource structure. Synopsis void XtSetSubvalues(base, resources, num_resources, args, num_args) XtPointer base; XtResourceList resources; Cardinal num_resources; ArgList args; Cardinal num_args; Inputs base Specifies the base address of the subpart data structure into which the resources should be written. resources Specifies the subpart resource list. num_resources Specifies the number of resources in the resource list. args Specifies an argument list of name/value pairs that contain the resource settings to be copied into the subpart data structure. num_args Specifies the number of arguments in the argument list. Description XtSetSubvalues() copies the values of named resources from args into the structure pointed to by base. The resource list resources speci- fies the size of each resource in this structure, and its offset from base. The name of each resource in args is looked up in this resource list, and the resource's specified size and offset are used to copy the resource value into the subpart structure. If the name of a resource in args does not match any of the resources described by resources, then that resource name/value pair in args is silently ignored. See XtGetApplicationResources() for a description of the various fields of a XtResource structure and an example of initializing an XtRe- sourceList. Usage If a widget has subpart resources, it can fetch initial values for those resources from the resource database by calling XtGetSubre- sources() from its initialize() method and passing the user's argument list to override values from the database. In the resource file, the subpart will have a name, and the subpart resources will be specified under that name in the resource hierarchy. Most widgets will want to allow the user to set the values of subpart resources from application code as well. One way to do this is to call XtSetSubval- ues() from within the widget's set_values() method, passing the subpart resource list and the user's argument list. (Prior to Release 4, you had to use the set_values_hook() method for this purpose.) With this approach, subpart resources seem just like normal widget resources to the user; both types of resources can be set by calling XtSetValues(). Another approach is to provide a special function (which will use XtSetSubvalues()) to set values of your subpart. This approach emphasizes that the subpart is a distinct component of the widget. Note that a more flexible alternative to subparts is to use non-widget objects which the user can create as children of your widget. This way the user has a handle on the "subparts" and can manipulate them directly. To get the values of named resources from a subpart, use XtGetSubvalues(). To set resource values in a subpart structure using a NULL-terminated variable-length argument list instead of an ArgList, use XtVaSetSub- values(). Structures XtResource is defined as follows: typedef struct _XtResource { String resource_name; /* Resource name */ String resource_class; /* Resource class */ String resource_type; /* Representation type desired */ Cardinal resource_size; /* Size in bytes of representation */ Cardinal resource_offset;/* Offset from base to put resource value */ String default_type; /* Representation type of specified default */ XtPointer default_addr; /* Address of resource default value */ } XtResource, *XtResourceList; See XtGetApplicationResources() for an explanation of the fields of this structure. Arg are defined as follows: typedef struct { String name; XtArgVal value; } Arg, *ArgList; See Also XtGetApplicationResources(1), XtGetSubresources(1), XtGetSubvalues(1), set_values(4). Xt - Resource Management XtSetSubvalues()