If there is more than one account source in the import it makes it
difficult to allocate the transactions so add a toggle button to show
or hide the source account column with the default being that of the
calling function.
The amount column was being sorted by string as opposed to amount value.
Added a DOUBLE value to the model store to hold a converted gnc_numeric
amount value and use that for sorting the tree view amount column. Also
made the amount column right justified so numbers align.
There are a very few left that need deeper study, but this gets
rid of most of the noise. For the most part it's just getting rid of
extra variables or removing an assignment that is always
replaced later but before any reads of the variable. A few are
discarded result variables.
It can't, because if b is 0 the function would have
returned already; since b.m_hi is 0 b.m_lo can't be. The assert
reassures clang that this is the case.
We need to compare the magnitudes of the remainder and the denominator
in order to round negative numbers correctly. Note that while gnc_numeric
is constrained to a positive denominator the C++ rounding functions cannot
assume that constraint in all cases.
Combined with the previous commit, this fixes
Bug 796949 - Incorrect conversion of 0,01 USD to EUR
So that the returned price tuple has the two commodities of interest
converted to a common currency. Before the first pair that that shared
any random currency would be returned, perhaps creating an absurd result.
When the csv preview page is first loaded the header combo will not
work till refreshed which can be done by selecting another separator.
By adding a g_idle_add to the preview_page_prepare to rebuild the table
the combos become active.
The assistant file page is made up of an embedded GtkFileChooser widget
and associated OK button which seems out of place. Remove the OK button
and use the selection-changed signal to control the 'Forward' button.
This function complements gnc_time64_get_day_begin/end. There was
time64CanonicalDayTime but this returned noon of the given day, where we
want 10:59am in most cases. I haven't changed time64CanonicalDayTime
directly as that may break assumptions in other parts of the code.
Instead I have created a new function that can be gradually introduced.
Use a variant of xaccParseAmount that allows to ignore the locale's positive_sign character
or the + sign if locale doesn't define a positive_sign character.
In a future redesign it would probably be better to replace use
of xaccParseAmount with some variant of the gnc-expression-parser
but that would require more that a few tweaks to get right.