19#ifndef LIB_QUENTIER_TYPES_SHARED_NOTE_H
20#define LIB_QUENTIER_TYPES_SHARED_NOTE_H
22#include <quentier/utility/Linkage.h>
23#include <quentier/utility/Printable.h>
25#include <qt5qevercloud/QEverCloud.h>
27#include <QSharedDataPointer>
31QT_FORWARD_DECLARE_CLASS(SharedNoteData)
36 using SharedNotePrivilegeLevel = qevercloud::SharedNotePrivilegeLevel;
37 using ContactType = qevercloud::ContactType;
43 explicit SharedNote(
const qevercloud::SharedNote & sharedNote);
48 bool operator==(
const SharedNote & other)
const;
49 bool operator!=(
const SharedNote & other)
const;
51 const qevercloud::SharedNote & qevercloudSharedNote()
const;
52 qevercloud::SharedNote & qevercloudSharedNote();
54 const QString & noteGuid()
const;
55 void setNoteGuid(
const QString & noteGuid);
57 int indexInNote()
const;
58 void setIndexInNote(
const int index);
60 bool hasSharerUserId()
const;
61 qint32 sharerUserId()
const;
62 void setSharerUserId(
const qint32
id);
64 bool hasRecipientIdentityId()
const;
65 qint64 recipientIdentityId()
const;
66 void setRecipientIdentityId(
const qint64 identityId);
68 bool hasRecipientIdentityContactName()
const;
69 const QString & recipientIdentityContactName()
const;
71 void setRecipientIdentityContactName(
72 const QString & recipientIdentityContactName);
74 bool hasRecipientIdentityContactId()
const;
75 const QString & recipientIdentityContactId()
const;
77 void setRecipientIdentityContactId(
78 const QString & recipientIdentityContactId);
80 bool hasRecipientIdentityContactType()
const;
81 ContactType recipientIdentityContactType()
const;
83 void setRecipientIdentityContactType(
84 const ContactType recipientIdentityContactType);
86 void setRecipientIdentityContactType(
87 const qint32 recipientIdentityContactType);
89 bool hasRecipientIdentityContactPhotoUrl()
const;
90 const QString & recipientIdentityContactPhotoUrl()
const;
92 void setRecipientIdentityContactPhotoUrl(
93 const QString & recipientIdentityPhotoUrl);
95 bool hasRecipientIdentityContactPhotoLastUpdated()
const;
96 qint64 recipientIdentityContactPhotoLastUpdated()
const;
98 void setRecipientIdentityContactPhotoLastUpdated(
99 const qint64 recipientIdentityPhotoLastUpdated);
101 bool hasRecipientIdentityContactMessagingPermit()
const;
102 const QByteArray & recipientIdentityContactMessagingPermit()
const;
104 void setRecipientIdentityContactMessagingPermit(
105 const QByteArray & messagingPermit);
107 bool hasRecipientIdentityContactMessagingPermitExpires()
const;
108 qint64 recipientIdentityContactMessagingPermitExpires()
const;
110 void setRecipientIdentityContactMessagingPermitExpires(
111 const qint64 timestamp);
113 bool hasRecipientIdentityUserId()
const;
114 qint32 recipientIdentityUserId()
const;
115 void setRecipientIdentityUserId(
const qint32 userId);
117 bool hasRecipientIdentityDeactivated()
const;
118 bool recipientIdentityDeactivated()
const;
119 void setRecipientIdentityDeactivated(
const bool deactivated);
121 bool hasRecipientIdentitySameBusiness()
const;
122 bool recipientIdentitySameBusiness()
const;
123 void setRecipientIdentitySameBusiness(
const bool sameBusiness);
125 bool hasRecipientIdentityBlocked()
const;
126 bool recipientIdentityBlocked()
const;
127 void setRecipientIdentityBlocked(
const bool blocked);
129 bool hasRecipientIdentityUserConnected()
const;
130 bool recipientIdentityUserConnected()
const;
131 void setRecipientIdentityUserConnected(
const bool userConnected);
133 bool hasRecipientIdentityEventId()
const;
134 qint64 recipientIdentityEventId()
const;
135 void setRecipientIdentityEventId(
const qint64 eventId);
137 bool hasRecipientIdentity()
const;
138 const qevercloud::Identity & recipientIdentity()
const;
139 void setRecipientIdentity(qevercloud::Identity && identity);
141 bool hasPrivilegeLevel()
const;
142 SharedNotePrivilegeLevel privilegeLevel()
const;
143 void setPrivilegeLevel(
const SharedNotePrivilegeLevel level);
144 void setPrivilegeLevel(
const qint8 level);
146 bool hasCreationTimestamp()
const;
147 qint64 creationTimestamp()
const;
148 void setCreationTimestamp(
const qint64 timestamp);
150 bool hasModificationTimestamp()
const;
151 qint64 modificationTimestamp()
const;
152 void setModificationTimestamp(
const qint64 timestamp);
154 bool hasAssignmentTimestamp()
const;
155 qint64 assignmentTimestamp()
const;
156 void setAssignmentTimestamp(
const qint64 timestamp);
158 virtual QTextStream & print(QTextStream & strm)
const override;
161 QSharedDataPointer<SharedNoteData> d;
The Printable class is the interface for Quentier's internal classes which should be able to write th...
Definition Printable.h:38
Definition SharedNote.h:34