* Light refactoring of selection logic. Only draw helpers for selectable entities according to Editor Focus Mode and Container Entity systems.
Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>
* When Escape is pressed, clear the Prefab Focus.
Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>
* Alter Ctrl+A and Ctrl+Shift+I to take editor focus mode and container entity behaviors into account.
Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>
* Remove redundant comments and reduce footprint of tests.
Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>
* Introduce loop protection, as GetParentId is known to loop in some situations possibly causing timeouts.
Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>
* Change SetContainerOpenState to SetContainerOpen.
Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>
* Introduce Clear function to avoid retaining all lingering open states when switching contexts/loading a new level.
Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>
* Minor FocusMode fixture refactors to support ContainerEntity tests
Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>
* Introduce tests for the ContainerEntity API
Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>
* Add include to fix issue with EntityContextId not being defined.
Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>
* Minor comment fixes. Moved environment clear functions to TearDown function of test fixture.
Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>
* Use default editor context id in ContainerEntitySystemComponent
Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>
* Revert previous change as the EditorEntityContextId would not be initialized correctly on ContainerEntitySystemComponent Activate.
Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>
* Setup work for the ContainerEntity SystemComponent and Interface.
Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>
* Introduce Container Entity Notification Bus
Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>
* Introduce a proxy model to control open/closed state of entity containers. Register prefab containers as entity containers. Profit.
Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>
* Add open state to OnContainerEntityStatusChanged notification + improvements to comments.
Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>
* Fix to notification trigger to include new arguments.
Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>
* Fix issue where the Level container would not be expanded correctly. The Level container is now no longer a container entity (since we don't need to be able to close it).
Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>
* Revert the addition of an extra proxy layer (which was causing issues) and just move the container logic to the existing filter.
Fix bug in the dataChanged signal.
Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>
* Fix column count in dataChanged signal to correctly update all column and fix visual glitches.
Limit container registration to the prefab WIP flag so that the changes can be submitted with an opt-in mechanism.
Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>
* Add doubleclick behavior on Outliner items - enters focus mode when double clicking on prefab containers.
Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>
* override sourceModel() to store pointer to avoid dynamic casting at every filterAcceptsRow call.
Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>
* Minor comment fixes and nits
Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>
* Move container selection logic to a helper function in the ContainerEntityInterface to simplify reusing it in the near future.
Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>
* Support lazy initialization for tests (since we do not load a level, the lazy initialization in OnEntityStreamLoadSuccess does not trigger)
Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>