summaryrefslogtreecommitdiff
path: root/indra
diff options
context:
space:
mode:
authorRichard Linden <none@none>2012-06-19 00:10:35 -0700
committerRichard Linden <none@none>2012-06-19 00:10:35 -0700
commit4d258b7d3b020c54239930509d8bad7abccf50f9 (patch)
treefe72ce2663d40157ef0b8377cf85b578d9815db1 /indra
parent59987bb051ed39146ec9b3831eec81434779a73f (diff)
parentd34746b596bad717f7d0c10e263700738a06aa43 (diff)
Automated merge with ssh://hg.lindenlab.com/richard/viewer-chui-folderview
Diffstat (limited to 'indra')
-rw-r--r--indra/newview/llimfloatercontainer.cpp26
-rw-r--r--indra/newview/llimfloatercontainer.h3
2 files changed, 29 insertions, 0 deletions
diff --git a/indra/newview/llimfloatercontainer.cpp b/indra/newview/llimfloatercontainer.cpp
index 3b6240de44..71b69dfbc8 100644
--- a/indra/newview/llimfloatercontainer.cpp
+++ b/indra/newview/llimfloatercontainer.cpp
@@ -34,8 +34,10 @@
#include "llnearbychat.h"
#include "llagent.h"
+#include "llavataractions.h"
#include "llavatariconctrl.h"
#include "llgroupiconctrl.h"
+#include "llfloateravatarpicker.h"
#include "llimview.h"
#include "lltransientfloatermgr.h"
#include "llviewercontrol.h"
@@ -75,6 +77,8 @@ BOOL LLIMFloaterContainer::postBuild()
mExpandCollapseBtn = getChild<LLButton>("expand_collapse_btn");
mExpandCollapseBtn->setClickedCallback(boost::bind(&LLIMFloaterContainer::onExpandCollapseButtonClicked, this));
+ childSetAction("add_btn", boost::bind(&LLIMFloaterContainer::onAddButtonClicked, this));
+
collapseMessagesPane(gSavedPerAccountSettings.getBOOL("ConversationsMessagePaneCollapsed"));
collapseConversationsPane(gSavedPerAccountSettings.getBOOL("ConversationsListPaneCollapsed"));
@@ -313,4 +317,26 @@ void LLIMFloaterContainer::updateState(bool collapse, S32 delta_width)
setCanMinimize(is_left_pane_expanded || is_right_pane_expanded);
}
+void LLIMFloaterContainer::onAddButtonClicked()
+{
+ LLFloaterAvatarPicker* picker = LLFloaterAvatarPicker::show(boost::bind(&LLIMFloaterContainer::onAvatarPicked, this, _1), TRUE, TRUE);
+ LLFloater* root_floater = gFloaterView->getParentFloater(this);
+ if (picker && root_floater)
+ {
+ root_floater->addDependentFloater(picker);
+ }
+}
+
+void LLIMFloaterContainer::onAvatarPicked(const uuid_vec_t& ids)
+{
+ if (ids.size() == 1)
+ {
+ LLAvatarActions::startIM(ids.back());
+ }
+ else
+ {
+ LLAvatarActions::startConference(ids);
+ }
+}
+
// EOF
diff --git a/indra/newview/llimfloatercontainer.h b/indra/newview/llimfloatercontainer.h
index 92938ff405..7b395fb18f 100644
--- a/indra/newview/llimfloatercontainer.h
+++ b/indra/newview/llimfloatercontainer.h
@@ -80,6 +80,9 @@ private:
void updateState(bool collapse, S32 delta_width);
+ void onAddButtonClicked();
+ void onAvatarPicked(const uuid_vec_t& ids);
+
LLButton* mExpandCollapseBtn;
LLLayoutPanel* mMessagesPane;
LLLayoutPanel* mConversationsPane;