diff --git a/Code/Editor/ActionManager.cpp b/Code/Editor/ActionManager.cpp index 9611e23d87..34191c5b72 100644 --- a/Code/Editor/ActionManager.cpp +++ b/Code/Editor/ActionManager.cpp @@ -385,6 +385,13 @@ void ActionManager::AddAction(int id, QAction* action) AddAction(action); } +void ActionManager::AddAction(AZ::Crc32 id, QAction* action) +{ + action->setData(aznumeric_cast(id)); + AddAction(action); +} + + void ActionManager::AddAction(QAction* action) { const int id = action->data().toInt(); @@ -434,6 +441,15 @@ ActionManager::ActionWrapper ActionManager::AddAction(int id, const QString& nam return ActionWrapper(action, this); } +ActionManager::ActionWrapper ActionManager::AddAction(AZ::Crc32 id, const QString& name) +{ + QAction* action = ActionIsWidget(aznumeric_cast(id)) + ? new WidgetAction(aznumeric_cast(id), m_mainWindow, name, this) + : static_cast(new PatchedAction(name, this)); // static cast to base so ternary compile + AddAction(id, action); + return ActionWrapper(action, this); +} + bool ActionManager::HasAction(QAction* action) const { return action && HasAction(action->data().toInt()); @@ -601,6 +617,11 @@ void ActionManager::AddActionViaBus(int id, QAction* action) AddAction(id, action); } +void ActionManager::AddActionViaBusCrc(AZ::Crc32 id, QAction* action) +{ + AddAction(id, action); +} + void ActionManager::RemoveActionViaBus(QAction* action) { RemoveAction(action); diff --git a/Code/Editor/ActionManager.h b/Code/Editor/ActionManager.h index 49f38ec255..ceea204232 100644 --- a/Code/Editor/ActionManager.h +++ b/Code/Editor/ActionManager.h @@ -300,8 +300,13 @@ public: void AddAction(QAction* action); void AddAction(int id, QAction* action); + void AddAction(AZ::Crc32 id, QAction* action); + void RemoveAction(QAction* action); + ActionWrapper AddAction(int id, const QString& name); + ActionWrapper AddAction(AZ::Crc32, const QString& name); + bool HasAction(QAction*) const; bool HasAction(int id) const; @@ -310,6 +315,7 @@ public: // AzToolsFramework::EditorActionRequests void AddActionViaBus(int id, QAction* action) override; + void AddActionViaBusCrc(AZ::Crc32 id, QAction* action) override; void RemoveActionViaBus(QAction* action) override; void EnableDefaultActions() override; void DisableDefaultActions() override; @@ -413,6 +419,7 @@ protected: void AddAction(int id, QAction* action); ActionManager::ActionWrapper AddAction(int id, const QString& name); + ActionManager::ActionWrapper AddAction(AZ::Crc32 id, const QString& name); void AddSeparator(); void UpdateAllActions(); diff --git a/Code/Editor/Core/LevelEditorMenuHandler.cpp b/Code/Editor/Core/LevelEditorMenuHandler.cpp index 187036f49a..ab1229dc6b 100644 --- a/Code/Editor/Core/LevelEditorMenuHandler.cpp +++ b/Code/Editor/Core/LevelEditorMenuHandler.cpp @@ -1,6 +1,6 @@ /* * Copyright (c) Contributors to the Open 3D Engine Project. For complete copyright and license terms please see the LICENSE at the root of this distribution. - * + * * SPDX-License-Identifier: Apache-2.0 OR MIT * */ @@ -30,6 +30,9 @@ // AzFramework #include +// AzToolsFramework +#include + // AzQtComponents #include @@ -469,51 +472,48 @@ void LevelEditorMenuHandler::PopulateEditMenu(ActionManager::MenuWrapper& editMe // editMenu.AddSeparator(); // Duplicate - editMenu.AddAction(ID_EDIT_CLONE); + editMenu.AddAction(AzToolsFramework::DuplicateSelect); // Delete - editMenu.AddAction(ID_EDIT_DELETE); + editMenu.AddAction(AzToolsFramework::DeleteSelect); editMenu.AddSeparator(); // Select All - editMenu.AddAction(ID_EDIT_SELECTALL); + editMenu.AddAction(AzToolsFramework::SelectAll); // Invert Selection - editMenu.AddAction(ID_EDIT_INVERTSELECTION); + editMenu.AddAction(AzToolsFramework::InvertSelect); editMenu.AddSeparator(); // New Viewport Interaction Model actions/shortcuts - editMenu.AddAction(ID_EDIT_PIVOT); - editMenu.AddAction(ID_EDIT_RESET); - editMenu.AddAction(ID_EDIT_RESET_MANIPULATOR); - editMenu.AddAction(ID_EDIT_RESET_LOCAL); - editMenu.AddAction(ID_EDIT_RESET_WORLD); + editMenu.AddAction(AzToolsFramework::EditPivot); + editMenu.AddAction(AzToolsFramework::EditReset); + editMenu.AddAction(AzToolsFramework::EditResetManipulator); + editMenu.AddAction(AzToolsFramework::EditResetLocal); + editMenu.AddAction(AzToolsFramework::EditResetWorld); // Hide Selection - editMenu.AddAction(ID_EDIT_HIDE); + editMenu.AddAction(AzToolsFramework::HideSelection); // Unhide All - editMenu.AddAction(ID_EDIT_UNHIDEALL); + editMenu.AddAction(AzToolsFramework::ShowAll); /* * The following block of code is part of the feature "Isolation Mode" and is temporarily * disabled for 1.10 release. * Jira: LY-49532 - // Isolate Selected QAction* isolateSelectedAction = editMenu->addAction(tr("Isolate Selected")); connect(isolateSelectedAction, &QAction::triggered, this, []() { AzToolsFramework::ToolsApplicationRequestBus::Broadcast(&AzToolsFramework::ToolsApplicationRequestBus::Events::EnterEditorIsolationMode); }); - // Exit Isolation QAction* exitIsolationAction = editMenu->addAction(tr("Exit Isolation")); connect(exitIsolationAction, &QAction::triggered, this, []() { AzToolsFramework::ToolsApplicationRequestBus::Broadcast(&AzToolsFramework::ToolsApplicationRequestBus::Events::ExitEditorIsolationMode); }); - connect(editMenu, &QMenu::aboutToShow, this, [isolateSelectedAction, exitIsolationAction]() { bool isInIsolationMode = false; AzToolsFramework::ToolsApplicationRequestBus::BroadcastResult(isInIsolationMode, &AzToolsFramework::ToolsApplicationRequestBus::Events::IsEditorInIsolationMode); @@ -528,7 +528,6 @@ void LevelEditorMenuHandler::PopulateEditMenu(ActionManager::MenuWrapper& editMe exitIsolationAction->setDisabled(true); } }); - */ editMenu.AddSeparator(); diff --git a/Code/Editor/CryEdit.cpp b/Code/Editor/CryEdit.cpp index 9e7bd00217..8efd4bc5b3 100644 --- a/Code/Editor/CryEdit.cpp +++ b/Code/Editor/CryEdit.cpp @@ -3406,7 +3406,7 @@ CCryEditDoc* CCryEditApp::OpenDocumentFile(LPCTSTR lpszFileName) if (ActionManager* actionManager = MainWindow::instance()->GetActionManager()) { GetIEditor()->GetUndoManager()->Suspend(); - actionManager->GetAction(ID_EDIT_SELECTALL)->trigger(); + actionManager->GetAction(AzToolsFramework::SelectAll)->trigger(); actionManager->GetAction(ID_GOTO_SELECTED)->trigger(); GetIEditor()->GetUndoManager()->Resume(); } diff --git a/Code/Editor/Resource.h b/Code/Editor/Resource.h index 37a15e3179..22bbece700 100644 --- a/Code/Editor/Resource.h +++ b/Code/Editor/Resource.h @@ -71,8 +71,6 @@ #define IDC_GROUPBOX_GLOBALTAGS 2916 #define IDC_GROUPBOX_FRAGMENTTAGS 2917 #define ID_RESOURCES_REDUCEWORKINGSET 32896 -#define ID_EDIT_HIDE 32898 -#define ID_EDIT_UNHIDEALL 32899 #define ID_RELOAD_TERRAIN 32902 #define ID_VIEW_CONFIGURELAYOUT 32906 #define ID_TOOLS_LOGMEMORYUSAGE 32908 @@ -97,7 +95,6 @@ #define ID_TOOL_LAST 33173 #define ID_TOOL_SHELVE_FIRST 33174 #define ID_TOOL_SHELVE_LAST 33375 -#define ID_EDIT_SELECTALL 33376 #define ID_WIREFRAME 33410 #define ID_FILE_GENERATETERRAINTEXTURE 33445 #define ID_GENERATORS_TEXTURE 33448 @@ -107,7 +104,6 @@ #define ID_FILE_EXPORTTOGAMENOSURFACETEXTURE 33473 #define ID_VIEW_SWITCHTOGAME 33477 #define ID_VIEW_SWITCHTOGAME_FULLSCREEN 33478 -#define ID_EDIT_DELETE 33480 #define ID_MOVE_OBJECT 33481 #define ID_RENAME_OBJ 33483 #define ID_FETCH 33496 @@ -117,7 +113,6 @@ #define ID_SELECTION_DELETE 33512 #define ID_EDIT_ESCAPE 33513 #define ID_UNDO 33524 -#define ID_EDIT_CLONE 33525 #define ID_GOTO_SELECTED 33535 #define ID_EDIT_LEVELDATA 33542 #define ID_FILE_EDITEDITORINI 33543 @@ -185,7 +180,6 @@ #define ID_PANEL_VEG_RENAMECATEGORY 33683 #define ID_PANEL_VEG_REMOVECATEGORY 33684 #define ID_TOOLS_PREFERENCES 33691 -#define ID_EDIT_INVERTSELECTION 33692 #define ID_TOOLTERRAINMODIFY_SMOOTH 33695 #define ID_TERRAINMODIFY_SMOOTH 33696 #define ID_TERRAIN_PAINTLAYERS 33698 @@ -330,11 +324,6 @@ #define ID_DOCUMENTATION_FEEDBACK 36043 #define ID_OPEN_SUBSTANCE_EDITOR 36060 #define ID_IMPORT_ASSET 36069 -#define ID_EDIT_PIVOT 36203 -#define ID_EDIT_RESET 36204 -#define ID_EDIT_RESET_LOCAL 36205 -#define ID_EDIT_RESET_WORLD 36206 -#define ID_EDIT_RESET_MANIPULATOR 36207 #define ID_GAME_PROVO_ENABLELOWSPEC 34603 #define ID_GAME_PROVO_ENABLEMEDIUMSPEC 34604 #define ID_GAME_PROVO_ENABLEHIGHSPEC 34605 diff --git a/Code/Framework/AzToolsFramework/AzToolsFramework/UnitTest/AzToolsFrameworkTestHelpers.cpp b/Code/Framework/AzToolsFramework/AzToolsFramework/UnitTest/AzToolsFrameworkTestHelpers.cpp index f268199a9f..997b89b784 100644 --- a/Code/Framework/AzToolsFramework/AzToolsFramework/UnitTest/AzToolsFrameworkTestHelpers.cpp +++ b/Code/Framework/AzToolsFramework/AzToolsFramework/UnitTest/AzToolsFrameworkTestHelpers.cpp @@ -104,6 +104,18 @@ namespace UnitTest } } + void TestEditorActions::AddActionViaBusCrc(AZ::Crc32 id, QAction* action) + { + AZ_Assert(action, "Attempting to add a null action"); + + if (action) + { + action->setData(aznumeric_cast(id)); + action->setShortcutContext(Qt::ApplicationShortcut); + m_defaultWidget.addAction(action); + } + } + void TestEditorActions::RemoveActionViaBus(QAction* action) { AZ_Assert(action, "Attempting to remove a null action"); diff --git a/Code/Framework/AzToolsFramework/AzToolsFramework/UnitTest/AzToolsFrameworkTestHelpers.h b/Code/Framework/AzToolsFramework/AzToolsFramework/UnitTest/AzToolsFrameworkTestHelpers.h index e6ea5642f1..5317324a29 100644 --- a/Code/Framework/AzToolsFramework/AzToolsFramework/UnitTest/AzToolsFrameworkTestHelpers.h +++ b/Code/Framework/AzToolsFramework/AzToolsFramework/UnitTest/AzToolsFrameworkTestHelpers.h @@ -86,6 +86,7 @@ namespace UnitTest { // EditorActionRequestBus ... void AddActionViaBus(int id, QAction* action) override; + void AddActionViaBusCrc(AZ::Crc32 id, QAction* action) override; void RemoveActionViaBus(QAction* action) override; void EnableDefaultActions() override; void DisableDefaultActions() override; diff --git a/Code/Framework/AzToolsFramework/AzToolsFramework/Viewport/ActionBus.h b/Code/Framework/AzToolsFramework/AzToolsFramework/Viewport/ActionBus.h index a6aa7c30d6..d9bf0c40b9 100644 --- a/Code/Framework/AzToolsFramework/AzToolsFramework/Viewport/ActionBus.h +++ b/Code/Framework/AzToolsFramework/AzToolsFramework/Viewport/ActionBus.h @@ -150,6 +150,8 @@ namespace AzToolsFramework /// Allow default actions to be added to the Action Manager via a Bus call. virtual void AddActionViaBus(int id, QAction* action) = 0; + /// Allow default actions to be added to the Action Manager via a Bus call and using the CRC id method. + virtual void AddActionViaBusCrc(AZ::Crc32 id, QAction* action) = 0; /// Remove default actions added to the Action Manager via a Bus Call. virtual void RemoveActionViaBus(QAction* action) = 0; /// Enable all default actions that are active during the normal Editor state. diff --git a/Code/Framework/AzToolsFramework/AzToolsFramework/ViewportSelection/EditorTransformComponentSelection.cpp b/Code/Framework/AzToolsFramework/AzToolsFramework/ViewportSelection/EditorTransformComponentSelection.cpp index 8f46fd90cb..ccaf33ed87 100644 --- a/Code/Framework/AzToolsFramework/AzToolsFramework/ViewportSelection/EditorTransformComponentSelection.cpp +++ b/Code/Framework/AzToolsFramework/AzToolsFramework/ViewportSelection/EditorTransformComponentSelection.cpp @@ -1,6 +1,6 @@ /* * Copyright (c) Contributors to the Open 3D Engine Project. For complete copyright and license terms please see the LICENSE at the root of this distribution. - * + * * SPDX-License-Identifier: Apache-2.0 OR MIT * */ @@ -2018,7 +2018,7 @@ namespace AzToolsFramework static void AddAction( AZStd::vector>& actions, const QList& keySequences, - int actionId, + AZ::Crc32 actionId, const QString& name, const QString& statusTip, const T& callback) @@ -2033,7 +2033,7 @@ namespace AzToolsFramework QObject::connect(actions.back().get(), &QAction::triggered, actions.back().get(), callback); - EditorActionRequestBus::Broadcast(&EditorActionRequests::AddActionViaBus, actionId, actions.back().get()); + EditorActionRequestBus::Broadcast(&EditorActionRequests::AddActionViaBusCrc, actionId, actions.back().get()); } void EditorTransformComponentSelection::OnEscape() @@ -2081,8 +2081,6 @@ namespace AzToolsFramework { AZ_PROFILE_FUNCTION(AZ::Debug::ProfileCategory::AzToolsFramework); - // note: see Code/Editor/Resource.h for ID_EDIT_ ids - const auto lockUnlock = [this](const bool lock) { AZ_PROFILE_FUNCTION(AZ::Debug::ProfileCategory::AzToolsFramework); @@ -2107,8 +2105,7 @@ namespace AzToolsFramework // lock selection AddAction( - m_actions, { QKeySequence(Qt::Key_L) }, - /*ID_EDIT_FREEZE =*/32900, s_lockSelectionTitle, s_lockSelectionDesc, + m_actions, { QKeySequence(Qt::Key_L) }, LockSelection, s_lockSelectionTitle, s_lockSelectionDesc, [lockUnlock]() { lockUnlock(true); @@ -2116,8 +2113,7 @@ namespace AzToolsFramework // unlock selection AddAction( - m_actions, { QKeySequence(Qt::CTRL + Qt::Key_L) }, - /*ID_EDIT_UNFREEZE =*/32973, s_lockSelectionTitle, s_lockSelectionDesc, + m_actions, { QKeySequence(Qt::CTRL + Qt::Key_L) }, UnlockSelection, s_lockSelectionTitle, s_lockSelectionDesc, [lockUnlock]() { lockUnlock(false); @@ -2147,8 +2143,7 @@ namespace AzToolsFramework // hide selection AddAction( - m_actions, { QKeySequence(Qt::Key_H) }, - /*ID_EDIT_HIDE =*/32898, s_hideSelectionTitle, s_hideSelectionDesc, + m_actions, { QKeySequence(Qt::Key_H) }, HideSelection, s_hideSelectionTitle, s_hideSelectionDesc, [showHide]() { showHide(false); @@ -2156,8 +2151,7 @@ namespace AzToolsFramework // show selection AddAction( - m_actions, { QKeySequence(Qt::CTRL + Qt::Key_H) }, - /*ID_EDIT_UNHIDE =*/32974, s_hideSelectionTitle, s_hideSelectionDesc, + m_actions, { QKeySequence(Qt::CTRL + Qt::Key_H) }, ShowSelection, s_hideSelectionTitle, s_hideSelectionDesc, [showHide]() { showHide(true); @@ -2165,8 +2159,7 @@ namespace AzToolsFramework // unlock all entities in the level/scene AddAction( - m_actions, { QKeySequence(Qt::CTRL + Qt::SHIFT + Qt::Key_L) }, - /*ID_EDIT_UNFREEZEALL =*/32901, s_unlockAllTitle, s_unlockAllDesc, + m_actions, { QKeySequence(Qt::CTRL + Qt::SHIFT + Qt::Key_L) }, UnlockAll, s_unlockAllTitle, s_unlockAllDesc, []() { AZ_PROFILE_FUNCTION(AZ::Debug::ProfileCategory::AzToolsFramework); @@ -2183,8 +2176,7 @@ namespace AzToolsFramework // show all entities in the level/scene AddAction( - m_actions, { QKeySequence(Qt::CTRL + Qt::SHIFT + Qt::Key_H) }, - /*ID_EDIT_UNHIDEALL =*/32899, s_showAllTitle, s_showAllDesc, + m_actions, { QKeySequence(Qt::CTRL + Qt::SHIFT + Qt::Key_H) }, ShowAll, s_showAllTitle, s_showAllDesc, []() { AZ_PROFILE_FUNCTION(AZ::Debug::ProfileCategory::AzToolsFramework); @@ -2201,8 +2193,7 @@ namespace AzToolsFramework // select all entities in the level/scene AddAction( - m_actions, { QKeySequence(Qt::CTRL + Qt::Key_A) }, - /*ID_EDIT_SELECTALL =*/33376, s_selectAllTitle, s_selectAllDesc, + m_actions, { QKeySequence(Qt::CTRL + Qt::Key_A) }, SelectAll, s_selectAllTitle, s_selectAllDesc, [this]() { AZ_PROFILE_FUNCTION(AZ::Debug::ProfileCategory::AzToolsFramework); @@ -2242,8 +2233,7 @@ namespace AzToolsFramework // invert current selection AddAction( - m_actions, { QKeySequence(Qt::CTRL + Qt::SHIFT + Qt::Key_I) }, - /*ID_EDIT_INVERTSELECTION =*/33692, s_invertSelectionTitle, s_invertSelectionDesc, + m_actions, { QKeySequence(Qt::CTRL + Qt::SHIFT + Qt::Key_I) }, InvertSelect, s_invertSelectionTitle, s_invertSelectionDesc, [this]() { AZ_PROFILE_FUNCTION(AZ::Debug::ProfileCategory::AzToolsFramework); @@ -2290,8 +2280,7 @@ namespace AzToolsFramework // duplicate selection AddAction( - m_actions, { QKeySequence(Qt::CTRL + Qt::Key_D) }, - /*ID_EDIT_CLONE =*/33525, s_duplicateTitle, s_duplicateDesc, + m_actions, { QKeySequence(Qt::CTRL + Qt::Key_D) }, DuplicateSelect, s_duplicateTitle, s_duplicateDesc, []() { AZ_PROFILE_FUNCTION(AZ::Debug::ProfileCategory::AzToolsFramework); @@ -2316,8 +2305,7 @@ namespace AzToolsFramework // delete selection AddAction( - m_actions, { QKeySequence(Qt::Key_Delete) }, - /*ID_EDIT_DELETE=*/33480, s_deleteTitle, s_deleteDesc, + m_actions, { QKeySequence(Qt::Key_Delete) }, DeleteSelect, s_deleteTitle, s_deleteDesc, [this]() { AZ_PROFILE_FUNCTION(AZ::Debug::ProfileCategory::AzToolsFramework); @@ -2334,24 +2322,21 @@ namespace AzToolsFramework }); AddAction( - m_actions, { QKeySequence(Qt::Key_Space) }, - /*ID_EDIT_ESCAPE=*/33513, "", "", + m_actions, { QKeySequence(Qt::Key_Space) }, EditEscaspe, "", "", [this]() { DeselectEntities(); }); AddAction( - m_actions, { QKeySequence(Qt::Key_P) }, - /*ID_EDIT_PIVOT=*/36203, s_togglePivotTitleEditMenu, s_togglePivotDesc, + m_actions, { QKeySequence(Qt::Key_P) }, EditPivot, s_togglePivotTitleEditMenu, s_togglePivotDesc, [this]() { ToggleCenterPivotSelection(); }); AddAction( - m_actions, { QKeySequence(Qt::Key_R) }, - /*ID_EDIT_RESET=*/36204, s_resetEntityTransformTitle, s_resetEntityTransformDesc, + m_actions, { QKeySequence(Qt::Key_R) }, EditReset, s_resetEntityTransformTitle, s_resetEntityTransformDesc, [this]() { switch (m_mode) @@ -2369,13 +2354,11 @@ namespace AzToolsFramework }); AddAction( - m_actions, { QKeySequence(Qt::CTRL + Qt::Key_R) }, - /*ID_EDIT_RESET_MANIPULATOR=*/36207, s_resetManipulatorTitle, s_resetManipulatorDesc, + m_actions, { QKeySequence(Qt::CTRL + Qt::Key_R) }, EditResetManipulator, s_resetManipulatorTitle, s_resetManipulatorDesc, AZStd::bind(AZStd::mem_fn(&EditorTransformComponentSelection::DelegateClearManipulatorOverride), this)); AddAction( - m_actions, { QKeySequence(Qt::ALT + Qt::Key_R) }, - /*ID_EDIT_RESET_LOCAL=*/36205, s_resetTransformLocalTitle, s_resetTransformLocalDesc, + m_actions, { QKeySequence(Qt::ALT + Qt::Key_R) }, EditResetLocal, s_resetTransformLocalTitle, s_resetTransformLocalDesc, [this]() { switch (m_mode) @@ -2393,8 +2376,7 @@ namespace AzToolsFramework }); AddAction( - m_actions, { QKeySequence(Qt::SHIFT + Qt::Key_R) }, - /*ID_EDIT_RESET_WORLD=*/36206, s_resetTransformWorldTitle, s_resetTransformWorldDesc, + m_actions, { QKeySequence(Qt::SHIFT + Qt::Key_R) }, EditResetWorld, s_resetTransformWorldTitle, s_resetTransformWorldDesc, [this]() { switch (m_mode) @@ -2415,8 +2397,7 @@ namespace AzToolsFramework }); AddAction( - m_actions, { QKeySequence(Qt::Key_U) }, - /*ID_VIEWPORTUI_VISIBLE=*/50040, "Toggle Viewport UI", "Hide/Show Viewport UI", + m_actions, { QKeySequence(Qt::Key_U) }, ViewportUiVisible, "Toggle Viewport UI", "Hide/Show Viewport UI", [this]() { SetAllViewportUiVisible(!m_viewportUiVisible); diff --git a/Code/Framework/AzToolsFramework/AzToolsFramework/ViewportSelection/EditorTransformComponentSelectionRequestBus.h b/Code/Framework/AzToolsFramework/AzToolsFramework/ViewportSelection/EditorTransformComponentSelectionRequestBus.h index ecfedd61cc..51ed5750b6 100644 --- a/Code/Framework/AzToolsFramework/AzToolsFramework/ViewportSelection/EditorTransformComponentSelectionRequestBus.h +++ b/Code/Framework/AzToolsFramework/AzToolsFramework/ViewportSelection/EditorTransformComponentSelectionRequestBus.h @@ -13,6 +13,28 @@ namespace AzToolsFramework { + //! @name Reverse URLs. + //! Used to identify common actions and override them when necessary. + //@{ + constexpr inline AZ::Crc32 LockSelection = AZ_CRC_CE("com.o3de.action.editortransform.lockselect"); + constexpr inline AZ::Crc32 UnlockSelection = AZ_CRC_CE("com.o3de.action.editortransform.unlockselect"); + constexpr inline AZ::Crc32 HideSelection = AZ_CRC_CE("com.o3de.action.editortransform.hideselect"); + constexpr inline AZ::Crc32 ShowSelection = AZ_CRC_CE("com.o3de.action.editortransform.showselect"); + constexpr inline AZ::Crc32 UnlockAll = AZ_CRC_CE("com.o3de.action.editortransform.unlockall"); + constexpr inline AZ::Crc32 ShowAll = AZ_CRC_CE("com.o3de.action.editortransform.unhideall"); + constexpr inline AZ::Crc32 SelectAll = AZ_CRC_CE("com.o3de.action.editortransform.selectall"); + constexpr inline AZ::Crc32 InvertSelect = AZ_CRC_CE("com.o3de.action.editortransform.invertselect"); + constexpr inline AZ::Crc32 DuplicateSelect = AZ_CRC_CE("com.o3de.action.editortransform.duplicateselect"); + constexpr inline AZ::Crc32 DeleteSelect = AZ_CRC_CE("com.o3de.action.editortransform.deleteselect"); + constexpr inline AZ::Crc32 EditEscaspe = AZ_CRC_CE("com.o3de.action.editortransform.editescape"); + constexpr inline AZ::Crc32 EditPivot = AZ_CRC_CE("com.o3de.action.editortransform.editpivot"); + constexpr inline AZ::Crc32 EditReset = AZ_CRC_CE("com.o3de.action.editortransform.editreset"); + constexpr inline AZ::Crc32 EditResetManipulator = AZ_CRC_CE("com.o3de.action.editortransform.editresetmanipulator"); + constexpr inline AZ::Crc32 EditResetLocal = AZ_CRC_CE("com.o3de.action.editortransform.editresetlocal"); + constexpr inline AZ::Crc32 EditResetWorld = AZ_CRC_CE("com.o3de.action.editortransform.editresetworld"); + constexpr inline AZ::Crc32 ViewportUiVisible = AZ_CRC_CE("com.o3de.action.editortransform.viewportuivisible"); + //@} + //! Provide interface for EditorTransformComponentSelection requests. class EditorTransformComponentSelectionRequests : public AZ::EBusTraits {