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!