From 6da4464f05a88a41fc054b0e8e3f220bbe342243 Mon Sep 17 00:00:00 2001 From: itsmattkc Date: Mon, 19 Jul 2021 19:25:45 -0700 Subject: [PATCH] moved effects slider drag bool to static and outside core --- app/core.cpp | 3 +-- app/core.h | 9 --------- app/node/block/block.cpp | 3 +-- app/render/previewautocacher.cpp | 4 ++-- app/widget/slider/base/numericsliderbase.cpp | 6 ++++-- app/widget/slider/base/numericsliderbase.h | 8 ++++++++ 6 files changed, 16 insertions(+), 17 deletions(-) diff --git a/app/core.cpp b/app/core.cpp index a4075b0a0..0938330af 100644 --- a/app/core.cpp +++ b/app/core.cpp @@ -82,8 +82,7 @@ Core::Core(const CoreParams& params) : tool_(Tool::kPointer), addable_object_(Tool::kAddableEmpty), snapping_(true), - core_params_(params), - effects_slider_is_being_dragged_(false) + core_params_(params) { // Store reference to this object, making the assumption that Core will only ever be made in // main(). This will obviously break if not. diff --git a/app/core.h b/app/core.h index 83658d163..67fb6a95d 100644 --- a/app/core.h +++ b/app/core.h @@ -304,10 +304,6 @@ public: void OpenNodeInViewer(ViewerOutput* viewer); - bool EffectsSliderIsBeingDragged() const {return effects_slider_is_being_dragged_;} - - void SetEffectsSliderIsBeingDragged(bool e) {effects_slider_is_being_dragged_ = e;} - static const uint kProjectVersion; public slots: @@ -575,11 +571,6 @@ private: */ QVector autorecovered_projects_; - /** - * @brief An effects slider somewhere is being dragged - */ - bool effects_slider_is_being_dragged_; - private slots: void SaveAutorecovery(); diff --git a/app/node/block/block.cpp b/app/node/block/block.cpp index 646736ccf..cdee4463b 100644 --- a/app/node/block/block.cpp +++ b/app/node/block/block.cpp @@ -22,7 +22,6 @@ #include -#include "core.h" #include "node/output/track/track.h" #include "transition/transition.h" #include "widget/slider/floatslider.h" @@ -245,7 +244,7 @@ void Block::InvalidateCache(const TimeRange& range, const QString& from, int ele // We must intercept the signal here r = TimeRange(qMin(length(), last_length_), RATIONAL_MAX); - if (!Core::instance()->EffectsSliderIsBeingDragged()) { + if (!NumericSliderBase::IsEffectsSliderBeingDragged()) { last_length_ = length(); } diff --git a/app/render/previewautocacher.cpp b/app/render/previewautocacher.cpp index 2b289195a..1517fc9ca 100644 --- a/app/render/previewautocacher.cpp +++ b/app/render/previewautocacher.cpp @@ -4,10 +4,10 @@ #include #include "codec/conformmanager.h" -#include "core.h" #include "node/project/project.h" #include "render/rendermanager.h" #include "render/renderprocessor.h" +#include "widget/slider/base/numericsliderbase.h" namespace olive { @@ -96,7 +96,7 @@ void PreviewAutoCacher::VideoInvalidated(const TimeRange &range) ClearVideoQueue(); // Hash these frames since that should be relatively quick. - if (!Core::instance()->EffectsSliderIsBeingDragged()) { + if (!NumericSliderBase::IsEffectsSliderBeingDragged()) { invalidated_video_.insert(range); video_job_tracker_.insert(range, graph_changed_time_); diff --git a/app/widget/slider/base/numericsliderbase.cpp b/app/widget/slider/base/numericsliderbase.cpp index 851733673..4a1ad1118 100644 --- a/app/widget/slider/base/numericsliderbase.cpp +++ b/app/widget/slider/base/numericsliderbase.cpp @@ -26,6 +26,8 @@ namespace olive { +bool NumericSliderBase::effects_slider_is_being_dragged_ = false; + NumericSliderBase::NumericSliderBase(QWidget *parent) : SliderBase(parent), drag_ladder_(nullptr), @@ -64,7 +66,7 @@ void NumericSliderBase::LabelPressed() connect(drag_ladder_, &SliderLadder::Released, this, &NumericSliderBase::LadderReleased); if (is_effects_slider_) { - Core::instance()->SetEffectsSliderIsBeingDragged(true); + SetEffectsSliderIsBeingDragged(true); } } @@ -97,7 +99,7 @@ void NumericSliderBase::LadderDragged(int value, double multiplier) void NumericSliderBase::LadderReleased() { if (is_effects_slider_) { - Core::instance()->SetEffectsSliderIsBeingDragged(false); + SetEffectsSliderIsBeingDragged(false); } drag_ladder_->deleteLater(); diff --git a/app/widget/slider/base/numericsliderbase.h b/app/widget/slider/base/numericsliderbase.h index 3a02f49cc..298076726 100644 --- a/app/widget/slider/base/numericsliderbase.h +++ b/app/widget/slider/base/numericsliderbase.h @@ -44,6 +44,9 @@ public: void SetIsEffectsSlider(bool e) {is_effects_slider_ = e;} + static bool IsEffectsSliderBeingDragged() { return effects_slider_is_being_dragged_; } + void SetEffectsSliderIsBeingDragged(bool e) { effects_slider_is_being_dragged_ = e; } + protected: const QVariant& GetOffset() const { @@ -91,6 +94,11 @@ private: bool is_effects_slider_; + /** + * @brief An effects slider somewhere is being dragged + */ + static bool effects_slider_is_being_dragged_; + private slots: void LabelPressed();