ttdt_sender_imprint_on(3)

ttdt_sender_imprint_on - act like a child of the specified tool

As shipped in IRIX 6.5.22. Added in IRIX 6.5.22.

NAME
     ttdt_sender_imprint_on - act like a child of the specified tool

SYNOPSIS
     #include <Tt/tttk.h>
     Tt_status ttdt_sender_imprint_on(const char *handler,
                                      Tt_message contract,
                                      char **display,
                                      int *width,
                                      int *height,
                                      int *xoffset,
                                      int *yoffset,
                                      XtAppContext app2run,
                                      int ms_timeout);

DESCRIPTION
     The ttdt_sender_imprint_on() function is used to make the calling tool
     act equivalently to a child of another specified tool.  The calling tool
     adopts the other tool's X11 display, locale, and current working
     directory.  It also learns the other tool's X11 geometry, so that it may
     position itself appropriately.

     If the handler argument is non-NULL, the requests are addressed to that
     procid using TT_HANDLER.  If handler is NULL and the contract argument is
     non-NULL, the requests are addressed to the tt_message_sender(3) of the
     contract, using TT_HANDLER.

     The contract argument is passed to tttk_message_create(3) as the context
     argument.

     If the display argument is not NULL, ttdt_sender_imprint_on() returns the
     other tool's display in *display.  If display is NULL,
     ttdt_sender_imprint_on() sets the DISPLAY environment variable to the
     other tool's display.

     If each of the width, height, xoffset, and yoffset arguments are NULL,
     then ttdt_sender_imprint_on() does not send the other tool a Get_Geometry
     request.

     The ttdt_sender_imprint_on() function passes the app2run and ms_timeout
     arguments to tttk_block_while(3), blocking on the replies to the requests
     it sends.

     If the display argument is not NULL, ttdt_sender_imprint_on() sets
     *display to a string that can be freed with tt_free().

     If for some reason no width or height is returned by the other tool,
     ttdt_sender_imprint_on() sets *width or *height to -1.  If no positional
     information is returned, ttdt_sender_imprint_on() sets *xoffset and
     *yoffset to {INT_MAX}.
RETURN VALUE
     Upon successful completion, the ttdt_sender_imprint_on() function returns
     the status of the operation as one of the following Tt_status values:

        TT_OK   The operation completed successfully.

        TT_DESKTOP_ETIMEDOUT
                One or more of the sent requests did not complete within
                ms_timeout milliseconds.

        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_OVERFLOW
                The ToolTalk service has more active messages than it can
                handle.  (The maximum number of active messages is
                implementation specific, but is at least 2000.)

        TT_ERR_PROCID
                The specified process identifier is out of date or invalid.

APPLICATION USAGE
     If both the handler and contract are zero, the requests are addressed to
     no tool in particular, using TT_PROCEDURE; this is not recommended.

SEE ALSO
     Tttttk(5), tt_free(3), tt_message_sender(3), tttk_block_while(3),
     tttk_message_create(3).