[TD]Fix group item moving when locked

This commit is contained in:
Wanderer Fan
2022-05-12 12:25:24 -04:00
committed by WandererFan
parent b96a650dec
commit 00c8916341
3 changed files with 21 additions and 25 deletions

View File

@@ -129,9 +129,9 @@ bool DrawProjGroupItem::showLock(void) const
App::DocumentObjectExecReturn *DrawProjGroupItem::execute(void)
{
// Base::Console().Message("DPGI::execute(%s)\n",Label.getValue());
if (!keepUpdated()) {
return App::DocumentObject::StdReturn;
}
if (!keepUpdated()) {
return App::DocumentObject::StdReturn;
}
bool haveX = checkXDirection();
if (!haveX) {
@@ -155,17 +155,18 @@ App::DocumentObjectExecReturn *DrawProjGroupItem::execute(void)
void DrawProjGroupItem::autoPosition()
{
// Base::Console().Message("DPGI::autoPosition(%s)\n",Label.getValue());
if (LockPosition.getValue()) {
return;
}
auto pgroup = getPGroup();
Base::Vector3d newPos;
if (pgroup != nullptr) {
if (pgroup->AutoDistribute.getValue()) {
if (!LockPosition.getValue()) {
newPos = pgroup->getXYPosition(Type.getValueAsString());
X.setValue(newPos.x);
Y.setValue(newPos.y);
requestPaint();
purgeTouched(); //prevents "still touched after recompute" message
}
newPos = pgroup->getXYPosition(Type.getValueAsString());
X.setValue(newPos.x);
Y.setValue(newPos.y);
requestPaint();
purgeTouched(); //prevents "still touched after recompute" message
}
}
}