home *** CD-ROM | disk | FTP | other *** search
- /***********************************************************************
- GADGET: "Fade" "6" AUTO TYP: "?"
-
- $DAT >>Fade.clssa<< 26.10.1992 - (C) ProDAD Holger Burkarth
- 20.01.1995 - (C) ProDAD Michael Christoph
-
- Der Fade-Macro erzeugt einen Blendeffekt in eine definierbare Farbe.
- Oft wird ein Fade nur in Verbindung mit der Farbe Schwarz benötigz.
- Hierzu stellt der Macro eine Abkürzung zur Verfügung.
- Möchte man aber eine Bezugsfarbe verwendet, so muß der User die Farbe
- auswählen. Eine gezielte Auswahl der Farbnummer kann im Farbrequester
- vorgenommen werden.
- ************************************************************************/
-
- Options Results
- Address clariSSA
-
- FailAt 10
- AltFail=RESULT
-
- GetArea
- PARSE VAR RESULT . "FROM" von "TO" bis .
- von=Strip(von)
-
- Anzahl=bis-von
- IF Anzahl>1 THEN DO
-
- DO FOREVER
- GetAnimInfo
- PARSE VAR RESULT . "FORMAT" x y t "VIEWMODE" ViewMode .
- AnzFarben=2**t - 1
-
- MSRequester "TITLE '*** Fade ***'",
- "''",
- "'Wählen Sie bitte die Faderichtung aus.'",
- "'IN bedeutet, daß sich die Farben mit'",
- "'laufender Animation normalisieren.'",
- "PTEXT 'Fade IN'",
- "'Fade OUT'"
- IF RC~=0 THEN LEAVE
- FadeIN=RESULT
-
- MSRequester "TITLE '*** Fade ***'",
- "''",
- "'Bezugsfarbe zur Fadebearbeitung wählen?'",
- "PTEXT 'Bezugsfarbe frei wählen'",
- "'Bezugsfarbe schwarz'",
- "'Bezugsfarbe weiß'"
- IF RC~=0 THEN LEAVE
-
- IF RESULT=1 THEN DO
- COLRequest "Register 0 TITLE '*** Fade ***''''Bezugsfarbe für den Fadeeffekt''festlegen.'"
- IF RC~=0 THEN LEAVE
- BezFarbe=RESULT
- GetColor BezFarbe
- PARSE VAR RESULT x BezR BezG BezB
- END
- ELSE IF RESULT=2 THEN DO
- BezR=0
- BezG=0
- BezB=0
- END
- ELSE IF RESULT=3 THEN DO
- BezR=255
- BezG=255
- BezB=255
- END
-
-
- l=0
- ListeG=""
- DO UNTIL l>AnzFarben
- ListeG=ListeG l
- l=l+1
- END
-
- BOOLRequest "'Animationsfarben ändern?''Anim: Master''<< von "von" bis "bis" >>'"
- IF RC~=0 | RESULT="NO" THEN LEAVE
-
- RequestStatus OFF
- DO UNTIL von>bis
- IF FadeIN=2 THEN fa=(1-(bis-von)/Anzahl)
- ELSE fa=(bis-von)/Anzahl
-
- ViewFrame COPS von
- IF RC~=0 THEN LEAVE
- l=0
- Liste=""
- GetColor ListeG
- ListeR=RESULT
- DO UNTIL ListeR=""
- PARSE VAR ListeR x r g b ListeR
- r=r+(BezR-r)*fa
- g=g+(BezG-g)*fa
- b=b+(BezB-b)*fa
- Liste=Liste x TRUNC(r) TRUNC(g) TRUNC(b)
- l=l+1
- END
- SetColor Liste
- Record COPS
- IF RC~=0 THEN LEAVE
- von=von+1
- END
- RequestStatus ON
-
- LEAVE
- END
- END
- ELSE Message "'Für einen Fade-Effekt müssen''min. 2 Frames ausgewählt werden.'"
-
- FailAt AltFail
- exit
-