Integrating up through commit 90f050496

This commit is contained in:
alexpete
2021-04-07 14:03:29 -07:00
parent 8f2ed080a9
commit c2cbd430fe
2694 changed files with 285622 additions and 176874 deletions
@@ -0,0 +1,58 @@
/*
* All or portions of this file Copyright (c) Amazon.com, Inc. or its affiliates or
* its licensors.
*
* For complete copyright and license terms please see the LICENSE at the root of this
* distribution (the "License"). All use of this software is governed by the License,
* or, if provided, by the license below or the license accompanying this file. Do not
* remove or modify any license notices. This file is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
*
*/
#pragma once
#include <AzCore/Interface/Interface.h>
#include <AzCore/Serialization/SerializeContext.h>
namespace AzToolsFramework
{
using EntityIdList = AZStd::vector<AZ::EntityId>;
/*!
* 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;
};
} // namespace AzToolsFramework
@@ -588,13 +588,6 @@ namespace AzToolsFramework
*/
virtual const char* GetEngineVersion() const = 0;
/**
* Retrieves if Legacy Slice System is enabled
*/
virtual bool IsLegacySliceSystemEnabled() const = 0;
virtual bool ShouldAssertForLegacySlicesUsage() const = 0;
/**
* Creates and adds a new entity to the tools application from components which match at least one of the requiredTags
* The tag matching occurs on AZ::Edit::SystemComponentTags attribute from the reflected class data in the serialization context