Apply a re-work of Titi Ala'ilima's patch to apply payments
directly to invoices. This fixes bug #121420.
* src/business/business-core/gncInvoice.[ch]:
Add argument to the ProcessPayment API to allow the caller
to specify an invoice to post to first.
* src/business/business-gnome/business-gnome-utils.[ch]:
Create an invoice-select API that lets you select an invoice
based on an owner (or not). I.e., you can limit the invoice
search based on a selected owner. If you change the owner
it invalidates the invoice search.
* src/business/business-gnome/dialog-payment.[ch]:
Change the API from ..new_with_value() to ..new_with_invoice().
Pull the default amount from the invoice (if one exists).
Allow the user to select an invoice and apply payments there.
If the user changes the owner, invalidate the invoice.
* src/business/business-gnome/business-options-gnome.c:
use the new invoice-select API instead of calling general_search
API directly.
* src/business/business-gnome/dialog-invoice.c:
call the new dialog-payment API. No need to compute the initial
value here; the payment dialog will compute it from the invoice
(instead of computing it from the invoice here).
* src/business/business-gnome/glade/payment.glade:
Add invoice-selector label and box.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@13411 57a11ea4-9604-0410-9ed3-97b8803252fd
Any of the callbacks passed to this function may be NULL to decline the
use of that callback. Also, the three callbacks are now called in three
mutually exclusive cases, corresponding to:
1) a failed commit, ('on_error')
2) a successful commit where the object remains valid, ('on_done'), and
3) a successful commit where the object has been destroyed, ('on_free').
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@13390 57a11ea4-9604-0410-9ed3-97b8803252fd
closing a tab, switch to the tab that was previously in front, not the
first tab in the notebook.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@13385 57a11ea4-9604-0410-9ed3-97b8803252fd
are lost behind other windows. Adapt importer modules accordingly.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@13382 57a11ea4-9604-0410-9ed3-97b8803252fd
aqbanking-1.9.7). It is not yet tested with actual files. Bug#325170.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@13380 57a11ea4-9604-0410-9ed3-97b8803252fd
qof_session_destroy() no longer clears the current session when we destroy
it. Therefore, explicitly call gnc_clear_current_session() when we want
to destroy the current session.
Also, avoid accidentally creating a new book and session if there is no
open book/current session when we run the bill reminder.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@13378 57a11ea4-9604-0410-9ed3-97b8803252fd
just call xaccTransDestroy(), xaccTransCommitEdit(). No rollback needed.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@13369 57a11ea4-9604-0410-9ed3-97b8803252fd
Add const to Split where appropriate.
Fix GCache crash cause by using non-cached value in cached 'action' field
from the qsf-backend.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@13368 57a11ea4-9604-0410-9ed3-97b8803252fd
this might break the broken ebuild that forcibly removes the
.svn directories, but the ebuild is broken and shouldn't do that.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@13366 57a11ea4-9604-0410-9ed3-97b8803252fd
Introduce xaccSplitVoid() and xaccSplitUnvoid() to aid the separation.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@13363 57a11ea4-9604-0410-9ed3-97b8803252fd