Merge pull request #5790 from aws-lumberyard-dev/collider-cluster-ui-reorder
Collider cluster UI reorder
This commit is contained in:
@@ -7,20 +7,20 @@
|
||||
*/
|
||||
|
||||
#include "ColliderComponentMode.h"
|
||||
#include "ColliderAssetScaleMode.h"
|
||||
#include "ColliderBoxMode.h"
|
||||
#include "ColliderCapsuleMode.h"
|
||||
#include "ColliderOffsetMode.h"
|
||||
#include "ColliderRotationMode.h"
|
||||
#include "ColliderBoxMode.h"
|
||||
#include "ColliderSphereMode.h"
|
||||
#include "ColliderCapsuleMode.h"
|
||||
#include "ColliderAssetScaleMode.h"
|
||||
|
||||
#include <Editor/Source/ComponentModes/PhysXSubComponentModeBase.h>
|
||||
#include <PhysX/EditorColliderComponentRequestBus.h>
|
||||
|
||||
#include <AzFramework/Physics/ShapeConfiguration.h>
|
||||
#include <AzToolsFramework/API/ToolsApplicationAPI.h>
|
||||
#include <AzToolsFramework/ComponentModes/BoxComponentMode.h>
|
||||
#include <AzToolsFramework/ComponentModes/BoxViewportEdit.h>
|
||||
#include <AzToolsFramework/API/ToolsApplicationAPI.h>
|
||||
|
||||
namespace PhysX
|
||||
{
|
||||
@@ -31,7 +31,7 @@ namespace PhysX
|
||||
const AZ::Crc32 SetOffsetSubModeActionUri = AZ_CRC("com.o3de.action.physx.setoffsetsubmode", 0xc06132e5);
|
||||
const AZ::Crc32 SetRotationSubModeActionUri = AZ_CRC("com.o3de.action.physx.setrotationsubmode", 0xc4225918);
|
||||
const AZ::Crc32 ResetSubModeActionUri = AZ_CRC("com.o3de.action.physx.resetsubmode", 0xb70b120e);
|
||||
}
|
||||
} // namespace
|
||||
|
||||
AZ_CLASS_ALLOCATOR_IMPL(ColliderComponentMode, AZ::SystemAllocator, 0);
|
||||
|
||||
@@ -39,19 +39,17 @@ namespace PhysX
|
||||
: AzToolsFramework::ComponentModeFramework::EditorBaseComponentMode(entityComponentIdPair, componentType)
|
||||
{
|
||||
CreateSubModes();
|
||||
CreateSubModeSelectionCluster();
|
||||
ColliderComponentModeRequestBus::Handler::BusConnect(entityComponentIdPair);
|
||||
ColliderComponentModeUiRequestBus::Handler::BusConnect(entityComponentIdPair);
|
||||
|
||||
CreateSubModeSelectionCluster();
|
||||
}
|
||||
|
||||
ColliderComponentMode::~ColliderComponentMode()
|
||||
{
|
||||
RemoveSubModeSelectionCluster();
|
||||
|
||||
ColliderComponentModeUiRequestBus::Handler::BusDisconnect();
|
||||
ColliderComponentModeRequestBus::Handler::BusDisconnect();
|
||||
|
||||
RemoveSubModeSelectionCluster();
|
||||
m_subModes[m_subMode]->Teardown(GetEntityComponentIdPair());
|
||||
}
|
||||
|
||||
@@ -62,39 +60,41 @@ namespace PhysX
|
||||
|
||||
AZStd::vector<AzToolsFramework::ActionOverride> ColliderComponentMode::PopulateActionsImpl()
|
||||
{
|
||||
|
||||
AzToolsFramework::ActionOverride setDimensionsModeAction;
|
||||
setDimensionsModeAction.SetUri(SetDimensionsSubModeActionUri);
|
||||
setDimensionsModeAction.SetKeySequence(QKeySequence(Qt::Key_1));
|
||||
setDimensionsModeAction.SetTitle("Set Resize Mode");
|
||||
setDimensionsModeAction.SetTip("Set resize mode");
|
||||
setDimensionsModeAction.SetEntityComponentIdPair(GetEntityComponentIdPair());
|
||||
setDimensionsModeAction.SetCallback([this]()
|
||||
{
|
||||
SetCurrentMode(SubMode::Dimensions);
|
||||
});
|
||||
|
||||
AzToolsFramework::ActionOverride setOffsetModeAction;
|
||||
setOffsetModeAction.SetUri(SetOffsetSubModeActionUri);
|
||||
setOffsetModeAction.SetKeySequence(QKeySequence(Qt::Key_2));
|
||||
setOffsetModeAction.SetKeySequence(QKeySequence(Qt::Key_1));
|
||||
setOffsetModeAction.SetTitle("Set Offset Mode");
|
||||
setOffsetModeAction.SetTip("Set offset mode");
|
||||
setOffsetModeAction.SetEntityComponentIdPair(GetEntityComponentIdPair());
|
||||
setOffsetModeAction.SetCallback([this]()
|
||||
{
|
||||
SetCurrentMode(SubMode::Offset);
|
||||
});
|
||||
setOffsetModeAction.SetCallback(
|
||||
[this]()
|
||||
{
|
||||
SetCurrentMode(SubMode::Offset);
|
||||
});
|
||||
|
||||
AzToolsFramework::ActionOverride setRotationModeAction;
|
||||
setRotationModeAction.SetUri(SetRotationSubModeActionUri);
|
||||
setRotationModeAction.SetKeySequence(QKeySequence(Qt::Key_3));
|
||||
setRotationModeAction.SetKeySequence(QKeySequence(Qt::Key_2));
|
||||
setRotationModeAction.SetTitle("Set Rotation Mode");
|
||||
setRotationModeAction.SetTip("Set rotation mode");
|
||||
setRotationModeAction.SetEntityComponentIdPair(GetEntityComponentIdPair());
|
||||
setRotationModeAction.SetCallback([this]()
|
||||
{
|
||||
SetCurrentMode(SubMode::Rotation);
|
||||
});
|
||||
setRotationModeAction.SetCallback(
|
||||
[this]()
|
||||
{
|
||||
SetCurrentMode(SubMode::Rotation);
|
||||
});
|
||||
|
||||
AzToolsFramework::ActionOverride setDimensionsModeAction;
|
||||
setDimensionsModeAction.SetUri(SetDimensionsSubModeActionUri);
|
||||
setDimensionsModeAction.SetKeySequence(QKeySequence(Qt::Key_3));
|
||||
setDimensionsModeAction.SetTitle("Set Resize Mode");
|
||||
setDimensionsModeAction.SetTip("Set resize mode");
|
||||
setDimensionsModeAction.SetEntityComponentIdPair(GetEntityComponentIdPair());
|
||||
setDimensionsModeAction.SetCallback(
|
||||
[this]()
|
||||
{
|
||||
SetCurrentMode(SubMode::Dimensions);
|
||||
});
|
||||
|
||||
AzToolsFramework::ActionOverride resetModeAction;
|
||||
resetModeAction.SetUri(ResetSubModeActionUri);
|
||||
@@ -102,12 +102,13 @@ namespace PhysX
|
||||
resetModeAction.SetTitle("Reset Current Mode");
|
||||
resetModeAction.SetTip("Reset current mode");
|
||||
resetModeAction.SetEntityComponentIdPair(GetEntityComponentIdPair());
|
||||
resetModeAction.SetCallback([this]()
|
||||
{
|
||||
ResetCurrentMode();
|
||||
});
|
||||
resetModeAction.SetCallback(
|
||||
[this]()
|
||||
{
|
||||
ResetCurrentMode();
|
||||
});
|
||||
|
||||
return {setDimensionsModeAction, setOffsetModeAction, setRotationModeAction, resetModeAction };
|
||||
return { setDimensionsModeAction, setOffsetModeAction, setRotationModeAction, resetModeAction };
|
||||
}
|
||||
|
||||
void ColliderComponentMode::CreateSubModes()
|
||||
@@ -141,7 +142,7 @@ namespace PhysX
|
||||
if (mouseInteraction.m_mouseEvent == AzToolsFramework::ViewportInteraction::MouseEvent::Wheel &&
|
||||
mouseInteraction.m_mouseInteraction.m_keyboardModifiers.Ctrl())
|
||||
{
|
||||
int direction = MouseWheelDelta(mouseInteraction) > 0.0f ? 1 : -1;
|
||||
const int direction = MouseWheelDelta(mouseInteraction) > 0.0f ? -1 : 1;
|
||||
AZ::u32 currentModeIndex = static_cast<AZ::u32>(m_subMode);
|
||||
AZ::u32 numSubModes = static_cast<AZ::u32>(SubMode::NumModes);
|
||||
AZ::u32 nextModeIndex = (currentModeIndex + numSubModes + direction) % m_subModes.size();
|
||||
@@ -159,10 +160,17 @@ namespace PhysX
|
||||
|
||||
void ColliderComponentMode::SetCurrentMode(SubMode newMode)
|
||||
{
|
||||
AZ_Assert(m_subModes.count(newMode) > 0, "Submode not found:%d", newMode);
|
||||
AZ_Assert(m_subModes.find(newMode) != m_subModes.end(), "Submode not found:%d", newMode);
|
||||
m_subModes[m_subMode]->Teardown(GetEntityComponentIdPair());
|
||||
m_subMode = newMode;
|
||||
m_subModes[m_subMode]->Setup(GetEntityComponentIdPair());
|
||||
|
||||
const auto modeIndex = static_cast<size_t>(newMode);
|
||||
AZ_Assert(modeIndex < m_buttonIds.size(), "Invalid mode index %i.", modeIndex);
|
||||
AzToolsFramework::ViewportUi::ViewportUiRequestBus::Event(
|
||||
AzToolsFramework::ViewportUi::DefaultViewportId,
|
||||
&AzToolsFramework::ViewportUi::ViewportUiRequestBus::Events::SetClusterActiveButton, m_modeSelectionClusterId,
|
||||
m_buttonIds[modeIndex]);
|
||||
}
|
||||
|
||||
AzToolsFramework::ViewportUi::ClusterId ColliderComponentMode::GetClusterId() const
|
||||
@@ -172,36 +180,40 @@ namespace PhysX
|
||||
|
||||
AzToolsFramework::ViewportUi::ButtonId ColliderComponentMode::GetOffsetButtonId() const
|
||||
{
|
||||
return m_offsetModeButtonId;
|
||||
return m_buttonIds[static_cast<size_t>(SubMode::Offset)];
|
||||
}
|
||||
|
||||
AzToolsFramework::ViewportUi::ButtonId ColliderComponentMode::GetRotationButtonId() const
|
||||
{
|
||||
return m_rotationModeButtonId;
|
||||
return m_buttonIds[static_cast<size_t>(SubMode::Rotation)];
|
||||
}
|
||||
|
||||
AzToolsFramework::ViewportUi::ButtonId ColliderComponentMode::GetDimensionsButtonId() const
|
||||
{
|
||||
return m_dimensionsModeButtonId;
|
||||
return m_buttonIds[static_cast<size_t>(SubMode::Dimensions)];
|
||||
}
|
||||
|
||||
AZStd::string ColliderComponentMode::GetComponentModeName() const
|
||||
{
|
||||
return "Collider Edit Mode";
|
||||
}
|
||||
|
||||
void RefreshUI()
|
||||
{
|
||||
/// The reason this is in a free function is because ColliderComponentMode
|
||||
/// privately inherits from ToolsApplicationNotificationBus. Trying to invoke
|
||||
/// the bus inside the class scope causes the compiler to complain it's not accessible
|
||||
/// to due private inheritence.
|
||||
/// Using the global namespace operator :: should have fixed that, except there
|
||||
/// the bus inside the class scope causes the compiler to complain it's not accessible
|
||||
/// to due private inheritence.
|
||||
/// Using the global namespace operator :: should have fixed that, except there
|
||||
/// is a bug in the microsoft compiler meaning it doesn't work. So this is a work around.
|
||||
AzToolsFramework::ToolsApplicationNotificationBus::Broadcast(
|
||||
&AzToolsFramework::ToolsApplicationNotificationBus::Events::InvalidatePropertyDisplay,
|
||||
AzToolsFramework::Refresh_Values);
|
||||
&AzToolsFramework::ToolsApplicationNotificationBus::Events::InvalidatePropertyDisplay, AzToolsFramework::Refresh_Values);
|
||||
}
|
||||
|
||||
void ColliderComponentMode::ResetCurrentMode()
|
||||
{
|
||||
m_subModes[m_subMode]->ResetValues(GetEntityComponentIdPair());
|
||||
m_subModes[m_subMode]->Refresh(GetEntityComponentIdPair());
|
||||
m_subModes[m_subMode]->Refresh(GetEntityComponentIdPair());
|
||||
RefreshUI();
|
||||
}
|
||||
|
||||
@@ -225,8 +237,8 @@ namespace PhysX
|
||||
void ColliderComponentMode::RemoveSubModeSelectionCluster()
|
||||
{
|
||||
AzToolsFramework::ViewportUi::ViewportUiRequestBus::Event(
|
||||
AzToolsFramework::ViewportUi::DefaultViewportId,
|
||||
&AzToolsFramework::ViewportUi::ViewportUiRequestBus::Events::RemoveCluster, m_modeSelectionClusterId);
|
||||
AzToolsFramework::ViewportUi::DefaultViewportId, &AzToolsFramework::ViewportUi::ViewportUiRequestBus::Events::RemoveCluster,
|
||||
m_modeSelectionClusterId);
|
||||
}
|
||||
|
||||
void ColliderComponentMode::CreateSubModeSelectionCluster()
|
||||
@@ -237,29 +249,37 @@ namespace PhysX
|
||||
&AzToolsFramework::ViewportUi::ViewportUiRequestBus::Events::CreateCluster, AzToolsFramework::ViewportUi::Alignment::TopLeft);
|
||||
|
||||
// create and register the buttons
|
||||
m_dimensionsModeButtonId = RegisterClusterButton(m_modeSelectionClusterId, "Scale");
|
||||
m_offsetModeButtonId = RegisterClusterButton(m_modeSelectionClusterId, "Move");
|
||||
m_rotationModeButtonId = RegisterClusterButton(m_modeSelectionClusterId, "Rotate");
|
||||
m_buttonIds.resize(static_cast<size_t>(SubMode::NumModes));
|
||||
m_buttonIds[static_cast<size_t>(SubMode::Offset)] = RegisterClusterButton(m_modeSelectionClusterId, "Move");
|
||||
m_buttonIds[static_cast<size_t>(SubMode::Rotation)] = RegisterClusterButton(m_modeSelectionClusterId, "Rotate");
|
||||
m_buttonIds[static_cast<size_t>(SubMode::Dimensions)] = RegisterClusterButton(m_modeSelectionClusterId, "Scale");
|
||||
|
||||
const auto onButtonClicked = [this](AzToolsFramework::ViewportUi::ButtonId buttonId) {
|
||||
if (buttonId == m_dimensionsModeButtonId)
|
||||
{
|
||||
SetCurrentMode(SubMode::Dimensions);
|
||||
}
|
||||
else if (buttonId == m_offsetModeButtonId)
|
||||
SetCurrentMode(SubMode::Offset);
|
||||
|
||||
const auto onButtonClicked = [this](AzToolsFramework::ViewportUi::ButtonId buttonId)
|
||||
{
|
||||
if (buttonId == m_buttonIds[static_cast<size_t>(SubMode::Offset)])
|
||||
{
|
||||
SetCurrentMode(SubMode::Offset);
|
||||
}
|
||||
else if (buttonId == m_rotationModeButtonId)
|
||||
else if (buttonId == m_buttonIds[static_cast<size_t>(SubMode::Rotation)])
|
||||
{
|
||||
SetCurrentMode(SubMode::Rotation);
|
||||
}
|
||||
else if (buttonId == m_buttonIds[static_cast<size_t>(SubMode::Dimensions)])
|
||||
{
|
||||
SetCurrentMode(SubMode::Dimensions);
|
||||
}
|
||||
else
|
||||
{
|
||||
AZ_Error("PhysX Collider Component Mode", false, "Unrecognized button ID.");
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
m_modeSelectionHandler = AZ::Event<AzToolsFramework::ViewportUi::ButtonId>::Handler(onButtonClicked);
|
||||
AzToolsFramework::ViewportUi::ViewportUiRequestBus::Event(
|
||||
AzToolsFramework::ViewportUi::DefaultViewportId,
|
||||
&AzToolsFramework::ViewportUi::ViewportUiRequestBus::Events::RegisterClusterEventHandler,
|
||||
m_modeSelectionClusterId, m_modeSelectionHandler);
|
||||
&AzToolsFramework::ViewportUi::ViewportUiRequestBus::Events::RegisterClusterEventHandler, m_modeSelectionClusterId,
|
||||
m_modeSelectionHandler);
|
||||
}
|
||||
}
|
||||
} // namespace PhysX
|
||||
|
||||
@@ -31,21 +31,23 @@ namespace PhysX
|
||||
ColliderComponentMode(const AZ::EntityComponentIdPair& entityComponentIdPair, AZ::Uuid componentType);
|
||||
~ColliderComponentMode();
|
||||
|
||||
// EditorBaseComponentMode ...
|
||||
// EditorBaseComponentMode overrides ...
|
||||
void Refresh() override;
|
||||
AZStd::vector<AzToolsFramework::ActionOverride> PopulateActionsImpl() override;
|
||||
AZStd::vector<AzToolsFramework::ViewportUi::ClusterId> PopulateViewportUiImpl() override;
|
||||
|
||||
// ColliderComponentModeBus ...
|
||||
// ColliderComponentModeBus overrides ...
|
||||
SubMode GetCurrentMode() override;
|
||||
void SetCurrentMode(SubMode index) override;
|
||||
|
||||
// ColliderComponentModeUiBus ...
|
||||
// ColliderComponentModeUiBus overrides ...
|
||||
AzToolsFramework::ViewportUi::ButtonId GetOffsetButtonId() const override;
|
||||
AzToolsFramework::ViewportUi::ButtonId GetRotationButtonId() const override;
|
||||
AzToolsFramework::ViewportUi::ClusterId GetClusterId() const override;
|
||||
AzToolsFramework::ViewportUi::ButtonId GetDimensionsButtonId() const override;
|
||||
|
||||
// ComponentMode overrides ...
|
||||
AZStd::string GetComponentModeName() const override;
|
||||
private:
|
||||
|
||||
// AzToolsFramework::ViewportInteraction::ViewportSelectionRequests ...
|
||||
@@ -63,12 +65,9 @@ namespace PhysX
|
||||
|
||||
AzToolsFramework::ViewportUi::ClusterId
|
||||
m_modeSelectionClusterId; //!< Viewport UI cluster for changing sub mode.
|
||||
AzToolsFramework::ViewportUi::ButtonId
|
||||
m_dimensionsModeButtonId; //!< Id of the Viewport UI button for resize/dimensions mode.
|
||||
AzToolsFramework::ViewportUi::ButtonId
|
||||
m_offsetModeButtonId; //!< Id of the Viewport UI button for offset mode.
|
||||
AzToolsFramework::ViewportUi::ButtonId
|
||||
m_rotationModeButtonId; //!< Id of the Viewport UI button for rotation mode.
|
||||
|
||||
AZStd::vector<AzToolsFramework::ViewportUi::ButtonId> m_buttonIds; //!< Ids for the Viewport UI buttons for each mode.
|
||||
|
||||
AZ::Event<AzToolsFramework::ViewportUi::ButtonId>::Handler
|
||||
m_modeSelectionHandler; //!< Event handler for sub mode changes.
|
||||
};
|
||||
|
||||
@@ -19,9 +19,9 @@ namespace PhysX
|
||||
public:
|
||||
enum class SubMode : AZ::u32
|
||||
{
|
||||
Dimensions,
|
||||
Offset,
|
||||
Rotation,
|
||||
Dimensions,
|
||||
NumModes
|
||||
};
|
||||
|
||||
|
||||
@@ -66,7 +66,7 @@ namespace UnitTest
|
||||
|
||||
PhysX::ColliderComponentModeRequests::SubMode subMode = PhysX::ColliderComponentModeRequests::SubMode::NumModes;
|
||||
PhysX::ColliderComponentModeRequestBus::BroadcastResult(subMode, &PhysX::ColliderComponentModeRequests::GetCurrentMode);
|
||||
EXPECT_EQ(PhysX::ColliderComponentModeRequests::SubMode::Dimensions, subMode);
|
||||
EXPECT_EQ(PhysX::ColliderComponentModeRequests::SubMode::Offset, subMode);
|
||||
|
||||
// When the mouse wheel is scrolled while holding ctrl
|
||||
AzToolsFramework::ViewportInteraction::MouseInteractionEvent
|
||||
@@ -84,7 +84,7 @@ namespace UnitTest
|
||||
// Then the component mode is cycled.
|
||||
PhysX::ColliderComponentModeRequestBus::BroadcastResult(subMode, &PhysX::ColliderComponentModeRequests::GetCurrentMode);
|
||||
EXPECT_EQ(handled, MouseInteractionResult::Viewport);
|
||||
EXPECT_EQ(PhysX::ColliderComponentModeRequests::SubMode::Offset, subMode);
|
||||
EXPECT_EQ(PhysX::ColliderComponentModeRequests::SubMode::Dimensions, subMode);
|
||||
}
|
||||
|
||||
TEST_F(PhysXColliderComponentModeTest, MouseWheelDownShouldSetPreviousMode)
|
||||
@@ -95,7 +95,7 @@ namespace UnitTest
|
||||
|
||||
PhysX::ColliderComponentModeRequests::SubMode subMode = PhysX::ColliderComponentModeRequests::SubMode::NumModes;
|
||||
PhysX::ColliderComponentModeRequestBus::BroadcastResult(subMode, &PhysX::ColliderComponentModeRequests::GetCurrentMode);
|
||||
EXPECT_EQ(PhysX::ColliderComponentModeRequests::SubMode::Dimensions, subMode);
|
||||
EXPECT_EQ(PhysX::ColliderComponentModeRequests::SubMode::Offset, subMode);
|
||||
|
||||
// When the mouse wheel is scrolled while holding ctrl
|
||||
AzToolsFramework::ViewportInteraction::MouseInteractionEvent
|
||||
@@ -116,7 +116,7 @@ namespace UnitTest
|
||||
EXPECT_EQ(PhysX::ColliderComponentModeRequests::SubMode::Rotation, subMode);
|
||||
}
|
||||
|
||||
TEST_F(PhysXColliderComponentModeTest, PressingKey1ShouldSetSizeMode)
|
||||
TEST_F(PhysXColliderComponentModeTest, PressingKey1ShouldSetOffsetMode)
|
||||
{
|
||||
// Given there is a collider component in component mode.
|
||||
CreateColliderComponent();
|
||||
@@ -124,17 +124,17 @@ namespace UnitTest
|
||||
|
||||
PhysX::ColliderComponentModeRequests::SubMode subMode = PhysX::ColliderComponentModeRequests::SubMode::NumModes;
|
||||
PhysX::ColliderComponentModeRequestBus::BroadcastResult(subMode, &PhysX::ColliderComponentModeRequests::GetCurrentMode);
|
||||
EXPECT_EQ(PhysX::ColliderComponentModeRequests::SubMode::Dimensions, subMode);
|
||||
EXPECT_EQ(PhysX::ColliderComponentModeRequests::SubMode::Offset, subMode);
|
||||
|
||||
// When the '1' key is pressed
|
||||
QTest::keyPress(&m_editorActions.m_componentModeWidget, Qt::Key_1);
|
||||
|
||||
// Then the component mode is set to Size.
|
||||
// Then the component mode is set to Offset.
|
||||
PhysX::ColliderComponentModeRequestBus::BroadcastResult(subMode, &PhysX::ColliderComponentModeRequests::GetCurrentMode);
|
||||
EXPECT_EQ(PhysX::ColliderComponentModeRequests::SubMode::Dimensions, subMode);
|
||||
EXPECT_EQ(PhysX::ColliderComponentModeRequests::SubMode::Offset, subMode);
|
||||
}
|
||||
|
||||
TEST_F(PhysXColliderComponentModeTest, PressingKey2ShouldSetSizeMode)
|
||||
TEST_F(PhysXColliderComponentModeTest, PressingKey2ShouldSetRotationMode)
|
||||
{
|
||||
// Given there is a collider component in component mode.
|
||||
auto colliderEntity = CreateColliderComponent();
|
||||
@@ -143,14 +143,14 @@ namespace UnitTest
|
||||
|
||||
PhysX::ColliderComponentModeRequests::SubMode subMode = PhysX::ColliderComponentModeRequests::SubMode::NumModes;
|
||||
PhysX::ColliderComponentModeRequestBus::BroadcastResult(subMode, &PhysX::ColliderComponentModeRequests::GetCurrentMode);
|
||||
EXPECT_EQ(PhysX::ColliderComponentModeRequests::SubMode::Dimensions, subMode);
|
||||
EXPECT_EQ(PhysX::ColliderComponentModeRequests::SubMode::Offset, subMode);
|
||||
|
||||
// When the '2' key is pressed
|
||||
QTest::keyPress(&m_editorActions.m_componentModeWidget, Qt::Key_2);
|
||||
|
||||
// Then the component mode is set to Offset.
|
||||
// Then the component mode is set to Rotation.
|
||||
PhysX::ColliderComponentModeRequestBus::BroadcastResult(subMode, &PhysX::ColliderComponentModeRequests::GetCurrentMode);
|
||||
EXPECT_EQ(PhysX::ColliderComponentModeRequests::SubMode::Offset, subMode);
|
||||
EXPECT_EQ(PhysX::ColliderComponentModeRequests::SubMode::Rotation, subMode);
|
||||
}
|
||||
|
||||
TEST_F(PhysXColliderComponentModeTest, PressingKey3ShouldSetSizeMode)
|
||||
@@ -162,14 +162,14 @@ namespace UnitTest
|
||||
|
||||
PhysX::ColliderComponentModeRequests::SubMode subMode = PhysX::ColliderComponentModeRequests::SubMode::NumModes;
|
||||
PhysX::ColliderComponentModeRequestBus::BroadcastResult(subMode, &PhysX::ColliderComponentModeRequests::GetCurrentMode);
|
||||
EXPECT_EQ(PhysX::ColliderComponentModeRequests::SubMode::Dimensions, subMode);
|
||||
EXPECT_EQ(PhysX::ColliderComponentModeRequests::SubMode::Offset, subMode);
|
||||
|
||||
// When the '3' key is pressed
|
||||
QTest::keyPress(&m_editorActions.m_componentModeWidget, Qt::Key_3);
|
||||
|
||||
// Then the component mode is set to Rotation.
|
||||
// Then the component mode is set to Size.
|
||||
PhysX::ColliderComponentModeRequestBus::BroadcastResult(subMode, &PhysX::ColliderComponentModeRequests::GetCurrentMode);
|
||||
EXPECT_EQ(PhysX::ColliderComponentModeRequests::SubMode::Rotation, subMode);
|
||||
EXPECT_EQ(PhysX::ColliderComponentModeRequests::SubMode::Dimensions, subMode);
|
||||
}
|
||||
|
||||
TEST_F(PhysXColliderComponentModeTest, PressingKeyRShouldResetSphereRadius)
|
||||
@@ -292,7 +292,7 @@ namespace UnitTest
|
||||
// Check preconditions
|
||||
PhysX::ColliderComponentModeRequests::SubMode subMode = PhysX::ColliderComponentModeRequests::SubMode::NumModes;
|
||||
PhysX::ColliderComponentModeRequestBus::BroadcastResult(subMode, &PhysX::ColliderComponentModeRequests::GetCurrentMode);
|
||||
EXPECT_EQ(PhysX::ColliderComponentModeRequests::SubMode::Dimensions, subMode);
|
||||
EXPECT_EQ(PhysX::ColliderComponentModeRequests::SubMode::Offset, subMode);
|
||||
|
||||
// Get the cluster and button Ids
|
||||
AzToolsFramework::ViewportUi::ClusterId modeSelectionClusterId;
|
||||
@@ -327,7 +327,7 @@ namespace UnitTest
|
||||
// Check preconditions
|
||||
PhysX::ColliderComponentModeRequests::SubMode subMode = PhysX::ColliderComponentModeRequests::SubMode::NumModes;
|
||||
PhysX::ColliderComponentModeRequestBus::BroadcastResult(subMode, &PhysX::ColliderComponentModeRequests::GetCurrentMode);
|
||||
EXPECT_EQ(PhysX::ColliderComponentModeRequests::SubMode::Dimensions, subMode);
|
||||
EXPECT_EQ(PhysX::ColliderComponentModeRequests::SubMode::Offset, subMode);
|
||||
|
||||
// Get the cluster and button Ids
|
||||
AzToolsFramework::ViewportUi::ClusterId modeSelectionClusterId;
|
||||
@@ -362,7 +362,7 @@ namespace UnitTest
|
||||
// Check preconditions
|
||||
PhysX::ColliderComponentModeRequests::SubMode subMode = PhysX::ColliderComponentModeRequests::SubMode::NumModes;
|
||||
PhysX::ColliderComponentModeRequestBus::BroadcastResult(subMode, &PhysX::ColliderComponentModeRequests::GetCurrentMode);
|
||||
EXPECT_EQ(PhysX::ColliderComponentModeRequests::SubMode::Dimensions, subMode);
|
||||
EXPECT_EQ(PhysX::ColliderComponentModeRequests::SubMode::Offset, subMode);
|
||||
|
||||
// Get the cluster and button Ids
|
||||
AzToolsFramework::ViewportUi::ClusterId modeSelectionClusterId;
|
||||
|
||||
Reference in New Issue
Block a user