WrapperMock.h 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  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. #include <GraphCanvas/Components/SceneBus.h>
  10. #include <ScriptCanvas/Bus/EditorScriptCanvasBus.h>
  11. #include <Editor/Include/ScriptCanvas/Bus/EditorScriptCanvasBus.h>
  12. #include <Editor/Include/ScriptCanvas/GraphCanvas/NodeDescriptorBus.h>
  13. #include <ScriptCanvasDeveloperEditor/Mock.h>
  14. #include <ScriptCanvasDeveloperEditor/MockBus.h>
  15. namespace ScriptCanvas::Developer
  16. {
  17. namespace Nodes
  18. {
  19. class WrapperMock
  20. : public Mock
  21. , public ScriptCanvasEditor::ScriptCanvasWrapperNodeDescriptorRequestBus::Handler
  22. , public MockDescriptorNotificationBus::MultiHandler
  23. , public GraphCanvas::SceneNotificationBus::Handler
  24. {
  25. public:
  26. AZ_COMPONENT(WrapperMock, "{14C6CE68-906A-4D2F-89BA-153774CE8015}", Mock);
  27. static void Reflect(AZ::ReflectContext* context);
  28. WrapperMock();
  29. ~WrapperMock() = default;
  30. // ScriptCanvasWrapperNodeDescriptorRequestBus
  31. void OnWrapperAction(const QRect& actionWidgetBoundingRect, const QPointF& scenePoint, const QPoint& screenPoint) override;
  32. ////
  33. // MockDescriptorNotificationBus
  34. void OnGraphCanvasNodeSetup(const GraphCanvas::NodeId& graphCanvasNodeId) override;
  35. ////
  36. // GraphCanvas::NodeNotificationBus
  37. void OnNodeRemoved(const GraphCanvas::NodeId& nodeId) override;
  38. ////
  39. protected:
  40. void OnActionNameChanged();
  41. void OnClear() override;
  42. void OnNodeDisplayed(const GraphCanvas::NodeId& graphCanvasNodeId) override;
  43. private:
  44. AZStd::string m_actionName;
  45. AZStd::vector< AZ::EntityId > m_wrappedNodeIds;
  46. AZStd::unordered_map< GraphCanvas::NodeId, AZ::EntityId > m_graphCanvasMapping;
  47. };
  48. }
  49. }