Dynamischer Modus
Die Anwendung aktiviert den Loader vor dem Aufbau der Oberfläche:
cpp
aura::ui::Loader::global().enableFromEnvironment(); // AURA_DIR
Mit AURA_DIR wählst du die Quelldateien. Ohne Wert verwendet die Anwendung ihre kompilierte UI:
bash
AURA_DIR=$PWD/ui ./my-app
AURA_DIR= ./my-app
- Einlesen: Vor jedem Aufbau prüft der Loader die Änderungszeiten aller
*.auraim Verzeichnis und seinen Unterordnern und liest bei Änderungen alle neu ein. Eine Änderung erscheint, sobald der Dialog das nächste Mal öffnet. - Gleiches Verhalten: Der Interpreter (
libs/aura-ui/src/builder/) folgt Schritt für Schritt den Regeln des Generators: Reihenfolge der Properties, aufgeschobene Properties,pressed-Gruppen, Bindungen, Neuaufbau mit Anker und Guards. - Fehlerfall: Fehlt der Dialog im Verzeichnis oder enthält eine Datei einen Fehler, kommt eine Warnung ins Log (
W [aura]) und die kompilierte Fassung erscheint. Teilweise gebaute Nodes werden vorher entfernt. Weil das still geschieht, gehört beim Arbeiten ein Blick ins Log dazu. - Versionen: Passen Datei und kompilierte App nicht zusammen (z. B. ein neues Argument), meldet der Loader „no value for the argument“ und nimmt die kompilierte Fassung.
- Verfügbarkeit: nur in Devel-Builds.
- Einschalten:
aura::ui::Loader::global().enableFromEnvironment("AURA_DIR")(StandardnameAURA_DIR): Verzeichnis aus der Umgebung, Fehler und Hinweise ins Log. - Ohne Programm:
tools/aura-viewzeigt Dialoge und Screens ohne den Ablauf des Programms an, auch live beim Tippen in VS Code (aura-view.md). Für Dialog-Argumente setzt es Platzhalter ein ("test-<name>",0,false; Listen von Datensätzen mit einem Eintrag).
Dokumentationsquelle:
docs/aura.md · Markdown herunterladen