Auf der GUADEC 2021 wurde Cambalache prĂ€sentiert, ein neues Tool zur schnellen Entwicklung von OberflĂ€chen fĂŒr GTK 3 und GTK 4, das das MVC-Paradigma und die Philosophie der DatenmodellprioritĂ€t verwendet. Eines der auffĂ€lligsten Merkmale im Vergleich zu Glade ist die UnterstĂŒtzung mehrerer BenutzeroberflĂ€chen innerhalb eines Projekts. Der Projektcode ist in Python geschrieben und wird unter der GPLv2-Lizenz bereitgestellt.
Um die UnterstĂŒtzung mehrerer GTK-Versionen zu gewĂ€hrleisten, erfolgt die Erstellung der Arbeitsumgebung unter Verwendung des Broadway-Backends, das die Ausgabe der GTK-Bibliothek im Fenster eines Webbrowsers rendert. Der Hauptprozess von Cambalache wird durch eine Bindung an WebKit WebView bereitgestellt, in der die Ausgabe des Merengue-Prozesses, der direkt fĂŒr das Rendering der vom Benutzer erstellten OberflĂ€che verantwortlich ist, ĂŒber Broadway ĂŒbertragen wird. Die OberflĂ€che kann auf der Basis von GTK 3 und GTK 4 generiert werden, je nach der im Projekt definierten Version.

Cambalache ist unabhĂ€ngig von GtkBuilder und GObject, bietet jedoch ein Datenmodell, das mit dem GObject-Typensystem ĂŒbereinstimmt. Das Datenmodell kann mehrere Schnittstellen gleichzeitig importieren und exportieren, unterstĂŒtzt Objekte, Eigenschaften und Signale von GtkBuilder, bietet einen RĂŒckgĂ€ngig-/Wiederherstellung-Stack und die Möglichkeit, die Befehlsprotokollhistorie zu komprimieren. Zur Generierung des Datenmodells aus gir-Dateien steht das Tool cambalache-db zur VerfĂŒgung, und zur Generierung von GObject-Klassen aus den Modelltabellen wird das Tool db-codegen genutzt.

Quelle: opennet.ru
