bool Function::saveXMLCommon(QXmlStreamWriter *doc) const { Q_ASSERT(doc != NULL); doc->writeAttribute(KXMLQLCFunctionID, QString::number(id())); doc->writeAttribute(KXMLQLCFunctionType, Function::typeToString(type())); doc->writeAttribute(KXMLQLCFunctionName, name()); if (path(true).isEmpty() == false) doc->writeAttribute(KXMLQLCFunctionPath, path(true)); if (blendMode() != Universe::NormalBlend) doc->writeAttribute(KXMLQLCFunctionBlendMode, Universe::blendModeToString(blendMode())); return true; }
void RGBMatrix::preRun(MasterTimer* timer) { Q_UNUSED(timer); { QMutexLocker algorithmLocker(&m_algorithmMutex); m_group = doc()->fixtureGroup(m_fixtureGroupID); if (m_group == NULL) { // No fixture group to control stop(); return; } if (m_algorithm != NULL) { Q_ASSERT(m_fader == NULL); m_fader = new GenericFader(doc()); m_fader->adjustIntensity(getAttributeValue(Intensity)); m_fader->setBlendMode(blendMode()); // Copy direction from parent class direction m_direction = direction(); if (m_direction == Forward) { m_step = 0; m_stepColor = m_startColor.rgb(); } else { m_step = m_algorithm->rgbMapStepCount(m_group->size()) - 1; if (m_endColor.isValid()) { m_stepColor = m_endColor.rgb(); } else { m_stepColor = m_startColor.rgb(); } } calculateColorDelta(); if (m_algorithm->type() == RGBAlgorithm::Script) { RGBScript *script = static_cast<RGBScript*> (m_algorithm); QHashIterator<QString, QString> it(m_properties); while(it.hasNext()) { it.next(); script->setProperty(it.key(), it.value()); } } } } m_roundTime->start(); Function::preRun(timer); }
void RGBMatrix::preRun(MasterTimer* timer) { { QMutexLocker algorithmLocker(&m_algorithmMutex); m_group = doc()->fixtureGroup(m_fixtureGroupID); if (m_group == NULL) { // No fixture group to control stop(FunctionParent::master()); return; } if (m_algorithm != NULL) { Q_ASSERT(m_fader == NULL); m_fader = new GenericFader(doc()); m_fader->adjustIntensity(getAttributeValue(Intensity)); m_fader->setBlendMode(blendMode()); // Copy direction from parent class direction m_stepHandler->initializeDirection(direction(), m_startColor, m_endColor, m_stepsCount); if (m_algorithm->type() == RGBAlgorithm::Script) { RGBScript *script = static_cast<RGBScript*> (m_algorithm); QHashIterator<QString, QString> it(m_properties); while(it.hasNext()) { it.next(); script->setProperty(it.key(), it.value()); } } } } m_roundTime->restart(); Function::preRun(timer); }