KMyMoney/PlayingWithAlkValue: Difference between revisions

From KDE Community Wiki
No edit summary
No edit summary
Line 18: Line 18:
It seems that the problem is caused by the "," in the converted string, which is not supported by the GMP mpq_class class.
It seems that the problem is caused by the "," in the converted string, which is not supported by the GMP mpq_class class.


Todo: Check the string based constructor of mpq_class class.
Todo: Check the string based constructor of mpq_class class to confirm the problem.


'''Classes that include the mymoneymoney.h file'''
'''Classes that include the mymoneymoney.h file'''

Revision as of 12:03, 30 July 2010

This page contains some notes about the port of the mymoneymoney class to AlkValue (from alkimia).

Based on the forum, the general strategy is to derive MyMoneyMoney from AlkValue, such that

class MyMoneyMoney : public AlkValue {...};

In this way, most of the methods should be directly available, and others can be provided by MyMoneyMoney (such as the toDouble() method that is used by several classes).

This needs to be checked in order to avoid possible overflows.

Current status

  • Removal of m_num and m_denom from MyMoneyMoney class. Using inheritance from AlkValue. Class compiling ok. Starting unit testing the new class.
  • Dealing with String based constructor and its respective test.

Apparently, AlkValue String constructor can not deal with "1,123.". It seems that the problem is caused by the "," in the converted string, which is not supported by the GMP mpq_class class.

Todo: Check the string based constructor of mpq_class class to confirm the problem.

Classes that include the mymoneymoney.h file

These classes may be directed affected by the changes.

  • converter/webpricequote.h
  • converter/mymoneyqifprofile.cpp
  • converter/mymoneygncreader.cpp
  • dialogs/knewequityentrydlg.cpp
  • dialogs/knewaccountdlg.h
  • dialogs/ksplittransactiondlg.h
  • mymoney/mymoneybudget.h
  • mymoney/mymoneyforecast.h
  • mymoney/mymoneymoney.cpp
  • mymoney/mymoneysecurity.h
  • mymoney/mymoneyscheduletest.cpp
  • mymoney/mymoneysplit.h
  • mymoney/mymoneytransaction.h
  • mymoney/mymoneystatement.h
  • mymoney/mymoneymoneytest.cpp
  • mymoney/storage/mymoneystoragesql.h
  • mymoney/mymoneyfinancialcalculatortest.cpp
  • mymoney/mymoneyaccount.h
  • mymoney/mymoneyprice.h
  • plugins/printcheck/numbertowords.h
  • reports/reportstestcommon.h
  • views/kscheduletreeitem.cpp
  • widgets/kpricetreeitem.cpp
  • widgets/kmymoneyedit.cpp
  • widgets/registeritem.h
  • wizards/newinvestmentwizard/konlineupdatewizardpage.cpp
  • wizards/newinvestmentwizard/kinvestmentdetailswizardpage.cpp
  • wizards/newuserwizard/knewuserwizard.cpp
  • wizards/newloanwizard/additionalfeeswizardpage.cpp