Opublikowano wersję projektu Cambalache 0.10.0, rozwijającego narzędzie do szybkiego tworzenia interfejsów dla GTK 3 i GTK 4, korzystającego z paradygmatu MVC i filozofii priorytetowego znaczenia modelu danych. W przeciwieństwie do Glade, w Cambalache dostępne jest wsparcie dla prowadzenia wielu interfejsów użytkownika w jednym projekcie. Kod jest napisany w Pythonie i dostarczany na licencji LGPLv2.1. Dostępny jest pakiet instalacyjny w formacie flatpak.
Cambalache nie zależy od GtkBuilder i GObject, ale zapewnia model danych zgodny z systemem typów GObject. Model danych może importować i eksportować wiele interfejsów na raz, obsługuje obiekty, właściwości i sygnały GtkBuilder, zapewnia stos cofania operacji (Undo / Redo) oraz możliwość kompresji historii poleceń. Do generowania modelu danych z plików gir dostępne jest narzędzie cambalache-db, a do generowania klas GObject z tabel modelu danych – narzędzie db-codegen.
Interfejs może być generowany w oparciu o GTK 3 lub GTK 4, w zależności od wersji określonej w projekcie. Aby zapewnić wsparcie dla różnych gałęzi GTK, składanie obszaru roboczego odbywa się z wykorzystaniem backendu Broadway, który pozwala na renderowanie wyjścia biblioteki GTK w oknie przeglądarki internetowej. Główny proces Cambalache zapewnia oprawkę opartą na WebKit WebView, w której za pomocą Broadway transmitowane jest wyjście z procesu Merengue, który bezpośrednio zajmuje się renderowaniem interfejsu tworzonego przez użytkownika.

W nowym wydaniu:
- Dodano wsparcie dla bibliotek libAdwaita i libHandy, oferujących zestaw komponentów do stylizacji interfejsu użytkownika, zgodnych z zaleceniami GNOME HIG.
- Dodano wsparcie dla definiowania nowych obiektów bezpośrednio (Inline) w bloku właściwości innego obiektu, bez użycia odniesień.
- Dodano wsparcie dla definiowania specjalnego typu podrzędnego, stosowanego np. w widżecie nagłówka okna.
- Dodano wsparcie dla przetasowywania pozycji elementów podrzędnych.
- Dodano wsparcie dla typów enumerowanych i flagowych dla GdkPixbuf, Pango, Gio, Gdk i Gsk.
- Dodano tłumaczenie interfejsu na język ukraiński.
- Zaproponowano nowe edytory właściwości.

Źródło: opennet.ru

