void VCSlider::setValue(int value, bool setDMX, bool updateFeedback) { if (m_value == value) return; Tardis::instance()->enqueueAction(VCSliderSetValue, id(), m_value, value); m_value = value; switch(sliderMode()) { case Level: if (m_monitorEnabled == true && m_isOverriding == false && setDMX) { m_priority = DMXSource::Override; m_doc->masterTimer()->requestNewPriority(this); m_isOverriding = true; emit isOverridingChanged(); } if (clickAndGoType() == CnGPreset) updateClickAndGoResource(); break; case Submaster: emit submasterValueChanged(SCALE(qreal(m_value), qreal(0), qreal(UCHAR_MAX), qreal(0), qreal(1.0)) * intensity()); break; case GrandMaster: m_doc->inputOutputMap()->setGrandMasterValue(value); break; case Adjust: m_adjustChangeCounter++; break; } emit valueChanged(value); if (setDMX) m_levelValueChanged = true; Q_UNUSED(updateFeedback) /* TODO if (updateFeedback) { int fbv = 0; if (invertedAppearance() == true) fbv = levelHighLimit() - m_value; else fbv = m_value; fbv = (int)SCALE(float(fbv), float(levelLowLimit()), float(levelHighLimit()), float(0), float(UCHAR_MAX)); sendFeedback(fbv); } */ }
void VCSlider::setIsOverriding(bool enable) { if (enable == m_isOverriding) return; if (enable == false && m_monitorEnabled) setValue(m_monitorValue, false, false); m_isOverriding = enable; emit isOverridingChanged(); }