Solaris Common Desktop Environment: Benutzerhandbuch für Fortgeschrittene und Systemverwalter

Einführung in Datentypen

Erstellt der Benutzer eine neue Datendatei, kann das Erscheinungsbild und das Verhalten des Symbols der Datei im Dateimanager je nach dem Typ der Datendatei sehr unterschiedlich sein. Diese Fähigkeit, ein angepaßtes Erscheinungsbild und angepaßtes Verhalten für Dateien und Verzeichnisse zu erstellen, wird über den Datentypmechanismus des Desktop zur Verfügung gestellt.

Was ist ein Datentyp?

Bei einem Datentyp handelt es sich um ein Konstrukt, das innerhalb der Desktop-Datenbank definiert ist. Das folgende Beispiel zeigt die Definition des Datentyps XWD. Die Definition befindet sich in der Konfigurationsdatei /usr/dt/appconfig/types/sprache/xclients.dt.

DATA_ATTRIBUTES  XWD

{

ACTIONS           Open,Print

ICON                  Dtxwd

NAME_TEMPLATE  %s.xwd

MIME_TYPE       application/octet-stream

SUNV3_TYPE      xwd-file

DESCRIPTION    Diese Datei enthält ein Grafikbild im Format XWD.Diese Dateien werden 

                              erstellt, wenn mit der Aktion 'XwdCapture' Bilder von Fensterausschnitten

                              gemacht werden. Der Datentyp wird XWD genannt. XWD-Dateinamen enden 

                             mit '.xwd' oder '.wd'. Jede Datentypdefinition besteht aus zwei Teilen:
Tabelle 10-7

 

DATA_CRITERIA XWD1 

 

 

DATA_ATTRIBUTES_NAME  

XWD  

MODE 

NAME_PATTERN 

*.xwd 

 

 

 

DATA_CRITERIA XWD2 

 

 

DATA_ATTRIBUTES_NAME  

XWD  

MODE 

NAME_PATTERN 

*.wd 

 

Tabelle 10-8

DATA_ATTRIBUTES

beschreibt das Erscheinungsbild und das Verhalten des Datentyps.

DATA_CRITERIA,

gibt an, nach welchen Regeln (Name oder Inhalt) eine Datei diesem Datentyp zugerechnet wird. 

Das Feld DATA_ATTRIBUTES_NAME verbindet die Kriterien mit den Attributen.

Einem DATA_ATTRIBUTE können mehrere DATA_CRITERIA zugeordnet sein. Beispielsweise sind für den Datentyp XWD zwei verschiedene Namenskriterien (NAME_PATTERN) definiert, nämlich Namen, die in .xwd oder in .wd enden.

Wie Datentypen Datendateien mit Aktionen verbinden

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:

Aktionen über das Menü 'Ausgewählt' ausführen

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.

Abbildung 10-6 Das Menü 'Ausgewählt' für eine XWD-Datei

Graphic

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:

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.

Verhalten des Datentyps bei Doppelklicken definieren

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.

Eine Datendatei an ein Aktionssymbol übergeben

Ü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.

Drucken über das Desktop für einen Datentyp einrichten

Über das Desktop bestehen folgende Möglichkeiten, eine Datendatei zu drucken:

Zusätzlich zum Drucken über das Desktop stellen viele Anwendungen noch eine Möglichkeit zur Verfügung, von innerhalb der Anwendung zu drucken.

Beim Drucken über Desktop werden Aktionen mit dem Namen 'Drucken' verwendet. Bei 'Drucken' handelt es sich, wie bei 'Öffnen', um einen Aktionsnamen, der für viele verschiedene Datentypen verwendet wird. Aus diesem Grund werden bei den Aktionen 'Drucken' die Aktionszuordnung und das Feld ARG_TYPE verwendet, um das Drucken für jeden einzelnen Datentyp anzupassen.

Als Beispiel soll die Aktion 'Drucken' für den DatentypXWD betrachtet werden. Die Definition befindet sich im Verzeichnis/usr/dt/appconfig/types/ sprache/xclients.dt:

Tabelle 10-12

ACTION Print  

 

 

LABEL  

Drucken  

ARG_TYPE 

XWD 

TYPE 

MAP 

MAP_ACTION 

NoPrint 

 

Diese Aktion 'Drucken', die sich speziell auf XWD-Dateien bezieht, ist einer Aktion 'NoPrint' zugeordnet. Bei der Aktion NoPrint handelt es sich um eine spezielle Aktion, die in /usr/dt/appconfig/types/sprache/dt.dt definiert ist. Die Aktion 'NoPrint' zeigt ein Dialogfenster an, das dem Benutzer mitteilt, daß dieser Datentyp nicht gedruckt werden kann.

Hierzu zum Vergleich die Aktion 'Drucken' für PCL-Dateien:

Tabelle 10-13

ACTION Print  

 

LABEL 

Drucken 

ARG_TYPE  

PCL  

TYPE 

MAP 

MAP_ACTION 

PrintRaw 

 

Die Aktion 'PrintRaw' , die in der Konfigurationsdatei /usr/dt/appconfig/types/ sprache/print.dt definiert ist, enthält die Befehlszeile zum Drucken von PCL-Dateien.

Tabelle 10-14

ACTION PrintRaw 

 

 

 

 

TYPE 

 

COMMAND 

WINDOW_TYPE  

NO_STDIO  

 

EXEC_STRING  

/usr/dt/bin/dtlp -w %(File)Arg_1%