void moveFrameRange(const NodePtr& node, double dt) { KnobIntBasePtr frameRangeKnob = toKnobIntBase( node->getKnobByName(kFrameRangeParamNameFrameRange) ); assert(frameRangeKnob); frameRangeKnob->setValues(frameRangeKnob->getValue() + dt, frameRangeKnob->getValue(1) + dt, ViewSpec::all(), eValueChangedReasonNatronGuiEdited); }
void NodeAnimPrivate::computeTimeOffsetRange() { NodeGuiPtr nodeUI = nodeGui.lock(); NodePtr node = nodeUI->getNode(); if (!node) { return; } // Retrieve nearest reader useful values { AnimationModulePtr isAnimModel = toAnimationModule(model.lock()); NodeAnimPtr nearestReader = isAnimModel->getNearestReaderInternal(node); if (nearestReader) { // Retrieve the time offset values KnobIntBasePtr timeOffsetKnob = toKnobIntBase(node->getKnobByName(kReaderParamNameTimeOffset)); assert(timeOffsetKnob); int timeOffsetValue = timeOffsetKnob->getValue(); frameRange = nearestReader->getFrameRange(); frameRange.min += timeOffsetValue; frameRange.max += timeOffsetValue; } } } // computeTimeOffsetRange
void moveTimeOffset(const NodePtr& node, double dt) { KnobIntBasePtr timeOffsetKnob = toKnobIntBase( node->getKnobByName(kTimeOffsetParamNameTimeOffset) ); assert(timeOffsetKnob); KnobHelper::ValueChangedReturnCodeEnum s = timeOffsetKnob->setValue(timeOffsetKnob->getValue() + dt, ViewSpec::all(), 0, eValueChangedReasonNatronGuiEdited, 0); Q_UNUSED(s); }
NATRON_NAMESPACE_ANONYMOUS_ENTER /** * @brief Move the node 'reader' on project timeline, by offsetting its * starting time by 'dt'. */ void moveReader(const NodePtr &reader, double dt) { KnobIntBasePtr startingTimeKnob = toKnobIntBase( reader->getKnobByName(kReaderParamNameStartingTime) ); assert(startingTimeKnob); KnobHelper::ValueChangedReturnCodeEnum s = startingTimeKnob->setValue(startingTimeKnob->getValue() + dt, ViewSpec::all(), 0, eValueChangedReasonNatronGuiEdited, 0); Q_UNUSED(s); }
void NodeAnimPrivate::computeFRRange() { NodeGuiPtr nodeUI = nodeGui.lock(); NodePtr node = nodeUI->getNode(); if (!node) { return; } KnobIntBasePtr frameRangeKnob = toKnobIntBase(node->getKnobByName(kFrameRangeParamNameFrameRange)); assert(frameRangeKnob); frameRange.min = frameRangeKnob->getValue(DimIdx(0)); frameRange.max = frameRangeKnob->getValue(DimIdx(1)); }