digiKam
Loading...
Searching...
No Matches
template.h
Go to the documentation of this file.
1/* ============================================================
2 *
3 * This file is a part of digiKam project
4 * https://www.digikam.org
5 *
6 * Date : 2009-06-20
7 * Description : Template information container.
8 *
9 * SPDX-FileCopyrightText: 2009-2024 by Gilles Caulier <caulier dot gilles at gmail dot com>
10 *
11 * SPDX-License-Identifier: GPL-2.0-or-later
12 *
13 * ============================================================ */
14
15#pragma once
16
17// Qt includes
18
19#include <QMetaType>
20#include <QString>
21#include <QStringList>
22#include <QDebug>
23
24// Local includes
25
26#include "metadatainfo.h"
27#include "digikam_export.h"
28#include "metaengine.h"
29
30namespace Digikam
31{
32
33class TemplatePrivate;
34
35class DIGIKAM_EXPORT Template
36{
37public:
38
39 Template() = default;
40 ~Template() = default;
41
45 bool isNull() const;
46
50 bool isEmpty() const;
51
55 void merge(const Template& t);
56
60 bool operator==(const Template& t) const;
61
62 void setTemplateTitle(const QString& title);
63 QString templateTitle() const;
64
65 void setAuthors(const QStringList& authors);
66 void setAuthorsPosition(const QString& authorPosition);
67 void setCredit(const QString& credit);
68 void setCopyright(const MetaEngine::AltLangMap& copyright);
69 void setRightUsageTerms(const MetaEngine::AltLangMap& rightUsageTerms);
70 void setSource(const QString& source);
71 void setInstructions(const QString& instructions);
72 void setLocationInfo(const IptcCoreLocationInfo& inf);
73 void setContactInfo(const IptcCoreContactInfo& inf);
74 void setIptcSubjects(const QStringList& subjects);
75
76 QStringList authors() const;
77 QString authorsPosition() const;
78 QString credit() const;
79 MetaEngine::AltLangMap copyright() const;
80 MetaEngine::AltLangMap rightUsageTerms() const;
81 QString source() const;
82 QString instructions() const;
83 IptcCoreLocationInfo locationInfo() const;
84 IptcCoreContactInfo contactInfo() const;
85 QStringList IptcSubjects() const;
86
87 static QString removeTemplateTitle()
88 {
89 return QLatin1String("_REMOVE_TEMPLATE_");
90 };
91
92protected:
93
98
102 QStringList m_authors;
103
108
112 QString m_credit;
113
118
123
127 QString m_source;
128
133
138
143
147 QStringList m_subjects;
148};
149
151DIGIKAM_EXPORT QDebug operator<<(QDebug dbg, const Template& t);
152
153} // namespace Digikam
154
155Q_DECLARE_METATYPE(Digikam::Template)
Definition metadatainfo.h:54
Definition metadatainfo.h:31
QMap< QString, QString > AltLangMap
Definition metaengine.h:135
Definition template.h:36
IptcCoreLocationInfo m_locationInfo
Definition template.h:137
IptcCoreContactInfo m_contactInfo
Definition template.h:142
QString m_instructions
Definition template.h:132
~Template()=default
MetaEngine::AltLangMap m_rightUsageTerms
Definition template.h:122
Template()=default
QString m_credit
Definition template.h:112
MetaEngine::AltLangMap m_copyright
Definition template.h:117
static QString removeTemplateTitle()
Definition template.h:87
QString m_authorsPosition
Definition template.h:107
QString m_templateTitle
Definition template.h:97
QStringList m_authors
Definition template.h:102
QString m_source
Definition template.h:127
QStringList m_subjects
Definition template.h:147
Definition datefolderview.cpp:34
QDebug operator<<(QDebug dbg, const DbEngineParameters &p)
Definition dbengineparameters.cpp:930
bool operator==(const SearchTextSettings &a, const SearchTextSettings &b)
Definition searchtextbar.cpp:40