

MultiDialog fr Atari TOS-Rechner          GEM-Dialoge und Multitasking
Anleitung fr die Versionen ab 1.03        von Helmut Neukirchen
Stand: 22. Dezember 1993                   (c) 1992-93, alle Rechte vorbehalten



                                           Inhaltsverzeichnis:

                                       I.  Schnellstart fr Neugierige

                                      II.  Einleitung

                                     III.  MultiDialog in der Praxis

                                      IV.  Installation

                                       V.  Konfiguration

                                      VI.  Tastaturbedienung               +

                                     VII.  Einschrnkungungen und
                                           zuknftige Versionen

                                    VIII.  GEM-Programmierer und
                                           MultiDialog

                                      IX.  Fragen und Antworten

                                       X.  Vertrieb, Rechtslage


                     Zu dieser Anleitung:

            Eine Zusammenfassung erhalten Sie, indem Sie nur die Textstellen 
                    lesen, die eingerckt und rechtsbndig geschrieben sind.

Inhaltliche Neuerungen in der Anleitung gegenber lteren Anleitungen sind +
                        (wie hier) mit '+' am rechten Rand gekennzeichnet. +
                                   +       : Neu seit 20.12.93
                                     
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>  I. Schnellstart fr Neugierige

             -  MULTDIAL.PRG starten

             -  Die Dialogboxen aller Programme sollten nun 
                in Fenstern erscheinen. 
                (Falls nicht, findet man die Grnde in Kapitel VII.)

Dauerhafte Installation:                                                   +

             - MULTDIAL.PRG in den AUTO-Ordner kopieren                    +
             - wenn Tastaturbedienung gewnscht ist:                       +
               LETEMFLY.PRG (nicht im Programmpaket enthalten)             +
               ebenfalls in den AUTO-Ordner kopieren                       +
             - MULTDIAL.CPX in den CPX-Ordner kopieren                     +


>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>  II.  Einleitung

Wir befinden uns im Jahre 1993 n. Chr. Das ganze Multitasking auf dem ST
ist von Dialogboxen lahmgelegt... Das ganze Multitasking ? Nein! Ein von 
einem unbeugsamen Programmierer entwickeltes Programm hrt nicht auf, den 
Dialogboxen Widerstand zu leisten.

Was wollen uns diese Worte sagen ?

                  Sobald eine Dialogbox auf dem Bildschirm dargestellt wird,
                 steht fr alle anderen Applikationen, die ebenfalls auf den
                    Bildschirm ausgeben wollen, das Multitasking komplett!!!

Aus dem - ach so schnen - Multitasking-Betriebssystem wird zu diesem Zeit-
punkt wieder fast ein Singletasking-Betriebssystem, das wertvolle Zeit damit
verbringt, tatenlos in einer Schleife zu warten, bis der Benutzer nun 
endlich den Dialog beendet!

Doch das mu nicht sein:

Was Atari bei der Implementierung des Multitasking-AES vergessen hat, wird 
nun durch MultiDialog nachgeholt:

       Dialogboxen vorhandener GEM-Applikationen erscheinen in GEM-Fenstern;
         MultiDialog ermglicht so uneingeschrnktes Multitasking unter GEM.

(naja, ATARI wird es wohl nicht vergessen haben, sondern die Implementierung
verworfen haben, da es Inkompatibilitten gibt (s. Kapitel VII.), die sich
ATARI nicht leisten kann.)


Mittlerweile drfte klargeworden sein, da MultiDialog hauptschlich fr 
ein Multitasking-TOS gedacht ist:

Entsprechend wurde es auch unter MultiTOS getestet (auf ST, TT und FALCON).
Unter MultiGEM und Mag!X 1.xx luft es wohl ebenfalls, mit Mag!X 2.xx      +
jedoch z.Z. definitiv nicht!                                               +
Hat jemand Erfahrung mit Geneva ? (Nein, nicht mit Genever! ;-)            +

Im brigen luft MultiDialog auch auf den altbekannten TOS-Versionen, 
allerdings drfte es dort nur im Zusammenspiel mit Accessories sinnvoll
zum Einsatz kommen. Auerdem ist es dort nicht sehr gut getestet!



>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>  III. MultiDialog in der Praxis

Was macht MultiDialog ?

MultiDialog verankert sich im Betriebssystem und sorgt bei beliebigen GEM-
Applikationen dafr, da deren Dialoge komplett in Fenstern abgewickelt 
werden. Unter einem Multitasking GEM knnen daher andere Applikationen 
ungehindert weiterlaufen. Solche Dialoge kennen einige vielleicht bereits
von anderen, neueren Applikatonen, wo Dialogboxen in Fenstern bereits 
"serienmig" vorzufinden sind. MultiDialog macht dasselbe, halt nur mit 
beliebigen GEM-Applikationen.

Der Begriff "beliebige GEM-Applikationen" mu an dieser Stelle allerdings 
sofort wieder relativiert werden, da es tatschlich viele Programme gibt, 
bei denen MultiDialog keine Wirkung zeigt. Ist das bei einem Programm der 
Fall, so wird der entsprechende Dialog wie bisher gewohnt durchgefhrt, mit 
der Konsequenz, da das Multitasking lahmgelegt ist.
(Nheres dazu in Kapitel VII. "Einschrnkungen und zuknftige Versionen")


Was ndert sich in der Praxis ?

Die Bedienung der Dialoge erfolgt wie gewohnt und doch gibt es einige 
Neuerungen:

        Die Dialogboxen mssen nicht mehr unbedingt in der Mitte erscheinen:

Bisher erschienen die Dialogboxen genau in der Bildschirmmitte. Insbesondere 
auf Grobildschirmen ist das jedoch sehr lstig, da dann die Wege, die man 
mit dem Mauszeiger zurcklegen mu, sehr gro werden. MultiDialog bietet die 
Mglichkeit, die Dialogbox an anderen Positionen erscheinen zu lassen.


                                     Die Dialogboxen erscheinen in Fenstern:

Je nach Einstellung (s. Kapitel V. "Konfiguration") heit das fr die Optik,
da die Dialogboxen am oberen Rand den bekannten Bewegungs- und Namensbalken 
eines Fensters besitzen oder auch nur zustzlich den Fensterrand samt 
Schatten "verpat" bekommen. Das heit aber auch, da die Gesamtausmae 
einer Dialogbox grer werden knnen, so da sie evtl. nicht mehr 
komplett auf den Bildschirm pat. Im Extremfall ist dann die unterste 
Zeile im Dialog nicht mehr sichtbar.
Dialog-Fenster, die von MultiDialog fr Dialoge geffnet wurden, besitzen
also bei entsprechender Einstellung den Titel " MultiDialog: <app_name> ", 
wobei <app_name> der Name des Programms ist, von dem der Dialog stammt. 
(Wenn Sie kein MultiTOS benutzen, erscheint bei Accessories der 
Name "Accessory".)

Da das Fenster bei entsprechender Einstellung einen Bewegungsbalken besitzt, 
kann damit die gesamte Dialogbox veschoben werden. Die Dialoge knnen auerdem 
verschoben werden, indem man auf den Hintergrund einer Dialogbox klickt, um 
diese dann mit gedrckter Maustaste zu verschieben.
(Das funktioniert allerdings nur, wenn das betreffende Programm 
form_dial-Aufrufe benutzt.)
                               MultiDialog macht somit FlyDials berflssig!
 
 
Aber das Schnste ist:

                 Whrend der Dialogbehandlung luft das Multitasking weiter:

Das heit, die Menleiste ist weiterhin zugnglich. Man kann dann z.B. ein 
Accessory oder eine andere Applikation anwhlen und damit arbeiten. Ebenso 
ist es mglich, die Fenster oder das Desktop der anderen Applikationen zu 
manipulieren. Jegliche Aktionen mit der Menleiste oder den Fenstern der 
Applikation, die gerade den Dialog durchfhrt, sind jedoch nicht mglich. 
Man kann zwar deren Meneintrage auswhlen oder versuchen, deren Fenster zu 
verndern, allerdings erfolgt darauf keine Reaktion. Das ist erst wieder 
mglich, wenn der entsprechende Dialog abgeschlossen wird.
Alle anderen Fenster der dazugehrigen Applikation knnen nicht aktiviert 
werden, solange dieser Dialog stattfindet. 
Kurz:
                   Mit einer Applikation kann erst wieder gearbeitet werden, 
                                              wenn deren Dialog beendet ist.
 


>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>  IV.  Installation

Die Installation von MultiDialog gestaltet sich sehr einfach:

                      Kopieren Sie die Datei MULTDIAL.PRG in den AUTO-Ordner
                         Ihres Bootlaufwerks. Beim nchsten Systemstart wird
                                            es dann automatisch eingebunden.

Nach der Installation knnen Sie MultiDialog konfigurieren. 
Seit der Version 1.03 wird hierzu ein CPX-Modul fr das erweiterte         +
Kontrollfeld XCONTROL verwendet. Sie bentigen also das Programm bzw.      +
Accessory XCONTROL.PRG/XCONTROL.ACC, um das CPX-Modul MULTDIAL.CPX         +
aufzurufen.                                                                +
                              Kopieren Sie die Datei MULTDIAL.CPX in Ihren +
                                                      CPX-Verzeichnispfad. +

Hinweis fr MiNT/MultiTOS-Benutzer:
Ob Sie MULTDIAL.PRG vor oder nach MINT.PRG in den AUTO-Ordner kopieren,
sollte eigentlich egal sein (die Programmflags fr die Memory-Protection 
mssen jedoch auf GLOBAL eingestellt sein). Ich empfehle jedoch, es nach
MINT.PRG zu starten.

Seit der Version 1.03 ist eine Tastaturbedienung der Dialoge, die          +
MultiDialog abgefangen hat, mglich. Hierzu mu auerdem das Programm      +
Let'em Fly von Oliver Scheel installiert sein.                             +
                                   Die Datei LETEMFLY.PRG sollte sich dazu +
                                 vor MULTDIAL.PRG im AUTO-Ordner befinden. +

       Schalten Sie bitte mit den zu Let'em Fly gehrenden Konfigurations- +
            programmen Let'em Fly aus und speichern Sie diese Einstellung. +

(MultiDialog schaltet Let'em Fly zwar von selbst ab, aber sicher ist       +
sicher...)                                                                 +
Getestet wurde bisher Let'em Fly 1.20; es wird empfohlen, immer die        +
jeweils neueste Version zu verwenden.                                      +

Weitergehende Informationen zur Tastaturbedienung und Let'em Fly finden    +
Sie im Kapitel VI. "Tastaturbedienung".                                    +


>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>  V.  Konfiguration

                            Seit der Version 1.03 ist MultiDialog nur ber +
                             das erweiterte Kontrollfeld zu konfigurieren. +
                             
Wenn Sie - wie in Kapitel IV. "Installation" beschrieben - das CPX-Modul   +
MULTDIAL.CPX installiert haben, finden Sie im erweiterten Kontrollfeld     +
den Eintrag "MultiDialog", den Sie mit einem Doppelklick ffnen knnen.    +

Wenn MultiDialog installiert ist, erscheint nun der Konfigurationsdialog.  +
(Andernfalls mu zunchst MULTDIAL.PRG gestartet werden, um MultiDialog    +
zu installieren. Diesen Fall teilt das Modul dem Benutzer aber mit.)       +

Wie bei CPX-Modulen blich, erfolgen alle Auswahlen ber sogenannte        +
Popup-Mens. Sie werden bedient, indem man mit der Maus auf sie klickt     +
und dann den gewnschten Eintrag aus der daraufhin erscheinenden Liste     +
auswhlt.                                                                  +

In der obersten Zeile wird die Versionsnummer des installierten            +
MultiDialog angezeigt. (MultiDialog 1.02 wird aufgrund eines Fehlers       +
brigens noch als 1.01 gemeldet.)                                          +


                                                                   "An/Aus":
                                          (MultiDialog ein- und ausschalten)

Rechts daneben befindet sich ein Popup, mit dem MultiDialog abgeschaltet 
werden kann. MultiDialog ist dann zwar immer noch im Betriebssystem 
eingeklinkt, aber alle weiteren Aufrufe, die MultiDialog sonst abfangen
wrde, werden ignoriert und einfach ans Betriebssystem durchgereicht.


Whrend dieser Schalter von globaler Wirkung ist, knnen sich alle 
weiteren Schalter auf einzelne Applikationen beziehen (s.u.):

(Die Bedeutung der einzelnen Einstellungen wird sich dem Nicht-Programmierer 
nicht so schnell erschlieen, da sie sehr technischer Art sind. Die meisten 
Einstellungen mssen aber sowieso nie verndert werden, da sie standard-
mig auf der sinnvollsten Stellung stehen.)

Da nicht alle Einstellungen gleichzeitig angezeigt werden knnen, kann mit +
dem Rollbalken auf der rechten Seite der aktuelle Auschnitt verndert      +
werden.

Im einzelnen sind das folgende Einstellungen:


                                        "FormCenter  immer/Mitte/Maus/Ecke":
                                                  (Position der Dialogboxen)

Diese Schalter beziehen sich auf den Ort, an dem eine Dialogbox erscheint.
(der Name stammt von der GEM-Funktion form_center, mit der Applikationen
ihre Dialogboxen positionieren knnen.)
Normalerweise erscheinen Dialogboxen immer in der Mitte des Bildschirms;
auf Ganzseitenbildschirmen kann das aber auf Dauer ziemlich strend sein,
da man die Maus erst mehrere Kilometer ;-) bewegen mu, um den Dialog
bedienen zu knnen. MultiDialog kann dies lindern, indem es mehrere
Alternativen anbietet, die Dialogbox zu positionieren. In der Stellung
"Ecke" wird die Dialogbox in der linken oberen Ecke (also in der Nhe der
Menleiste) erscheinen, in der Stellung "Maus" sucht die Dialogbox die
Nhe des Mauszeigers. Ist "Mitte" eingestellt, so erscheint die Dialogbox
- wie gewohnt - in der Mitte, allerdings merkt sich MultiDialog die
Position der Dialogboxen, so da sie an der Stelle erscheinen, an der Sie 
sie zuletzt positioniert haben. Im Gegensatz zu den bisher aufgefhrten 
Mglichkeiten, verhlt sich "immer" nicht so. Hier erscheint die Dialogbox 
immer in der Mitte des Bildschirms, egal wo sie sich beim letzten Mal 
befand.
Sollten Sie irgendwelche Probleme mit Dialogboxen haben, die nicht ganz
sichtbar sind, weil sie z.B. aus dem Bildschirm ragen, stellen Sie hier
"immer" ein. Dann wird die Routine benutzt, die auch ohne MultiDialog
verwendet wrde.


                                               "FormDial  Fenster/Normal": +
                                      ('saubere' Dialoge in Fenster legen) +

Hiermit kann eingestellt werden, ob Dialoge die ber saubere Programmier-  +
aufrufe eingeleitet werden, in Fenster umgeleitet oder wie gewohnt dar-    +
gestellt werden sollen.                                                    +
(Der Name stammt von der GEM-Funktion form_dial, mit der Dialogboxen 
angekndigt werden sollen.)
Sollten Sie feststellen, da nach Beendigung eines Dialogs das Fenster
"tot" zurckbleibt und nicht gelscht wird, so stellen Sie bitte den
Schalter "FormDial" auf "Normal" und verwenden Sie stattdessen die 
Einstellung "FormDo  Fenster", die dieses Problem nicht aufwirft.
(Lesen Sie dazu auch das Kapitel VIII. "Fragen und Antworten".)


                                                 "FormDo  Fenster/Normal": +
                               (auch 'unsaubere' Dialoge in Fenster legen) +

Da es einige Programme gibt, die keine form_dial-Aufrufe ttigen,gibt es 
auerdem noch die Mglichkeit, mittels "FormDo" auch diese in den
Genu von Fenstern kommen zu lassen. (mittels form_do knnen Programme
einen Dialog bedienen lassen.) Dialogboxen, die erst durch die Einstellung 
"FormDo" in Fenster gelangen, sind allerdings nicht so bequem zu Bedienen, 
wie diejenigen bei denen "FormDial" gengt. Zum einen knnen deren Fenster 
nicht verschoben werden, zum anderen wird das Fenster zu Anfang jedes 
FormDo-Aufrufs geffnet und bei dessen Ende geschlossen.
Daraus resulieren zwei Nachteile:
In vielen Dialogen kann der Benutzer Eintrge in der Dialogbox ber Pfeile 
o.. scrollen (z.B. im IKONEN ANMELDEN Dialog der neueren Desktops, wobei
dieser Dialog ein schlechtes Beispiel ist, wie weiter unten erlutert wird).
Jedesmal wenn ein neuer Eintrag angezeigt wird, mu das Fenster geffnet
und spter wieder geschlossen werden. Zum einen bentigt das jedesmal
relativ viel Zeit, zum anderen kann es passieren, da dieser Dialog dabei
von anderen Fenstern, die kurzzeitig aktiv werden, bermalt wird (was fr
die Optik sicherlich nicht vorteilhaft ist). Der letztere Effekt kann evtl.
mit der Einstellung bei "ObjcDraw bei FormDo" (s.u.) gelindert werden.
Im Gegensatz zu FormDial-Dialogen knnen die Fenster der FormDo-Dialoge 
nicht verschoben werden!

Es gibt auerdem noch eine dritte Art von Dialogen, nmlich solche, die 
weder einen form_dial-, noch eine form_do-Aufruf benutzen. Das sind in der
Regel solche, die bereits eine besondere Form der Dialogbehandlung
anbieten (z.B. verschiebbare (sog. FlyDials) oder ber Tastatur bedienbare
Dialoge). Diese knnen von MultiDialog nicht abgefangen und in Fenstern
dargestellt werden.


                                              "FormAlert  Fenster/Normal": + 
                                             (Alertboxen in Fenster legen) +

Ist hier "Fenster" eingeschaltet, so erscheinen Alertboxen in einem Fenster.
(Alertboxen sind daran zu erkennen, da sie maximal 3 Knpfe und
5 Zeilen Text, sowie evtl. ein kleines Warnsymbol besitzen.)
Alertboxen sollten eigentlich keine Probleme bereiten, weshalb dieser
Schalter immer aktiviert sein kann. (Naja, mit dem Redraw gibt es
manchmal doch Probleme, die aber rein optischer Natur sind.)


                                             "ObjcDraw bei FormDo: Ja/Nein":
                                          (Inhalt der Dialogbox neuzeichnen)

Diese Einstellung hat nur Wirkung, wenn bei "FormDo" "Fenster" gewhlt
wurde ist, da sich diese Einstellung nur auf Dialoge bezieht, die
bei einem form_do-Aufruf in ein Fenster umgeleitet wurden. Wie bereits oben
erwhnt knnen dabei Probleme auftreten, weil der Inhalt der Dialogbox durch
andere Fenster bermalt wird. Da das in der Regel der Fall ist, sollte hier
"Ja" eingestellt werden. Manche Dialogboxen enthalten jedoch Grafiken 
(z.B. Bilder, Farbverlufe), die MultiDialog nicht ber den GEM-Aufruf
objc_draw rekonstruieren kann; in diesem Fall ist "Nein" einzustellen.


                                                    "Fenstertitel  Ja/Nein":
                                             (Dialogfenster mit Titelbalken)

Hiermit knnen Sie einstellen, ob die Dialogfenster, die MultiDialog
anlegt, den von Fenstern gewohnten Titel- bzw. Bewegungsbalken
besitzen sollen oder nicht. Bei "Ja" wird ein Fenster mit Titelzeile
verwendet, so da man sofort ablesen kann, wozu der entsprechende Dialog 
gehrt. "Nein"  unterbindet dies, was den Vorteil hat, da die Fenster nicht
soviel Platz wegnehmen.
(Defaultmig sind Fenstertitel abgeschaltet, da das den originalen GEM-   +
Routinen am hnlichsten ist.)                                              +


                                                  "Tastenkrzel  Ja/Nein": +
                                           (Tastaturbedienung der Dialoge) +
                                           
Wenn ein MultiDialog installiert ist, das Tastaturbedienung untersttzt,   +
kann ber diesen Eintrag dieses Feature deaktiviert werden.                +
(Zur Zeit hat diese Auswahl erst Wirkung, wenn auch Let'em Fly installiert +
ist.)                                                                      +


                                              "Default", "Neu", "Lschen": +
                                        (Liste fr automatische Umschaltung)

Da das eine Programm eine andere Einstellung als das andere bentigt,
besitzt MultiDialog eine automatische Umschaltung der Einstellungen.
Das geschieht ber eine Liste, in der jedem Programm seine Einstellung
zugeordnet ist.

Mittels des "Neu"-Knopfes kann ein neuer Eintrag in der Liste angelegt
werden. Tippen Sie dazu nach Drcken des "Neu"-Knopfes einfach den
Namen des Programms, fr das eine spezielle Einstellung ntig ist, ein.
(Nehmen Sie den Namen, wie er von MultiDialog im Fenstertitel angezeigt
wird. Wenn Sie kein MultiTOS verwenden, kann der Name von Accessories nicht
ermittelt werden; daher ist fr Accessories auch keine automatische
Umschaltung mglich.)

Mit den Popup-Men links neben "Neu" (nach dem Start ist es mit "Default"  +
beschriftet) knnen Sie durch die Eintrge blttern und nachtrglich deren +
Einstellungen ndern.
Da die meisten Programme mit derselben Einstellung laufen, gibt es den
Eintrag "Default", dessen Einstellungen immer dann benutzt werden, wenn
MultiDialog den Namen eines Programms nicht in der Liste, die Sie
angelegt haben, finden kann.

Wenn Sie Eintrge aus der Liste wieder lschen wollen, so knnen Sie dies
mit dem "Lschen"-Knopf machen. Es wird dann der Eintrag gelscht, der im
Moment angezeigt wird. Fr dieses Programm wird dann wieder die
Default-Einstellung verwendet, die man nicht lschen kann.


                                                 "Sichern", "OK", "Abbruch":

Um die gemachten Einstellungen zu sichern, wird der "Sichern"-Knopf
verwendet. Er speichert die Einstellungen dann in der Datei "MULTDIAL.INF"
ab. Zunchst wird versucht, diese im AUTO-Ordner Ihres Startlaufwerks 
anzulegen (von wo sie MultiDialog auch beim nchsten Start ldt), scheitert 
dies, so wird sie im aktuellen Verzeichnis gespeichert.

"OK" beendet den Dialog, "Abbruch" macht das gleiche, aber die zuletzt
gemachte nderung wird ignoriert. (Das bezieht sich dabei auf nderungen,
die an der im Moment sichtbaren Einstellung gemacht worden sind. Sobald 
Sie das Popup-Men links neben "Neu" (oder "Neu" bzw. "Lschen") benutzen, 
werden die nderungen, die Sie gemacht haben, sofort bernommen!)

                             Auerdem fhrt der "Info"-Knopf zu einer Seite,
             in der alles wichtige aus dieser Datei kurz zusammengefat ist.
                        Mit den Pfeilen, die sich dann unten links befinden,
                              kann man den angezeigten Ausschnitt verndern.



>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> VI. Tastaturbedienung

Zur Zeit ist die Tastaturbedienung von Dialogen ber Oliver Scheel's       +
AES-Erweiterung Let'em Fly realisiert. Das heit:                          +

                          Damit MultiDialog Tastaturshortcuts untersttzt, + 
                                          mu Let'em Fly installiert sein. +
                                   (siehe auch Kapitel IV. "Installation") +
                                   
Let'em Fly ist - hnlich wie MultiDialog - FreeWare und in allen gut       +
sortierten Mailboxen erhltlich. Bezglich der Konditionen fr Benutzung   +
und Weitergabe lesen Sie bitte die zugehrige Dokumentation.               +

                       Stellen Sie sicher, da Let'em fly abgeschaltet ist +
                                   und speichern Sie diese Einstellung ab! +
                     (MultiDialog schaltet zwar Let'em Fly auch selber ab, +
                                                   aber man wei ja nie!)  +

Einen Dialog, der per Tastenkrzel zu bedienen ist, erkennen Sie daran,    +
da das entsprechende Krzel eines Dialogknopfes unterstrichen oder farbig +
markiert ist.                                                              +
                ber die Kombination von ALTERNATE-Taste und diesem Krzel +
          kann nun ein Mausclick auf den jeweilige Knopf simuliert werden. +

Falls der aktuelle Dialog keine Texteingabefelder besitzt, kann der        +
gleichzeitige Druck auf die ALTERNATE-Taste auch entfallen. Die Knpfe     +
von Alertboxen knnen auerdem auch ber die Funktionstasten F1 bis F3     +
bedient werden.                                                            +

         Knpfe, die mit "Abbruch", "Cancel", etc. bezeichnet sind, knnen +
               zustzlich ber die UNDO-Taste bedient werden, ebenso wirkt +
                  die HELP-Taste auf Objekte mit dem Text "Hilfe", "Help". +

Die Tastenkrzel innerhalb eines Fensterdialoges sind nur wirksam, wenn    +
sich das entsprechende Fenster als oberstes auf dem Bildschirm befindet.   +
Ebenso werden die Krzel erst dann wieder neu eingezeichnet, wenn man      +
das Fenster zum obersten Fenster macht.                                    +
Auerdem mu natrlich in MultiDialogs XCONTROL-Modul "Tastenkrzel: Ja"   +
eingestellt. Bei der Verwendung lterer MULTDIAL.INF-Dateien mu beachtet  +
werden, da dort i.d.R. noch "Nein" eingestellt sein drfte.               +

Die Kennzeichnung der Tastenkrzel im Dialog kann ber die zu Let'em fly   +
gehrenden Konfigurationsprogramme eingestellt werden.                     +


Weitergehende Informationen zur Tastaturbedienung entnehmen Sie bitte      +
der zu Let'em fly gehrenden Dokumentation.                                +


>>>>>>>>>>>>>>>>>>>>>>>>>>>>  VII.  Einschrnkungen und zuknftige Versionen

Frher stand an dieser Stelle:                                             +

                    Alle zur Zeit bekannten Fehler, die MultiDialog besitzt, 
                sind rein optischer Natur und beintrchtigen in keiner Weise 
                                                     die Betriebssicherheit:

Leider gibt es doch noch ein paar Fehler, die ich bisher nicht beheben     +
konnte (Mangels Spenden fehlt mir auch ein bisschen die Motivation, da     +
bei meiner Arbeit diese Fehler nicht auffallen.):                          +

- Seit der Version 2.00 der Multitasking-Erweiterung Mag!X bringt          +
MultiDialog dieses System zum Stillstand. Abhilfe: MultiTOS verwenden :-)  +  

- Es gibt wirkliche Schweineprogramme, die AES-Aufrufe vor einem           +
appl_init ttigen. Hierbei kann MultiDialog durcheinanderkommen und        +
die Mausbedienung blockieren.                                              +
In der Regel ignoriert MultiDialog aber diese Schweineprogramme.           +


Nun aber die kleineren (Schnheits-)Fehler, die nur bei 
Singeltask-Betriebssystemen auftreten:

- Das Desktop benutzt keine TRAP #2 GEM-Aufrufe, deshalb kann MultiDialog
die Dialogboxen des Desktop nicht abfangen. (Das Desktop des MultiTOS
hingegen verwendet TRAP #2 Aufrufe, so da hier MultiDialog aktiv wird.)

- MultiDialog kann die Namen von Accessories nicht herausfinden; aus diesem
Grund ist auch keine automatische Einstellungsumschaltung fr Accessories
mglich. (In AES Versionen < 4.0 gibt es keine Mglichkeit, nach Prozessen
zu suchen.)

- Bei installiertem WINX 2.X fllt auf, das dort fters falsche AES-Aufrufe+
gemeldet werden. MultiDialog scheint einige Programme zu verwirren.        +

Da MultiDialog MultiTOS kennt, gibt es hier nur einen speziellen Fehler:

- MultiDialog benutzt den appl_search-Aufruf, um den Namen einer Applikation
herauszufinden; dabei wird der interne Zhler von appl_search verndert.
Ruft daher z.B. eine Applikation appl_search auf, benutzt dann einen
Dialog und ruft anschlieend nochmal appl_search auf, so liefert der
2. Aufruf nicht den erwarteten Wert, da in der Zwischenzeit MultiDialog
ebenfalls appl_search aufgerufen hat.


Nun die Fehler, die in allen TOS-Versionen auftreten:

- Programme, die eigene Dialogroutinen besitzen (z.B. fly-dials),
profitieren nicht von MultiDialog, da sie keinen form_do-Aufruf benutzen,
den MultiDialog aber bentigt.

- Nicht immer ist ein Redraw fr die Fenster der Applikation, deren Dialog
abgefangen wurde, mglich. MultiDialog kann nmlich nur den Teil eines
Fensters neuzeichnen, der sichtbar war, als das Dialogfenster geffnet 
wurde.

- hnliche Probleme gibt's bei Alertboxen. Die originalen GEM-Alertboxen
retten den Bildschirminhalt und restaurieren ihn wieder; MultiDialog macht 
das nicht, da ja in der Zwischenzeit der Bildschirminhalt sich vllig
verndert haben kann.

- Wie bereits oben angedeutet, ignoriert MultiDialog Programme, die kein   +
appl_init aufrufen. Dies ist z.B. bei vielen CPX-Modulen fr das           +
erweiterte Kontrollfeld der Fall, so da diese nicht von MultiDialog       +
profitieren. (s. auch Kapitel VIII. GEM-Programmierung und MultiDialog)    +

- Einige Programme benutzen Alertboxen bei ausgeschaltetem Mauszeiger.
Die originale Betriebssystemfunktion kann in diesem Fall ohne Probleme den
Mauszeiger anschalten, MultiDialog hingegen nicht.
(wenn mir jemand verrt, wie ich herausfinde, wie oft ich graf_mouse(M_ON)
aufrufen mu, bis der Mauszeiger sichtbar ist, liee sich dieses Problem
auch beheben.)

- ltere Programme reservieren so ziemlich allen freien Speicher.
MultiDialog bentigt aber Speicher, um Dialoge in Fenster zu legen, weshalb
nach Start dieses Programms keine Dialoge mehr in Fenstern erscheinen.
(Da diese Programme aber unter MultiTOS ebenfalls Probleme bereiten,
drfte diese Unart aussterben.)

- Dank MultiDialog kann man auf die Menleiste auch whrend eines Dialogs 
zugreifen. Das Programm kann aber auf keinerlei Ereignisse reagieren, weil
es nur darauf wartet, da der Dialog beendet wird. Whlt man trotzdem
eine Meneintrag an, so passiert nichts. (Man mu halt zuerst den Dialog 
beenden; aus genau dem gleichen Grund kann man auch nicht mit den Fenstern 
oder dem Desktop des betreffenden Programms arbeiten, man mu erst den 
Dialog beenden.)

- Es ist gar keine gute Idee, ein Programm zu starten bzw. zu beenden oder
die Auflsung zu wechseln, whrend ein Dialog, der von MultiDialog 
abgefangen wird, sichtbar ist. (Ersteres bezieht sich auf Singletask-
Betriebs-systeme, letzteres auf MultiTOS.)
MultiDialog kann zwar damit umgehen, aber dazu mu es die Dialoge
gewaltsam beenden: Es tut so, als habe der Benutzer den Default-Knopf
gedrckt (normalerweise  ist das "OK" oder "Abbruch"). Wenn kein Default-
Button existiert, wird ein Druck auf auf den letzten Knopf der Dialogbox
simuliert, was hufig der "Abbruch"-Knopf ist. Aber dieser Knopf knnte
genauso gut ein "Alles lschen/Formatiere Festplatte/Starte Atomkrieg"-Knopf
sein, weshalb man besser erst die Dialogbox verlt und dann den
Auflsungswechsel durchfhrt oder ein Programm startet bzw. beendet.

- Das Dateiauswahl-Formular wird von MultiDialog nicht abgefangen.
(So da bei einer Dateiauswahl die Bildschirmausgabe weiterhin stillsteht.)
Gleiches gilt fr kritischen Fehlermeldungen des TOS. 


Kommen wir nun zu einem wirklich rgerlichen Problem :-(

Macht ein Programm mehr form_dial(FMD_START)-Aufrufe als 
form_dial(FMD_CLOSE), so bleiben "Fensterleichen" auf dem Bildschirm
zurck. Diese Fenster knnen weder geschlossen, noch bewegt werden -
eine Mglichkeit ist, das Programm, zu dem der Dialog gehrt, zu beenden. 
Tritt dieses Problem auf, so sollte man man "FormDial: Normal"
einstellen und stattdessen "FormDo: Fenster" aktivieren.
(Aus diesem Grunde habe ich die automatische Umschaltung eingebaut -
wahrscheinlich ist das auch der Grund, weshalb ATARI so etwas hnliches
wie MultiDialog nicht ins MultiTOS eingebaut hat!)

Lesen Sie dazu das Kapitel IX. "Fragen und Antworten"; dort wird erklrt, 
wie Sie ein "totes" Fenster wieder entfernen knnen, ohne das betroffene
Programm zu beenden.


Anmerkung: Solch ein Verhalten ist weniger ein Fehler in MultiDialog
als ein echter Fehler der betreffenden Applikation, der auch den 
Entwicklern dieser Applikation gemeldet werden sollte.


Aber es kommt noch besser: Ratet mal, welchen Fehler das Desktop in
MultiTOS hat! Na? Genau: Alle Dialoge in denen ein "berspringen"-Knopf 
existiert, rufen jedesmal, wenn die Dialogbox fr die nchste Datei 
aufgebaut wird, form_dial(FMD_START) auf, machen aber nur _ein_ 
form_dial(FMD_FINISH), nachdem die letzte Datei dargestellt wurde.
MultiDialog versucht daher, diese Fehler zu abzufangen, aber es funktioniert
nur mit bekannten MultiTOS Versionen, dies kann bei zuknftigen MultiTOS 
Versionen scheitern.
(Ich habe diesen Fehler Eric Smith gemeldet, leider ist er nicht behoben
worden!)


Fehler-Berichte, die MultiDialog betreffen, bitte an meine Adresse (s.u.).
Am liebsten natrlich per e-mail (Emaille?)!
Aber, nicht vergessen: Immer Versionsnummer von MultiDialog, sonstige
residenten Programme, TOS-Version und bei MultiTOS das AES-Datum und 
Sprache des AES angeben.


Was wird in den nchsten Versionen von MultiDialog kommen ?

Nun zunchst einmal werde ich versuchen, die Zuverlssigkeit weiter
zu erhhen und die bekannten Fehler zu beheben.
Eine Programmierschnittstelle fr die kommende Version ist in Vorbereitung!+
Die neuen Releases von Let'em Fly und MultiDialog werden besser zusammen-  +
arbeiten, so da z.B. auch LTMF's erweiterte Edit-Funktionen zum Tragen    +
kommen!                                                                    +
Das neue Fensterhandling der kommenden MultiTOS-Versionen soll             +
untersttzt werden.                                                        +
Es scheint einige Leute zu geben, denen das Aussehen der Alertboxen        +
nicht gefllt ("Wolpers!!!" Na wer hat's erkannt ?:-),                     +
vielleicht mu ich das mal ndern.                                         +
Aber auch an eine VSCR-Untersttzung ist zu denken.                        +
Eine Verschmelzung mit Let'em fly ist mglich.                             +
Auerdem ist die Bereitstellung einer Online-Hilfe fr beliebige           +
Progamme ber MultiDialog denkbar.                                         +


>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>  VIII. GEM-Programmierung und MultiDialog


Die folgenden Ausfhrungen sind fr Programmierer gedacht, der Nur-Anwender 
kann getrost ber sie hinweg lesen:

MultiDialog verbiegt ein paar Vektoren mittels XBRA-Strukturen (die Kennung
ist "MDIA"). Es benutzt den TRAP #2 Vektor (GEM, um die AES-Aufrufe
abzufangen), TRAP #13 (BIOS, um MultiDialog in den TRAP #2 Vektor einzu-
klinken) und den GEM-Vektor 258 (etv_term, um bei einem Programmabbruch
den angelegten Speicher korrekt zu entfernen).
Um MultiDialog ein korrektes Arbeiten zu ermglichen, sollte es nur in
Umgebungen eingesetzt werden, in denen fr den TRAP #2 und etv_term-Vektor
ebenfalls XBRA-Strukturen verwendet werden!

Wenn der cookie-jar existiert, wird auerdem ein cookie ("MDIA") angelegt:
Der Cookie MDIA enthlt einen Zeiger auf ein Langwort, das die aktuelle 
Globale Konfiguration von MultiDialog enthlt. 
Das oberste Bit (31) entspricht dabei der Schalterstellung 
"MultiDialog: An/Aus" (Bit gesetzt: An, Bit gelscht: Aus). 
Alle weiteren Bits bleiben undokumentiert und drfen nicht verndert werden.

Das diesem Langwort vorhergehende Wort enthlt die BCD-codierte 
Versionsnummer von MultiDialog (z.B. V1.01=$0101, V1.23=$0123).
Versionen vor 1.01 enthalten in diesem Wort den Wert 0 (Version 1.02
gab sich brigens flschlicherweise als 1.01 aus).
Also: IF Versionswort = $0000 THEN Version<1.01
                              ELSE Version=Versionswort

Das diesem Wort vorhergehende Wort enthlt einen Bitvektor, der ver- 
schlsselt die Fhigkeiten der installierten MultiDialogversion enthlt 
(unabhngig davon, ob die jeweiligen Fhigkeiten vom Benutzer 
deaktiviert wurden):
  Bit 0:	es existiert eine neue form_center-Routine
  Bit 1:	Dialogboxen werden in Fenster umgeleitet
  Bit 2:	Alertboxen werden in Fenster umgeleitet
  Bit 3:	Dialogboxen knnen per Tastatur bedient werden
  Bit 4:    Dialogfenster knnen ohne MOVER & NAMEn dargestellt werden
  (alle brigen Bits sind reserviert; gesetzte Bits bedeuten, da die 
  entsprechende Fhigkeit vorhanden ist.)
Dieses Wort existiert enthlt in Versionen vor 1.01 den Wert 0 und
mu dann als $0007 interpretiert werden.
Also: If Versionswort = $0000 THEN Fhigkeiten=$0007
                              ELSE Fhigkeiten=Fhigkeitenwort
  
Zusammenfassung:				Word: Fhigkeiten (Version=$0000=>$0007)
  								Word: Version ($0000=>Version<1.01)
  Cookie Jar: MDIA Zeiger ----> Long: Konfiguration

Dieser Speicherbereich hat den Protectionstatus GLOBAL.


Fr jeden dargestellten Dialog wird Speicher ber den Malloc-Befehl ange-
fordert: fr lokale Variablen, das Fenster (wird vom AES gemacht) und
ziemlich viel Speicher fr Redraw-Anforderungen der nicht-Dialog-Fenster
einer Applikation (bei ST-Auflsungen 32kB, aber mit True-Color und 
Ganzseitenbildschirmen kann's auch 0,5MB und mehr werden.) Wenn kein 
Speicher mehr frei ist, kann dann nicht mehr das Redraw ausgefhrt werden 
oder im Extremfall das Fenster nicht mehr geffnet werden, in diesem Fall 
wird dann die herkmmliche Routine ausgefhrt. (Durch die Benutzung von 
dynamischem Speicher ist MultiDialog voll reentrant und untersttzt 
beliebig viele Dialoge gleichzeitig.)

Wenn auch Ihr Programm von MultiDialog profitieren soll, sollten Sie 
form_dial(FMD_START) zu Beginn eines Dialogs, form_do fr den eigentlichen
Dialog und form_dial(FMD_FINISH) am Ende des Dialogs benutzen.
Dabei mu unbedingt zu jedem form_dial(FMD_START) auch ein 
form_dial(FMD_FINISH) existieren, sonst bleiben Fensterleichen zurck.
MultiDialog baut darauf, da auf jeden form_dial(FMD_START)-Befehl wieder 
ein form_dial(FMD_FINISH) folgt!

         Untersuchen Sie Ihre Programme, ob es zu jedem form_dial(FMD_START)
         auch ein form_dial(FMD_FINISH) gibt! Wenn nicht, luft Ihr Programm
                                garantiert nicht vernnftig mit MultiDialog.

Ich empfehle, die Dialogbehandlung nach dem Beispiel im 
"ST/STE/TT-Profibuch" auf Seite 777 durchzufhren. 
Eine Dialogroutine sollte dementsprechend folgendermaen aussehen:

form_center(dialog,size_x,size_y,size_w,size_h)
wind_update(BEG_UPDATE)
wind_update(BEG_MCTRL)  /* wird neuerdings gefordert */                    +
form_dial(FMD_START, size_x, size_y, size_w, size_h, 
                     size_x, size_y, size_w, size_h)
objc_draw(dialog,ROOT,MAX_DEPTH,size_x, size_y, size_w, size_h)

rc=form_do(dialog,ROOT)

form_dial(FMD_FINISH, size_x, size_y, size_w, size_h, 
                      size_x, size_y, size_w, size_h)
wind_update(END_MCTRL)  /* wird neuerdings gefordert */                    +
wind_update(END_UPDATE)

Die Gre des Bereichs, der bei form_dial reserviert wird, sollte also
den Ausmaen der Dialogbox entsprechen; sonst wird das Fenster, das
MultiDialog ffnet, zu gro.

Bei der Benutzung von "Spezial-Objekten", die mit objc_draw whrend des
Dialogs neugemalt werden, sollten man die wirklichen Koordinaten des Objekts
(die erhlt man ber objc_offset) als Clipping-Bereich verwenden - und
nicht etwa den Bereich, den man von form_center zurckbekommen hat.
Der Benutzer kann nmlich die Dialogbox aus dem ursprnglichen Clipping-
Bereich herausbewegt haben.

Auch wenn ich eigentlich dachte, es sei selbstverstndlich, so hat mich    +
die Realitt bei folgendem das Gegenteil gelehrt:                          +
Die erste AES-Funktion, die eine Applikation aufruft, hat ein appl_init    +
zu sein und die letzte, die sie ttigt, ein appl_exit!                     +
Bei CPX-Modulen sollte man ebenfalls in der cpx_init Routine ein appl_init +
aufrufen (so wie es ATARI in seinen Beispiel-Sourcen auch macht).          +
Im Profibuch ist leider ein Beispiel-CPX abgedruckt, das kein appl_init    +
aufruft, ATARI hingegen sieht folgende Initialisierung fr CPX-Module vor: +
(Interessanterweise ist kein appl_exit erforderlich und der                +
appl_int-Aufruf liefert immer dieselbe AP_ID!)                             +

CPXINFO
*cpx_init( Xcpb )
XCPB *Xcpb;
{
    xcpb = Xcpb;
    
    appl_init(); /* Wichtig! */                                            +
        
    if( xcpb->booting )
    {
       ...


Einige Interna:

Die neuen AES-Routinen, die MultiDialog installiert, laufen im User-Modus  +
der 68000-CPU ab. MultiDialog benutzt dabei den Stack der jeweiligen       +
Applikation. Im Gegensatz zu den originalen AES-Routinen werden daher      +
bei einem AES-Aufruf bis zu 500 Bytes auf dem User-Stack verwendet.        +
Es ist also darauf zu achten, da vor einem AES-Aufruf gengend freier     +
Stack vorhanden ist, da es sonst zu scheinbar unmotivierten Abstrzen      +
kommen kann.                                                               +
Wer unbedingt AES-Aufrufe machen mu, die nicht von MultiDialog abgefangen +
werden, sollte sich vertrauensvoll an den Programmierer wenden; auch       +
hierfr gibt es eine Lsung.                                               +


Zur Programmierschnittstelle, die in Vorbereitung ist, wird auf die Datei  +
PROG_GER.TXT verwiesen.                                                    +


>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>  IX. Fragen und Antworten


Frage: Warum erscheint bei mir keine einzige Dialogbox im Fenster ?

Antwort: Entweder MultiDialog ist berhaupt nicht installiert
(bei Start ber den AUTO-Ordner mu MultiDialog die erfolgreiche 
Installation melden), oder es ist abgeschaltet. Prfen Sie in der 
Konfigurationsdialogbox von MultiDialog nach, ob MultiDialog 
angeschaltet ist. Auerdem mu bei mindestens einer der Optionen "Alert", 
"FormDial" oder "FormDo"  "Fenster" aktiviert sein.
(Sollten Sie kein MultiTOS benutzen, so erscheinen die Dialogboxen des
Desktops nie in Fenstern.)


Frage: MultiDialog verursacht bei mir eine Memory-Violation. Was tun ?

Antwort: berprfen Sie, ob die Memory-Protection-Flags von MULTDIAL.PRG
auf GLOBAL gesetzt sind (z.B. mit dem Programm PRGFLAGS oder nehmen Sie 
CHPROT, das macht das automatisch). Auerdem knnen Sie versuchen, ob 
sich eine Verbesserung ergibt, wenn MULTDIAL.PRG vor oder nach MINT.PRG 
gestartet wird.
Falls das immer noch keine Besserung bringt, schreiben Sie dem Autor
mit genauer Beschreibung der Konfiguration. Vielleicht kann ich das
Problem beheben, bis dahin wird man die Memory-Protection wohl oder
bel abschalten mssen.


Frage: Wieso strzen bei mir MultiDialog oder andere Programme immer ab ?

Antwort: Es kann sein, da MultiDialog in Verbindung mit anderen residenten
Programmen nicht funktioniert. Deaktivieren Sie nacheinander alle anderen 
Programme im AUTO-Ordner, um den Bsewicht herauszufinden (Hoffentlich ist
nicht MULTDIAL der alleinige beltter!). Unter MiNT/MultiTOS spielt es 
evtl. auch eine Rolle, ob die Programme vor oder hinter MINT.PRG im 
AUTO-Ordner ausgefhrt werden. Im Extremfall mu man hier alle mglichen 
Kombinationen ausprobieren (whrend ich MultiDialog ausprobiert und auf 
Inkompatibilitten getestet habe, wurde MULTDIAL.PRG meistens als letzte 
Datei geladen.)
MultiDialog vertrgt sich nicht gut mit aktiviertem Let'em'fly! Man mu 
sich also fr einen Dialogmanager entscheiden...


Frage: Wieso werden bei manchen Programmen die Dialoge nicht in Fenstern
dargestellt ?

Antwort: Gegenfrage: Knnen Sie die betreffenden Dialoge ohne MultiDialog 
mit der Maus auf dem Bildschirm hin- und herbewegen oder die Knpfe mit 
der Tastatur bedienen ? 
Dann gibt es keine Chance, die Dialoge in Fenster zu verfrachten, da das 
Programm eine eigene Dialogverwaltung benutzt. Ansonsten knnen Sie mal 
probieren, in der MultiDialog-Konfiguration "FormDo" auf "Fenster" zu 
stellen, vielleicht klappt's dann.


Frage: Dialogfenster, die sehr dicht unter der Menuleiste erscheinen,
besitzen keine Titelzeile. Warum ?

Antwort: Bei diesen Dialogen ist kein Platz fr den Fenstertitel, so
da dieser in der Menuleiste erscheinen wrde. Um das zu verhindern,
wird daher ein Fenster ohne Titel geffnet.


Frage: Dialogfenster, die fast die gesamte Hhe des Bildschirms einnehmen,
ragen mit dem untersten Teil aus dem Bildschirm, obwohl am oberen Rand
noch eine Zeile Platz wre. Mu das sein ?

Antwort: berprfen Sie, ob sie die Option "Fenstertitel" aktiviert haben.
Wenn ja schalten Sie sie ab, dann mte der Dialog komplett sichtbar sein.


Frage: Wieso erscheinen manche Alertboxen des MultiTOS (z.B. "Laufwerk
antwortet nicht") nicht in Fenstern ?

Antwort: Diese Alertboxen gehren zu kritischen Fehlern. Die sind selbst
MultiDialog zu kritisch, so da hier die herkmmliche Routine benutzt
wird.


Frage: Bei einigen Programmen erscheinen Alertboxen auf dem Bildschirm,
aber der Mauszeiger ist nicht sichtbar. Kann man das verhindern ?

Antwort: Im Moment leider nicht. Programme, bei denen dieses Problem
auftritt, verlassen sich auf die undokumentierte Tatsache, da das AES
bei einer Alertbox immer den Mauszeiger einschaltet. Da MultiDialog dazu
nicht in der Lage ist (zumindest zur Zeit nicht), mssen Sie die Alertbox
entweder "blind" bedienen oder Sie deaktivieren "Alert" im Konfigurations-
Dialog. (Bei Tastaturbedienung knnen die Tasten F1 bis F3 fr die 3
mglichen Auswahlen verwendet werden.)
(Wenn mir jemand verrt, wie ich feststellen kann, wieviele 
graf_mouse(M_ON)-Aufrufe man machen mu, bis der Mauszeiger sichtbar ist,
wre dieses Problem gelst...)


Frage: Nach Beendigung eines Dialogs bleibt das Fenster dieses Dialogs
weiterhin auf dem Bildschirm stehen. Ich kann es aber weder bewegen, noch
schlieen. Wie kann ich das verhindern ?

Antwort: Schalten Sie in der MultiDialog-Konfiguration den Option
"FormDial" ab und benutzen Sie stattdessen "FormDo". Dann sollten Sie
dieses Problem, das auf unsaubere Programmierung des betroffenen Programms
zurckzufhren ist, nicht mehr haben. 
Am bequemsten ist es, wenn Sie fr dieses Programm einen eigenen Eintrag
in der Umschalt-Liste von MultiDialog anlegen und dort die beste
Einstellung fr dieses Programm angeben. (s. Kapitel V.)
Das "tote" Fenster wird entfernt, wenn Sie das Programm verlassen.
Hufig gelingt es auch, das Fenster zu entfernen, indem man MultiDialog
zunchst abschaltet und dann das betreffende Programm eine Dialogbox
anzeigen lt. Bei Beendigung dieses Dialogs wird dann das Fenster
entfernt. Danach knnen Sie MultiDialog wieder einschalten.


Frage: Ein Dialog erscheint zwar in einem Fenster und alle anderen Prozesse
laufen weiter, aber ich kann das Dialogfenster nicht bewegen. Woher kommt das ?

Antwort: Hierbei handelt es sich um einen Dialog, der nach einem form_do
Aufruf in ein Fenster umgeleitet wurde. Solche Dialoge knnen grundstzlich
nicht bewegt werden. Falls fr das betreffende Programm "FormDial" 
deaktiviert ist, knnen Sie probieren, diese Einstellung zu aktivieren,
vielleicht knnen Sie das Fenster dann bewegen.
(Dieses Phnomen kann auerdem bei unsauber programmierten Programmen 
auftreten!)


Frage: Die Dialogbox erscheint zwar in einem Fenster, aber es trgt nur
den Titel "Dialog" statt "MultiDialog". Woran liegt das ?

Antwort: In diesem Fall benutzt das Programm zwar die form_dial-Funktion, 
aber es verwendet nicht - wie von MultiDialog erwartet - einen 
form_do-Aufruf. Das ist nicht weiter schlimm, der Dialog (so es denn 
berhaupt einer ist -  manchmal erscheinen auch Statusmeldungen in so einem 
Fenster) blockiert dann halt die anderen Programme.


Frage: Manchmal scheinen Scrollpfeile und andere Auswahlmglichkeiten in
einer Dialogbox nicht mehr richtig zu funktionieren. Ist das normal ?

Antwort: Wahrscheinlich haben Sie die Dialogbox verschoben, so da der
Bereich, in dem das Programm die Auswahl darstellen will, sich nicht mehr 
an der erwarteten Position befindet. Die Auswahl funktioniert dann i.d.R. 
trotzdem, sie wird nur nicht angezeigt. Versuchen Sie, das Dialogfenster an
die alte Position zurckzuschieben, dann mte es wieder funktionieren.


Frage: Wieso werden die Alertboxen der CPX-Module nicht in Fenster gelegt ?+

Antwort: CPX-Module rufen hufig kein appl_init auf, in diesem Fall werden +
sie ignoriert! Abhilfe: Programmierer des Moduls solange nerven, bis er    +
ein appl_init einbaut.                                                     +


Frage: Ich habe Let'em Fly in den AUTO-Ordner kopiert, aber es werden      +
trotzdem keine Tastenkrzel angezeigt. Woran kann das liegen ?             +

Antwort: Falls Sie eine MULTDIAL.INF-Datei verwenden, prfen Sie unbedingt +
mit dem CPX-Modul fr das erweiterte Kontrollfeld nach, ob auch            +
"Tastenkrzel: Ja" eingestellt sind. ltere MULTDIAL.INF enthalten nmlich +
hufig die Einstellung "Tastenkrzel: Nein"!                               +


Frage: Ich habe zwar "Tastenkrzel  Ja" eingestellt, aber eine Tastatur-   +
bedienung ist nicht mglich.                                               +
Liegt das etwa daran, da ich auerdem noch Let'em fly installieren mu ?  +

Antwort: Ja!                                                               +


Frage: Die Tastaturshortcuts werden bei Dialogen, die im Hintergrund       +
liegen, nicht kenntlich gemacht. Woran liegt das ?                         +

Antwort: Die Routinen, die Momentan zum Einsatz kommen, knnen nur alle    +
Shortcuts auf einmal einzeichnen. Sie werden daher erst dann wieder        +
sichtbar, wenn das Dialogfenster das oberste Fenster ist.                  +


Frage: Wenn Let'em Fly installiert ist, werden manchmal auf dem Bildschirm +
Striche an Stellen gemalt, die gar nichts mit dem Tastenkrzel zu tuen     +
haben. Sachmal, ist das nicht ein richtiger Fehler ?                       +

Antwort: Eigentlich schon. Let'em Fly scheint da (und auch bei 3D-Buttons) +
ein paar Probleme zu haben. Daran kann ich aber im Moment nichts ndern.   +


Frage: Wieso tut's MultiDialog eigentlich nicht unter Mag!X 2.XX ?         +

Antwort: Das wrde ich auch gerne wissen. MultiDialog benutzt keine        +
schweinsen Tricks, so da es eigentlich funktionieren msste! Da ich mit  +
den eingegangenen Spenden noch kein Mag!X 2.XX finanzieren kann, bin ich   +
da noch auf externe Hinweise angewiesen; aber wir arbeiten daran...        +


Frage: Ich bin von MultiDialog richtig begeistert. Ist das normal ?

Antwort: Ja. Verleihen Sie Ihrer Begeisterung Ausdruck, indem Sie die
Arbeit des Autors mit einer Geldspende honorieren.



>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>  IX.  Vertrieb, Rechtslage


                  MultiDialog darf (und mu) kostenlos weitergegeben werden. 

(Bitte nur komplett; Mglichst nur das originale ZIP-Archiv uploaden.)

Zur Zeit besteht MultiDialog aus folgenden Dateien:

MULTDIAL.PRG: Treiber fr den AUTO-Ordner                                   +
MULTDIAL.CPX: Konfigurationsmodul fr das erweiterte Kontrollfeld XCONTROL  +
ANLEITUN.TXT: diese Datei
MANUAL.TXT:   englische Anleitung
HISTORY.TXT:  MultiDialog's Lebenslauf
README.1ST:   Bemerkungen zur jeweils neuen Version
OLDMTOS.TXT:  Informationen fr Benutzer lterer MultiTOS-Versionen
FUTURE.TXT:   Ausblick auf zuknftige Versionen
MULTDIAL.UPL: Kurz-Beschreibung fr's Upload in die Mailbox                 +
PROG_GER.TXT: Erster Entwurf einer Programmierschnittstelle                 +

Jede Art kommerziellen Vertriebes ist untersagt. Der Vertrieb auf 
PD-Sammeldisketten, die verkauft werden, scheidet somit aus (auch wenn 
es sich dabei "nur" um sogenannte "Selbstkostenbeitrge" handelt: schon
mal 'ne Leer-Diskette gesehen, die 8 DM kostet ?)

Der Vertrieb zusammen mit kommerziellen Programmen ist nur mit Genehmigung 
des Autors erlaubt. Bitte setzen Sie sich bei Interesse mit mir in 
Verbindung.

brig bleibt daher eigentlich nur der Vertrieb ber Mailboxen, sonstige 
Netze und direkt ber den Autor.


      Der Autor bernimmt keinerlei Haftung fr Schden, die durch Benutzung
           des Programms entstehen. Die Benutzung erfolgt auf eigene Gefahr.
   (wr ja noch schner, erst nix bezahlen, und dann auf diese Tour kommen.)


         Regelmigen Benutzern wird unbedingt nahegelegt, den Autor und die 
               Weiterentwicklung von MultiDialog finanziell zu untersttzen!

             Der Betrag sollte sich dabei nach dem eigenen Einkommen richten
                              (und danach, was einem das Programm wert ist). 
              Damit sich der Verwaltungsaufwand auch lohnt, ist DM 10,-- als 
                               Untergrenze anzusehen (Die Obergrenze ist bei
                                           60.000 Atair-Dollars anzusetzen).

berweisungen bitte auf mein Girokonto:

             Helmut Neukirchen,
             Stadtsparkasse Krefeld, BLZ 320 500 00
                              Kontonummer 80 486 947

Geben Sie als Verwendungszweck "MultiDialog" an. Wenn Sie elektronische
Post ins Internet schicken knnen, schreiben Sie mir am Besten auch noch
eine Mail oder geben Sie Ihre e-mail Adresse auf der berweisung an. Dann
gibt's automatisch Nachricht bei neuen Versionen!


Untersttzen Sie MultiDialog, nur so ist dessen Weiterentwicklung
gewhrleistet!!! (Eigentlich mssen hier 1000 Ausrufezeichen stehen,
denn in MultiDialog habe ich ca. 1000 wertvolle Stunden investiert. Naja, 
fast jedenfalls. ;-) Die Entwicklungsgeschwindigkeit hngt mageblich von
den eingehenden Spenden ab!

Um dem Aufwand bei berweisungen aus dem Ausland aus dem Weg zu gehen,
sollen Benutzer im Ausland (d.h. ohne Anbindung an den Deutschen
Giroverband) stattdessen den Betrag an ihre jeweilige 
Greenpeace Organisation berweisen.


Neueste Versionen von MultiDialog gibt's ber das Internet per FTP 
auf dem FTP-Server ftp.informatik.rwth-aachen.de im Verzeichnis 
/pub/atari/mint (oder so hnlich) und in der Mailbox MAUS Krefeld 2.
Das Paket mte jeweils unter dem Namen mdial*.zip zu finden sein.
Sollten Sie mit dem Begriff FTP oder MAUS nichts anfangen knnen, haben
Sie auerdem natrlich die Mglichkeit, direkt ber den Autor an die 
neueste Version zu kommen.

Schicken Sie mir dazu eine formatierte Diskette und einen ausreichend
frankierten, selbstadressierten Rckumschlag. Wenn Sie dann noch angeben,
welche Version Sie zur Zeit besitzen, bekommen Sie Ihre Diskette zurck-
geschickt, sobald eine neuere MultiDialog Version existiert.


Meine Adresse:

Helmut Neukirchen      e-mail (Internet):
Bnnersdyk 63          hn@pool.informatik.rwth-aachen.de
D-47803 Krefeld
Deutschland


             Besonderer Dank fr konstruktive Beschimpfungen, 
           Bug-Reports, Anregungen, Quelltexte, Zusammenarbeit
                      und sonstige Untersttzung gilt:

            Andreas Alich, Dieter Fiebelkorn, Filipe Martins,
              Olaf Mootz, Oliver Scheel, Oliver Schildmann
      und Ihnen, sofern Sie sich zu einer Spende entschlossen haben!
