summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrad Payne (Vir Linden) <vir@lindenlab.com>2009-11-24 14:37:48 -0500
committerBrad Payne (Vir Linden) <vir@lindenlab.com>2009-11-24 14:37:48 -0500
commitfc6cfc27bec61ac1f66c1304cc7b54f19157584e (patch)
tree1a4c6e265126d2be0d60ef70b1ebe54d50aade8f
parente1cd91de4e9f3847f185d8b2ffc5ba3a545340fb (diff)
Fix for EXT-2571 to accommodate accordion panels
--HG-- branch : avatar-pipeline
-rw-r--r--indra/newview/llinventorybridge.cpp8
-rw-r--r--indra/newview/llpaneloutfitsinventory.cpp11
-rw-r--r--indra/newview/llpaneloutfitsinventory.h1
3 files changed, 18 insertions, 2 deletions
diff --git a/indra/newview/llinventorybridge.cpp b/indra/newview/llinventorybridge.cpp
index 628db46281..3e847f11ce 100644
--- a/indra/newview/llinventorybridge.cpp
+++ b/indra/newview/llinventorybridge.cpp
@@ -2346,8 +2346,12 @@ bool isInOutfitsSidePanel(LLPanel *panel)
LLInventoryPanel *my_panel = dynamic_cast<LLInventoryPanel*>(panel);
LLPanelOutfitsInventory *outfit_panel =
dynamic_cast<LLPanelOutfitsInventory*>(LLSideTray::getInstance()->getPanel("panel_outfits_inventory"));
- LLInventoryPanel *outfit_inv_panel = outfit_panel ? outfit_panel->getActivePanel(): NULL;
- return (my_panel && (my_panel == outfit_inv_panel));
+ if (!outfit_panel)
+ return false;
+ return outfit_panel->isAccordionPanel(my_panel);
+
+ //LLInventoryPanel *outfit_inv_panel = outfit_panel ? outfit_panel->getActivePanel(): NULL;
+ //return (my_panel && (my_panel == outfit_inv_panel));
}
void LLFolderBridge::folderOptionsMenu()
diff --git a/indra/newview/llpaneloutfitsinventory.cpp b/indra/newview/llpaneloutfitsinventory.cpp
index 2550962d76..e66a4440e9 100644
--- a/indra/newview/llpaneloutfitsinventory.cpp
+++ b/indra/newview/llpaneloutfitsinventory.cpp
@@ -398,3 +398,14 @@ LLInventoryPanel* LLPanelOutfitsInventory::getActivePanel()
return mActivePanel;
}
+bool LLPanelOutfitsInventory::isAccordionPanel(LLInventoryPanel *panel)
+{
+ for(accordionpanels_vec_t::iterator it = mAccordionPanels.begin();
+ it != mAccordionPanels.end();
+ ++it)
+ {
+ if (*it == panel)
+ return true;
+ }
+ return false;
+}
diff --git a/indra/newview/llpaneloutfitsinventory.h b/indra/newview/llpaneloutfitsinventory.h
index 902a5caab8..7769a7d172 100644
--- a/indra/newview/llpaneloutfitsinventory.h
+++ b/indra/newview/llpaneloutfitsinventory.h
@@ -78,6 +78,7 @@ public:
//////////////////////////////////////////////////////////////////////////////////
// Accordion //
LLInventoryPanel* getActivePanel();
+ bool isAccordionPanel(LLInventoryPanel *panel);
protected:
void initAccordionPanels();