FunctionManager::FunctionManager(QWidget* parent, Doc* doc) : QWidget(parent) , m_doc(doc) , m_hsplitter(NULL) , m_vsplitter(NULL) , m_tree(NULL) , m_toolbar(NULL) , m_addSceneAction(NULL) , m_addChaserAction(NULL) , m_addCollectionAction(NULL) , m_addEFXAction(NULL) , m_addRGBMatrixAction(NULL) , m_addScriptAction(NULL) , m_addAudioAction(NULL) , m_addVideoAction(NULL) , m_autostartAction(NULL) , m_wizardAction(NULL) , m_addFolderAction(NULL) , m_cloneAction(NULL) , m_deleteAction(NULL) , m_selectAllAction(NULL) , m_editor(NULL) , m_scene_editor(NULL) { Q_ASSERT(s_instance == NULL); s_instance = this; Q_ASSERT(doc != NULL); new QVBoxLayout(this); layout()->setContentsMargins(0, 0, 0, 0); layout()->setSpacing(0); initActions(); initToolbar(); initSplitterView(); updateActionStatus(); connect(m_doc, SIGNAL(modeChanged(Doc::Mode)), this, SLOT(slotModeChanged())); m_tree->updateTree(); connect(m_doc, SIGNAL(clearing()), this, SLOT(slotDocClearing())); connect(m_doc, SIGNAL(loaded()), this, SLOT(slotDocLoaded())); connect(m_doc, SIGNAL(functionNameChanged(quint32)), this, SLOT(slotFunctionNameChanged(quint32))); connect(m_doc, SIGNAL(functionAdded(quint32)), this, SLOT(slotFunctionAdded(quint32))); QSettings settings; QVariant var = settings.value(SETTINGS_SPLITTER); if (var.isValid() == true) m_hsplitter->restoreState(var.toByteArray()); else m_hsplitter->setSizes(QList <int> () << int(this->width() / 2) << int(this->width() / 2)); }
void Doc_Test::cleanup() { QSignalSpy spy1(m_doc, SIGNAL(clearing())); QSignalSpy spy2(m_doc, SIGNAL(cleared())); m_doc->clearContents(); QCOMPARE(spy1.size(), 1); QCOMPARE(spy2.size(), 1); QCOMPARE(m_doc->functions().size(), 0); QCOMPARE(m_doc->fixtures().size(), 0); QCOMPARE(m_doc->fixtureGroups().size(), 0); QCOMPARE(m_doc->m_latestFunctionId, quint32(0)); QCOMPARE(m_doc->m_latestFixtureId, quint32(0)); QCOMPARE(m_doc->m_latestFixtureGroupId, quint32(0)); QCOMPARE(m_doc->m_addresses.size(), 0); }
void ClusteredClearing::iterate( ) { for(int i = 0; i < popSize; i++) _cluster[i] = -1; clearing(); // Offspring generation for(int i = 0; i < _cs.size(); i++){ while(_cs[i].numProtected < dimension) { Off newOff; newOff.genotype = new char[dimension]; char **mates = new char * [ numMates ]; // PAM Selection for ( int k = 0; k < numMates; k++ ) { int selected = this->pamSelection( this->pamNass, population[_cs[i].cIndex], this->dimension); mates[ k ] = this->population[ selected ]; } // MULTIPARENT UNIFORM CROSSOVER this->crossMUX( this->probMUX, _cs[i], mates, numMates, newOff.genotype, this->dimension ); newOff.fitness = ff->fitness(newOff.genotype); _offsprings.push_back(newOff); delete [] mates; } } // Offsrping replacement clusteredClearingReplacement(); _numEval = _offsprings.size(); for(int i = 0; i < _offsprings.size(); i++){ delete _offsprings[i].genotype; } _cs.clear(); _offsprings.clear(); }
void Doc::clearContents() { emit clearing(); // Delete all function instances QListIterator <quint32> funcit(m_functions.keys()); while (funcit.hasNext() == true) { Function* func = m_functions.take(funcit.next()); emit functionRemoved(func->id()); delete func; } // Delete all fixture instances QListIterator <quint32> fxit(m_fixtures.keys()); while (fxit.hasNext() == true) { Fixture* fxi = m_fixtures.take(fxit.next()); emit fixtureRemoved(fxi->id()); delete fxi; } // Delete all fixture groups QListIterator <quint32> grpit(m_fixtureGroups.keys()); while (grpit.hasNext() == true) { FixtureGroup* grp = m_fixtureGroups.take(grpit.next()); emit fixtureGroupRemoved(grp->id()); delete grp; } m_latestFunctionId = 0; m_latestFixtureId = 0; m_latestFixtureGroupId = 0; m_addresses.clear(); emit cleared(); }
void Doc::clearContents() { emit clearing(); m_clipboard->resetContents(); if (m_monitorProps != NULL) m_monitorProps->reset(); destroyAudioCapture(); // Delete all function instances QListIterator <quint32> funcit(m_functions.keys()); while (funcit.hasNext() == true) { Function* func = m_functions.take(funcit.next()); if (func == NULL) continue; emit functionRemoved(func->id()); delete func; } // Delete all fixture groups QListIterator <quint32> grpit(m_fixtureGroups.keys()); while (grpit.hasNext() == true) { FixtureGroup* grp = m_fixtureGroups.take(grpit.next()); quint32 grpID = grp->id(); delete grp; emit fixtureGroupRemoved(grpID); } // Delete all fixture instances QListIterator <quint32> fxit(m_fixtures.keys()); while (fxit.hasNext() == true) { Fixture* fxi = m_fixtures.take(fxit.next()); quint32 fxID = fxi->id(); delete fxi; emit fixtureRemoved(fxID); } // Delete all channels groups QListIterator <quint32> grpchans(m_channelsGroups.keys()); while (grpchans.hasNext() == true) { ChannelsGroup* grp = m_channelsGroups.take(grpchans.next()); emit channelsGroupRemoved(grp->id()); delete grp; } m_orderedGroups.clear(); m_latestFunctionId = 0; m_latestFixtureId = 0; m_latestFixtureGroupId = 0; m_latestChannelsGroupId = 0; m_addresses.clear(); emit cleared(); }