void RGBMatrixEditor::setAlgorithmIndex(int algoIndex) { qDebug() << "Set algorithm:" << algoIndex; QStringList algoList = algorithms(); if(algoIndex < 0 || algoIndex >= algorithms().count()) return; RGBAlgorithm* algo = RGBAlgorithm::algorithm(m_doc, algoList.at(algoIndex)); if (algo != NULL) algo->setColors(m_matrix->startColor(), m_matrix->endColor()); m_matrix->setAlgorithm(algo); initPreviewData(); emit algorithmIndexChanged(); emit algoColorsChanged(); }
void EFXEditor::setFunctionID(quint32 id) { if (id == Function::invalidId()) { disconnect(m_efx, &EFX::attributeChanged, this, &EFXEditor::slotAttributeChanged); m_efx = NULL; return; } m_efx = qobject_cast<EFX *>(m_doc->function(id)); if (m_efx != NULL) { connect(m_efx, &EFX::attributeChanged, this, &EFXEditor::slotAttributeChanged); updateAlgorithmData(); emit algorithmIndexChanged(); } FunctionEditor::setFunctionID(id); updateFixtureList(); }