summaryrefslogtreecommitdiff
path: root/indra/newview/llpanelimcontrolpanel.h
diff options
context:
space:
mode:
Diffstat (limited to 'indra/newview/llpanelimcontrolpanel.h')
-rw-r--r--indra/newview/llpanelimcontrolpanel.h54
1 files changed, 44 insertions, 10 deletions
diff --git a/indra/newview/llpanelimcontrolpanel.h b/indra/newview/llpanelimcontrolpanel.h
index e82942a31d..ac5d86345e 100644
--- a/indra/newview/llpanelimcontrolpanel.h
+++ b/indra/newview/llpanelimcontrolpanel.h
@@ -34,7 +34,11 @@
#define LL_LLPANELIMCONTROLPANEL_H
#include "llpanel.h"
+#include "llvoicechannel.h"
+class LLSpeakerMgr;
+class LLAvatarList;
+class LLParticipantList;
class LLPanelChatControlPanel : public LLPanel
{
@@ -42,8 +46,19 @@ public:
LLPanelChatControlPanel() {};
~LLPanelChatControlPanel() {};
- // sets the group or avatar UUID
- virtual void setID(const LLUUID& avatar_id)= 0;
+ virtual BOOL postBuild();
+ virtual void draw();
+
+ void onCallButtonClicked();
+ void onEndCallButtonClicked();
+ void onOpenVoiceControlsClicked();
+
+ virtual void onVoiceChannelStateChanged(const LLVoiceChannel::EState& old_state, const LLVoiceChannel::EState& new_state);
+
+ virtual void setSessionId(const LLUUID& session_id);
+
+private:
+ LLUUID mSessionId;
};
@@ -55,33 +70,52 @@ public:
BOOL postBuild();
- void setID(const LLUUID& avatar_id);
+ void setSessionId(const LLUUID& session_id);
+
+protected:
+ void nameUpdatedCallback(const LLUUID& id, const std::string& first, const std::string& last, BOOL is_group);
private:
void onViewProfileButtonClicked();
void onAddFriendButtonClicked();
- void onCallButtonClicked();
void onShareButtonClicked();
+ void onTeleportButtonClicked();
+ void onPayButtonClicked();
+
+ LLUUID mAvatarID;
};
class LLPanelGroupControlPanel : public LLPanelChatControlPanel
{
public:
- LLPanelGroupControlPanel() {};
- ~LLPanelGroupControlPanel() {};
+ LLPanelGroupControlPanel(const LLUUID& session_id);
+ ~LLPanelGroupControlPanel();
BOOL postBuild();
- void setID(const LLUUID& id);
+ void setSessionId(const LLUUID& session_id);
+ /*virtual*/ void draw();
+
+protected:
+ LLUUID mGroupID;
+ LLSpeakerMgr* mSpeakerManager;
+ LLAvatarList* mAvatarList;
+ LLParticipantList* mParticipantList;
private:
void onGroupInfoButtonClicked();
- void onCallButtonClicked();
-
- LLUUID mGroupID;
+ void onSortMenuItemClicked(const LLSD& userdata);
+ /*virtual*/ void onVoiceChannelStateChanged(const LLVoiceChannel::EState& old_state, const LLVoiceChannel::EState& new_state);
};
+class LLPanelAdHocControlPanel : public LLPanelGroupControlPanel
+{
+public:
+ LLPanelAdHocControlPanel(const LLUUID& session_id);
+
+ BOOL postBuild();
+};
#endif // LL_LLPANELIMCONTROLPANEL_H