author | drw <drw> | 2005-03-10 21:39:47 (UTC) |
---|---|---|
committer | drw <drw> | 2005-03-10 21:39:47 (UTC) |
commit | 5a276878608d30e2cdc2eb35ad7c45ed0c348f58 (patch) (side-by-side diff) | |
tree | 93ff7eac4949b70ae25f60f4586e7490425134db /noncore | |
parent | d798f87314392033ad1e18d01927c622aa4d9b02 (diff) | |
download | opie-5a276878608d30e2cdc2eb35ad7c45ed0c348f58.zip opie-5a276878608d30e2cdc2eb35ad7c45ed0c348f58.tar.gz opie-5a276878608d30e2cdc2eb35ad7c45ed0c348f58.tar.bz2 |
Fix for bug #1604 - Checkbook crashes on startup
-rw-r--r-- | noncore/apps/checkbook/cbinfo.cpp | 2 | ||||
-rw-r--r-- | noncore/apps/checkbook/traninfo.cpp | 24 | ||||
-rw-r--r-- | noncore/apps/checkbook/traninfo.h | 2 |
3 files changed, 14 insertions, 14 deletions
diff --git a/noncore/apps/checkbook/cbinfo.cpp b/noncore/apps/checkbook/cbinfo.cpp index 36dde04..6e3afa7 100644 --- a/noncore/apps/checkbook/cbinfo.cpp +++ b/noncore/apps/checkbook/cbinfo.cpp @@ -169,25 +169,25 @@ void CBInfo::loadTransactions() tl = new TranInfoList(); Config config( fn, Config::File ); int i=_first; bool bOld=false; if( i==-1 ) { i=1; bOld=true; } while( i>=0 ) { _last=i; - tran=new TranInfo(config, i); + tran=new TranInfo(&config, i); trandesc = tran->desc(); if( trandesc==QString::null ) { delete tran; break; } tl->append(tran); i= bOld ? i+1 : tran->getNext(); } calcBalance(); } diff --git a/noncore/apps/checkbook/traninfo.cpp b/noncore/apps/checkbook/traninfo.cpp index 4833af9..7bd2004 100644 --- a/noncore/apps/checkbook/traninfo.cpp +++ b/noncore/apps/checkbook/traninfo.cpp @@ -41,95 +41,95 @@ TranInfo::TranInfo( int id, const QString &desc, const QDate &date, bool withdra d = desc; td = date; w = withdrawal; t = type; c = category; a = amount; f = fee; cn = number; n = notes; _next=next; } -TranInfo::TranInfo( Config config, int entry ) +TranInfo::TranInfo( Config *config, int entry ) { - config.setGroup( QString::number( entry ) ); - QString desc = config.readEntry( "Description", "Not Found" ); + config->setGroup( QString::number( entry ) ); + QString desc = config->readEntry( "Description", "Not Found" ); if ( desc != "Not Found" ) { // ID i = entry; // Description d = desc; // Transaction date int yr, mn, dy; - QString datestr = config.readEntry( "Date", "" ); + QString datestr = config->readEntry( "Date", "" ); int begin, end; begin = datestr.find( '/' ); mn = datestr.left( begin ).toInt(); end = datestr.find( '/', ++begin ); dy = datestr.mid( begin, end - begin ).toInt(); yr = datestr.right( datestr.length() - end - 1).toInt(); td.setYMD( yr, mn, dy ); // Deposit/withdrawal indicator ( withdrawal == TRUE ) - w = ( config.readEntry( "Payment", "false" ) == "true" ); + w = ( config->readEntry( "Payment", "false" ) == "true" ); // Type - QString type = config.readEntry( "Type", "0" ); + QString type = config->readEntry( "Type", "0" ); if ( w ) { // Withdrawal types if( type == "0" ) t = "Debit Charge"; else if( type == "1" ) t = "Written Check"; else if( type == "2" ) t = "Transfer"; else if( type == "3" ) t = "Credit Card"; } else { if( type == "0" ) t = "Written Check"; else if( type == "1" ) t = "Automatic Payment"; else if( type == "2" ) t = "Transfer"; else if( type == "3" ) t = "Cash"; } // Category - c = config.readEntry( "Category", "" ); + c = config->readEntry( "Category", "" ); // Transaction amount - QString stramount = config.readEntry( "Amount", "0.00" ); + QString stramount = config->readEntry( "Amount", "0.00" ); bool ok; a = stramount.toFloat( &ok ); // Transaction fee - stramount = config.readEntry( "TransactionFee", "0.00" ); + stramount = config->readEntry( "TransactionFee", "0.00" ); f = stramount.toFloat( &ok ); // Transaction number - cn = config.readEntry( "CheckNumber", "" ); + cn = config->readEntry( "CheckNumber", "" ); // Notes - n = config.readEntry( "Comments", "" ); + n = config->readEntry( "Comments", "" ); // next - _next = config.readNumEntry("Next", -1); + _next = config->readNumEntry("Next", -1); } } // --- datestr ---------------------------------------------------------------- const QString &TranInfo::datestr(bool bDisplayDate) { if( bDisplayDate ) { tempstr=TimeString::numberDateString( td ); } else { tempstr.sprintf( "%04d-%02d-%02d", td.year() ,td.month(), td.day() ); } return(tempstr); diff --git a/noncore/apps/checkbook/traninfo.h b/noncore/apps/checkbook/traninfo.h index cbe0238..2ecb60d 100644 --- a/noncore/apps/checkbook/traninfo.h +++ b/noncore/apps/checkbook/traninfo.h @@ -32,25 +32,25 @@ #include <qdatetime.h> #include <qlist.h> class Config; class TranInfo { public: TranInfo( int = 0, const QString & = 0x0, const QDate & = QDate::currentDate(), bool = TRUE, const QString & = 0x0, const QString & = 0x0, float = 0.0, float = 0.0, const QString & = 0x0, const QString & = 0x0, int =-1 ); - TranInfo( Config, int ); + TranInfo( Config *, int ); // getters int id() const { return i; } const QString &getIdStr(); const QString &desc() const { return d; } const QDate &date() const { return td; } const QString &datestr(bool = false); bool withdrawal() const { return w; } const QString &type() const { return t; } const QString &category() const { return c; } float amount() const { return a; } |