If you want to keep the previous enabled/disabled status, you could always keep the value in a dynamic property (QObject::setProperty(const char* name, const QVariant& value) -- retrieved with QObject:roperty(const char* name)).

It's nice to be able to use some parts of QT/QObject in ways that you need -- such as the dynamic properties & objectName

Vycke