TrafficListWidget(ActionListener &_action_listener, const FlarmId *array, size_t count) :action_listener(&_action_listener), filter_widget(nullptr), buttons(nullptr) { items.reserve(count); for (unsigned i = 0; i < count; ++i) items.emplace_back(array[i]); }
bool qmimap4::CopyOfflineJob::merge(OfflineJob* pOfflineJob) { assert(pOfflineJob); if (pOfflineJob->getType() == TYPE_COPY && wcscmp(getFolder(), pOfflineJob->getFolder()) == 0) { CopyOfflineJob* p = static_cast<CopyOfflineJob*>(pOfflineJob); if (wcscmp(wstrFolderTo_.get(), p->wstrFolderTo_.get()) == 0 && bMove_ == p->bMove_) { UidList listUidFrom; listUidFrom.reserve(listUidFrom_.size() + p->listUidFrom_.size()); ItemList listItemTo; listItemTo.reserve(listItemTo_.size() + p->listItemTo_.size()); UidList::const_iterator itUS = listUidFrom_.begin(); UidList::const_iterator itUO = p->listUidFrom_.begin(); ItemList::const_iterator itIS = listItemTo_.begin(); ItemList::const_iterator itIO = p->listItemTo_.begin(); while (true) { if (itUS != listUidFrom_.end()) { if (itUO != p->listUidFrom_.end()) { if (*itUS < *itUO) { listUidFrom.push_back(*itUS++); listItemTo.push_back(*itIS++); } else { listUidFrom.push_back(*itUO++); listItemTo.push_back(*itIO++); } } else { listUidFrom.push_back(*itUS++); listItemTo.push_back(*itIS++); } } else { if (itUO != p->listUidFrom_.end()) { listUidFrom.push_back(*itUO++); listItemTo.push_back(*itIO++); } else { break; } } } listUidFrom_.swap(listUidFrom); listItemTo_.swap(listItemTo); return true; } } return false; }