Actually two problems; first, save_may_clobber_data returned the reverse
of what it should have and second, the backend's m_book (which pointed
to the old book) wasn't nulled so there was a mismatch at save time
preventing the save from taking place. Then, when quitting GnuCash, the
cleanup found the old m_book pointer and tried to use it, causing a
memory protection crash.
Adds GncDbiSqlConnection::drop_indexes, changes GncDbiSqlConnection::table_operation
to use a regex-filtered table list from the DbiConn, and converts TableOpType
to a C++ enum.
To qof-backend.hpp and qof-backend.cpp respectively, to reflect that they
implement the QofBackend class (which won’t be a class until a future commit).
Instead split the string in a formatter string with one parameter. This avoids
the need to remember to update the string and its translations
each time the saved-report's file format is bumped.
This is about as far as I can go on the SQL/DBI backend without changes
to QofBackend, QofQuery, QofInstance, and the engine classes. The XML
backend needs the same OO treatment before that's possible, so that's
the next stage.
Fixing incorrect implementation in gnc-bill-term-sql and gnc-tax-table-sql,
where there was no test for the parent actually having been loaded.
Also #ifdef-out the starting balances part of GncSqlAccountBackend::load_all
and move its variable decls inside the ifdef as auto.
Added an option of "No Fancy Date Format" to date-format so it can be
the default. In this position, the format returned is that of what ever
the preference date is set to.
This is really just a copy of the number-range-option with some tests
for the saved value being a pair which is used in later versions. If the
pair is a pixel setting, then that value will be used, otherwise the
default value is used. Should any report get saved, the saved values
will be over written in the old format.
When you have reports open but they are not selected, resizing the
window does not always resize the hidden report views properly. Use
the expose call back so the reports are reloaded on expose event.
Added progress bar updates for refresh/reload button press and also for
when the options change. Created a new function to set progress bar
height from previous commit to be used for above changes.
When the report is run and the progress bar is updated, the height
changes and then changes back forcing the webkit view to change height
and ultimately use the wrong value.
The reason for webkit not using the full report area is that this area
has not been realized when the report is created and so webkit does not
know the correct size. By using the idle function, the page is created
and realized before loading the report with the added advantage the
progress bar updates on the blank report page.
- Update the lot list of the lot's account only when the account itself is not being destroyed
- Fix the test cases to accept the new (improved) lot destruction handling