PD: Toggling transparency doesn't reset colors

This commit is contained in:
wwmayer
2025-09-18 18:32:38 +02:00
committed by Max Wilfinger
parent b17a59f9c6
commit d5ccc4a8d1
3 changed files with 71 additions and 68 deletions

View File

@@ -247,10 +247,22 @@ void Property::destroy(Property* p)
}
}
bool Property::enableNotify(bool on)
{
bool isNotify = isNotifyEnabled();
on ? StatusBits.reset(DisableNotify) : StatusBits.set(DisableNotify);
return isNotify;
}
bool Property::isNotifyEnabled() const
{
return !StatusBits.test(DisableNotify);
}
void Property::touch()
{
PropertyCleaner guard(this);
if (father) {
if (father && isNotifyEnabled()) {
father->onEarlyChange(this);
father->onChanged(this);
}
@@ -266,7 +278,9 @@ void Property::hasSetValue()
{
PropertyCleaner guard(this);
if (father) {
father->onChanged(this);
if (isNotifyEnabled()) {
father->onChanged(this);
}
if (!testStatus(Busy)) {
Base::BitsetLocker<decltype(StatusBits)> guard(StatusBits, Busy);
signalChanged(*this);