Re: Preference question, issue or not?

2018-02-16 Thread Geert Janssens
Op vrijdag 16 februari 2018 11:54:41 CET schreef Robert Fewell:
> Hi,
> 
> While I was working out why setting 'don't use gnucash color themes' was
> being reset after every restart of Gnucash, I added a print statement to
> gnc_prefs_get_bool which resulted in loads of output related to the
> preference 'show-leaf-account-names'. Used the glib backtrace function to
> work out what is calling this preference with the following results from
> starting Gnucash for a short time and also moving a terminal window over a
> register page...
> 
> 376 calls to gnc_table_get_entry
> 248 calls to gnc_account_foreach_descendent
> 
> to
> 
> 502 calls to gnc_get_account_name_for_register
> to
> 502 calls to gnc_prefs_get_bool for show-leaf-account-names
> 
> My question is whether the register should hold the value and not keep
> asking the preference system for it which I assume to mean gsettings
> calling what ever back end is being used. It could be cached in some way or
> with the fast PC's nowadays it is of no issue. Just asking before I spend
> any more time on this.
> 
> Regards,
> 
>   Bob

Caching the value would probably be better, although a performance test before 
and after is the only sure way to test.

If you cache it, you should also add a watch function that triggers whenever 
the user changes the preference. When triggered it should cause the register 
to redraw.

Geert


___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel


Preference question, issue or not?

2018-02-16 Thread Robert Fewell
Hi,

While I was working out why setting 'don't use gnucash color themes' was
being reset after every restart of Gnucash, I added a print statement to
gnc_prefs_get_bool which resulted in loads of output related to the
preference 'show-leaf-account-names'. Used the glib backtrace function to
work out what is calling this preference with the following results from
starting Gnucash for a short time and also moving a terminal window over a
register page...

376 calls to gnc_table_get_entry
248 calls to gnc_account_foreach_descendent

to

502 calls to gnc_get_account_name_for_register
to
502 calls to gnc_prefs_get_bool for show-leaf-account-names

My question is whether the register should hold the value and not keep
asking the preference system for it which I assume to mean gsettings
calling what ever back end is being used. It could be cached in some way or
with the fast PC's nowadays it is of no issue. Just asking before I spend
any more time on this.

Regards,

  Bob
___
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel