 |
Index for Section 3 |
|
 |
Alphabetical listing for T |
|
ttdt_sender_imprint_on(3)
CDE
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_sender3 of the
contract, using TT_HANDLER.
The contract argument is passed to tttk_message_create3 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_while3, 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: The
operation completed successfully.
One or more of the sent requests did not complete within ms_timeout
milliseconds.
There is insufficient memory available to perform the function.
The ttsession1 process is not running and the ToolTalk service cannot
restart it.
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.)
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
Tt/tttk.h5, tt_free3, tt_message_sender3, tttk_block_while3,
tttk_message_create3.