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

Kapitel 10 Einführung in Aktionen und Datentypen

Bei Aktionen und Datentypen handelt es sich um wichtige Komponenten bei der Integrierung von Anwendungen auf dem Desktop. Sie stellen eine Möglichkeit zur Verfügung, eine Benutzerschnittstelle zum Starten von Anwendungen und zum Bearbeiten von deren Datendateien zu benutzen.

In diesem Kapitel wird das Konzept von Aktionen und Datentypen erläutert. Es wird beschrieben,

Weiterführende Informationen

Die Verfahren und Regeln für das Erstellen von Aktionen und Datentypen werden in diesem Handbuch in drei Kapiteln behandelt:

Einführung in Aktionen

Bei Aktionen handelt es sich um Instruktionen, mit denen Desktop-Aufgaben wie die Ausführung von Anwendungen und das Öffnen von Datendateien automatisiert werden. Aktionen funktionieren ähnlich wie Anwendungsmakros oder Programmierfunktionen. Jede Aktion verfügt über einen Namen, der für die Ausführung der Aktion verwendet wird.

Sobald eine Aktion definiert wird, kann sie dazu verwendet werden, die Desktop-Benutzerschnittstelle anzupassen, so daß Aufgaben einfacher ausgeführt werden können. Das Desktop verfügt über Benutzerschnittstellenkomponenten wie zum Beispiel Symbole, Bedienelemente im Bedienfeld und Menüelemente für Aktionen zur Verfügung zu stellen.

Abbildung 10-1 Verwendungsmöglichkeiten für Aktionen

Graphic

Beispielsweise enthält die Gruppe von Anwendungen 'Desktop_Werkzeuge' im Anwendungsmanager Symbole, über die verschiedene Dienstprogramme gestartet werden.

Abbildung 10-2 Symbole für Aktionen in der Gruppe von Anwendungen Desktop_Werkzeuge

Graphic

Jedes dieser Symbole führt eine Aktion aus, wenn auf diesem Symbol doppelt geklickt wird. Das folgende Beispiel zeigt einen Teil der Definition der Aktion, die ausgeführt wird, wenn der Benutzer auf dem Symbol mit der Bezeichnung Xwd Display doppelt klickt. Die Aktion ist in der Konfigurationsdatei /usr/dt/appconfig/types/sprache/xclients.dt definiert.

Tabelle 10-1

ACTION Xwud  

 

 

LABEL  

Xwd Display 

TYPE 

COMMAND 

EXEC_STRING 

/usr/bin/X11/xwud -noclick -in \ 

%(File)Arg_1"Xwd File To Display:"% 

 

 

...

 

Der Befehl im Feld EXEC_STRING der Aktion wird ausgeführt, wenn der Benutzer dieses Symbol doppelklickt.

Das Bedienfeld verwendet ebenfalls Aktionen. Das folgende Beispiel zeigt einen Teil der Definition des Bedienelements mit der Bezeichnung 'Terminal' in der Bedientafel 'Persönliche Anwendungen'. Das Bedienelement ist in der Konfigurationsdatei /usr/dt/appconfig/types/sprache/dtwm.fp definiert.

Tabelle 10-2

CONTROL Term  

 

 

ICON 

Fpterm 

LABEL  

Terminal  

PUSH_ACTION 

Dtterm 

...

 

 

Das Feld PUSH_ACTION gibt an, welche Aktion ausgeführt werden soll, wenn der Benutzer das Bedienelement anklickt. In diesem Fall handelt es sich um eine Aktion mit dem Namen Dtterm.

Daneben werden Aktionen häufig in Menüs verwendet. Datendateien verwenden normalerweise Aktionen in ihrem Menü 'Ausgewählt' im Dateimanager. Zum Beispiel verfügen XWD-Dateien (Dateien, deren Namen die Erweiterung.xwd oder.wd haben) über eine Aktion 'Öffnen', die das Anzeigenbild anzeigt, indem die Aktion 'Xwud' ausgeführt wird.

Abbildung 10-3 Aktion 'Öffnen' für Dateien des Datentyps XWD

Graphic

Die Aktionen im Menü 'Ausgewählt' werden in der Datentypdefinition für XWD-Dateien angegeben. Die Definition befindet sich in der Konfigurationsdatei /usr/dt/appconfig/types/sprache/xclients.dt.

Tabelle 10-3

DATA_ATTRIBUTES XWD 

 

 

ACTIONS  

Open,Print  

ICON 

Dtxwd 

...

 

 

Der Datentyp XWD und die zugehörigen Aktionen 'Öffnen' und 'Drucken' , werden im Abschnitt Failed Cross Reference Format erläutert.

Wie Aktionen Symbole für Anwendungen erstellen

Als Beispiel soll das Symbol Xwd Display in der Gruppe von Anwendungen Desktop_Werkzeuge betrachtet werden. Wird auf diesem Symbol doppelt geklickt, wird der X-Client xwud ausgeführt. Dennoch stellt dieses Symbol nicht direkt die ausführbare Datei /usr/bin/X11/xwud dar.

Das Symbol Xwd Display wird in der Gruppe von Anwendungen angezeigt, weil in diesem Verzeichnis eine Datei mit dem Namen Xwud steht (siehe Abbildung 10-4). Diese Datei stellt eine zugrundeliegende AKtion mit demselben Namen, nämlich Xwud dar. In der Aktionsdefinition ist der Aktionsname der Name, der nach dem Schlüsselwort ACTION angegeben ist:

Tabelle 10-4

ACTION Xwud 

 

 

 

 

 

 

 

LABEL 

Xwd Display 

 

 

TYPE 

COMMAND 

 

 

WINDOW_TYPE 

NO_STDIO 

 

 

EXEC_STRING 

/usr/bin/X11/xwud -noclick -in \ 

 

 

 

%(File)Arg_1"Xwd Datei anzeigen:"%  

 

 

DESCRIPTION 

Die Xwd-Anzeige (Xwud) 'Aktion Xwd-Anzeige' zeigt  

eine xwd-Datei, die mit der Aktion 'Xws Capture' (Xwd) erstellt wurde. Es wird der Befehl 'xwud' verwendet. 

 

 

 

Die Datei wird als Aktionsdatei bezeichnet, weil sie eine Aktion darstellt. Eine Datei ist eine Aktionsdatei, wenn es sich um eine ausführbare Datei mit demselben Namen wie eine Aktion handelt. Das zugehörige Symbol im Anwendungsmanager (oder im Dateimanager) wird Aktionssymbol oder Anwendungssymbol genannt, weil durch Doppelklicken auf diesem Symbol eine Anwendung gestartet wird.

Abbildung 10-4 Anwendungs-(Aktions-)symbol, das eine Aktionsdatei darstellt

Graphic

Stellt der Anwendungsmanager eine ausführbare Datei fest, durchsucht er die Datenbank für Aktionen, um festzustellen, ob Aktionen vorhanden sind, deren Namen dem Dateinamen entsprechen. Wird eine Entsprechung gefunden, weiss der Anwendungsmanager, daß es sich bei der Datei um eine Aktionsdatei handelt.

Der Inhalt der Aktionsdatei ist irrelevant. Aktionsdateien enthalten normalerweise Kommentare mit der Beschreibung ihrer Desktop-Funktionen.


Hinweis -

Bei einer Aktionsdatei handelt es sich nicht um eine Definitionsdatei für Aktionen. Die Aktionsdatei ist eine Datei mit demselben Namen wie die Aktion. Sie wird verwendet, um das Anwendungssymbol im Dateimanager oder im Anwendungsmanager zu erstellen. Die Definitionsdatei für Aktionen ist die Datei mit dem Namen name.dt, die die Definition der Aktion enthält.


Sobald das Desktop festgestellt hat, daß es sich bei einer Datei um eine Aktionsdatei handelt, wird die zugrundeliegende Aktionsdefinition verwendet, um das Erscheinungsbild und das Verhalten der Aktionsdatei zu definieren.

Tabelle 10-5

Beispiel: 

 

ACTION Compress 

 

LABEL  

Datei komprimieren  

ICON 

Dtcmprs 

...

 

 

Abbildung 10-5 Symbolbild, das durch das Feld ICON in der Aktionsdefinition angegeben wird

Graphic

Die Aktion Xwud wird als Befehlsaktion bezeichnet, da ihre Definition den auszuführenden Befehl (EXEC_STRING ) enthält. Das Feld TYPE in der Aktionsdefinition definiert denAktionstyp.

Zunächst wird das Symbol Xwd Display in der Gruppe von Anwendungen Desktop_Werkzeuge angezeigt. Der Benutzer kann jedoch zusätzliche Exemplare des Aktionssymbols in jedem Verzeichnis erstellen, für das er Schreibberechtigung hat. Solange die Aktionsdefinition für Xwud Bestandteil der Datenbank ist, wird jede ausführbare Datei mit dem Namen Xwud, die der Benutzer erstellt, eine Aktionsdatei sein, die diese Aktion darstellt, und das zugehörige Symbol im Dateimanager oder Anwendungsmanager kann verwendet werden, um die Aktion auszuführen.

Wie Aktionen Datendateien als Argumente verwenden

Ein Argument ist das Objekt, normalerweise eine Datei, an dem der Befehl ausgeführt wird. Aktionen können so definiert werden, daß sie Dateiargumente akzeptieren.

Beispielsweise gibt das Feld EXEC_STRING der Aktion Xwud an, daß ein Dateiargument erforderlich ist:

Tabelle 10-6

EXEC_STRING  

/usr/bin/X11/xwud -noclick -in \ 

 

%(File)Arg_1"Xwd Datei anzeigen:"% 

Der Term Arg steht für das Wort Argument. Die Syntax Arg_1 bedeutet das erste Argument, und (File) bedeutet, daß die Aktion dieses Argument als eine Datei behandelt.

Die einfachste Weise, in der ein Benutzer ein Dateiargument zur Verfügung stellen kann, besteht darin, eine Datendatei dem Anwendungssymbol zu übergeben. Das Desktop stellt den Pfad der übergebenen Datei fest und setzt diesen in der Befehlszeile anstelle des Texts zwischen den Symbolen % (%(File)Arg_1"Xwd Datei anzeigen:"%). Dann wird folgender Befehl ausgeführt:

/usr/bin/X11/xwud -noclick -in datei_pfad

Wenn der Benutzer auf dem Anwendungssymbol doppelt klickt, stellt das Desktop im Feld EXEC_STRING fest, daß ein Dateiargument erforderlich ist, und zeigt ein Dialogfenster an, in dem der Benutzer aufgefordert wird, einen Dateinamen oder Pfad einzugeben. Im Fall der Aktion Xwud lautet die Aufforderung:

Xwd Datei anzeigen:

Der Dateiname oder Pfad, den der Benutzer eingibt, wird als Dateiargument verwendet.

Zusätzliche Verwendung für Aktionen

Zusätzlich zum Starten von Anwendungen werden Aktionen im gesamten Desktop verwendet, um Funktionalität in folgenden Bereichen herzustellen:

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%