3#include <Engine/Scene/ItemEntry.hpp>
4#include <Gui/RaGui.hpp>
9class SkeletonBasedAnimationUI;
17class SkeletonBasedAnimationSystem;
18class SkeletonComponent;
19class SkinningComponent;
25class SelectionManager;
28class RA_GUI_API SkeletonBasedAnimationUI :
public QFrame
38 explicit SkeletonBasedAnimationUI( Engine::Scene::SkeletonBasedAnimationSystem* system,
39 Timeline* timeline =
nullptr,
40 QWidget* parent =
nullptr );
42 ~SkeletonBasedAnimationUI();
48 QAction* getAction(
int i );
51 void postLoadFile( Engine::Scene::Entity* entity );
57 void selectionChanged(
const Engine::Scene::ItemEntry& ent );
64 void on_actionXray_triggered(
bool checked );
67 void on_m_speed_valueChanged(
double arg1 );
70 void on_m_pingPong_toggled(
bool checked );
73 void on_m_autoRepeat_toggled(
bool checked );
80 void on_m_currentAnimation_currentIndexChanged(
int index );
83 void on_m_newAnim_clicked();
86 void on_m_removeAnim_clicked();
89 void on_m_loadAnim_clicked();
92 void on_m_saveAnim_clicked();
99 void on_m_xray_clicked(
bool checked );
102 void on_m_showSkeleton_toggled(
bool checked );
105 void on_m_manipulation_currentIndexChanged(
int index );
112 void on_m_skinningMethod_currentIndexChanged(
int index );
115 void on_m_showWeights_toggled(
bool checked );
118 void on_m_weightsType_currentIndexChanged(
int index );
121 void on_m_normalSkinning_currentIndexChanged(
int index );
124 void on_actionLBS_triggered();
127 void on_actionDQS_triggered();
130 void on_actionCoR_triggered();
134 Ui::SkeletonBasedAnimationUI* ui;
137 Engine::Scene::SkeletonBasedAnimationSystem* m_system {
nullptr };
140 Engine::Scene::SkeletonComponent* m_currentSkeleton {
nullptr };
146 Timeline* m_timeline {
nullptr };
149 Engine::Scene::ItemEntry m_selection;
hepler function to manage enum as underlying types in VariableSet