
                                                       Wuerzburg, 03-Feb-93

                                ReqASK 1.0

                          Deutsche Dokumentation


Rechtliches
~~~~~~~~~~~

  ReqASK  und  alle  zugehoerigen Dateien unterliegen dem Urheberrecht 1993
bei  Marc  Heuler.   Dieses Programm ist Shareware.  Wenn Sie es moegen und
oft benutzen, zahlen Sie bitte die Shareware-Gebuehr von 10.- DM.

  Sie duerfen ReqASK unter folgenden Bedingungen verbreiten:

        · Verlangen Sie *nichts* fuer das kopieren, ausgenommen die Kosten
          fuer das Medium (z.B. Diskette) selbst.

        · Aendern Sie keine der diesem Programm zugehoerigen Dateien

        · Verbreiten Sie alle Dateien *zusammen*, also zusammengepackt in
          einem Archiv

        · Deutsche PD-Serien duerfen dieses Programm nicht vertreiben

        · Fred Fish mit seiner welt-bekannten Software Bibliothek muss sich
          um keine der genannten Bedingungen kuemmern.

  Dieses Programm ist, wie man so schoen sagt, "AS IS".  Das bedeutet, dass
Sie  es auf Ihr *eigenes* Risiko benutzen.  Es gibt keinerlei Garantie fuer
irgendetwas.   Ich  kann  lediglich sagen, dass wir es lange genug getestet
haben.

  Vielen  Dank  an  dieser  Stelle  an  Michael Herold, der mir sowohl beim
Beta-Testen  des  Programms  als  auch  bei  der  Erstellung der AmigaGuide
Anleitung behilflich war.



Was ist ReqASK?
~~~~~~~~~~~~~~~

  ReqASK  ist  ein leistungsfaehiger Ersatz fuer das Shell Komando ASK.  Es
wird komplett ueber die Maus bedient und hat die Aufgabe, dem Benutzer eine
Auswahl von Optionen zu bieten, aus denen der Benutzer dann eine auswaehlt.
Je  nach  dem  Ergebnis  (der  Wahl des Benutzers) kann dann eine bestimmte
Handlung  ausgeloest  werden.  Anders als aehnliche Programme bietet ReqASK
Ihnen  eine  grosse  Palette  von Features, um sich Ihren Beduerfnissen und
Erfordernissen anzupassen.

  Dieses   Programm   benutzt  und  benoetigt  Kickstart  2.04  (v37)  oder
aktueller.  Es braucht ausserdem die "reqtools.library" (von Nico François)
in  der  Version  38 oder aktueller, die als FD z.B.  auf Fish-Diskette 794
erhaeltlich ist.



Benutzung
~~~~~~~~~

  ReqASK  ist  ein Programm fuer das CLI bzw.  die Shell.  Ein Aufruf durch
die Workbench ist daher sinnlos.

   BODY/K

          Dies  ist  der Haupttext Ihres Requesters.  Wenn Sie diese Option
        aussparen,  werden  alle  weiteren  ignoriert und ein About Fenster
        angezeigt.

          Sie  koennen  alle  bekannten Kontroll Sequenzen innerhalb dieses
        Strings benutzen, zum Beispiel *N fuer eine neue Zeile, *" fuer das
        Anfuehrungszeichen.   Schlagen Sie in Ihrem AmigaDOS Handbuch nach,
        wenn Sie weitere Informationen benoetigen.

   GADGET/K

          Diese  Option definiert die Beschriftung der Gadgets.  Separieren
        Sie  mehrere  Auswahlmoeglichkeiten  durch  das  "|"-Zeichen.  Z.B.
        "Ja|Nein"  oder  vielleicht "Ja|Weiss nicht|Nein".  Sie koennen bis
        zu 100 Auswahlmoeglichkeiten benutzen.

          Wenn  Sie  Ihren  Requester  ueber die Tastatur steuern moechten,
        benutzen  Sie  das  Underscore-Zeichen  ("_"),  um  die  Tasten  zu
        kennzeichnen,   die   zur  Beantwortung  gedrueckt  werden  duerfen
        ("_Ja|_Weiss nicht|_Nein").

          Beachten Sie bitte, dass Sie mindestens eine der Optionen GADGET,
        IDCMP und TIMEOUT angeben muessen, sonst koennten Sie den Requester
        nicht beantworten.

   TITLE/K

          Dies ist der Titel Ihres Requesters.  Wenn Sie diese Moeglichkeit
        nicht  nutzen,  wird  entweder  "Information"  eingesetzt (wenn der
        Requester  weniger als 2 Auswahlmoeglichkeiten hat), oder "Request"
        (bei zwei oder mehr Wahlmoeglichkeiten).

   VAR=VARIABLE/K

          Hier  geben  Sie die Environment Variable an, in der das Ergebnis
        des  Requesters  uebergeben wird.  Lassen Sie dieses Schluesselwort
        weg, wird automatisch der Name "REQASK" vergeben.

   GLOBAL/S

          Wenn  Sie  dieses  Schluesselwort  angeben,  wird  Ihre  Ergebnis
        Variable global angelegt (erreichbar auch aus anderen Prozessen).

   TIME=TIMEOUT/N/K

          Ein  nettes  Feature  von ReqASK.  Sie koennen hier ein Zeitlimit
        angeben, nach dem sich der Requester automatisch schliesst (wenn er
        nicht  vorher  vom  Benutzer  beantwortet  wurde).  Die Einheit ist
        Sekunden.

          Beachten Sie bitte, dass Sie mindestens eine der Optionen GADGET,
        IDCMP und TIMEOUT angeben muessen, sonst koennten Sie den Requester
        nicht beantworten.

   SCREEN=PUBSCREENNAME/K

          Name  des  Oeffentlichen  Bildschirms, auf dem sich der Requester
        oeffnen soll.  Wenn Sie diese Option nicht angeben, oeffnet er sich
        auf dem Default Public Screen - im Normalfall auf der Workbench.

   FRONT=SCREENTOFRONT/K

          Wenn  Sie  diese  Option  auf  "YES"  oder "ON" stellen, wird der
        Screen,  auf  dem  sich  der  Requester oeffnet, automatisch in den
        Vordergrund   springen.    Nachdem   der   Benutzer  den  Requester
        beantwortet hat, geht der Screen wieder dorthin, wo er herkam.

          Um diese Option auszuschalten, waehlen Sie "NO" oder "OFF".

          Wenn   Sie   dieses   Schluesselwort   weglassen,  wird  auf  das
        ausgewichen, was Sie im Reqtools Voreinsteller ausgewaehlt haben.

   CENTER=NOCENTERTEXT/S

          ReqASK  zentriert  die  Zeilen  Ihres  Haupttextes  im  Requester
        automatisch.    Wenn   Sie  das  nicht  wollen,  geben  Sie  dieses
        Schluesselwort an.

   DEFRES=DEFAULTRESPONSE/N/K

          Normalerweise wird  bei mehreren  Gadgets  immer das  ganz  linke
        aktiviert,  wenn  Sie  im  Requester  einfach Return druecken.  Mit
        diesem  Schluesselwort koennen Sie eine andere Default Gadgetnummer
        angeben.

          Die Default Antwort wird auf dem Bildschirm fett geschrieben.

   FONT/K

          Ihr  Requester benutzt ueberlicherweise den Zeichensatz, der auch
        auf dem Bildschirm verwendet wird.  Wenn Sie einen anderen benutzen
        wollen,   geben   Sie   dieses  Schluesselwort  an.   Zum  Beispiel
        FONT="courier.font  13"  wuerde  den Courier Zeichensatz Groesse 13
        benutzen.    Beachten  Sie,  dass  der  Name  und  die  Groesse  in
        Anfuehrungszeichen eingeschlossen sein muessen.

   POS=POSITION/K

          Wie   auch  das  SCREENTOFRONT  Schluesselwort  fuehrt  auch  ein
        weglassen  dieses  Schluesselwortes  zum  im Reqtools Voreinsteller
        definierten Verhalten.

          Diese Option bestimmt die Position auf dem Bildschirm, an der der
        Requester  kommt.   Sie  koennen  eine der folgenden Moeglichkeiten
        waehlen:

                POINTER         Aktuelle Mausposition

                CENTERSCREEN    Mitte des sichtbaren Ausschnitts
                                des Screens

                TOPLEFTSCREEN   Open links im sichtbaren Ausschnitt
                                des Screens

   LEFT=POS_LEFTOFFSET/N/K

          Wenn  Sie  eine  Requester  Position  anders als POINTER gewaehlt
        haben,  koennen  Sie  hier  einen  horizontalen  Versatz  zu dieser
        Position  angeben.   Ansonsten  wird  der  Versatz aus dem Reqtools
        Voreinsteller benutzt.

   TOP=POS_TOPOFFSET/N/K

          Wenn  Sie  eine  Requester  Position  anders als POINTER gewaehlt
        haben, koennen Sie hier einen vertikalen Versatz zu dieser Position
        angeben.  Ansonsten wird der Versatz aus dem Reqtools Voreinsteller
        benutzt.

   RETURN=NORETURNKEY/S

          Wenn  Sie nicht wollen, dass Ihr Requester mit Return beantwortet
        werden kann, benutzen Sie dieses Schluesselwort.

   LAMG=LAMIGAONLY/S

          Fuer  Funktionen,  die vielleicht viel Schaden anrichten koennen,
        ist es sinnvoll, die abgekuerzte Anwahl zu verbieten.  Benutzen Sie
        dazu dieses Schluesselwort.  Sie muessen dann die linke Amiga-Taste
        zusammen  mit  "B" oder "V" druecken, um die positive oder negative
        Antwort zu waehlen.

   IDCMP/K

          Dies  ist  ein  anderes schoenes Feature von ReqASK.  Sie koennen
        bestimmte  IDCMP  Flaggen  angeben,  die  den Requester automatisch
        beenden.    Sie   koennen  eine  oder  mehrere  aus  den  folgenden
        auswaehlen:

                DISKINSERTED    Eine Disk wurde eingelegt

                DISKREMOVED     Eine Disk wurde herausgenommen

                INACTIVEWINDOW  Das Requesterfenster wurde deaktiviert.

          Beachten Sie bitte, dass Sie mindestens eine der Optionen GADGET,
        IDCMP und TIMEOUT angeben muessen, sonst koennten Sie den Requester
        nicht beantworten.

   BEEP=DISPLAYBEEP/S

          Wenn   Sie  Requester  oft  aus  Hintergrund  Prozessen  starten,
        moechten  Sie  vielleicht  ueber  einen  neuen Requester informiert
        werden.   Wenn Sie diese Option angeben, blinkt Ihr Bildschirm beim
        Oeffnen  des  Requesters  (und je nach Voreinstellungen des Systems
        spielt auch ein Ton).



ReqASK Ergebnis
~~~~~~~~~~~~~~~

  Das  Ergebnis von ReqASK ist aufgeteilt in zwei Teile.  Der erste ist der
CLI  Returncode,  der  ueber  einen  eventuellen  Fehler  informiert.   Ein
Returncode  von  0  sagt,  dass keine Fehler auftraten, ein Wert von 20 das
Gegenteil  (normalerweise  zusammen  mit  einer  naeheren  Beschreibung des
Fehlers in StdOut).

  Der zweite und mehr interessante Teil des Ergebnisses ist die Environment
Variable,  die  Informationen  ueber  die  Auswahl des Benutzers beinhaltet
(wenn  keine  Fehler auftraten).  Ein Wert von 0 steht fuer das ganz rechte
Gadget  (FALSE),  die  anderen  sind  von  links  nach  rechts  mit 1 bis N
durchnummeriert.

  Es  gibt  noch  zwei spezielle Werte fuer die Variable.  Ein Ergebnis von
100  bedeutet,  dass  das  Zeitlimit abgelaufen ist, ohne dass der Benutzer
eine  Wahl  getroffen  hat,  ein  Wert von 101 bedeutet, dass der Requester
aufgrund eines IDCMP-Ereignisses geschlossen wurde.

BEACHTE:   Im  Fehlerfalle  (CLI  Returncode  = 20) wird die Variable nicht
           veraendert.



Beispiele
~~~~~~~~~

  Tippen Sie diese Beispiele in Ihre Shell und sehen Sie, was passiert:

ReqASK

ReqASK BODY="Dieser Requester erinnert Sie*Nan den Geburtstag Ihrer Oma" GADGET="_Alles klar" TITLE="Nicht vergessen"

ReqASK BODY="Die aktuelle Systemzeit ist*N`Date`" TIME=10

ReqASK BODY="Entfernen Sie jetzt die Bootdisk!" IDCMP=DISKREMOVED POS=CENTERSCREEN



History
~~~~~~~

ReqASK 1.0  03-Feb-93  Erste Veroeffentlichung



Zukuenftige Erweiterungen
~~~~~~~~~~~~~~~~~~~~~~~~~

  Das einzige, was ich bisher vorhabe, in ReqASK noch einzubauen, ist ARexx
Unterstuetzung.   Das  ist  nuetzlich,  wenn z.B.  Samples zusammen mit UPD
abgespielt  werden  sollen,  waehrend  der  Requester  auf  dem  Bildschirm
erscheint.

  Zum  anderen  denke ich an weitere Ersatz-Befehle fuer ASK.  Zum Beispiel
ein  leistungsfaehiger  FileASK,  der  Sie  ueber einen File-Requester nach
einem  Dateinamen  fragt.   Oder ViewASK, das Sie ueber ein Listview Gadget
zwischen vielen Antworten auswaehlen laesst.

  Es  gibt  viele  kleine Dinge zu tun.  Wenn Sie sie demnaechst in die Tat
umgesetzt  sehen  wollen,  dann unterstuetzen Sie mich bitte durch Bezahlen
der Shareware Gebuehr.



Wie erreicht man den Autor?
~~~~~~~~~~~~~~~~~~~~~~~~~~~

  Um    Fehlerberichte,    Ideen,    Beschwerden,   und   natuerlich   Ihre
Shareware-Gebuehr von 10.- DM zu bezahlen, erreichen Sie mich unter:

        UUCP eMail: marc@aargh.adsp.sub.org

        ZNet eMail: marc%aargh.incubus@aworld.zer

        Snail Mail: Marc Heuler
                    Stephan Str. 6
                    8700 Wuerzburg
                    GERMANY

  Vergessen  Sie nicht, die Sharewaregebuehr zu zahlen, wenn Sie ReqASK oft
benutzen.


                                                                       Marc

