27 #include <QStringList> 29 #include <KLocalizedString> 37 template <
class IDX,
class DATA>
class TypesMap 40 typedef QMap <IDX, Kwave::Triple <DATA, QString, QString> >
TripleMap;
62 virtual void fill() = 0;
76 triple(data, name, description);
77 m_list.insert(index, triple);
81 inline unsigned int count()
const {
91 foreach (
const IDX &it,
m_list.keys()) {
103 foreach (
const IDX &it,
m_list.keys()) {
112 Q_ASSERT(
m_list.contains(type));
113 return m_list[type].first();
119 Q_ASSERT(
m_list.contains(type));
120 return m_list[type].second();
130 if (!
m_list.contains(type))
return QString();
131 QString s(
m_list[type].third());
132 return (localized) ? i18n(s.toLatin1()) : s;
141 foreach (
const IDX &it,
m_list.keys()) {
142 names.append(
m_list[it].second());
unsigned int count() const
QString description(IDX type, bool localized) const
DATA data(IDX type) const
QList< IDX > keys() const
virtual void append(IDX index, DATA data, const QString &name, const QString &description)
QMap< IDX, Kwave::Triple< DATA, QString, QString > > TripleMap
QStringList allNames() const
QString name(IDX type) const
IDX findFromData(const DATA &data) const
IDX findFromName(const QString &name) const