AT&T UNIX™PC Unix System V Users Manual - tenox

AT&T UNIX™PC Unix System V Users Manual - tenox AT&T UNIX™PC Unix System V Users Manual - tenox

01.01.2013 Views

TMPNAM (3S) TMPNAM (3S) SEE ALSO creat(2), unlink(2), tmpfile(3S). fopen(3S), malloc(3C), mktemp(3C), BUGS If called more than 17,576 times in a single process, these functions will start recycling previously used names. Between the time a file name is created and the file is opened, it is possible for some other process to create a file with the same name. This can never happen if that other process is using these functions or mktemp , and the file names are chosen so as to render duplication by other means unlikely. � ) - 2-

TRACK ( 3T ) ( AT&T UNIX PC only ) TRACK ( 3T ) NAME track - track mouse motion SYNOPSIS #include int track(w, trk, op, butptr, whyptr) int w, op, "'butptr, "'whyptr; track_t •trk; DESCRIPTION Track allows the process to define an arbitrary number of "mouse motion rectangles" and to learn when the mouse ventures into any of them. In addition, track monitors keyboard input and mouse button presses, returning each as appropriate. Each motion rectangle has an x,y address, a width and height, and an optional mouse icon to be displayed whenever the mouse is located in that rectangle. The first argument is the window descriptor. Trk is a pointer to a track structure (see below). Op is T_BEGIN to initialize the track operation, T_INPUT to accept mouse and keyboard input, and T_END to terminate a track operation. These may be combined to produce complex operations: T_BEGIN I TJNPUT will initialize and begin tracking, etc. Butptr and whyptr are pointers to return values. The int pointed to by butptr will receive the 3-bit integer corresponding to the current mouse button state. Whyptr points to an int which will receive the "reason" for the return-one of MSIN, MSUP, or MSDOWN. MSIN means the mouse has moved to a new rectangle (or the background), MSUP and MSDOWN report mouse button changes. The track structure controls track's operation: typedef struct { char t_flags; /* flags */ char t_scalex; /* x & y scaling */ char t_scaley; short t_lastx; /* last known x,y pos * / short t_lasty; struct icon *t_bicon; /* background icon * / struct umdata t_umdata; /* save the mouse data * / tkitem_t *t_tkitems; /* ptr to items * / tkitem_t *t_curi; /* ptr to current item * / } track_t; T_flags contains either or both of MSUP and/or MSDOWN, which enable mouse button reporting. If both flags are zero, button presses have no effect-only motion rectangle transitions wake the process. T_scalex and t_scaley determine the scaling factor for all the coordinates in the track items (see below). 1,1 gives unity scaling, allowing the application to specify pixel coordinates. Values of 0 for either scale parameter cause track to substitute the - 1 -

TRACK ( 3T ) ( AT&T UNIX PC only ) TRACK ( 3T )<br />

NAME<br />

track - track mouse motion<br />

SYNOPSIS<br />

#include <br />

int track(w, trk, op, butptr, whyptr)<br />

int w, op, "'butptr, "'whyptr;<br />

track_t •trk;<br />

DESCRIPTION<br />

Track allows the process to define an arbitrary number of "mouse<br />

motion rectangles" and to learn when the mouse ventures into any<br />

of them. In addition, track monitors keyboard input and mouse<br />

button presses, returning each as appropriate.<br />

Each motion rectangle has an x,y address, a width and height, and<br />

an optional mouse icon to be displayed whenever the mouse is<br />

located in that rectangle.<br />

The first argument is the window descriptor. Trk is a pointer to a<br />

track structure (see below). Op is T_BEGIN to initialize the track<br />

operation, T_INPUT to accept mouse and keyboard input, and<br />

T_END to terminate a track operation. These may be combined<br />

to produce complex operations: T_BEGIN I TJNPUT will initialize<br />

and begin tracking, etc. Butptr and whyptr are pointers to<br />

return values. The int pointed to by butptr will receive the 3-bit<br />

integer corresponding to the current mouse button state. Whyptr<br />

points to an int which will receive the "reason" for the<br />

return-one of MSIN, MSUP, or MSDOWN. MSIN means the<br />

mouse has moved to a new rectangle (or the background), MSUP<br />

and MSDOWN report mouse button changes.<br />

The track structure controls track's operation:<br />

typedef struct<br />

{<br />

char t_flags; /* flags */<br />

char t_scalex; /* x & y scaling */<br />

char t_scaley;<br />

short t_lastx; /* last known x,y pos * /<br />

short t_lasty;<br />

struct icon *t_bicon; /* background icon * /<br />

struct umdata t_umdata; /* save the mouse data * /<br />

tkitem_t *t_tkitems; /* ptr to items * /<br />

tkitem_t *t_curi; /* ptr to current item * /<br />

} track_t;<br />

T_flags contains either or both of MSUP and/or MSDOWN,<br />

which enable mouse button reporting. If both flags are zero, button<br />

presses have no effect-only motion rectangle transitions wake<br />

the process.<br />

T_scalex and t_scaley determine the scaling factor for all the<br />

coordinates in the track items (see below). 1,1 gives unity scaling,<br />

allowing the application to specify pixel coordinates. Values of 0<br />

for either scale parameter cause track to substitute the<br />

- 1 -

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!