summaryrefslogtreecommitdiff
path: root/indra/newview/llcallfloater.h
diff options
context:
space:
mode:
authorLoren Shih <seraph@lindenlab.com>2009-12-15 19:20:03 -0500
committerLoren Shih <seraph@lindenlab.com>2009-12-15 19:20:03 -0500
commit073ec70829723e54f822052fe9c6c3e998e8dfca (patch)
tree3d7e782101a2284bcb0fcbf61273f8167d03544f /indra/newview/llcallfloater.h
parent4d4406820b858d59be670f0ca03bdadefba61c53 (diff)
parente7eae453908e77a959a2ef6fea272107491fe35e (diff)
automated merge viewer2.0->avp
--HG-- branch : avatar-pipeline
Diffstat (limited to 'indra/newview/llcallfloater.h')
-rw-r--r--indra/newview/llcallfloater.h18
1 files changed, 16 insertions, 2 deletions
diff --git a/indra/newview/llcallfloater.h b/indra/newview/llcallfloater.h
index b615f57d5b..b2288a42ff 100644
--- a/indra/newview/llcallfloater.h
+++ b/indra/newview/llcallfloater.h
@@ -35,12 +35,13 @@
#define LL_LLCALLFLOATER_H
#include "lldockablefloater.h"
+#include "llvoiceclient.h"
class LLAvatarList;
class LLNonAvatarCaller;
+class LLOutputMonitorCtrl;
class LLParticipantList;
class LLSpeakerMgr;
-
/**
* The Voice Control Panel is an ambient window summoned by clicking the flyout chevron on the Speak button.
* It can be torn-off and freely positioned onscreen.
@@ -52,7 +53,7 @@ class LLSpeakerMgr;
* When the Resident is engaged in any chat except Nearby Chat, the Voice Control Panel also provides an
* 'Leave Call' button to allow the Resident to leave that voice channel.
*/
-class LLCallFloater : public LLDockableFloater
+class LLCallFloater : public LLDockableFloater, LLVoiceClientParticipantObserver
{
public:
LLCallFloater(const LLSD& key);
@@ -60,6 +61,14 @@ public:
/*virtual*/ BOOL postBuild();
/*virtual*/ void onOpen(const LLSD& key);
+ /*virtual*/ void draw();
+
+ /**
+ * Is called by LLVoiceClient::notifyParticipantObservers when voice participant list is changed.
+ *
+ * Refreshes list to display participants not in voice as disabled.
+ */
+ /*virtual*/ void onChange();
private:
typedef enum e_voice_controls_type
@@ -87,6 +96,8 @@ private:
void onCurrentChannelChanged(const LLUUID& session_id);
void updateTitle();
void initAgentData();
+ void setModeratorMutedVoice(bool moderator_muted);
+ void updateModeratorState();
private:
LLSpeakerMgr* mSpeakerManager;
@@ -94,6 +105,9 @@ private:
LLAvatarList* mAvatarList;
LLNonAvatarCaller* mNonAvatarCaller;
EVoiceControls mVoiceType;
+ LLPanel* mAgentPanel;
+ LLOutputMonitorCtrl* mSpeakingIndicator;
+ bool mIsModeratorMutedVoice;
boost::signals2::connection mChannelChangedConnection;
};