Commit Graph

2292 Commits

Author SHA1 Message Date
Geert Janssens
58b4ee35f0 Doxygen - drop several txt files that were included in
docygen_mainpage.c

None of them had useful information describing actual
implementation concepts or details.
2024-05-23 15:10:05 +02:00
Geert Janssens
3c860737f1 Doxygen - fold business.txt file in the respective source files
The file mostly had short descriptions that were very similar
to the descriptions of business objects it referred to. The
exception was an explanation of how the billing terms and
tax tables handled their immutable copies. That bit has been
moved to its own group under the Business group and is referenced
from the BillTerm and TaxTables group.

This commit also fixes rendering of the Address doxygen info
and expands the BillTerm info to explain how proximo due dates
work.
2024-05-23 15:10:05 +02:00
Christopher Lam
038405b370 Revert "[account.cpp] gnc_account_remove_split searches from the end"
This reverts commit 5aff4fb57d. Was not
tested properly...
2024-05-21 22:58:00 +08:00
Christopher Lam
5aff4fb57d [account.cpp] gnc_account_remove_split searches from the end
because removing the latest split is far more common (e.g. from ui or
during book shutdown) than removing an early split.
2024-05-21 20:31:16 +08:00
Christopher Lam
370a06fb61 [qofid.cpp] remove unnecessary struct 2024-05-20 08:05:01 +08:00
Christopher Lam
fe2cdf42c7 [transaction.cpp] speed up book close 2024-05-19 20:19:29 +08:00
Christopher Lam
d21d6f9344 [qofid.cpp] qof_collection_foreach_sorted 2024-05-19 20:19:29 +08:00
Christopher Lam
7b46466ebd [account.cpp] fix regression caused by 3f7a5a8267
whereby deleting an account and moving all splits to another account
would segfault. make a copy of priv->splits and work on the copy
rather than the original.
2024-05-13 12:45:56 +08:00
Christopher Lam
e54e9d8086 [account.cpp] use HashTable for splits
reduces xml loading time from 3.5s to 3.1s, i.e. 11% improvement
2024-05-13 12:45:46 +08:00
Christopher Lam
b28ca9bdb4 use c++ placement new
to initialize non-c++ object members
2024-05-12 21:00:56 +08:00
John Ralls
579da58a10 Merge Gwynn Ciesla's "Allow building with GCC 14.1" into stable. 2024-05-09 17:28:35 -07:00
Christopher Lam
2817ca195f [test-commodities.cpp] test stability of c_str names 2024-05-10 07:42:50 +08:00
Christopher Lam
f67233b662 Bug 799305 - Crash when there is more than one unknown quote source for commodities
instead of vector which requires reallocation, use a c++ linked list.
2024-05-10 07:42:50 +08:00
Christopher Lam
d867a9d18a Merge branch 'TransactionP-hpp' into stable #1928 2024-05-05 14:36:43 +08:00
Christopher Lam
9e4b03f71b [SplitP.hpp] rename to .hpp 2024-05-05 14:35:44 +08:00
Christopher Lam
1e1d21b716 [Transaction.hpp] rename to .hpp 2024-05-05 14:35:38 +08:00
Christopher Lam
ef8afedd09 [gnc-euro.cpp] use c++isms 2024-05-05 09:28:32 +08:00
Christopher Lam
3bc7ce606d [gnc-euro.cpp] convert to c++ 2024-05-05 09:28:32 +08:00
Christopher Lam
80997ee5b4 [gtest-gnc-euro] add rounding test 2024-05-05 09:28:32 +08:00
Christopher Lam
949c9c97c0 Bug 799300 - Nullpointer exception in gnc_quote_source_s
avoids constructing std::string with nullptr
2024-05-04 08:27:43 +08:00
Christopher Lam
87dbbf25f8 [account.cpp] add gnc_account_foreach_until_date
- uses binary search to find first split after date
- for_each from earliest split to (but excluding) the above first split
2024-05-02 22:21:31 +08:00
John Ralls
9c18bc889c Don't use Googletest internal API for unused decls. 2024-04-22 18:05:10 -07:00
Bruce P Schuck
d01aad68fb Update gnc-commodity.cpp
Fool.pm not working. Removed references to it from sources JSON structures.
2024-04-22 18:05:10 -07:00
Bruce Schuck
6696bf0a41 Updated QuoteSourceVec to match F::Q v1.59 2024-04-22 18:05:10 -07:00
Christopher Lam
0f791c474a [Account.cpp][api] gnc_account_foreach_split takes std::function<void(Split*)> 2024-04-22 07:49:40 +08:00
Christopher Lam
871f669a19 [Account.cpp] explicitly destroy priv->splits
better than 35b6fb767d
2024-04-20 10:08:56 +08:00
Christopher Lam
35b6fb767d [Account.cpp] ensure priv->splits releases memory on shutdown 2024-04-19 18:55:05 +08:00
Christopher Lam
94368f4cb4 [Account.cpp] SplitsVec&, ensure xaccAccountGetSplitList is freed 2024-04-16 21:41:48 +08:00
Christopher Lam
2b71219766 [Account.cpp] remove obsolete comment 2024-04-16 07:30:15 +08:00
Christopher Lam
1b50c6261a g_list_free xaccAccountGetSplitList 2024-04-16 00:09:52 +08:00
Christopher Lam
606da28d25 use xaccAccountGetSplitsSize 2024-04-16 00:09:52 +08:00
Christopher Lam
f70ee754fc use xaccAccountGetSplits and gnc_account_find_split 2024-04-16 00:09:52 +08:00
Christopher Lam
3f7a5a8267 [Account.hpp][API] xaccAccountGetSplits and gnc_account_find_split 2024-04-16 00:09:52 +08:00
Christopher Lam
a54caaab61 [Account.cpp] GetBalanceAsOfDate gets std::function instead of bool 2024-04-15 23:21:16 +08:00
Christopher Lam
cc10b9a0b7 [SX-book.c] tidy for loop
because splits will need to be g_list_free in a future commit
2024-04-15 22:22:48 +08:00
Christopher Lam
c1ee59c39b [Account.h] size_t xaccAccountGetSplitsSize returns g_list_length (splits)
which is easily replaced with vector.size()
2024-04-14 23:29:20 +08:00
Christopher Lam
f08e0f5b61 [policy.cpp] rewrite to avoid goto 2024-04-14 23:29:20 +08:00
Christopher Lam
2251bf8966 [Account.hpp] use std::optional for cached values
whereby {} denotes uncached values
2024-04-13 20:56:55 +08:00
Sherlock
f0d45de642
Resolve test assert. 2024-04-12 15:52:39 -07:00
Sherlock
8d6f748aca
Bug 799281 - Deleting a transaction may trigger a crash
Update qof_collection_lookup_entity() to prevent returning instances marked to be destroyed.
2024-04-12 15:34:14 -07:00
Christopher Lam
df0fc05223 Merge branch 'more-engine-cpp' into stable #1889 2024-04-12 23:13:50 +08:00
Christopher Lam
8c94132f13 Bug 799268 - Cannot write a check over $1000
this is caused by d52d226e5b which caused log_val, pow_val, this_part
to be kept as float instead of the original algorithm which required
casting to int.
2024-04-10 13:30:59 +08:00
Christopher Lam
d100df7ef7 [AccountP.hpp] .h -> .hpp, remove extern "C" {} wrapper 2024-04-02 21:09:40 +08:00
Christopher Lam
a67e4651c3 [Query.cpp] convert to cpp 2024-04-02 21:09:40 +08:00
Christopher Lam
4d9836aac2 [TransLog.cpp] convert to cpp 2024-04-02 21:09:40 +08:00
Christopher Lam
093781c018 [policy.cpp] convert to cpp 2024-04-02 21:09:40 +08:00
Christopher Lam
f913bed7e6 [gnc-engine.cpp] convert to cpp 2024-04-02 21:09:40 +08:00
Christopher Lam
96f041a1d6 [cap-gains.cpp] convert to cpp 2024-04-02 21:09:39 +08:00
Christopher Lam
79b7267cdd [cashobjects.cpp] convert to cpp 2024-04-02 21:09:39 +08:00
Christopher Lam
67d024c11f [Scrub3.cpp] convert to cpp 2024-04-02 21:09:39 +08:00