[GNC-dev] Co-Owner (v0.3.3)

Ralf Zerres ralf.zerres at mail.de
Thu Jun 30 09:03:08 EDT 2022


Rob,

thanks for anwering. And yes, i do have a specific problem.
It's more a comprehension problem when creating new menu entries.

What i extended
===============

This is an extact just to explain the involed gui stuff:


inside  "gnucash/gnome/gnc-plugin-business.c" i did create new/needed
 "BusinessActions"
 
 /* Co-Owner submenu */
 { "CoOwnerMenuAction", NULL, N_("Co-Owner"), NULL, NULL, NULL },

 {
        "CoOwnerOverviewPageAction", NULL, N_("Co-Owners
Overview"),NULL,
        N_("Open a Co-Owner overview page"),
        G_CALLBACK (gnc_plugin_business_cmd_coowner_page)
    },

...

{
        "CoOwnerNewSettlementOpenAction", NULL, N_("New
_Settlement..."), NULL,
        N_("Open the New Settlement dialog"),
        G_CALLBACK (gnc_plugin_business_cmd_coowner_new_settlement)
    },

As well as the associated callbacks.
 
UI definitions are in 

* gnucash/ui/gnc-plugin-business-ui.xml

that introduce a new menu "CoOwnerMenuAction" with menuitems
"COOwnerNewCoOwnerOpenAction", etc. They extend the given placeholder
"AdditionalMenusPlacehoder" inside menu "Business". Fine until here.

The book handling will use "Set" and "Get" functions from 
 "libgnucash/engine/gncCoOwner.c". To make that accessible, funtions in
"libgnucash/engine/gncOwner.c" are extended to handle the CoOwner
cases. That means, we now handle a new "owner->type =
GNC_OWNER_COOWNER".

Bindings have been enhanced

* bindings/business-core.i
* bindings/python/gnucash_business.py
* bindings/python/gnucash_core.i 

Next i had to extend the "OT" actions to have the needed new callbacks
for the owner_tree.

* gnucash/gnome/gnc-plugin-page-owner-tree.c
* gnc-plugin-page-owner-tree-ui.xml

This should make them accessible as "plugin-page"-s, right?

conlusion
=========

All that stuff compiles. 
But i never see any new submenu entry "CoOwner" nor do i get the GUI
for the Owner-Tree stuff.
I'm on arch, all the depends like in "util/ci/actions/archlinux-
test/Dockerfile".

What is needed to make the subsystem use the new Menus?

Greetings 
Ralf

PS: you will find my coowner branch at
https://github.com/rzerres/gnucash/tree/coowner

Am Donnerstag, dem 30.06.2022 um 08:39 +0100 schrieb Robert Fewell:
> Ralf,
> The current minimum Gtk3 version is 3.22.30. All the glade files have
> been generated with Glade 3.38.2 with the minimum Gtk version set to
> 3.22.
> 
> Is there a specific problem you have found that you need help with?
> 
> Regards,
> Bob
> 
> > 


More information about the gnucash-devel mailing list