diff --git a/CommonData/dataset.cpp b/CommonData/dataset.cpp index 2600b129c8..67a281d273 100644 --- a/CommonData/dataset.cpp +++ b/CommonData/dataset.cpp @@ -619,3 +619,9 @@ bool DataSet::initColumnWithStrings(int colIndex, const std::string & newName, c return anyChanges || column->type() != prevType; } +bool DataSet::isFilterNameFree(const std::string& filterName) +{ + return -1 == db().filterGetId(filterName); +} + + diff --git a/CommonData/dataset.h b/CommonData/dataset.h index 1c5165a18c..704fa7cf44 100644 --- a/CommonData/dataset.h +++ b/CommonData/dataset.h @@ -83,6 +83,7 @@ class DataSet : public DataSetBaseNode void setWorkspaceEmptyValues( const stringset& values); const std::string & description() const { return _description; } void setDescription( const std::string& desc); + bool isFilterNameFree( const std::string& filterName); private: void upgradeTo019(const Json::Value & emptyVals); diff --git a/CommonData/filter.cpp b/CommonData/filter.cpp index 439fe4cbbc..4931838036 100644 --- a/CommonData/filter.cpp +++ b/CommonData/filter.cpp @@ -170,11 +170,6 @@ bool Filter::checkForUpdates() return false; } -bool Filter::filterNameIsFree(const std::string &filterName) -{ - return -1 == DatabaseInterface::singleton()->filterGetId(filterName); -} - void Filter::reset() { if(!_data->writeBatchedToDB()) diff --git a/CommonData/filter.h b/CommonData/filter.h index 3ea7225634..1b47fde1c9 100644 --- a/CommonData/filter.h +++ b/CommonData/filter.h @@ -53,10 +53,7 @@ class Filter : public DataSetBaseNode bool dbLoadResultAndError(); ///< Loads (updated) filtervalues from database and the (possible) error msg, returns true if an error is set void dbDelete(); void incRevision() override; - bool checkForUpdates(); - - static bool filterNameIsFree(const std::string & filterName); - + bool checkForUpdates(); void reset(); DatabaseInterface & db(); diff --git a/QMLComponents/ALTNavigation/altnavscope.cpp b/QMLComponents/ALTNavigation/altnavscope.cpp index 8a571d03a7..526cf002c5 100644 --- a/QMLComponents/ALTNavigation/altnavscope.cpp +++ b/QMLComponents/ALTNavigation/altnavscope.cpp @@ -4,8 +4,6 @@ #include #include -#include -#include "log.h" ALTNavScope::ALTNavScope(QObject* attachee) : QObject{attachee} diff --git a/QMLComponents/models/listmodelfiltereddataentry.cpp b/QMLComponents/models/listmodelfiltereddataentry.cpp index 04fc2e1127..a293702f3b 100644 --- a/QMLComponents/models/listmodelfiltereddataentry.cpp +++ b/QMLComponents/models/listmodelfiltereddataentry.cpp @@ -4,6 +4,7 @@ #include "log.h" #include "controls/jaspcontrol.h" #include "filter.h" +#include "dataset.h" ListModelFilteredDataEntry::ListModelFilteredDataEntry(TableViewBase * parent) : ListModelTableViewBase(parent) @@ -21,7 +22,7 @@ ListModelFilteredDataEntry::ListModelFilteredDataEntry(TableViewBase * parent) { _filterName = "ListModelFilteredDataEntry_" + std::to_string(counter++); } - while(!Filter::filterNameIsFree(_filterName)); + while(!dataSet->isFilterNameFree(_filterName)); connect(VariableInfo::info(), &VariableInfo::dataSetChanged, this, &ListModelFilteredDataEntry::dataSetChangedHandler); }