Опубліковано реліз проекту Cambalache 0.8.0, що розвиває інструмент швидкої розробки інтерфейсів для GTK 3 та GTK 4, який використовує парадигму MVC та філософію першорядного значення моделі даних. На відміну від Glade у Cambalache надається підтримка ведення кількох інтерфейсів користувача в одному проекті. За функціональними можливостями випуск Cambalache 0.8.0 відзначається близьким до паритету з Glade. Код написано на Python і поставляється під ліцензією GPLv2.
Cambalache залежить від GtkBuilder і GObject, але надає модель даних, відповідну системі типів GObject. Модель даних може імпортувати та експортувати разом кілька інтерфейсів, підтримує об'єкти, властивості та сигнали GtkBuilder, надає стек відкату операцій (Undo/Redo) та можливість стиснення історії команд. Для створення моделі даних з gir-файлів надається утиліта cambalache-db, а для генерації класів GObject з таблиць моделі даних - утиліта db-codegen.
Інтерфейс може генеруватися на базі GTK 3 та GTK 4, залежно від визначеної у проекті версії. Для підтримки різних гілок GTK формування робочої області здійснюється із залученням бекенда Broadway, що дозволяє малювати виведення бібліотеки GTK у вікні web-браузера. Основний процес Cambalache надає обв'язку на базі WebKit WebView, в якій за допомогою Broadway транслюється висновок із процесу Merengue, який безпосередньо займається відтворенням інтерфейсу, що створюється користувачем.
У новому випуску:
- Додано панель інтерактивного вибору об'єктів, яка категоризує класи об'єктів та спрощує пошук необхідної інформації.
- Реалізовано заповнювачі робочої області, що спрощують додавання дочірніх елементів у задані позиції. Додати віджет замість заповнювача можна клікнувши на ньому двічі.
- Надано підтримку перекладних властивостей та реалізовано можливість залишення коментарів для перекладачів.
- Додано підтримку операцій з буфером обміну (Copy, Paste, Cut і Delete).
- Покращено виведення інформації про непідтримувані можливості при імпорті UI-файлів та експорті в інший файл.
Джерело: opennet.ru