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


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

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

     

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

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

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

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

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

     
  • 2.15, Аноним (15), 14:39, 21/03/2026 [^] [^^] [^^^] [ответить]  
  • –3 +/
    Сравнение не правильное. У Дельфи RAD - Система Быстрой Разработки, когда при помощи мыши можно создать форму окна или снопку. А тут ВИСИВИГ - просматривать результат на лету.
     
     
  • 3.20, aname (ok), 16:02, 21/03/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Мышку добавить не осилили
     
  • 3.24, Аноним (24), 17:30, 21/03/2026 [^] [^^] [^^^] [ответить]  
  • +/
    В дельфи как раз и РАД, и ВИЗИВИГ был, там компонент работал сразу, как только его кидали на форму. Например, подключение к БД, отображение строк в таблице и пр.
     
  • 2.45, warlock (??), 12:59, 22/03/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Самый правильный (то есть удобный) подход в WPF и собратья/Noesis GUI: человекочитаемый язык разметки, который после небольшой тренировки прямо в голове разработчика превращается в картинку.
     
  • 2.50, Соль земли2 (?), 09:46, 23/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 говорит, что ты нагло врешь.
     
     
  • 4.47, fraks (ok), 06:10, 23/03/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Посмотрел этот glade. Насколько я помню, его развитие бросили.
    Походу камбалач - это форк глейда, судя по внешнему виду, только с новомодными течениями в дезигне интерфейсов.
    Ну и GTK4 конечно.
     
     
  • 5.49, llolik (ok), 08:50, 23/03/2026 [^] [^^] [^^^] [ответить]  
  • +/
    > Посмотрел этот glade. Насколько я помню, его развитие бросили.
    > Походу камбалач - это форк глейда, судя по внешнему виду, только с
    > новомодными течениями в дезигне интерфейсов.
    > Ну и GTK4 конечно.

    Более того - это даже один и тот же разраб, что и у glade.
    Ну, не то чтобы, прямо, форк. Оно совершенно другое. Но про UI, автор в блоге написал, что UI glade делал он и он его, в принципе, устраивал, так что он не хочет тратить и так дефицитное время, чтобы делать как-то по другому.

     
  • 3.51, Соль земли2 (?), 09:47, 23/03/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Он превратился в Gnome Builder. Либо стал его частью.
     

  • 1.17, Жыжа (?), 14:57, 21/03/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    Чёто глядя на скриншоты "инструмента быстрой разработки интерфейсов, использующего визуальное проектирование (WYSIWYG)" теряется вера в этот самый WYSIWIG. Инструмент для разработки интерфейсов в первую очередь сам должен быть примером *нормального* интерфейса, а тут ещё один GIMP, и пальцетыкательные контролы GTK4 ну вообще никак не подходят туда, где подразумевается больше 3 кнопок и 2 переключателей.

    Как это выглядело в Delphi: https://docs.devexpress.com/VCL/images/ExpressVerticalGrid/Concepts_AssigningE
    В дотнете с WPF https://raw.githubusercontent.com/wiki/xceedsoftware/wpftoolkit/PropertyGrid_p
    С WinForms: https://docs.devexpress.com/WindowsForms/images/XtraVerticalGrid/PropertyGridV
    В Godot вон смогли родить подобное: https://preview.redd.it/new-to-godot-need-some-guidance-for-resizing-view-port
    ...

    GTK: https://imgur.com/a/hq1LNRd

    Почему здесь оно такое колхозное из палочек и веточек? Фундаментально нет возможности нарисовать какой контрол, или гномий коран подобное не одобряет?

     
     
  • 2.44, gcjhgc (?), 11:58, 22/03/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Ну да, вряд ли интерфейсы кто-то будет разрабатывать пальцами, а не мышкой.
    С другой стороны, на современных огромных экранах и крупные виджеты не помеха...
     

  • 1.22, Аноним (23), 16:03, 21/03/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    >инструмента для разработки GTK-интерфейсов

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

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

    Какая жесть.

     
     
  • 2.28, Аноним (24), 19:32, 21/03/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Если бы такие программисты были в Борланде, то Дельфи никогда бы не вышла в свет.
     
     
  • 3.29, Аноним (29), 20:26, 21/03/2026 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Алё, Дельфи разрабатывается для вантуза. Они там системые вещи даже не трогают. В отличии, от этих молодцов разрабатывающих Камбалаче.
     
     
  • 4.38, Аноним (24), 01:28, 22/03/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Проясни, какие-такие системные вещи в редакторе __пользовательского__ графического интерфейса на GTK4.
     
     
  • 5.41, Аноним (41), 08:25, 22/03/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Работа с Wayland, в достаточной степени системна.
     

  • 1.26, Аноним (26), 18:22, 21/03/2026 Скрыто ботом-модератором [﹢﹢﹢] [ · · · ]     [к модератору]
  • +/
     

  • 1.34, Аноним (34), 23:06, 21/03/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    по описанию какой-то франкенштейн если честно
     
  • 1.43, Аноним (43), 10:13, 22/03/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Прочитал как Chambalacha, мерещится Chimbal
     
     
  • 2.48, Аноним (48), 06:32, 23/03/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Камбала-Че. Че-Геварра. Вот это вот "Че" характерная черта испанского языка которое бытует у населения Чили и Аргентины.
    Пользуясь случаем передаю пламенный "Че!" товарищу из Латинской америки.
     

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



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

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