* src/gnome/window-main.c (gnc_ui_xml_v2_cb): new func.
(gnc_ui_account_heirarchy_cb): new empty func.
(gnc_main_create_menus): add devel menu.
* src/engine/io-gncxml-v2.h (struct _load_counter_struct): add
counters stuff.
* src/engine/io-gncxml-v2.c: mostly complete everything. Writing
only partially tested. Reading not tested at all.
* src/engine/gnc-xml.h: add pricedb declarations.
* src/engine/gnc-transaction-xml-v2.c (split_to_dom_tree): check
for NULL return from kvp_frame_to_dom_tree and don't add if we get
it.
(gnc_transaction_dom_tree_create): same.
* src/engine/gnc-commodity.c (gnc_commodity_table_get_size): add func.
* src/engine/gnc-account-xml-v2.c (gnc_account_dom_tree_create):
check for NULL return from kvp_frame_to_dom_tree and don't do
anything if we get it.
* src/gnome/gnc-http.c (gnc_http_start_post): cast data to char*
(it's const char*) (compile warning)
* src/gnome/gnc-html.c: put const on char *ptr (compile warning)
* src/doc/xml/io-gncxml-version2.dtd: reorder commodity and
prices. Add count data defs.
* src/engine/sixtp-dom-generators.c (timespec_to_dom_tree): Only
write nanoseconds if > 0.
(kvp_frame_to_dom_tree): don't return an xmlNodePtr if the frame
is null or contains no data.
* src/engine/gnc-commodity-xml-v2.c
(gnc_commodity_dom_tree_create): check to see if xcode is > 0
* src/engine/gnc-account-xml-v2.c (gnc_account_dom_tree_create):
check for description and code strlen > 0
* src/engine/gnc-pricedb-xml-v1.c (pricedb_v2_end_handler): make
this func work in the v2 manner with a callback in the global
data.
(gnc_pricedb_sixtp_parser_create): change to work in the v2 manner
with an end handler that does the final link of the data into the
book.
(pricedb_after_child_handler): add upping the counter for prices
loaded.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@3772 57a11ea4-9604-0410-9ed3-97b8803252fd
* src/test/test-stuff.c (failure): don't print num if == -1.
(success): same.
(get_random_account): move here from test-xml-account.c
(get_random_split): move here from test-xml-transaction.c
(get_random_transaction): same.
(success_args): New func.
(success): Simplified version
(failure_args): new func.
(failure): Simplified version.
* src/engine/io-gncbin-r.c: same as below.
* src/engine/TransLog.c (xaccTransWriteLog): same as below.
* src/engine/Group.c (xaccGroupMergeAccounts): same as below.
* src/engine/Backend.c (xaccTransactionGetBackend): Convert to not
use the split's acc part directly, but only to access through
funcs
* src/engine/sixtp-dom-parsers.c (dom_tree_generic_parse): Add
generic parser.
* src/engine/gnc-account-xml-v2.c (gnc_account_end_handler): use
generic parser extracted from here and used here and
gnc-transaction-iml-v2.c
* src/engine/Transaction.c (xaccInitSplit): Add a split->acc_guid
field that is set to the account's guid. This way an Account is
not required to exist yet when loading the split. Later when
xaccSplitGetAccount is called the account is looked up, cached and
returned. Make sure everything accesses ->acc through the helper
function.
* src/engine/AccountP.h: same as below.
* src/engine/Account.c (xaccAccountSetGUID): mark guid argument
const since it doesn't keep a pointer to it.
* src/doc/xml/transactions-v2.dtd: change guid -> id.
* src/engine/Transaction.c (get_denom_internal): New helper func.
(get_currency_denom): use func.
(get_security_denom): use func.
* src/engine/sixtp.c: (sixtp_sax_end_handler,
sixtp_sax_characters_handler, sixtp_sax_start_handler): don't use
g_return_if_fail to test pdata->parsing_ok so we don't see the
million CRITICAL warnings. We'll print an error at the end
anyway.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@3762 57a11ea4-9604-0410-9ed3-97b8803252fd