Open 3D Engine EMotionFX 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.
EMStudio::TimeViewPlugin Class Reference

Inherits EMStudio::DockWidgetPlugin, and EMotionFX::AnimGraphEditorNotificationBus::Handler.

Public Types

enum  { CLASS_ID = 0x00fab009 }
 
- Public Types inherited from EMStudio::EMStudioPlugin
enum  EPluginType { PLUGINTYPE_WINDOW = 0 , PLUGINTYPE_TOOLBAR = 1 , PLUGINTYPE_RENDERING = 2 }
 

Public Slots

void ReInit ()
 
void VisibilityChanged (bool visible)
 
void OnSelectionChanged ()
 
void MotionSelectionChanged ()
 
void AddMotionEvent (int32 x, int32 y)
 
void RemoveMotionEvent (int32 x, int32 y)
 
void MotionEventChanged (TimeTrackElement *element, double startTime, double endTime)
 
void RemoveSelectedMotionEvents ()
 
void RemoveAllMotionEvents ()
 
void OnZoomAll ()
 
void OnGotoTimeZero ()
 
void OnResetTimeline ()
 
void OnCenterOnCurTime ()
 
void OnShowNodeHistoryNodeInGraph ()
 
void OnClickNodeHistoryNode ()
 
void MotionEventTrackChanged (size_t eventNr, float startTime, float endTime, const char *oldTrackName, const char *newTrackName)
 
void OnManualTimeChange (float timeValue)
 
void toggleMotionEventPresetsPane ()
 

Signals

void SelectionChanged ()
 
void DeleteKeyPressed ()
 
void ManualTimeChangeStart (float newTime)
 
void ManualTimeChange (float newTime)
 
void DoubleClickedRecorderNodeHistoryItem (EMotionFX::Recorder::ActorInstanceData *actorInstanceData, EMotionFX::Recorder::NodeHistoryItem *item)
 
void ClickedRecorderNodeHistoryItem (EMotionFX::Recorder::ActorInstanceData *actorInstanceData, EMotionFX::Recorder::NodeHistoryItem *item)
 
void RecorderStateChanged ()
 

Public Member Functions

const char * GetName () const override
 
void Reflect (AZ::ReflectContext *context) override
 
uint32 GetClassID () const override
 
bool GetIsClosable () const override
 
bool GetIsFloatable () const override
 
bool GetIsVertical () const override
 
bool Init () override
 
EMStudioPluginClone () const override
 
void ProcessFrame (float timePassedInSeconds) override
 
void SetMode (TimeViewMode mode)
 
TimeViewMode GetMode () const
 
double GetScrollX () const
 
void DeltaScrollX (double deltaX, bool animate=true)
 
void SetScrollX (double scrollX, bool animate=true)
 
void CalcTime (double xPixel, double *outPixelTime, uint32 *outMinutes, uint32 *outSeconds, uint32 *outMilSecs, uint32 *outFrameNr, bool scaleXPixel=true) const
 
void DecomposeTime (double timeValue, uint32 *outMinutes, uint32 *outSeconds, uint32 *outMilSecs, uint32 *outFrameNr) const
 
double PixelToTime (double xPixel, bool isScaledPixel=true) const
 
double TimeToPixel (double timeInSeconds, bool scale=true) const
 
double GetCurrentTime () const
 
void SetCurrentTime (double timeInSeconds)
 
void UpdateVisualData ()
 
bool SnapTime (double *inOutTime, TimeTrackElement *elementToIgnore, double snapThreshold)
 
void ZoomToFit ()
 
void GetDataTimes (double *outMaxTime, double *outClipStart, double *outClipEnd) const
 
double CalcFitScale (double minScale=1.0, double maxScale=100.0) const
 
void MakeTimeVisible (double timeValue, double offsetFactor=0.95, bool animate=true)
 
bool GetIsTimeVisible (double timeValue) const
 
float GetTimeScale () const
 
void RenderElementTimeHandles (QPainter &painter, uint32 dataWindowHeight, const QPen &pen)
 
void DisableAllToolTips ()
 
void AddTrack (TimeTrack *track)
 
void RemoveAllTracks ()
 
TimeTrackGetTrack (size_t index)
 
size_t GetNumTracks () const
 
AZ::Outcome< size_t > FindTrackIndex (const TimeTrack *track) const
 
TimeTrackFindTrackByElement (TimeTrackElement *element) const
 
void UnselectAllElements ()
 
double RoundDouble (double x) const
 
TimeTrackElementGetElementAt (int32 x, int32 y)
 
TimeTrackGetTrackAt (int32 y)
 
void UpdateViewSettings ()
 
void SetScale (double scale, bool animate=true)
 
bool FindResizePoint (int32 x, int32 y, TimeTrackElement **outElement, uint32 *outID)
 
QCursor * GetZoomInCursor () const
 
QCursor * GetZoomOutCursor () const
 
TrackDataHeaderWidgetGetTrackDataHeaderWidget ()
 
TrackDataWidgetGetTrackDataWidget ()
 
TrackHeaderWidgetGetTrackHeaderWidget ()
 
TimeInfoWidgetGetTimeInfoWidget ()
 
TimeViewToolBarGetTimeViewToolBar ()
 
void OnKeyPressEvent (QKeyEvent *event)
 
void OnKeyReleaseEvent (QKeyEvent *event)
 
void ValidatePluginLinks ()
 
void UpdateSelection ()
 
void UpdateMaxHeight ()
 
void ZoomRect (const QRect &rect)
 
size_t GetNumSelectedEvents ()
 
EventSelectionItem GetSelectedEvent (size_t index) const
 
void Select (const AZStd::vector< EventSelectionItem > &selection)
 
MCORE_INLINE EMotionFX::MotionGetMotion () const
 
void SetRedrawFlag ()
 
uint32 CalcContentHeight () const
 
bool CheckIfMotionEventPresetReadyToDrop ()
 
void OnEventPresetDroppedOnTrackData (QPoint mousePos)
 
- Public Member Functions inherited from EMStudio::DockWidgetPlugin
EMStudioPlugin::EPluginType GetPluginType () const override
 
void OnMainWindowClosed () override
 
virtual bool GetIsMovable () const
 
virtual void SetInterfaceTitle (const char *name)
 
void CreateBaseInterface (const char *objectName) override
 
QString GetObjectName () const override
 
void SetObjectName (const QString &name) override
 
virtual QSize GetInitialWindowSize () const
 
bool GetHasWindowWithObjectName (const AZStd::string &objectName) override
 
QDockWidget * GetDockWidget ()
 
- Public Member Functions inherited from EMStudio::EMStudioPlugin
virtual void OnAfterLoadLayout ()
 
virtual void OnAfterLoadProject ()
 
virtual void OnAfterLoadActors ()
 
virtual void OnBeforeRemovePlugin (uint32 classID)
 
virtual void Render (EMotionFX::ActorRenderFlags renderFlags)
 Render function will call atom auxGeom internally to render. This is the replacement for LegacyRender function.
 
virtual PluginOptionsGetOptions ()
 
virtual void WriteLayoutData (MCore::MemoryFile &outFile)
 
virtual bool ReadLayoutSettings (QFile &file, uint32 dataSize, uint32 dataVersion)
 
virtual uint32 GetLayoutDataVersion () const
 
virtual uint32 GetProcessFramePriority () const
 
bool operator< (const EMStudioPlugin &plugin)
 
bool operator> (const EMStudioPlugin &plugin)
 
virtual bool AllowMultipleInstances () const
 
virtual void AddWindowMenuEntries ([[maybe_unused]] QMenu *parent)
 

Friends

class TrackDataHeaderWidget
 
class TrackDataWidget
 
class TimeViewWidget
 
class TimeViewToolBar
 
class TimeInfoWidget
 
class TrackHeaderWidget
 

Additional Inherited Members

- Protected Member Functions inherited from EMStudio::DockWidgetPlugin
QWidget * CreateErrorContentWidget (const char *errorMessage) const
 
- Protected Attributes inherited from EMStudio::DockWidgetPlugin
QPointer< QDockWidget > m_dock
 

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