File indexing completed on 2024-06-23 05:18:34
0001 /* 0002 SPDX-FileCopyrightText: 2023 Daniel Vrátil <dvratil@kde.org> 0003 0004 SPDX-License-Identifier: LGPL-2.0-or-later 0005 */ 0006 0007 #pragma once 0008 0009 #include <QString> 0010 #include <memory> 0011 0012 #include "messagecomposer_export.h" 0013 #include "messagepart.h" 0014 0015 namespace MessageComposer 0016 { 0017 /** 0018 * @brief The ItipPart class 0019 */ 0020 class MESSAGECOMPOSER_EXPORT ItipPart : public MessagePart 0021 { 0022 Q_OBJECT 0023 Q_PROPERTY(QString invitation READ invitation WRITE setInvitation NOTIFY invitationChanged) 0024 Q_PROPERTY(QString invitationBody READ invitationBody WRITE setInvitationBody NOTIFY invitationBodyChanged) 0025 Q_PROPERTY(bool outlookConformInvitation READ outlookConformInvitation WRITE setOutlookConformInvitation NOTIFY outlookConformInvitationChanged) 0026 Q_PROPERTY(QString method READ method WRITE setMethod NOTIFY methodChanged) 0027 0028 public: 0029 explicit ItipPart(QObject *parent = nullptr); 0030 ~ItipPart() override; 0031 0032 [[nodiscard]] QString method() const; 0033 void setMethod(const QString &method); 0034 0035 [[nodiscard]] QString invitation() const; 0036 void setInvitation(const QString &invitation); 0037 0038 [[nodiscard]] QString invitationBody() const; 0039 void setInvitationBody(const QString &invitationBody); 0040 0041 // default false 0042 [[nodiscard]] bool outlookConformInvitation() const; 0043 void setOutlookConformInvitation(bool enabled); 0044 0045 Q_SIGNALS: 0046 void methodChanged(); 0047 void invitationChanged(); 0048 void invitationBodyChanged(); 0049 void outlookConformInvitationChanged(); 0050 0051 private: 0052 class ItipPartPrivate; 0053 std::unique_ptr<ItipPartPrivate> const d; 0054 }; 0055 }