From d422c44bb0e908a56058caf1cfdd605756ca6b64 Mon Sep 17 00:00:00 2001 From: Linus Jahn Date: Thu, 2 Sep 2021 16:14:02 +0200 Subject: PubSubNodeConfig: Add Max option to maxItems --- src/base/QXmppPubSubNodeConfig.h | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) (limited to 'src/base/QXmppPubSubNodeConfig.h') diff --git a/src/base/QXmppPubSubNodeConfig.h b/src/base/QXmppPubSubNodeConfig.h index 16e26709..510feed6 100644 --- a/src/base/QXmppPubSubNodeConfig.h +++ b/src/base/QXmppPubSubNodeConfig.h @@ -27,11 +27,21 @@ #include "QXmppDataForm.h" #include "QXmppDataFormBase.h" +#include + class QXmppPubSubNodeConfigPrivate; class QXMPP_EXPORT QXmppPubSubNodeConfig : public QXmppExtensibleDataFormBase { public: + struct Unset + { + }; + struct Max + { + }; + using ItemLimit = std::variant; + enum AccessModel : uint8_t { Open, Presence, @@ -140,8 +150,9 @@ public: QString language() const; void setLanguage(const QString &language); - std::optional maxItems() const; - void setMaxItems(std::optional maxItems); + ItemLimit maxItems() const; + void setMaxItems(ItemLimit maxItems); + inline void resetMaxItems() { setMaxItems(Unset()); } std::optional maxPayloadSize() const; void setMaxPayloadSize(std::optional maxPayloadSize); -- cgit v1.2.3