* lib/srfi/srfi-9.scm: new file.
* lib/srfi/srfi-11.scm: new file.
* lib/srfi/srfi-8.scm: moved from src/scm/srfi/.
* lib/srfi/srfi-19.scm: moved from src/scm/srfi.
* lib/srfi/README: moved from src/scm/srfi/.
* lib/srfi/srfi-1.scm: moved from src/scm/srfi/.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@4200 57a11ea4-9604-0410-9ed3-97b8803252fd
* src/scm/commodity-utilities.scm, report/portfolio.scm: major
code cleanup. (gnc:pricealist-lookup-nearest-in-time) code moved
from report/portfolio.scm to commodity-utilities.scm.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@4197 57a11ea4-9604-0410-9ed3-97b8803252fd
* src/scm/report/register.scm: reverse balance where appropriate.
put total in proper column.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@4191 57a11ea4-9604-0410-9ed3-97b8803252fd
* src/scm/report/price-scatter.scm: use a commodity option
so stocks/mutuals can be selected.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@4190 57a11ea4-9604-0410-9ed3-97b8803252fd
* src/gnome/window-register.c: flag summarybar as NEVER_VERTICAL
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@4188 57a11ea4-9604-0410-9ed3-97b8803252fd
* src/SplitLedger.c, src/engine/Account.c, src/engine/Account.h:
moved function gnc_find_trans_in_account_by_desc from SR to become
new functions xaccAccountFindTransByDesc and
xaccAccountFindSplitByDesc so they could be used outside of the
register code.
* src/gnome/dialog-transfer.c: Added quickfill/autocomplete
functionality to the transfer dialog, based on the Description.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@4177 57a11ea4-9604-0410-9ed3-97b8803252fd
* src/gnome/window-main.c: write commodities with accounts
* src/engine/io-gncxml-v2.c (write_commodities): make public
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@4176 57a11ea4-9604-0410-9ed3-97b8803252fd
* src/gnome/new-user.glade: tweak gui
* src/gnome/window-main.c: the "destroy" handler does not
return a result. add menu item & functionality for account
hierarchy export.
* src/scm/report/welcome-to-gnucash.scm: take out the ugly :)
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@4175 57a11ea4-9604-0410-9ed3-97b8803252fd
* src/scm/report/category-barchart.scm, net-barchart.scm,
average-balance.scm: Added price-source option. Uses new function
gnc:make-exchange-nearest-function to offer time-varying exchange
rates.
* src/scm/report-utilities.scm
(gnc:acccounts-get-all-subaccounts): added.
* src/scm/commodity-utilities.scm
(gnc:make-exchange-nearest-function): Added this and many more
functions to enable time-variant currency exchange.
* src/scm/report/price-scatter.scm: Add warnings if data is empty.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@4174 57a11ea4-9604-0410-9ed3-97b8803252fd
* src/gnome/window-report.c: add options dialog to edited list
even if opened by a URL click.
* src/gnome/window-main.c: handle close of last window safely.
Still don't save MDI info correctly with WM close, though
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@4173 57a11ea4-9604-0410-9ed3-97b8803252fd
* src/FileDialog.c (gncFileSaveAs): don't use a default filename
* src/scm/report/hello-world.scm: put under utility menu
* src/scm/report/welcome-to-gnucash.scm: don't show in menu
* src/scm/report/iframe-url.scm: put under utility menu
* src/scm/report.scm: add 'utility reports' menu
* src/gnome/new-user-funs.c: add support for opening balances
* src/gnome/gnc-amount-edit.c (gnc_amount_edit_evaluate): allow
empty string as zero
* src/gnome/new-user-callbacks.c: add support for opening balances
* src/gnome/dialog-account.c (gnc_account_list_fill): fix warning
(gnc_account_window_destroy_cb): destroy callback has no return
(gnc_ui_to_account): reverse opening balance appropriately
* src/engine/Account.c: change return type to const
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@4172 57a11ea4-9604-0410-9ed3-97b8803252fd
* src/scm/report/pnl.scm, account-piecharts.scm,
account-summary.scm: Added price-source option. Use new function
gnc:case-exchange-fn.
* src/scm/date-utilities.scm (gnc:get-end-cur-fin-year): added
function.
* src/scm/options-utilities.scm (gnc:options-add-date-interval!):
changed the order of relative dates - which order is best?
* src/scm/report/balance-sheet.scm: use new function
gnc:case-exchange-fn.
* src/scm/commodity-utilities.scm (gnc:case-exchange-fn): add
function.
* src/scm/report/price-scatter.scm: adapted helper function name
to other reports.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@4171 57a11ea4-9604-0410-9ed3-97b8803252fd
* src/scm/report/price-scatter.scm: Extended option to use the
pricedb as a price source.
* src/scm/commodity-utilities.scm: Added functions for getting
sorted commodity splits, for total-average-prices of a
commodity-list, for instantaneous prices, for instantaneous prices
of a commodity-list, and for cooking your morning coffee :)
* src/scm/report-utilites.scm, html-utilities.scm: create new
function (gnc:accounts-get-commodities), use it in
html-utilities.scm.
* src/scm/html-scatter.scm: add workaround for rgba color.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@4170 57a11ea4-9604-0410-9ed3-97b8803252fd
* src/engine/Account.c (xaccCloneAccountSimple): use
xaccAccountSetCurrency -- it does more than just set the pointer!
* src/gnome/new-user-funs.c (clone_account): don't use engine
private functions.
* src/engine/io-example-account.c (add_account_local): fix up
currency & security for new example accounts
* src/engine/io-utils.c: add emacs mode comment to cancel
XML comment
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@4167 57a11ea4-9604-0410-9ed3-97b8803252fd
* src/engine/sql/Makefile.am: add files for make dist
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@4165 57a11ea4-9604-0410-9ed3-97b8803252fd
* src/scm/main-window.scm: force-output when saving param files.
otherwise they don't get written until program exit, which can
cause problems. Add newlines to acct tree output.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@4164 57a11ea4-9604-0410-9ed3-97b8803252fd
* src/scm/main-window.scm ((gnc:main-window-book-open-handler
book-url)): restore the main window even if we can't get a
conf-file-name.
* src/scm/main.scm (gnc:load-account-file): if we have a file to
open, only run book-opened-hook if file open returns false.
* src/FileDialog.c (gncPostFileOpen): once book-closed-hook has
been run, run book-opened-hook if opening the file fails for some
reason.
* src/guile/gnc.gwp: update ui-open-file api.
* src/gnome/top-level.c (gnucash_ui_open_file): return TRUE/FALSE
for success/failure. use gboolean instead of int for boolean
returns.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@4161 57a11ea4-9604-0410-9ed3-97b8803252fd
* src/gnome/dialog-column-view.c: change handling of component
reports. now we explicitly handle the case of the column view,
which is the only report that needs to save/restore its children.
* src/gnome/gnc-html-guppi.c: add printing support for graphs.
Doesn't really work on my system ATM. I'll follow up on it.
* src/gnome/window-main.c: move save/restore forms out of gnome
MDI config string. rename some functions.
* src/gnome/window-report.c: save the initial report in a window
for special treatment. It's the one that gets saved and restored,
and whose title appears in the tab.
* src/scm/*: remove instances of report-add-child and friends.
The concept is unnecessary.
* src/scm/main-window.scm: save report and account data to a new
file named after the book in the directory ~/.gnucash/books.
* src/scm/options.scm: run option-changed callbacks in the order
they were added. Add gnc:options-touch to dirty the options
without changing anything.
* src/scm/report.scm: add new optional fields for the
define-report form: 'options-cleanup-cb and 'options-changed-cb.
'options-cleanup-cb is called before book save to allow you to
clean up any mess that you don't want saved. 'options-changed-cb
is called after any report option is changed. Both are optional.
Also get rid of the concept of 'display-lists' for reports and
let the displays update themselves with callbacks. Get rid of
parents and children for the reports.
* src/scm/report/view-column.scm: revamp to handle options
processing, saving, and rendering better.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@4160 57a11ea4-9604-0410-9ed3-97b8803252fd
with new user startup (moved to end of new user stuff).
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@4157 57a11ea4-9604-0410-9ed3-97b8803252fd
xaccGroupForEachAccountDeeply and add argument on whether it
should do things deeply.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@4152 57a11ea4-9604-0410-9ed3-97b8803252fd
(xaccAccountEnumAsString): change arg to GNCAccountType.
* src/engine/Account.c (xaccAccountGetChildren): Add children
group if ->children == NULL.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@4151 57a11ea4-9604-0410-9ed3-97b8803252fd