


     AApppplliiccaattiioonnSShheellll((33XX))     RReeffeerreennccee PPaaggeess     AApppplliiccaattiioonnSShheellll((33XX))



     NNAAMMEE
          AApppplliiccaattiioonnSShheellll-The ApplicationShell widget class

     AAEESS SSUUPPPPOORRTT LLEEVVEELL
          Full-use

     SSYYNNOOPPSSIISS
          ##iinncclluuddee <<XXmm//XXmm..hh>>
          ##iinncclluuddee <<XX1111//SShheellll..hh>>


     DDEESSCCRRIIPPTTIIOONN
          ApplicationShell is used as the main top-level window for an
          application.  An application should have more than one
          ApplicationShell only if it implements multiple logical
          applications.

        CCllaasssseess
          ApplicationShell inherits behavior and resources from CCoorree,
          CCoommppoossiittee, SShheellll, WWMMSShheellll, VVeennddoorrSShheellll, and TTooppLLeevveellSShheellll.

          The class pointer is aapppplliiccaattiioonnSShheellllWWiiddggeettCCllaassss.

          The class name is AApppplliiccaattiioonnSShheellll.

        NNeeww RReessoouurrcceess
          The following table defines a set of widget resources used
          by the programmer to specify data.  The programmer can also
          set the resource values for the inherited classes to set
          attributes for this widget.  To reference a resource by name
          or by class in a .Xdefaults file, remove the XXmmNN or XXmmCC
          prefix and use the remaining letters.  To specify one of the
          defined values for a resource in a .Xdefaults file, remove
          the XXmm prefix and use the remaining letters (in either
          lowercase or uppercase, but include any underscores between
          words).  The codes in the access column indicate if the
          given resource can be set at creation time (C), set by using
          XXttSSeettVVaalluueess (S), retrieved by using XXttGGeettVVaalluueess (G), or is
          not applicable (N/A).

                         AApppplliiccaattiioonnSShheellll RReessoouurrccee SSeett
                NNaammee      CCllaassss     TTyyppee       DDeeffaauulltt   AAcccceessss
                _______________________________________________
                XmNargc   XmCArgc   int        0         CSG
                XmNargv   XmCArgv   String *   NULL      CSG










     2-43                                             (printed 5/7/92)






     AApppplliiccaattiioonnSShheellll((33XX))     RReeffeerreennccee PPaaggeess     AApppplliiccaattiioonnSShheellll((33XX))



          XXmmNNaarrggcc   Specifies the number of arguments given in the
                    XXmmNNaarrggvv resource.  The function XXttIInniittiiaalliizzee sets
                    this resource on the shell widget instance it
                    creates by using its parameters as the values.

          XXmmNNaarrggvv   Specifies the argument list required by a session
                    manager to restart the application, if it is
                    killed.  This list should be updated at
                    appropriate points by the application if a new
                    state has been reached which can be directly
                    restarted.  The function XXttIInniittiiaalliizzee sets this
                    resource on the shell widget instance it creates
                    by using its parameters as the values.


        IInnhheerriitteedd RReessoouurrcceess
          ApplicationShell inherits behavior and resources from the
          following superclasses.  For a complete description of each
          resource, refer to the manual page for that superclass.

                           TTooppLLeevveellSShheellll RReessoouurrccee SSeett
     NNaammee                  CCllaassss                 TTyyppee      DDeeffaauulltt   AAcccceessss
     ______________________________________________________________________
     XmNiconic             XmCIconic             Boolean   False     CSG
     XmNiconName           XmCIconName           String    NULL      CSG
     XmNiconNameEncoding   XmCIconNameEncoding   Atom      dynamic   CSG

                                   VVeennddoorrSShheellll RReessoouurrccee SSeett
     NNaammee                     CCllaassss                    TTyyppee            DDeeffaauulltt      AAcccceessss
     _____________________________________________________________________________________
     XmNbuttonFontList        XmCButtonFontList        XmFontList      dynamic      CSG
     XmNdefaultFontList       XmCDefaultFontList       XmFontList      dynamic      CG
     XmNdeleteResponse        XmCDeleteResponse        unsigned char   XmDESTROY    CSG
     XmNkeyboardFocusPolicy   XmCKeyboardFocusPolicy   unsigned char   XmEXPLICIT   CSG
     XmNlabelFontList         XmCLabelFontList         XmFontList      dynamic      CSG
     XmNmwmDecorations        XmCMwmDecorations        int             -1           CSG
     XmNmwmFunctions          XmCMwmFunctions          int             -1           CSG
     XmNmwmInputMode          XmCMwmInputMode          int             -1           CSG
     XmNmwmMenu               XmCMwmMenu               String          NULL         CSG
     XmNtextFontList          XmCTextFontList          XmFontList      dynamic      CSG

                                  WWMMSShheellll RReessoouurrccee SSeett
     NNaammee               CCllaassss              TTyyppee      DDeeffaauulltt                 AAcccceessss
     ______________________________________________________________________________
     XmNbaseHeight      XmCBaseHeight      int       XtUnspecifiedShellInt   CSG
     XmNbaseWidth       XmCBaseWidth       int       XtUnspecifiedShellInt   CSG
     XmNheightInc       XmCHeightInc       int       XtUnspecifiedShellInt   CSG
     XmNiconMask        XmCIconMask        Pixmap    NULL                    CSG







     2-44                                             (printed 5/7/92)






     AApppplliiccaattiioonnSShheellll((33XX))     RReeffeerreennccee PPaaggeess     AApppplliiccaattiioonnSShheellll((33XX))



     XmNiconPixmap      XmCIconPixmap      Pixmap    NULL                    CSG
     XmNiconWindow      XmCIconWindow      Window    NULL                    CSG
     XmNiconX           XmCIconX           int       -1                      CSG
     XmNiconY           XmCIconY           int       -1                      CSG
     XmNinitialState    XmCInitialState    int       NormalState             CSG
     XmNinput           XmCInput           Boolean   True                    CSG
     XmNmaxAspectX      XmCMaxAspectX      int       XtUnspecifiedShellInt   CSG
     XmNmaxAspectY      XmCMaxAspectY      int       XtUnspecifiedShellInt   CSG
     XmNmaxHeight       XmCMaxHeight       int       XtUnspecifiedShellInt   CSG
     XmNmaxWidth        XmCMaxWidth        int       XtUnspecifiedShellInt   CSG
     XmNminAspectX      XmCMinAspectX      int       XtUnspecifiedShellInt   CSG
     XmNminAspectY      XmCMinAspectY      int       XtUnspecifiedShellInt   CSG
     XmNminHeight       XmCMinHeight       int       XtUnspecifiedShellInt   CSG
     XmNminWidth        XmCMinWidth        int       XtUnspecifiedShellInt   CSG
     XmNtitle           XmCTitle           String    dynamic                 CSG
     XmNtitleEncoding   XmCTitleEncoding   Atom      dynamic                 CSG
     XmNtransient       XmCTransient       Boolean   False                   CSG
     XmNwaitForWm       XmCWaitForWm       Boolean   True                    CSG
     XmNwidthInc        XmCWidthInc        int       XtUnspecifiedShellInt   CSG
     XmNwindowGroup     XmCWindowGroup     Window    dynamic                 CSG
     XmNwinGravity      XmCWinGravity      int       dynamic                 CSG
     XmNwmTimeout       XmCWmTimeout       int       5000 ms                 CSG

                                              SShheellll RReessoouurrccee SSeett
     NNaammee                      CCllaassss                     TTyyppee                     DDeeffaauulltt          AAcccceessss
     ____________________________________________________________________________________________________
     XmNallowShellResize       XmCAllowShellResize       Boolean                  False            CG
     XmNcreatePopupChildProc   XmCCreatePopupChildProc   XtCreatePopupChildProc   NULL             CSG
     XmNgeometry               XmCGeometry               String                   NULL             CSG
     XmNoverrideRedirect       XmCOverrideRedirect       Boolean                  False            CSG
     XmNpopdownCallback        XmCCallback               XtCallbackList           NULL             C
     XmNpopupCallback          XmCCallback               XtCallbackList           NULL             C
     XmNsaveUnder              XmCSaveUnder              Boolean                  False            CSG
     XmNvisual                 XmCVisual                 Visual *                 CopyFromParent   CSG

                             CCoommppoossiittee RReessoouurrccee SSeett
     NNaammee                CCllaassss               TTyyppee          DDeeffaauulltt   AAcccceessss
     ______________________________________________________________________
     XmNchildren         XmCReadOnly         WidgetList    NULL      G
     XmNinsertPosition   XmCInsertPosition   XtOrderProc   NULL      CSG
     XmNnumChildren      XmCReadOnly         Cardinal      0         G

                                                   CCoorree RReessoouurrccee SSeett
     NNaammee                            CCllaassss                           TTyyppee             DDeeffaauulltt                AAcccceessss
     ______________________________________________________________________________________________________________
     XmNaccelerators                 XmCAccelerators                 XtAccelerators   dynamic                CSG
     XmNancestorSensitive            XmCSensitive                    Boolean          dynamic                G
     XmNbackground                   XmCBackground                   Pixel            dynamic                CSG







     2-45                                             (printed 5/7/92)






     AApppplliiccaattiioonnSShheellll((33XX))     RReeffeerreennccee PPaaggeess     AApppplliiccaattiioonnSShheellll((33XX))



     XmNbackgroundPixmap             XmCPixmap                       Pixmap           XmUNSPECIFIED_PIXMAP   CSG
     XmNborderColor                  XmCBorderColor                  Pixel            XtDefaultForeground    CSG
     XmNborderPixmap                 XmCPixmap                       Pixmap           XmUNSPECIFIED_PIXMAP   CSG
     XmNborderWidth                  XmCBorderWidth                  Dimension        1                      CSG
     XmNcolormap                     XmCColormap                     Colormap         dynamic                CG
     XmNdepth                        XmCDepth                        int              dynamic                CG
     XmNdestroyCallback              XmCCallback                     XtCallbackList   NULL                   C
     XmNheight                       XmCHeight                       Dimension        dynamic                CSG
     XmNinitialResourcesPersistent   XmCInitialResourcesPersistent   Boolean          True                   C
     XmNmappedWhenManaged            XmCMappedWhenManaged            Boolean          True                   CSG
     XmNscreen                       XmCScreen                       Screen *         dynamic                CG
     XmNsensitive                    XmCSensitive                    Boolean          True                   CSG
     XmNtranslations                 XmCTranslations                 XtTranslations   dynamic                CSG
     XmNwidth                        XmCWidth                        Dimension        dynamic                CSG
     XmNx                            XmCPosition                     Position         0                      CSG
     XmNy                            XmCPosition                     Position         0                      CSG

     RREELLAATTEEDD IINNFFOORRMMAATTIIOONN
          CCoommppoossiittee((33XX)), CCoorree((33XX)), SShheellll((33XX)), WWMMSShheellll((33XX)),
          VVeennddoorrSShheellll((33XX)), and TTooppLLeevveellSShheellll((33XX)).



































     2-46                                             (printed 5/7/92)






     CCoommppoossiittee((33XX))            RReeffeerreennccee PPaaggeess            CCoommppoossiittee((33XX))



     NNAAMMEE
          CCoommppoossiittee-The Composite widget class

     AAEESS SSUUPPPPOORRTT LLEEVVEELL
          Full-use

     SSYYNNOOPPSSIISS
          ##iinncclluuddee <<XXmm//XXmm..hh>>


     DDEESSCCRRIIPPTTIIOONN
          Composite widgets are intended to be containers for other
          widgets and can have an arbitrary number of children.  Their
          responsibilities (implemented either directly by the widget
          class or indirectly by Intrinsics functions) include:


            +o  Overall management of children from creation to
               destruction.

            +o  Destruction of descendants when the composite widget is
               destroyed.

            +o  Physical arrangement (geometry management) of a
               displayable subset of managed children.

            +o  Mapping and unmapping of a subset of the managed
               children.  Instances of composite widgets need to
               specify the order in which their children are kept.
               For example, an application may want a set of command
               buttons in some logical order grouped by function, and
               it may want buttons that represent filenames to be kept
               in alphabetical order.


        CCllaasssseess
          Composite inherits behavior and resources from CCoorree.

          The class pointer is ccoommppoossiitteeWWiiddggeettCCllaassss.

          The class name is CCoommppoossiittee.

        NNeeww RReessoouurrcceess
          The following table defines a set of widget resources used
          by the programmer to specify data.  The programmer can also
          set the resource values for the inherited classes to set
          attributes for this widget.  To reference a resource by name
          or by class in a .Xdefaults file, remove the XXmmNN or XXmmCC
          prefix and use the remaining letters.  To specify one of the
          defined values for a resource in a .Xdefaults file, remove
          the XXmm prefix and use the remaining letters (in either
          lowercase or uppercase, but include any underscores between



     2-47                                             (printed 5/7/92)






     CCoommppoossiittee((33XX))            RReeffeerreennccee PPaaggeess            CCoommppoossiittee((33XX))



          words).  The codes in the access column indicate if the
          given resource can be set at creation time (C), set by using
          XXttSSeettVVaalluueess (S), retrieved by using XXttGGeettVVaalluueess (G), or is
          not applicable (N/A).

                             CCoommppoossiittee RReessoouurrccee SSeett
     NNaammee                CCllaassss               TTyyppee          DDeeffaauulltt   AAcccceessss
     ______________________________________________________________________
     XmNchildren         XmCReadOnly         WidgetList    NULL      G
     XmNinsertPosition   XmCInsertPosition   XtOrderProc   NULL      CSG
     XmNnumChildren      XmCReadOnly         Cardinal      0         G


          XXmmNNcchhiillddrreenn
                    A read-only list of the children of the widget.

          XXmmNNiinnsseerrttPPoossiittiioonn
                    Points to the XXttOOrrddeerrPPrroocc function described
                    below.

          XXmmNNnnuummCChhiillddrreenn
                    A read-only resource specifying the length of the
                    list of children in XXmmNNcchhiillddrreenn.


          The following procedure pointer in a composite widget
          instance is of type XXttOOrrddeerrPPrroocc:

          CCaarrddiinnaall ((** XXttOOrrddeerrPPrroocc)) ((_w_i_d_g_e_t))
               WWiiddggeett    _w;


          _w      Specifies the widget.


          Composite widgets that allow clients to order their children
          (usually homogeneous boxes) can call their widget instance's
          insert_position procedure from the class's insert_child
          procedure to determine where a new child should go in its
          children array.  Thus, a client of a composite class can
          apply different sorting criteria to widget instances of the
          class, passing in a different insert_position procedure when
          it creates each composite widget instance.

          The return value of the insert_position procedure indicates
          how many children should go before the widget.  Returning
          _z_e_r_o indicates that the widget should go before all other
          children; returning num_children indicates that it should go
          after all other children.  The default insert_position
          function returns num_children and can be overridden by a
          specific composite widget's resource list or by the argument
          list provided when the composite widget is created.



     2-48                                             (printed 5/7/92)






     CCoommppoossiittee((33XX))            RReeffeerreennccee PPaaggeess            CCoommppoossiittee((33XX))



        IInnhheerriitteedd RReessoouurrcceess
          Composite inherits behavior and resources from the following
          superclass.  For a complete description of each resource,
          refer to the manual page for that superclass.

                                                   CCoorree RReessoouurrccee SSeett
     NNaammee                            CCllaassss                           TTyyppee             DDeeffaauulltt                AAcccceessss
     ______________________________________________________________________________________________________________
     XmNaccelerators                 XmCAccelerators                 XtAccelerators   dynamic                CSG
     XmNancestorSensitive            XmCSensitive                    Boolean          dynamic                G
     XmNbackground                   XmCBackground                   Pixel            dynamic                CSG
     XmNbackgroundPixmap             XmCPixmap                       Pixmap           XmUNSPECIFIED_PIXMAP   CSG
     XmNborderColor                  XmCBorderColor                  Pixel            XtDefaultForeground    CSG
     XmNborderPixmap                 XmCPixmap                       Pixmap           XmUNSPECIFIED_PIXMAP   CSG
     XmNborderWidth                  XmCBorderWidth                  Dimension        1                      CSG
     XmNcolormap                     XmCColormap                     Colormap         dynamic                CG
     XmNdepth                        XmCDepth                        int              dynamic                CG
     XmNdestroyCallback              XmCCallback                     XtCallbackList   NULL                   C
     XmNheight                       XmCHeight                       Dimension        dynamic                CSG
     XmNinitialResourcesPersistent   XmCInitialResourcesPersistent   Boolean          True                   C
     XmNmappedWhenManaged            XmCMappedWhenManaged            Boolean          True                   CSG
     XmNscreen                       XmCScreen                       Screen *         dynamic                CG
     XmNsensitive                    XmCSensitive                    Boolean          True                   CSG
     XmNtranslations                 XmCTranslations                 XtTranslations   dynamic                CSG
     XmNwidth                        XmCWidth                        Dimension        dynamic                CSG
     XmNx                            XmCPosition                     Position         0                      CSG
     XmNy                            XmCPosition                     Position         0                      CSG

     RREELLAATTEEDD IINNFFOORRMMAATTIIOONN
          CCoorree((33XX)).

























     2-49                                             (printed 5/7/92)






     CCoonnssttrraaiinntt((33XX))           RReeffeerreennccee PPaaggeess           CCoonnssttrraaiinntt((33XX))



     NNAAMMEE
          CCoonnssttrraaiinntt-The Constraint widget class

     AAEESS SSUUPPPPOORRTT LLEEVVEELL
          Full-use

     SSYYNNOOPPSSIISS
          ##iinncclluuddee <<XXmm//XXmm..hh>>


     DDEESSCCRRIIPPTTIIOONN
          CCoonnssttrraaiinntt widgets maintain additional state data for each
          child.  For example, client-defined constraints on the
          child's geometry may be specified.

          When a constrained composite widget defines constraint
          resources, all of that widget's children inherit all of
          those resources as their own.  These constraint resources
          are set and read just the same as any other resources
          defined for the child.  This resource inheritance extends
          exactly one generation down, which means only the first-
          generation children of a constrained composite widget
          inherit the parent widget's constraint resources.

          Because constraint resources are defined by the parent
          widgets and not the children, the child widgets never
          directly use the constraint resource data.  Instead, the
          parents use constraint resource data to attach child-
          specific data to children.

        CCllaasssseess
          Constraint inherits behavior and resources from CCoommppoossiittee
          and CCoorree.

          The class pointer is ccoonnssttrraaiinnttWWiiddggeettCCllaassss.

          The class name is CCoonnssttrraaiinntt.

        NNeeww RReessoouurrcceess
          Constraint defines no new resources.

        IInnhheerriitteedd RReessoouurrcceess
          Constraint inherits behavior and resources from CCoommppoossiittee
          and CCoorree.  The following table defines a set of widget
          resources used by the programmer to specify data.  The
          programmer can also set the resource values for the
          inherited classes to set attributes for this widget.  To
          reference a resource by name or by class in a .Xdefaults
          file, remove the XXmmNN or XXmmCC prefix and use the remaining
          letters.  To specify one of the defined values for a
          resource in a .Xdefaults file, remove the XXmm prefix and use
          the remaining letters (in either lowercase or uppercase, but



     2-50                                             (printed 5/7/92)






     CCoonnssttrraaiinntt((33XX))           RReeffeerreennccee PPaaggeess           CCoonnssttrraaiinntt((33XX))



          include any underscores between words).  The codes in the
          access column indicate if the given resource can be set at
          creation time (C), set by using XXttSSeettVVaalluueess (S), retrieved
          by using XXttGGeettVVaalluueess (G), or is not applicable (N/A).

                                                   CCoorree RReessoouurrccee SSeett
     NNaammee                            CCllaassss                           TTyyppee             DDeeffaauulltt                AAcccceessss
     ______________________________________________________________________________________________________________
     XmNaccelerators                 XmCAccelerators                 XtAccelerators   dynamic                CSG
     XmNancestorSensitive            XmCSensitive                    Boolean          dynamic                G
     XmNbackground                   XmCBackground                   Pixel            dynamic                CSG
     XmNbackgroundPixmap             XmCPixmap                       Pixmap           XmUNSPECIFIED_PIXMAP   CSG
     XmNborderColor                  XmCBorderColor                  Pixel            XtDefaultForeground    CSG
     XmNborderPixmap                 XmCPixmap                       Pixmap           XmUNSPECIFIED_PIXMAP   CSG
     XmNborderWidth                  XmCBorderWidth                  Dimension        1                      CSG
     XmNcolormap                     XmCColormap                     Colormap         dynamic                CG
     XmNdepth                        XmCDepth                        int              dynamic                CG
     XmNdestroyCallback              XmCCallback                     XtCallbackList   NULL                   C
     XmNheight                       XmCHeight                       Dimension        dynamic                CSG
     XmNinitialResourcesPersistent   XmCInitialResourcesPersistent   Boolean          True                   C
     XmNmappedWhenManaged            XmCMappedWhenManaged            Boolean          True                   CSG
     XmNscreen                       XmCScreen                       Screen *         dynamic                CG
     XmNsensitive                    XmCSensitive                    Boolean          True                   CSG
     XmNtranslations                 XmCTranslations                 XtTranslations   dynamic                CSG
     XmNwidth                        XmCWidth                        Dimension        dynamic                CSG
     XmNx                            XmCPosition                     Position         0                      CSG
     XmNy                            XmCPosition                     Position         0                      CSG

     RREELLAATTEEDD IINNFFOORRMMAATTIIOONN
          CCoommppoossiittee((33XX)) and CCoorree((33XX)).

























     2-51                                             (printed 5/7/92)






     CCoorree((33XX))                 RReeffeerreennccee PPaaggeess                 CCoorree((33XX))



     NNAAMMEE
          CCoorree-The Core widget class

     AAEESS SSUUPPPPOORRTT LLEEVVEELL
          Full-use

     SSYYNNOOPPSSIISS
          ##iinncclluuddee <<XXmm//XXmm..hh>>


     DDEESSCCRRIIPPTTIIOONN
          Core is the Xt Intrinsic base class for windowed widgets.
          The OObbjjeecctt and RReeccttOObbjj classes provide support for
          windowless widgets.

        CCllaasssseess
          All widgets are built from CCoorree.

          The class pointer is wwiiddggeettCCllaassss.

          The class name is CCoorree.

        NNeeww RReessoouurrcceess
          The following table defines a set of widget resources used
          by the programmer to specify data.  The programmer can also
          set the resource values for the inherited classes to set
          attributes for this widget.  To reference a resource by name
          or by class in a .Xdefaults file, remove the XXmmNN or XXmmCC
          prefix and use the remaining letters.  To specify one of the
          defined values for a resource in a .Xdefaults file, remove
          the XXmm prefix and use the remaining letters (in either
          lowercase or uppercase, but include any underscores between
          words).  The codes in the access column indicate if the
          given resource can be set at creation time (C), set by using
          XXttSSeettVVaalluueess (S), retrieved by using XXttGGeettVVaalluueess (G), or is
          not applicable (N/A).

                                                   CCoorree RReessoouurrccee SSeett
     NNaammee                            CCllaassss                           TTyyppee             DDeeffaauulltt                AAcccceessss
     ______________________________________________________________________________________________________________
     XmNaccelerators                 XmCAccelerators                 XtAccelerators   dynamic                CSG
     XmNancestorSensitive            XmCSensitive                    Boolean          dynamic                G
     XmNbackground                   XmCBackground                   Pixel            dynamic                CSG
     XmNbackgroundPixmap             XmCPixmap                       Pixmap           XmUNSPECIFIED_PIXMAP   CSG
     XmNborderColor                  XmCBorderColor                  Pixel            XtDefaultForeground    CSG
     XmNborderPixmap                 XmCPixmap                       Pixmap           XmUNSPECIFIED_PIXMAP   CSG
     XmNborderWidth                  XmCBorderWidth                  Dimension        1                      CSG
     XmNcolormap                     XmCColormap                     Colormap         dynamic                CG







     2-52                                             (printed 5/7/92)






     CCoorree((33XX))                 RReeffeerreennccee PPaaggeess                 CCoorree((33XX))



     XmNdepth                        XmCDepth                        int              dynamic                CG
     XmNdestroyCallback              XmCCallback                     XtCallbackList   NULL                   C
     XmNheight                       XmCHeight                       Dimension        dynamic                CSG
     XmNinitialResourcesPersistent   XmCInitialResourcesPersistent   Boolean          True                   C
     XmNmappedWhenManaged            XmCMappedWhenManaged            Boolean          True                   CSG
     XmNscreen                       XmCScreen                       Screen *         dynamic                CG
     XmNsensitive                    XmCSensitive                    Boolean          True                   CSG
     XmNtranslations                 XmCTranslations                 XtTranslations   dynamic                CSG
     XmNwidth                        XmCWidth                        Dimension        dynamic                CSG
     XmNx                            XmCPosition                     Position         0                      CSG
     XmNy                            XmCPosition                     Position         0                      CSG


          XXmmNNaacccceelleerraattoorrss
                    Specifies a translation table that is bound with
                    its actions in the context of a particular widget.
                    The accelerator table can then be installed on
                    some destination widget.

          XXmmNNaanncceessttoorrSSeennssiittiivvee
                    Specifies whether the immediate parent of the
                    widget receives input events.  Use the function
                    XXttSSeettSSeennssiittiivvee to change the argument to preserve
                    data integrity (see XXmmNNsseennssiittiivvee below).  For
                    shells, the default is copied from the parent's
                    XXmmNNaanncceessttoorrSSeennssiittiivvee resource if there is a
                    parent; otherwise, it is True.  For other widgets,
                    the default is the bitwise AND of the parent's
                    XXmmNNsseennssiittiivvee and XXmmNNaanncceessttoorrSSeennssiittiivvee resources.

          XXmmNNbbaacckkggrroouunndd
                    Specifies the background color for the widget.

          XXmmNNbbaacckkggrroouunnddPPiixxmmaapp
                    Specifies a pixmap for tiling the background.  The
                    first tile is placed at the upper left-hand corner
                    of the widget's window.

          XXmmNNbboorrddeerrCCoolloorr
                    Specifies the color of the border in a pixel
                    value.

          XXmmNNbboorrddeerrPPiixxmmaapp
                    Specifies a pixmap to be used for tiling the
                    border.  The first tile is placed at the upper
                    left-hand corner of the border.

          XXmmNNbboorrddeerrWWiiddtthh
                    Specifies the width of the border that surrounds
                    the widget's window on all four sides.  The width
                    is specified in pixels.  A width of zero means
                    that no border shows.



     2-53                                             (printed 5/7/92)






     CCoorree((33XX))                 RReeffeerreennccee PPaaggeess                 CCoorree((33XX))



          XXmmNNccoolloorrmmaapp
                    Specifies the colormap that is used for
                    conversions to the type PPiixxeell for this widget
                    instance.  When changed, previously generated
                    pixel values are not affected, but newly generated
                    values are in the new colormap.  For shells
                    without parents, the default is the default
                    colormap of the widget's screen.  Otherwise, the
                    default is copied from the parent.

          XXmmNNddeepptthh  Specifies the number of bits that can be used for
                    each pixel in the widget's window.  Applications
                    should not change or set the value of this
                    resource as it is set by the Xt Intrinsics when
                    the widget is created.  For shells without
                    parents, the default is the default depth of the
                    widget's screen.  Otherwise, the default is copied
                    from the parent.

          XXmmNNddeessttrrooyyCCaallllbbaacckk
                    Specifies a list of callbacks that is called when
                    the widget is destroyed.

          XXmmNNhheeiigghhtt Specifies the inside height (excluding the border)
                    of the widget's window.

          XXmmNNiinniittiiaallRReessoouurrcceessPPeerrssiisstteenntt
                    Specifies whether or not resources are reference
                    counted.  If the value is True when the widget is
                    created, the resources referenced by the widget
                    are not reference counted, regardless of how the
                    resource type converter is registered.  An
                    application that expects to destroy the widget and
                    wants to have resources deallocated should specify
                    a value of False.  The default is True, implying
                    an assumption that the widget will not be
                    destroyed during the life of the application.

          XXmmNNmmaappppeeddWWhheennMMaannaaggeedd
                    If set to True it maps the widget (makes it
                    visible) as soon as it is both realized and
                    managed.  If set to False, the client is
                    responsible for mapping and unmapping the widget.
                    If the value is changed from True to False after
                    the widget has been realized and managed, the
                    widget is unmapped.

          XXmmNNssccrreeeenn Specifies the screen on which a widget instance
                    resides.  It is read only.  When the Toolkit is
                    initialized, the top-level widget obtains its
                    default value from the default screen of the
                    display.  Otherwise, the default is copied from



     2-54                                             (printed 5/7/92)






     CCoorree((33XX))                 RReeffeerreennccee PPaaggeess                 CCoorree((33XX))



                    the parent.

          XXmmNNsseennssiittiivvee
                    Determines whether a widget receives input events.
                    If a widget is sensitive, the Xt Intrinsics' Event
                    Manager dispatches to the widget all keyboard,
                    mouse button, motion, window enter/leave, and
                    focus events.  Insensitive widgets do not receive
                    these events.  Use the function XXttSSeettSSeennssiittiivvee to
                    change the sensitivity argument.  Using
                    XXttSSeettSSeennssiittiivvee ensures that if a parent widget has
                    XXmmNNsseennssiittiivvee set to False, the ancestor-sensitive
                    flag of all its children is appropriately set.

          XXmmNNttrraannssllaattiioonnss
                    Points to a translations list.  A translations
                    list is a list of events and actions that are to
                    be performed when the events occur.

          XXmmNNwwiiddtthh  Specifies the inside width (excluding the border)
                    of the widget's window.

          XXmmNNxx      Specifies the x-coordinate of the upper left
                    outside corner of the widget's window.  The value
                    is relative to the upper left inside corner of the
                    parent window.

          XXmmNNyy      Specifies the y-coordinate of the upper left
                    outside corner of the widget's window.  The value
                    is relative to the upper left inside corner of the
                    parent window.


     RREELLAATTEEDD IINNFFOORRMMAATTIIOONN
          OObbjjeecctt((33XX)) and RReeccttOObbjj((33XX)).




















     2-55                                             (printed 5/7/92)






     MMrrmmCClloosseeHHiieerraarrcchhyy((33XX))    RReeffeerreennccee PPaaggeess    MMrrmmCClloosseeHHiieerraarrcchhyy((33XX))



     NNAAMMEE
          MMrrmmCClloosseeHHiieerraarrcchhyy-Closes a UID hierarchy

     AAEESS SSUUPPPPOORRTT LLEEVVEELL
          Full-use

     SSYYNNOOPPSSIISS
          ##iinncclluuddee <<MMrrmm//MMrrmmPPuubblliicc..hh>>

          CCaarrddiinnaall MMrrmmCClloosseeHHiieerraarrcchhyy((_h_i_e_r_a_r_c_h_y__i_d))
               MMrrmmHHiieerraarrcchhyy_h_i_e_r_a_r_c_h_y__i_d;;


     DDEESSCCRRIIPPTTIIOONN
          The MMrrmmCClloosseeHHiieerraarrcchhyy function closes a UID hierarchy
          previously opened by MMrrmmOOppeennHHiieerraarrcchhyyPPeerrDDiissppllaayy.  All files
          associated with the hierarchy are closed by the Motif
          Resource Manager (MRM) and all associated memory is
          returned.


          _h_i_e_r_a_r_c_h_y__i_d
                    Specifies the ID of a previously opened UID
                    hierarchy.  The _h_i_e_r_a_r_c_h_y__i_d was returned in a
                    previous call to MMrrmmOOppeennHHiieerraarrcchhyyPPeerrDDiissppllaayy.


     RREETTUURRNN VVAALLUUEE
          This function returns one of these status return constants:


          MMrrmmSSUUCCCCEESSSS     The function executed successfully.

          MMrrmmBBAADD__HHIIEERRAARRCCHHYY
                         The hierarchy ID was invalid.

          MMrrmmFFAAIILLUURREE     The function failed.


     RREELLAATTEEDD IINNFFOORRMMAATTIIOONN
          MMrrmmOOppeennHHiieerraarrcchhyyPPeerrDDiissppllaayy((33XX)).














     2-56                                             (printed 5/7/92)






     MMrrmmFFeettcchhCCoolloorrLLiitteerraall((33XX)) RReeffeerreennccee PPaaggeess MMrrmmFFeettcchhCCoolloorrLLiitteerraall((33XX))



     NNAAMMEE
          MMrrmmFFeettcchhCCoolloorrLLiitteerraall-Fetches a named color literal from a
          UID file

     AAEESS SSUUPPPPOORRTT LLEEVVEELL
          Full-use

     SSYYNNOOPPSSIISS
          ##iinncclluuddee <<MMrrmm//MMrrmmPPuubblliicc..hh>>

          iinntt MMrrmmFFeettcchhCCoolloorrLLiitteerraall((_h_i_e_r_a_r_c_h_y__i_d, _i_n_d_e_x, _d_i_s_p_l_a_y, _c_o_l_o_r_m_a_p__i_d, _p_i_x_e_l))
               MMrrmmHHiieerraarrcchhyy_h_i_e_r_a_r_c_h_y__i_d;;
               SSttrriinngg    _i_n_d_e_x;;
               DDiissppllaayy   **_d_i_s_p_l_a_y;;
               CCoolloorrmmaapp  _c_o_l_o_r_m_a_p__i_d;;
               PPiixxeell     **_p_i_x_e_l;;


     DDEESSCCRRIIPPTTIIOONN
          The MMrrmmFFeettcchhCCoolloorrLLiitteerraall function fetches a named color
          literal from a UID file, and converts the color literal to a
          pixel color value.

          _h_i_e_r_a_r_c_h_y__i_dSpecifies the ID of the UID hierarchy that
                      contains the specified literal.  The
                      _h_i_e_r_a_r_c_h_y__i_d was returned in a previous call to
                      MMrrmmOOppeennHHiieerraarrcchhyyPPeerrDDiissppllaayy.

          _i_n_d_e_x       Specifies the UIL name of the color literal to
                      fetch.  You must define this name in UIL as an
                      exported value.

          _d_i_s_p_l_a_y     Specifies the display used for the pixmap.  The
                      _d_i_s_p_l_a_y argument specifies the connection to the
                      X server.  For more information on the DDiissppllaayy
                      structure, see the Xlib function XXOOppeennDDiissppllaayy.

          _c_o_l_o_r_m_a_p__i_d Specifies the ID of the color map.  If NULL, the
                      default color map is used.

          _p_i_x_e_l       Returns the ID of the color literal.


     RREETTUURRNN VVAALLUUEE
          This function returns one of these status return constants:


          MMrrmmSSUUCCCCEESSSS       The function executed successfully.

          MMrrmmBBAADD__HHIIEERRAARRCCHHYY The hierarchy ID was invalid.

          MMrrmmNNOOTT__FFOOUUNNDD     The color literal was not found in the UIL



     2-57                                             (printed 5/7/92)






     MMrrmmFFeettcchhCCoolloorrLLiitteerraall((33XX)) RReeffeerreennccee PPaaggeess MMrrmmFFeettcchhCCoolloorrLLiitteerraall((33XX))



                           file.

          MMrrmmWWRROONNGG__TTYYPPEE    The caller tried to fetch a literal of a
                           type not supported by this function.

          MMrrmmFFAAIILLUURREE       The function failed.


     RREELLAATTEEDD IINNFFOORRMMAATTIIOONN
          MMrrmmOOppeennHHiieerraarrcchhyyPPeerrDDiissppllaayy((33XX)), MMrrmmFFeettcchhIIccoonnLLiitteerraall((33XX)),
          MMrrmmFFeettcchhLLiitteerraall((33XX)), and XXOOppeennDDiissppllaayy((33XX)).












































     2-58                                             (printed 5/7/92)






     MMrrmmFFeettcchhIIccoonnLLiitteerraall((33XX))  RReeffeerreennccee PPaaggeess  MMrrmmFFeettcchhIIccoonnLLiitteerraall((33XX))



     NNAAMMEE
          MMrrmmFFeettcchhIIccoonnLLiitteerraall-Fetches an icon literal from a hierarchy

     AAEESS SSUUPPPPOORRTT LLEEVVEELL
          Full-use

     SSYYNNOOPPSSIISS
          ##iinncclluuddee <<MMrrmm//MMrrmmPPuubblliicc..hh>>

          iinntt MMrrmmFFeettcchhIIccoonnLLiitteerraall((_h_i_e_r_a_r_c_h_y__i_d, _i_n_d_e_x, _s_c_r_e_e_n, _d_i_s_p_l_a_y, _f_g_p_i_x, _b_g_p_i_x, _p_i_x_m_a_p))
               MMrrmmHHiieerraarrcchhyy_h_i_e_r_a_r_c_h_y__i_d;;
               SSttrriinngg    _i_n_d_e_x;;
               SSccrreeeenn    **_s_c_r_e_e_n;;
               DDiissppllaayy   **_d_i_s_p_l_a_y;;
               PPiixxeell     _f_g_p_i_x;;
               PPiixxeell     _b_g_p_i_x;;
               PPiixxmmaapp    **_p_i_x_m_a_p;;


     DDEESSCCRRIIPPTTIIOONN
          The MMrrmmFFeettcchhIIccoonnLLiitteerraall function fetches an icon literal
          from an MRM hierarchy, and converts the icon literal to an X
          pixmap.

          _h_i_e_r_a_r_c_h_y__i_dSpecifies the ID of the UID hierarchy that
                      contains the specified icon literal.  The
                      _h_i_e_r_a_r_c_h_y__i_d was returned in a previous call to
                      MMrrmmOOppeennHHiieerraarrcchhyyPPeerrDDiissppllaayy.

          _i_n_d_e_x       Specifies the UIL name of the icon literal to
                      fetch.

          _s_c_r_e_e_n      Specifies the screen used for the pixmap.  The
                      _s_c_r_e_e_n argument specifies a pointer to the Xlib
                      structure SSccrreeeenn which contains the information
                      about that screen and is linked to the DDiissppllaayy
                      structure.  For more information on the DDiissppllaayy
                      and SSccrreeeenn structures, see the Xlib function
                      XXOOppeennDDiissppllaayy and the associated screen
                      information macros.

          _d_i_s_p_l_a_y     Specifies the display used for the pixmap.  The
                      _d_i_s_p_l_a_y argument specifies the connection to the
                      X server.  For more information on the DDiissppllaayy
                      structure, see the Xlib function XXOOppeennDDiissppllaayy.

          _f_g_p_i_x       Specifies the foreground color for the pixmap.

          _b_g_p_i_x       Specifies the background color for the pixmap.

          _p_i_x_m_a_p      Returns the resulting X pixmap value.




     2-59                                             (printed 5/7/92)






     MMrrmmFFeettcchhIIccoonnLLiitteerraall((33XX))  RReeffeerreennccee PPaaggeess  MMrrmmFFeettcchhIIccoonnLLiitteerraall((33XX))



     RREETTUURRNN VVAALLUUEE
          This function returns one of these status return constants:


          MMrrmmSSUUCCCCEESSSS          The function executed successfully.

          MMrrmmBBAADD__HHIIEERRAARRCCHHYY    The hierarchy ID was invalid.

          MMrrmmNNOOTT__FFOOUUNNDD        The icon literal was not found in the
                              hierarchy.

          MMrrmmWWRROONNGG__TTYYPPEE       The caller tried to fetch a literal of a
                              type not supported by this function.

          MMrrmmFFAAIILLUURREE          The function failed.


     RREELLAATTEEDD IINNFFOORRMMAATTIIOONN
          MMrrmmOOppeennHHiieerraarrcchhyyPPeerrDDiissppllaayy((33XX)), MMrrmmFFeettcchhLLiitteerraall((33XX)),
          MMrrmmFFeettcchhCCoolloorrLLiitteerraall((33XX)), and XXOOppeennDDiissppllaayy((33XX)).



































     2-60                                             (printed 5/7/92)






     MMrrmmFFeettcchhLLiitteerraall((33XX))      RReeffeerreennccee PPaaggeess      MMrrmmFFeettcchhLLiitteerraall((33XX))



     NNAAMMEE
          MMrrmmFFeettcchhLLiitteerraall-Fetches a literal from a UID file

     AAEESS SSUUPPPPOORRTT LLEEVVEELL
          Full-use

     SSYYNNOOPPSSIISS
          ##iinncclluuddee <<MMrrmm//MMrrmmPPuubblliicc..hh>>

          iinntt MMrrmmFFeettcchhLLiitteerraall((_h_i_e_r_a_r_c_h_y__i_d, _i_n_d_e_x, _d_i_s_p_l_a_y, _v_a_l_u_e, _t_y_p_e))
               MMrrmmHHiieerraarrcchhyy_h_i_e_r_a_r_c_h_y__i_d;;
               SSttrriinngg    _i_n_d_e_x;;
               DDiissppllaayy   **_d_i_s_p_l_a_y;;
               XXttPPooiinntteerr **_v_a_l_u_e;;
               MMrrmmCCooddee   **_t_y_p_e;;


     DDEESSCCRRIIPPTTIIOONN
          The MMrrmmFFeettcchhLLiitteerraall function reads and returns the value and
          type of a literal (named value) that is stored as a public
          resource in a single UID file.  This function returns a
          pointer to the value of the literal.  For example, an
          integer is always returned as a pointer to an integer, and a
          string is always returned as a pointer to a string.

          Applications should not use MMrrmmFFeettcchhLLiitteerraall for fetching
          icon or color literals.  If this is attempted,
          MMrrmmFFeettcchhLLiitteerraall returns an error.


          _h_i_e_r_a_r_c_h_y__i_dSpecifies the ID of the UID hierarchy that
                      contains the specified literal.  The
                      _h_i_e_r_a_r_c_h_y__i_d was returned in a previous call to
                      MMrrmmOOppeennHHiieerraarrcchhyyPPeerrDDiissppllaayy.

          _i_n_d_e_x       Specifies the UIL name of the literal (pixmap)
                      to fetch.  You must define this name in UIL as
                      an exported value.

          _d_i_s_p_l_a_y     Specifies the display used for the pixmap.  The
                      _d_i_s_p_l_a_y argument specifies the connection to the
                      X server.  For more information on the DDiissppllaayy
                      structure see the Xlib function XXOOppeennDDiissppllaayy.

          _v_a_l_u_e       Returns the ID of the named literal's value.

          _t_y_p_e        Returns the named literal's data type.  Types
                      are defined in the include file
                      <<MMrrmm//MMrrmmPPuubblliicc..hh>>.


     RREETTUURRNN VVAALLUUEE



     2-61                                             (printed 5/7/92)






     MMrrmmFFeettcchhLLiitteerraall((33XX))      RReeffeerreennccee PPaaggeess      MMrrmmFFeettcchhLLiitteerraall((33XX))



          This function returns one of these status return constants:


          MMrrmmSSUUCCCCEESSSS          The function executed successfully.

          MMrrmmBBAADD__HHIIEERRAARRCCHHYY    The hierarchy ID was invalid.

          MMrrmmNNOOTT__FFOOUUNNDD        The literal was not found in the UIL
                              file.

          MMrrmmWWRROONNGG__TTYYPPEE       The caller tried to fetch a literal of a
                              type not supported by this function.

          MMrrmmFFAAIILLUURREE          The function failed.


     RREELLAATTEEDD IINNFFOORRMMAATTIIOONN
          MMrrmmOOppeennHHiieerraarrcchhyyPPeerrDDiissppllaayy((33XX)), MMrrmmFFeettcchhIIccoonnLLiitteerraall((33XX)),
          MMrrmmFFeettcchhCCoolloorrLLiitteerraall((33XX)), and XXOOppeennDDiissppllaayy((33XX)).




































     2-62                                             (printed 5/7/92)






     MMrrmmFFeettcchhSSeettVVaalluueess((33XX))    RReeffeerreennccee PPaaggeess    MMrrmmFFeettcchhSSeettVVaalluueess((33XX))



     NNAAMMEE
          MMrrmmFFeettcchhSSeettVVaalluueess-Fetches the values to be set from literals
          stored in UID files

     AAEESS SSUUPPPPOORRTT LLEEVVEELL
          Full-use

     SSYYNNOOPPSSIISS
          ##iinncclluuddee <<MMrrmm//MMrrmmPPuubblliicc..hh>>

          CCaarrddiinnaall MMrrmmFFeettcchhSSeettVVaalluueess((_h_i_e_r_a_r_c_h_y__i_d, _w_i_d_g_e_t, _a_r_g_s, _n_u_m__a_r_g_s))
               MMrrmmHHiieerraarrcchhyy_h_i_e_r_a_r_c_h_y__i_d;;
               WWiiddggeett    _w_i_d_g_e_t;;
               AArrggLLiisstt   _a_r_g_s;;
               CCaarrddiinnaall  _n_u_m__a_r_g_s;;


     DDEESSCCRRIIPPTTIIOONN
          The MMrrmmFFeettcchhSSeettVVaalluueess function is similar to XXttSSeettVVaalluueess,
          except that the values to be set are defined by the UIL
          named values that are stored in the UID hierarchy.
          MMrrmmFFeettcchhSSeettVVaalluueess fetches the values to be set from literals
          stored in UID files.

          _h_i_e_r_a_r_c_h_y__i_dSpecifies the ID of the UID hierarchy that
                      contains the specified literal. The _h_i_e_r_a_r_c_h_y__i_d
                      was returned in a previous call to
                      MMrrmmOOppeennHHiieerraarrcchhyyPPeerrDDiissppllaayy.

          _w_i_d_g_e_t      Specifies the widget that is modified.

          _a_r_g_s        Specifies an argument list that identifies the
                      widget arguments to be modified as well as the
                      index (UIL name) of the literal that defines the
                      value for that argument.  The name part of each
                      argument (args[n].name) must begin with the
                      string XXmmNN followed by the name that uniquely
                      identifies this attribute tag.  For example,
                      XXmmNNwwiiddtthh is the attribute name associated with
                      the core argument _w_i_d_t_h.  The value part
                      (args[n].value) must be a string that gives the
                      index (UIL name) of the literal.  You must
                      define all literals in UIL as exported values.

          _n_u_m__a_r_g_s    Specifies the number of entries in _a_r_g_s.


          This function sets the values on a widget, evaluating the
          values as public literal resource references resolvable from
          a UID hierarchy.  Each literal is fetched from the
          hierarchy, and its value is modified and converted as
          required.  This value is then placed in the argument list



     2-63                                             (printed 5/7/92)






     MMrrmmFFeettcchhSSeettVVaalluueess((33XX))    RReeffeerreennccee PPaaggeess    MMrrmmFFeettcchhSSeettVVaalluueess((33XX))



          and used as the actual value for an XXttSSeettVVaalluueess call.
          MMrrmmFFeettcchhSSeettVVaalluueess allows a widget to be modified after
          creation using UID file values exactly as is done for
          creation values in MMrrmmFFeettcchhWWiiddggeett.

          As in MMrrmmFFeettcchhWWiiddggeett, each argument whose value can be
          evaluated from the UID hierarchy is set in the widget.
          Values that are not found or values in which conversion
          errors occur are not modified.

          Each entry in the argument list identifies an argument to be
          modified in the widget.  The name part identifies the tag,
          which begins with XXmmNN.  The value part must be a string
          whose value is the index of the literal.  Thus, the
          following code would modify the label resource of the widget
          to have the value of the literal accessed by the index
          OK_button_label in the hierarchy:

          args[n].name = XmNlabel;
          args[n].value = "OK_button_label";


     RREETTUURRNN VVAALLUUEE
          This function returns one of these status return constants:


          MMrrmmSSUUCCCCEESSSS     The function executed successfully.

          MMrrmmPPAARRTTIIAALL__SSUUCCCCEESSSS
                         At least one literal was successfully
                         fetched.

          MMrrmmBBAADD__HHIIEERRAARRCCHHYY
                         The hierarchy ID was invalid.

          MMrrmmFFAAIILLUURREE     The function failed.


     RREELLAATTEEDD IINNFFOORRMMAATTIIOONN
          MMrrmmOOppeennHHiieerraarrcchhyyPPeerrDDiissppllaayy((33XX)), XXttSSeettVVaalluueess((33XX)).















     2-64                                             (printed 5/7/92)






     MMrrmmFFeettcchhWWiiddggeett((33XX))       RReeffeerreennccee PPaaggeess       MMrrmmFFeettcchhWWiiddggeett((33XX))



     NNAAMMEE
          MMrrmmFFeettcchhWWiiddggeett-Fetches and creates any indexed (UIL named)
          application widgets and its children

     AAEESS SSUUPPPPOORRTT LLEEVVEELL
          Full-use

     SSYYNNOOPPSSIISS
          ##iinncclluuddee <<MMrrmm//MMrrmmPPuubblliicc..hh>>

          CCaarrddiinnaall MMrrmmFFeettcchhWWiiddggeett((_h_i_e_r_a_r_c_h_y__i_d, _i_n_d_e_x, _p_a_r_e_n_t__w_i_d_g_e_t, _w_i_d_g_e_t, _c_l_a_s_s))
               MMrrmmHHiieerraarrcchhyy_h_i_e_r_a_r_c_h_y__i_d;;
               SSttrriinngg    _i_n_d_e_x;;
               WWiiddggeett    _p_a_r_e_n_t__w_i_d_g_e_t;;
               WWiiddggeett    **_w_i_d_g_e_t;;
               MMrrmmTTyyppee   **_c_l_a_s_s;;


     DDEESSCCRRIIPPTTIIOONN
          The MMrrmmFFeettcchhWWiiddggeett function fetches and creates an indexed
          application widget and its children.  The indexed
          application widget is any widget that is named in UIL.  In
          fetch operations, the fetched widget's subtree is also
          fetched and created.  This widget must not appear as the
          child of a widget within its own subtree. MMrrmmFFeettcchhWWiiddggeett
          does not execute XXttMMaannaaggeeCChhiilldd for the newly created widget.


          _h_i_e_r_a_r_c_h_y__i_dSpecifies the ID of the uuiidd hierarchy that
                      contains the interface definition.  The
                      _h_i_e_r_a_r_c_h_y__i_d was returned in a previous call to
                      MMrrmmOOppeennHHiieerraarrcchhyyPPeerrDDiissppllaayy.

          _i_n_d_e_x       Specifies the UIL name of the widget to fetch.

          _p_a_r_e_n_t__w_i_d_g_e_t
                      Specifies the parent widget ID.

          _w_i_d_g_e_t      Returns the widget ID of the created widget.

          _c_l_a_s_s       Returns the class code identifying MRM's widget
                      class.  The widget class code for the main
                      window widget, for example, is MMRRMMwwccMMaaiinnWWiinnddooww.
                      Literals identifying MRM widget class codes are
                      defined in MMrrmm..hh.


          An application can fetch any named widget in the uuiidd
          hierarchy using MMrrmmFFeettcchhWWiiddggeett.  MMrrmmFFeettcchhWWiiddggeett can be
          called at any time to fetch a widget that was not fetched at
          application startup.  MMrrmmFFeettcchhWWiiddggeett can be used to defer
          fetching pop-up widgets until they are first referenced



     2-65                                             (printed 5/7/92)






     MMrrmmFFeettcchhWWiiddggeett((33XX))       RReeffeerreennccee PPaaggeess       MMrrmmFFeettcchhWWiiddggeett((33XX))



          (presumably in a callback), and then used to fetch them
          once.

          MMrrmmFFeettcchhWWiiddggeett can also create multiple instances of a
          widget (and its subtree).  In this case, the uuiidd definition
          functions as a template; a widget definition can be fetched
          any number of times.  An application can use this to make
          multiple instances of a widget, for example, in a dialog box
          box or menu.

          The index (UIL name) that identifies the widget must be
          known to the application.

     RREETTUURRNN VVAALLUUEE
          This function returns one of these status return constants:


          MMrrmmSSUUCCCCEESSSS          The function executed successfully.

          MMrrmmBBAADD__HHIIEERRAARRCCHHYY    The hierarchy ID was invalid.

          MMrrmmNNOOTT__FFOOUUNNDD        The widget was not found in UID
                              hierarchy.

          MMrrmmFFAAIILLUURREE          The function failed.


     RREELLAATTEEDD IINNFFOORRMMAATTIIOONN
          MMrrmmOOppeennHHiieerraarrcchhyyPPeerrDDiissppllaayy((33XX)), MMrrmmFFeettcchhWWiiddggeettOOvveerrrriiddee((33XX)).


























     2-66                                             (printed 5/7/92)






     MMrrmmFFeettcchhWWiiddggeettOOvveerrrriiddee((33XX))RReeffeerreennccee PPaaggeessMMrrmmFFeettcchhWWiiddggeettOOvveerrrriiddee((33XX))



     NNAAMMEE
          MMrrmmFFeettcchhWWiiddggeettOOvveerrrriiddee-Fetches any indexed (UIL named)
          application widget.  It overrides the arguments specified
          for this application widget in UIL

     AAEESS SSUUPPPPOORRTT LLEEVVEELL
          Full-use

     SSYYNNOOPPSSIISS
          ##iinncclluuddee <<MMrrmm//MMrrmmPPuubblliicc..hh>>

          CCaarrddiinnaall MMrrmmFFeettcchhWWiiddggeettOOvveerrrriiddee((_h_i_e_r_a_r_c_h_y__i_d, _i_n_d_e_x, _p_a_r_e_n_t__w_i_d_g_e_t, _o_v_e_r_r_i_d_e__n_a_m_e,
                    _o_v_e_r_r_i_d_e__a_r_g_s, _o_v_e_r_r_i_d_e__n_u_m__a_r_g_s, _w_i_d_g_e_t, _c_l_a_s_s))
               MMrrmmHHiieerraarrcchhyy_h_i_e_r_a_r_c_h_y__i_d;;
               SSttrriinngg    _i_n_d_e_x;;
               WWiiddggeett    _p_a_r_e_n_t__w_i_d_g_e_t;;
               SSttrriinngg    _o_v_e_r_r_i_d_e__n_a_m_e;;
               AArrggLLiisstt   _o_v_e_r_r_i_d_e__a_r_g_s;;
               CCaarrddiinnaall  _o_v_e_r_r_i_d_e__n_u_m__a_r_g_s;;
               WWiiddggeett    **_w_i_d_g_e_t;;
               MMrrmmTTyyppee   **_c_l_a_s_s;;


     DDEESSCCRRIIPPTTIIOONN
          The MMrrmmFFeettcchhWWiiddggeettOOvveerrrriiddee function is the extended version
          of MMrrmmFFeettcchhWWiiddggeett.  It is identical to MMrrmmFFeettcchhWWiiddggeett,
          except that it allows the caller to override the widget's
          name and any arguments that MMrrmmFFeettcchhWWiiddggeett would otherwise
          retrieve from the UID file or one of the defaulting
          mechanisms.  That is, the override argument list is not
          limited to those arguments in the UID file.

          The override arguments apply only to the widget fetched and
          returned by this function.  Its children (subtree) do not
          receive any override parameters.


          _h_i_e_r_a_r_c_h_y__i_d   Specifies the ID of the UID hierarchy that
                         contains the interface definition.  The
                         _h_i_e_r_a_r_c_h_y__i_d was returned in a previous call
                         to MMrrmmOOppeennHHiieerraarrcchhyyPPeerrDDiissppllaayy.

          _i_n_d_e_x          Specifies the UIL name of the widget to
                         fetch.

          _p_a_r_e_n_t__w_i_d_g_e_t  Specifies the parent widget ID.

          _o_v_e_r_r_i_d_e__n_a_m_e  Specifies the name to override the widget
                         name.  Use a NULL value if you do not want to
                         override the widget name.

          _o_v_e_r_r_i_d_e__a_r_g_s  Specifies the override argument list, exactly



     2-67                                             (printed 5/7/92)






     MMrrmmFFeettcchhWWiiddggeettOOvveerrrriiddee((33XX))RReeffeerreennccee PPaaggeessMMrrmmFFeettcchhWWiiddggeettOOvveerrrriiddee((33XX))



                         as given to XXttCCrreeaatteeWWiiddggeett (conversion
                         complete and so forth).  Use a NULL value if
                         you do not want to override the argument
                         list.

          _o_v_e_r_r_i_d_e__n_u_m__a_r_g_s
                         Specifies the number of arguments in
                         _o_v_e_r_r_i_d_e__a_r_g_s.

          _w_i_d_g_e_t         Returns the widget ID of the created widget.

          _c_l_a_s_s          Returns the class code identifying MRM's
                         widget class.  Literals identifying MRM
                         widget class codes are defined in the include
                         file <<MMrrmm//MMrrmmPPuubblliicc..hh>>.


     RREETTUURRNN VVAALLUUEE
          This function returns one of these status return constants:


          MMrrmmSSUUCCCCEESSSS          The function executed successfully.

          MMrrmmBBAADD__HHIIEERRAARRCCHHYY    The hierarchy ID was invalid.

          MMrrmmNNOOTT__FFOOUUNNDD        The widget was not found in UID
                              hierarchy.

          MMrrmmFFAAIILLUURREE          The function failed.


     RREELLAATTEEDD IINNFFOORRMMAATTIIOONN
          MMrrmmOOppeennHHiieerraarrcchhyyPPeerrDDiissppllaayy((33XX)), MMrrmmFFeettcchhWWiiddggeett((33XX)).






















     2-68                                             (printed 5/7/92)






     MMrrmmIInniittiiaalliizzee((33XX))        RReeffeerreennccee PPaaggeess        MMrrmmIInniittiiaalliizzee((33XX))



     NNAAMMEE
          MMrrmmIInniittiiaalliizzee-Prepares an application to use MRM widget-
          fetching facilities

     AAEESS SSUUPPPPOORRTT LLEEVVEELL
          Trial-use

     SSYYNNOOPPSSIISS
          vvooiidd MMrrmmIInniittiiaalliizzee(())


     DDEESSCCRRIIPPTTIIOONN
          The MMrrmmIInniittiiaalliizzee function must be called to prepare an
          application to use MRM widget-fetching facilities.  You must
          call this function prior to fetching a widget.  However, it
          is good programming practice to call MMrrmmIInniittiiaalliizzee prior to
          performing any MRM operations.

          MMrrmmIInniittiiaalliizzee initializes the internal data structures that
          MRM needs to successfully perform type conversion on
          arguments and to successfully access widget creation
          facilities.  An application must call MMrrmmIInniittiiaalliizzee before
          it uses other MRM functions.
































     2-69                                             (printed 5/7/92)






     MMrrmmOOppeennHHiieerraarrcchhyy((33XX))     RReeffeerreennccee PPaaggeess     MMrrmmOOppeennHHiieerraarrcchhyy((33XX))



     NNAAMMEE
          MMrrmmOOppeennHHiieerraarrcchhyy-Allocates a hierarchy ID and opens all the
          UID files in the hierarchy

     AAEESS SSUUPPPPOORRTT LLEEVVEELL
          Trial-use

     HHIISSTTOORRYY//DDIIRREECCTTIIOONN
          The MMrrmmOOppeennHHiieerraarrcchhyy function is scheduled for removal in
          revision D.

     SSYYNNOOPPSSIISS
          ##iinncclluuddee <<MMrrmm//MMrrmmPPuubblliicc..hh>>

          CCaarrddiinnaall MMrrmmOOppeennHHiieerraarrcchhyy((_n_u_m__f_i_l_e_s, _f_i_l_e__n_a_m_e_s__l_i_s_t, _a_n_c_i_l_l_a_r_y__s_t_r_u_c_t_u_r_e_s__l_i_s_t, _h_i_e_r_a_r_c_h_y__i_d))
               MMrrmmCCoouunntt            _n_u_m__f_i_l_e_s;;
               SSttrriinngg              _f_i_l_e__n_a_m_e_s__l_i_s_t[[]];;
               MMrrmmOOssOOppeennPPaarraammPPttrr   **_a_n_c_i_l_l_a_r_y__s_t_r_u_c_t_u_r_e_s__l_i_s_t;;
               MMrrmmHHiieerraarrcchhyy        **_h_i_e_r_a_r_c_h_y__i_d;;


     DDEESSCCRRIIPPTTIIOONN
          This routine is obsolete and exists for compatibility with
          previous releases.  It is replaced by
          MMrrmmOOppeennHHiieerraarrcchhyyPPeerrDDiissppllaayy.  MMrrmmOOppeennHHiieerraarrcchhyy is identical
          to MMrrmmOOppeennHHiieerraarrcchhyyPPeerrDDiissppllaayy except that MMrrmmOOppeennHHiieerraarrcchhyy
          does not take a _d_i_s_p_l_a_y argument.


          _n_u_m__f_i_l_e_s        Specifies the number of files in the name
                           list.

          _f_i_l_e__n_a_m_e_s__l_i_s_t  Specifies an array of character strings
                           that identify the UID files.

          _a_n_c_i_l_l_a_r_y__s_t_r_u_c_t_u_r_e_s__l_i_s_t
                           A list of operating-system-dependent
                           ancillary structures corresponding to such
                           things as filenames, clobber flag, and so
                           forth.  This argument should be NULL for
                           most operations.  If you need to reference
                           this structure, see the definition of
                           MMrrmmOOssOOppeennPPaarraammPPttrr in MMrrmmPPuubblliicc..hh for more
                           information.

          _h_i_e_r_a_r_c_h_y__i_d     Returns the search hierarchy ID.  The
                           search hierarchy ID identifies the list of
                           UID files that MRM searches (in order) when
                           performing subsequent fetch calls.


          Each UID file string in _f_i_l_e__n_a_m_e_s__l_i_s_t can specify either a



     2-70                                             (printed 5/7/92)






     MMrrmmOOppeennHHiieerraarrcchhyy((33XX))     RReeffeerreennccee PPaaggeess     MMrrmmOOppeennHHiieerraarrcchhyy((33XX))



          full pathname or a filename.  If a UID file string has a
          leading slash (/), it specifies a full pathname, and MRM
          opens the file as specified.  Otherwise, the UID file string
          specifies a filename.  In this case MRM looks for the file
          along a search path specified by the UUIIDDPPAATTHH environment
          variable or by a default search path, which varies depending
          on whether or not the XXAAPPPPLLRREESSDDIIRR environment variable is
          set.

          The UUIIDDPPAATTHH environment variable specifies a search path and
          naming conventions associated with UID files.  It can
          contain the substitution field %U, where the UID file string
          from the _f_i_l_e__n_a_m_e_s__l_i_s_t argument to
          MMrrmmOOppeennHHiieerraarrcchhyyPPeerrDDiissppllaayy is substituted for %U.  It can
          also contain the substitution fields accepted by
          XXttRReessoollvveePPaatthhnnaammee.  The substitution field %T is always
          mapped to uuiidd.  The entire path is first searched with %S
          mapped to ..uuiidd and then, if no file is found, is searched
          again with %S mapped to NULL.  For example, the following
          UUIIDDPPAATTHH value and MMrrmmOOppeennHHiieerraarrcchhyy call cause MRM to open
          two separate UID files:

          UIDPATH=/uidlib/%L/%U.uid:/uidlib/%U/%L
            static char *uid_files[] = {"/usr/users/me/test.uid", "test2"};
            MrmHierarchy  *Hierarchy_id;
            MrmOpenHierarchy((MrmCount)2,uid_files, NULL, Hierarchy_id)


          MRM opens the first file, //uussrr//uusseerrss//mmee//tteesstt..uuiidd, as
          specified in the _f_i_l_e__n_a_m_e_s__l_i_s_t argument to
          MMrrmmOOppeennHHiieerraarrcchhyy, because the UID file string in the
          _f_i_l_e__n_a_m_e_s__l_i_s_t argument specifies a full pathname.  MRM
          looks for the second file, tteesstt22, first as
          //uuiiddlliibb//%%LL//tteesstt22..uuiidd and second as //uuiiddlliibb//tteesstt22//%%LL, where
          the display's language string is substituted for %L.

          After MMrrmmOOppeennHHiieerraarrcchhyy opens the UID hierarchy, you should
          not delete or modify the UID files until you close the UID
          hierarchy by calling MMrrmmCClloosseeHHiieerraarrcchhyy.

          If UUIIDDPPAATTHH is not set but the environment variable
          XXAAPPPPLLRREESSDDIIRR is set, MRM searches the following pathnames:

                    2222::5599::5555SS
                    $$XXAAPPPPLLRREESSDDIIRR//%%LL//uuiidd//%%NN//2222::5599::5555SS
                    $$XXAAPPPPLLRREESSDDIIRR//%%ll//uuiidd//%%NN//2222::5599::5555SS
                    $$XXAAPPPPLLRREESSDDIIRR//uuiidd//%%NN//2222::5599::5555SS
                    $$XXAAPPPPLLRREESSDDIIRR//%%LL//uuiidd//2222::5599::5555SS
                    $$XXAAPPPPLLRREESSDDIIRR//%%ll//uuiidd//2222::5599::5555SS
                    $$XXAAPPPPLLRREESSDDIIRR//uuiidd//2222::5599::5555SS
                    $$HHOOMMEE//uuiidd//2222::5599::5555SS
                    $$HHOOMMEE//2222::5599::5555SS



     2-71                                             (printed 5/7/92)






     MMrrmmOOppeennHHiieerraarrcchhyy((33XX))     RReeffeerreennccee PPaaggeess     MMrrmmOOppeennHHiieerraarrcchhyy((33XX))



                    //uussrr//lliibb//XX1111//%%LL//uuiidd//%%NN//2222::5599::5555SS
                    //uussrr//lliibb//XX1111//%%ll//uuiidd//%%NN//2222::5599::5555SS
                    //uussrr//lliibb//XX1111//uuiidd//%%NN//2222::5599::5555SS
                    //uussrr//lliibb//XX1111//%%LL//uuiidd//2222::5599::5555SS
                    //uussrr//lliibb//XX1111//%%ll//uuiidd//2222::5599::5555SS
                    //uussrr//lliibb//XX1111//uuiidd//2222::5599::5555SS
                    //uussrr//iinncclluuddee//XX1111//uuiidd//2222::5599::5555SS


          If neither UUIIDDPPAATTHH nor XXAAPPPPLLRREESSDDIIRR is set, MRM searches the
          following pathnames:

                    2222::5599::5555SS
                    $$HHOOMMEE//%%LL//uuiidd//%%NN//2222::5599::5555SS
                    $$HHOOMMEE//%%ll//uuiidd//%%NN//2222::5599::5555SS
                    $$HHOOMMEE//uuiidd//%%NN//2222::5599::5555SS
                    $$HHOOMMEE//%%LL//uuiidd//2222::5599::5555SS
                    $$HHOOMMEE//%%ll//uuiidd//2222::5599::5555SS
                    $$HHOOMMEE//uuiidd//2222::5599::5555SS
                    $$HHOOMMEE//2222::5599::5555SS
                    //uussrr//lliibb//XX1111//%%LL//uuiidd//%%NN//2222::5599::5555SS
                    //uussrr//lliibb//XX1111//%%ll//uuiidd//%%NN//2222::5599::5555SS
                    //uussrr//lliibb//XX1111//uuiidd//%%NN//2222::5599::5555SS
                    //uussrr//lliibb//XX1111//%%LL//uuiidd//2222::5599::5555SS
                    //uussrr//lliibb//XX1111//%%ll//uuiidd//2222::5599::5555SS
                    //uussrr//lliibb//XX1111//uuiidd//2222::5599::5555SS
                    //uussrr//iinncclluuddee//XX1111//uuiidd//2222::5599::5555SS


          These paths are defaults that vendors may change.  For
          example, a vendor may use different directories for
          //uussrr//lliibb//XX1111 and //uussrr//iinncclluuddee//XX1111.

          The following substitutions are used in these paths:


          %%UU   The UID file string, from the _f_i_l_e__n_a_m_e_s__l_i_s_t argument.

          %%NN   The class name of the application.

          %%LL   The display's language string.

          %%ll   The language component of the display's language
               string.

          %%SS   The suffix to the file name.  The entire path is
               searched first with a suffix of ..uuiill, and if no file is
               found, it is searched again with a NULL suffix.







     2-72                                             (printed 5/7/92)






     MMrrmmOOppeennHHiieerraarrcchhyy((33XX))     RReeffeerreennccee PPaaggeess     MMrrmmOOppeennHHiieerraarrcchhyy((33XX))



     RREETTUURRNN VVAALLUUEE
          This function returns one of these status return constants:


          MMrrmmSSUUCCCCEESSSS          The function executed successfully.

          MMrrmmNNOOTT__FFOOUUNNDD        File not found.

          MMrrmmFFAAIILLUURREE          The function failed.


     RREELLAATTEEDD IINNFFOORRMMAATTIIOONN
          MMrrmmOOppeennHHiieerraarrcchhyyPPeerrDDiissppllaayy((33XX)) and MMrrmmCClloosseeHHiieerraarrcchhyy((33XX)).










































     2-73                                             (printed 5/7/92)






     MMrrmmOOppeennHHiieerraarrcchhyyPPeerrDDiissppllaayyRR(e(e3f3fXeXe)r)reennccee PPMMarargmgmeOeOspspeennHHiieerraarrcchhyyPPeerrDDiissppllaayy((33XX))



     NNAAMMEE
          MMrrmmOOppeennHHiieerraarrcchhyyPPeerrDDiissppllaayy-Allocates a hierarchy ID and
          opens all the UID files in the hierarchy

     AAEESS SSUUPPPPOORRTT LLEEVVEELL
          Trial-use

     SSYYNNOOPPSSIISS
          ##iinncclluuddee <<MMrrmm//MMrrmmPPuubblliicc..hh>>

          CCaarrddiinnaall MMrrmmOOppeennHHiieerraarrcchhyyPPeerrDDiissppllaayy ((_d_i_s_p_l_a_y, _n_u_m__f_i_l_e_s, _f_i_l_e__n_a_m_e_s__l_i_s_t,
          _a_n_c_i_l_l_a_r_y__s_t_r_u_c_t_u_r_e_s__l_i_s_t, _h_i_e_r_a_r_c_h_y__i_d))
               DDiissppllaayy          **_d_i_s_p_l_a_y;;
               MMrrmmCCoouunntt         _n_u_m__f_i_l_e_s;;
               SSttrriinngg           _f_i_l_e__n_a_m_e_s__l_i_s_t[[]];;
               MMrrmmOOssOOppeennPPaarraammPPttrr**_a_n_c_i_l_l_a_r_y__s_t_r_u_c_t_u_r_e_s__l_i_s_t;;
               MMrrmmHHiieerraarrcchhyy     **_h_i_e_r_a_r_c_h_y__i_d;;


     DDEESSCCRRIIPPTTIIOONN
          MMrrmmOOppeennHHiieerraarrcchhyyPPeerrDDiissppllaayy allows you to specify the list of
          UID files that MRM searches in subsequent fetch operations.
          All subsequent fetch operations return the first occurrence
          of the named item encountered while traversing the UID
          hierarchy from the first list element (UID file
          specification) to the last list element.  This function also
          allocates a hierarchy ID and opens all the UID files in the
          hierarchy.  It initializes the optimized search lists in the
          hierarchy.  If MMrrmmOOppeennHHiieerraarrcchhyyPPeerrDDiissppllaayy encounters any
          errors during its execution, any files that were opened are
          closed.

          The application must call XXttAAppppIInniittiiaalliizzee before calling
          MMrrmmOOppeennHHiieerraarrcchhyyPPeerrDDiissppllaayy.


          _d_i_s_p_l_a_y          Specifies the connection to the X server
                           and the value to pass to XXttRReessoollvveePPaatthhnnaammee.
                           For more information on the Display
                           structure, see the Xlib function
                           XXOOppeennDDiissppllaayy.

          _n_u_m__f_i_l_e_s        Specifies the number of files in the name
                           list.

          _f_i_l_e__n_a_m_e_s__l_i_s_t  Specifies an array of character strings
                           that identify the UID files.

          _a_n_c_i_l_l_a_r_y__s_t_r_u_c_t_u_r_e_s__l_i_s_t
                           A list of operating-system-dependent
                           ancillary structures corresponding to such
                           things as filenames, clobber flag, and so



     2-74                                             (printed 5/7/92)






     MMrrmmOOppeennHHiieerraarrcchhyyPPeerrDDiissppllaayyRR(e(e3f3fXeXe)r)reennccee PPMMarargmgmeOeOspspeennHHiieerraarrcchhyyPPeerrDDiissppllaayy((33XX))



                           forth.  This argument should be NULL for
                           most operations.  If you need to reference
                           this structure, see the definition of
                           MMrrmmOOssOOppeennPPaarraammPPttrr in MMrrmmPPuubblliicc..hh for more
                           information.

          _h_i_e_r_a_r_c_h_y__i_d     Returns the search hierarchy ID.  The
                           search hierarchy ID identifies the list of
                           UID files that MRM searches (in order) when
                           performing subsequent fetch calls.


          Each UID file string in _f_i_l_e__n_a_m_e_s__l_i_s_t can specify either a
          full pathname or a filename.  If a UID file string has a
          leading slash (/), it specifies a full pathname, and MRM
          opens the file as specified.  Otherwise, the UID file string
          specifies a filename.  In this case MRM looks for the file
          along a search path specified by the UUIIDDPPAATTHH environment
          variable or by a default search path, which varies depending
          on whether or not the XXAAPPPPLLRREESSDDIIRR environment variable is
          set.

          The UUIIDDPPAATTHH environment variable specifies a search path and
          naming conventions associated with UID files.  It can
          contain the substitution field %U, where the UID file string
          from the _f_i_l_e__n_a_m_e_s__l_i_s_t argument to
          MMrrmmOOppeennHHiieerraarrcchhyyPPeerrDDiissppllaayy is substituted for %U.  It can
          also contain the substitution fields accepted by
          XXttRReessoollvveePPaatthhnnaammee.  The substitution field %T is always
          mapped to uuiidd.  The entire path is first searched with %S
          mapped to ..uuiidd and then, if no file is found, is searched
          again with %S mapped to NULL.  For example, the following
          UUIIDDPPAATTHH value and MMrrmmOOppeennHHiieerraarrcchhyyPPeerrDDiissppllaayy call cause MRM
          to open two separate UID files:

          UIDPATH=/uidlib/%L/%U.uid:/uidlib/%U/%L
            static char *uid_files[] = {"/usr/users/me/test.uid", "test2"};
            MrmHierarchy  *Hierarchy_id;
            MrmOpenHierarchyPerDisplay((MrmCount)2,uid_files, NULL, Hierarchy_id)


          MRM opens the first file, //uussrr//uusseerrss//mmee//tteesstt..uuiidd, as
          specified in the _f_i_l_e__n_a_m_e_s__l_i_s_t argument to
          MMrrmmOOppeennHHiieerraarrcchhyyPPeerrDDiissppllaayy, because the UID file string in
          the _f_i_l_e__n_a_m_e_s__l_i_s_t argument specifies a full pathname.  MRM
          looks for the second file, tteesstt22, first as
          //uuiiddlliibb//%%LL//tteesstt22..uuiidd and second as //uuiiddlliibb//tteesstt22//%%LL, where
          the display's language string is substituted for %L.

          After MMrrmmOOppeennHHiieerraarrcchhyyPPeerrDDiissppllaayy opens the UID hierarchy,
          you should not delete or modify the UID files until you
          close the UID hierarchy by calling MMrrmmCClloosseeHHiieerraarrcchhyy.



     2-75                                             (printed 5/7/92)






     MMrrmmOOppeennHHiieerraarrcchhyyPPeerrDDiissppllaayyRR(e(e3f3fXeXe)r)reennccee PPMMarargmgmeOeOspspeennHHiieerraarrcchhyyPPeerrDDiissppllaayy((33XX))



          If UUIIDDPPAATTHH is not set but the environment variable
          XXAAPPPPLLRREESSDDIIRR is set, MRM searches the following pathnames:

                    2233::0000::0066SS
                    $$XXAAPPPPLLRREESSDDIIRR//%%LL//uuiidd//%%NN//2233::0000::0066SS
                    $$XXAAPPPPLLRREESSDDIIRR//%%ll//uuiidd//%%NN//2233::0000::0066SS
                    $$XXAAPPPPLLRREESSDDIIRR//uuiidd//%%NN//2233::0000::0066SS
                    $$XXAAPPPPLLRREESSDDIIRR//%%LL//uuiidd//2233::0000::0066SS
                    $$XXAAPPPPLLRREESSDDIIRR//%%ll//uuiidd//2233::0000::0066SS
                    $$XXAAPPPPLLRREESSDDIIRR//uuiidd//2233::0000::0066SS
                    $$HHOOMMEE//uuiidd//2233::0000::0066SS
                    $$HHOOMMEE//2233::0000::0066SS
                    //uussrr//lliibb//XX1111//%%LL//uuiidd//%%NN//2233::0000::0066SS
                    //uussrr//lliibb//XX1111//%%ll//uuiidd//%%NN//2233::0000::0066SS
                    //uussrr//lliibb//XX1111//uuiidd//%%NN//2233::0000::0066SS
                    //uussrr//lliibb//XX1111//%%LL//uuiidd//2233::0000::0066SS
                    //uussrr//lliibb//XX1111//%%ll//uuiidd//2233::0000::0066SS
                    //uussrr//lliibb//XX1111//uuiidd//2233::0000::0066SS
                    //uussrr//iinncclluuddee//XX1111//uuiidd//2233::0000::0066SS


          If neither UUIIDDPPAATTHH nor XXAAPPPPLLRREESSDDIIRR is set, MRM searches the
          following pathnames:

                    2233::0000::0066SS
                    $$HHOOMMEE//%%LL//uuiidd//%%NN//2233::0000::0066SS
                    $$HHOOMMEE//%%ll//uuiidd//%%NN//2233::0000::0066SS
                    $$HHOOMMEE//uuiidd//%%NN//2233::0000::0066SS
                    $$HHOOMMEE//%%LL//uuiidd//2233::0000::0066SS
                    $$HHOOMMEE//%%ll//uuiidd//2233::0000::0066SS
                    $$HHOOMMEE//uuiidd//2233::0000::0066SS
                    $$HHOOMMEE//2233::0000::0066SS
                    //uussrr//lliibb//XX1111//%%LL//uuiidd//%%NN//2233::0000::0066SS
                    //uussrr//lliibb//XX1111//%%ll//uuiidd//%%NN//2233::0000::0066SS
                    //uussrr//lliibb//XX1111//uuiidd//%%NN//2233::0000::0066SS
                    //uussrr//lliibb//XX1111//%%LL//uuiidd//2233::0000::0066SS
                    //uussrr//lliibb//XX1111//%%ll//uuiidd//2233::0000::0066SS
                    //uussrr//lliibb//XX1111//uuiidd//2233::0000::0066SS
                    //uussrr//iinncclluuddee//XX1111//uuiidd//2233::0000::0066SS


          These paths are defaults that vendors may change.  For
          example, a vendor may use different directories for
          //uussrr//lliibb//XX1111 and //uussrr//iinncclluuddee//XX1111.

          The following substitutions are used in these paths:


          %%UU   The UID file string, from the _f_i_l_e__n_a_m_e_s__l_i_s_t argument.

          %%NN   The class name of the application.




     2-76                                             (printed 5/7/92)






     MMrrmmOOppeennHHiieerraarrcchhyyPPeerrDDiissppllaayyRR(e(e3f3fXeXe)r)reennccee PPMMarargmgmeOeOspspeennHHiieerraarrcchhyyPPeerrDDiissppllaayy((33XX))



          %%LL   The display's language string.

          %%ll   The language component of the display's language
               string.

          %%SS   The suffix to the file name.  The entire path is
               searched first with a suffix of ..uuiill, and if no file is
               found, it is searched again with a NULL suffix.


     RREETTUURRNN VVAALLUUEE
          This function returns one of these status return constants:


          MMrrmmSSUUCCCCEESSSS          The function executed successfully.

          MMrrmmNNOOTT__FFOOUUNNDD        File not found.

          MMrrmmFFAAIILLUURREE          The function failed.


     RREELLAATTEEDD IINNFFOORRMMAATTIIOONN
          MMrrmmCClloosseeHHiieerraarrcchhyy((33XX)).
































     2-77                                             (printed 5/7/92)






     MMrrmmRReeggiisstteerrCCllaassss((33XX))     RReeffeerreennccee PPaaggeess     MMrrmmRReeggiisstteerrCCllaassss((33XX))



     NNAAMMEE
          MMrrmmRReeggiisstteerrCCllaassss-Saves the information needed for MRM to
          access the widget creation function for user-defined widgets

     AAEESS SSUUPPPPOORRTT LLEEVVEELL
          Trial-use

     SSYYNNOOPPSSIISS
          ##iinncclluuddee <<MMrrmm//MMrrmmPPuubblliicc..hh>>

          CCaarrddiinnaall MMrrmmRReeggiisstteerrCCllaassss((_c_l_a_s_s__c_o_d_e, _c_l_a_s_s__n_a_m_e, _c_r_e_a_t_e__n_a_m_e, _c_r_e_a_t_e__p_r_o_c, _c_l_a_s_s__r_e_c_o_r_d))
               MMrrmmTTyyppee   _c_l_a_s_s__c_o_d_e;;
               SSttrriinngg    _c_l_a_s_s__n_a_m_e;;
               SSttrriinngg    _c_r_e_a_t_e__n_a_m_e;;
               WWiiddggeett    ((**_c_r_e_a_t_e__p_r_o_c)) (());;
               WWiiddggeettCCllaassss_c_l_a_s_s__r_e_c_o_r_d;;


     DDEESSCCRRIIPPTTIIOONN
          The MMrrmmRReeggiisstteerrCCllaassss function allows MRM to access user-
          defined widget classes.  This function registers the
          necessary information for MRM to create widgets of this
          class.  You must call MMrrmmRReeggiisstteerrCCllaassss prior to fetching any
          user-defined class widget.

          MMrrmmRReeggiisstteerrCCllaassss saves the information needed to access the
          widget creation function and to do type conversion of
          argument lists by using the information in MRM databases.


          _c_l_a_s_s__c_o_d_e
                    This argument is ignored; it is present for
                    compatibility with previous releases.

          _c_l_a_s_s__n_a_m_e
                    This argument is ignored; it is present for
                    compatibility with previous releases.

          _c_r_e_a_t_e__n_a_m_e
                    Specifies the case-sensitive name of the low-level
                    widget creation function for the class.  An
                    example from the Motif Toolkit is XXmmCCrreeaatteeLLaabbeell.
                    Arguments are _p_a_r_e_n_t__w_i_d_g_e_t, _n_a_m_e,
                    _o_v_e_r_r_i_d_e__a_r_g_l_i_s_t, and _o_v_e_r_r_i_d_e__a_r_g_c_o_u_n_t.

                    For user-defined widgets, _c_r_e_a_t_e__n_a_m_e is the
                    creation procedure in the UIL that defines this
                    widget.

          _c_r_e_a_t_e__p_r_o_c
                    Specifies the address of the creation function
                    that you named in _c_r_e_a_t_e__n_a_m_e.



     2-78                                             (printed 5/7/92)






     MMrrmmRReeggiisstteerrCCllaassss((33XX))     RReeffeerreennccee PPaaggeess     MMrrmmRReeggiisstteerrCCllaassss((33XX))



          _c_l_a_s_s__r_e_c_o_r_d
                    Specifies a pointer to the class record.


     RREETTUURRNN VVAALLUUEE
          This function returns one of these status return constants:


          MMrrmmSSUUCCCCEESSSS     The function executed successfully.

          MMrrmmFFAAIILLUURREE     The function failed.












































     2-79                                             (printed 5/7/92)






     MMrrmmRReeggiisstteerrNNaammeess((33XX))     RReeffeerreennccee PPaaggeess     MMrrmmRReeggiisstteerrNNaammeess((33XX))



     NNAAMMEE
          MMrrmmRReeggiisstteerrNNaammeess-Registers the values associated with the
          names referenced in UIL (for example, UIL callback function
          names or UIL identifier names)

     AAEESS SSUUPPPPOORRTT LLEEVVEELL
          Trial-use

     SSYYNNOOPPSSIISS
          ##iinncclluuddee <<MMrrmm//MMrrmmPPuubblliicc..hh>>

          CCaarrddiinnaall MMrrmmRReeggiisstteerrNNaammeess((_r_e_g_i_s_t_e_r__l_i_s_t, _r_e_g_i_s_t_e_r__c_o_u_n_t))
               MMrrmmRReeggiisstteerrAArrgglliisstt  _r_e_g_i_s_t_e_r__l_i_s_t;;
               MMrrmmCCoouunntt            _r_e_g_i_s_t_e_r__c_o_u_n_t;;


     DDEESSCCRRIIPPTTIIOONN
          The MMrrmmRReeggiisstteerrNNaammeess function registers a vector of names
          and associated values for access in MRM.  The values can be
          callback functions, pointers to user-defined data, or any
          other values.  The information 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 MMrrmmRReeggiisstteerrNNaammeessIInnHHiieerraarrcchhyy,
          except that the scope of the names registered by
          MMrrmmRReeggiisstteerrNNaammeessIInnHHiieerraarrcchhyy is limited to the hierarchy
          specified in the call to that function, whereas the names
          registered by MMrrmmRReeggiisstteerrNNaammeess 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.


          _r_e_g_i_s_t_e_r__l_i_s_t
                      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
                      procedure address if the name is a callback
                      function, and uninterpreted otherwise.

          _r_e_g_i_s_t_e_r__c_o_u_n_t
                      Specifies the number of entries in
                      _r_e_g_i_s_t_e_r__l_i_s_t.


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



     2-80                                             (printed 5/7/92)






     MMrrmmRReeggiisstteerrNNaammeess((33XX))     RReeffeerreennccee PPaaggeess     MMrrmmRReeggiisstteerrNNaammeess((33XX))



          Callback functions registered through MMrrmmRReeggiisstteerrNNaammeess can
          be either regular or creation callbacks.  Regular callbacks
          have declarations determined by Motif Toolkit and user
          requirements.  Creation callbacks have the same format as
          any other callback:

          vvooiidd CCaallllBBaacckkPPrroocc((_w_i_d_g_e_t__i_d, _t_a_g, _c_a_l_l_b_a_c_k__d_a_t_a))
               WWiiddggeett              **_w_i_d_g_e_t__i_d;;
               OOppaaqquuee              _t_a_g
               XXmmAAnnyyCCaallllbbaacckkSSttrruucctt **_c_a_l_l_b_a_c_k__d_a_t_a;;


          _w_i_d_g_e_t__i_d      Specifies the widget ID associated with the
                         widget performing the callback (as in any
                         callback function).

          _t_a_g            Specifies the tag value (as in any callback
                         function).

          _c_a_l_l_b_a_c_k__d_a_t_a  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 MMrrmmCCRR__CCRREEAATTEE.


          Note that the widget name and parent are available from the
          widget record accessible through _w_i_d_g_e_t__i_d.

     RREETTUURRNN VVAALLUUEE
          This function returns one of these status return constants:


          MMrrmmSSUUCCCCEESSSS     The function executed successfully.

          MMrrmmFFAAIILLUURREE     The function failed.




















     2-81                                             (printed 5/7/92)






     MMrrmmRReeggiisstteerrNNaammeessIInnHHiieerraarrcchhRRyeye(f(f3e3eXrXr)e)ennccee MMPrPramamgRgReeeesgsgiisstteerrNNaammeessIInnHHiieerraarrcchhyy((33XX))



     NNAAMMEE
          MMrrmmRReeggiisstteerrNNaammeessIInnHHiieerraarrcchhyy-Registers the values associated
          with the names referenced in UIL within a single hierarchy
          (for example, UIL callback function names or UIL identifier
          names)

     AAEESS SSUUPPPPOORRTT LLEEVVEELL
          Trial-use

     SSYYNNOOPPSSIISS
          ##iinncclluuddee <<MMrrmm//MMrrmmPPuubblliicc..hh>>

          CCaarrddiinnaall MMrrmmRReeggiisstteerrNNaammeessIInnHHiieerraarrcchhyy((_h_i_e_r_a_r_c_h_y__i_d, _r_e_g_i_s_t_e_r__l_i_s_t, _r_e_g_i_s_t_e_r__c_o_u_n_t))
               MMrrmmHHiieerraarrcchhyy        _h_i_e_r_a_r_c_h_y__i_d;;
               MMrrmmRReeggiisstteerrAArrgglliisstt  _r_e_g_i_s_t_e_r__l_i_s_t;;
               MMrrmmCCoouunntt            _r_e_g_i_s_t_e_r__c_o_u_n_t;;


     DDEESSCCRRIIPPTTIIOONN
          The MMrrmmRReeggiisstteerrNNaammeessIInnHHiieerraarrcchhyy function registers a vector
          of names and associated values for access in MRM.  The
          values can be callback functions, pointers to user-defined
          data, or any other values.  The information 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 MMrrmmRReeggiisstteerrNNaammeess, except that
          the scope of the names registered by
          MMrrmmRReeggiisstteerrNNaammeessIInnHHiieerraarrcchhyy is limited to the hierarchy
          specified by _h_i_e_r_a_r_c_h_y__i_d, whereas the names registered by
          MMrrmmRReeggiisstteerrNNaammeess 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.


          _h_i_e_r_a_r_c_h_y__i_d
                      Specifies the hierarchy with which the names are
                      to be associated.

          _r_e_g_i_s_t_e_r__l_i_s_t
                      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
                      procedure address if the name is a callback
                      function, and uninterpreted otherwise.




     2-82                                             (printed 5/7/92)






     MMrrmmRReeggiisstteerrNNaammeessIInnHHiieerraarrcchhRRyeye(f(f3e3eXrXr)e)ennccee MMPrPramamgRgReeeesgsgiisstteerrNNaammeessIInnHHiieerraarrcchhyy((33XX))



          _r_e_g_i_s_t_e_r__c_o_u_n_t
                      Specifies the number of entries in
                      _r_e_g_i_s_t_e_r__l_i_s_t.


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

          Callback functions registered through
          MMrrmmRReeggiisstteerrNNaammeessIInnHHiieerraarrcchhyy can be either regular or
          creation callbacks.  Regular callbacks have declarations
          determined by Motif Toolkit and user requirements.  Creation
          callbacks have the same format as any other callback:

          vvooiidd CCaallllBBaacckkPPrroocc((_w_i_d_g_e_t__i_d, _t_a_g, _c_a_l_l_b_a_c_k__d_a_t_a))
               WWiiddggeett              **_w_i_d_g_e_t__i_d;;
               OOppaaqquuee              _t_a_g;;
               XXmmAAnnyyCCaallllbbaacckkSSttrruucctt **_c_a_l_l_b_a_c_k__d_a_t_a;;


          _w_i_d_g_e_t__i_d      Specifies the widget ID associated with the
                         widget performing the callback (as in any
                         callback function).

          _t_a_g            Specifies the tag value (as in any callback
                         function).

          _c_a_l_l_b_a_c_k__d_a_t_a  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 MMrrmmCCRR__CCRREEAATTEE.


          Note that the widget name and parent are available from the
          widget record accessible through _w_i_d_g_e_t__i_d.

     RREETTUURRNN VVAALLUUEE
          This function returns one of these status return constants:


          MMrrmmSSUUCCCCEESSSS     The function executed successfully.

          MMrrmmFFAAIILLUURREE     The function failed.












     2-83                                             (printed 5/7/92)



 t
