This simplifies the calls in the rest of gnucash
Note that the locale specific reports themselves don't even load this module any more.
They don't need it, instead they can directly load the locale specific tax scheme modules.
When quitting with multiple windows, as the first window closes the
plugin manager is shutdown and so the plugins for subsequent windows
can not remove the preference callbacks that were setup so move the
manager shutdown hook to HOOK_SHUTDOWN as opposed to HOOK_UI_SHUTDOWN.
Make sure when a GncMainWindow closes that the preference callbacks
that were setup for the plugins are removed. At this point the actions
are not touched as it causes errors to be logged to the terminal.
A couple of preference callbacks are setup to track the
'negative_color_preference' and 'auto_raise_lists' which are setup with
a call to 'g_once'. To be able to remove these, the the preference id
is saved so that they can be used in gnc_main_window_remove_prefs to
remove the callback.
gnc-main-window.c
Add a function to remove all the registered preference callbacks that
were setup in gnc-main-window.c and call it from three places. One is
gnc_mian_window_quit which is used when the application quits and
gnc_main_window_close_page, gnc_main_window_destroy which is used when
separate windows are used for pages like the register and they are
closed.
Currently when compiling GoogleTest from source code, source file
gtest_main.cc from GoogleTest repository is not compiled into any
library as in GoogleTest repository, where it is compiled into
libgtest_main.a. Instead gtest_main.cc is added to source file list
GTEST_SRC, which is then added to the list of source files of every
single GoogleTest based test application.
To simplify this gtest_main.cc is added to the source file list of
target gtest now. Additionally GTEST_SRC is merged into
lib_gtest_SOURCES, since both variables defined source files for
GoogleTest libraries.
Now target gtest generates library libgtest.a, which already contains
the main function from source file gtest_main.cc. This is different to
GoogleTest build system, where both are separated into two independent
libraries libgtest.a and libgtest_main.a.
gnc_start_of_week
* ICU has a mature C++ api, so prefer that one in our C++ code
* Use PERR instead of fprintf for consistent reporting
* Add the ICU specific linker flags to the test case
Use underline only for mnemonics.
Capitalize column headers.
Try to reduce number of translatable strings - still incomplete.
Follow up of commit aadb3d1.
* function gnc:html-table-add-labeled-amount-line! has full coverage
test.
* function gnc:make-html-acct-table/env/accts has good coverage
confirming nothing crashes.
eguile-html-utilities now depends on eguile-gnc so make sure
the latter is built before the former
Note the master branch has gone a different route:
eguile-html-utilities and eguile-utilities are no longer modules
there but included into eguile-gnc via load-from-path
Hence the dependecy tree is actually the other way around there.
To keep in mind when merging maint into master next time.
To be precise, it is in aqbanking-5.7.8-git-1 and to-be-released
aqbanking-5.7.9 as well as aqbanking-5.99.24-git-1 and
to-be-released aqbanking-5.99.25. As it is needed mid-September 2019
for all bank users in Germany, we better make it available for both branches.