.. _ref-widget-props: Allgemeine Properties ========== Jedes Widget verfügt über eine Vielzahl von Properties, welche die Darstellung bzw. das Verhalten des Widgets in der Anwendung beeinflussen. Diese Properties können mittels des XML-Befehls:: oder:: PROPERTYVALUE gesetzt werden (vgl. auch :ref:`ref-typevalue`) Parallel dazu können die Properties auch aus Scriptbereichen in der Anwendung (vgl. :ref:`Actions `) gesetzt werden. Im folgdenden wird auf diese Möglichkeit nur an ausgewählten Stellen eingegangen. Die generelle Syntax für den Zugriff auf Properties in Scripten ist:: // Zugriff auf eine Property des Widget auf dem diese Action aufgerufen wird this.BackgroundColor = "red"; // Zugriff auf eine Property über eine Referenz auf ein anderes Widget welche // in der Variablen "myWidget" gespeichert ist var myWidget = lookup("OtherWidget"); myWidget.BackgroundColor = "green"; Benennung von Widgets ----------------------- **Name** (String) Die Benennung von Widgets mit der Property ``Name`` ist in den meisten Fällen nicht zwingend nötig, aber immer empfohlen, da es die Übersicht und das Debugging erleichtert. In folgenden Fällen **müssen** Sie die Widgets benennen: * wenn Sie per Lookup (im XML oder JavaScript) auf ein Widget oder seine Children zugreifen wollen * wenn Sie per JavaScript ein Widget (oder seine Children) steuern wollen * wenn Sie ein Template definieren (Templates werden über den Namen referenziert) * wenn Sie Funktionalität nutzen wollen, die auf Widgets mit vordefiniertem Namen angewiesen sind (z.B. das ``widget name="Grid"`` im LineChart) Default: ``""`` Wählen Sie den Namen so, dass er nicht mit einer Widget-Property oder selbst definierten Variablen kollidiert. Im Namensraum eines Widgets darf eine Bezeichnung nicht mehrfach vorkommen. **Title** (String) Diese Property kann nur auf der Presentation gesetzt werden. Sie wird, wo es die Ausspielplattform erlaubt, angezeigt (z.B. als Fenstertitel im Projektor und im Browser). Default: ``"No Title"`` Spezielle Properties --------------- **Presentation** (Widget) In dieser Property ist in jedem Widget eine Referenz auf die Presentation, also die oberste Hierarchiestufe der Anwendung gepspeichert. **Base** (URL) In der ``Base`` wird die Basis-URL der Anwendung gespeichert, welche genutzt wird um bspw. Pfadangaben für Bilder aufzulösen. Diese Property ist nur auf der Presentation vorhanden. Default: ``undefined`` **IO** (Object) Diese Property beinhaltet eine Referenz auf das Input/Output (IO) System der Anwendung. Dieses kann genutzt werden um bspw. Tastaturen oder andere Eingabegeräte anzusprechen. Diese Property ist nur auf der Presentation vorhanden. **Children** (List[Widget], read-only) Diese Property beinhaltet eine Liste der ``Children`` des Widgets. Debugging --------------- **Debug** (Boolean) Schaltet Debug-Informationen ein, es werden der Ankerpunkt, die Bounds und Padding markiert. Default: ``false`` Werte: ``true``, ``false`` Data -------------- vgl. den Abschnitt :ref:`ref-data` **Data** (Data) **DataObserver** (Data) Layout -------------- Vgl. den Abschnitt :ref:`ref-layout` **Layout** (Symbol) **LayoutConstraints** (String) **PreferredBounds** (Rectangle) Animation --------------- Vgl. den Abschnitt :ref:`ref-animation` **AnimationControl** (Symbol) Dient zum Starten/Stoppen der auf dem Widget definierten (Haupt-)Animation. Default: ``""`` Werte: ``play``, ``pause``, ``stop``, ``rewind``, ``playfromstart`` ::