diff options
Diffstat (limited to 'Swift/Controllers/UIEvents/RequestInviteToMUCUIEvent.h')
| -rw-r--r-- | Swift/Controllers/UIEvents/RequestInviteToMUCUIEvent.h | 70 | 
1 files changed, 49 insertions, 21 deletions
| diff --git a/Swift/Controllers/UIEvents/RequestInviteToMUCUIEvent.h b/Swift/Controllers/UIEvents/RequestInviteToMUCUIEvent.h index 69aa0cd..a8e4bb7 100644 --- a/Swift/Controllers/UIEvents/RequestInviteToMUCUIEvent.h +++ b/Swift/Controllers/UIEvents/RequestInviteToMUCUIEvent.h @@ -4,32 +4,60 @@   * See Documentation/Licenses/BSD-simplified.txt for more information.   */ +/* + * Copyright (c) 2014-2016 Isode Limited. + * All rights reserved. + * See the COPYING file for more information. + */ +  #pragma once -#include <boost/shared_ptr.hpp> +#include <memory>  #include <vector> -#include <Swift/Controllers/UIEvents/UIEvent.h>  #include <Swiften/JID/JID.h> -namespace Swift { -	class RequestInviteToMUCUIEvent : public UIEvent { -		public: -			typedef boost::shared_ptr<RequestInviteToMUCUIEvent> ref; - -			RequestInviteToMUCUIEvent(const JID& room, const std::vector<JID>& JIDsToInvite) : room_(room), invite_(JIDsToInvite) { -			} - -			const JID& getRoom() const { -				return room_; -			} - -			const std::vector<JID> getInvites() const { -				return invite_; -			} +#include <Swift/Controllers/UIEvents/UIEvent.h> -		private: -			JID room_; -			std::vector<JID> invite_; -	}; +namespace Swift { +    class RequestInviteToMUCUIEvent : public UIEvent { +        public: +            typedef std::shared_ptr<RequestInviteToMUCUIEvent> ref; + +            enum ImpromptuMode { +                Impromptu, +                NotImpromptu +            }; + +            /** +             * @brief RequestInviteToMUCUIEvent +             * @param originator This can be a MUC JID if the user wants to invite +             *          people to an existing MUC, or a contact JID if this is the +             *          start of an impromptu group chat. +             * @param JIDsToInvite This is a std::vector of JIDs which are prefilled +             *          in the invite dialog. +             * @param impromptu This flag indicates whether it is a normal MUC invite +             *          or an impromptu MUC invite. +             */ +            RequestInviteToMUCUIEvent(const JID& originator, const std::vector<JID>& JIDsToInvite, ImpromptuMode impromptu) : originator_(originator), invite_(JIDsToInvite) { +                isImpromptu_ = impromptu == Impromptu; +            } + +            const JID& getOriginator() const { +                return originator_; +            } + +            const std::vector<JID> getInvites() const { +                return invite_; +            } + +            bool isImpromptu() const { +                return isImpromptu_; +            } + +        private: +            JID originator_; +            std::vector<JID> invite_; +            bool isImpromptu_; +    };  } | 
 Swift
 Swift