bool VCSlider::copyFrom(const VCWidget *widget) { const VCSlider *slider = qobject_cast<const VCSlider*> (widget); if (slider == nullptr) return false; /* Copy widget style */ setWidgetStyle(slider->widgetStyle()); /* Copy level stuff */ setRangeLowLimit(slider->rangeLowLimit()); setRangeHighLimit(slider->rangeHighLimit()); for (SceneValue scv : slider->levelChannels()) addLevelChannel(scv.fxi, scv.channel); /* Copy playback stuff */ setControlledFunction(slider->controlledFunction()); /* Copy slider appearance */ setValueDisplayStyle(slider->valueDisplayStyle()); setInvertedAppearance(slider->invertedAppearance()); /* Copy Click & Go feature */ setClickAndGoType(slider->clickAndGoType()); /* Copy mode & current value */ setSliderMode(slider->sliderMode()); setValue(slider->value(), false, false); /* Copy monitor mode */ setMonitorEnabled(slider->monitorEnabled()); /* Copy common stuff */ return VCWidget::copyFrom(widget); }
bool VCSlider::copyFrom(const VCWidget* widget) { const VCSlider* slider = qobject_cast<const VCSlider*> (widget); if (slider == NULL) return false; /* Copy widget style */ setWidgetStyle(slider->widgetStyle()); /* Copy level stuff */ setLevelLowLimit(slider->levelLowLimit()); setLevelHighLimit(slider->levelHighLimit()); m_levelChannels = slider->m_levelChannels; /* Copy playback stuff */ m_playbackFunction = slider->m_playbackFunction; /* Copy slider appearance */ setValueDisplayStyle(slider->valueDisplayStyle()); setInvertedAppearance(slider->invertedAppearance()); /* Copy Click & Go feature */ setClickAndGoType(slider->clickAndGoType()); /* Copy mode & current value */ setSliderMode(slider->sliderMode()); setSliderValue(slider->sliderValue()); /* Copy monitor mode */ setChannelsMonitorEnabled(slider->channelsMonitorEnabled()); /* Copy common stuff */ return VCWidget::copyFrom(widget); }
bool VCSlider::copyFrom(VCWidget* widget) { VCSlider* slider = qobject_cast<VCSlider*> (widget); if (slider == NULL) return false; /* Copy level stuff */ setLevelLowLimit(slider->levelLowLimit()); setLevelHighLimit(slider->levelHighLimit()); m_levelChannels = slider->m_levelChannels; /* Copy bus stuff */ setBusLowLimit(slider->busLowLimit()); setBusHighLimit(slider->busHighLimit()); setBus(slider->bus()); /* Copy slider appearance */ setValueDisplayStyle(slider->valueDisplayStyle()); setInvertedAppearance(slider->invertedAppearance()); /* Copy mode & current value */ setSliderMode(slider->sliderMode()); m_slider->setValue(slider->sliderValue()); /* Copy common stuff */ return VCWidget::copyFrom(widget); }
void VCSlider::setSliderMode(SliderMode mode) { Q_ASSERT(mode >= Level && mode <= GrandMaster); if (mode != m_sliderMode) Tardis::instance()->enqueueAction(VCSliderSetMode, id(), m_sliderMode, mode); m_sliderMode = mode; emit sliderModeChanged(mode); setRangeLowLimit(0); setRangeHighLimit(UCHAR_MAX); setControlledAttribute(Function::Intensity); m_controlledAttributeId = Function::invalidAttributeId(); switch(mode) { case Level: case Adjust: setValue(0); m_doc->masterTimer()->registerDMXSource(this); break; case Submaster: setValue(UCHAR_MAX); m_doc->masterTimer()->unregisterDMXSource(this); break; case GrandMaster: setValueDisplayStyle(PercentageValue); setValue(UCHAR_MAX); m_doc->masterTimer()->unregisterDMXSource(this); break; } }
void VCSlider::setSliderMode(SliderMode mode) { Q_ASSERT(mode >= Level && mode <= GrandMaster); if (mode != m_sliderMode) Tardis::instance()->enqueueAction(Tardis::VCSliderSetMode, id(), m_sliderMode, mode); m_sliderMode = mode; emit sliderModeChanged(mode); setRangeLowLimit(0); setRangeHighLimit(UCHAR_MAX); setControlledAttribute(Function::Intensity); m_controlledAttributeId = Function::invalidAttributeId(); switch (mode) { case Level: case Adjust: setValue(0); m_doc->masterTimer()->registerDMXSource(this); break; case Submaster: setValue(UCHAR_MAX); break; case GrandMaster: setValueDisplayStyle(PercentageValue); setValue(UCHAR_MAX); break; } if (mode == Submaster || mode == GrandMaster) { m_doc->masterTimer()->unregisterDMXSource(this); // request to delete all the active faders foreach (GenericFader *fader, m_fadersMap.values()) fader->requestDelete(); m_fadersMap.clear(); } }
bool VCSlider::loadXML(const QDomElement* root) { bool visible = false; int x = 0; int y = 0; int w = 0; int h = 0; SliderMode sliderMode = Playback; QDomElement tag; QDomNode node; QString caption; QString str; Q_ASSERT(root != NULL); if (root->tagName() != KXMLQLCVCSlider) { qWarning() << Q_FUNC_INFO << "Slider node not found"; return false; } /* Caption */ caption = root->attribute(KXMLQLCVCCaption); if (root->attribute(KXMLQLCVCSliderInvertedAppearance) == "false") setInvertedAppearance(false); else setInvertedAppearance(true); /* Children */ node = root->firstChild(); while (node.isNull() == false) { tag = node.toElement(); if (tag.tagName() == KXMLQLCWindowState) { loadXMLWindowState(&tag, &x, &y, &w, &h, &visible); setGeometry(x, y, w, h); } else if (tag.tagName() == KXMLQLCVCWidgetAppearance) { loadXMLAppearance(&tag); } else if (tag.tagName() == KXMLQLCVCSliderMode) { sliderMode = stringToSliderMode(tag.text()); str = tag.attribute(KXMLQLCVCSliderValueDisplayStyle); setValueDisplayStyle(stringToValueDisplayStyle(str)); } else if (tag.tagName() == KXMLQLCVCSliderLevel) { loadXMLLevel(&tag); } else if (tag.tagName() == KXMLQLCVCWidgetInput) { loadXMLInput(&tag); } else if (tag.tagName() == KXMLQLCVCSliderPlayback) { loadXMLPlayback(&tag); } else { qWarning() << Q_FUNC_INFO << "Unknown slider tag:" << tag.tagName(); } node = node.nextSibling(); } /* Set the mode last, after everything else has been set */ setSliderMode(sliderMode); setCaption(caption); return true; }