Open 3D Engine EMotionFX Gem API Reference 23.10.0
O3DE is an open-source, fully-featured, high-fidelity, modular 3D engine for building games and simulations, available to every industry.
EMStudio::NodeGraphWidget Class Reference

Inherits QOpenGLWidget, and QOpenGLFunctions.

Inherited by EMStudio::BlendGraphWidget.

Signals

void ActiveGraphChanged ()
 

Public Member Functions

 NodeGraphWidget (AnimGraphPlugin *plugin, NodeGraph *activeGraph=nullptr, QWidget *parent=nullptr)
 
AnimGraphPluginGetPlugin ()
 
void SetActiveGraph (NodeGraph *graph)
 
NodeGraphGetActiveGraph () const
 
MCORE_INLINE const QPoint & GetMousePos () const
 
MCORE_INLINE void SetMousePos (const QPoint &pos)
 
MCORE_INLINE void SetShowFPS (bool showFPS)
 
size_t CalcNumSelectedNodes () const
 
QPoint LocalToGlobal (const QPoint &inPoint) const
 
QPoint GlobalToLocal (const QPoint &inPoint) const
 
QPoint SnapLocalToGrid (const QPoint &inPoint) const
 
void CalcSelectRect (QRect &outRect)
 
virtual bool PreparePainting ()
 
virtual bool CheckIfIsCreateConnectionValid (AZ::u16 portNr, GraphNode *portNode, NodePort *port, bool isInputPort)
 
virtual bool CheckIfIsValidTransition (GraphNode *sourceState, GraphNode *targetState)
 
virtual bool CheckIfIsValidTransitionSource (GraphNode *sourceState)
 
virtual bool CreateConnectionMustBeCurved ()
 
virtual bool CreateConnectionShowsHelpers ()
 
virtual void OnDrawOverlay (QPainter &painter)
 
virtual void OnMoveStart ()
 
virtual void OnMoveNode (GraphNode *node, int32 x, int32 y)
 
virtual void OnMoveEnd ()
 
virtual void OnCreateConnection (AZ::u16 sourcePortNr, GraphNode *sourceNode, bool sourceIsInputPort, AZ::u16 targetPortNr, GraphNode *targetNode, bool targetIsInputPort, const QPoint &startOffset, const QPoint &endOffset)
 
virtual void OnNodeCollapsed (GraphNode *node, bool isCollapsed)
 
virtual void OnShiftClickedNode (GraphNode *node)
 
virtual void OnVisualizeToggle (GraphNode *node, bool visualizeEnabled)
 
virtual void OnEnabledToggle (GraphNode *node, bool enabled)
 
virtual void OnSetupVisualizeOptions (GraphNode *node)
 
virtual void ReplaceTransition (NodeConnection *connection, QPoint oldStartOffset, QPoint oldEndOffset, GraphNode *oldSourceNode, GraphNode *oldTargetNode, GraphNode *newSourceNode, GraphNode *newTargetNode)
 
void EnableBorderOverwrite (const QColor &borderColor, float borderWidth)
 
void DisableBorderOverwrite ()
 
const QString & GetTitleBarText () const
 
void SetTitleBarText (const QString &text)
 

Static Public Attributes

static constexpr uint32 s_snapCellSize = 10
 

Protected Member Functions

void mouseMoveEvent (QMouseEvent *event) override
 
void mousePressEvent (QMouseEvent *event) override
 
void mouseDoubleClickEvent (QMouseEvent *event) override
 
void mouseReleaseEvent (QMouseEvent *event) override
 
void wheelEvent (QWheelEvent *event) override
 
void resizeEvent (QResizeEvent *event) override
 
void keyPressEvent (QKeyEvent *event) override
 
void keyReleaseEvent (QKeyEvent *event) override
 
void focusInEvent (QFocusEvent *event) override
 
void focusOutEvent (QFocusEvent *event) override
 
void initializeGL () override
 
void paintGL () override
 
void resizeGL (int w, int h) override
 
GraphNodeUpdateMouseCursor (const QPoint &localMousePos, const QPoint &globalMousePos)
 
void SelectNodesInGroup (EMotionFX::AnimGraphNodeGroup *nodeGroup)
 

Protected Attributes

AnimGraphPluginm_plugin
 
bool m_showFps
 
QPoint m_mousePos
 
QPoint m_mouseLastPos
 
QPoint m_mouseLastPressPos
 
QPoint m_selectStart
 
QPoint m_selectEnd
 
int m_prevWidth
 
int m_prevHeight
 
int m_curWidth
 
int m_curHeight
 
GraphNodem_moveNode
 
NodeGraphm_activeGraph = nullptr
 
QFont m_font
 
QFontMetrics * m_fontMetrics
 
AZ::Debug::Timer m_renderTimer
 
AZStd::string m_tempString
 
AZStd::string m_fullActorName
 
AZStd::string m_actorName
 
bool m_allowContextMenu
 
bool m_leftMousePressed
 
bool m_middleMousePressed
 
bool m_rightMousePressed
 
bool m_panning
 
bool m_rectSelecting
 
bool m_shiftPressed
 
bool m_controlPressed
 
bool m_altPressed
 
bool m_borderOverwrite = false
 
QColor m_borderOverwriteColor
 
float m_borderOverwriteWidth
 
QString m_titleBarText
 

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