Topic : TOS - das Betriebssystem
Author :
Version : tos.hyp (5. März 2013)
Subject : Programmieren/Atari
Nodes : 3001
Index Size : 93602
HCP-Version : 5
Compiled on : Atari
@charset : atarist
@lang :
@default : Titel
@help :
@options : +g -i -s +x +zz -t4
@width : 70
View Ref-File8.12.6 graf_mouse TOS Name: »Graphics Mouse« - verändert die Darstellung des
Mauszeigers.
AES-Nummer: 78
Deklaration: int16_t graf_mouse ( int16_t gr_monumber, MFORM *gr_mofaddr );
Beschreibung: Die Funktion erlaubt es, das Aussehen des Mauszeigers
zu verändern. Für den Parameter gr_monumber gilt:
gr_monumber Bedeutung
ARROW 0 Pfeil
TEXT_CRSR 1 Textcursor
HOURGLASS 2 Sanduhr, Biene
BUSY_BEE 2 siehe HOURGLASS
BUSYBEE 2 siehe HOURGLASS
POINT_HAND 3 zeigende Hand
FLAT_HAND 4 flache Hand
THIN_CROSS 5 feines Fadenkreuz
THICK_CROSS 6 breites Fadenkreuz
OUTLN_CROSS 7 umrissenes Fadenkreuz
8 Sizer (N.AES)
X_LFTRT 8 left-right arrow (Geneva)
9 horizontal arrows (N.AES)
X_UPDOWN 9 up-down arrow (Geneva)
10 vertical arrows (N.AES)
USER_DEF 255 eigene Mausform
M_OFF 256 Mauszeiger ausschalten
M_ON 257 Mauszeiger einschalten
M_SAVE 258 aktuelle Mausform sichern
M_LAST 259 letzte Mausform herstellen
M_PREVIOUS 259 siehe M_LAST
M_RESTORE 260 vorherige Mausform herstellen
XACRS_BUBBLE_DISC 270 The Data Uncertain logo (XaAES)
XACRS_RESIZER 271 The 'resize window' cursors (XaAES)
XACRS_NE_SIZER 272 (XaAES)
XACRS_MOVER 273 The 'move window' cursor (XaAES)
XACRS_VERTSIZER 274 The 'resize vertically' cursor (XaAES)
XACRS_HORSIZER 275 The 'resize horizontally' cursor (XaAES)
XACRS_POINTSLIDE 276 The 'two-arrows pointing inwards'
cursor to pinpoint slider position(XaAES)
X_MRESET 1000 (Geneva)
X_MGET 1001 (Geneva)
X_SET_SHAPE 1100 (Geneva)
Im Fall gr_monumber = USER_DEF, ist gr_mofaddr ein
Zeiger auf die Struktur MFORM, die das Aussehen des
Mauszeigers festlegt.
Hinweis: Man sollte darauf achten, daß außerhalb des
Arbeitsbereichs des eigenen Fensters, der Mauszeiger
nur die Form eines Pfeils oder einer Sanduhr besitzt.
In the event that the application must change the mouse
form, set the highest bit ( Bit 15 ) of gr_monumber to
1 and OR in with the desired mouse form number. After
finishing the work, call the graf_mouse with value 0 to
set the mouse back to arrow.
M_FORCE 0x8000
Ob die Modi 258-260 zur Verfügung stehen, bzw. ob die
Mausform für jede Applikation lokal verwaltet wird,
kann per appl_getinfo (Opcode 8) abgefragt werden.
X_MRESET (1000) graf_mouse( X_MRESET, 0L );
Resets the mouse so that it is "on" just once, and
also updates graf_mouse's idea of the hide count.
X_MGET (1001) hidecount = graf_mouse( X_MGET, MFORM *mouse );
In this mode, if "mouse" is non-zero, then the
MFORM it points to is filled-in with the shape of
the last mouse set with graf_mouse(). "hidecount"
gets the number of times the mouse was hidden
using graf_mouse(M_OFF...). If this number is
greater than zero, the mouse is hidden that number
of times. If it is zero, the mouse is shown once.
If it is less than zero, the mouse is "shown" more
than once.
X_SET_SHAPE (1100) graf_mouse( X_SET_SHAPE+index, ANI_MOUSE *mouse_form );
Change the shape of the mouse form whose number is
"index". The ANI_MOUSE structure contains up to 32
mouse shapes to be animated in a continuous loop
while that particular mouse shape is being
displayed.
If the "frames" portion of the ANI_MOUSE structure
is one, then no animation is performed. Otherwise,
it should be the number of frames contained in the
mouse animation sequence. The "delay" value is the
number of 50 Hz timer tics to pause between each
frame in the animation. The "form" portion of the
structure only needs to be initialized for the
number of frames, so if there are only two frames,
this means that only form[0] and form[1] are used.
If a NULL pointer is passed, instead of a pointer
to an ANI_MOUSE structure, then the mouse shape is
restored to its default.
It does not matter if the application which sets a
new shape terminates without resetting the mouse
shape, as this call allocates memory internally to
hold the new shape data.
Ergebnis: Ein Fehler ist nur dann aufgetreten, wenn als Ergebnis
0 zurückgegeben wird.
Verfügbar: In allen AES Versionen.
Gruppe: Grafikfunktionen Querverweis: BindingMausklicks und Formen