mirror of
https://github.com/subsurface/subsurface.git
synced 2025-02-19 22:16:15 +00:00
Cleanup: Remove MultiFilterSortModel::model
The source-model was cached in MultiFilterSortModel. For simplicity, remove that and simply access via DiveTripModel::instance(). There is only one instance where the cached model was used: when comparing items for sorting. Thus, in indirection is added in a "hot" path. Nevertheless, this will dwarf against the cost of string comparison. Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
This commit is contained in:
parent
4d06ddd723
commit
b5704ddb57
2 changed files with 3 additions and 5 deletions
|
@ -84,12 +84,11 @@ MultiFilterSortModel *MultiFilterSortModel::instance()
|
||||||
|
|
||||||
MultiFilterSortModel::MultiFilterSortModel(QObject *parent) : QSortFilterProxyModel(parent),
|
MultiFilterSortModel::MultiFilterSortModel(QObject *parent) : QSortFilterProxyModel(parent),
|
||||||
divesDisplayed(0),
|
divesDisplayed(0),
|
||||||
curr_dive_site(NULL),
|
curr_dive_site(NULL)
|
||||||
model(DiveTripModel::instance())
|
|
||||||
{
|
{
|
||||||
setFilterKeyColumn(-1); // filter all columns
|
setFilterKeyColumn(-1); // filter all columns
|
||||||
setFilterCaseSensitivity(Qt::CaseInsensitive);
|
setFilterCaseSensitivity(Qt::CaseInsensitive);
|
||||||
setSourceModel(model);
|
setSourceModel(DiveTripModel::instance());
|
||||||
}
|
}
|
||||||
|
|
||||||
void MultiFilterSortModel::setLayout(DiveTripModel::Layout layout)
|
void MultiFilterSortModel::setLayout(DiveTripModel::Layout layout)
|
||||||
|
@ -219,7 +218,7 @@ void MultiFilterSortModel::stopFilterDiveSite()
|
||||||
bool MultiFilterSortModel::lessThan(const QModelIndex &i1, const QModelIndex &i2) const
|
bool MultiFilterSortModel::lessThan(const QModelIndex &i1, const QModelIndex &i2) const
|
||||||
{
|
{
|
||||||
// Hand sorting down to the source model.
|
// Hand sorting down to the source model.
|
||||||
return model->lessThan(i1, i2);
|
return DiveTripModel::instance()->lessThan(i1, i2);
|
||||||
}
|
}
|
||||||
|
|
||||||
void MultiFilterSortModel::filterDataChanged(const FilterData& data)
|
void MultiFilterSortModel::filterDataChanged(const FilterData& data)
|
||||||
|
|
|
@ -58,7 +58,6 @@ signals:
|
||||||
private:
|
private:
|
||||||
MultiFilterSortModel(QObject *parent = 0);
|
MultiFilterSortModel(QObject *parent = 0);
|
||||||
struct dive_site *curr_dive_site;
|
struct dive_site *curr_dive_site;
|
||||||
DiveTripModel *model;
|
|
||||||
FilterData filterData;
|
FilterData filterData;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue