void StringSelector::fillStrings() { if (!_store) { return; } QHash<QString, StringPtr> strings; StringList stringList = _store->getObjects<String>(); StringList::ConstIterator it = stringList.begin(); for (; it != stringList.end(); ++it) { StringPtr string = (*it); string->readLock(); strings.insert(string->Name(), string); string->unlock(); } QStringList list = strings.keys(); qSort(list); StringPtr current = selectedString(); _string->clear(); foreach (QString string, list) { StringPtr s = strings.value(string); _string->addItem(string, qVariantFromValue(s.data())); }
void StringSelector::setSelectedString(StringPtr selectedString) { int i=-1; for (int j=0; j<_string->count() ; ++j) { if (selectedString.data() == _string->itemData(j).value<String*>()) { i=j; break; } } Q_ASSERT(i != -1); _string->setCurrentIndex(i); }
void StringSelector::setSelectedString(StringPtr selectedString) { int i=-1,j; for (j=0; j<_string->count() ; j++) { if (selectedString.data() == (qVariantValue<String*>(_string->itemData(j)))) { i=j; break; } } Q_ASSERT(i != -1); _string->setCurrentIndex(i); }