summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKevin Smith <git@kismith.co.uk>2010-09-24 15:38:29 (GMT)
committerKevin Smith <git@kismith.co.uk>2010-09-24 15:38:29 (GMT)
commitecc4dc5633b6d3b46ff2ef24d7d976172b9c01ae (patch)
tree74c9d7701b3d2e7ef1ead5892b1ec35d13dd59c0 /Swift/Controllers/UIEvents
parent3a57283476de7d29d6652145336dc03964d5659c (diff)
downloadswift-ecc4dc5633b6d3b46ff2ef24d7d976172b9c01ae.zip
swift-ecc4dc5633b6d3b46ff2ef24d7d976172b9c01ae.tar.bz2
Add logic and tests for modifying roster items. No UI Yet.
(Partially) Resolves: #575 (Partially) Resolves: #272
Diffstat (limited to 'Swift/Controllers/UIEvents')
-rw-r--r--Swift/Controllers/UIEvents/RegroupRosterItemUIEvent.h34
-rw-r--r--Swift/Controllers/UIEvents/RenameRosterItemUIEvent.h26
2 files changed, 60 insertions, 0 deletions
diff --git a/Swift/Controllers/UIEvents/RegroupRosterItemUIEvent.h b/Swift/Controllers/UIEvents/RegroupRosterItemUIEvent.h
new file mode 100644
index 0000000..b8552b3
--- /dev/null
+++ b/Swift/Controllers/UIEvents/RegroupRosterItemUIEvent.h
@@ -0,0 +1,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_;
+ };
+}
diff --git a/Swift/Controllers/UIEvents/RenameRosterItemUIEvent.h b/Swift/Controllers/UIEvents/RenameRosterItemUIEvent.h
new file mode 100644
index 0000000..4b550e6
--- /dev/null
+++ b/Swift/Controllers/UIEvents/RenameRosterItemUIEvent.h
@@ -0,0 +1,26 @@
+/*
+ * 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 "Swift/Controllers/UIEvents/UIEvent.h"
+#include "Swiften/MUC/MUCBookmark.h"
+
+namespace Swift {
+ class RenameRosterItemUIEvent : public UIEvent {
+ public:
+ RenameRosterItemUIEvent(const JID& jid, const String& newName) : jid_(jid), newName_(newName) {}
+
+ const JID& getJID() const {return jid_;}
+ const String& getNewName() const {return newName_;}
+
+ private:
+ JID jid_;
+ String newName_;
+ };
+}