Release of Cambalache 1.0, a tool for developing GTK interfaces

The release of the Cambalache 1.0 project has been announced, which develops a rapid interface development tool for GTK 3 and GTK 4, utilizing visual design (WYSIWYG), the MVC paradigm, and the philosophy of prioritizing the data model. The version number 1.0 is presented as an achievement signifying the project's readiness for widespread use. The code is written in Python and is available under the LGPLv2.1 license. A package is available for installation in flatpak format.

Unlike Glade, Cambalache provides support for managing multiple user interfaces within a single project. Cambalache does not rely on GtkBuilder and GObject, but offers a data model that aligns with the GObject type system. It supports editing, visualization, and the creation of GTK styles in CSS format, editing XML files with GResources, creating templates and widgets, and using XML files from GtkBuilder and Blueprint markup.

The data model can import and export multiple interfaces at once, supports GtkBuilder objects, properties, and signals, provides an operation undo/redo stack, and the ability to compress command history. The cambalache-db utility is provided for generating the data model from gir files, while the db-codegen utility is used for generating GObject classes from data model tables.

The interface can be generated based on either GTK 3 or GTK 4, depending on the version specified in the project. To ensure support for different GTK branches, the workspace is formed in a separate process utilizing the Casilda widget, which allows embedding windows from other processes into GTK4 applications and is implemented as a specialized composite. server, using the Wayland protocol and the wlroots library. Casilda creates virtual input devices, events from which are broadcasted from GtkEventController, as well as a virtual output device sized like the embedded widget in the application. With wlroots, the preview content is rendered into a pixel buffer and loaded as a Cairo surface (cairo.Surface) for rendering in GTK. Release of Cambalache 1.0, a tool for developing GTK interfaces Release of Cambalache 1.0, a tool for developing GTK interfaces Release of Cambalache 1.0, a tool for developing GTK interfaces

Source: opennet.ru

Buy reliable website hosting with DDoS protection, VPS VDS servers 🔥 Buy reliable website hosting with DDoS protection, VPS VDS servers | ProHoster