summaryrefslogtreecommitdiff
path: root/indra/newview/llinventoryfilter.cpp
diff options
context:
space:
mode:
authorLoren Shih <seraph@lindenlab.com>2009-11-17 10:36:11 -0500
committerLoren Shih <seraph@lindenlab.com>2009-11-17 10:36:11 -0500
commit32dccaf3d89b40b711d69088a3e390119c7efc7f (patch)
tree4bc6870bcf560fabffd9f3a1b3e7da862e3799e8 /indra/newview/llinventoryfilter.cpp
parentb88778ca7d2de5b381eb59722d9075c8e02ccb39 (diff)
Sidepanel Appearance refactoring. Work in progress.
1. Changed sidepanel names to have "sidepanel" (e.g. panel_appearance -> sidepanel_appearance) 2. Changed some "Looks" names to "Outfits" 3. Changed LLPanelLooks to LLPanelOutfitsInventory (to match other inventory panel naming) 4. Took out tab from sidepanel_appearance. --HG-- branch : avatar-pipeline
Diffstat (limited to 'indra/newview/llinventoryfilter.cpp')
-rw-r--r--indra/newview/llinventoryfilter.cpp17
1 files changed, 9 insertions, 8 deletions
diff --git a/indra/newview/llinventoryfilter.cpp b/indra/newview/llinventoryfilter.cpp
index 3e4b3327db..085c96c93d 100644
--- a/indra/newview/llinventoryfilter.cpp
+++ b/indra/newview/llinventoryfilter.cpp
@@ -100,17 +100,18 @@ BOOL LLInventoryFilter::check(LLFolderViewItem* item)
bool passed_type = false;
if (mFilterOps.mFilterForCategories)
{
- if (listener->getInventoryType() == LLInventoryType::IT_CATEGORY)
+ // Pass if this item is a category of the filter type, or
+ // if its parent is a category of the filter type.
+ LLUUID uuid = listener->getUUID();
+ if (listener->getInventoryType() != LLInventoryType::IT_CATEGORY)
{
- LLViewerInventoryCategory *cat = gInventory.getCategory(listener->getUUID());
- if (cat)
- {
- passed_type |= ((1LL << cat->getPreferredType() & mFilterOps.mFilterTypes) != U64(0));
- }
+ const LLInventoryObject *obj = gInventory.getObject(uuid);
+ uuid = obj->getParentUUID();
}
- else
+ LLViewerInventoryCategory *cat = gInventory.getCategory(uuid);
+ if (cat)
{
- passed_type = TRUE;
+ passed_type |= ((1LL << cat->getPreferredType() & mFilterOps.mFilterTypes) != U64(0));
}
}
else