[Kmymoney-devel] Adding a new MyMoneyObject / pointers and MyMoneyMap
Christian Dávid
christian-david at web.de
Thu Nov 7 17:40:19 UTC 2013
Hello,
as mentioned before I am trying to enable KMyMoney to use AQBankings
possibilities to send transfers (actually I am quite far, and I used it for
real world transfers already). Btw it is wish-list 238105 [1].
As discussed with Thomas I use an abstract class onlineJob derived from
MyMoneyObject. By sub-classing onlineJob you can add national transfers,
international transfers, password change, etc. The status of a job is stored in
onlineJob. onlineJob has a virtual onlineJob* clone() method to create a copy.
My implementation uses pointers to allow casts. But the KMyMoney transaction
system is not prepared for this. I have two proposals to solve that problem
and wanted to ask you which one you like.
A) Within MyMoneySeqAccessMgr (and the db equivalent) the pointer is put in a
QSharedPointer<onlineJob>, then no changes to MyMoneyMap or the transaction
system needs to be done.
B) Change MyMoneyMap (and I guess more) to enable it to delete unneeded
object when a transaction is finished.
Or more general, do you want to use pointers within KMyMoney or avoid them if
possible? E.g. what should the return type of MyMoneyFile::getOnlineJob(
QString id ) be? onlineJob*, onlineJob& or QSharedPointer<>? I started using
pointers, do you like that idea?
Thank you very much!
Greetings
Christian
[1] https://bugs.kde.org/show_bug.cgi?id=238105
More information about the KMyMoney-devel
mailing list