The default value in the glade file was set to 6 months but the default
value in the gschema file org.gnucash.gschema.xml.in was set to 11
months so have changed the gschema to match the glade file.
If you have a large report and have scrolled down to the bottom and
decide to tab to a different page and come back the report is back at
the top. This was due to reloading the report before focusing so change
this so it only loads once, if the report needs refreshing then there
is the reload toolbar button.
Currently when you get the message that GnuCash could not obtain a lock
for the file to be opened you have four options...
Open Read-Only, Create New File, Open Anyway, Quit
This commit changes the 'Create new File' to 'Open with No File' which
allows the user to then select...
'File->New' to create a new file,
'File->Open' to open a different file or one chosen from the history or
'File->Quit' to exit.
If guile calls a C function which expects gnc_numeric but sends a
non-number, it will create a gnc_numeric_error object. This will allow
error gnc_numeric to be handled elsewhere.
Also the overflow gnc_numeric was incorrectly created.
error is caused by pricedb containing an invalid gnc_numeric
price. multiplication of (invalid) price with amount causes a report
crash.
Fix: if invalid price, return zero for amount converted to report
currency.
When the preference option 'Numbers, Date, Time' ->
'Automatic Decimal Point' is set and you change the 'Payment periods'
to say 11 you end up with zero as number entered becomes 0.11
To fix this treat the Periods GNCAmountEdit widget as a plain GtkEntry
and not use the GNCAmountEdit evaluate functions.
If you search from a General Ledger the search results will update the
General Ledger and the only way to get back the contents is to close
and reopen the General Ledger.
This change makes it the same as any other register in that the search
results are opened in a new search page.
When the above function is activated, the slot 'equity type' is used and
set in relation to opening balances and the checkbox for marking the
opening balance in the accounts dialog can be changed.
Up to now, opening balance accounts have been identified by means of
fixed names and their translations, which in some cases is not
appropriate.
With this commit, therefore, opening balance accounts can now be
identified by a special slot, which should solve the above problem.
in gnc_find_or_create_equity_account(), when querying the
EQUITY_OPENING_BALANCE type, the system now first searches for an
account with an existing 'equity-type' slot having the value
'opening-balance' and returns it as an opening balance account if
one exists. If no corresponding account is found, the search is
continued as before. An account found in the process is automatically
given the status of an opening balance account (it is given an
'equity-type' slot with value 'opening-balance') to simplify the
future search.
The opening balance status of an account is visualized in the account
settings dialog with a check box. If a Gnucash file does not yet contain
an opening balance account, one can be selected in the account settings
dialog.
https://bugs.gnucash.org/show_bug.cgi?id=797836
If the horizontal scrollbar is present for a register and you start to
tab from one cell to the next one that is not in view the sheet does
not scroll to keep the active cell in view.
This commit fixes that by getting the active cell horizontal offset and
width and comparing it to the sheet width and window width.
To reproduce this, with an existing list of four recently opened files,
open a fifth file whose name must differ from those already in the list
and you will observe that the file history list is not updated.
This was down to when doing the 'File->Open', a call is made to
gnc_close_gui_component_by_session which closes the existing pages and
as part of that the preference callbacks for the history plugin page
were being removed along with some others like for tab placement.
To fix this added the removal inside an if statement that checks to see
if the window is quitting or not.
Wrapping the std::vector to hold the log flags is unneeded and actually harmful.
Just work on the vector directly. If user doesn't specify any '--log' options
the vector will just be empty.
With GnuCash's main libraries now linked at startup instead of being
dlopened at runtime except by Guile we can restrict the library path
renaming to Gnu Libtool's environment variable.