home *** CD-ROM | disk | FTP | other *** search
- /* $VER: SlideShow.pwx 1.3 (23.5.94)
- **
- ** Ein relativ einfaches Diaschau-Programm.
- ** Um es benutzen zu können, muß ein Anzeigemodul
- ** ausgewählt sein. Unter Umständen kann es Schwierigkeiten
- ** bereiten, das Programm abzubrechen. Sollte dieser Fall
- ** eintreten, empfehlen wir, ein Shell-Fenster zu öffnen
- ** und den Befehl "hi" einzutippen. "hi" steht für "Halt
- ** interrupt" und bricht alle gerade laufenden ARexx-Programme
- ** ab. Das "hi"-Programm befindet sich üblicherweise in der
- ** "Rexxc"-Schublade Ihrer Systempartition.
- **
- ** Geschrieben von Olaf Barthel
- */
-
- /* Befehlsergebnisse zugänglich machen. */
-
- options results
-
- /* Fehler sollten abgefangen werden. */
-
- options failat 100
-
- /* Falls ein Abbruchsignal eingeht, soll aufgeräumt werden. */
-
- signal on halt
- signal on break_c
- signal on break_d
- signal on break_e
- signal on break_f
-
- /* Fensteraktivierungsoption merken. */
-
- getattr application field activate
-
- activation = result
-
- /* Anzeigeoption merken. */
-
- getattr settings field photoviewonly
-
- viewonly = result
-
- /* "Nur anzeigen" Option aktivieren. */
-
- setattr settings field photoviewonly val off
-
- /* Kontaktabzuginformationen der gerade eingelegten
- * Photo CD aulesen.
- */
-
- getattr contactsheet name cd stem contactsheet
-
- /* Soweit alles in Ordnung? */
-
- if rc = 0 then do
-
- /* Fensteraktivierung abschalten. */
-
- setattr application field activate val on
-
- /* Benutzeroberfläche für Eingaben sperren. */
-
- lockgui
-
- /* Ein schwarzer Bildschirmhintergrund wird erzeugt. */
-
- backdrop on
-
- /* Fensteraktivierung einschalten. */
-
- setattr application field activate val off
-
- /* Alle Fotos anzeigen. */
-
- do i = contactsheet.first to contactsheet.last
-
- /* Das Foto wird in der Base/4-Auflösung geöffnet. */
-
- open number i size base4 hidden nodisplay
-
- /* Nach Fehler oder Abbruchmeldung schauen. */
-
- if rc > 0 then do
- if rc ~= 5 then do
- /* Fehlernummer auslesen. */
-
- fault photoworx.lasterror
-
- /* Fehlermeldung ausgeben. */
-
- requestnotify result
- end
-
- break
- end
-
- /* Name des eben geöffneten Fotos auslesen. */
-
- loadedproject = result
-
- /* Das Foto etwa fünf Sekunden lang anzeigen. */
-
- view project loadedproject timeout 5
-
- /* Das eben geladene Foto wird freigegeben.
- * Hinweis: dies schließt auch alle anderen
- * Projekte gleichen Namens.
- */
-
- close project loadedproject force
- end
-
- /* Benutzeroberfläche wieder zugänglich machen. */
-
- unlockgui
-
- /* Der schwarze Bildschirmhintergrund wird abgeschaltet. */
-
- backdrop off
- end; else do
-
- /* Fehlernummer auslesen. */
-
- fault photoworx.lasterror
-
- /* Fehlermeldung erzeugen. */
-
- if symbol('RESULT') == "VAR" then do
- message = "Es kann kein Kontaktabzug gelesen werden." result
- end; else do
- message = "Es kann kein Kontaktabzug gelesen werden."
- end
-
- /* Hinweis ausgeben. */
-
- requestnotify message
- end
-
- /* Funktionswerte wiederherstellen. */
-
- setattr application field activate val activation
- setattr settings field photoviewonly val viewonly
-
- /* Dieses Programm beenden. */
-
- exit 0
-
- /* Zu dieser Stelle springt das Programm, falls ein
- * Fehler aufgetreten ist.
- */
-
- halt:
- break_c:
- break_d:
- break_e:
- break_f:
-
- /* Benutzeroberfläche wieder zugänglich machen. */
-
- unlockgui
-
- /* Der schwarze Bildschirmhintergrund wird abgeschaltet. */
-
- backdrop off
-
- /* Funktionswerte wiederherstellen. */
-
- setattr application field activate val activation
- setattr settings field photoviewonly val viewonly
-
- /* Dieses Programm beenden. */
-
- exit 0
-