void tst_SynchronizeLists::unfiltered() { QFETCH(QVector<QContactLocalId>, reference); QFETCH(QVector<QContactLocalId>, original); m_filterEnabled = false; m_cache = original; int c = 0; int r = 0; synchronizeList(this, m_cache, c, reference, r); if (c < m_cache.count()) m_cache.remove(c, m_cache.count() - c); for (; r < reference.count(); ++r) m_cache.append(reference.at(r)); if (m_cache != reference) { qDebug() << "expected" << reference; qDebug() << "actual " << m_cache; } QCOMPARE(m_cache, reference); }
const vector< pair<string, size_t> > &oEvent::fillCourses(vector< pair<string, size_t> > &out, bool simple) { out.clear(); oCourseList::iterator it; synchronizeList(oLCourseId); Courses.sort(); string b; for (it=Courses.begin(); it != Courses.end(); ++it) { if (!it->Removed){ if (simple) //gdi.addItem(name, it->Name, it->Id); out.push_back(make_pair(it->Name, it->Id)); else { b = it->Name + "\t(" + itos(it->nControls) + ")"; //sprintf_s(bf, 16, "\t(%d)", it->nControls); //b+=bf; if (!it->getCourseProblems().empty()) b = "[!] " + b; //gdi.addItem(name, b, it->Id); out.push_back(make_pair(b, it->Id)); } } } return out; }
void oEvent::getClubs(vector<pClub> &c, bool sort) { if (sort) { synchronizeList(oLClubId); Clubs.sort(); } c.clear(); c.reserve(Clubs.size()); for (oClubList::iterator it = Clubs.begin(); it != Clubs.end(); ++it) { if (!it->isRemoved()) c.push_back(&*it); } }
void oEvent::calculateNumRemainingMaps() { synchronizeList(oLCourseId, true, false); synchronizeList(oLRunnerId, false, true); for (oCourseList::iterator cit=Courses.begin(); cit!=Courses.end();++cit) { int numMaps = cit->getNumberMaps(); if (numMaps == 0) cit->tMapsRemaining = numeric_limits<int>::min(); else cit->tMapsRemaining = numMaps; } list<oRunner>::const_iterator it; for (it=Runners.begin(); it != Runners.end(); ++it) if (!it->isRemoved() && it->getStatus()!=StatusDNS){ pCourse pc = it->getCourse(false); if (pc && pc->tMapsRemaining != numeric_limits<int>::min()) pc->tMapsRemaining--; } }
void SeasideCache::contactIdsAvailable() { #ifdef SEASIDE_SPARQL_QUERIES if (!isPopulated(m_fetchFilter)) { appendContacts(m_contactIdRequest.contacts()); return; } #endif synchronizeList( this, m_contacts[m_fetchFilter], m_cacheIndex, m_contactIdRequest.ids(), m_queryIndex); }
void oEvent::generateClubTableData(Table &table, oClub *addClub) { oe->setupClubInfoData(); if (addClub) { addClub->addTableRow(table); return; } synchronizeList(oLClubId); oClubList::iterator it; for (it=Clubs.begin(); it != Clubs.end(); ++it){ if (!it->isRemoved()){ it->addTableRow(table); } } }
void tst_SynchronizeLists::unfiltered() { QFETCH(QVector<quint32>, reference); QFETCH(QVector<quint32>, original); m_filterEnabled = false; m_cache = original; synchronizeList(this, m_cache, reference); if (m_cache != reference) { qDebug() << "expected" << reference; qDebug() << "actual " << m_cache; } QCOMPARE(m_cache, reference); }
const vector< pair<string, size_t> > & oEvent::fillClubs(vector< pair<string, size_t> > &out) { out.clear(); //gdi.clearList(name); synchronizeList(oLClubId); Clubs.sort(); oClubList::iterator it; for (it=Clubs.begin(); it != Clubs.end(); ++it){ if (!it->Removed) out.push_back(make_pair(it->name, it->Id)); //gdi.addItem(name, it->name, it->Id); } return out; }
//Returns true if data is changed. bool oEvent::autoSynchronizeLists(bool SyncPunches) { if (!HasDBConnection) return false; bool changed=false; string ot; int mask = getListMask(*this); if (mask == 0) return false; // Reset change data and store update status on objects // (which might be incorrectly changed during sql update) resetSQLChanged(true, false); //Synchronize ourself if (mask & oLEventId) { ot=sqlUpdated; msSynchronize(this); if (sqlUpdated!=ot) { changed=true; gdibase.setWindowTitle(getTitleName()); } } //Controls if (mask & oLControlId) { int oc = sqlCounterControls; ot = sqlUpdateControls; synchronizeList(oLControlId, false, false); changed |= oc!=sqlCounterControls; changed |= ot!=sqlUpdateControls; } //Courses if (mask & oLCourseId) { int oc = sqlCounterCourses; ot = sqlUpdateCourses; synchronizeList(oLCourseId, false, false); changed |= oc!=sqlCounterCourses; changed |= ot!=sqlUpdateCourses; } //Classes if (mask & oLClassId) { int oc = sqlCounterClasses; ot = sqlUpdateClasses; synchronizeList(oLClassId, false, false); changed |= oc!=sqlCounterClasses; changed |= ot!=sqlUpdateClasses; } //Clubs if (mask & oLClubId) { int oc = sqlCounterClubs; ot = sqlUpdateClubs; synchronizeList(oLClubId, false, false); changed |= oc!=sqlCounterClubs; changed |= ot!=sqlUpdateClubs; } //Cards if (mask & oLCardId) { int oc = sqlCounterCards; ot = sqlUpdateCards; synchronizeList(oLCardId, false, false); changed |= oc!=sqlCounterCards; changed |= ot!=sqlUpdateCards; } //Runners if (mask & oLRunnerId) { int oc = sqlCounterRunners; ot = sqlUpdateRunners; synchronizeList(oLRunnerId, false, false); changed |= oc!=sqlCounterRunners; changed |= ot!=sqlUpdateRunners; } //Teams if (mask & oLTeamId) { int oc = sqlCounterTeams; ot = sqlUpdateTeams; synchronizeList(oLTeamId, false, false); changed |= oc!=sqlCounterTeams; changed |= ot!=sqlUpdateTeams; } if (SyncPunches && (mask & oLPunchId)) { //Punches int oc = sqlCounterPunches; ot = sqlUpdatePunches; synchronizeList(oLPunchId, false, false); changed |= oc!=sqlCounterPunches; changed |= ot!=sqlUpdatePunches; } if (changed) { if (needReEvaluate()) reEvaluateChanged(); reCalculateLeaderTimes(0); //Restore changed staus on object that might have been changed //during sql update, due to partial updates resetChangeStatus(); return true; } return false; }