diff --git a/src/blackgui/views/viewbase.h b/src/blackgui/views/viewbase.h index abc25be0f..6ab451e91 100644 --- a/src/blackgui/views/viewbase.h +++ b/src/blackgui/views/viewbase.h @@ -393,6 +393,27 @@ namespace BlackGui //! Remove selected rows int removeSelectedRows(); + //! \copydoc BlackMisc::CContainerBase::removeIf + template + int removeIf(K0 k0, V0 v0, KeysValues... keysValues) + { + if (this->rowCount() < 1) { return 0; } + ContainerType copy(container()); + int r = copy.removeIf(k0, v0, keysValues...); + if (r < 1) { return 0; } + this->updateContainerMaybeAsync(copy); + return r; + } + + //! \copydoc BlackMisc::CSequence::replaceOrAdd + template + void replaceOrAdd(K1 key1, V1 value1, const ObjectType &replacement) + { + ContainerType copy(container()); + copy.replaceOrAdd(key1, value1, replacement); + this->updateContainerMaybeAsync(copy); + } + //! Row count int rowCount() const;