diff options
author | Mike Antipov <mantipov@productengine.com> | 2009-12-28 17:21:13 +0200 |
---|---|---|
committer | Mike Antipov <mantipov@productengine.com> | 2009-12-28 17:21:13 +0200 |
commit | 0bf77e227553eee4221cda5ddbe937399f6f61bb (patch) | |
tree | 2bba5231bb1d5ff35c04eda4ba2a4d314912c363 /indra/newview/llcallfloater.h | |
parent | 1474f3ae335c5286ad6254731dd6882a876e1bf8 (diff) |
Work on low task EXT-3682 (Dedicated icon is required for AvaLine callers in the VCP)
-- refactored processing of voice participants in the "Voice control panel".
Now list is filled only when voice channel is in CONNECTED state and is cleared otherwise.
--HG--
branch : product-engine
Diffstat (limited to 'indra/newview/llcallfloater.h')
-rw-r--r-- | indra/newview/llcallfloater.h | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/indra/newview/llcallfloater.h b/indra/newview/llcallfloater.h index 3df9e333c5..2b856b9c32 100644 --- a/indra/newview/llcallfloater.h +++ b/indra/newview/llcallfloater.h @@ -35,6 +35,7 @@ #define LL_LLCALLFLOATER_H #include "lldockablefloater.h" +#include "llvoicechannel.h" #include "llvoiceclient.h" class LLAvatarList; @@ -192,6 +193,28 @@ private: */ bool validateSpeaker(const LLUUID& speaker_id); + /** + * Connects to passed channel to be updated according to channel's voice states. + */ + void connectToChannel(LLVoiceChannel* channel); + + /** + * Callback to process changing of voice channel's states. + */ + void onVoiceChannelStateChanged(const LLVoiceChannel::EState& old_state, const LLVoiceChannel::EState& new_state); + + /** + * Updates floater according to passed channel's voice state. + */ + void updateState(const LLVoiceChannel::EState& new_state); + + /** + * Resets floater to be ready to show voice participants. + * + * Clears all data from the latest voice session. + */ + void reset(); + private: speaker_state_map_t mSpeakerStateMap; LLSpeakerMgr* mSpeakerManager; @@ -242,6 +265,16 @@ private: timers_map mVoiceLeftTimersMap; S32 mVoiceLeftRemoveDelay; + + /** + * Stores reference to current voice channel. + * + * Is used to ignore voice channel changed callback for the same channel. + * + * @see sOnCurrentChannelChanged() + */ + static LLVoiceChannel* sCurrentVoiceCanel; + boost::signals2::connection mVoiceChannelStateChangeConnection; }; |