Zurück zur Startseite

Cambalache 1.0: GTK UI-Editor

Cambalache 1.0 — Tool für die visuelle Entwicklung von GTK 3- und 4-Oberflächen mit Unterstützung für mehrere UI, CSS-Stile und GResources. Verwendet MVC, Casilda für Wayland-Vorschau. Hilfsprogramme zur Generierung von Modellen und Code aus GIR.

Cambalache 1.0 Release für GTK-Entwicklung
Advertisement 728x90

# Cambalache 1.0: Visueller Editor für GTK-3- und GTK-4-Oberflächen

Am 20. März 2026 wurde Cambalache 1.0 veröffentlicht – ein Open-Source-Tool zum visuellen Entwerfen von GTK-3- und GTK-4-Oberflächen. Das Projekt verwendet einen WYSIWYG-Ansatz mit einem datenzentrierten MVC-Modell. Geschrieben in Python, lizenziert unter LGPLv2.1, installierbar über Flatpak. Im Gegensatz zu Glade unterstützt es mehrere UIs in einem einzigen Projekt, ohne auf GtkBuilder oder GObject angewiesen zu sein, ist aber vollständig kompatibel mit GObject-Typen.

Cambalache bearbeitet GTK-CSS-Styles, GResources-XML, Widget-Vorlagen, GtkBuilder-XML und Blueprint. Das Datenmodell importiert/exportiert mehrere Oberflächen, verwaltet Objekte, Eigenschaften und Signale. Es verfügt über einen Undo/Redo-Stapel mit Historienkomprimierung. Das Hilfsprogramm cambalache-db erzeugt das Modell aus GIR-Dateien, während db-codegen GObject-Klassen aus den Modelltabellen generiert.

Unterstützung für GTK 3 und GTK 4 in einer einheitlichen Umgebung

Das Projekt erzeugt Oberflächen für GTK 3 oder 4 basierend auf der in den Einstellungen ausgewählten Version. Für Cross-Version-Kompatibilität läuft die Arbeitsumgebung in einem isolierten Prozess mit dem Casilda-Widget. Casilda ist ein Compositor-Server auf Basis von Wayland und wlroots, der Fenster aus anderen Prozessen in GTK4-Anwendungen einbettet.

Google AdInline article slot

Casilda erstellt virtuelle Eingabegeräte: Ereignisse von GtkEventController werden an diese weitergeleitet. Das virtuelle Ausgabegerät passt sich der Größe des Host-Widgets an. Der Vorschauinhalt wird in einen wlroots-Pixelpuffer gerendert und als cairo.Surface für das Zeichnen in GTK geladen.

  • Wichtige Merkmale des Datenmodells:

- Import/Export mehrerer Oberflächen gleichzeitig

- Volle Unterstützung für GtkBuilder-Objekte, Eigenschaften, Signale

Google AdInline article slot

- Undo/Redo mit Befehlshistorienkomprimierung

- Erzeugung aus GIR und in GObject-Klassen

Tools und Workflow

Cambalache vereinfacht den Workflow: visuelle Bearbeitung von CSS-Styles, GResources und benutzerdefinierten Vorlagen. Unterstützung für deklarative UI mit Blueprint. Keine Bindung an GtkBuilder – das Datenmodell ist eigenständig und stimmt mit der GObject-Introspektion überein.

Google AdInline article slot

Für erfahrene Entwickler: Casilda löst Einbettungsprobleme und vermeidet Toolkit-Versionkonflikte. Das Wayland-Protokoll gewährleistet Isolation, wlroots übernimmt das Rendering. Die Vorschau funktioniert stabil auch bei komplexen Layouts.

Installation: flatpak install cambalache. Beim Start ein Projekt mit GTK-Versionauswahl erstellen; das Modell wird automatisch aus GIR erzeugt.

Wichtige Punkte

  • Cambalache 1.0 ist die erste stabile Version mit voller GTK-3/4-Unterstützung und mehreren UIs pro Projekt.
  • Casilda ermöglicht Vorschau über Wayland/wlroots ohne Abhängigkeiten vom Host.
  • Hilfsprogramme cambalache-db und db-codegen automatisieren Modell- und Codeerzeugung.
  • LGPLv2.1-Lizenz, Flatpak für einfache Installation.
  • Fokus auf Datenmodell: MVC ohne Builder-Abhängigkeiten.

— Editorial Team

Advertisement 728x90

Weiterlesen