Open 3D Engine GraphModel Gem API Reference  24.09
O3DE is an open-source, fully-featured, high-fidelity, modular 3D engine for building games and simulations, available to every industry.
GraphModelIntegration::EditorMainWindow Class Referenceabstract

#include <EditorMainWindow.h>

Inherits GraphCanvas::AssetEditorMainWindow, and GraphControllerNotificationBus::MultiHandler.

Public Member Functions

 EditorMainWindow (GraphCanvas::AssetEditorWindowConfig *config, QWidget *parent=nullptr)
 

Protected Member Functions

virtual GraphModel::GraphContextPtr GetGraphContext () const =0
 
GraphModel::GraphPtr GetGraphById (GraphCanvas::GraphId graphId) const
 Helper method for retrieving the graph associated with a graphId.
 
GraphCanvas::GraphId GetGraphId (GraphModel::GraphPtr graph) const
 Helper method for retrieving the graphId associated with a graph.
 
void OnEditorOpened (GraphCanvas::EditorDockWidget *dockWidget) override
 
void OnEditorClosing (GraphCanvas::EditorDockWidget *dockWidget) override
 
void OnWrapperNodeActionWidgetClicked (const AZ::EntityId &wrapperNode, const QRect &actionWidgetBoundingRect, const QPointF &scenePoint, const QPoint &screenPoint) override
 
virtual void HandleWrapperNodeActionWidgetClicked (GraphModel::NodePtr wrapperNode, [[maybe_unused]] const QRect &actionWidgetBoundingRect, [[maybe_unused]] const QPointF &scenePoint, [[maybe_unused]] const QPoint &screenPoint)
 

Protected Attributes

AZStd::unordered_map< GraphCanvas::GraphId, GraphModel::GraphPtr > m_graphs
 

Detailed Description

This class extends the base GraphCanvas windowing framework to integrate GraphModel functionality into the generic windowing framework.

Member Function Documentation

◆ GetGraphContext()

virtual GraphModel::GraphContextPtr GraphModelIntegration::EditorMainWindow::GetGraphContext ( ) const
protectedpure virtual

Subclasses must implement this method so that this class can create graphs on their behalf.

◆ HandleWrapperNodeActionWidgetClicked()

virtual void GraphModelIntegration::EditorMainWindow::HandleWrapperNodeActionWidgetClicked ( GraphModel::NodePtr  wrapperNode,
[[maybe_unused] ] const QRect &  actionWidgetBoundingRect,
[[maybe_unused] ] const QPointF &  scenePoint,
[[maybe_unused] ] const QPoint &  screenPoint 
)
inlineprotectedvirtual

Client can override this to handle click events on a wrapper node's action widget using a GraphModel::NodePtr instead of the lower-level GraphCanvas::NodeId

Member Data Documentation

◆ m_graphs

AZStd::unordered_map<GraphCanvas::GraphId, GraphModel::GraphPtr> GraphModelIntegration::EditorMainWindow::m_graphs
protected

Keep track of the graphs we create on behalf of the client when new editor dock widgets are created.


The documentation for this class was generated from the following file: