summaryrefslogtreecommitdiff
Side-by-side diff
Diffstat (more/less context) (show whitespace changes)
-rwxr-xr-xnoncore/apps/qashmoney/preferencedialogs.cpp23
-rwxr-xr-xnoncore/apps/qashmoney/preferencedialogs.h6
-rwxr-xr-xnoncore/apps/qashmoney/preferences.cpp8
3 files changed, 34 insertions, 3 deletions
diff --git a/noncore/apps/qashmoney/preferencedialogs.cpp b/noncore/apps/qashmoney/preferencedialogs.cpp
index 3c2fb97..00d52c6 100755
--- a/noncore/apps/qashmoney/preferencedialogs.cpp
+++ b/noncore/apps/qashmoney/preferencedialogs.cpp
@@ -70,72 +70,93 @@ void DatePreferences::setDefaultDatePreferences ()
// START TRANSACTION PREFERENCES
TransactionPreferences::TransactionPreferences ( QWidget* parent ) : QDialog ( parent, 0, TRUE )
{
setCaption( tr ( "Transaction" ) );
showclearedtransactions = new QCheckBox ( this );
showclearedtransactions->setText ( "Show Cleared Transactions" );
excludetransfers = new QCheckBox ( this );
excludetransfers->setText ( "Include Transfers In Limit View" );
+ limittransactionsbox = new QHBox ( this );
+ limittransactionsbox->setSpacing ( 2 );
+ limittransactionslabel = new QLabel ( "Limit All Transactions To", limittransactionsbox );
+ limittransactions = new QComboBox ( limittransactionsbox );
+ limittransactions->insertItem ( "14 days" );
+ limittransactions->insertItem ( "30 days" );
+ limittransactions->insertItem ( "60 days" );
+ limittransactions->insertItem ( "90 days" );
+ limittransactions->insertItem ( "180 days" );
+ limittransactions->insertItem ( "365 days" );
+ limittransactions->insertItem ( "All" );
+
if ( preferences->getPreference ( 3 ) == 1 )
showclearedtransactions->setChecked ( TRUE );
else
showclearedtransactions->setChecked ( FALSE );
if ( preferences->getPreference ( 6 ) == 1 )
excludetransfers->setChecked ( TRUE );
else
excludetransfers->setChecked ( FALSE );
defaults = new QPushButton ( QPixmap ( "/opt/QtPalmtop/pics/defaults.png" ), "Defaults", this );
connect ( defaults, SIGNAL ( released () ), this, SLOT ( setDefaultTransactionPreferences () ) );
layout = new QVBoxLayout ( this, 2, 2 );
layout->addWidget ( showclearedtransactions );
layout->addWidget ( excludetransfers );
- layout->insertSpacing ( 2, 5 );
+ layout->addWidget ( limittransactionsbox );
+ layout->insertSpacing ( 3, 5 );
layout->addWidget ( defaults );
connect ( showclearedtransactions, SIGNAL ( toggled ( bool ) ), this, SLOT ( changeShowClearedPreference ( bool ) ) );
connect ( excludetransfers, SIGNAL ( toggled ( bool ) ), this, SLOT ( changeExcludeTranfersPreference ( bool ) ) );
+ connect ( limittransactions, SIGNAL ( activated ( int ) ), this, SLOT ( changeLimitTransactionsPreference ( int ) ) );
}
TransactionPreferences::~TransactionPreferences ()
{
}
+void TransactionPreferences::changeLimitTransactionsPreference ( int pref )
+ {
+ preferences->changePreference ( 7, pref );
+ }
+
void TransactionPreferences::changeShowClearedPreference ( bool state )
{
if ( state == TRUE )
preferences->changePreference ( 3, 1 );
else
preferences->changePreference ( 3, 0 );
}
void TransactionPreferences::changeExcludeTranfersPreference ( bool state )
{
if ( state == TRUE )
preferences->changePreference ( 6, 1 );
else
preferences->changePreference ( 6, 0 );
}
void TransactionPreferences::setDefaultTransactionPreferences ()
{
preferences->changePreference ( 3, 0 );
preferences->changePreference ( 6, 0 );
+ preferences->changePreference ( 7, 0 );
showclearedtransactions->setChecked ( FALSE );
+ limittransactions->setCurrentItem ( 0 );
}
// START ACCOUNT PREFERNCES
AccountPreferences::AccountPreferences ( QWidget* parent ) : QDialog ( parent, 0, TRUE )
{
setCaption( tr ( "Account" ) );
currencysupport = new QCheckBox ( this );
currencysupport->setText ( "Enable Currency Support" );
diff --git a/noncore/apps/qashmoney/preferencedialogs.h b/noncore/apps/qashmoney/preferencedialogs.h
index 97b2dbb..88281b8 100755
--- a/noncore/apps/qashmoney/preferencedialogs.h
+++ b/noncore/apps/qashmoney/preferencedialogs.h
@@ -1,20 +1,22 @@
#include <qcombobox.h>
#include <qdialog.h>
#include <qpushbutton.h>
#include <qpixmap.h>
#include <qgroupbox.h>
#include <qhbuttongroup.h>
#include <qcheckbox.h>
#include <qlayout.h>
+#include <qlabel.h>
+#include <qhbox.h>
#ifndef DATEPREFERENCES_H
#define DATEPREFERENCES_H
class DatePreferences : public QDialog
{
Q_OBJECT
public:
DatePreferences ( QWidget * parent );
~DatePreferences();
@@ -35,33 +37,35 @@ class DatePreferences : public QDialog
#define TRANSACTIONPREFERENCES_H
class TransactionPreferences : public QDialog
{
Q_OBJECT
public:
TransactionPreferences ( QWidget * parent );
~TransactionPreferences();
QCheckBox *showclearedtransactions;
QCheckBox *excludetransfers;
- QString *limittransactionslabel;
+ QHBox *limittransactionsbox;
+ QLabel *limittransactionslabel;
QComboBox *limittransactions;
QPushButton *defaults;
QBoxLayout *layout;
public slots:
void changeShowClearedPreference ( bool );
void changeExcludeTranfersPreference ( bool );
void setDefaultTransactionPreferences ();
+ void changeLimitTransactionsPreference ( int );
};
#endif
#ifndef ACCOUNTPREFERENCES_H
#define ACCOUNTPREFERENCES_H
class AccountPreferences : public QDialog
{
Q_OBJECT
public:
diff --git a/noncore/apps/qashmoney/preferences.cpp b/noncore/apps/qashmoney/preferences.cpp
index 8783a47..819d5cf 100755
--- a/noncore/apps/qashmoney/preferences.cpp
+++ b/noncore/apps/qashmoney/preferences.cpp
@@ -13,25 +13,25 @@ Preferences::~Preferences ()
void Preferences::addPreferences ()
{
// This function checks the preferences database for existing preferences and adds
// them if they are not there. First we set up variables. Preferences are always set
// to non-zero numbers because when we check to see if a preference has been
// added to the database, the result is zero if it hasn't
int rows = 0;
int columns = 0;
char **results;
sqlite_get_table ( db, "select count() from preferences;", &results, 0, 0, 0 );
- if ( atoi ( results [ 1 ] ) != 6 )
+ if ( atoi ( results [ 1 ] ) != 7 )
{
// dateformat preference 1 = yyyymmdd 2 = yymmdd 3 = mmddyyyy 4 = mmddyy
// 5 = yyyyddmm 6 = yyddmm 7 = ddmmyyyy 8 = ddmmyy
sqlite_get_table ( db, "select preference from preferences where id = 1;", &results, &rows, &columns, 0 );
if ( rows == 0 )
sqlite_exec ( db, "insert into preferences values ( 4, 'dateformat', 0, 0, 0, NULL );", 0, 0, 0 );
// dateseparator preference 1 = / ( forward slash ) 2 = - ( dash ) 3 = . ( period )
rows = 0;
sqlite_get_table ( db, "select preference from preferences where id = 2;", &results, &rows, &columns, 0 );
if ( rows == 0 )
sqlite_exec ( db, "insert into preferences values ( 1, 'dateseparator', 0, 0, 0, NULL );", 0, 0, 0 );
@@ -50,24 +50,30 @@ void Preferences::addPreferences ()
// one touch account viewing preference 0 = no 1 = yes
rows = 0;
sqlite_get_table ( db, "select preference from preferences where id = 5;", &results, &rows, &columns, 0 );
if ( rows == 0 )
sqlite_exec ( db, "insert into preferences values ( 0, 'onetouchviewing', 0, 0, 0, NULL );", 0, 0, 0 );
// exclude transfers from limit view 0 = no 1 = yes
rows = 0;
sqlite_get_table ( db, "select preference from preferences where id = 6;", &results, &rows, &columns, 0 );
if ( rows == 0 )
sqlite_exec ( db, "insert into preferences values ( 0, 'excludetransfersfromlimit', 0, 0, 0, NULL );", 0, 0, 0 );
+
+ // limit number of transactions to 0 = 14 days 1 = 30 days, 2 = 60 days, 3 = 90 days, 4 = 180 days, 5 = 365 days, 6 = all
+ rows = 0;
+ sqlite_get_table ( db, "select preference from preferences where id = 7;", &results, &rows, &columns, 0 );
+ if ( rows == 0 )
+ sqlite_exec ( db, "insert into preferences values ( 0, 'limittransactions', 0, 0, 0, NULL );", 0, 0, 0 );
}
}
void Preferences::initializeColumnPreferences ()
{
int rows = 0;
int columns = 0;
char **results;
// initialize accountname column width
sqlite_get_table ( db, "select width from columns where id = 1;", &results, &rows, &columns, 0 );
if ( rows == 0 )