all time-based panels are now derived from a common base class
Cuts down on a lot of duplicate code between TimelineWidget/ViewerWidget/CurveWidget/NodeParamView and TimelinePanel/ViewerPanel/CurvePanel/ParamPanel since they all use similar time functions.
This commit is contained in:
@@ -3,11 +3,20 @@
|
||||
#include <QtMath>
|
||||
|
||||
TimelineScaledObject::TimelineScaledObject() :
|
||||
scale_(1.0)
|
||||
scale_(1.0),
|
||||
max_scale_(DBL_MAX)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
void TimelineScaledObject::SetTimebase(const rational &timebase)
|
||||
{
|
||||
timebase_ = timebase;
|
||||
timebase_dbl_ = timebase_.toDouble();
|
||||
|
||||
TimebaseChangedEvent(timebase);
|
||||
}
|
||||
|
||||
const rational &TimelineScaledObject::timebase() const
|
||||
{
|
||||
return timebase_;
|
||||
@@ -45,8 +54,23 @@ rational TimelineScaledObject::SceneToTime(const double &x, bool round)
|
||||
return SceneToTime(x, scale_, timebase_, round);
|
||||
}
|
||||
|
||||
void TimelineScaledObject::SetTimebaseInternal(const rational &timebase)
|
||||
void TimelineScaledObject::SetMaximumScale(const double &max)
|
||||
{
|
||||
timebase_ = timebase;
|
||||
timebase_dbl_ = timebase_.toDouble();
|
||||
max_scale_ = max;
|
||||
|
||||
if (GetScale() > max_scale_) {
|
||||
SetScale(max_scale_);
|
||||
}
|
||||
}
|
||||
|
||||
const double& TimelineScaledObject::GetScale() const
|
||||
{
|
||||
return scale_;
|
||||
}
|
||||
|
||||
void TimelineScaledObject::SetScale(const double& scale)
|
||||
{
|
||||
scale_ = scale;
|
||||
|
||||
ScaleChangedEvent(scale_);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user