00001 #ifndef BUDGET_H
00002 #define BUDGET_H
00003
00004 #include <qstring.h>
00005 #include <qstringlist.h>
00006 #include <qlistview.h>
00007 #include <sqlite3.h>
00008
00009 class Budget
00010 {
00011 public:
00012
00013 Budget ();
00014 ~Budget ();
00015
00016 int addBudget ( QString name, int type, QString description, QString currency, int startday, int startmonth, int startyear, int endday, int endmonth, int endyear, int defaultview );
00017 void updateBudget ( QString name, QString description, QString currency, int budgetid );
00018 void deleteBudget ( int budgetid );
00019 int getNumberOfBudgets ();
00020 int getNumberOfLineItems ( int budgetid );
00021
00022 QStringList* getBudgetNames ();
00023 QStringList* getBudgetIDs ();
00024 QStringList getLineItems ( int budgetid );
00025 QStringList getLineItemIDs ( int budgetid );
00026 QString getBudgetName ( int budgetid );
00027 QString getBudgetDescription ( int budgetid );
00028 QString getCurrency ( int budgetid );
00029 QString getBudgetTotal ( int budgetid, int viewtype );
00030
00031 int getLastAdded ();
00032
00033 int addLineItem ( int budgetid, QString lineitemname, float lineitemamount, int lineitemtype );
00034 void updateLineItem ( QString lineitemname, float lineitemamount, int lineitemtype, int budgetid, int lineitemid );
00035 void displayLineItems ( int budgetid, QListView *listview, int month, int year, int viewtype );
00036 void deleteLineItem ( int budgetid, int lineitemid );
00037 int getLineItemTime ( int budgetid, int lineitemid );
00038 float getLineItemAmount ( int budgetid, int lineitemid );
00039
00040 private:
00041 sqlite3 *bdb;
00042 };
00043
00044 #endif
00045