Previous topic

4.7. Interaktion

Next topic

4.9. Das Type-Value-Prinzip

This Page

4.8. Ausgewählte Methoden der Widget-Klasse

Das Widget stellt zahlreiche Methoden zur Verwendung in Skripten zur Verfügung. Hier werden die am häufigsten genutzten erläutert.

callActionOnNextFrame(String)
Diese Methode ruft beim nächsten Frame der Wiedergabe die genannte Action auf.
lookup(String)

Mit der Methode lookup(Suchbegriff) kann nach Widgets mit dem gesuchten Namen innerhalb des Widgets-Baums gesucht werden. Dabei wird im Namensraum des Widgets selbst und - falls die Bezeichnung dort nicht gefunden wird - vom aufrufenden Widget aufwärts bis in die Presentation gesucht:

<widget name="widget1">
  <property name="Location" value="40,40"/>
  <property name="Shape" value="R 50 50"/>
  <property name="BackgroundColor" value="red"/>
</widget>

<widget name="widget2">
  <property name="Location" value="225,225"/>
  <property name="BackgroundColor" value="yellow"/>
  <property name="Shape" value="R 50 50"/>
  <property name="Interactive" value="true"/>
  <action trigger="pointer-down">
   // bei klick auf das Widget wird mittels Lookup eine Referenz
   // auf "widget1" erzeugt auf diesem die Property Location gesetzt.
     this.lookup("widget1").Location = "100,100";
  </action>
</widget>
route(Object)
Die Methode route(Object) versucht das übergebene Objekt anhand der auf dem Widget registrierten Routen weiterzuleiten. Siehe dazu auch das Kapitel zu Routen.
queueData(Data)
Mittels der Methode queueData(Data) wird das übergebene Data beim nächsten Framedurchlauf mit dem Trigger data als Signal vom Widget in die Anwendung gesendet.
getValueForKey(String)
Die Methode getValueForKey(KeyName) liefert den für den genannten Key auf dem Widget gespeicherten Wert zurück. Sollte weder eine Property oder eine selbstdefinierte Eigenschaft auf dem Widget existieren, liefert die Methode null zurück.
getWithDefault(String, Object)

Wie getValueForKey(Key), aber getWithDefault(Key, DefaultValue) liefert statt null den DefaultValue zurück.

<widget name="widget1">
  <property name="Location" value="40,40"/>
  <property name="Interactive" value="true"/>
  <action trigger="pointer-down">
     this.getWithDefault("Name", "Hans")       // liefert "widget1" zurück
     this.getWithDefault("LastName", "Hans")   // liefert "Hans" zurück
  </action>
</widget>
addChild(Widget)
Mittels addChild(Widget) kann ein Widget per Script in den Widget-Baum als Child eingehängt werden.
removeChild(Widget)
Diese Funktion entfernt das übergebene Widget aus dem Widget-Baum, sofern es ein Child des aufrufenden Widgets ist. Das entfernte Widget wird zurückgeliefert. Sofern das übergebene Widget nicht gefunden wird, liefert die Methode null zurück.
removeChildAt(Number)
Entfernt ein Child an einer bestimmten Index-Position und liefert dieses als Rückgabewert zurück.
getChildren()
Mittels dieser Funktion kann eine Liste der Children von eines Widgets abgerufen werden. Vgl. auch die Property Children.
getChildAt(Number)
Hiermit wird ein Child an einer bestimmten Position angesprochen und eine Referenz auf dieses Child zurückgeliefert.

Weitere Methoden des Widgets werden in der API-Dokumentation erläutert.

CLASSDOC:Widget