summaryrefslogtreecommitdiff
Side-by-side diff
Diffstat (more/less context) (ignore 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
@@ -80,4 +80,16 @@ TransactionPreferences::TransactionPreferences ( QWidget* parent ) : QDialog ( p
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 );
@@ -96,9 +108,11 @@ TransactionPreferences::TransactionPreferences ( QWidget* parent ) : QDialog ( p
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 ) ) );
}
@@ -107,4 +121,9 @@ TransactionPreferences::~TransactionPreferences ()
}
+void TransactionPreferences::changeLimitTransactionsPreference ( int pref )
+ {
+ preferences->changePreference ( 7, pref );
+ }
+
void TransactionPreferences::changeShowClearedPreference ( bool state )
{
@@ -127,5 +146,7 @@ void TransactionPreferences::setDefaultTransactionPreferences ()
preferences->changePreference ( 3, 0 );
preferences->changePreference ( 6, 0 );
+ preferences->changePreference ( 7, 0 );
showclearedtransactions->setChecked ( FALSE );
+ limittransactions->setCurrentItem ( 0 );
}
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
@@ -7,4 +7,6 @@
#include <qcheckbox.h>
#include <qlayout.h>
+#include <qlabel.h>
+#include <qhbox.h>
#ifndef DATEPREFERENCES_H
@@ -45,5 +47,6 @@ class TransactionPreferences : public QDialog
QCheckBox *showclearedtransactions;
QCheckBox *excludetransfers;
- QString *limittransactionslabel;
+ QHBox *limittransactionsbox;
+ QLabel *limittransactionslabel;
QComboBox *limittransactions;
QPushButton *defaults;
@@ -54,4 +57,5 @@ class TransactionPreferences : public QDialog
void changeExcludeTranfersPreference ( bool );
void setDefaultTransactionPreferences ();
+ void changeLimitTransactionsPreference ( int );
};
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
@@ -23,5 +23,5 @@ void Preferences::addPreferences ()
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
@@ -60,4 +60,10 @@ void Preferences::addPreferences ()
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 );
}
}