175 lines
10 KiB
Diff
175 lines
10 KiB
Diff
|
From de390aed4652a0e9ff0bffcade33827a6283aaa1 Mon Sep 17 00:00:00 2001
|
||
|
From: Albert Astals Cid <aacid@kde.org>
|
||
|
Date: Thu, 8 Apr 2021 22:57:29 +0200
|
||
|
Subject: [PATCH] Fix crash with newer Qt versions
|
||
|
|
||
|
Newer Qt versions call filterAcceptsRow from QSortFilterProxyModel::setSourceModel so we need to call AccountsProxyModel::setSourceColumns before setSourceModel
|
||
|
---
|
||
|
kmymoney/converter/mymoneystatementreader.cpp | 2 +-
|
||
|
kmymoney/dialogs/kaccountselectdlg.cpp | 2 +-
|
||
|
kmymoney/dialogs/knewaccountdlg.cpp | 2 +-
|
||
|
kmymoney/views/kgloballedgerview_p.h | 2 +-
|
||
|
kmymoney/views/kinvestmentview_p.h | 2 +-
|
||
|
kmymoney/views/kpayeesview_p.h | 2 +-
|
||
|
kmymoney/views/newspliteditor.cpp | 2 +-
|
||
|
kmymoney/views/newtransactioneditor.cpp | 2 +-
|
||
|
kmymoney/views/simpleledgerview.cpp | 2 +-
|
||
|
kmymoney/widgets/kmymoneyaccounttreeview.cpp | 2 +-
|
||
|
kmymoney/wizards/newaccountwizard/khierarchypage.cpp | 2 +-
|
||
|
11 files changed, 11 insertions(+), 11 deletions(-)
|
||
|
|
||
|
diff --git a/kmymoney/converter/mymoneystatementreader.cpp b/kmymoney/converter/mymoneystatementreader.cpp
|
||
|
index af9a6a345..2158f5ba7 100644
|
||
|
--- a/kmymoney/converter/mymoneystatementreader.cpp
|
||
|
+++ b/kmymoney/converter/mymoneystatementreader.cpp
|
||
|
@@ -1043,8 +1043,8 @@ void MyMoneyStatementReader::processTransactionEntry(const MyMoneyStatement::Tra
|
||
|
filterProxyModel->addAccountGroup(QVector<Account::Type> {Account::Type::Asset, Account::Type::Liability, Account::Type::Equity, Account::Type::Income, Account::Type::Expense});
|
||
|
|
||
|
auto const model = Models::instance()->accountsModel();
|
||
|
- filterProxyModel->setSourceModel(model);
|
||
|
filterProxyModel->setSourceColumns(model->getColumns());
|
||
|
+ filterProxyModel->setSourceModel(model);
|
||
|
filterProxyModel->sort((int)eAccountsModel::Column::Account);
|
||
|
|
||
|
QPointer<KMyMoneyAccountCombo> accountCombo = new KMyMoneyAccountCombo(filterProxyModel);
|
||
|
diff --git a/kmymoney/dialogs/kaccountselectdlg.cpp b/kmymoney/dialogs/kaccountselectdlg.cpp
|
||
|
index 8495ab8c1..21b939873 100644
|
||
|
--- a/kmymoney/dialogs/kaccountselectdlg.cpp
|
||
|
+++ b/kmymoney/dialogs/kaccountselectdlg.cpp
|
||
|
@@ -123,8 +123,8 @@ KAccountSelectDlg::KAccountSelectDlg(const eDialogs::Category accountType, const
|
||
|
filterProxyModel->addAccountGroup(accountTypes);
|
||
|
|
||
|
auto model = Models::instance()->accountsModel();
|
||
|
- filterProxyModel->setSourceModel(model);
|
||
|
filterProxyModel->setSourceColumns(model->getColumns());
|
||
|
+ filterProxyModel->setSourceModel(model);
|
||
|
filterProxyModel->sort((int)eAccountsModel::Column::Account);
|
||
|
|
||
|
d->ui->m_accountSelector->setModel(filterProxyModel);
|
||
|
diff --git a/kmymoney/dialogs/knewaccountdlg.cpp b/kmymoney/dialogs/knewaccountdlg.cpp
|
||
|
index c8b37b41e..d6c8b8bf4 100644
|
||
|
--- a/kmymoney/dialogs/knewaccountdlg.cpp
|
||
|
+++ b/kmymoney/dialogs/knewaccountdlg.cpp
|
||
|
@@ -124,8 +124,8 @@ class KNewAccountDlgPrivate
|
||
|
m_filterProxyModel->addAccountGroup(filterAccountGroup);
|
||
|
m_filterProxyModel->setCurrentAccountId(m_account.id());
|
||
|
auto const model = Models::instance()->accountsModel();
|
||
|
- m_filterProxyModel->setSourceModel(model);
|
||
|
m_filterProxyModel->setSourceColumns(model->getColumns());
|
||
|
+ m_filterProxyModel->setSourceModel(model);
|
||
|
m_filterProxyModel->setDynamicSortFilter(true);
|
||
|
|
||
|
ui->m_parentAccounts->setModel(m_filterProxyModel);
|
||
|
diff --git a/kmymoney/views/kgloballedgerview_p.h b/kmymoney/views/kgloballedgerview_p.h
|
||
|
index 69ee133b9..50862ccdb 100644
|
||
|
--- a/kmymoney/views/kgloballedgerview_p.h
|
||
|
+++ b/kmymoney/views/kgloballedgerview_p.h
|
||
|
@@ -271,8 +271,8 @@ class KGlobalLedgerViewPrivate : public KMyMoneyViewBasePrivate
|
||
|
m_filterProxyModel = new AccountNamesFilterProxyModel(q);
|
||
|
m_filterProxyModel->addAccountGroup(QVector<eMyMoney::Account::Type> {eMyMoney::Account::Type::Asset, eMyMoney::Account::Type::Liability, eMyMoney::Account::Type::Equity});
|
||
|
auto const model = Models::instance()->accountsModel();
|
||
|
- m_filterProxyModel->setSourceModel(model);
|
||
|
m_filterProxyModel->setSourceColumns(model->getColumns());
|
||
|
+ m_filterProxyModel->setSourceModel(model);
|
||
|
m_filterProxyModel->sort((int)eAccountsModel::Column::Account);
|
||
|
|
||
|
// create the toolbar frame at the top of the view
|
||
|
diff --git a/kmymoney/views/kinvestmentview_p.h b/kmymoney/views/kinvestmentview_p.h
|
||
|
index 34db5d117..66bb87483 100644
|
||
|
--- a/kmymoney/views/kinvestmentview_p.h
|
||
|
+++ b/kmymoney/views/kinvestmentview_p.h
|
||
|
@@ -104,8 +104,8 @@ class KInvestmentViewPrivate : public KMyMoneyViewBasePrivate
|
||
|
m_accountsProxyModel->addAccountType(eMyMoney::Account::Type::Investment);
|
||
|
m_accountsProxyModel->setHideEquityAccounts(false);
|
||
|
auto const model = Models::instance()->accountsModel();
|
||
|
- m_accountsProxyModel->setSourceModel(model);
|
||
|
m_accountsProxyModel->setSourceColumns(model->getColumns());
|
||
|
+ m_accountsProxyModel->setSourceModel(model);
|
||
|
m_accountsProxyModel->sort((int)eAccountsModel::Column::Account);
|
||
|
ui->m_accountComboBox->setModel(m_accountsProxyModel);
|
||
|
ui->m_accountComboBox->expandAll();
|
||
|
diff --git a/kmymoney/views/kpayeesview_p.h b/kmymoney/views/kpayeesview_p.h
|
||
|
index fd9d6b706..771a1e060 100644
|
||
|
--- a/kmymoney/views/kpayeesview_p.h
|
||
|
+++ b/kmymoney/views/kpayeesview_p.h
|
||
|
@@ -146,8 +146,8 @@ class KPayeesViewPrivate : public KMyMoneyViewBasePrivate
|
||
|
m_filterProxyModel->addAccountGroup(QVector<eMyMoney::Account::Type> {eMyMoney::Account::Type::Asset, eMyMoney::Account::Type::Liability, eMyMoney::Account::Type::Income, eMyMoney::Account::Type::Expense, eMyMoney::Account::Type::Equity});
|
||
|
|
||
|
auto const model = Models::instance()->accountsModel();
|
||
|
- m_filterProxyModel->setSourceModel(model);
|
||
|
m_filterProxyModel->setSourceColumns(model->getColumns());
|
||
|
+ m_filterProxyModel->setSourceModel(model);
|
||
|
m_filterProxyModel->sort((int)eAccountsModel::Column::Account);
|
||
|
ui->comboDefaultCategory->setModel(m_filterProxyModel);
|
||
|
|
||
|
diff --git a/kmymoney/views/newspliteditor.cpp b/kmymoney/views/newspliteditor.cpp
|
||
|
index 0272507de..c71f7f784 100644
|
||
|
--- a/kmymoney/views/newspliteditor.cpp
|
||
|
+++ b/kmymoney/views/newspliteditor.cpp
|
||
|
@@ -200,8 +200,8 @@ NewSplitEditor::NewSplitEditor(QWidget* parent, const QString& counterAccountId)
|
||
|
d->accountsModel->addAccountGroup(QVector<eMyMoney::Account::Type> {eMyMoney::Account::Type::Asset, eMyMoney::Account::Type::Liability, eMyMoney::Account::Type::Income, eMyMoney::Account::Type::Expense, eMyMoney::Account::Type::Equity,});
|
||
|
d->accountsModel->setHideEquityAccounts(false);
|
||
|
auto const model = Models::instance()->accountsModel();
|
||
|
- d->accountsModel->setSourceModel(model);
|
||
|
d->accountsModel->setSourceColumns(model->getColumns());
|
||
|
+ d->accountsModel->setSourceModel(model);
|
||
|
d->accountsModel->sort((int)eAccountsModel::Column::Account);
|
||
|
d->ui->accountCombo->setModel(d->accountsModel);
|
||
|
|
||
|
diff --git a/kmymoney/views/newtransactioneditor.cpp b/kmymoney/views/newtransactioneditor.cpp
|
||
|
index 0163d233e..5fc5cf6e0 100644
|
||
|
--- a/kmymoney/views/newtransactioneditor.cpp
|
||
|
+++ b/kmymoney/views/newtransactioneditor.cpp
|
||
|
@@ -356,8 +356,8 @@ NewTransactionEditor::NewTransactionEditor(QWidget* parent, const QString& accou
|
||
|
|
||
|
d->accountsModel->addAccountGroup(QVector<eMyMoney::Account::Type> {eMyMoney::Account::Type::Asset, eMyMoney::Account::Type::Liability, eMyMoney::Account::Type::Income, eMyMoney::Account::Type::Expense, eMyMoney::Account::Type::Equity});
|
||
|
d->accountsModel->setHideEquityAccounts(false);
|
||
|
- d->accountsModel->setSourceModel(model);
|
||
|
d->accountsModel->setSourceColumns(model->getColumns());
|
||
|
+ d->accountsModel->setSourceModel(model);
|
||
|
d->accountsModel->sort((int)eAccountsModel::Column::Account);
|
||
|
d->ui->accountCombo->setModel(d->accountsModel);
|
||
|
|
||
|
diff --git a/kmymoney/views/simpleledgerview.cpp b/kmymoney/views/simpleledgerview.cpp
|
||
|
index 99a6d790c..64dc303bc 100644
|
||
|
--- a/kmymoney/views/simpleledgerview.cpp
|
||
|
+++ b/kmymoney/views/simpleledgerview.cpp
|
||
|
@@ -95,8 +95,8 @@ class SimpleLedgerViewPrivate : public KMyMoneyViewBasePrivate
|
||
|
|
||
|
accountsModel->setHideEquityAccounts(false);
|
||
|
auto const model = Models::instance()->accountsModel();
|
||
|
- accountsModel->setSourceModel(model);
|
||
|
accountsModel->setSourceColumns(model->getColumns());
|
||
|
+ accountsModel->setSourceModel(model);
|
||
|
accountsModel->sort((int)eAccountsModel::Column::Account);
|
||
|
ui->accountCombo->setModel(accountsModel);
|
||
|
|
||
|
diff --git a/kmymoney/widgets/kmymoneyaccounttreeview.cpp b/kmymoney/widgets/kmymoneyaccounttreeview.cpp
|
||
|
index 61271106d..1d0ee59ca 100644
|
||
|
--- a/kmymoney/widgets/kmymoneyaccounttreeview.cpp
|
||
|
+++ b/kmymoney/widgets/kmymoneyaccounttreeview.cpp
|
||
|
@@ -167,8 +167,8 @@ AccountsViewProxyModel *KMyMoneyAccountTreeView::init(View view)
|
||
|
institutionsModel->setColumnVisibility(column, true);
|
||
|
}
|
||
|
|
||
|
- d->m_model->setSourceModel(sourceModel);
|
||
|
d->m_model->setSourceColumns(sourceModel->getColumns());
|
||
|
+ d->m_model->setSourceModel(sourceModel);
|
||
|
d->m_model->setFilterCaseSensitivity(Qt::CaseInsensitive);
|
||
|
d->m_model->setSortLocaleAware(true);
|
||
|
setModel(d->m_model);
|
||
|
diff --git a/kmymoney/wizards/newaccountwizard/khierarchypage.cpp b/kmymoney/wizards/newaccountwizard/khierarchypage.cpp
|
||
|
index efd117205..456e781ce 100644
|
||
|
--- a/kmymoney/wizards/newaccountwizard/khierarchypage.cpp
|
||
|
+++ b/kmymoney/wizards/newaccountwizard/khierarchypage.cpp
|
||
|
@@ -53,8 +53,8 @@ HierarchyPage::HierarchyPage(Wizard* wizard) :
|
||
|
d->m_filterProxyModel->setHideEquityAccounts(!KMyMoneySettings::expertMode());
|
||
|
d->m_filterProxyModel->addAccountGroup(QVector<Account::Type> {Account::Type::Asset, Account::Type::Liability});
|
||
|
auto const model = Models::instance()->accountsModel();
|
||
|
- d->m_filterProxyModel->setSourceModel(model);
|
||
|
d->m_filterProxyModel->setSourceColumns(model->getColumns());
|
||
|
+ d->m_filterProxyModel->setSourceModel(model);
|
||
|
d->m_filterProxyModel->setDynamicSortFilter(true);
|
||
|
|
||
|
d->ui->m_parentAccounts->setModel(d->m_filterProxyModel);
|