Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ MrmRegisC(Xm) — OpenDesktop Software Development System 3.0.0

Media Vault

Software Library

Restoration Projects

Artifacts Sought


 MrmRegisterNamesInHierarchy(Xm)              MrmRegisterNamesInHierarchy(Xm)
                                6 January 1993


 Name

    MrmRegisterNamesInHierarchy - registers the values associated with the
    names referenced in UIL within a single hierarchy (for example, UIL
    callback function names or UIL identifier names)

 Syntax


    #include <Mrm/MrmPublic.h>

    Cardinal MrmRegisterNamesInHierarchy(hierarchy_id, register_list,
                                         register_count)
    MrmHierarchy hierarchy_id;
    MrmRegisterArglist register_list;
    MrmCount register_count;


 Description

    The MrmRegisterNamesInHierarchy function registers a vector of names and
    associated values for access in MRM.  The values can be callback func-
    tions, pointers to user-defined data, or any other values.  The informa-
    tion provided is used to resolve symbolic references occurring in UID
    files to their run-time values. For callbacks, this information provides
    the procedure address required by the Motif Toolkit.  For names used as
    identifiers in UIL, this information provides any run-time mapping the
    application needs.

    This function is similar to MrmRegisterNames, except that the scope of
    the names registered by MrmRegisterNamesInHierarchy is limited to the
    hierarchy specified by hierarchyid, whereas the names registered by
    MrmRegisterNames have global scope.  When MRM looks up a name, it first
    tries to find the name among those registered for the given hierarchy.
    If that lookup fails, it tries to find the name among those registered
    globally.

    hierarchyid
            Specifies the hierarchy with which the names are to be associ-
            ated.

    registerlist
            Specifies a list of name/value pairs for the names to be
            registered.  Each name is a case-sensitive, NULL-terminated ASCII
            string.  Each value is a 32-bit quantity, interpreted as a pro-
            cedure address if the name is a callback function, and uninter-
            preted otherwise.

    registercount
            Specifies the number of entries in registerlist.

    The names in the list are case-sensitive.  The list can be either ordered
    or unordered.

    Callback functions registered through MrmRegisterNamesInHierarchy can be
    either regular or creation callbacks.  Regular callbacks have declara-
    tions determined by Motif Toolkit and user requirements.  Creation call-
    backs have the same format as any other callback:

       void CallBackProc(widget_id, tag, callback_data)
       Widget  *widget_id;
       Opaque  tag;
       XmAnyCallbackStruct *callback_data;

    widgetid
            Specifies the widget ID associated with the widget performing the
            callback (as in any callback function).

    tag     Specifies the tag value (as in any callback function).

    callbackdata
            Specifies a widget-specific data structure.  This data structure
            has a minimum of two members: event and reason.  The reason
            member is always set to MrmCRCREATE.

    Note that the widget name and parent are available from the widget record
    accessible through widgetid.

 Return value

    This function returns one of these status return constants:

    MrmSUCCESS
            The function executed successfully.

    MrmFAILURE
            The function failed.


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