> On Sep 8, 2021, at 2:26 AM, Chris Good <[email protected]> wrote:
>
> I'm adding an "Append" checkbox to the bottom of the matcher which the user
> can set to enable the
>
> imported Description to be appended to the Description on the matched
> transaction, rather than overriding it.
>
>
>
> I've added a pointer (append_text) to the checkbox widget to the
> _main_matcher_info struct defined in import-main-matcher.c.
>
>
>
> GNCImportMainMatcher is defined in import-main-matcher.h:
>
> typedef struct _main_matcher_info GNCImportMainMatcher;
>
>
>
> What's the right way to enable gnc_import_process_trans_item() in
> import-backend.c to use
>
> gtk_toggle_button_get_active (_main_matcher_info->append_text) and still
> keep the existing separation between the
>
> front and back ends?
You're thinking in the wrong direction: You need to go in the other direction:
Add a gboolean member to GNCTransInfo and set it in import-main-matcher before
calling gnc_import_process_trans_item, which will test your new member and
append or replace according to its value.
>
>
>
> I guess it is wrong to move the definition of _main_matcher_info to
> import-main-matcher.h
>
> and then include import-main-matcher.h in import-backend.c?
It sure would. That would create a circular dependency. We have enough
spaghetti already.
Regards,
John Ralls
_______________________________________________
gnucash-devel mailing list
[email protected]
https://lists.gnucash.org/mailman/listinfo/gnucash-devel