include "/var/www/banner.php"; ?>
This is an old version from the tos.hyp. The new is on GitHub!



15.1 AV-Protokoll
Das AV-Protokoll (Accessory-Venus) wurde von Stefan
Eissing entwickelt und zuerst im alternativen Desktop
Gemini eingesetzt. Mittlerweile wird dieses Protokoll jedoch
von vielen weiteren Shells (Ease, MagXDesk, Thing, ...) unterstützt.
Dieser Abschnitt beschreibt die Version des Protokolls aus der
Gemini-Distribution vom 29. Januar 1995 (Gemini 1.a).
Die Kommunikation zwischen zwei Prozessen erfolgt beim
AV-Protokoll über den Austausch von (erweiterten) AES-Nachrichten, die sich
einer der folgenden Kategorien zuteilen lassen:
Achtung: An dieser Stelle sei darauf hingewiesen, daß im
Hinblick auf zukünftige Betriebssystem-Versionen zur Kommunikation
zwischen verschiedenen Programmen benutzte oder über Zeiger
zugewiesene Speicherbereiche global sein müssen (Mxalloc-Funktion mit
Global-Flag). Andernfalls wird es beim Einsatz auf Rechnern mit PMMU
(z.B. Atari-TT oder Falcon) zu Speicherschutzverletzungen kommen.
Sollten in Nachrichten Pfade oder Dateinamen vorkommen, so muß immer
der absolute Pfad angegeben werden (also mit Laufwerk) und die
Laufwerksbuchstaben müssen Großbuchstaben sein. Pfade sollten
immer mit einem Backslash enden!
Mit AV_PROTOKOLL kann jede Applikation nachfragen, welche Nachrichten
verstanden werden (nicht alle Shells unterstützen das vollständige
Protokoll). Es wäre schön, wenn auch andere Programme auf dieses
Protokoll reagieren würden. Zumindest AV_SENDKEY ist sicher leicht zu
implementieren und ist die einzige Methode, wie über Nachrichten
Tastaturdrücke simuliert werden können.
Unter normalem TOS fragt dazu ein Accessorie, wenn es eine
AC_CLOSE-Nachricht vom AES erhalten hat, die Applikation (mit ID)
0 per AV_PROTOKOLL ob sie etwas davon versteht. In einer
Multitasking-Umgebung (MultiTOS, MiNT/N.AES oder MagiC) muß aber das
Programm nicht mehr die ID 0 haben, zudem kommt es (fast) nicht mehr
zu AC_CLOSE-Nachrichten. Außerdem können nicht nur Accessories, sondern
auch normale Programme mit dem AV-Server kommunizieren wollen. Was
tun?
Wenn es mehr als eine Hauptapplikation geben kann, dann sollte das
Programm bzw. Accessory versuchen, mit GEMINI Kontakt aufzunehmen. Die
ID kann ja mit appl_find ermittelt werden. Scheitert dies, so kann
noch nach AVSERVER oder dem Inhalt der (AES)-Environmentvariable
AVSERVER gesucht werden. Besonders die letzte Möglichkeit erlaubt eine
leichte Konfiguration von außen. Die neuen Versionen der Library
VAFUNC von Stephan Gerle (in gutsortierten Mailboxen
erhältlich) verfahren fast genauso.
Querverweis: Nachrichten Drag&Drop-Protokoll OLGA-Protokoll
15.1.1 AV-Protokoll, Quoting im
Mit Quoting ist im AV-Protkoll gemeint, daß Dateinamen optional
mit einfachen Anführungszeichen 'name' versehen werden können. Dies
ist aber nur erlaubt, wenn beide Parteien (Server und Client) sich
darüber einig sind, d.h. es verstehen können.
Wie geht das also vor sich? Angenommen der Server schickt an eine
Applikation einen Dateinamen, der ein Leerzeichen enthält. Eine
Applikation, die Quoting nicht kann, wird statt einem
zwei Dateinamen erkennen, da normalerweise Leerzeichen
Dateinamen trennen. Versteht die Applikation aber Quoting (Bit 4 in
seinem Protokollstatus), so wird der Server den Dateinamen mit
umgeben und die Applikation erkennt, daß das Leerzeichen zum
Dateinamen gehört. Gleiches gilt natürlich auch für Dateinamen, die
von einer Applikation an einen Server geschickt werden.
Die Frage bleibt, wie man denn nun einfache Anführungszeichen
überträgt. Nun, solche Zeichen, die zum Dateinamen gehören, werden
einfach verdoppelt. Aus Zorro's Hypertext wird für die Übertragung
'Zorros Hypertext'. In diesen Fällen wird also die gleiche Methode
wie beim Drag&Drop-Protokoll eingesetzt.
Querverweis:
AV_PROTOKOLL VA_ACC_QUOTING(a) VA_SERVER_QUOTING(a)
VA_PROTOSTATUS Drag&Drop-Protokoll
15.1.2 AV-Funktionen
Diese Nachrichten werden von einer Applikation an Gemini bzw.
einen vorhandenen AV-Server geschickt.
Querverweis: VA-Funktionen Nachrichten
15.1.2.1 AV_ACCWINDCLOSED
Name: |
»AV_ACCWINDCLOSED« |
Nummer: |
0x4726 |
Beschreibung: |
Eine Applikation teilt dem AV-Server mit, daß ein Fenster
geschlossen wurde. Dies braucht die Applikation nur in dem Fall zu
tun, wenn sie selbst das Fenster schließt.
Parameter |
Bedeutung |
Word 3 |
AES-Handle des Fensters |
|
Gruppe: |
AV-Funktionen |
Querverweis: |
AV_ACCWINDOPEN AV-Protokoll
|
15.1.2.2 AV_ACCWINDOPEN
Name: |
»AV_ACCWINDOPEN« |
Nummer: |
0x4724 |
Beschreibung: |
Mit dieser Nachricht kann eine Applikation dem AV-Server
mitteilen, daß sie ein Fenster geöffnet hat.
Parameter |
Bedeutung |
Word 3 |
AES-Handle des geöffneten Fensters |
|
Gruppe: |
AV-Funktionen |
Querverweis: |
AV_ACCWINDCLOSED AV-Protokoll
|
15.1.2.3 AV_ASKCONFONT
15.1.2.4 AV_ASKFILEFONT
15.1.2.5 AV_ASKOBJECT
Name: |
»AV_ASKOBJECT« |
Nummer: |
0x4716 |
Beschreibung: |
Mit dieser Nachricht fragt eine Applikation den AV-Server nach
dem derzeit selektierten Objekt. Es wird der Name des derzeit
selektierten Objektes zurückgegeben; ist kein Objekt selektiert, so
ist der String leer.
Falls mehrere Objekte selektiert sind, so sind ihre Namen durch
Leerzeichen getrennt. |
Gruppe: |
AV-Funktionen |
Querverweis: |
VA_OBJECT AV-Protokoll
|
15.1.2.6 AV_COPY_DRAGGED
Name: |
»AV_COPY_DRAGGED« |
Nummer: |
0x4728 |
Beschreibung: |
Über diese Nachricht teilt eine Applikation dem AV-Server mit,
daß die Objekte, die auf sein Fenster gezogen wurden, zu kopieren
sind. Dies kann z.B. nach dem Ziehen von Objekten auf das
TreeView-Fenster erwünscht sein.
Parameter |
Bedeutung |
Word 3 |
Status der Tastatur (Alt,Control,Shift) |
Word 4+5 |
Zeiger auf einen String, der den Namen des Zielobjektes enthält. |
|
Achtung: Dies muss ein Pfad sein. |
Diese Nachricht ist nur als Antwort auf die Mitteilung VA_DRAGACCWIND
gedacht. |
Gruppe: |
AV-Funktionen |
Querverweis: |
VA_DRAGACCWIND AV-Protokoll
|
15.1.2.7 AV_COPYFILE
Name: |
»AV_COPYFILE« |
Nummer: |
0x4755 |
Beschreibung: |
Dieser Befehl weist den AV-Server an, bestimmte Dateien oder
Ordner zu kopieren bzw. zu verschieben.
Parameter |
Bedeutung |
Word 3+4 |
Zeiger auf Quelldateien/Ordner |
Word 5+6 |
Zeiger auf den Zielordner |
Word 7 |
Verschiedene Flags |
|
Bit 0 = Originale löschen |
|
Bit 1 = Kopien umbenennen |
|
Bit 2 = Ziel einfach überschreiben |
|
Bit 3 = Nur symbolische Links der Quellen erzeugen |
|
= (Bit 0 ist dann bedeutungslos) |
|
Bit 4-15 = reserviert, immer 0 |
Mehrere Dateien müssen durch Leerzeichen voneinander getrennt, und
Ordner stets mit abschließendem '\' angegeben werden. |
Gruppe: |
AV-Funktionen |
Querverweis: |
VA_FILECOPIED AV-Protokoll
|
15.1.2.8 AV_DELFILE
Name: |
»AV_DELFILE« |
Nummer: |
0x4757 |
Beschreibung: |
Dieser Befehl weist den AV-Server an, bestimmte Dateien bzw.
Ordner zu löschen.
Parameter |
Bedeutung |
Word 3+4 |
Zeiger auf die zu löschenden Dateien bzw. Ordner |
Word 5-7 |
reserviert (immer 0) |
Mehrere Dateien bzw. Ordner müssen stets durch Leerzeichen
getrennt, und Ordner immer mit abschließendem '\' angegeben werden. |
Gruppe: |
AV-Funktionen |
Querverweis: |
VA_FILEDELETED AV-Protokoll
|
15.1.2.9 AV_DRAG_ON_WINDOW
Name: |
»AV_DRAG_ON_WINDOW« |
Nummer: |
0x4734 |
Beschreibung: |
Eine Applikation teilt dem AV-Server mit, daß Objekte auf eines
seiner mittels AV_WHATIZIT erfragten Fenster gezogen worden sind.
Parameter |
Bedeutung |
Word 3 |
x-Position, wohin die Maus gezogen wurde |
Word 4 |
y-Position, wohin die Maus gezogen wurde |
Word 5 |
Status der Tastatur (Alt,Control,Shift) |
Word 6+7 |
Zeiger auf einen String, der die Namen der Objekte enthält. |
Die Namen sind Namen von Dateien, Ordnern oder Laufwerken, jeweils
durch ein Leerzeichen getrennt. Namen von Ordnern oder Laufwerken
enden mit einem Backslash. |
Gruppe: |
AV-Funktionen |
Querverweis: |
VA_DRAG_COMPLETE VA_DRAGACCWIND AV-Protokoll
|
15.1.2.10 AV_EXIT
Name: |
»AV_EXIT« |
Nummer: |
0x4736 |
Beschreibung: |
Eine Applikation teilt dem AV-Server mit, daß sie nicht mehr am
Protokoll teilnimmt.
Parameter |
Bedeutung |
Word 3 |
AES-ID der Applikation |
Das Absetzen dieser Nachricht sollte auf keinen Fall vergessen
werden! |
Gruppe: |
AV-Funktionen |
Querverweis: |
appl_init AV-Protokoll
|
15.1.2.11 AV_FILEINFO
Name: |
»AV_FILEINFO« |
Nummer: |
0x4753 |
Beschreibung: |
Mit diesem Befehl wird der AV-Server aufgefordert, einen
Informations-Dialog für eine bestimmte Datei bzw. einen Ordner
anzuzeigen.
Parameter |
Bedeutung |
Word 3+4 |
Zeiger auf Datei bzw. Ordnernamen (ggfs. durch Leerzeichen getrennt) |
Word 5-7 |
reserviert (immer 0) |
Mehrere Ordner bzw. Dateien werden durch Leerzeichen getrennt.
Ordnernamen müssen mit abschließendem '\' übergeben werden. |
Gruppe: |
AV-Funktionen |
Querverweis: |
VA_FILECHANGED AV-Protokoll
|
15.1.2.12 AV_GETSTATUS
Name: |
»AV_GETSTATUS« |
Nummer: |
0x4703 |
Beschreibung: |
Eine Applikation erfragt beim AV-Server den aktuellen Status,
den es diesem per AV_STATUS einmal gegeben hat. |
Gruppe: |
AV-Funktionen |
Querverweis: |
AV_STATUS AV-Protokoll
|
15.1.2.13 AV_OPENCONSOLE
Name: |
»AV_OPENCONSOLE« |
Nummer: |
0x4718 |
Beschreibung: |
Eine Applikation fordert den AV-Server auf, das Console-Fenster
zu öffnen. Ist dieses bereits offen, so wird es nach vorne gebracht.
Diese Aktion ist vor allem dann sinnvoll, wenn eine Applikation
ein TOS-Programm mittels der system-Funktion starten möchte.
Achtung: GEM-Programme dürfen von einer Applikation
auf keinen Fall per system gestartet werden. Ferner sollte
diese Nachricht nur auf ausdrücklichen Wunsch des Benutzers eingesetzt
werden, da sie ansonsten schnell zur Verwirrung führen kann.
Diese Nachricht steht z.Zt. nur in Gemini zur Verfügung. |
Gruppe: |
AV-Funktionen |
Querverweis: |
AV_OPENWIND AV_XWIND VA_CONSOLEOPEN VA_XOPEN
VA_WINDOPEN AV_STARTPROG
|
15.1.2.14 AV_OPENWIND
Name: |
»AV_OPENWIND« |
Nummer: |
0x4720 |
Beschreibung: |
Eine Applikation fordert den AV-Server auf, ein Datei-Fenster
zu öffnen.
Parameter |
Bedeutung |
Word 3+4 |
Zeiger auf den Pfad des Fensters |
Word 5+6 |
Zeiger auf Wildcard der darzustellenden Daten |
Die Nachricht sollte nur dann eingesetzt werden, wenn die Ursache
für den Benutzer klar ersichtlich ist. |
Gruppe: |
AV-Funktionen |
Querverweis: |
AV_OPENCONSOLE AV_XWIND VA_CONSOLEOPEN VA_WINDOPEN
VA_XOPEN
|
15.1.2.15 AV_PATH_UPDATE
Name: |
»AV_PATH_UPDATE« |
Nummer: |
0x4730 |
Beschreibung: |
Eine Applikation teilt dem AV-Server mit, daß sich der Inhalt
eines Verzeichnisses geändert hat. Dieses kann dann neu eingelesen
bzw. dargestellt werden.
Parameter |
Bedeutung |
Word 3+4 |
Zeiger auf den absoluten Pfad |
In Gemini wirkt dies auch auf die Unterverzeichnisse. Ein Update
von 'C:\' sorgt also dafür, daß alles, was mit Laufwerk C:\ zu tun
hat, aktualisiert wird. |
Gruppe: |
AV-Funktionen |
Querverweis: |
AV_OPENWIND AV_XWIND AV-Protokoll
|
15.1.2.16 AV_PROTOKOLL
Name: |
»AV_PROTOKOLL« |
Nummer: |
0x4700 |
Beschreibung: |
Mit dieser Nachricht sollte bei anderen Applikationen und dem
AV-Server nachgefragt werden, ob und welche Nachrichten verstanden
werden.
Parameter |
Bedeutung |
Word 3 |
Bit 0 = VA_SETSTATUS |
|
Bit 1 = VA_START |
|
Bit 2 = AV_STARTED |
|
Bit 3 = VA_FONTCHANGED |
|
Bit 4 = Quoting von Dateinamen wird verstanden und benutzt |
|
Bit 5 = VA_PATH_UPDATE |
|
Bit 6-15 = reserviert, immer 0 |
Word 4+5 |
reserviert, immer 0 |
Word 6+7 |
Zeiger auf den Programm-Namen wie er |
|
auch bei appl_find übergeben |
|
werden muß (8 Zeichen lang und nullterminiert). |
|
Gruppe: |
AV-Funktionen |
Querverweis: |
AV_STARTED VA_FONTCHANGED VA_SETSTATUS VA_START
|
15.1.2.17 AV_SENDCLICK
Name: |
»AV_SENDCLICK« |
Nummer: |
0x4709 |
Beschreibung: |
Eine Applikation schickt dem AV-Server einen Maus-Event.
Parameter |
Bedeutung |
Word 3 |
ev_mmox |
Word 4 |
ev_mmoy |
Word 5 |
ev_mmobutton |
Word 6 |
ev_mmokstate |
Word 7 |
ev_mbreturn |
|
Gruppe: |
AV-Funktionen |
Querverweis: |
evnt_button evnt_multi
|
15.1.2.18 AV_SENDKEY
Name: |
»AV_SENDKEY« |
Nummer: |
0x4710 |
Beschreibung: |
Eine Applikation schickt dem AV-Server einen Tastatur-Event,
den sie möglicherweise selbst nicht versteht.
Parameter |
Bedeutung |
Word 3 |
Status der Tastatur (ev_mmokstate) |
Word 4 |
Scancode der Taste (ev_mkreturn) |
Als inoffizielle Erweiterung ("CodeAlpha") existiert ein Konzept,
mit dem auch ASCII Zeichen übertragen werden können, zu denen kein
Scancode existiert. Hierzu wird als Scancode 0, als ASCII Wert der
gewünschte und in msg[5] der Wert $5048 übergeben, letzteres um
anzuzeigen, daß msg[4] tatsächlich gültig ist und keine Umrechnung
über Scancode-Tabellen erforderlich ist.
Diese Nachricht sollte nach Möglichkeit immer unterstützt werden,
da mit ihrer Hilfe u.a. ein applikationsübergreifendes Wechseln der
Fenster realisiert werden kann. |
Gruppe: |
AV-Funktionen |
Querverweis: |
evnt_keybd evnt_multi Scan-Code Tabelle
|
15.1.2.19 AV_SETWINDPOS
Name: |
»AV_SETWINDPOS« |
Nummer: |
0x4759 |
Beschreibung: |
Mit diesem Befehl kann ein Client angeben, an welcher Position
und mit welcher Größe das nächste Verzeichnisfenster vom AV-Server
geöffnet werden soll.
Parameter |
Bedeutung |
Word 3 |
x-Position |
Word 4 |
y-Position |
Word 5 |
Breite |
Word 6 |
Höhe des Fensters |
Word 7 |
reserviert (immer 0) |
Bei den Werten in Word-3 und Word-4 handelt es sich um
absolute Koordinaten. Wird durch AV_XWIND kein neues Fenster
geöffnet (sondern nur ein bereits geöffnetes Fenster getoppt), so hat
dieser Befehl keine Wirkung. |
Gruppe: |
AV-Funktionen |
Querverweis: |
AV_OPENWIND AV_XWIND
|
15.1.2.20 AV_STARTED
Name: |
»AV_STARTED« |
Nummer: |
0x4738 |
Beschreibung: |
Eine Applikation teilt dem AV-Server mit, daß es die
VA_START-Nachricht verstanden hat. Der Server kann daraufhin den
Speicher des Strings, der an die Nachricht gehängt war, freigeben.
Parameter |
Bedeutung |
Word 3+4 |
Zeiger auf eine Kommandozeile, in der Pfad oder Dateinamen stehen können, und der auch NULL sein darf. |
Um zu erkennen, um welche VA_START-Nachricht es sich handelt,
werden die Werte von VA_START zurückgeliefert. |
Gruppe: |
AV-Funktionen |
Querverweis: |
VA_START AV-Protokoll
|
15.1.2.21 AV_STARTPROG
Name: |
»AV_STARTPROG« |
Nummer: |
0x4722 |
Beschreibung: |
Eine Applikation fordert den AV-Server auf, ein Programm zu
starten.
Parameter |
Bedeutung |
Word 3+4 |
Zeiger auf den Programmnamen mit komplettem Pfad |
Word 5+6 |
Zeiger auf eine Kommandozeile (kann NULL sein) |
Word 7 |
beliebiges 16-Bit Wort, welches in VA_PROGSTART wieder zurückgeliefert wird. |
In Gemini werden auch die angemeldeten Applikationen mit
berücksichtigt. Dadurch ist es möglich eine Datei anzugeben, für die
dann ein Programm gesucht wird. |
Gruppe: |
AV-Funktionen |
Querverweis: |
VA_PROGSTART AV-Protokoll
|
15.1.2.22 AV_STATUS
Name: |
»AV_STATUS« |
Nummer: |
0x4704 |
Beschreibung: |
Eine Applikation teilt dem AV-Server seinen Status mit, der von
diesem gespeichert und später per AV_GETSTATUS wieder abgefragt werden
kann.
Parameter |
Bedeutung |
Word 3+4 |
Zeiger auf einen String der keine Steuerzeichen |
|
enthalten, und nicht länger als 256 Zeichen |
|
sein darf. Der Zeiger darf auch NULL sein. |
Die Applikation muss sich vorher beim Server per AV_PROTOKOLL
angemeldet haben. |
Gruppe: |
AV-Funktionen |
Querverweis: |
AV_GETSTATUS AV_PROTOKOLL AV-Protokoll
|
15.1.2.23 AV_VIEW
Name: |
»AV_VIEW« |
Nummer: |
0x4751 |
Beschreibung: |
Mit diesem Befehl wird der AV-Server angewiesen, den Viewer für
eine bestimmte Datei aufzurufen.
Parameter |
Bedeutung |
Word 3+4 |
Zeiger auf den Namen der anzuzeigenden Datei. |
Word 5 |
0 = Startet den Viewer |
|
1 = Startet den Editor (!nl) |
Word 6-7 |
reserviert (immer 0) |
Es darf nur eine einzelne Datei angegeben werden; ist kein
entsprechender Viewer vorhanden, so erhält der Benutzer eine
Fehlermeldung. |
Gruppe: |
AV-Funktionen |
Querverweis: |
VA_VIEWED AV-Protokoll
|
15.1.2.24 AV_WHAT_IZIT
Name: |
»AV_WHAT_IZIT« |
Nummer: |
0x4732 |
Beschreibung: |
Eine Applikation fragt beim AV-Server nach, was sich an einer
bestimmten Position auf dem Bildschirm befindet.
Parameter |
Bedeutung |
Word 3 |
x-Koordinate |
Word 4 |
y-Koordinate |
Die Koordinaten sind normale Pixelkoordinaten mit Ursprung in der
linken oberen Bildschirmecke. |
Gruppe: |
AV-Funktionen |
Querverweis: |
VA_THAT_IZIT AV-Protokoll
|
15.1.2.25 AV_XWIND
Name: |
»AV_XWIND« |
Nummer: |
0x4740 |
Beschreibung: |
Eine Applikation fordert den AV-Server auf, ein Datei-Fenster
zu öffnen. Es gilt:
Parameter |
Bedeutung |
Word 3+4 |
Zeiger auf den Pfad für das Fenster |
Word 5+6 |
Zeiger auf Wildcard als Filter für die Anzeige |
Word 7 |
Bitmaske |
|
0x0001 = Fenster evtl. toppen |
|
0x0002 = Wildcard soll nur selektieren |
|
0x0004 = Vorhandenes Fenster soll |
|
weiterverwendet werden. |
|
Alle anderen Bits müssen auf Null gesetzt werden. |
Diese Nachricht sollte nur dann eingesetzt werden, wenn die
Ursache für den Benutzer klar ersichtlich ist. |
Gruppe: |
AV-Funktionen |
Querverweis: |
AV_OPENCONSOLE AV_OPENWIND VA_CONSOLEOPEN VA_WINDOPEN
VA_XOPEN AV-Protokoll
|
15.1.3 VA-Funktionen
Diese Nachrichten werden von einem vorhandenen AV-Server an eine
Applikation geschickt.
Querverweis: AV-Funktionen Nachrichten
15.1.3.1 VA_ACC_QUOTING(a)
Dies ist ein Test des Protokollstatus auf Quoting. In C läßt sich
der Test als Makro wie folgt realisieren:
#define VA_ACC_QUOTING(a) ((a) & 0x10)
15.1.3.2 VA_CONFONT
Name: |
»VA_CONFONT« |
Nummer: |
0x4715 |
Beschreibung: |
Liefert den derzeit eingestellten Zeichensatz für das
Console-Fenster. Es gilt:
Parameter |
Bedeutung |
Word 3 |
Zeichensatznummer (ID) |
Word 4 |
Zeichensatzgröße (Points) |
|
Gruppe: |
VA-Funktionen |
Querverweis: |
AV_ASKCONFONT AV_ASKFILEFONT VA_FILEFONT
|
15.1.3.3 VA_CONSOLEOPEN
Name: |
»VA_CONSOLEOPEN« |
Nummer: |
0x4719 |
Beschreibung: |
Gibt zurück, ob das Console-Fenster nach vorne gebracht worden
ist.
Parameter |
Bedeutung |
Word 3 |
0 = nein |
|
<>0 = ja |
|
Gruppe: |
VA-Funktionen |
Querverweis: |
AV_OPENCONSOLE AV-Protokoll
|
15.1.3.4 VA_COPY_COMPLETE
Name: |
»VA_COPY_COMPLETE« |
Nummer: |
0x4729 |
Beschreibung: |
Diese Nachricht ist eine direkte Antwort auf AV_COPY_DRAGGED.
Parameter |
Bedeutung |
Word 3 |
Status des Kopierens |
Ein Wert <> 0 gibt an, daß wirklich etwas kopiert oder verschoben
worden ist. Dies kann die Applikation evtl. zum Neuaufbau eines
Fensters nutzen. |
Gruppe: |
VA-Funktionen |
Querverweis: |
AV_COPY_DRAGGED AV-Protokoll
|
15.1.3.5 VA_DRAGACCWIND
Name: |
»VA_DRAGACCWIND« |
Nummer: |
0x4725 |
Beschreibung: |
Der AV-Server teilt einer Applikation mit, daß Objekte auf
eines seiner mittels AV_ACCWINDOPEN angemeldeten Fenster gezogen
worden sind.
Parameter |
Bedeutung |
Word 3 |
AES-Handle des Fensters |
Word 4 |
x-Position der Maus |
Word 5 |
y-Position der Maus |
Word 6+7 |
Zeiger auf einen String, der die Namen der Objekte enthält. |
|
Gruppe: |
VA-Funktionen |
Querverweis: |
AV_ACCWINDOPEN AV_ACCWINDCLOSED AV_DRAG_ON_WINDOW
|
15.1.3.6 VA_DRAG_COMPLETE
Name: |
»VA_DRAG_COMPLETE« |
Nummer: |
0x4735 |
Beschreibung: |
Der AV-Server teilt einer Applikation mit, daß die Aktion die
per AV_DRAG_ON_WINDOW ausgelöst wurde, beendet ist.
Parameter |
Bedeutung |
Word 3 |
Status der Aktion
Ein Wert <> 0 bedeutet, daß wirklich etwas kopiert oder verschoben
wurde. Dies kann die Applikation evtl. zum Neuaufbau eines Fensters
nutzen.
|
Der zurückgelieferte Wert entspricht dem, der auch bei
AV_COPY_COMPLETE zurück gegeben wird. |
Gruppe: |
VA-Funktionen |
Querverweis: |
AV_DRAG_ON_WINDOW VA_DRAGACCWIND AV-Protokoll
|
15.1.3.7 VA_FILECHANGED
Name: |
»VA_FILECHANGED« |
Nummer: |
0x4754 |
Beschreibung: |
Diese Nachricht wird vom AV-Server als Antwort auf eine
AV_FILEINFO-Message an den Client geschickt.
Parameter |
Bedeutung |
Word 3+4 |
Zeiger auf die Namen der Dateien bzw. Ordner die bei AV_FILEINFO
übergeben wurden. |
Word 5-7 |
reserviert (immer 0)
|
Beachtet werden sollte, daß der Benutzer die Dateinamen im Dialog
verändert haben könnte, und deshalb ggfs. der über die Wörter 3+4
erreichbare String nicht mehr mit dem von AV_FILEINFO übereinstimmt. |
Gruppe: |
VA-Funktionen |
Querverweis: |
AV_FILEINFO AV-Protokoll
|
15.1.3.8 VA_FILECOPIED
Name: |
»VA_FILECOPIED« |
Nummer: |
0x4756 |
Beschreibung: |
Diese Nachricht wird vom AV-Server als Antwort auf eine
AV_COPYFILE-Message an den Client geschickt.
Parameter |
Bedeutung |
Word 3 |
0 = Fehler |
|
1 = alles ok |
Word 4-7 |
reserviert (immer 0) |
|
Gruppe: |
VA-Funktionen |
Querverweis: |
AV_COPYFILE AV-Protokoll
|
15.1.3.9 VA_FILEDELETED
Name: |
»VA_FILEDELETED« |
Nummer: |
0x4758 |
Beschreibung: |
Diese Nachricht wird vom AV-Server als Antwort auf eine
AV_DELFILE-Message an den Client geschickt.
Parameter |
Bedeutung |
Word 3 |
0 = Fehler |
|
1 = alles ok |
Word 4-7 |
reserviert (immer 0) |
|
Gruppe: |
VA-Funktionen |
Querverweis: |
AV_DELFILE AV-Protokoll
|
15.1.3.10 VA_FILEFONT
Name: |
»VA_FILEFONT« |
Nummer: |
0x4713 |
Beschreibung: |
Liefert den derzeit eingestellten Zeichensatz für ein
Dateifenster zurück.
Parameter |
Bedeutung |
Word 3 |
Zeichensatznummer (ID) |
Word 4 |
Zeichensatzgröße (Points) |
|
Gruppe: |
VA-Funktionen |
Querverweis: |
AV_ASKCONFONT AV_ASKFILEFONT VA_CONFONT
|
15.1.3.11 VA_FONTCHANGED
Name: |
»VA_FONTCHANGED« |
Nummer: |
0x4739 |
Beschreibung: |
Der AV-Server informiert eine Applikation darüber, daß sich
einer der eingestellten Zeichensätze verändert hat.
Parameter |
Bedeutung |
Word 3 |
Zeichensatz für Dateifenster (ID) |
Word 4 |
Größe des Zeichensatzes (Points) |
Word 5 |
Zeichensatz für Console-Fenster (ID) |
Word 6 |
Größe des Zeichensatzes (Points) |
Die Nachricht wird an alle Applikationen geschickt, die vorher
schon einmal einen Zeichensatz beim AV-Server erfragt haben. |
Gruppe: |
VA-Funktionen |
Querverweis: |
AV_ASKCONFONT AV_ASKFILEFONT VA_FILEFONT
|
15.1.3.12 VA_OBJECT
Name: |
»VA_OBJECT« |
Nummer: |
0x4717 |
Beschreibung: |
Liefert die Namen der derzeit selektierten Objekte.
Parameter |
Bedeutung |
Word 3+4 |
Zeiger auf eine Kommandozeile mit den Namen der selektierten Objekte. |
|
Gruppe: |
VA-Funktionen |
Querverweis: |
AV_ASKOBJECT AV-Protokoll
|
15.1.3.13 VA_PATH_UPDATE
Name: |
»VA_PATH_UPDATE« |
Nummer: |
0x4760 |
Beschreibung: |
Mit dieser Nachricht teilt der AV-Server einem Client mit, daß
sich der Inhalt eines Verzeichnisses geändert hat.
Parameter |
Bedeutung |
Word 3+4 |
Zeiger auf das Verzeichnis |
Word 5-7 |
reserviert (immer 0) |
Das angegebene Verzeichnis ist stets mit dem Zeichen '\'
abgeschlossen. Der Client muss zunächst per AV_PROTOKOLL anzeigen, daß
er diese Nachricht versteht, und beim Eintreffen derselben dann alle
betroffenen Unterverzeichnisse neu einlesen bzw. schließen. |
Gruppe: |
VA-Funktionen |
Querverweis: |
AV_PROTOKOLL AV-Protokoll
|
15.1.3.14 VA_PROGSTART
Name: |
»VA_PROGSTART« |
Nummer: |
0x4723 |
Beschreibung: |
Der AV-Server informiert eine Applikation, ob ein angegebenes
Programm gestartet wurde.
Parameter |
Bedeutung |
Word 3 |
0 = nicht gestartet |
|
<>0 = gestartet |
Word 4 |
Returncode des Programms |
Word 7 |
16-Bit Wort aus AV_STARTPROG |
Im allgemeinen wird die Applikation im Fehlerfall sofort eine
Nachricht bekommen; falls das Programm aber gestartet wird, erhält die
Applikation diese Nachricht erst nach dem Start des Programms, da die
Routine, welche den Pexec ausführt, nicht mehr wissen kann, das eine
Applikation noch schnell eine Nachricht bekommen muss. Bei einem
GEM-Programm kann man den Erfolg auch an dem AC_CLOSE erkennen.
Die Fehlererkennung ist leider nicht optimal; ferner weist der
Rückgabewert nicht aus, ob das Programm fehlerfrei gelaufen ist. |
Gruppe: |
VA-Funktionen |
Querverweis: |
AV_STARTPROG VA_START AV-Protokoll
|
15.1.3.15 VA_PROTOSTATUS
Name: |
»VA_PROTOSTATUS« |
Nummer: |
0x4701 |
Beschreibung: |
Dem Sender von AV_PROTOKOLL wird mitgeteilt, daß der Empfänger
etwas von diesem Protokoll weiß. Die Worte 3-7 des Nachrichtenpuffers
enthalten die Information, welche Nachrichten verstanden werden.
Gesetzte Bits signalisieren, daß eine Nachricht bzw. eine
Nachrichtengruppe verstanden wird. Alle nicht belegten Bits
(insbesondere in den Worten 4 und 5) sind für zukünftige Zwecke
reserviert, und sollten daher mit Null vorbesetzt werden. |
Gruppe: |
VA-Funktionen |
Querverweis: |
AV_PROTOKOLL AV-Protokoll
|
15.1.3.16 VA_SERVER_QUOTING(a)
Dies ist ein Test des Protokollstatus auf Quoting. In C läßt sich
der Test als Makro wie folgt realisieren:
#define VA_SERVER_QUOTING(a) ((a) & 0x40)
15.1.3.17 VA_SETSTATUS
Name: |
»VA_SETSTATUS« |
Nummer: |
0x4705 |
Beschreibung: |
Der AV-Server teilt einer Applikation den abgespeicherten
Status bei Nachfrage durch AV_GETSTATUS mit.
Parameter |
Bedeutung |
Word 3+4 |
Zeiger auf einen String, der keine Steuerzeichen |
|
enthält. Ein NULL-Wert gibt an, daß kein Status |
|
gespeichert war. |
Der gelieferte Status kann anschließend von der Applikation
gesetzt werden. |
Gruppe: |
VA-Funktionen |
Querverweis: |
AV_GETSTATUS AV-Protokoll
|
15.1.3.18 VA_START
Name: |
»VA_START« |
Nummer: |
0x4711 |
Beschreibung: |
Diese Nachricht wird vom AV-Server zum Start einer Applikation
benötigt. Es gilt:
Parameter |
Bedeutung |
Word 3+4 |
Zeiger auf eine Kommandozeile, in welcher |
|
Pfade oder Dateinamen stehen, oder NULL. |
|
Gruppe: |
VA-Funktionen |
Querverweis: |
AV_STARTPROG AV_STARTED VA_PROGSTART
|
15.1.3.19 VA_THAT_IZIT
Name: |
»VA_THAT_IZIT« |
Nummer: |
0x4733 |
Beschreibung: |
Der AV-Server teilt einer Applikation auf Nachfrage mit, was
sich an einer bestimmten Position auf dem Bildschirm befindet.
Parameter |
Bedeutung |
Word 3 |
ID der zuständigen Applikation |
Word 4 |
Typ des Objektes |
|
VA_OB_UNKNOWN (0) = unbekannt |
|
VA_OB_TRASHCAN (1) = Papierkorb |
|
VA_OB_SHREDDER (2) = Reißwolf |
|
VA_OB_CLIPBOARD (3) = Klemmbrett |
|
VA_OB_FILE (4) = Datei |
|
VA_OB_FOLDER (5) = Ordner |
|
VA_OB_DRIVE (6) = Laufwerkssymbol |
|
VA_OB_WINDOW (7) = Fenster |
|
VA_OB_NOTEPAD (8) = Notizblock |
|
VA_OB_NOTE (9) = |
Word 5+6 |
Zeiger auf den Namen des Objektes, oder NULL. |
Alle anderen Werte sind für zukünftige Zwecke reserviert. |
Gruppe: |
VA-Funktionen |
Querverweis: |
AV_WHAT_IZIT AV-Protokoll
|
15.1.3.20 VA_VIEWED
Name: |
»VA_VIEWED« |
Nummer: |
0x4752 |
Beschreibung: |
Diese Nachricht wird vom AV-Server als Antwort auf eine
AV_VIEW-Message an den Client verschickt.
Parameter |
Bedeutung |
Word 3 |
0 = Fehler |
|
1 = alles ok |
Word 4-7 |
reserviert (immer 0) |
Mit Hilfe dieser Nachricht teilt der Server dem Client mit, ob die
gewünschte Datei angezeigt wird, oder nicht. Die Antwort wird sofort
und immer verschickt, falls ein Fehler aufgetreten ist; anderenfalls
erhält man die Antwort in einer Multitasking-Umgebung sobald der
Viewer aktiv ist (oder unter Single-TOS nach Beendigung des Viewers)
falls der Server nicht vorher beendet wurde (z.B. durch Auslagerung
vor dem Start des Viewers). |
Gruppe: |
VA-Funktionen |
Querverweis: |
AV_VIEW AV-Protokoll
|
15.1.3.21 VA_WINDOPEN
15.1.3.22 VA_XOPEN
Name: |
»VA_XOPEN« |
Nummer: |
0x4741 |
Beschreibung: |
Der AV-Server informiert eine Applikation darüber, ob ein
angegebenes Fenster geöffnet werden konnte.
Parameter |
Bedeutung |
Word 3 |
0 = nein |
|
<>0 = ja |
|
Gruppe: |
VA-Funktionen |
Querverweis: |
AV_OPENWIND AV_XWIND VA_WINDOPEN
|