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 обязательно


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

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

     
     
  • 4.19, Аноним (19), 15:53, 21/03/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Лучще не подержанных, а не нужных
     

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

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

     
     
  • 2.14, Аноним (3), 14:37, 21/03/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Назваание хорошо подходит.
     
  • 2.18, Жыжа (?), 15:01, 21/03/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/
    А может и не было бы - вот GIMP Toolkit, как известно, плохо подходит к GIMP.
     

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

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

     
  • 2.15, Аноним (15), 14:39, 21/03/2026 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Сравнение не правильное. У Дельфи RAD - Система Быстрой Разработки, когда при помощи мыши можно создать форму окна или снопку. А тут ВИСИВИГ - просматривать результат на лету.
     
     
  • 3.20, aname (ok), 16:02, 21/03/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Мышку добавить не осилили
     
  • 3.24, Аноним (24), 17:30, 21/03/2026 [^] [^^] [^^^] [ответить]  
  • +/
    В дельфи как раз и РАД, и ВИЗИВИГ был, там компонент работал сразу, как только его кидали на форму. Например, подключение к БД, отображение строк в таблице и пр.
     

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

    нет такого

     
     
  • 3.23, Аноним (23), 16:04, 21/03/2026 [^] [^^] [^^^] [ответить]  
  • –1 +/
    А сайт glade.gnome.org говорит, что ты нагло врешь.
     

  • 1.17, Жыжа (?), 14:57, 21/03/2026 Скрыто ботом-модератором [﹢﹢﹢] [ · · · ]     [к модератору]
  • +2 +/
     
  • 1.22, Аноним (23), 16:03, 21/03/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    >инструмента для разработки GTK-интерфейсов

    Интересно, как быстро они задолбаются обновляться, пытаясь успеть за "нововведениями" жтк :)

     
  • 1.25, анон (?), 17:30, 21/03/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    >формирование рабочей области осуществляется в отдельном процессе с привлечением виджета Casilda, позволяющего встраивать в GTK4-приложения окна других процессов и реализованного в форме специализированного композитного сервера, использующего протокол Wayland и библиотеку wlroots

    Какая жесть.

     

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



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

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