QComponentEntityEditorOutlinerWindow.h 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  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. #if !defined(Q_MOC_RUN)
  10. #include <QMainWindow>
  11. #include <Legacy/CryCommon/ISystem.h>
  12. #include <AzToolsFramework/Entity/EditorEntityContextBus.h>
  13. #endif
  14. class QObjectPropertyModel;
  15. class PropertyInfo;
  16. namespace AZ
  17. {
  18. class Entity;
  19. }
  20. namespace AzToolsFramework
  21. {
  22. class EntityOutlinerWidget;
  23. }
  24. // This is the shell class to interface between Qt and the Sandbox. All Sandbox implementation is retained in an inherited class.
  25. class QEntityOutlinerWindow
  26. : public QMainWindow
  27. , public ISystemEventListener
  28. {
  29. Q_OBJECT
  30. public:
  31. explicit QEntityOutlinerWindow(QWidget* parent = 0);
  32. ~QEntityOutlinerWindow();
  33. void Init();
  34. // Used to receive events from widgets where SIGNALS aren't available or implemented yet.
  35. // Required override.
  36. void OnSystemEvent(ESystemEvent event, UINT_PTR wparam, UINT_PTR lparam) override;
  37. // you are required to implement this to satisfy the unregister/registerclass requirements on "AzToolsFramework::RegisterViewPane"
  38. // make sure you pick a unique GUID
  39. static const GUID& GetClassID()
  40. {
  41. // {CEE50D0E-46A8-4CB4-9C5F-DCD374A78032}
  42. static const GUID guid =
  43. {
  44. 0xcee50d0e, 0x46a8, 0x4cb4, { 0x9c, 0x5f, 0xdc, 0xd3, 0x74, 0xa7, 0x80, 0x32 }
  45. };
  46. return guid;
  47. }
  48. private:
  49. AzToolsFramework::EntityOutlinerWidget* m_outlinerWidget;
  50. };