Mercurial > hg > easaier-soundaccess
annotate data/model/AudioSourceInfoModel.cpp @ 282:d9319859a4cf tip
(none)
author | benoitrigolleau |
---|---|
date | Fri, 31 Oct 2008 11:00:24 +0000 |
parents | 2ea04b3f9141 |
children |
rev | line source |
---|---|
lbajardsilogic@5 | 1 /* -*- c-basic-offset: 4 indent-tabs-mode: nil -*- vi:set ts=8 sts=4 sw=4: */ |
lbajardsilogic@5 | 2 |
lbajardsilogic@5 | 3 /* Sound Access |
lbajardsilogic@5 | 4 EASAIER client application. |
lbajardsilogic@5 | 5 Silogic 2007. Laure Bajard. |
lbajardsilogic@5 | 6 |
lbajardsilogic@5 | 7 This program is free software; you can redistribute it and/or |
lbajardsilogic@5 | 8 modify it under the terms of the GNU General Public License as |
lbajardsilogic@5 | 9 published by the Free Software Foundation; either version 2 of the |
lbajardsilogic@5 | 10 License, or (at your option) any later version. See the file |
lbajardsilogic@5 | 11 COPYING included with this distribution for more information. |
lbajardsilogic@5 | 12 */ |
lbajardsilogic@5 | 13 #include "AudioSourceInfoModel.h" |
lbajardsilogic@5 | 14 |
lbajardsilogic@5 | 15 |
lbajardsilogic@5 | 16 AudioSourceInfoModel::AudioSourceInfoModel() |
lbajardsilogic@5 | 17 {} |
lbajardsilogic@5 | 18 |
lbajardsilogic@5 | 19 AudioSourceInfoModel::~AudioSourceInfoModel() |
lbajardsilogic@5 | 20 { |
lbajardsilogic@5 | 21 m_info.clear(); |
lbajardsilogic@5 | 22 } |
lbajardsilogic@5 | 23 |
lbajardsilogic@5 | 24 void AudioSourceInfoModel::addInfo(QString proper, QString value) |
lbajardsilogic@5 | 25 { |
lbajardsilogic@244 | 26 std::map<QString, QStringList*>::iterator info = m_info.find(proper.toLower()); |
lbajardsilogic@244 | 27 if (info != m_info.end()) |
lbajardsilogic@244 | 28 { |
lbajardsilogic@244 | 29 QStringList* infolist = info->second; |
lbajardsilogic@244 | 30 if (!(infolist->contains(value))) |
lbajardsilogic@251 | 31 { |
lbajardsilogic@244 | 32 infolist->push_back(value); |
lbajardsilogic@251 | 33 } |
lbajardsilogic@244 | 34 } |
lbajardsilogic@244 | 35 else |
lbajardsilogic@244 | 36 { |
lbajardsilogic@244 | 37 QStringList* infolist = new QStringList(value); |
lbajardsilogic@244 | 38 m_info[proper.toLower()] = infolist; |
lbajardsilogic@244 | 39 } |
lbajardsilogic@244 | 40 |
lbajardsilogic@5 | 41 } |
lbajardsilogic@5 | 42 |
lbajardsilogic@244 | 43 QStringList* AudioSourceInfoModel::getInfo(const QString& proper) |
lbajardsilogic@5 | 44 { |
lbajardsilogic@244 | 45 std::map<QString, QStringList*>::iterator info; |
lbajardsilogic@5 | 46 |
lbajardsilogic@5 | 47 info = m_info.find(proper.toLower()); |
lbajardsilogic@5 | 48 |
lbajardsilogic@5 | 49 if (info == m_info.end()) |
lbajardsilogic@244 | 50 return 0; |
lbajardsilogic@5 | 51 |
lbajardsilogic@5 | 52 return (info->second); |
lbajardsilogic@5 | 53 } |
lbajardsilogic@5 | 54 |
lbajardsilogic@5 | 55 QString AudioSourceInfoModel::getKey(const QString& value) |
lbajardsilogic@5 | 56 { |
lbajardsilogic@5 | 57 QString proper = ""; |
lbajardsilogic@5 | 58 |
lbajardsilogic@244 | 59 std::map<QString, QStringList*>::iterator iter; |
lbajardsilogic@5 | 60 |
lbajardsilogic@5 | 61 for (iter = m_info.begin(); iter != m_info.end(); iter++) |
lbajardsilogic@5 | 62 { |
lbajardsilogic@244 | 63 QStringList* infoValue = iter->second; |
lbajardsilogic@244 | 64 if (infoValue->contains(value)) |
lbajardsilogic@5 | 65 { |
lbajardsilogic@5 | 66 proper = iter->first; |
lbajardsilogic@5 | 67 return proper; |
lbajardsilogic@5 | 68 } |
lbajardsilogic@5 | 69 } |
lbajardsilogic@5 | 70 |
lbajardsilogic@5 | 71 return proper; |
lbajardsilogic@5 | 72 } |