Cambalache: новый инструмент для быстрой разработки

Kate

Administrator
Команда форума
На конференции GUADEC 2021 был представлен новый инструмент для быстрой разработки интерфейсов GTK3 и GTK4 под названием Cambalache. В отличии от Glade, он способен поддерживать создание нескольких интерфейсов пользователя в одном проекте. Проект придерживается философии первостепенного значения модели данных и использует парадигму MVC. Написан на языке Python и распространяется под лицензией LGPLv2.

Рабочая область формируется с привлечением бэкенда Broadway, который позволяет отрисовывать вывод библиотеки GTK в окне браузера. Основной процесс Cambalache предоставляет обвязку с WebKit WebView, где при помощи Broadway транслируется вывод из процесса Merengue, который в свою очередь непосредственно и занимается отрисовкой интерфейса. Интерфейс может генерироваться на базе GTK3 и GTK4, в зависимости от заданной в проекте версии.

7b908ed572d7b80d23b07f94fceb6044.png

В отличии от Glade, Cambalache не зависит от GtkBuilder и GObject, но предоставляет модель данных, соответствующую системе типов GObject. Модель данных может импортировать и экспортировать разом сразу несколько интерфейсов. Также присутствует поддержка объектов, свойств и сигналов от GtkBuilder. Предоставляется стек отката операций и возможность сжатия истории команд. Для генерации модели данных из gir-файлов используется утилита cambalache-db, а для генерации классов GObject из таблиц модели данных – утилита db-codegen. На выходе пользователь получает классический xml-файл с расширением ui, который можно подключать к своему проекту.

97e89a7740b7af9a4f2bb87db70dbec7.png

Проект довольно интересный, но пока еще не готов к релизу. Вполне вероятно, что в будущем он может потеснить или даже заменить старый добрый Glade. Загрузить и попробовать данный инструмент в деле можно по этой ссылке.

 
Сверху