summaryrefslogtreecommitdiff
path: root/noncore/apps/checkbook/cbinfo.h
authordrw <drw>2002-12-04 02:12:25 (UTC)
committer drw <drw>2002-12-04 02:12:25 (UTC)
commitd000538b68b3411a409e829c4e68f42f9646b940 (patch) (side-by-side diff)
tree72abee0785a595ef9d5edf9ecd20743a9ff16559 /noncore/apps/checkbook/cbinfo.h
parent9b23bf789c15bcc84dabc400f16fa38ff3a34ebd (diff)
downloadopie-d000538b68b3411a409e829c4e68f42f9646b940.zip
opie-d000538b68b3411a409e829c4e68f42f9646b940.tar.gz
opie-d000538b68b3411a409e829c4e68f42f9646b940.tar.bz2
Abstracted checkbook storage, added new main window display/configuration options.
Diffstat (limited to 'noncore/apps/checkbook/cbinfo.h') (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/apps/checkbook/cbinfo.h97
1 files changed, 97 insertions, 0 deletions
diff --git a/noncore/apps/checkbook/cbinfo.h b/noncore/apps/checkbook/cbinfo.h
new file mode 100644
index 0000000..5e65db2
--- a/dev/null
+++ b/noncore/apps/checkbook/cbinfo.h
@@ -0,0 +1,97 @@
+/*
+                This file is part of the OPIE Project
+ =.
+             .=l. Copyright (c) 2002 Dan Williams <drw@handhelds.org>
+           .>+-=
+ _;:,     .>    :=|. This file is free software; you can
+.> <`_,   >  .   <= redistribute it and/or modify it under
+:`=1 )Y*s>-.--   : the terms of the GNU General Public
+.="- .-=="i,     .._ License as published by the Free Software
+ - .   .-<_>     .<> Foundation; either version 2 of the License,
+     ._= =}       : or (at your option) any later version.
+    .%`+i>       _;_.
+    .i_,=:_.      -<s. This file is distributed in the hope that
+     +  .  -:.       = it will be useful, but WITHOUT ANY WARRANTY;
+    : ..    .:,     . . . without even the implied warranty of
+    =_        +     =;=|` MERCHANTABILITY or FITNESS FOR A
+  _.=:.       :    :=>`: PARTICULAR PURPOSE. See the GNU General
+..}^=.=       =       ; Public License for more details.
+++=   -.     .`     .:
+ :     =  ...= . :.=- You should have received a copy of the GNU
+ -.   .:....=;==+<; General Public License along with this file;
+  -_. . .   )=.  = see the file COPYING. If not, write to the
+    --        :-=` Free Software Foundation, Inc.,
+ 59 Temple Place - Suite 330,
+ Boston, MA 02111-1307, USA.
+
+*/
+
+#ifndef CBINFO_H
+#define CBINFO_H
+
+#include <qlist.h>
+#include <qstring.h>
+
+class Config;
+class TranInfo;
+class TranInfoList;
+
+class CBInfo
+{
+ public:
+ CBInfo();
+ CBInfo( const QString &, const QString & );
+
+ const QString &name() const { return n; }
+ const QString &filename() const { return fn; }
+ const QString &password() const { return pw; }
+ const QString &type() const { return t; }
+ const QString &bank() const { return bn; }
+ const QString &account() const { return a; }
+ const QString &pin() const { return p; }
+ const QString &notes() const { return nt; }
+ float startingBalance() const { return sb; }
+ float balance();
+
+ void setName( const QString &name ) { n = name; }
+ void setFilename( const QString &filename ) { fn = filename; }
+ void setPassword( const QString &password ) { pw = password; }
+ void setType( const QString &type ) { t = type; }
+ void setBank( const QString &bank ) { bn = bank; }
+ void setAccount( const QString &account ) { a = account; }
+ void setPin( const QString &pin ) { p = pin; }
+ void setNotes( const QString &notes ) { nt = notes; }
+ void setStartingBalance( float startbal ) { sb = startbal; }
+
+ void write();
+
+ TranInfoList *transactions() const { return tl; }
+ TranInfo *findTransaction( const QString &, const QString &, const QString & );
+ void addTransaction( TranInfo * );
+ void removeTransaction( TranInfo * );
+
+ private:
+ QString n;
+ QString fn;
+ QString pw;
+ QString t;
+ QString bn;
+ QString a;
+ QString p;
+ QString nt;
+ float sb;
+ float b;
+
+ TranInfoList *tl;
+
+ void loadTransactions();
+ void calcBalance();
+};
+
+class CBInfoList : public QList<CBInfo>
+{
+ protected:
+ int compareItems( QCollection::Item, QCollection::Item );
+};
+
+#endif