Replace crummy list usage, when a for-each would have been enough.
(this improves performance, reduces em fragmentation)
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@10010 57a11ea4-9604-0410-9ed3-97b8803252fd
add some missing #includes needed for a clean compile
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@10005 57a11ea4-9604-0410-9ed3-97b8803252fd
add documentation
add copyright (hey I wrote this code in 1998, along with the rest
of the register code. Someone stripped out the copyright along the
way. Baadd).
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@10001 57a11ea4-9604-0410-9ed3-97b8803252fd
boxes. Building the quickfil of account names takes gobs of cpu when
the number of accounts exceedd about 500 or so. The sharing avoids
the rebuild of this list for each new reg window.
See
http://bugzilla.gnome.org/show_bug.cgi?id=120028
This patch should be back-ported to the 1.8 tree.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@9992 57a11ea4-9604-0410-9ed3-97b8803252fd
book is being destroyed, allowing user to clean up thier data.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@9989 57a11ea4-9604-0410-9ed3-97b8803252fd
This patch adds code to allow combo-boxes to run with
a shared quickfill. The use of a shared quickfill should
dramatically improve register startup performance for
systems with a large number of accounts. See
http://bugzilla.gnome.org/show_bug.cgi?id=120028
for details
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@9987 57a11ea4-9604-0410-9ed3-97b8803252fd
This patch fixes some, not all, of the problems discussed in
http://bugzilla.gnome.org/show_bug.cgi?id=120028
The performance problem occurs when there are large numbers of
accounts in the account tree (for example 600 or more). This patch
fixes performance problems with transaction editing and register
updates.
There are four calls to gnc_load_xfer_cell(), which is called twice by
gnc_split_register_load_xfer_cells() which is called by
gnc_split_register_load() in register/ledger-core/split-register-load.c
These calls should have been protected by if (info->first_pass)
so that they'd be called only when the register is first opened,
instead of each transaction update. I just moved these to
a more correct location in that routine, and surrounded by
the fisrt_pass test, and it seems to make a huge difference in
performance, and it seems to still work correctly.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@9985 57a11ea4-9604-0410-9ed3-97b8803252fd
-- try to inline the numeric-check for slightly better performance
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@9978 57a11ea4-9604-0410-9ed3-97b8803252fd
Gains aren't possible if the lot commodity is the same as
the transaction currency. I think that this should fix
http://bugzilla.gnome.org/show_bug.cgi?id=139677
Untested, let me know.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@9976 57a11ea4-9604-0410-9ed3-97b8803252fd
requires that all splits in lot share a common transaction currency.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@9973 57a11ea4-9604-0410-9ed3-97b8803252fd
* src/engine/Transaction.c:
Don't recompute balances or write to the translog when we're
shutting down. Destroy the parent transaction from xaccSplitDestroy()
if we're shutting down.
* src/engine/qofbook-p.h:
* src/engine/qofbook.h:
* src/engine/qofbook.c:
add "shutting_down" parameter and getter-method, so that
objects can detect when the book is shutting down and
ignore non-necessary reprocessing. Fixes a memory corruption
bug during book-closing.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@9972 57a11ea4-9604-0410-9ed3-97b8803252fd
* src/report/standard-reports/transaction.cm: applied Vasil's
patch to improve the transaction report for HTML export
purposes. Fixes bug #142942.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@9968 57a11ea4-9604-0410-9ed3-97b8803252fd
-- Add 'new' callback to QofObject. This allows QofObject to act
as an 'object factory', creating a new instance of something,
given only the type name. Plan to use this in the new SQL
backend, when restoring objects from SQL tables.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@9965 57a11ea4-9604-0410-9ed3-97b8803252fd
* src/report/locale-specific/us/taxtxf.scm: guile-1.6 complains
about string->symbol when passed a symbol. Fixes#131201
Also add some code to handle accounts that are expected to
have parents but do not (also described in #131201).
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@9963 57a11ea4-9604-0410-9ed3-97b8803252fd
2004-05-08 Christian Stimming <stimming@tuhh.de>
* src/import-export/import-match-map.c
(gnc_imap_add_account_bayes): Skip the case when a token is the
empty string. This caused many warnings about a NULL kvp_frame
lookup.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@9956 57a11ea4-9604-0410-9ed3-97b8803252fd
guile gh_* routines. The file engine-helpers.c also has whitespace
changes where tabs were expanded to 8 spaces (I have set ts=3, so
mixed tab/space indentation looks terrible). I beleive that the
changes are all good, but if you suspect the worst, you can revert by
fishing out the cvs tag 'pre-gh-deprecate'.
Some of the gnome files weren't converted, mostly because the
conversions really should be done in the gnome2 branch not this
branch.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@9950 57a11ea4-9604-0410-9ed3-97b8803252fd