r15141 - gnucash/branches/2.0 - Handle type-compatibility when reparenting accounts: #344966.

Derek Atkins warlord at cvs.gnucash.org
Fri Nov 24 14:54:23 EST 2006


Author: warlord
Date: 2006-11-24 14:54:20 -0500 (Fri, 24 Nov 2006)
New Revision: 15141
Trac: http://svn.gnucash.org/trac/changeset/15141

Modified:
   gnucash/branches/2.0/
   gnucash/branches/2.0/ChangeLog
   gnucash/branches/2.0/src/engine/Account.c
   gnucash/branches/2.0/src/engine/Account.h
   gnucash/branches/2.0/src/gnome-utils/dialog-account.c
   gnucash/branches/2.0/src/gnome-utils/gnc-tree-model-account-types.c
   gnucash/branches/2.0/src/gnome-utils/gnc-tree-model-account-types.h
   gnucash/branches/2.0/src/import-export/import-account-matcher.c
Log:
	Handle type-compatibility when reparenting accounts: #344966.
	
	Add xaccAccountTypesCompatibleWith and change
	xaccAccountTypesCompatible to use that.

	Add gnc_tree_model_account_types_set_mask and bind mask to the
	filter model instead using it as data of the filter function,
	because those can only be set once per filter.

	f_model is not always set in
	gnc_tree_model_account_types_get_selection because of a bug in
	gtk+ (#357791). Also add gnc_tree_model_account_types_get_mask.

	Make the account type list in the account dialog dynamically
	filtered based on compatibility to the parent account.

	* add gnc_account_parent_changed_cb. Filter by valid_types & parent
	  compatible types
	* add aw->preferred_account_type to remember what we chose but may not
	  work currently
	* make valid_types a guint32 (was GList*)
	* last_used_account_type is only set in gnc_ui_to_account

	Free a list in import-account-matcher.c.

	Ease account type changes in the account dialog after OK is
	clicked.  Before, we did not enforce compatibility with the parent
	account and suggested to change only children or children and all
	parent accounts up to the top-level one. We do enforce it now and
	only need to look at the children.

	The filling of the hash of (children) account (type) changes has
	been replaced by showing the user a filtered account tree and the
	types are adjusted recursively once the user verified the change.

	This is another attempt to resolve #344966.

Merge r14894, r14895, r14896, r14897, r14898, r14899




More information about the gnucash-patches mailing list