3.1.2. Übersicht der Toolkit Methoden

Es folgt eine kurze Übersicht über alle Methoden der Schnittstelle org.jowidgets.api.toolkit.IToolkit mit kurzen Erläuterungen oder Verweisen auf die zugehörigen Abschnitte.

Application Runner
    IApplicationRunner getApplicationRunner();  

Der IApplicationRunner wird zum Starten einer jowidgets standalone Applikation benötigt. Sie dazu auch Der Application Runner.

UI Thread Access
    IUiThreadAccess getUiThreadAccess();    

Liefert den Zugriff auf den UI Thread. Der Zugriff muss im UI Thread erfolgen. Sie auch Der Ui Thread Access

BluePrintFactory
    IBluePrintFactory getBluePrintFactory();

Liefert den Zugriff auf die BluePrintFactory

BluePrintProxyFactory
    IBluePrintProxyFactory getBluePrintProxyFactory();

Liefert den Zugriff auf die BluePrintProxyFactory

ConverterProvider
    IConverterProvider getConverterProvider();

Liefert den jowidgets Converter Provider. Siehe auch Jowidgets Converter

SliderConverterFactory
    ISliderConverterFactory getSliderConverterFactory();

Liefert eine Factory für Slider Converter. Sie auch Das Slider Viewer Widget

RootFrame Erzeugung
    IFrame createRootFrame(IFrameDescriptor descriptor);

Erzeugt ein root Frame für ein Frame Descriptor (BluePrint).

    IFrame createRootFrame(IFrameDescriptor descriptor, IApplicationLifecycle lifecycle);

Erzeugt ein root Frame für ein Frame Descriptor (BluePrint). Zusätzlich wird ein Window Listener auf dem erzeugten Frame hinzugefügt, welches auf dem lifecycle die Methode finish() aufruft, sobald das Frame geschlossen wird.

Generic Widget Factory
    IGenericWidgetFactory getWidgetFactory();

Liefert die Widget Factory von jowidgets. Siehe auch Die Generic Widget Factory

WidgetWrapperFactory
    IWidgetWrapperFactory getWidgetWrapperFactory();

Die WidgetWrapperFactory kann verwendet werden, um aus nativen Widgets (z.B. JFrame, Shell, JPanel, Composite) Wrapper zu erstellen, welche die zugehörigen jowidgets Schnittstellen implementieren (z.B. IFrame und IComposite). Siehe auch Jowidgets Code in native Projekte integrieren.

Images
    IImageFactory getImageFactory();
    
    IImageRegistry getImageRegistry();

Liefert die Image Factory und Image Registry. Siehe auch Icons und Images.

Dialog Panes
    IMessagePane getMessagePane();

Das Message Pane liefert einen vereinfachten Zugriff auf den MessageDialog.

    IQuestionPane getQuestionPane();

Das Question Pane liefert einen vereinfachten Zugriff auf den QuestionDialog.

    ILoginPane getLoginPane();

Das Login Pane liefert einen vereinfachten Zugriff auf den LoginDialog.

Layouting
    ILayoutFactoryProvider getLayoutFactoryProvider();

Der Layout Factory Provider bietet einen Zugriff auf verschiedene Layouts. Siehe auch Layouting

ActionBuilderFactory
    IActionBuilderFactory getActionBuilderFactory();

Stellt die Action Builder Factory zur Verfügung. Siehe auch Actions und Commands

Default Actions
    IDefaultActionFactory getDefaultActionFactory();

Liefert diverse default Actions. Derzeit existieren ausschließlich default Actions für Bäume. Siehe daher auch Das Tree Widget

ModelFactory
    IModelFactoryProvider getModelFactoryProvider();

Liefert diverse Model Factories für Menu Items, die Tabelle und das Levelmeter Widget

TextMaskBuilder
    ITextMaskBuilder createTextMaskBuilder();

Liefert einen Builder für Textmasken. Siehe auch Maskierte Texteingaben

InputContentCreator
    IInputContentCreatorFactory getInputContentCreatorFactory();

Liefert spezielle Content Creator für ein InputComposite oder ein InputDialog

WaitAnimation
    IWaitAnimationProcessor getWaitAnimationProcessor();

Liefert Zugriff auf die Wait Animation

AnimationRunnerBuilder
    IAnimationRunnerBuilder getAnimationRunnerBuilder();

Erzeugt einen Builder für einen AnimationRunner. Siehe auch Animationen

Delayed Events
    IDelayedEventRunnerBuilder getDelayedEventRunnerBuilder();

Erzeugt einen Builder für einen DelayedEventRunner. Siehe auch Verzögerte Events

Drag and Drop / Copy and Paste
    IClipboard getClipboard();

Liefert Zugriff auf das System Clipboard. Siehe auch Copy and Paste und Drag and Drop.

    ITransferableBuilder createTransferableBuilder();

Erzeugt einen TransferableBuilder. Siehe auch Copy and Paste und Drag and Drop.

Widget Utils
    IWidgetUtils getWidgetUtils();

Liefert Zugriff auf die Widget Utils

    IWindow getActiveWindow();

Gibt das aktive Fenster zurück. U.A. hilfreich bei der Erzeugung von Dialogen, welche über dem aktiven Fenster geöffnet werden sollen.

    List<IWindow> getAllWindows();

Gibt eine Liste aller Fenster zurück.

Toolkit Properties
    <VALUE_TYPE> void setValue(ITypedKey<VALUE_TYPE> key, VALUE_TYPE value);
    
    <VALUE_TYPE> VALUE_TYPE getValue(ITypedKey<VALUE_TYPE> key);

Mit Hilfe dieser Methoden kann man Properties auf dem Toolkit setzen und auslesen. Wenn man jowidgets Applikation schreibt, die auch Web kompatibel sein sollen, muss man sehr vorsichtig mit Singletons sein, da sich die JVM mehrere Nutzer teilen. Ansonsten könnte sich das Ändern eines globalen Zustands eines Nutzers auch auf einen anderen Nutzer auswirken.

Falls man dennoch globale Variablen benötigt, zum Beispiel zum Speichern des Security Context oder ähnlichem, kann man mit Hilfe dieser Methoden ein Session Singleton realisieren, da pro User Session genau ein Toolkit existiert. Siehe zudem auch Typed Properties.

Umrechnungsmethoden
    Position toScreen(final Position localPosition, final IComponent component);

Transformiert eine lokale Position einer Komponente in eine absolute Bildschirmposition.

    Position toLocal(final Position screenPosition, final IComponent component);

Transformiert eine Bildschirmposition in eine lokale Position einer Komponente.

SupportedWidgets
    ISupportedWidgets getSupportedWidgets();

Liefert die Info, ob bestimmte Widgets unterstützt werden. Derzeit betrift dies ausschließlich den FileChooser und DirectoryChooser. Diese werden in Webapplikationen nicht unterstützt.

SpiMigLayoutSupport
    boolean hasSpiMigLayoutSupport();

Liefert die Information, ob die verwendete SPI Implementierung eine native Mig Layout Implementierung bietet. Nur für interne Zwecke relevant. Siehe dazu auch Mig Layout


Siehe auch PDF Version dieses Dokuments, Jowidgets API Spezifikation