The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Выпуск Cambalache 1.0, инструмента для разработки GTK-интерфейсов

21.03.2026 11:28 (MSK)

Представлен релиз проекта Cambalache 1.0, развивающего инструмент быстрой разработки интерфейсов для GTK 3 и GTK 4, использующий визуальное проектирование (WYSIWYG), парадигму MVC и философию первостепенного значения модели данных. Присвоение номера версии 1.0 преподносится как достижение готовности проекта к широкому использованию. Код написан на Python и поставляется под лицензией LGPLv2.1. Для установки доступен пакет в формате flatpak.

В отличие от Glade в Cambalache предоставляется поддержка ведения нескольких интерфейсов пользователя в одном проекте. Cambalache не зависит от GtkBuilder и GObject, но предоставляет модель данных, соответствующую системе типов GObject. Поддерживается редактирование, визуализация и создание GTK-стилей в формате CSS, редактирование XML-файлов с ресурсами GResources, создание шаблонов и виджетов, использование XML-файлов GtkBuilder и разметки Blueprint.

Модель данных может импортировать и экспортировать разом несколько интерфейсов, поддерживает объекты, свойства и сигналы GtkBuilder, предоставляет стек отката операций (Undo / Redo) и возможность сжатия истории команд. Для генерации модели данных из gir-файлов предоставляется утилита cambalache-db, а для генерации классов GObject из таблиц модели данных - утилита db-codegen.

Интерфейс может генерироваться на базе GTK 3 и GTK 4, в зависимости от определённой в проекте версии. Для обеспечения поддержки разных веток GTK формирование рабочей области осуществляется в отдельном процессе с привлечением виджета Casilda, позволяющего встраивать в GTK4-приложения окна других процессов и реализованного в форме специализированного композитного сервера, использующего протокол Wayland и библиотеку wlroots. Casilda создаёт виртуальные устройства ввода, события в которые транслируются из GtkEventController, а также виртуальное устройство вывода, имеющее размер как у встроенного в приложение виджета. При помощи wlroots содержимое для предпросмотра отрисовывается в пиксельный буфер и загружается как поверхность Cairo (cairo.Surface) для отрисовки в GTK.



  1. Главная ссылка к новости (https://blogs.gnome.org/xjuan/...)
  2. OpenNews: Доступен графический тулкит GTK 4.22 со встроенным движком отрисовки SVG
  3. OpenNews: Ardour прекратил поддержку сборки с GTK2 в пользу форка YTK
  4. OpenNews: Собраны средства для разработки GNOME Builder
  5. OpenNews: Выход Glade 3.21, оболочки для визуального проектирования интерфейсов на GTK+
  6. OpenNews: В GNOME SDK добавлена поддержка языка построения интерфейсов Blueprint
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/65039-cambalache
Ключевые слова: cambalache, gtk
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (10) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.3, Аноним (3), 12:15, 21/03/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    Cambalache от слова камбала? Хорошо подходит к GTK.
     
     
  • 2.4, llolik (ok), 12:25, 21/03/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Автор - аргентинец. Переводится, как магазин подержаных вещей. Почему так назвал, в новости первая ссылка на блог, там написано. Вкратце, просто потому что это характерное местное слово и автор хотел подчеркнуть, что приложение сделано в Южной Америке.
     
     
  • 3.9, Аноним (9), 12:45, 21/03/2026 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > Переводится, как магазин подержаных вещей.

    Еще лучше подходит для GTK.

     

  • 1.10, trooper97 (?), 12:45, 21/03/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > Хорошо подходит к GTK.

    Было бы странно, если бы инструмент для разработки GTK-интерфейсов плохо подходил к GTK.

     
     
  • 2.14, Аноним (3), 14:37, 21/03/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Назваание хорошо подходит.
     

  • 1.11, Аноним (11), 12:51, 21/03/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Т.е. так порицаемое противниками Delphi "формошлёпство" оказалось правильным?
     
     
  • 2.12, llolik (ok), 13:30, 21/03/2026 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > Т.е. так порицаемое противниками Delphi "формошлёпство" оказалось правильным?

    Формошлёпством, как я его понимал, называлось не создание UI, как таковое. Это когда всю логику приложения распихивали по обработчикам контролов (многие это любили в Дельфях делать). В результате весь код приложения состоял из кучи условных Button1Click.

     
  • 2.15, Аноним (15), 14:39, 21/03/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Сравнение не правильное. У Дельфи RAD - Система Быстрой Разработки, когда при помощи мыши можно создать форму окна или снопку. А тут ВИСИВИГ - просматривать результат на лету.
     

  • 1.13, Аноним (13), 13:44, 21/03/2026 Скрыто ботом-модератором [﹢﹢﹢] [ · · · ]     [к модератору]
  • +/
     
  • 1.16, Сладкая булочка (?), 14:49, 21/03/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Просто откройте glade и увидите разницу в дизайне нормального инструмента (glade) от этого.
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2026 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру