File indexing completed on 2024-12-29 04:49:56
0001 /* 0002 SPDX-FileCopyrightText: 2019 Volker Krause <vkrause@kde.org> 0003 0004 SPDX-License-Identifier: LGPL-2.0-or-later 0005 */ 0006 0007 #pragma once 0008 0009 #include "kitinerary_export.h" 0010 #include "datatypes.h" 0011 0012 0013 namespace KItinerary { 0014 0015 class CreativeWorkPrivate; 0016 0017 /** Base type describing any form of content. 0018 * @see https://schema.org/CreativeWork 0019 */ 0020 class KITINERARY_EXPORT CreativeWork 0021 { 0022 KITINERARY_GADGET(CreativeWork) 0023 /** Name of the file. */ 0024 KITINERARY_PROPERTY(QString, name, setName) 0025 /** Human readable description. */ 0026 KITINERARY_PROPERTY(QString, description, setDescription) 0027 /** Mimetype. */ 0028 KITINERARY_PROPERTY(QString, encodingFormat, setEncodingFormat) 0029 0030 protected: 0031 ///@cond internal 0032 QExplicitlySharedDataPointer<CreativeWorkPrivate> d; 0033 ///@endcond 0034 }; 0035 0036 class DigitalDocumentPrivate; 0037 0038 /** Description of a document. 0039 * @see https://schema.org/DigitalDocument 0040 */ 0041 class KITINERARY_EXPORT DigitalDocument : public CreativeWork 0042 { 0043 KITINERARY_GADGET(DigitalDocument) 0044 }; 0045 0046 class EmailMessagePrivate; 0047 0048 /** Description of an email. 0049 * @see https://schema.org/EmailMessage 0050 */ 0051 class KITINERARY_EXPORT EmailMessage : public CreativeWork 0052 { 0053 KITINERARY_GADGET(EmailMessage) 0054 }; 0055 0056 } 0057 0058 Q_DECLARE_METATYPE(KItinerary::CreativeWork) 0059 Q_DECLARE_METATYPE(KItinerary::DigitalDocument) 0060 Q_DECLARE_METATYPE(KItinerary::EmailMessage) 0061 0062