Solaris CDE: Benutzerhandbuch für Fortgeschrittene und Systemverwalter

Steuerungen im vorderen Steuerbereich definieren

Der Benutzer kann persönliche Steuerungen durch Ablegen der entsprechenden Symbole auf der Steuerung 'Symbol installieren' erstellen.

Diese Vorgehensweise ermöglicht zwar eine einfache Anpassung der Benutzeroberfläche, jedoch steht nicht der volle Funktionsumfang der Steuerungen im vorderen Steuerbereich zur Verfügung. Eine mit 'Symbol installieren' erstellte Steuerung verfügt beispielsweise nicht über folgende Merkmale:

Steuerungsdefinitionen

Die Struktur der Definition einer Steuerung im vorderen Steuerbereich lautet:

CONTROL Steuerungsname
 {
   TYPE            Steuerungstyp
   CONTAINER_NAME  Wert
   CONTAINER_TYPE  Wert
   andere Felder zum Definieren des Erscheinungsbilds und der Funktionsweise
 }

Steuerungstypen

Das Feld TYPE der Definition bestimmt das grundlegende Verhalten der Steuerung.

TYPE (Steuerungstyp)

Funktionsweise

icon (Standard).

Die Steuerung führt eine bestimmte Aktion aus, sobald der Benutzer sie anklickt oder eine Datei auf ihr abgelegt wird.

blank

Platzhalter zum Festlegen des Abstands zwischen den Steuerungen.

busy

Betriebsanzeige. Die Steuerung blinkt (schaltet die Grafik um), wenn eine Aktion aufgerufen wird.

Client

Ein Client-Fenster im vorderen Steuerbereich.

clock

Uhr.

date

zeigt das aktuelle Datum an.

file

repräsentiert eine Datei. Durch Auswählen der Steuerung wird die Standardaktion für die Datei ausgeführt.

Eine neue Steuerung erstellen

Dieser Abschnitt enthält Informationen über die allgemeinen Schritte zum Definieren einer Steuerung und zum Erstellen der verschiedenen Steuerungstypen.

  1. Soll die Steuerung über eine PUSH_ACTION und/oder DROP_ACTION verfügen, erstellen Sie die Aktionsdefinitionen. Diese Aktionen werden ausgeführt, wenn der Benutzer auf die Steuerung klickt oder eine Datei auf ihr ablegt.

  2. Erstellen Sie die Symboldateien für die Steuerung.

    Informationen über die Größe, Namen und Verzeichnisse der Symbole finden Sie im Abschnitt "Symbolbilddateien".

  3. Erstellen Sie eine neue Konfigurationsdatei für den vorderen Steuerbereich im Verzeichnis:

    • Systemweit: /etc/dt/appconfig/types/ Sprache/*.fp

    • Persönlich: Home-Verzeichnis /.dt/types/*.fp

  4. Fügen Sie die Steuerungsdefinition der Datei hinzu.

  5. Speichern Sie die Datei.

  6. Wählen Sie 'Workspace Manager neu starten' aus dem Menü 'Arbeitsbereich'.

Eine Steuerung erstellen, die beim Anklicken eine Aktion ausführt

Mit den folgenden Feldern wird die Funktionsweise der Steuerung definiert:

Eine Steuerung erstellen, die eine Datei öffnet

Mit den folgenden Feldern wird die Funktionsweise der Steuerung definiert:

Eine Steuerung als Ablagezone erstellen

Geben Sie mit Hilfe des Feldes DROP_ACTION die Aktion an, die beim Ablegen einer Datei auf der Steuerung ausgeführt wird. Die Aktion muß in der Lage sein, Dateiargumente zu verarbeiten.

Oftmals enthält eine Steuerungsdefinition sowohl das PUSH_ACTION - Feld als auch das DROP_ACTION -Feld. Es kann dann dieselbe Aktion für Ziehen und Ablegen verwendet werden.

Die folgende Steuerung befindet sich im zusätzlichen Steuerbereich 'Persönliche Anwendungen' und startet den X-Client xwud, der ein Dateiargument benötigt.

CONTROL Run_xwud
 {
 	CONTAINER_NAME				PerAppsSubpanel
 	CONTAINER_TYPE				SUBPANEL
 	POSITION_HINTS				2
 	ICON							XwudImage
 	PUSH_ACTION					RunXwud
 	DROP_ACTION					RunXwud
 }

Eine Steuerung erstellen, die eine Datei überwacht

Mit den folgenden Feldern wird die Funktionsweise der Steuerung definiert:

Eine Einzelinstanz-Steuerung (Schalter) erstellen

Eine Einzelinstanz-Steuerung prüft, ob der Prozeß bereits ausgeführt wird, der mit PUSH_ACTION gestartet wird. Wurde der Prozeß noch nicht gestartet, wird PUSH_ACTION ausgeführt. Läuft der Prozeß bereits, wird das betreffende Fenster in den Vordergrund des aktuellen Arbeitsbereichs gebracht.

Mit den folgenden Feldern wird die Funktionsweise der Steuerung definiert:

Eine Client-Fenstersteuerung erstellen

Eine Client-Fenstersteuerung ist ein Anwendungsfenster im vorderen Steuerbereich. Es kann beispielsweise durch Erstellen einer xload -Client-Fenstersteuerung im vorderen Steuerbereich eine Systemauslastungsanzeige eingefügt werden.

  1. Definieren Sie die Steuerung.

    Mit den folgenden Feldern wird die Funktionsweise der Steuerung definiert:

    • TYPE: Hat den Wert Client.

    • CLIENT_NAME: Gibt den zu startenden Client an.

      Der Wert von CLIENT_NAME muß mit der ersten Zeichenfolge (res_name) der Eigenschaft WM_CLASS des Hauptfensters der Anwendung übereinstimmen. Weitere Informationen hierzu finden Sie auf der Hilfeseite xprop(1).

    • CLIENT_GEOMETRY: Gibt die Größe (in Pixel) an, die für den vorderen Steuerbereich des Client-Fensters benötigt wird.

      Die Hilfeseite xwininfo(1) beschreibt, wie die Größe eine Fensters in Pixel ermittelt werden kann.

  2. Wählen Sie 'Workspace Manager neu starten' aus dem Menü 'Arbeitsbereich'.

  3. Starten Sie den Client an der Befehlszeile eines Terminal-Emulatorfensters.

    Die folgende Steuerung zeigt eine Auslastungsanzeige von 30 x 20 Pixel an.

    CONTROL LoadMeter
     {
     	TYPE							client
     	CONTAINER_NAME				Top
     	CONTAINER_TYPE				BOX
     	CLIENT_NAME					xload
     	CLIENT_GEOMETRY			30x20
     }

    Wird der Client zwischen den Sitzungen nicht gespeichert und wiederhergestellt, sollten Sie die Steuerung so konfigurieren, daß sie beim Klicken des Benutzers auf das Symbol den Client startet. Sie können beispielsweise die Steuerung LoadMeter konfigurieren, den Client xload zu starten, indem Sie folgende Zeile zu der Definition hinzufügen:

    PUSH_ACTION				StartXload

    und diese Aktion erstellen:

    ACTION StartXload
     {
     	WINDOW_TYPE				NO_STDIO
     	EXEC_STRING				/usr/contrib/bin/X11/xload
     }

Eine Steuerung animieren

Sie können einer Steuerung eine Animationssequenz zuordnen, die beim Klicken auf die oder Ablegen auf der Komponente verwendet wird.

Damit eine Animation verwendet werden kann, muß die Steuerung folgende Bedingungen erfüllen:

  1. Die Animationssequenz wird mit der Komponente ANIMATION angegeben:

    	ANIMATION Animationsname
     	{
     		ANIMATION	icon1				[milisecond_delay]
     		ANIMATION	icon2				[milisecond_delay]
     		...
     	}

    wobei icon1, icon 2, etc. die Namen der Symbole sind und milisecond_delay die Zeitverzögerung zwischen Animationssymbolen in Millisekunden ist. Die Standardzeitverzögerung beträgt 200 Millisekunden.

  2. Fügen Sie das Feld PUSH_ANIMATION und/oder das Feld DROP_ANIMATION der Steuerungsdefinition hinzu, um den Namen der ANIMATION -Sequenz anzugeben.

    Im folgenden Beispiel wird eine Steuerung animiert, mit der die Anwendung BestEditor gestartet werden kann. Die Zeitverzögerung zwischen den Symbolen beträgt 300 Millisekunden. Es wird vorausgesetzt, daß die Symboldateien frame1, frame2 usw. vorhanden sind.

    CONTROL BestEditor
     {
     	...
     	PUSH_ANIMATION BestEdAnimation
     	...
     }
     ANIMATION BestEdAnimation
     {
     	frame1			300
     	frame2
     	...
     }

Elementhilfe für die Steuerungen im vorderen Steuerbereich bereitstellen

Elementhilfe kann auf zwei Arten für eine Steuerung bereitgestellt werden: