Публикувана е версия 0.8.0 на проекта Cambalache, която развива инструмент за бързо проектиране на интерфейси за GTK 3 и GTK 4, използваща парадигмата MVC и философията на първостепенно значение на моделите на данни. В отличие от Glade, в Cambalache е предоставена поддръжка за работа с множество интерфейси на потребителя в един и същи проект. По функционалните възможности версия 0.8.0 на Cambalache е почти равна на Glade. Кодът е написан на Python и се предоставя под лицензия GPLv2.
Cambalache не зависи от GtkBuilder и GObject, но предоставя модел на данни, който съответства на системата от типове за GObject. Моделът на данни може да импортира и експортира множество интерфейси наведнъж, поддържа обекти, свойства и сигнали от GtkBuilder, предлага стек за отмяна на операции (Undo / Redo) и възможност за компресиране на историята на командите. За генериране на модел на данни от gir-файлове е предоставен инструментът cambalache-db, а за генериране на GObject класове от таблиците на модела на данни — инструментът db-codegen.
Интерфейсът може да бъде генериран на база GTK 3 и GTK 4, в зависимост от версията, определена в проекта. За осигуряване на поддръжка на различни версии на GTK, работната среда се формира с помощта на бекенда Broadway, който позволява изобразяване на изхода на библиотеката GTK в прозореца на уеб браузъра. Основният процес на Cambalache предоставя обвивка на базата на WebKit WebView, в която с помощта на Broadway се трансферира изходът от процеса Merengue, който се занимава с изобразяването на интерфейса, създаван от потребителя.
В новото издание:
- Добавена е панел с интерактивен избор на обекти, който категоризира класовете обекти и улеснява търсенето на необходимата информация.

- Реализирани са запълнители на работната площ, които улесняват добавянето на дъщерни елементи на определени позиции. Можете да добавите виджет вместо запълнител, като кликнете два пъти върху него.

- Предоставена е поддръжка за превеждани свойства и е реализирана възможност за оставяне на коментари за преводачите.

- Добавена е поддръжка за операции с клипборда (Копиране, Поставяне, Изрязване и Изтриване).

- Подобрено е извеждането на информация за неподдържани функции при импортиране на UI файлове и при експортиране в друг файл.

Източник: opennet.ru





