[ Impressum ]

Akzessoren für bestehende Zebra-Klassen

www.Rozek.de > Zebra > Tweaks > Accessors
Die Handhabung von Objekt-Eigenschaften ist in Zebra [1] nicht sonderlich konsequent gelöst: auf manche Eigenschaften muss direkt zugegriffen werden, für andere stehen nur Akzessoren bereit. Diese Inkonsequenz ist unnötig und sorgt höchstens für Verwirrung bzw. stellt eine zusätzliche Quelle für Programmierfehler dar.

Zu meinen ersten Zebra-Erweiterungen gehört deshalb das Anlegen von Akzessoren (Getter und ggfs. Setter) für die bestehenden Klassen und deren Unterklassen. Für die Erweiterungen wird dabei das zuvor beschriebene Verfahren genutzt - was ungefährlich ist, da auch die Unterklassen keine Akzessoren für von ihren Oberklassen geerbte Eigenschaften bereitstellen.

Leider ist mir derzeit kein Verfahren bekannt, wie die Eigenschaften von Zebra-Objekten automatisiert erfasst und daraus Akzessoren generiert werden könnten - stattdessen ist Handarbeit angesagt.

Bislang wurden folgende Klassen auf diese Weise erweitert:
  • zebra.layout.Layoutable
    • get/setX, get/setY, get/setWidth, get/setHeight
    • get/setBounds, get/setLocation, get/setSize <= the setters expect a structure as argument
    • getConstraints, getLayout, getParent
  • zebra.ui.Panel
    • enable, disable
    • getBackground, getBorder
Alle genannten Erweiterungen sind Teil meines "ZebraTweaks"-Paketes.

Viel Spaß damit!

Literaturhinweise

[1]
Andrei Vishneuski
HTML5 Rich UI JavaScript Library
Zebra ist eine noch relativ neue JavaScript-Bibliothek für grafische Benutzeroberflächen in Web-Anwendungen. Diese Seite ist der primäre Anlaufpunkt, wenn Sie sich für Zebra interessieren.