possibly only one filter at a time is applied. Will have to have a look
added bug label
changed the description
It is indeed as I suspected. Only one filter per time is applied. The reason lies in DataSet::restrict_column
Here an excerpt
void
restrict_column (std::size_t c, T l_restr, T u_restr)
{
for (DataRow& r : m_rows)
{
if (r[c].value < l_restr || r[c].value > u_restr)
r.set_enabled (false);
else if (not r.is_enabled ())
r.set_enabled (true);
}
}
So here all rows that are within the bounds get enabled. regardless of why they were disabled. Just kicking that part out also does not work, as then a once disabled row will never get enabled again (e.g. when relaxing bounds)
My best idea is to do the full filtering on every iteration. @a.stratmann any better ideas?
Ah, I see. This is definitely a programming error. I already have an idea to fix it.
mentioned in merge request !25 (merged)
mentioned in commit 04c3b48e
closed with merge request !25 (merged)