ttdt_subcontract_manage(3)

ttdt_subcontract_manage - manage an outstanding request

As shipped in IRIX 6.5.22. Added in IRIX 6.5.22.

NAME
     ttdt_subcontract_manage - manage an outstanding request

SYNOPSIS
     #include <Tt/tttk.h>
     Tt_pattern *ttdt_subcontract_manage(Tt_message subcontract,
                                         Ttdt_contract_cb cb,
                                         Widget shell,
                                         void *clientdata);

DESCRIPTION
     The ttdt_subcontract_manage() function allows a requester to manage the
     standard Desktop interactions with the tool that is handling the request.
     The ttdt_subcontract_manage() function registers in the default session
     for TT_HANDLER-addressed requests Get_Geometry and Get_XInfo, and Status
     notices.

     If shell is not NULL, the ToolTalk service handles the Get_Geometry and
     Get_XInfo, and Status notices transparently; otherwise, it passes them to
     cb.

     See ttdt_session_join(3) for a description of a Ttdt_contract_cb
     callback.

     If subcontract is destroyed by tttk_message_destroy(), then the patterns
     will also be destroyed; otherwise, the caller is responsible for
     iterating over the array and destroying each pattern.

RETURN VALUE
     Upon successful completion, the ttdt_subcontract_manage() function
     returns a null-terminated array of Tt_pattern, and associates this array
     with subcontract; otherwise, it returns an error pointer.  The
     application can use tt_ptr_error(3) to extract one of the following
     Tt_status values from the returned handle:

        TT_DESKTOP_EINVAL
                Both the shell and cb arguments were NULL.

        TT_ERR_NOMEM
                There is insufficient memory available to perform the
                function.

        TT_ERR_NOMP
                The ttsession(1) process is not running and the ToolTalk
                service cannot restart it.

        TT_ERR_POINTER
                The subcontract argument was not a valid Tt_message.
        TT_ERR_PROCID
                The specified process identifier is out of date or invalid.

SEE ALSO
     Tttttk(5), ttdt_session_join(3), tttk_message_destroy(3).