*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+* *+ +* *+ Snooze - ZZ-Mauszeiger setzen/löschen +* *+ +* *+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+* *+ +* *+ Modification History: +* *+ -------------------- +* *+ +* *+ 17-Dec-87 CHW Created this file! +* *+ 20-Jan-90 CHW Uses w->UserData instead of static var -> reentrant +* *+ +* *+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+* IDNT Snooze SECTION text,CODE INCLUDE "exec/macros.i" INCLUDE "intuition/intuition.i" XREF _IntuitionBase XDEF @Snooze,@UnSnooze ************************************************************************** ** ** ** Snooze - Mauszeiger für bestimmtes Window auf zz setzen ** ** und Menus abschalten ** ** ** ** WARNUNG: Benutzt wd_UserData als Zwischenspeicher für MenuStrip ** ** ** ** Parameter : A0.L : Adresse der Window-Struktur ** ** Resultat : ALLE REGISTER BLEIBEN ERHALTEN ** ** ** ************************************************************************** @Snooze: movem.l d0-d3/a0-a2/a6,-(SP) movea.l a0,a2 ; A2 : WindowPtr *+* Snooze-Pointer anzeigen movea.l a2,a0 ; Window lea SnoozeDaten,a1 ; Snooze-Pointer moveq #24,d0 ; Height moveq #16,d1 ; Width moveq #-8,d2 ; Xoffset moveq #-3,d3 ; Yoffset movea.l _IntuitionBase,a6 JSRLIB SetPointer 98$: movea.l a2,a0 ; Window move.l wd_MenuStrip(a0),wd_UserData(a0) JSRLIB ClearMenuStrip ; Menus disable 99$: movem.l (SP)+,d0-d3/a0-a2/a6 rts ************************************************************************** ** ** ** UnSnooze - Mauszeiger für bestimmtes Window wieder zurücksetzen ** ** und Menus wieder anschalten ** ** ** ** Parameter : A0.L : Adresse der Window-Struktur ** ** Resultat : ALLE REGISTER BLEIBEN ERHALTEN ** ** ** ************************************************************************** @UnSnooze: movem.l d0-d1/a0-a2/a6,-(SP) movea.l a0,a2 movea.l _IntuitionBase,a6 JSRLIB ClearPointer movea.l a2,a0 ; Window movea.l wd_UserData(a2),a1 ; Geretteter MenuStrip JSRLIB SetMenuStrip movem.l (SP)+,d0-d1/a0-a2/a6 rts SECTION datachip,DATA_C SnoozeDaten: dc.w $0000,$0000 dc.w $0600,$0000,$0F40,$0600,$3FE0,$0F40 dc.w $7FF0,$3FE0,$FFF0,$7FE0,$E1F8,$7FF0 dc.w $FBFC,$7FF8,$F7FC,$FFF8,$E1FE,$7FFC dc.w $FF0E,$7FFC,$7FDE,$3FFE,$FFBE,$7FFC dc.w $7F0E,$3FFC,$3FFC,$1FF8,$1FF8,$07F0 dc.w $07F0,$01C0,$0FC0,$0700,$1FE0,$0FC0 dc.w $0FC0,$0680,$07C0,$0000,$03E0,$01C0 dc.w $07F0,$03E0,$03E0,$00C0,$00C0,$0000 dc.w $0000,$0000 END