Cambalache 0.8.0 released!

Cambalache is a new RAD tool for Gtk 4 and 3 with a clear MVC design and data model first philosophy.

Exactly one year ago I made the first commit…

commit 51d4185cd8556f0358cc463578df5a4138ac90b5
Author: Juan Pablo Ugarte
Date: Wed Dec 9 19:14:53 2020 -0300

Initial commit

Supports type system and interface data model.
Basic history (undo/redo stack) implementation with triggers.

It consisted of just 3 files, the data model, a python script to generate history triggers automatically and a small sql script to test it.

Fast forward one year and I am starting to believe it can be on feature parity with Glade sooner than expected.

Having a pretty solid backend this release focus on adding all the big missing UX parts, like a good type selector, workspace placeholders and basic clipboard actions like copy/paste.

Type chooser bar

Borrowing the design from Glade I implemented a type chooser that categorizes object classes to make it easier to find what you need.

Workspace placeholders

Containers now have placeholders to make it easier to add children in a specific positions

It supports the following actions:

  • Double click on a placeholder to create a new widget in place
  • <Control> + Insert to add more placeholders
  • <Control> + Delete to remove placeholders
  • <Shift><Control> + Insert to add a new row
  • <Shift><Control> + Delete to remove a row

Translatable properties

Thanks to the work of Philipp Unger it is possible to mark properties as translatable and add comments for translators.

Clipboard actions

To make life easier, common clipboard actions like, Copy, Paste, Cut and Delete where added.

Better unsupported features report

Cambalache will make its best effort to notify the user about unsupported features when importing UI files and export to a different filename as a precaution to avoid loosing data.

Matrix channel

Have any question? come chat with us at #cambalache:gnome.org

Where to get it?

As always you can get the code in gitlab

git clone https://gitlab.gnome.org/jpu/cambalache.git

or download the bundle from flathub

flatpak remote-add --user --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
flatpak install --user flathub ar.xjuan.Cambalache

UPDATE: Version 0.8.1 released!

 

Happy coding!

Comments are closed.

  1. Roberto says:

    Very good job Juan! I’m already using Cambalache to port my gtk3 application to gtk4 and it’s very useful.
    I will upgrade to this version.

    Thank you very much for your work.

  2. Marco Diego Aurélio Mesquita says:

    Hi Juan!

    The progress in Cambalache is exciting!

    Are there plans to integrate it with gnome-builder? Also, do gnome developers plan on deciding what will be the future of RAD tools considering Cambalache and Drafting?

    • xjuan says:

      Hey Marco thanks, how are you doing?
      Not in the near future, I have plans to add some kind of interface for IDEs to interact with it eventually. But I want to focus on making it usable first.
      To embed it I am not so sure since Cambalache is python not C so there is that extra dependency, also I am not ready to commit to a public API since it still evolving.

      GNOME is not like a company, its a community of people with similar interests, so nobody really decides that kind of things.
      I think for the time being there is place for both projects, since I also target gtk3, mostly because I do not want to maintain Glade anymore 🙂