summaryrefslogtreecommitdiffstats
blob: b8552b3c589e8044c52fdb80554f186237755fbc (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
/*
 * Copyright (c) 2010 Kevin Smith
 * Licensed under the GNU General Public License v3.
 * See Documentation/Licenses/GPLv3.txt for more information.
 */

#pragma once

#include <boost/shared_ptr.hpp>
#include <vector>

#include "Swift/Controllers/UIEvents/UIEvent.h"
#include "Swiften/MUC/MUCBookmark.h"

namespace Swift {
	/**
	 * An event for regrouping a roster item.
	 * This doesn't need to cover all groups, so it's valid to have the
	 * contact in several groups that are neither removedGroups or addedGroups.
	 */
	class RegroupRosterItemUIEvent : public UIEvent {
		public:
			RegroupRosterItemUIEvent(const JID& jid, const std::vector<String>& addedGroups, const std::vector<String>& removedGroups) : jid_(jid), addedGroups_(addedGroups), removedGroups_(removedGroups) {}

			const JID& getJID() const {return jid_;}
			const std::vector<String>& getAddedGroups() const {return addedGroups_;}
			const std::vector<String>& getRemovedGroups() const {return removedGroups_;}

		private:
			JID jid_;
			std::vector<String> addedGroups_;
			std::vector<String> removedGroups_;
	};
}