SelectionHelpers.h 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. /*
  2. * Copyright (c) Contributors to the Open 3D Engine Project.
  3. * For complete copyright and license terms please see the LICENSE at the root of this distribution.
  4. *
  5. * SPDX-License-Identifier: Apache-2.0 OR MIT
  6. *
  7. */
  8. #pragma once
  9. namespace SelectionHelpers
  10. {
  11. //-------------------------------------------------------------------------------
  12. void UnmarkAllAndAllTheirChildren(QTreeWidgetItem* baseRootItem);
  13. void MarkOnlyDirectChildrenOf(const QTreeWidgetItemRawPtrQList& parentItems);
  14. bool A_IsParentOf_B(QTreeWidgetItem* A,
  15. QTreeWidgetItem* B);
  16. bool IsMarkedOrParentIsMarked(HierarchyItem* item);
  17. void FindUnmarked(HierarchyItemRawPtrList& results,
  18. const QTreeWidgetItemRawPtrQList& parentItems);
  19. //-------------------------------------------------------------------------------
  20. AZ::Entity* GetTopLevelParentOfElement(const LyShine::EntityArray& elements, AZ::Entity* elementToFind);
  21. void RemoveEntityFromArray(LyShine::EntityArray& listToTrim, const AZ::Entity* entityToRemove);
  22. //-------------------------------------------------------------------------------
  23. void GetListOfTopLevelSelectedItems(const HierarchyWidget* widget,
  24. const QTreeWidgetItemRawPtrQList& selectedItems,
  25. QTreeWidgetItemRawPtrQList& results);
  26. void GetListOfTopLevelSelectedItems(const HierarchyWidget* widget,
  27. const QTreeWidgetItemRawPtrQList& selectedItems,
  28. QTreeWidgetItem* invisibleRootItem,
  29. HierarchyItemRawPtrList& results);
  30. //-------------------------------------------------------------------------------
  31. HierarchyItemRawPtrList GetSelectedHierarchyItems(const HierarchyWidget* widget,
  32. const QTreeWidgetItemRawPtrQList& selectedItems);
  33. LyShine::EntityArray GetSelectedElements(const HierarchyWidget* widget,
  34. const QTreeWidgetItemRawPtrQList& selectedItems);
  35. EntityHelpers::EntityIdList GetSelectedElementIds(const HierarchyWidget* widget,
  36. const QTreeWidgetItemRawPtrQList& selectedItems,
  37. bool addInvalidIdIfEmpty);
  38. LyShine::EntityArray GetTopLevelSelectedElements(const HierarchyWidget* widget,
  39. const QTreeWidgetItemRawPtrQList& selectedItems);
  40. LyShine::EntityArray GetTopLevelSelectedElementsNotControlledByParent(const HierarchyWidget* widget,
  41. const QTreeWidgetItemRawPtrQList& selectedItems);
  42. //-------------------------------------------------------------------------------
  43. } // namespace SelectionHelpers