void VCCueList::addFunctions(QVariantList idsList, int insertIndex) { if (idsList.isEmpty()) return; if (isEditing()) { Chaser *ch = chaser(); if (ch == NULL) return; if (insertIndex == -1) insertIndex = ch->stepsCount(); for (QVariant vID : idsList) // C++11 { quint32 fid = vID.toUInt(); ChaserStep step(fid); if (ch->durationMode() == Chaser::PerStep) { Function *func = m_doc->function(fid); if (func == NULL) continue; step.duration = func->totalDuration(); if (step.duration == 0) step.duration = 1000; step.hold = step.duration; } Tardis::instance()->enqueueAction(Tardis::ChaserAddStep, ch->id(), QVariant(), insertIndex); ch->addStep(step, insertIndex++); } ChaserEditor::updateStepsList(m_doc, chaser(), m_stepsList); emit stepsListChanged(); } else { Function *f = m_doc->function(idsList.first().toUInt()); if (f == NULL || f->type() != Function::ChaserType) return; setChaserID(f->id()); } }
void ChaserRunner_Test::writeNoSteps() { Chaser chaser(m_doc); ChaserRunner cr(m_doc, &chaser); UniverseArray ua(512); MasterTimerStub timer(m_doc, ua); QVERIFY(cr.write(&timer, &ua) == false); }
void ChaserRunner_Test::writeNoSteps() { Chaser chaser(m_doc); ChaserRunner cr(m_doc, &chaser); QList<Universe*> ua; ua.append(new Universe(0, new GrandMaster())); MasterTimerStub timer(m_doc, ua); QVERIFY(cr.write(&timer, ua) == false); }