lbajardsilogic@5: /* -*- c-basic-offset: 4 indent-tabs-mode: nil -*- vi:set ts=8 sts=4 sw=4: */ lbajardsilogic@5: lbajardsilogic@5: /* Sound Access lbajardsilogic@5: EASAIER client application. lbajardsilogic@5: Silogic 2007. Laure Bajard. lbajardsilogic@5: lbajardsilogic@5: This program is free software; you can redistribute it and/or lbajardsilogic@5: modify it under the terms of the GNU General Public License as lbajardsilogic@5: published by the Free Software Foundation; either version 2 of the lbajardsilogic@5: License, or (at your option) any later version. See the file lbajardsilogic@5: COPYING included with this distribution for more information. lbajardsilogic@5: */ lbajardsilogic@5: #include "AudioSourceInfoModel.h" lbajardsilogic@5: lbajardsilogic@5: lbajardsilogic@5: AudioSourceInfoModel::AudioSourceInfoModel() lbajardsilogic@5: {} lbajardsilogic@5: lbajardsilogic@5: AudioSourceInfoModel::~AudioSourceInfoModel() lbajardsilogic@5: { lbajardsilogic@5: m_info.clear(); lbajardsilogic@5: } lbajardsilogic@5: lbajardsilogic@5: void AudioSourceInfoModel::addInfo(QString proper, QString value) lbajardsilogic@5: { lbajardsilogic@244: std::map::iterator info = m_info.find(proper.toLower()); lbajardsilogic@244: if (info != m_info.end()) lbajardsilogic@244: { lbajardsilogic@244: QStringList* infolist = info->second; lbajardsilogic@244: if (!(infolist->contains(value))) lbajardsilogic@251: { lbajardsilogic@244: infolist->push_back(value); lbajardsilogic@251: } lbajardsilogic@244: } lbajardsilogic@244: else lbajardsilogic@244: { lbajardsilogic@244: QStringList* infolist = new QStringList(value); lbajardsilogic@244: m_info[proper.toLower()] = infolist; lbajardsilogic@244: } lbajardsilogic@244: lbajardsilogic@5: } lbajardsilogic@5: lbajardsilogic@244: QStringList* AudioSourceInfoModel::getInfo(const QString& proper) lbajardsilogic@5: { lbajardsilogic@244: std::map::iterator info; lbajardsilogic@5: lbajardsilogic@5: info = m_info.find(proper.toLower()); lbajardsilogic@5: lbajardsilogic@5: if (info == m_info.end()) lbajardsilogic@244: return 0; lbajardsilogic@5: lbajardsilogic@5: return (info->second); lbajardsilogic@5: } lbajardsilogic@5: lbajardsilogic@5: QString AudioSourceInfoModel::getKey(const QString& value) lbajardsilogic@5: { lbajardsilogic@5: QString proper = ""; lbajardsilogic@5: lbajardsilogic@244: std::map::iterator iter; lbajardsilogic@5: lbajardsilogic@5: for (iter = m_info.begin(); iter != m_info.end(); iter++) lbajardsilogic@5: { lbajardsilogic@244: QStringList* infoValue = iter->second; lbajardsilogic@244: if (infoValue->contains(value)) lbajardsilogic@5: { lbajardsilogic@5: proper = iter->first; lbajardsilogic@5: return proper; lbajardsilogic@5: } lbajardsilogic@5: } lbajardsilogic@5: lbajardsilogic@5: return proper; lbajardsilogic@5: }