MAINT-5443 FIXED Appearance menu does not display gestures in outfit

master
andreykproductengine 2015-08-28 16:24:12 +03:00
parent 41d2a60cba
commit 9cddfc5a0e
7 changed files with 18 additions and 5 deletions

View File

@ -1869,7 +1869,7 @@ bool LLAppearanceMgr::canAddWearables(const uuid_vec_t& item_ids)
{
++n_clothes;
}
else if (item->getType() == LLAssetType::AT_BODYPART)
else if (item->getType() == LLAssetType::AT_BODYPART || item->getType() == LLAssetType::AT_GESTURE)
{
return isAgentAvatarValid();
}

View File

@ -483,7 +483,7 @@ void LLCOFWearables::populateAttachmentsAndBodypartsLists(const LLInventoryModel
const LLAssetType::EType item_type = item->getType();
if (item_type == LLAssetType::AT_CLOTHING) continue;
LLPanelInventoryListItemBase* item_panel = NULL;
if (item_type == LLAssetType::AT_OBJECT)
if (item_type == LLAssetType::AT_OBJECT || item_type == LLAssetType::AT_GESTURE)
{
item_panel = buildAttachemntListItem(item);
mAttachments->addItem(item_panel, item->getUUID(), ADD_BOTTOM, false);

View File

@ -1059,6 +1059,9 @@ void LLPanelOutfitEdit::filterWearablesBySelectedItem(void)
case LLAssetType::AT_BODYPART:
applyListViewFilter(LVIT_BODYPART);
break;
case LLAssetType::AT_GESTURE:
applyListViewFilter(LVIT_GESTURES);
break;
case LLAssetType::AT_CLOTHING:
default:
applyListViewFilter(LVIT_CLOTHING);

View File

@ -80,6 +80,7 @@ public:
{
LVIT_ALL = 0,
LVIT_CLOTHING,
LVIT_GESTURES,
LVIT_BODYPART,
LVIT_ATTACHMENT,
LVIT_SHAPE,

View File

@ -131,7 +131,7 @@ protected:
{
bp_selected = true;
}
else if (type == LLAssetType::AT_OBJECT)
else if (type == LLAssetType::AT_OBJECT || type == LLAssetType::AT_GESTURE)
{
attachments_selected = true;
}

View File

@ -35,6 +35,7 @@
#include "llappearancemgr.h"
#include "llinventoryfunctions.h"
#include "llinventoryicon.h"
#include "llgesturemgr.h"
#include "lltransutil.h"
#include "llviewerattachmenu.h"
#include "llvoavatarself.h"
@ -55,7 +56,8 @@ bool LLFindOutfitItems::operator()(LLInventoryCategory* cat,
{
if((item->getType() == LLAssetType::AT_CLOTHING)
|| (item->getType() == LLAssetType::AT_BODYPART)
|| (item->getType() == LLAssetType::AT_OBJECT))
|| (item->getType() == LLAssetType::AT_OBJECT)
|| (item->getType() == LLAssetType::AT_GESTURE))
{
return TRUE;
}
@ -491,6 +493,7 @@ LLWearableItemTypeNameComparator::LLWearableItemTypeNameComparator()
mWearableOrder[LLAssetType::AT_CLOTHING] = LLWearableTypeOrder(ORDER_RANK_1, false, false);
mWearableOrder[LLAssetType::AT_OBJECT] = LLWearableTypeOrder(ORDER_RANK_2, true, true);
mWearableOrder[LLAssetType::AT_BODYPART] = LLWearableTypeOrder(ORDER_RANK_3, false, true);
mWearableOrder[LLAssetType::AT_GESTURE] = LLWearableTypeOrder(ORDER_RANK_4, true, false);
}
void LLWearableItemTypeNameComparator::setOrder(LLAssetType::EType items_of_type, LLWearableItemTypeNameComparator::ETypeListOrder order_priority, bool sort_asset_items_by_name, bool sort_wearable_items_by_name)
@ -989,6 +992,10 @@ void LLWearableItemsList::ContextMenu::updateMask(U32& mask, LLAssetType::EType
{
mask |= MASK_ATTACHMENT;
}
else if (at == LLAssetType::AT_GESTURE)
{
mask |= MASK_GESTURE;
}
else
{
mask |= MASK_UNKNOWN;

View File

@ -310,6 +310,7 @@ public:
ORDER_RANK_1 = 1,
ORDER_RANK_2,
ORDER_RANK_3,
ORDER_RANK_4,
ORDER_RANK_UNKNOWN
};
@ -419,7 +420,8 @@ public:
MASK_CLOTHING = 0x01,
MASK_BODYPART = 0x02,
MASK_ATTACHMENT = 0x04,
MASK_UNKNOWN = 0x08,
MASK_GESTURE = 0x08,
MASK_UNKNOWN = 0x16,
};
/* virtual */ LLContextMenu* createMenu();