Fix position of newly created UI element (#7510)

Signed-off-by: abrmich <abrmich@amazon.com>
monroegm-disable-blank-issue-2
michabr 4 years ago committed by GitHub
parent 51bac9a6c0
commit e5800d738a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -387,7 +387,9 @@ void HierarchyMenu::New_ElementFromSlice(HierarchyWidget* hierarchy,
AZ::Vector2 viewportPosition(-1.0f,-1.0f); // indicates no viewport position specified
if (optionalPos)
{
viewportPosition = QtHelpers::QPointFToVector2(*optionalPos);
// Convert position to render viewport coords
QPointF scaledPosition = *optionalPos * hierarchy->GetEditorWindow()->GetViewport()->WidgetToViewportFactor();
viewportPosition = QtHelpers::QPointFToVector2(scaledPosition);
}
SliceMenuHelpers::CreateInstantiateSliceMenu(hierarchy,
@ -405,7 +407,9 @@ void HierarchyMenu::New_ElementFromSlice(HierarchyWidget* hierarchy,
AZ::Vector2 viewportPosition(-1.0f,-1.0f); // indicates no viewport position specified
if (optionalPos)
{
viewportPosition = QtHelpers::QPointFToVector2(*optionalPos);
// Convert position to render viewport coords
QPointF scaledPosition = *optionalPos * hierarchy->GetEditorWindow()->GetViewport()->WidgetToViewportFactor();
viewportPosition = QtHelpers::QPointFToVector2(scaledPosition);
}
hierarchy->GetEditorWindow()->GetSliceManager()->InstantiateSliceUsingBrowser(hierarchy, viewportPosition);
}

@ -1239,11 +1239,13 @@ void HierarchyWidget::AddElement(const QTreeWidgetItemRawPtrQList& selectedItems
this,
selectedItems,
childIndex,
[optionalPos](AZ::Entity* element)
[this, optionalPos](AZ::Entity* element)
{
if (optionalPos)
{
EntityHelpers::MoveElementToGlobalPosition(element, *optionalPos);
// Convert position to render viewport coords
QPoint scaledPosition = *optionalPos * GetEditorWindow()->GetViewport()->WidgetToViewportFactor();
EntityHelpers::MoveElementToGlobalPosition(element, scaledPosition);
}
});
}

Loading…
Cancel
Save