6.2.1. Verwendung der nativen UI Referenz

Jedes Jo Widget liefert mit Hilfe der folgenden Methode die native UI Referenz:

    Object getUiReference();

Der Typ hängt dabei von der verwendeten SPI Implementierung ab. Für Basis Widgets ist dies in der Regel das direkte native Pendant, also zum Beispiel unter Swing ein JPanel für ein IComposite, ein JButton für ein IButton und so weiter. Es gibt jedoch Ausnahmen, so liefert eine ITable unter Swing ein JScrollPane welches eine JTable enthält und unter Swt eine org.eclipse.swt.widget.Table. Im Zweifelsfall sollte man einfach in der aktuellen SPI Implementierung nachschauen, oder es mittels getClass().getName() ausprobieren. Composite Widgets liefern meist ein JPanel für Swing und ein org.eclipse.swt.widget.Composite für Swt, aber auch hier gibt es Ausnahmen.

Man erhält als UI Referenz immer das native Root Widget, welches von der Spi für die Erzeugung des Widget angelegt wurde. Dadurch ist immer eindeutig, wo die native Widget Hierarchie für das Jo Widget beginnt. Für die Swing SPI Implementierung wäre es also nicht zulässig, die JTable als UI Referenz zurückzugeben. Will man eine Referenz auf die zugehörige JTable haben, kann man diese aus dem JScrollPane herausholen.


Siehe auch PDF Version dieses Dokuments, Jowidgets API Spezifikation