Topic : The ATARI Compendium
Author : Scott Sanders / JAY Software
Version : 1.25 (20/6/2003)
Subject : Documentation
Nodes : 1117
Index Size : 32614
HCP-Version : 6
Compiled on : Atari
@charset : UTF-8
@lang : en
@default :
@help : %About
@options : +g -i -t4 +y +z
@width : 100
View Ref-Filevsc_form()Graphics Librarygraf_mouse() AESSyntaxWORD graf_mouse( mode, formptr )
WORD mode;
VOIDP formptr;
Function graf_mouse() alters the appearance of the mouse form and
can be used to hide and display the mouse pointer from the
screen.
Opcode 78 (0x4E)
Availability All AESversions.
Parameters mode is defined as follows:
mode # Meaning Shape
ARROW 0 Change the current
mouse cursor shape.
TEXT_CRSR 1 Change the current
mouse cursor shape.
BUSY_BEE 2 Change the current
mouse cursor shape.
POINT_HAND 3 Change the current
mouse cursor shape.
FLAT_HAND 4 Change the current
mouse cursor shape.
THIN_CROSS 5 Change the current
mouse cursor shape.
THICK_CROSS 6 Change the current
mouse cursor shape.
OUTLN_CROSS 7 Change the current
mouse cursor shape.
USER_DEF 255 Change the current Form is defined
mouse cursor shape. below.
M_OFF 256 Remove the mouse No shape change.
cursor from the
screen.
M_ON 257 Display the mouse No shape change.
cursor.
M_SAVE 258 Save the current No shape change.
mouse form in an AES provided buffer.
Check appl_getinfo() for the presence of
this feature.
M_LAST 259 Restore the most Changes the shape
recently saved mouse as indicated.
form. Check
appl_getinfo() for
the presence of this
feature.
M_RESTORE 260 Restore the mouse Changes the shape
form to its last as indicated.
shape. Check
appl_getinfo() for
the presence of this
feature.
If mode is equal to USER_DEF, formptr must point to a MFORM structure as defined below (if mode is different than
USER_DEF, formptr should be NULL):
typedef struct {
short mf_xhot;
short mf_yhot;
short mf_nplanes;
short mf_fg;
short mf_bg;
short mf_mask[16];
short mf_data[16];
} MFORM;
mf_xhot and mf_yhot are the location of the mouse
'hot-spot'. These values should be in the range 0 to 15 and
define what offset into the bitmap is actually the 'point'.
mf_nplanes specifies the number of bit-planes used by the
mouse pointer. Currently, the value of 1 is the only legal
value.
mf_fg and mf_bg are the mask and data colors of the mouse
specified as palette indexes. Usually these values will be
0 and 1 respectively.
mf_mask is an array of 16 WORD's which define the mask
portion of the mouse form. mf_data is an array of 16 WORD's
which define the data portion of the mouse form.
As of AES 4.0 and beyond, the AES may not allow a mouse
form to change to benefit another application. If it is
absolutely necessary for the application to display its
mouse form, logically OR the mode parameter with M_FORCE
(0x8000) and make the call.
This will force the AES to change to your mouse form. It
should, however, be done within the scope of
a wind_update() sequence.
Binding intin[0] = mode;
addrin[0] = formptr;
return crys_if(0x4E);
Return Value graf_mouse() returns a 0 if an error occurred or non-zero
otherwise.
Caveats There is currently no defined method of handling an error
generated by this function.
See Also vsc_form()Group Graphics Library