PD: Avoid touching the document when opening pad or pocket dialog

This commit is contained in:
wmayer
2024-10-19 00:57:49 +02:00
committed by wwmayer
parent 8d418fe80a
commit ab0b63e1e3
3 changed files with 17 additions and 11 deletions

View File

@@ -380,22 +380,28 @@ void TaskDressUpParameters::hideOnError()
showObject();
}
void TaskDressUpParameters::hideObject()
void TaskDressUpParameters::setDressUpVisibility(bool visible)
{
App::DocumentObject* base = getBase();
if(base) {
DressUpView->getObject()->Visibility.setValue(false);
base->Visibility.setValue(true);
if (base) {
App::DocumentObject* duv = DressUpView->getObject();
if (duv->Visibility.getValue() != visible) {
duv->Visibility.setValue(visible);
}
if (base->Visibility.getValue() == visible) {
base->Visibility.setValue(!visible);
}
}
}
void TaskDressUpParameters::hideObject()
{
setDressUpVisibility(false);
}
void TaskDressUpParameters::showObject()
{
App::DocumentObject* base = getBase();
if (base) {
DressUpView->getObject()->Visibility.setValue(true);
base->Visibility.setValue(false);
}
setDressUpVisibility(true);
}
ViewProviderDressUp* TaskDressUpParameters::getDressUpView() const