|
|
1.1 root 1: .TH PT2WIN 3L "630 MTG"
2: .XE "point2window()"
3: .SH NAME
4: pt2win: point2window \- find process table address of a window
5: .SH SYNOPSIS
6: .ft B
7: #include <dmd.h>
8: .br
9: Proc \(**point2window (btn)
10: .br
11: int btn;
12: .SH DESCRIPTION
13: The
14: .I point2window
15: function implements the user interface for pointing to windows that
16: are used by the Reshape, Move, Top, etc. functions of the 630 MTG
17: main button 3 menu.
18: .PP
19: When
20: .I point2window
21: is called by an application program,
22: the mouse cursor changes to a target icon.
23: The function then busy waits for the user to move the mouse
24: cursor into a window and press the button specified by \fIbtn\fR.
25: When this happens, the mouse cursor will change back to the
26: previous mouse cursor, and the process table address of the window
27: pointed to will be returned.
28: .PP
29: The function will return (Proc *)0 if the user either clicks
30: button \fIbtn\fR while the target is over background
31: texture or clicks a mouse button other than button \fIbtn\fR.
32: .SH EXAMPLE
33: The follow subroutine will flash a window pointed to with button 3.
34: Note that in the following code, \fIp->layer\fR is equivalent
35: to &\fIdisplay\fR for process p and that \fIp->rect\fR is equivalent
36: to \fIDrect\fR for process p.
37: .PP
38: .RS 3
39: .nf
40: .ft CM
41: #include <dmd.h>
42:
43: flash()
44: {
45: Proc *p;
46: Proc *point2window();
47:
48: p = point2window(3);
49: if(p) {
50: rectf(p->layer, p->rect, F_XOR);
51: nap(20);
52: rectf(p->layer, p->rect, F_XOR);
53: }
54: }
55: \fR
56: .fi
57: .RE
58: .SH SEE ALSO
59: globals(3R), rectf(3R), sleep(3R).
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.