Projektet Cambalache 1.0 er blevet præsenteret, hvilket udvikler et værktøj til hurtig udvikling af grænseflader til GTK 3 og GTK 4, der bruger visuel design (WYSIWYG), MVC-paradigmet og filosofien om data-modelens primære betydning. Tildelingen af versionsnummer 1.0 præsenteres som en bedrift i projektets parathed til bred anvendelse. Koden er skrevet i Python og leveres under LGPLv2.1-licensen. En flatpak-pakke er tilgængelig til installation.
I modsætning til Glade tilbyder Cambalache understøttelse af flere brugergrænseflader i ét projekt. Cambalache er uafhængig af GtkBuilder og GObject, men giver en datamodel, der stemmer overens med GObjects typesystem. Redigering, visualisering og oprettelse af GTK-stile i CSS-format, redigering af XML-filer med ressourcer fra GResources, oprettelse af skabeloner og widgets, samt brug af XML-filer fra GtkBuilder og Blueprint- markup understøttes.
Datamodellen kan importere og eksportere flere interfaces på én gang, understøtter objekter, egenskaber og signaler fra GtkBuilder, tilbyder en operationers fortrydelses-/genopretningsstak (Undo / Redo) og muligheden for at komprimere kommandohistorikken. For at generere datamodellen fra gir-filer tilbydes værktøjet cambalache-db, og til at generere GObject-klasser fra datamodel-tabeller tilbydes værktøjet db-codegen.
Grænsefladen kan genereres baseret på GTK 3 og GTK 4, afhængigt af den version, der er angivet i projektet. For at sikre støtte til forskellige GTK-versioner dannes arbejdsområdet i en separat proces ved hjælp af Casilda-widgeten, der tillader integration af vinduer fra andre processer i GTK4-applikationer og realiseret i form af et specialiseret komposit. server, der bruger Wayland-protokollen og wlroots-biblioteket. Casilda opretter virtuelle input-enheder, hvis hændelser transmitteres fra GtkEventController, samt en virtuel output-enhed, der har samme størrelse som den indbyggede widget i applikationen. Ved hjælp af wlroots gengives indholdet til forhåndsvisning i en pixelbuffer og indlæses som en Cairo-overflade (cairo.Surface) til rendering i GTK.

Kilde: opennet.ru
