diff --git a/io/loadthread.cpp b/io/loadthread.cpp index 8ee232bcd..52cde99b3 100644 --- a/io/loadthread.cpp +++ b/io/loadthread.cpp @@ -771,7 +771,7 @@ void LoadThread::create_effect_ui( ve->load(*stream); c->effects.append(ve); } else { - EffectPtr e(create_effect(c, meta)); + EffectPtr e(Effect::Create(c, meta)); e->set_enabled(effect_enabled); e->load(*stream); diff --git a/panels/timeline.cpp b/panels/timeline.cpp index 45cb97b12..aa88b1bf8 100644 --- a/panels/timeline.cpp +++ b/panels/timeline.cpp @@ -349,11 +349,11 @@ void Timeline::add_clips_from_ghosts(ComboAction* ca, SequencePtr s) { if (olive::CurrentConfig.add_default_effects_to_clips) { if (c->track() < 0) { // add default video effects - c->effects.append(create_effect(c.get(), get_internal_meta(EFFECT_INTERNAL_TRANSFORM, EFFECT_TYPE_EFFECT))); + c->effects.append(Effect::Create(c.get(), Effect::GetInternalMeta(EFFECT_INTERNAL_TRANSFORM, EFFECT_TYPE_EFFECT))); } else { // add default audio effects - c->effects.append(create_effect(c.get(), get_internal_meta(EFFECT_INTERNAL_VOLUME, EFFECT_TYPE_EFFECT))); - c->effects.append(create_effect(c.get(), get_internal_meta(EFFECT_INTERNAL_PAN, EFFECT_TYPE_EFFECT))); + c->effects.append(Effect::Create(c.get(), Effect::GetInternalMeta(EFFECT_INTERNAL_VOLUME, EFFECT_TYPE_EFFECT))); + c->effects.append(Effect::Create(c.get(), Effect::GetInternalMeta(EFFECT_INTERNAL_PAN, EFFECT_TYPE_EFFECT))); } } } @@ -377,7 +377,7 @@ void Timeline::add_transition() { ca->append(new AddTransitionCommand(c, nullptr, nullptr, - get_internal_meta(transition_to_add, EFFECT_TYPE_TRANSITION), + Effect::GetInternalMeta(transition_to_add, EFFECT_TYPE_TRANSITION), olive::CurrentConfig.default_transition_length)); adding = true; } @@ -385,7 +385,7 @@ void Timeline::add_transition() { ca->append(new AddTransitionCommand(nullptr, c, nullptr, - get_internal_meta(transition_to_add, EFFECT_TYPE_TRANSITION), + Effect::GetInternalMeta(transition_to_add, EFFECT_TYPE_TRANSITION), olive::CurrentConfig.default_transition_length)); adding = true; } diff --git a/project/effect.cpp b/project/effect.cpp index 4fba79c72..a49ae6977 100644 --- a/project/effect.cpp +++ b/project/effect.cpp @@ -69,7 +69,7 @@ QVector effects; -EffectPtr create_effect(Clip* c, const EffectMeta* em) { +EffectPtr Effect::Create(Clip* c, const EffectMeta* em) { if (em->internal >= 0 && em->internal < EFFECT_INTERNAL_COUNT) { // must be an internal effect switch (em->internal) { @@ -103,7 +103,7 @@ EffectPtr create_effect(Clip* c, const EffectMeta* em) { return nullptr; } -const EffectMeta* get_internal_meta(int internal_id, int type) { +const EffectMeta* Effect::GetInternalMeta(int internal_id, int type) { for (int i=0;iset_enabled(is_enabled()); copy_field_keyframes(copy); return copy; diff --git a/project/effect.h b/project/effect.h index 6c7fffe24..c6bb5d189 100644 --- a/project/effect.h +++ b/project/effect.h @@ -43,7 +43,6 @@ #include "ui/checkboxex.h" class Clip; -using ClipPtr = std::shared_ptr; class Effect; using EffectPtr = std::shared_ptr; @@ -61,8 +60,6 @@ struct EffectMeta { extern QVector effects; double log_volume(double linear); -EffectPtr create_effect(Clip *c, const EffectMeta *em); -const EffectMeta* get_internal_meta(int internal_id, int type); enum EffectType { EFFECT_TYPE_INVALID, @@ -229,6 +226,9 @@ public: void gizmo_move(EffectGizmo* sender, int x_movement, int y_movement, double timecode, bool done); void gizmo_world_to_screen(); bool are_gizmos_enabled(); + + static EffectPtr Create(Clip *c, const EffectMeta *em); + static const EffectMeta* GetInternalMeta(int internal_id, int type); public slots: void field_changed(); private slots: diff --git a/project/undo.cpp b/project/undo.cpp index 9a7e1f2e9..708d2588f 100644 --- a/project/undo.cpp +++ b/project/undo.cpp @@ -212,7 +212,7 @@ void AddEffectCommand::doUndo() { void AddEffectCommand::doRedo() { if (ref == nullptr) { - ref = create_effect(clip, meta); + ref = Effect::Create(clip, meta); } if (pos < 0) { clip->effects.append(ref); diff --git a/ui/timelinewidget.cpp b/ui/timelinewidget.cpp index 59b853e4b..542b7ebb9 100644 --- a/ui/timelinewidget.cpp +++ b/ui/timelinewidget.cpp @@ -1023,40 +1023,40 @@ void TimelineWidget::mouseReleaseEvent(QMouseEvent *event) { if (c->track() < 0 && olive::CurrentConfig.add_default_effects_to_clips) { // default video effects (before custom effects) - c->effects.append(create_effect(c.get(), get_internal_meta(EFFECT_INTERNAL_TRANSFORM, EFFECT_TYPE_EFFECT))); + c->effects.append(Effect::Create(c.get(), Effect::GetInternalMeta(EFFECT_INTERNAL_TRANSFORM, EFFECT_TYPE_EFFECT))); } switch (panel_timeline->creating_object) { case ADD_OBJ_TITLE: c->set_name(tr("Title")); - c->effects.append(create_effect(c.get(), get_internal_meta(EFFECT_INTERNAL_TEXT, EFFECT_TYPE_EFFECT))); + c->effects.append(Effect::Create(c.get(), Effect::GetInternalMeta(EFFECT_INTERNAL_TEXT, EFFECT_TYPE_EFFECT))); break; case ADD_OBJ_SOLID: c->set_name(tr("Solid Color")); - c->effects.append(create_effect(c.get(), get_internal_meta(EFFECT_INTERNAL_SOLID, EFFECT_TYPE_EFFECT))); + c->effects.append(Effect::Create(c.get(), Effect::GetInternalMeta(EFFECT_INTERNAL_SOLID, EFFECT_TYPE_EFFECT))); break; case ADD_OBJ_BARS: { c->set_name(tr("Bars")); - EffectPtr e = create_effect(c.get(), get_internal_meta(EFFECT_INTERNAL_SOLID, EFFECT_TYPE_EFFECT)); + EffectPtr e = Effect::Create(c.get(), Effect::GetInternalMeta(EFFECT_INTERNAL_SOLID, EFFECT_TYPE_EFFECT)); e->row(0)->field(0)->set_combo_index(1); c->effects.append(e); } break; case ADD_OBJ_TONE: c->set_name(tr("Tone")); - c->effects.append(create_effect(c.get(), get_internal_meta(EFFECT_INTERNAL_TONE, EFFECT_TYPE_EFFECT))); + c->effects.append(Effect::Create(c.get(), Effect::GetInternalMeta(EFFECT_INTERNAL_TONE, EFFECT_TYPE_EFFECT))); break; case ADD_OBJ_NOISE: c->set_name(tr("Noise")); - c->effects.append(create_effect(c.get(), get_internal_meta(EFFECT_INTERNAL_NOISE, EFFECT_TYPE_EFFECT))); + c->effects.append(Effect::Create(c.get(), Effect::GetInternalMeta(EFFECT_INTERNAL_NOISE, EFFECT_TYPE_EFFECT))); break; } if (c->track() >= 0 && olive::CurrentConfig.add_default_effects_to_clips) { // default audio effects (after custom effects) - c->effects.append(create_effect(c.get(), get_internal_meta(EFFECT_INTERNAL_VOLUME, EFFECT_TYPE_EFFECT))); - c->effects.append(create_effect(c.get(), get_internal_meta(EFFECT_INTERNAL_PAN, EFFECT_TYPE_EFFECT))); + c->effects.append(Effect::Create(c.get(), Effect::GetInternalMeta(EFFECT_INTERNAL_VOLUME, EFFECT_TYPE_EFFECT))); + c->effects.append(Effect::Create(c.get(), Effect::GetInternalMeta(EFFECT_INTERNAL_PAN, EFFECT_TYPE_EFFECT))); } push_undo = true;