With the use of the selection call back for button sensitivity it make
sense to use that to store the contents_selected value for the contents
tree view.
This bug stemmed from the use of GTK_TREE_SORTABLE, the list store
entries for available reports are not stored as entered but in a sorted
order. Replaced the use of entry numbers to that of the report guid and
also used the tree selection to maintain a pointer to the
selected report. Also separated the updating of the two treeviews so
selected report position will be maintained.
test_suite_gncInvoice sets up the test suite. It's not part of the test
runtime, so stack variables in it have gone out of scope by the time the
tests are actually run. Making invoiceData static makes it permanent so
it exists at runtime.
With the options dialogue open when Gnucash is closed this error is
logged in the trace file, gnc_close_gui_component() component not found.
This is fixed by reversing the components list found for session so the
options dialogue is closed before the report window.
Change the report / book options dialogue from a GtkDialog to GtkWindow.
This removes the need for setting the transient parent which allows the
dialogue to be placed behind the main application when changing values
making it easier to see the result.
To avoid delays with large transaction associations trees, drop the
model from the transaction association tree view while it is being
updated and then reconnect it after the model has been updated.
Change the transaction association dialogue from a GtkDialog to
GtkWindow. This removes the need for setting the transient parent which
allows the dialogue to be placed behind the main application when
jumping to the transaction while the dialogue is still open.
To avoid delays with large account trees, drop the model from the find
account tree view while it is being updated and then reconnect it after
the model has been updated.
Change the find account dialogue from a GtkDialog to GtkWindow. This
removes the need for setting the transient parent which allows the
dialogue to be placed behind the main application when jumping to the
account if the the tick box to keep the dialogue open is used.
the Saved Report Configurations window
The vertical scrollbar obscures the delete button in the tree view so
add a dummy blank column to the end and set it to the width of the
vertical scrollbar.
The reports and other windows based on GtkNotebooks have currently max. 6 tabs in preferences dialog.
Changing the value MAX_TAB_COUNT to 6 will unify appearance in all such dialogs. But to consider future changes, it would be useful to add a few extra places for new tabs: MAX_TAB_COUNT = 8.
Refactor (tests) into call (create-test-data) which will add sample
txns in the environment.
As a result we can run tests twice - once before and once
after (create-test-data) which helps dislodge a few more report bugs.
Anticipating that some users might prefer to see exact prices,
add a preference to General>Numbers to configure whether prices
are rounded to decimals or are displayed as exact fractions.
When printing numbers convert them to a new decimal denominator with
rounding if the passed-in print info specifies that they should be
forced and rounded.
Make the default price settings forced and rounded.
Pass the price currency to gnc_default_price_print_info and
use the currency's fraction * 100 to determine the round-to
denominator and the number of decimal places to display.
This change aligns the totals with the account column by obtaining the
reconcile column width and adjusting the label padding. This is done at
initial display so it does not track column resizing or the use of the
scrollbar.
In the reconcile window the vertical scrollbars when selected obscure
the tree view data so get the width of the scrollbar and add it to the
cell renderer x padding of the last column.