File indexing completed on 2024-05-12 04:19:48

0001 // vim: set tabstop=4 shiftwidth=4 expandtab:
0002 /*
0003 Gwenview: an image viewer
0004 Copyright 2008 Aurélien Gâteau <agateau@kde.org>
0005 
0006 This program is free software; you can redistribute it and/or
0007 modify it under the terms of the GNU General Public License
0008 as published by the Free Software Foundation; either version 2
0009 of the License, or (at your option) any later version.
0010 
0011 This program is distributed in the hope that it will be useful,
0012 but WITHOUT ANY WARRANTY; without even the implied warranty of
0013 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
0014 GNU General Public License for more details.
0015 
0016 You should have received a copy of the GNU General Public License
0017 along with this program; if not, write to the Free Software
0018 Foundation, Inc., 51 Franklin Street, Fifth Floor, Cambridge, MA 02110-1301, USA.
0019 
0020 */
0021 // Self
0022 #include "abstractsemanticinfobackend.h"
0023 
0024 // Qt
0025 #include <QStringList>
0026 #include <QVariant>
0027 
0028 // KF
0029 
0030 // Local
0031 
0032 namespace Gwenview
0033 {
0034 TagSet::TagSet()
0035     : QSet<SemanticInfoTag>()
0036 {
0037 }
0038 
0039 TagSet::TagSet(const QSet<SemanticInfoTag> &set)
0040     : QSet<QString>(set)
0041 {
0042 }
0043 
0044 TagSet::TagSet(const QList<SemanticInfoTag> &list)
0045     : QSet(list.begin(), list.end())
0046 {
0047 }
0048 
0049 QVariant TagSet::toVariant() const
0050 {
0051     QStringList lst = values();
0052     return QVariant(lst);
0053 }
0054 
0055 TagSet TagSet::fromVariant(const QVariant &variant)
0056 {
0057     QStringList lst = variant.toStringList();
0058     return TagSet::fromList(lst);
0059 }
0060 
0061 TagSet TagSet::fromList(const QList<SemanticInfoTag> &list)
0062 {
0063     return TagSet(list);
0064 }
0065 
0066 AbstractSemanticInfoBackEnd::AbstractSemanticInfoBackEnd(QObject *parent)
0067     : QObject(parent)
0068 {
0069     qRegisterMetaType<SemanticInfo>("SemanticInfo");
0070 }
0071 
0072 } // namespace
0073 
0074 #include "moc_abstractsemanticinfobackend.cpp"