File indexing completed on 2024-11-24 04:50:39
0001 // SPDX-FileCopyrightText: 2022 Carl Schwan <carl@carlschwan.eu> 0002 // SPDX-License-Identifier: LGPL-2.0-or-later 0003 0004 #include "filter.h" 0005 0006 qint64 Filter::collectionId() const 0007 { 0008 return m_collectionId; 0009 } 0010 0011 QStringList Filter::tags() const 0012 { 0013 return m_tags; 0014 } 0015 0016 QString Filter::name() const 0017 { 0018 return m_name; 0019 } 0020 0021 void Filter::setCollectionId(qint64 collectionId) 0022 { 0023 if (m_collectionId == collectionId) { 0024 return; 0025 } 0026 m_collectionId = collectionId; 0027 Q_EMIT collectionIdChanged(); 0028 } 0029 0030 void Filter::setTags(QStringList tags) 0031 { 0032 if (m_tags == tags) { 0033 return; 0034 } 0035 m_tags = tags; 0036 Q_EMIT tagsChanged(); 0037 } 0038 0039 void Filter::setName(const QString &name) 0040 { 0041 if (m_name == name) { 0042 return; 0043 } 0044 m_name = name; 0045 Q_EMIT nameChanged(); 0046 } 0047 0048 void Filter::toggleFilterTag(const QString tagName) 0049 { 0050 if (!m_tags.contains(tagName)) { 0051 m_tags.append(tagName); 0052 Q_EMIT tagsChanged(); 0053 } else { 0054 m_tags.removeAll(tagName); 0055 Q_EMIT tagsChanged(); 0056 } 0057 } 0058 0059 void Filter::removeTag(const QString &tagName) 0060 { 0061 m_tags.removeAll(tagName); 0062 Q_EMIT tagsChanged(); 0063 } 0064 0065 void Filter::reset() 0066 { 0067 setName({}); 0068 setTags({}); 0069 setCollectionId(-1); 0070 } 0071 0072 #include "moc_filter.cpp"