diff options
| author | Nyx Linden <nyx@lindenlab.com> | 2013-01-24 16:22:49 -0500 |
|---|---|---|
| committer | Nyx Linden <nyx@lindenlab.com> | 2013-01-24 16:22:49 -0500 |
| commit | 11fe124ae96721b0d0f960732e8628fe0e2f84c4 (patch) | |
| tree | a8525988388de004be72251c0d7783a61d314888 /indra/newview/llfloatersidepanelcontainer.cpp | |
| parent | cebde0a32b4a8163010d9cbf5e6b3036865ed943 (diff) | |
| parent | b40fad02de170b5da179cacc22f32f5f25ffd7cb (diff) | |
merging in viewer-beta.
Most of the merge was clean, a couple conflicts.
Brought over a couple patches manually for llpolymesh.
Diffstat (limited to 'indra/newview/llfloatersidepanelcontainer.cpp')
| -rwxr-xr-x[-rw-r--r--] | indra/newview/llfloatersidepanelcontainer.cpp | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/indra/newview/llfloatersidepanelcontainer.cpp b/indra/newview/llfloatersidepanelcontainer.cpp index 5385977d95..02150819a0 100644..100755 --- a/indra/newview/llfloatersidepanelcontainer.cpp +++ b/indra/newview/llfloatersidepanelcontainer.cpp @@ -28,10 +28,13 @@ #include "llfloaterreg.h" #include "llfloatersidepanelcontainer.h" +#include "llpaneleditwearable.h" // newview includes #include "llsidetraypanelcontainer.h" #include "lltransientfloatermgr.h" +#include "llpaneloutfitedit.h" +#include "llsidepanelappearance.h" //static const std::string LLFloaterSidePanelContainer::sMainPanelName("main_panel"); @@ -54,6 +57,35 @@ void LLFloaterSidePanelContainer::onOpen(const LLSD& key) getChild<LLPanel>(sMainPanelName)->onOpen(key); } +void LLFloaterSidePanelContainer::onClickCloseBtn() +{ + llinfos << "close clicked" << llendl; + + LLPanelOutfitEdit* panel_outfit_edit = + dynamic_cast<LLPanelOutfitEdit*>(LLFloaterSidePanelContainer::getPanel("appearance", "panel_outfit_edit")); + if (panel_outfit_edit && panel_outfit_edit->getVisible()) + { + LLFloater *parent = gFloaterView->getParentFloater(panel_outfit_edit); + if (parent == this) + { + LLSidepanelAppearance* panel_appearance = + dynamic_cast<LLSidepanelAppearance*>(getPanel("appearance")); + panel_appearance->showOutfitsInventoryPanel(); + } + } + + if ( panel_outfit_edit ) + { + LLSidepanelAppearance* panel_appearance = dynamic_cast<LLSidepanelAppearance*>(getPanel("appearance")); + if ( panel_appearance ) + { + panel_appearance->getWearable()->onClose(); + panel_appearance->showOutfitsInventoryPanel(); + } + } + LLFloater::onClickCloseBtn(); +} + LLPanel* LLFloaterSidePanelContainer::openChildPanel(const std::string& panel_name, const LLSD& params) { LLView* view = findChildView(panel_name, true); |
