gnucash master: Book-Currency Feature Step 3

J. Alex Aycinena alex.aycinena at code.gnucash.org
Sat Jun 27 19:07:53 EDT 2015


Updated	 via  https://github.com/Gnucash/gnucash/commit/5fdf14f8 (commit)
	from  https://github.com/Gnucash/gnucash/commit/06d5d0a2 (commit)



commit 5fdf14f8cbd024a4e7ff8f7800ffd5b44fb5449c
Author: Alex Aycinena <alex.aycinena at gmail.com>
Date:   Sat Jun 27 16:06:56 2015 -0700

    Book-Currency Feature Step 3
    
    Add an option to the File->Properties dialog to select a Currency Accounting Method, and to specify the book-currency and a default gains/loss policy if the 'book-currency' method is selected.
    Revert some changes made in prior commits. Other than storing and retrieving the
    book-currency and policy in book KVPs, the behavior of gnucash has not been
    affected by these changes. The changes made are:
    
         engine/policy.c & .h - define valid policies and their descriptions
             and hints; define functions gnc_get_valid_policy_list and
             gnc_valid_policy
         engine/engine.i - include policy.h; define 'CURRENCY-ACCOUNTING',
             'BOOK-CURRENCY', and 'DEFAULT-GAINS-POLICY' as option names
         engine/test/utest-Split.cpp - revert prior commit that modified test
             function for trading accounts
         engine/test/utest-Transaction.c - revert prior commit that modified test
             function for trading accounts
         libqof/qof/qofbookslots.h - revert prior commit that defined Currency
             Accounting Method; modify definitions of Currency Accounting and Book
             Currency; add definition of default gains policy; keep the previous
             Trading Accounts definition
         libqof/qof/qofbook.cpp & .h - reverted function to determine currency
             accounting method; add function to get book-currency, revert
             previously committed changes to function to determine if book uses
             trading accounts; add function to get gains policy; modify gobject
             properties accordingly
         libqof/qof/test/test-qofbook.c - revert prior modification to test
             function for trading accounts; define tests for book-currency and
             default gains policies
         app-utils/options.scm - define make-currency-accounting-option and
             required support functions
         app-utils/options-util.c & .h - make support functions of
             make-currency-accounting-option available in c code
         app-utils/test/test-options-util.c - include tests for using book-currency
         app-utils/gnc-ui-util.c & .h - define gnc_book_use_book_currency,
             gnc_book_get_book_currency and gnc_book_get_default_gains_policy
             functions
         app-utils/test/test-gnc-ui-util.c - set up tests for new gnc-ui-util
             functions
         app-utils/test/test-app-utils.c - include test-gnc-ui-util.c
         app-utils/test/Makefile.am - include test-gnc-ui-util.c
         app-utils/app-utils.scm - define and export book options for Currency
             Accounting, Book-Currency and Default Gains Policy; export required
             currency-accounting-option support functions
         app-utils/business-prefs.scm - replace the Trading Accounts boolean option
             with a currency-accounting-option and rearrange the order of the
             options
         gnome-utils/dialog-options.c - define functions for set-ui-widget,
             set-ui-value, and get-ui-value for 'currency-accounting' option and
             various other support functions



Summary of changes:
 src/app-utils/app-utils.scm           |  12 +
 src/app-utils/business-prefs.scm      |  31 +-
 src/app-utils/gnc-ui-util.c           |  63 ++++
 src/app-utils/gnc-ui-util.h           |  17 ++
 src/app-utils/option-util.c           | 153 +++++++++-
 src/app-utils/option-util.h           |   9 +
 src/app-utils/options.scm             | 211 +++++++++++++
 src/app-utils/test/Makefile.am        |   4 +-
 src/app-utils/test/test-app-utils.c   |   2 +
 src/app-utils/test/test-gnc-ui-util.c | 216 +++++++++++++
 src/app-utils/test/test-option-util.c | 132 +++++++-
 src/engine/engine.i                   |   5 +
 src/engine/policy.c                   |  77 +++++
 src/engine/policy.h                   |  17 ++
 src/engine/test/utest-Split.cpp       |   2 +-
 src/engine/test/utest-Transaction.c   |   4 +-
 src/gnome-utils/dialog-options.c      | 561 ++++++++++++++++++++++++++++++++++
 src/libqof/qof/qofbook.cpp            | 164 ++++------
 src/libqof/qof/qofbook.h              |  18 +-
 src/libqof/qof/qofbookslots.h         |   6 +-
 src/libqof/qof/test/test-qofbook.c    |  97 +++---
 21 files changed, 1627 insertions(+), 174 deletions(-)
 create mode 100644 src/app-utils/test/test-gnc-ui-util.c



More information about the gnucash-patches mailing list