Durch einen Mausklick auf das Element <action> startet eine definierte Aktion oder eine Methode einer Komponente.
- Aktion: Eine Aktion muss in der Bibliothek angelegt werden. Die Aktion muss eine run-Methode enthalten.
- Komponentenmethode: Für eine Bibliothekskomponente werden Methoden im Editor Methoden definiert. Diese können im Element <action> mit Hilfe eines vorangestellten Doppelpunkts (<action name=":Methodenname"/>) aufgerufen werden.
Es gibt zwei Typen von Komponentenmethoden:
- Instanzmethode (Static=false): Das self-Objekt im Code einer Methode zeigt auf die Projektkomponente.
- Klassenmethode (Static=true): Das self-Objekt im Code einer Methode zeigt hier auf die Bibliothekskomponente.
Trifft der Methodenaufruf auf keine Instanzmethode zu, wird eine passende Klassenmethoden gesucht.
Sowohl die run-Methode der Aktion, als auch die Komponentenmethode erhalten ihre Parameter über das Attribut Arguments. Die Argumente sind als Liste zu übergeben.
Eine Aktion kann als Text mit dem Aussehen eines Hyperlinks und vorangestelltem Bild oder als Schaltfläche mit Bild dargestellt werden. Das Standardbild der Aktion kann mit dem Attribut img überschrieben werden (siehe auch img).
Attributname | Verwendung | Attributwerte | Defaultwert | Beschreibung |
---|---|---|---|---|
arguments | optional | List | Liste mit Argumenten, die der run-Methode der Aktion übergeben werden | |
bColor | optional | 0,0,0 bis 255,255,255 | Systemfarbe | Hintergrundfarbe als RGB-Wert |
fColor | optional | 0,0,0 bis 255,255,255 | Systemfarbe | Fontfarbe als RGB-Wert für type=link |
font | optional | Schriftart-Schnitt-Höhe | Systemfont | Schriftart, -schnitt und -höhe für die Textdarstellung |
hSize | optional | Breite des Elements EEC = Breite in Zeichen Web-Applikation = Breite in Pixel |
||
hSizeMax | optional | maximale Breite des Elements EEC = Breite in Zeichen Web-Applikation = Breite in Pixel |
||
hSizeMax | optional | maximale Breite des Elements EEC = Breite in Zeichen Web-Applikation = Breite in Pixel |
||
hSizeMaxPx | optional | maximale Breite des Elements EEC = Breite in Pixel Web-Applikation = Breite in Pixel |
||
hSizeMaxPx | optional | maximale Breite des Elements EEC = Breite in Pixel Web-Applikation = Breite in Pixel |
||
hSizeMin | optional | minimale Breite des Elements EEC = Breite in Zeichen Web-Applikation = Breite in Pixel |
||
hSizeMinPx | optional | minimale Breite des Elements in Pixel | ||
hSizePx | optional | Breite des Elements in Pixel | ||
id | benötigt | beliebig | eindeutige ID, auf die Bezug genommen wird | |
img | optional | png, gif, jpg | action.png | weist dem Element ein anderes Bild zu |
name | benötigt | absoluter Name der Action | ||
readonly | optional | true, false | false | true = Action ist deaktiviert false = Action ist aktiviert |
refresh | optional | true, false | true | Element wird nach jeder Änderung des EOs neu aufgebaut |
showIcon | optional | true, false | true | true = Icon ist sichtbar false = Icon ist nicht sichtbar |
text | optional | der anzuzeigende Text, dieser kann mit Hilfe der Formelsprache berechnet werden | ||
tooltip | optional | Text oder Form-UI des einzublendenden Tooltips (siehe tooltip) | ||
type | optional | link, button | link | Darstellungstyp der Action: link = Text mit Hyperlink button = Schaltfläche |
visible | optional | true, false | true | true = Element ist sichtbar false = Element ist unsichtbar |
vSize | optional | Höhe des Elements EEC = Höhe in Zeichen Web-Applikation = Höhe in Pixel |
||
vSizeMax | optional | maximale Höhe des Elements EEC = Höhe in Zeichen Web-Applikation = Höhe in Pixel |
||
vSizeMaxPx | optional | maximale Höhe des Elements in Pixel | ||
vSizeMin | optional | minimale Höhe des Elements EEC = Höhe in Zeichen Web-Applikation = Höhe in Pixel |
||
vSizeMinPx | optional | minimale Höhe des Elements in Pixel | ||
vSizePx | optional | Höhe des Elements in Pixel |
Erlaubte Unterelemente | Anzahl |
---|---|
tooltip | 0..1 |
Aktion als Hyperlink mit gelbem Hintergrund:
Das Element wird mit vorangestelltem Standardbild als Hyperlink auf gelbem Hintergrund dargestellt. Es wird die Aktion ShowReadmeAction ausgeführt, deren absoluter Name angegeben ist:
<action name="Documentation_UI_Configuration.ProjectLibrary.HelpObjects.ShowReadmeAction" type="link" bColor="255,255,0" font="Arial-bold-12">show readme</action>
Ergebnis:
Aktion als Hyperlink mit Tooltip:
Das Element wird mit vorangestelltem Standardbild und Tooltip als Hyperlink dargestellt:
<action name="Documentation_UI_Configuration.ProjectLibrary.HelpObjects.ShowReadmeAction" type="link" font="Arial-bold-12" tooltip="open readme">show readme</action>
Ergebnis:
Aktion als Schaltfläche:
Das Element wird als Schaltfläche mit Standardbild dargestellt:
<action name="Documentation_UI_Configuration.ProjectLibrary.HelpObjects.ShowReadmeAction" type="button">show readme</action>
Ergebnis:
Aktion als deaktivierte Schaltfläche:
Das Element ist als Schaltfläche mit Standardbild definiert, jedoch mit Hilfe des Attributs readonly deaktiviert dargestellt:
<action readonly="true" text="='show readme'" name="Documentation_UI_Configuration.ProjectLibrary.HelpObjects.ShowReadmeAction" type="button"/>
Ergebnis:
Aktion als Link übergibt zwei Argumente:
Das Element ist als Link mit Text definiert. Es werden zwei Argumente übergeben, der Wert des Parameters Coordinate (0, 90, 180 oder 270) und die Projektkomponente this. Die Aktion ermittelt aus dem übergebenen Parameterwert eine Himmelsrichtung und schreibt sie in den Parameter CardinalPoints.
<form id="coordinate" title="coordinate">
<input receiver="=parameter('Coordinate')" type="text"></input>
<action
type="link"
arguments="=List{$Coordinate, this}"
name="Documentation_UI_Configuration.ProjectLibrary.HelpObjects.
CalculateCoordinateAction">
</action>
<label text="=$CardinalPoints"></label>
</form>
Ergebnis:
Die Aktion CalculateCoordinateAction in diesem Beispiel ruft das Command CalculateCoordinate auf, das zuvor eigens für diesen Zweck angelegt worden ist.
Die folgende Abbildung zeigt die Methoden-Sicht des Command-Editors. Darin sind zwei Argumente definiert (1) und die Übergabe der Argumente ist im Java-Code (2) des Commands implementiert.
Der Command wird von dieser Aktion aufgerufen:
Instanzmethode aufrufen:
Der Beispielcode zeigt den Aufruf der Methode CalculateCoordinate der Projektkomponente Docu_UI_Configuration. Es werden zwei Argumente übergeben, der Wert des Parameters Coordinate (0, 90, 180 oder 270) und die Projektkomponente this. Die Aktion ermittelt aus dem übergebenen Parameterwert eine Himmelsrichtung und schreibt sie in den Parameter CardinalPoints der Projektkomponente.
<form id="CalculateCoordinate" title="Calculate coordinate with instance method">
<input receiver="=parameter('Coordinate')" type="text"></input>
<action type="link"
showImg="true"
arguments="=List{$Coordinate, this}"
img="=type('Documentation_UI_Configuration.ProjectLibrary.HelpObjects.Images.action').image"
name=":CalculateCoordinate">
</action>
<label text="=$CardinalPoints"></label>
<progressBar bColor="255,255,0" font="Arial-bold_10" type="both" visible="true" />
</form>
Ergebnis: