Na konferenci GUADEC 2021 byl představen Cambalache, nový nástroj pro rychlý vývoj rozhraní pro GTK 3 a GTK 4, využívající paradigmatu MVC a filozofii primární důležitosti datového modelu. Jedním z nejvýraznějších rozdílů oproti Glade je podpora více uživatelských rozhraní v jednom projektu. Kód projektu je napsán v Pythonu a je dodáván pod licencí GPLv2.
Pro zajištění podpory několika větví GTK je pracovní prostor vytvářen za použití backendu Broadway, který umožňuje vykreslovat výstup knihovny GTK v okně webového prohlížeče. Hlavní proces Cambalache poskytuje obal s WebKit WebView, ve kterém se prostřednictvím Broadway vysílá výstup z procesu Merengue, který se přímo zabývá vykreslováním rozhraní, které vytváří uživatel. Rozhraní může být generováno na základě GTK 3 a GTK 4, v závislosti na verzi definované v projektu.

Cambalache není závislý na GtkBuilder a GObject, ale poskytuje datový model odpovídající systému typů GObject. Datový model může importovat a exportovat najednou několik rozhraní, podporuje objekty, vlastnosti a signály GtkBuilder, poskytuje zásobník pro vracení operací (Undo / Redo) a možnost komprese historie příkazů. Pro generaci datového modelu z gir-souborů je k dispozici utilita cambalache-db, a pro generaci tříd GObject z tabulek datového modelu — utilita db-codegen.

Zdroj: opennet.ru
