1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071 |
- /*
- * 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
- *
- */
- #pragma once
- #include <AzCore/Outcome/Outcome.h>
- #include <AzCore/RTTI/TypeInfoSimple.h>
- #include <AzCore/RTTI/RTTIMacros.h>
- #include <AzCore/std/string/string.h>
- #include <AzToolsFramework/Entity/EntityTypes.h>
- namespace AzToolsFramework
- {
- /*!
- * EditorEntityAPI
- * Handles basic Entity operations
- */
- class EditorEntityAPI
- {
- public:
- AZ_RTTI(EditorEntityAPI, "{3E217E21-046F-462E-8FA2-1347FBDDFDE7}");
- /**
- * Delete all currently-selected entities.
- */
- virtual void DeleteSelected() = 0;
- /**
- * Deletes the specified entity.
- */
- virtual void DeleteEntityById(AZ::EntityId entityId) = 0;
- /**
- * Deletes all specified entities.
- */
- virtual void DeleteEntities(const EntityIdList& entities) = 0;
- /**
- * Deletes the specified entity, as well as any transform descendants.
- */
- virtual void DeleteEntityAndAllDescendants(AZ::EntityId entityId) = 0;
- /**
- * Deletes all entities in the provided list, as well as their transform descendants.
- */
- virtual void DeleteEntitiesAndAllDescendants(const EntityIdList& entities) = 0;
- /**
- * Duplicate all currently-selected entities.
- */
- virtual void DuplicateSelected() = 0;
- /**
- * Duplicates the specified entity.
- */
- virtual void DuplicateEntityById(AZ::EntityId entityId) = 0;
- /**
- * Duplicates all specified entities.
- */
- virtual void DuplicateEntities(const EntityIdList& entities) = 0;
- };
- } // namespace AzToolsFramework
|