From 2a62ca5b96d08ad2f24e8a60e161657a7222aba6 Mon Sep 17 00:00:00 2001
From: Don Kjer <don@lindenlab.com>
Date: Thu, 24 May 2012 18:48:55 +0000
Subject: [PATCH] Connected eventhost nearyby host listener.  Connected
 getGroups eventhost hook.

---
 indra/newview/llagentlistener.cpp | 11 +++++++++++
 indra/newview/llnearbychatbar.cpp |  2 ++
 indra/newview/llnearbychatbar.h   |  4 ++++
 3 files changed, 17 insertions(+)

diff --git a/indra/newview/llagentlistener.cpp b/indra/newview/llagentlistener.cpp
index a8d2222c030..a4c0b056ac1 100644
--- a/indra/newview/llagentlistener.cpp
+++ b/indra/newview/llagentlistener.cpp
@@ -126,6 +126,17 @@ LLAgentListener::LLAgentListener(LLAgent &agent)
 		"[\"obj_uuid\"]: id of object to look at, use this or [\"position\"] to indicate the target\n"
 		"[\"position\"]: region position {x, y, z} where to find closest object or avatar to look at",
         &LLAgentListener::lookAt);
+    add("getGroups",
+        "Send information about the agent's groups on [\"reply\"]:\n"
+        "[\"groups\"]: array of group information\n"
+        "[\"id\"]: group id\n"
+        "[\"name\"]: group name\n"
+        "[\"insignia\"]: group insignia texture id\n"
+        "[\"notices\"]: boolean indicating if this user accepts notices from this group\n"
+        "[\"display\"]: boolean indicating if this group is listed in the user's profile\n"
+        "[\"contrib\"]: user's land contribution to this group\n",
+        &LLAgentListener::getGroups,
+        LLSDMap("reply", LLSD()));
 }
 
 void LLAgentListener::requestTeleport(LLSD const & event_data) const
diff --git a/indra/newview/llnearbychatbar.cpp b/indra/newview/llnearbychatbar.cpp
index b4224e30e68..c71ea48193d 100644
--- a/indra/newview/llnearbychatbar.cpp
+++ b/indra/newview/llnearbychatbar.cpp
@@ -34,6 +34,7 @@
 
 #include "llfirstuse.h"
 #include "llnearbychatbar.h"
+#include "llnearbychatbarlistener.h"
 #include "llagent.h"
 #include "llgesturemgr.h"
 #include "llmultigesture.h"
@@ -80,6 +81,7 @@ LLNearbyChatBar::LLNearbyChatBar(const LLSD& key)
 	mExpandedHeight(COLLAPSED_HEIGHT + EXPANDED_HEIGHT)
 {
 	mSpeakerMgr = LLLocalSpeakerMgr::getInstance();
+	mListener.reset(new LLNearbyChatBarListener(*this));
 }
 
 //virtual
diff --git a/indra/newview/llnearbychatbar.h b/indra/newview/llnearbychatbar.h
index 8547cf0bced..aa9c3a6a983 100644
--- a/indra/newview/llnearbychatbar.h
+++ b/indra/newview/llnearbychatbar.h
@@ -35,6 +35,8 @@
 #include "lloutputmonitorctrl.h"
 #include "llspeakers.h"
 
+class LLNearbyChatBarListener;
+
 class LLNearbyChatBar :	public LLFloater
 {
 public:
@@ -92,6 +94,8 @@ class LLNearbyChatBar :	public LLFloater
 	LLLocalSpeakerMgr*		mSpeakerMgr;
 
 	S32 mExpandedHeight;
+
+	boost::shared_ptr<LLNearbyChatBarListener> mListener;
 };
 
 #endif
-- 
GitLab