Annotation of researchv10dc/man/adm/man9/button.9, revision 1.1

1.1     ! root        1: .TH BUTTON 9.2
        !             2: .CT 2 comm_term
        !             3: .SH NAME
        !             4: button123, mouse, cursallow, cursinhibit, cursset, cursswitch, getrect123 \- mouse control
        !             5: .SH SYNOPSIS
        !             6: .B #include <jerq.h>
        !             7: .PP
        !             8: .B extern struct Mouse {
        !             9: .br
        !            10: .B "    Point xy;
        !            11: .br
        !            12: .B "    short buttons;
        !            13: .br
        !            14: .B } mouse;
        !            15: .PP
        !            16: .B int button(n)
        !            17: .B int n;
        !            18: .br
        !            19: .B int button1(), button2(), button3();
        !            20: .br
        !            21: .B int button12(), button23(), button123();
        !            22: .PP
        !            23: .B void cursinhibit();
        !            24: .br
        !            25: .B void cursallow();
        !            26: .PP
        !            27: .B void cursset(p);
        !            28: .B Point p;
        !            29: .PP
        !            30: .B Texture *cursswitch(t);
        !            31: .B Texture *t;
        !            32: .PP
        !            33: .B Rectangle getrect(n)
        !            34: .B int n;
        !            35: .br
        !            36: .B Rectangle getrect1(), getrect2(), getrect3();
        !            37: .br
        !            38: .B Rectangle getrect12(), getrect23(), getrect123();
        !            39: .SH DESCRIPTION
        !            40: When the mouse is requested
        !            41: (see
        !            42: .IR request (9.2)),
        !            43: the mouse state is updated asynchronously in the structure
        !            44: .BR mouse .
        !            45: The coordinates of the mouse are held in
        !            46: .BR mouse.xy ,
        !            47: and the state of the buttons in
        !            48: .BR mouse.buttons .
        !            49: Each process's
        !            50: .B mouse
        !            51: structure is independent of the others, so that
        !            52: (except for
        !            53: .IR cursset )
        !            54: actions such as
        !            55: changing the tracking cursor do not affect the mouse in
        !            56: other processes.
        !            57: .PP
        !            58: The macro
        !            59: .I button
        !            60: and its counterparts return the state of the associated mouse button:
        !            61: non-zero if the button is depressed, 0 otherwise.
        !            62: The buttons are numbered 1 to 3 from left to right.
        !            63: .I Button12
        !            64: and the other multi-button functions return the
        !            65: OR
        !            66: of their states: true if either button 1 or
        !            67: button 2 is depressed.
        !            68: .PP
        !            69: .I Cursinhibit
        !            70: turns off interrupt-time cursor tracking
        !            71: (the drawing of the cursor on the screen),
        !            72: although the mouse coordinates are still kept current
        !            73: and available.
        !            74: .I Cursallow
        !            75: enables interrupt-time cursor tracking.
        !            76: .I Cursallow
        !            77: and
        !            78: .I cursinhibit
        !            79: stack: to enable cursor tracking after two calls to
        !            80: .IR cursinhibit ,
        !            81: two calls to
        !            82: .I cursallow
        !            83: are required.
        !            84: .PP
        !            85: .I Cursset
        !            86: moves the mouse cursor to the Point
        !            87: .I p.
        !            88: .PP
        !            89: .I Cursswitch
        !            90: changes the mouse cursor (a 16\(mu16 pixel image) to that specified by the
        !            91: Texture
        !            92: .BI * t.
        !            93: If the argument is
        !            94: .BR (Texture*)0 ,
        !            95: the cursor is restored to the default arrow.
        !            96: .I Cursswitch
        !            97: returns the previous value of the cursor: the argument of the previous
        !            98: call to
        !            99: .I cursswitch.
        !           100: .PP
        !           101: .I Getrect
        !           102: prompts the user with a box cursor and waits for a
        !           103: rectangle to be swept out with the named button,
        !           104: identified as with the
        !           105: .I button
        !           106: primitives.
        !           107: It returns the screen coordinates of the box swept.
        !           108: The box may be partly or wholly outside the process's layer.

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.