Add two menu items under windows, one to save an existing layout for
Invoices, Bills and Vouchers to there respective default layouts so the
user set column widths will be used. The second menu item will reset the
column widths to defaults and remove the default layout.
Open Business items will also save there column widths to the page
section so these can temporarily have different widths.
similar to gnc_default_price_print_info but also accepts a use_symbol
specifier. for generating print_info for prices, either exact e.g.
$1 + 2/3, or inexact e.g. $1.3333
If monetary is already in decimal, don't convert. If monetary is
exact (x/y) then convert to its SCU.
As a result, monetary amounts in an arbitrary precision will be
displayed unchanged, e.g. US$0.1442, whereas exact monetary amounts
will be displayed using the currency's SCU e.g. US$1/3 -> $0.33
Apparently something changed in gtk which now calculates
layout differently for a status bar for an empty string message.
Setting a single space message doesn't trigger this different
behaviour so we use that as workaround
This option in the preference dialog was missing its group partner so
both options were selected. Added missing group and also realigned some
other entries.
It causes GnuCash to crash if g_log is called without having set
G_LOG_DOMAIN.
Also extract a singleton getter function to ensure that the static
root module has been created before use.
in the second argument and an extra ptr level in the first.
(The declaration is
g_atomic_pointer_compare_and_exchange(void* atomic, gpointer old,
gpointer new)
but that's wrong as it tests *atomic == old so atomic needs to be
void**. But we were passing &gpointer* i.e. void***.)
With commit 9832fa397 the default report runner will now catch errors
and show the backtrace in the report window. the eguile renderer
doesn't need to catch errors anymore.
To accomplish that we separate creating a book and creating a session;
gnc_get_session no longer automatically creates a book if one isn't
connected.
We also add an initially_insensitive GtkAction array to
gnc-plugin-basic-commands with a call to make its contents insensitive
at plugin load so that the save button on the toolbar isn't lighted when
there's nothing to save.
Separately keeps track of last investment account, security account,
and income account. One issue is that gnc_import_select_account
doesn't tell the caller if it put up a dialog or found the online ID
on an existing account. This means the last account may be one the
user didn't manually select. This may or may not be the right thing
to do.