diff options
| author | Calvin Morrison <calvin@pobox.com> | 2025-12-27 19:26:21 -0500 |
|---|---|---|
| committer | Calvin Morrison <calvin@pobox.com> | 2025-12-27 19:26:21 -0500 |
| commit | 5cf763ea3ba2a89acfa5f24422cc71e0ff7fb35b (patch) | |
| tree | ef3541cf3650eb14a46b2a54f1b63b1351c08082 /settingsdialog.cpp | |
| parent | 5e9b299dfe95a7f99f029802089c047a392eee3a (diff) | |
Add reconciliation system with checkpoints and adjustments
- Add Reconciliation transaction type that appears as visible rows
- Reconciliation checkpoints show expected vs calculated balance
- Red background if out of balance, green if balanced
- Description shows balance status (Balanced or Out of balance by .XX)
- Create Adjustment button appears when reconciliation is out of balance
- Adjustment transactions automatically created to match bank balance
- Reconciliations always sort last on their date
- Auto-recalculate all reconciliations when any transaction changes
- Persistent projection months setting (1-24 months, default 3)
- Persistent date range between sessions
- Fix projection regeneration to start from rule start date
- Fix duplicate projections when converting to actuals
- Grey out irrelevant fields when Reconciliation type selected
Diffstat (limited to 'settingsdialog.cpp')
| -rw-r--r-- | settingsdialog.cpp | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/settingsdialog.cpp b/settingsdialog.cpp index 644fa89..52cf791 100644 --- a/settingsdialog.cpp +++ b/settingsdialog.cpp @@ -31,6 +31,7 @@ void SettingsDialog::loadSettings() int defaultPeriod = database->getSetting("default_period", "2").toInt(); bool showAccountBalances = database->getSetting("show_account_balances", "0").toInt(); weekStartDay = database->getSetting("week_start_day", "1").toInt(); + int projectionMonths = database->getSetting("projection_months", "3").toInt(); // Set UI ui->currencyEdit->setText(currency); @@ -39,6 +40,7 @@ void SettingsDialog::loadSettings() ui->defaultPeriodCombo->setCurrentIndex(defaultPeriod); ui->defaultShowAccountBalancesCheck->setChecked(showAccountBalances); ui->weekStartDayCombo->setCurrentIndex(weekStartDay - 1); + ui->projectionMonthsSpin->setValue(projectionMonths); } void SettingsDialog::saveSettings() @@ -50,6 +52,7 @@ void SettingsDialog::saveSettings() database->setSetting("default_period", QString::number(ui->defaultPeriodCombo->currentIndex())); database->setSetting("show_account_balances", QString::number(ui->defaultShowAccountBalancesCheck->isChecked() ? 1 : 0)); database->setSetting("week_start_day", QString::number(ui->weekStartDayCombo->currentIndex() + 1)); + database->setSetting("projection_months", QString::number(ui->projectionMonthsSpin->value())); weekStartDay = ui->weekStartDayCombo->currentIndex() + 1; } |
