To accomplish that we separate creating a book and creating a session;
gnc_get_session no longer automatically creates a book if one isn't
connected.
We also add an initially_insensitive GtkAction array to
gnc-plugin-basic-commands with a call to make its contents insensitive
at plugin load so that the save button on the toolbar isn't lighted when
there's nothing to save.
Separately keeps track of last investment account, security account,
and income account. One issue is that gnc_import_select_account
doesn't tell the caller if it put up a dialog or found the online ID
on an existing account. This means the last account may be one the
user didn't manually select. This may or may not be the right thing
to do.
GtkWindow
When using Gnucash on Microsoft Windows and a dialog opens a further
dialog when you switch away from the application and back the last
dialog that has the focus is behind the parent and it appears like the
application has froze. To fix this try to use only one level of dialogue
so change the Bill Terms Table to use a Window with no transient parent.
When using Gnucash on Microsoft Windows and a dialog opens a further
dialog when you switch away from the application and back the last
dialog that has the focus is behind the parent and it appears like the
application has froze. To fix this try to use only one level of dialogue
so change the Tax Table to use a GtkWindow with no transient parent.
Restores budget-3.7 behaviour for current budgets.
Fixes future budget behaviour.
Restore budget-3.7 headings "Income/Expense/Transfer"
Renamed budget-3.7 heading Total to "Remaining"
Reusing the variable in a get_filename_component call caused the
function to recurse to /, not very useful.
Also re-do GNC_DBD_DIR with no default but to take its value from the
command line or environment.
That defeats the purpose of caching it and causes problems when using it
from two registers at once. Instead use the PopBox tmp_store for listing
the type-ahead match results if any.
Since a no-match causes an empty ItemList and an empty ItemList with
grab loses key events because there's no cell to handle them--very
confusing to the user--prevent that by checking that there are entries
before grabbing.
- gnc_plugin_page_account_tree_cmd_delete_account() is still too long but would be messy to break
- rename the _int function and break it further
- remove passing of account name
- simplify some of the code by reversing if(...) to if(!...)
Premise: pairwise combinatorics testing is only possible when all
options have at least 2 options.
The "General Journal" report is unique because it starts with the
Transaction Report options generator, and adds a few hidden
options. Unfortunately the Transaction Report receives the
"General/Stylesheet" option, with only 1 default stylesheet.
The General Journal report therefore has 1 stylesheet option with only
1 choice, and is not acceptable to jenny for pairwise testing. It
would fail the combinatorics testing. Adding other stylesheets did not
successfully allow pairwise testing. Therefore the simplest way to
test General Journal is to disable multichoice testing whereby
num(choices) is only 1.
GncTable uses separate values for entry position, selection start, and
selection end while GtkEntry maintains only position and selection
bound. These functions provide for a consistent bridge between the two.