Als Beispiel soll der Datentyp XWD betrachtet werden. Der Benutzer erstellt eine Datei mit dem Datentyp XWD, indem er der Datei eine der zwei Dateinamenerweiterungen .xwd oder.wd gibt. Das Desktop verwendet den Dateinamen als das Kriterium, nach dem es eine Datei einem Datentyp zuordnet.
Der Datentyp XWD stellt für jede Datei dieses Datentyps folgendes zur Verfügung:
Ein eindeutiges Symbol, das Benutzern hilft, die Datendateien zu erkennen.
Kontexthilfe mit Informationen über den Datentyp.
Ein angepaßtes Menü 'Ausgewählt' im Dateimanager, das die Aktionen 'Öffnen' und 'Drucken' enthält. Die Aktion 'Öffnen' für XWD-Dateien führt die Aktion Xwud aus.
Das Menü 'Ausgewählt' im Dateimanager ist nur aktiv, wenn eine Datei oder ein Verzeichnis ausgewählt ist. Die Befehle, die unten im Menü 'Ausgewählt' angezeigt werden, sind abhängig vom Datentyp. Wird beispielsweise eine XWD-Datei ausgewählt, enthält das Menü 'Ausgewählt' die Elemente 'Öffnen' und 'Drucken'.
Das Feld ACTIONS in der Datentypdefinition gibt an, welche Befehle im Menü 'Ausgewählt' des Datentyps unten angefügt werden.
Tabelle 10-9
DATA_ATTRIBUTES XWD |
---|
{ |
ACTIONS Open,Print |
... |
} |
Der Inhalt des Menüs 'Ausgewählt' ist abhängig vom Datentyp. Aber viele verschiedene Datentypen stellen eine Aktion 'Öffnen' zur Verfügung. Wird eine Datei dieses bestimmten Datentyps im Dateimanager ausgewählt und das Menü 'Ausgewählt' angezeigt, wird im Menü der Befehl 'Öffnen' angezeigt.
Die Aktion 'Öffnen' führt normalerweise die der Datendatei zugehörige Anwendung aus. Beispielsweise wird durch das Öffnen einer XWD-Datei die Aktion Xwud ausgeführt, die wiederum den X-Client xwud ausführt, um das Anzeigeabbild anzuzeigen. Das heißt, bei dem Datentyp XWD ist die Aktion 'Öffnen' synonym mit der Aktion Xwud. Ebenso wird durch das Öffnen einer Datei vom Datentyp TEXTFILE der Texteditor und durch das Öffnen einer Bitmap- oder Pixmap-Datei der Symboleditor ausgeführt.
Die Möglichkeit, verschiedene Aktionen 'Öffnen' zu erstellen, die unterschiedlich verwendet werden, basiert auf zwei Merkmalen von Aktionsdefinitionen:
Die Aktionszuordnung ermöglicht dem Benutzer, eine Aktion zu erstellen, die eine andere Aktion ausführt, anstatt einen Befehl direkt auszuführen. Beispielsweise kann eine Aktion 'Öffnen' erstellt werden, die die Aktion Xwud zuordnet (ausführt).
Datentypeinschränkungen für eine Aktion
Aktionsdefinitionen können ein Feld ARG_TYPE enthalten, das die Aktion auf bestimmte Datentypen begrenzt. Beispielsweise kann angegeben werden, daß die Aktion 'Öffnen', die die Aktion Xwud zuordnet, nur auf Dateien des Datentyps XWD angewendet wird.
Das folgende Beispiel zeigt die Definition der Aktion, die die Aktion 'Öffnen' für den Datentyp XWD der Aktion Xwud zuordnet. Sie befindet sich in der Datenbankkonfigurationsdatei /usr/dt/appconfig/types/C/xclients.dt :
Tabelle 10-10
ACTION Open |
|
---|---|
{ |
|
LABEL |
Öffnen |
ARG_TYPE |
XWD |
TYPE |
MAP |
MAP_ACTION |
Xwud |
} |
|
In dem Feld TYPE wird angegeben, daß es sich um eine Zuordnungsaktion (map) handelt. Das Feld MAP_ACTION gibt an, daß diese Aktion die Aktion Xwud ausführt. Das Feld ARG_TYPE gibt an, daß diese Aktion nur auf Dateien vom Datentyp XWD angewendet wird.
Hierzu zum Vergleich die Definition der Aktion 'Öffnen' in der Datenbankdatei /usr/dt/appconfig/types/C/dt.dt:
Tabelle 10-11
ACTION Open |
|
---|---|
{ |
|
LABEL |
Öffnen |
ARG_TYPE |
BM |
TYPE |
MAP |
MAP_ACTION |
Dticon |
} |
|
Diese Definition bezieht sich auf Dateien des Datentyps (ARG_TYPE ) BM (Bitmap-Dateien). Die Definition ordnet die Aktion 'Öffnen' der Aktion Dticon zu, die den Symbol-Editor ausführt.
Das Verhalten des Datentyps bei Doppelklicken wird durch den ersten Eintrag im Feld ACTIONS bestimmt. Beispielsweise wird beim Datentyp XWD durch Doppelklicken die Aktion 'Öffnen' ausgeführt, die ihrerseits die Aktion Xwud ausführt.
Übergibt der Benutzer eine Datendatei an ein Aktionssymbol, führt das System die Aktion aus und verwendet diese Datendatei als das Argument für die Aktion. (Weitere Informationen können dem Abschnitt "Wie Aktionen Datendateien als Argumente verwenden" entnommen werden.)
Wird beispielsweise eine XWD-Datendatei an ein Symbol Xwd Display übergeben, wird die Aktion Xwud ausgeführt und das Datendateiargument verwendet. Dadurch wird der X-Client xwud mit dieser Datendatei ausgeführt.