gnucash/libgnucash/engine
Vincent Dawans 761d7f29a5 Bug 765920 - Running balance not accurate when sorted different ways
- Renamed option to "Account Balance" to avoid confusion with running
  total.
- Added helper function to ensure running balance and balance forward
  are only shown when transaction are grouped by account and sorted as
  in register. In that case column heading remains "Running Balance"
  and balance forward is shown. Otherwwise column heading is renamed
  "Account Balance" and balance forward is not shown.
- Also added missing code for Common Currency conversion.
2023-04-21 09:13:16 -07:00
..
mocks Don't use extern "C" around #includes 2023-03-03 18:55:42 +00:00
test Merge branch 'maint' 2023-03-14 10:43:45 -07:00
test-core Don't use extern "C" around #includes 2023-03-03 18:55:42 +00:00
Account.cpp Bug 798851 - Account Balance 'include subaccounts' not saved 2023-04-12 11:20:32 +01:00
Account.h Eliminate gnc-csv-account-map.[ch] 2023-03-13 19:58:10 +01:00
AccountP.h Allow the balances of sub accounts to be used in limits 2022-12-16 15:16:53 +00:00
cap-gains.c Fix typos in libgnucash/ 2021-03-02 01:15:32 +01:00
cap-gains.h Fix typos in libgnucash/ 2021-03-02 01:15:32 +01:00
cashobjects.c Bug 798320 - Error message indicating a crash of GNUcash when closing... 2021-10-08 14:17:28 -07:00
cashobjects.h Use internal extern "C" { ... } for C++ 2023-01-23 18:40:01 +00:00
CMakeLists.txt Import GLIB2 as a target, and use it to simplify the CMakeLists 2023-02-21 12:59:42 +00:00
design.txt Fix typos in libgnucash/ 2021-03-02 01:15:32 +01:00
engine-helpers.c Remove the incomplete book-currency code. 2021-07-10 17:29:11 -07:00
engine-helpers.h Use internal extern "C" { ... } for C++ 2023-01-23 18:40:01 +00:00
extensions.txt Fix typos in libgnucash/ 2021-03-02 01:15:32 +01:00
FreqSpec.h
gnc-accounting-period.c [options] Move options from app-utils to engine. 2022-08-25 22:09:56 -07:00
gnc-accounting-period.h Use internal extern "C" { ... } for C++ 2023-01-23 18:40:01 +00:00
gnc-aqbanking-templates.cpp Use internal extern "C" { ... } for C++ 2023-01-23 18:40:01 +00:00
gnc-aqbanking-templates.h Don't use extern "C" around #includes 2023-03-03 18:55:42 +00:00
gnc-backend-prov.hpp
gnc-budget.cpp [gnc-budget] gnc_budget_get_account_period_note returns a const 2022-11-19 10:35:49 +08:00
gnc-budget.h Don't use extern "C" around #includes 2023-03-03 18:55:42 +00:00
gnc-commodity.c Fixups for merging into master instead of maint. 2023-03-02 17:02:46 -08:00
gnc-commodity.h Use internal extern "C" { ... } for C++ 2023-01-23 18:40:01 +00:00
gnc-commodity.hpp Use internal extern "C" { ... } for C++ 2023-01-23 18:40:01 +00:00
gnc-date-p.h Don't use extern "C" around #includes 2023-03-03 18:55:42 +00:00
gnc-date.cpp Fix dereference of expired temporaries. 2023-03-31 11:27:33 -07:00
gnc-date.h Use internal extern "C" { ... } for C++ 2023-01-23 18:40:01 +00:00
gnc-datetime.cpp Remove some unused variables with obviously no side effects 2023-02-06 14:19:22 +00:00
gnc-datetime.hpp Rename GncDateTime's ymd to gnc_ymd to avoid a name conflict with Carbon. 2023-01-09 14:36:06 -08:00
gnc-engine.c Bug 798237 - Logging during XML file loading degrades performance... 2021-09-14 15:15:11 -07:00
gnc-engine.h Use internal extern "C" { ... } for C++ 2023-01-23 18:40:01 +00:00
gnc-euro.c Remove non-ISO4217 currency codes from gnc-euro table. 2022-09-30 15:12:19 -07:00
gnc-euro.h Use internal extern "C" { ... } for C++ 2023-01-23 18:40:01 +00:00
gnc-event.c Prevent gcc from searching config.h in the current directory 2017-10-26 14:05:17 +02:00
gnc-event.h
gnc-features.cpp Fix dereference of expired temporaries. 2023-03-31 11:27:33 -07:00
gnc-features.h [gnc-features.cpp] backport gnc_features_set_unused from master 2022-10-29 21:01:01 +08:00
gnc-hooks.c gnc-hooks - factor out scm calls into a separate source file 2019-12-06 19:59:11 +01:00
gnc-hooks.h Use internal extern "C" { ... } for C++ 2023-01-23 18:40:01 +00:00
gnc-int128.cpp [-Wunused-value] - remove 2023-02-16 09:19:19 +00:00
gnc-int128.hpp Silence Clang deprecation warnings about sprintf. 2023-01-23 12:54:25 -08:00
gnc-lot-p.h
gnc-lot.c Fixups for merging into master instead of maint. 2023-03-02 17:02:46 -08:00
gnc-lot.h [gnc-lot.c] speed up gncInvoiceGetInvoiceFromLot by caching invoice 2020-04-30 23:56:26 +08:00
gnc-numeric.cpp Remove some unused variables with obviously no side effects 2023-02-06 14:19:22 +00:00
gnc-numeric.h Use internal extern "C" { ... } for C++ 2023-01-23 18:40:01 +00:00
gnc-numeric.hpp Fix typos in libgnucash/ 2021-03-02 01:15:32 +01:00
gnc-option-date.cpp Use internal extern "C" { ... } for C++ 2023-01-23 18:40:01 +00:00
gnc-option-date.hpp Use internal extern "C" { ... } for C++ 2023-01-23 18:40:01 +00:00
gnc-option-impl.cpp Move operator==(const GncGUID&, const GncGUID&) to guid.[ch]pp. 2023-03-18 13:53:49 -07:00
gnc-option-impl.hpp Fix build on gcc-8 & 9. 2023-03-30 18:25:23 -07:00
gnc-option-ui.hpp [options] Move options from app-utils to engine. 2022-08-25 22:09:56 -07:00
gnc-option-uitype.hpp Bug753307 - Custom Report be selectable as default Report for Printing 2023-02-01 16:29:11 +00:00
gnc-option.cpp Bug 798863 - Crash on clicking Settings button second time 2023-04-20 20:08:38 -07:00
gnc-option.hpp Bug 798778 - GnuCashquits abruptly when attempting to edit options… 2023-03-16 17:50:06 -07:00
gnc-optiondb-impl.hpp [c++options]Really fix the gnc_option_db_lookup_string_value leak 2023-03-06 11:43:50 -08:00
gnc-optiondb.cpp Bug 765920 - Running balance not accurate when sorted different ways 2023-04-21 09:13:16 -07:00
gnc-optiondb.h [c++options]Really fix the gnc_option_db_lookup_string_value leak 2023-03-06 11:43:50 -08:00
gnc-optiondb.hpp Bug753307 - Custom Report be selectable as default Report for Printing 2023-02-01 16:29:11 +00:00
gnc-pricedb-p.h Use internal extern "C" { ... } for C++ 2023-01-23 18:40:01 +00:00
gnc-pricedb.c Merge branch 'maint' 2023-01-26 18:40:44 +08:00
gnc-pricedb.h [gnc-pricedb] add user:stock-transaction price source 2022-03-11 14:31:02 +08:00
gnc-rational-rounding.hpp Bug 796949 - Fix division and rounding of zero. 2019-05-11 23:23:59 +01:00
gnc-rational.cpp Adjust catch syntax to avoid GCC8 warnings. 2018-04-03 22:02:44 -04:00
gnc-rational.hpp
gnc-session.c Decouple QofBook creation from QofSession. 2020-05-08 15:59:41 -07:00
gnc-session.h Use internal extern "C" { ... } for C++ 2023-01-23 18:40:01 +00:00
gnc-timezone.cpp Use some unused variables 2023-02-06 14:20:31 +00:00
gnc-timezone.hpp Use internal extern "C" { ... } for C++ 2023-01-23 18:40:01 +00:00
gnc-uri-utils.c Fix typos in libgnucash/ 2021-03-02 01:15:32 +01:00
gnc-uri-utils.h Use internal extern "C" { ... } for C++ 2023-01-23 18:40:01 +00:00
gncAddress.c Remove extra semicolons 2023-01-24 13:22:18 +00:00
gncAddress.h Use internal extern "C" { ... } for C++ 2023-01-23 18:40:01 +00:00
gncAddressP.h
gncBillTerm.c Merge branch 'maint' 2023-01-26 18:40:44 +08:00
gncBillTerm.h Merge Richard Cohen's 'cleanup' into master. 2023-01-24 12:05:47 -08:00
gncBillTermP.h Use internal extern "C" { ... } for C++ 2023-01-23 18:40:01 +00:00
gncBusiness.c Prevent gcc from searching config.h in the current directory 2017-10-26 14:05:17 +02:00
gncBusiness.h Don't use extern "C" around #includes 2023-03-03 18:55:42 +00:00
gncCustomer.c Remove some unused variables with obviously no side effects 2023-02-06 14:19:22 +00:00
gncCustomer.h Don't use extern "C" around #includes 2023-03-03 18:55:42 +00:00
gncCustomerP.h Cache current owner balances 2018-09-23 16:00:41 +02:00
gncEmployee.c Remove extra semicolons 2023-01-24 13:22:18 +00:00
gncEmployee.h Don't use extern "C" around #includes 2023-03-03 18:55:42 +00:00
gncEmployeeP.h Cache current owner balances 2018-09-23 16:00:41 +02:00
gncEntry.c Merge branch 'maint' 2023-01-26 18:40:44 +08:00
gncEntry.h Merge Richard Cohen's 'cleanup' into master. 2023-01-24 12:05:47 -08:00
gncEntryP.h Use internal extern "C" { ... } for C++ 2023-01-23 18:40:01 +00:00
gncIDSearch.c Revert b5f5129f7 using gnc_list_length_cmp 2021-11-02 23:34:26 +08:00
gncIDSearch.h Prevent gcc from searching config.h in the current directory 2017-10-26 14:05:17 +02:00
gncInvoice.c Fixups for merging into master instead of maint. 2023-03-02 17:02:46 -08:00
gncInvoice.h Don't use extern "C" around #includes 2023-03-03 18:55:42 +00:00
gncInvoiceP.h Use internal extern "C" { ... } for C++ 2023-01-23 18:40:01 +00:00
gncJob.c Remove some unused variables with obviously no side effects 2023-02-06 14:19:22 +00:00
gncJob.h Merge branch 'maint' 2023-01-26 18:40:44 +08:00
gncJobP.h
gncOrder.c Remove extra semicolons 2023-01-24 13:22:18 +00:00
gncOrder.h Merge Richard Cohen's 'cleanup' into master. 2023-01-24 12:05:47 -08:00
gncOrderP.h Fix typos in libgnucash/ 2021-03-02 01:15:32 +01:00
gncOwner.c Revisit invoice payment in multi-currency context 2023-01-29 23:09:06 +01:00
gncOwner.h Use internal extern "C" { ... } for C++ 2023-01-23 18:40:01 +00:00
gncOwnerP.h Cache current owner balances 2018-09-23 16:00:41 +02:00
gncTaxTable.c Merge branch 'maint' 2023-01-26 18:40:44 +08:00
gncTaxTable.h Merge Richard Cohen's 'cleanup' into master. 2023-01-24 12:05:47 -08:00
gncTaxTableP.h Use internal extern "C" { ... } for C++ 2023-01-23 18:40:01 +00:00
gncVendor.c Remove some unused variables with obviously no side effects 2023-02-06 14:19:22 +00:00
gncVendor.h Don't use extern "C" around #includes 2023-03-03 18:55:42 +00:00
gncVendorP.h Cache current owner balances 2018-09-23 16:00:41 +02:00
guid.cpp Move operator==(const GncGUID&, const GncGUID&) to guid.[ch]pp. 2023-03-18 13:53:49 -07:00
guid.h Don't use extern "C" around #includes 2023-03-03 18:55:42 +00:00
guid.hpp Move operator==(const GncGUID&, const GncGUID&) to guid.[ch]pp. 2023-03-18 13:53:49 -07:00
iso-4217-currencies.xml Bug 798614 - Croatia to join the Euro 2022-09-30 13:51:28 -07:00
iso-currencies-to-c.xsl
kvp_doc.txt Fix typos in libgnucash/ 2021-03-02 01:15:32 +01:00
kvp-frame.cpp Merge branch 'maint' 2023-02-27 16:24:44 -08:00
kvp-frame.hpp [kvp-frame.cpp] expose iterator, skip inexistent frame 2022-04-09 17:45:44 +08:00
kvp-value.cpp KvpValue: Use boost::typeindex::type_id instead of buildtin typeid. 2021-07-10 17:24:58 -07:00
kvp-value.hpp Merge Richard Cohen's 'cleanup-boost' into master. 2023-02-27 16:31:53 -08:00
policy-p.h Merge branch 'maint' 2022-04-14 18:02:17 -07:00
policy.c [-Wunused-function] - remove 2023-02-16 09:20:59 +00:00
policy.h Remove the incomplete book-currency code. 2021-07-10 17:29:11 -07:00
qof-backend.cpp Use internal extern "C" { ... } for C++ 2023-01-23 18:40:01 +00:00
qof-backend.hpp Use internal extern "C" { ... } for C++ 2023-01-23 18:40:01 +00:00
qof-gobject.h Remove extra semicolons 2023-01-24 13:22:18 +00:00
qof-string-cache.cpp Use internal extern "C" { ... } for C++ 2023-01-23 18:40:01 +00:00
qof-string-cache.h Use const return values for string cache 2021-07-11 18:54:49 +01:00
qof-win32.cpp Don't use extern "C" around #includes 2023-03-03 18:55:42 +00:00
qof.h Use internal extern "C" { ... } for C++ 2023-01-23 18:40:01 +00:00
qofbackend.h Fix typos in libgnucash/ 2021-03-02 01:15:32 +01:00
qofbook-p.h
qofbook.cpp Add some PWARN messages to the default invoice report 2023-02-21 10:44:07 +00:00
qofbook.h Don't use extern "C" around #includes 2023-03-03 18:55:42 +00:00
qofbook.hpp [gnc-features.cpp] convert to cpp 2022-10-28 20:50:35 +08:00
qofbookslots.h Allow to select saved report on print invoice button 2023-02-02 14:05:53 +00:00
qofchoice.cpp Fix build with glib2 2.67.x. 2021-02-16 13:23:16 -08:00
qofchoice.h
qofclass-p.h
qofclass.cpp Fix build with glib2 2.67.x. 2021-02-16 13:23:16 -08:00
qofclass.h Fix typos in libgnucash/ 2021-03-02 01:15:32 +01:00
qofevent-p.h
qofevent.cpp Fix build with glib2 2.67.x. 2021-02-16 13:23:16 -08:00
qofevent.h
qofid-p.h
qofid.cpp Use internal extern "C" { ... } for C++ 2023-01-23 18:40:01 +00:00
qofid.h Don't use extern "C" around #includes 2023-03-03 18:55:42 +00:00
qofinstance-p.h Timespec removal, engine odds-and-ends. 2018-08-13 11:52:43 -07:00
qofinstance.cpp Fix dereference of expired temporaries. 2023-03-31 11:27:33 -07:00
qofinstance.h Use internal extern "C" { ... } for C++ 2023-01-23 18:40:01 +00:00
qoflog.cpp Use const references for for-loops to avoid unnecessary copies 2023-01-31 14:44:57 +00:00
qoflog.h Don't use extern "C" around #includes 2023-03-03 18:55:42 +00:00
qofobject-p.h
qofobject.cpp [-Wunused-function] - remove 2023-02-16 09:20:59 +00:00
qofobject.h Fix typos in libgnucash/ 2021-03-02 01:15:32 +01:00
qofquery-p.h
qofquery.cpp Guard against some possible null pointer dereferences 2023-03-08 11:00:56 +00:00
qofquery.h Fix various typos 2022-04-08 14:12:50 -04:00
qofquerycore-p.h Bug 795031 - 3.0 Crashes on loading when opening 2.6.19 file 2018-04-26 23:06:36 +02:00
qofquerycore.cpp Avoid unnecessary g_list_length in equality functions 2021-10-21 17:56:15 +08:00
qofquerycore.h Bug 795031 - 3.0 Crashes on loading when opening 2.6.19 file 2018-04-26 23:06:36 +02:00
qofsession.cpp Use internal extern "C" { ... } for C++ 2023-01-23 18:40:01 +00:00
qofsession.h use same order in comment as in definition of SessionOpenMode enum 2020-07-04 22:26:35 +02:00
qofsession.hpp Fix some return of ptr-to-temporary errors 2020-09-25 12:31:52 -07:00
qofutil.cpp Bug 798679 - Unicode normalization should be used for comparison but not stored. 2023-01-04 13:19:36 -08:00
qofutil.h Don't use extern "C" around #includes 2023-03-03 18:55:42 +00:00
Query.c Bug 795031 - 3.0 Crashes on loading when opening 2.6.19 file 2018-04-26 23:06:36 +02:00
Query.h Use internal extern "C" { ... } for C++ 2023-01-23 18:40:01 +00:00
README
README.query-api Bug 795031 - 3.0 Crashes on loading when opening 2.6.19 file 2018-04-26 23:06:36 +02:00
Recurrence.c Revert b5f5129f7 using gnc_list_length_cmp 2021-11-02 23:34:26 +08:00
Recurrence.h Use internal extern "C" { ... } for C++ 2023-01-23 18:40:01 +00:00
SchedXaction.c Merge branch 'maint' 2023-01-26 18:40:44 +08:00
SchedXaction.h Use internal extern "C" { ... } for C++ 2023-01-23 18:40:01 +00:00
Scrub2.c Make xaccScrubUtilityGetOrMakeAccount static and remove ScrubP.h 2021-01-27 17:44:21 -08:00
Scrub2.h Fix typos in libgnucash/ 2021-03-02 01:15:32 +01:00
Scrub3.c Prevent gcc from searching config.h in the current directory 2017-10-26 14:05:17 +02:00
Scrub3.h Use internal extern "C" { ... } for C++ 2023-01-23 18:40:01 +00:00
Scrub.c Remove some unused variables - and the initialization 2023-02-06 14:20:28 +00:00
Scrub.h Use internal extern "C" { ... } for C++ 2023-01-23 18:40:01 +00:00
ScrubBudget.c [budget-feature] move unset_feature call to gnc_budget_gui_delete_budget 2022-10-31 12:03:58 +08:00
ScrubBudget.h [1/2][Scrubbudget.c] use heuristics to scrub budget signs 2021-12-03 17:40:21 +08:00
ScrubBusiness.c g_free gnc_ctime which returns a new gchar* 2021-08-05 21:42:31 +08:00
ScrubBusiness.h Update bug tracker URL 2018-07-13 09:49:33 -07:00
Split.c Fixups for merging into master instead of maint. 2023-03-02 17:02:46 -08:00
Split.h [Split.c] xaccSplitListGetUniqueTransactionsReversed 2021-02-24 09:08:25 +08:00
SplitP.h Use internal extern "C" { ... } for C++ 2023-01-23 18:40:01 +00:00
SX-book-p.h Use internal extern "C" { ... } for C++ 2023-01-23 18:40:01 +00:00
SX-book.c Merge branch 'maint' 2023-01-26 18:40:44 +08:00
SX-book.h Use internal extern "C" { ... } for C++ 2023-01-23 18:40:01 +00:00
SX-ttinfo.c Prevent gcc from searching config.h in the current directory 2017-10-26 14:05:17 +02:00
SX-ttinfo.h Use internal extern "C" { ... } for C++ 2023-01-23 18:40:01 +00:00
Transaction.c Merge branch 'maint' 2023-03-14 10:43:45 -07:00
Transaction.h [Transaction.c] use heuristics to determine txn->txn_type 2022-07-18 09:24:05 +08:00
TransactionP.h Merge branch 'maint' 2023-02-27 16:24:44 -08:00
TransLog.c Remove some unused variables with obviously no side effects 2023-02-06 14:19:22 +00:00
TransLog.h Use internal extern "C" { ... } for C++ 2023-01-23 18:40:01 +00:00
xlate.pl

This directory contains code for the accounting engine.
Its fairly clean but far from perfect, and it certainly
lacks advanced features.

There should be no GUI code in this subdirectory, and,
ideally, it should build cleanly and independently of 
any GUI elements or assumptions.

For design documentation, please see the file "design.txt",
and also, look at the header files carefully.  The documentation
for each routine is in the header files for that routine.

September 1998