diff options
Diffstat (limited to 'indra/newview/llchiclet.h')
-rw-r--r-- | indra/newview/llchiclet.h | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/indra/newview/llchiclet.h b/indra/newview/llchiclet.h index f66d799c25..c83caf8ff9 100644 --- a/indra/newview/llchiclet.h +++ b/indra/newview/llchiclet.h @@ -38,6 +38,7 @@ #include "llpanel.h" #include "lltextbox.h" #include "lloutputmonitorctrl.h" +#include "llgroupmgr.h" class LLVoiceControlPanel; class LLMenuGL; @@ -235,13 +236,15 @@ private: * IMChiclet displays avatar's icon, number of unread messages(optional) * and voice chat status(optional). */ -class LLIMChiclet : public LLChiclet +class LLIMChiclet : public LLChiclet, LLGroupMgrObserver { public: struct Params : public LLInitParam::Block<Params, LLChiclet::Params> { Optional<LLChicletAvatarIconCtrl::Params> avatar_icon; + Optional<LLIconCtrl::Params> group_insignia; + Optional<LLChicletNotificationCounterCtrl::Params> unread_notifications; Optional<LLChicletSpeakerCtrl::Params> speaker; @@ -260,6 +263,7 @@ public: /* * Sets id of person/group user is chatting with. + * Session id should be set before calling this */ virtual void setOtherParticipantId(const LLUUID& other_participant_id); @@ -305,6 +309,9 @@ public: */ /*virtual*/ LLRect getRequiredRect(); + /** comes from LLGroupMgrObserver */ + virtual void changed(LLGroupChange gc); + protected: LLIMChiclet(const Params& p); @@ -335,6 +342,9 @@ protected: protected: LLChicletAvatarIconCtrl* mAvatarCtrl; + + /** the icon of a group in case of group chat */ + LLIconCtrl* mGroupInsignia; LLChicletNotificationCounterCtrl* mCounterCtrl; LLChicletSpeakerCtrl* mSpeakerCtrl; @@ -342,6 +352,9 @@ protected: bool mShowSpeaker; + /** the id of another participant, either an avatar id or a group id*/ + LLUUID mOtherParticipantId; + template<typename Container> struct CollectChicletCombiner { typedef Container result_type; |