Fix position of newly created UI element (#7510)
Signed-off-by: abrmich <abrmich@amazon.com>
This commit is contained in:
@@ -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);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user