Merge pull request #195 from nkirkby/194_new_filters_default_to_false_if_any_existing_filters_are_false

#194: new filters default to false if any existing filters are false
This commit is contained in:
Collin Kidder
2019-06-11 21:58:14 -04:00
committed by GitHub
2 changed files with 18 additions and 1 deletions
+17 -1
View File
@@ -528,6 +528,18 @@ QVariant CANFrameModel::headerData(int section, Qt::Orientation orientation,
return QVariant();
}
bool CANFrameModel::any_filters_are_configured(void)
{
for (auto const &val : filters)
{
if (val == true)
continue;
else
return true;
}
return false;
}
void CANFrameModel::addFrame(const CANFrame& frame, bool autoRefresh = false)
{
@@ -542,7 +554,11 @@ void CANFrameModel::addFrame(const CANFrame& frame, bool autoRefresh = false)
//if this ID isn't found in the filters list then add it and show it by default
if (!filters.contains(tempFrame.ID))
{
filters.insert(tempFrame.ID, true);
// if there are any filters already configured, leave the new filter disabled
if (any_filters_are_configured())
filters.insert(tempFrame.ID, false);
else
filters.insert(tempFrame.ID, true);
needFilterRefresh = true;
}