summaryrefslogtreecommitdiff
path: root/indra/newview/llpanelprofile.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'indra/newview/llpanelprofile.cpp')
-rw-r--r--indra/newview/llpanelprofile.cpp26
1 files changed, 15 insertions, 11 deletions
diff --git a/indra/newview/llpanelprofile.cpp b/indra/newview/llpanelprofile.cpp
index c73ade53c8..18da8dd48c 100644
--- a/indra/newview/llpanelprofile.cpp
+++ b/indra/newview/llpanelprofile.cpp
@@ -171,15 +171,13 @@ void LLPanelProfile::onOpen(const LLSD& key)
}
else if (panel == "classified_details")
{
- LLUUID classified_id = key["classified_id"].asUUID();
- LLUUID avatar_id = key["classified_avatar_id"].asUUID();
- LLUUID snapshot_id = key["classified_snapshot_id"].asUUID();
- std::string name = key["classified_name"].asString();
- std::string desc = key["classified_desc"].asString();
LLPanelPicks* picks = dynamic_cast<LLPanelPicks *>(getTabContainer()[PANEL_PICKS]);
if (picks)
{
- picks->openClassifiedInfo(classified_id, avatar_id, snapshot_id, name, desc);
+ LLSD params = key;
+ params.erase("show_tab_panel");
+ params.erase("open_tab_name");
+ picks->openClassifiedInfo(params);
}
}
}
@@ -197,11 +195,7 @@ void LLPanelProfile::togglePanel(LLPanel* panel, const LLSD& key)
}
else
{
- panel->setVisible(FALSE);
- if (panel->getParent() == this)
- {
- removeChild(panel);
- }
+ closePanel(panel);
getTabCtrl()->getCurrentPanel()->onOpen(getAvatarId());
}
@@ -248,6 +242,16 @@ void LLPanelProfile::openPanel(LLPanel* panel, const LLSD& params)
panel->setRect(new_rect);
}
+void LLPanelProfile::closePanel(LLPanel* panel)
+{
+ panel->setVisible(FALSE);
+
+ if (panel->getParent() == this)
+ {
+ removeChild(panel);
+ }
+}
+
S32 LLPanelProfile::notifyParent(const LLSD& info)
{
std::string action = info["action"];