The text on the first page was squashed as the width could not be
negotiated properly as all the text was set to wrap automaticity and on
subsequent pages there was no wide widgets. Moved the first text row to
a separate widget and not wrap-able so a decent width can be negotiated.
The eac79bd506 commit was slightly overzealous - if pair was #f,
originally this make-exchange-function would create a function that
returns (gnc:make-gnc-monetary domestic 0); I thought it was
acceptable to return #f instead but this would lead to report
crash. Revert previous behaviour.
This removes the export to PDF button and uses the standard print
dialog with an option to print tp pdf.
The filename is pre-populated, with the path set to the default, $HOME
on linux.
There is no remembering of past output directories. Maybe a later
update will do this.
Remove assigning exchangelist to exchange-alist.
Removes need to test foreign-amount against 0 - multiplication will
result in 0 anyway. The only functional change is the condition
whereby foreign's commodity is not present in exchangelist; previously
it would return (gnc:make-gnc-monetary domestic 0); now it returns #f.
This function *is* allowed to return #f for invalid or missing prices;
see the (and foreign ...) conditional.
The Preferences 'Register/Tab order includes Transfer on Memorised
Transaction' was not displaying its tooltip even though it was in the
glade file. Recreated the Register notebook page and the business page
as it also had a missing tooltip.
If the parent row for prices in a price tree view is used for a new
price the security value can be wrong so get the commodity of this row
and use it for a temporary price which is cloned for editing.
And in Windows only with the value from the environment if there is one.
Calling it with "" in Windows ignores the environment and sets it to the
system settings.
So that it's clear in the UI that clicking on the box won't do anything.
The case that triggered this is the Get-online-quotes item in the
Securities Editor tree view.
Gnucash shows comma.
This was introduced by 8f88b7f2b. It turns out that Windows
implementation of setlocale works only if the POSIX locale environment
variables (i.e. LC_FOO or LANG) are set, otherwise it returns NULL. We
were unknowingly relying on Guile to retrieve the Windows environment
for us and that would do the wrong thing if the user had set the locale
in the environment file, so 8f88b7f2b restored it... unfortunately to
the C locale.
This commit changes the set_win32_thread_locale function to work in
both directions, setting both locales from the environment variables
if any are set and calling setlocale with the result of
GetUserDefaultLocaleName if not.