nice job! Are the ui files designed with glade?
Rust Programming
Glade doesn't work for gtk4. There's cambanche, but it didn't work as smoothly as glade. Originally I tried just using glade and converting to gtk4 for a bit, didn't work great as some classes were different.
So at the end I went with just looking at gtk4 docs and writing xml on the editor. It'd be problematic once in a while if I miss closing some tags, other than that it went well.
thank you for your reply. Yes it was sadly known to me, but every time I see something done right in gtk I am rekindled in hope that they have put a patch on this totally inexplicable choice to abandon a designer that would allow you not to write xml by hand. I guess I'll have to make peace with that fact :) anyway, nice work you did!
That's pretty sick! I didn't even realize there were gtk bindings; I might have to use that for an app I'm wanting to build. Torn between that and Tauri
Yeah, the bindings were a great help. I also tried tauri, iced, beavy, and a lot of libraries. At the end just using gtk4 seemed to be the best for my use case. I went through the grk4-rs book, and then started experimenting. I don't like GUI at all, but for simple cases it works well
If anyone here is familiar with making GUIs with rust using gtk4-rs, I'd appreciate some guidance. It's been a challenging road as I'm trying to learn GUI developement.
Not an answer to the question, but the 'ToshioCP' tutorials on gtk4 & gobject have been very helpful to me, to wrap my mind around the relevant concepts in C: https://github.com/ToshioCP/Gtk4-tutorial; https://github.com/ToshioCP/Gobject-tutorial — the gobject tutorial is probably even more helpful than the gtk4 tutorial, as it explains signal handling etc.
Thank you, I'll go over them. I think I got a little bit of the basics now. But I need a little advanced knowledge. And most tutorials seems to be for gtk3 and many widgets are now deprecated.
Originally my plan was to make each slide edited separately when you right click and do edit. And be able to drag them up and down and everything, but my skills were not enough. After trying to make that for a week I gave up and made this simpler version. So listview and treeview models from that tutorial could give me more info.
My experience is very limited, especially on GTK3; but I think GTK4 really streamlined listview/model operations, especially with the newly introduced GtkExpression, & the ability to bind GObject properties to expressions that the toolkit will figure out when to evaluate & plug in.
The following blog entries help establish the fundamental concepts pretty well, I think: https://blog.gtk.org/2020/06/07/scalable-lists-in-gtk-4/ https://blog.gtk.org/2020/06/08/more-on-lists-in-gtk-4/ https://blog.gtk.org/2020/09/08/on-list-models/ — but the crux of the matter really is GObject, & signalling; & ToshioCP's tutorial fills an important gap in the existing body of documentation.
Also, the Lists section on the Gtk4 Demo app is really helpful (e.g., the comments on the 'Clocks' example explain how to use GtkExpression really well: https://gitlab.gnome.org/GNOME/gtk/-/blob/main/demos/gtk-demo/listview_clocks.c?ref_type=heads#L2 ).
-- EDIT: Also, I think the new GJS 'GTK4 Book' does a good job explaining the new widgets & data structures -- so even if you aren't using the JS bindings, the code examples can be helpful: https://rmnvgr.gitlab.io/gtk4-gjs-book/application/list-widgets/ ; I never used GJS (just C, and pygobject); but the GJS book helped me quite a bit wrt the ListStore, and setting up DBus connectivity:
Thank you. I've been using grk4-rs so I went over their examples and the book. Looking at the c examples might be good as well. And I'll learn about the GObjects. So far I've been winging it based on examples I see and the properties of different classes.