OK, some (probably) good news...
I've done some more digging in the toolbox code. Basically, it was written so that auxilliary toolbars (the one under the main menu) could EITHER:
* be loaded from a UI Manager file, and have GtkActions hooked up by a "prep" function OR * be created from scratch using a "create" function
This, I think, makes our life *much* easier. We can just define Gtk::Toolbar subclasses for each Inkscape tool. The "create" function would just run their constructor and return the underlying GObject pointer.
I've updated the code documentation a bit in my branch. Next step (for the Hackfest?) is just to make the replacement C++ toolbars (without GtkAction!) and hook them up :). We can use GtkBuilder for the UI widgets if we want, or just define them directly in C++.
In future, we'd also be able to assign application-scope GActions to these, so that the toolbars can more easily run actions like "app.exit" if we want.
AV
On 15 March 2018 at 21:47, Alex Valavanis <valavanisalex@...400...> wrote:
Great! ...and thanks for the comments on my toolbar hacks.
From a quick look at your test, am I right in thinking that you haven't yet hooked up the spinbutton to an action? I'm still not quite sure (a) how we'd handle spinbutton actions in our toolbars, and (b) whether we'd actually need to... I guess we can just use a callback to the "value-changed" signal?
AV
On 15 March 2018 at 18:49, Tavmjong Bah <tavmjong@...8...> wrote:
On Thu, 2018-03-15 at 10:42 +0000, Alex Valavanis wrote:
If you could share your toy application, that would be great - I'm still trying to get my head round all the options!
I've uploaded the code to GitLab:
https://gitlab.com/Tavmjong/gtk_sandbox/tree/master
Tav