Cambalache 1.0: wizualny edytor interfejsów GTK 3 i GTK 4
20 marca 2026 roku wydano wersję Cambalache 1.0 — otwartego narzędzia do wizualnego projektowania interfejsów GTK 3 i GTK 4. Projekt wykorzystuje podejście WYSIWYG, model MVC z priorytetem na dane. Kod w Pythonie, licencja LGPLv2.1, instalacja przez Flatpak. W odróżnieniu od Glade obsługuje wiele UI w jednym projekcie bez zależności od GtkBuilder i GObject, ale jest zgodny z typami GObject.
Cambalache edytuje style CSS GTK, XML GResources, szablony widżetów, XML GtkBuilder i Blueprint. Model danych importuje/eksportuje wiele interfejsów, zarządza obiektami, właściwościami, sygnałami. Zaimplementowano stos Undo/Redo ze skompresowaną historią. Narzędzie cambalache-db generuje model z plików GIR, db-codegen — klasy GObject z tabel modelu.
Obsługa GTK 3 i GTK 4 w jednolitym środowisku
Projekt generuje interfejsy dla GTK 3 lub 4 w zależności od wyboru wersji w ustawieniach. Dla kompatybilności między wersjami obszar roboczy uruchamiany jest w izolowanym procesie z widżetem Casilda. Casilda to kompozytowy serwer oparty na Wayland i wlroots, który osadza okna innych procesów w aplikacjach GTK4.
Casilda tworzy wirtualne urządzenia wejściowe: zdarzenia z GtkEventController przekazywane są do nich. Wirtualne urządzenie wyjściowe odpowiada rozmiarowi widżetu hosta. Zawartość podglądu renderowana jest do bufora pikselowego wlroots i ładowana jako cairo.Surface do rysowania w GTK.
- Kluczowe możliwości modelu danych:
- Import/eksport wielu interfejsów jednocześnie
- Pełna obsługa obiektów, właściwości, sygnałów GtkBuilder
- Undo/Redo ze skompresowaną historią poleceń
- Generacja z GIR i do klas GObject
Narzędzia i przepływ pracy
Cambalache upraszcza przepływ pracy: wizualna edycja stylów CSS, zasobów GResources, niestandardowych szablonów. Obsługa Blueprint dla deklaratywnego UI. Brak zależności od GtkBuilder — model danych jest samowystarczalny, zgodny z introspekcją GObject.
Dla doświadczonych programistów: Casilda rozwiązuje problem osadzania, unikając konfliktów wersji toolkitów. Protokół Wayland zapewnia izolację, wlroots — renderowanie. Podgląd działa stabilnie nawet przy skomplikowanych layoutach.
Instalacja: flatpak install cambalache. Po uruchomieniu tworzony jest projekt z wyborem wersji GTK, model generowany jest automatycznie z GIR.
Co ważne
- Cambalache 1.0 — pierwsze stabilne wydanie z pełną obsługą GTK 3/4 i wieloma UI w projekcie.
- Casilda zapewnia podgląd przez Wayland/wlroots bez zależności od hosta.
- Narzędzia cambalache-db i db-codegen automatyzują generowanie modeli i kodu.
- Licencja LGPLv2.1, Flatpak dla łatwej instalacji.
- Nacisk na model danych: MVC bez zależności od builderów.
— Editorial Team
Brak komentarzy.