90 likes | 184 Views
Kennst du den schon? Altes und Neues von der Xpert.ivy GUI-Development Front Demonstriert am Beispiel X.MON. Autoren: Kaspar von Gunten + Tamas Kis Datum: 24.4.2012. Wir haben 25 Minuten für…. Agenda. Demonstration GUI Features X.MON Einbau eigener Widgets Eigenes Look- And - Feel
E N D
Kennst du den schon?Altes und Neues von der Xpert.ivy GUI-Development FrontDemonstriert am Beispiel X.MON Autoren: Kaspar von Gunten + Tamas Kis Datum: 24.4.2012
Wir haben 25 Minuten für… Agenda Demonstration GUI Features X.MON • Einbau eigener Widgets • Eigenes Look-And-Feel • Dynamischer Panelwechsel • Integration anderer Anwendungen • Persistente UI-Settings Fragen
Demo Einbau eigener Widgets Vorgehen • ULC Erweiterung (Server/Client) schreiben • Packen und Signieren • Ins clientlib/extensions/Verzeichnis von Server oder Designer stellen Doku • Designer Guide > Extensions > Rich Dialog Clientside Libraries > Providing Custom ULC Widgets GUI Development ACHTUNG Die Xpert.ivy Lizenz erlaubt nur die Verwendung von ULC. Für die Entwicklung eigener Erweiterungen wird eine gültige ULC Developer Lizenz benötigt. Mehr Infos unter http://www.canoo.com > RIA Suite
Demo Zertifikat erstellen, Client signieren GUI Development 1. Eigenes Zertifikat erstellen: > keytool -genkeypair -dname "cn=Dev Day, ou=IvyTeam, o=Soreco, c=CH" -alias devday-keypass dev123 -keystoremykeystore -storepasssesam -validity 90 2. Die Datei build.properties im Verzeichnis clientlibs/ ergänzen: keystore.file=C:/Users/kvg/mykeystore keystore.password=sesameopenthee keystore.alias=devday keystore.keypass=dev123 3. Eigene *.jar Dateien nach clientlib/extensions/<myExt>/clientLibs kopieren. 4. Die Datei clientlib/extensions/build.xml mit Ant (im Designer) ausführen. > [echo] Extension <path/to/myExt> built successful. 5. Eigenschaften in clientlib/extensions/extension.any ergänzen.
Demo Eigenes Look-And-Feel GUI Development Vorgehen • Eigenes LookAndFeel kann analog zu Clientside Libraries mitgepackt werden • Einstellung/Aktivierung auf dem Server unter Application > Configuration Properties Eigenes LF im Rich Dialog Editor • LF ContributorPluginkonfigurieren und zum Designer hinzufügen • Auswahl/Aktivierung auf dem Designer unter Preferences > Java > Visual Editor
Dynamisches UI GUI Development Vorgehen • Rich Dialogs auf ein inneres Card Display laden • Mit myDisplay.selectPanel(name) zwischen Panels hin- und herschalten • Nie Panels mit removePanel(name) von einem Display entfernen (nur mit unload) Doku • Keine (Public API tobereleased) myDisplay.selectPanel(panelNames.get(ctr++ mod 3))
Einbetten von Anwendungen z.B. aus anderem Projekt GUI Development Vorgehen • Beliebig tief verschachtelte Komponenten schicken einen Broadcast: load(“workflowUI“) • Implementierung Top Level Frame mit Display als Broadcast-Listener. Ohne Business Logik, aber mit Launcher-Funktionalität
Demo Persistente UI Settings Pro RD und User! GUI Development Vorgehen • User-Context = Persistenter Settings-Container mit optionalem Namenivy.rd.context.setAttribute(key,value)ivy.rd.context.getAttribute(key) • Kann auch zum Ablegen von Nicht-UI-Einstellungen benutzt werden • Achtung: Keine Business-kritischen Daten! Doku • Designer Guide > Rich Dialogs > Rich Dialog User Context Inklusive Beispiele