diff options
| author | Seth ProductEngine <slitovchuk@productengine.com> | 2010-11-01 23:52:09 +0200 | 
|---|---|---|
| committer | Seth ProductEngine <slitovchuk@productengine.com> | 2010-11-01 23:52:09 +0200 | 
| commit | f4a99d359c9cadafdddd560e4d404b14069d3e39 (patch) | |
| tree | 0e413e2019450bc8bee47f9d2bb29c6765c1ec82 | |
| parent | 42b49397d2347b6a97394ce0b35efe5cc2ab44a2 (diff) | |
STORM-287 FIXED changing currnet outfit with an outfit dragged from Library to My Inventory->Current Outfit folder.
| -rw-r--r-- | indra/newview/llinventorybridge.cpp | 16 | 
1 files changed, 14 insertions, 2 deletions
diff --git a/indra/newview/llinventorybridge.cpp b/indra/newview/llinventorybridge.cpp index e672892282..73b99b04a6 100644 --- a/indra/newview/llinventorybridge.cpp +++ b/indra/newview/llinventorybridge.cpp @@ -1643,17 +1643,18 @@ BOOL LLFolderBridge::dragCategoryIntoFolder(LLInventoryCategory* inv_cat,  	const BOOL is_agent_inventory = (model->getCategory(inv_cat->getUUID()) != NULL)  		&& (LLToolDragAndDrop::SOURCE_AGENT == source); +	const LLUUID ¤t_outfit_id = model->findCategoryUUIDForType(LLFolderType::FT_CURRENT_OUTFIT, false); +	const BOOL move_is_into_current_outfit = (mUUID == current_outfit_id); +  	BOOL accept = FALSE;  	if (is_agent_inventory)  	{  		const LLUUID &cat_id = inv_cat->getUUID();  		const LLUUID &trash_id = model->findCategoryUUIDForType(LLFolderType::FT_TRASH, false); -		const LLUUID ¤t_outfit_id = model->findCategoryUUIDForType(LLFolderType::FT_CURRENT_OUTFIT, false);  		const LLUUID &landmarks_id = model->findCategoryUUIDForType(LLFolderType::FT_LANDMARK, false);  		const BOOL move_is_into_trash = (mUUID == trash_id) || model->isObjectDescendentOf(mUUID, trash_id);  		const BOOL move_is_into_outfit = getCategory() && (getCategory()->getPreferredType() == LLFolderType::FT_OUTFIT); -		const BOOL move_is_into_current_outfit = (mUUID == current_outfit_id);  		const BOOL move_is_into_landmarks = (mUUID == landmarks_id) || model->isObjectDescendentOf(mUUID, landmarks_id);  		//-------------------------------------------------------------------------------- @@ -1794,6 +1795,17 @@ BOOL LLFolderBridge::dragCategoryIntoFolder(LLInventoryCategory* inv_cat,  		LLUUID category_id = mUUID;  		accept = move_inv_category_world_to_agent(object_id, category_id, drop);  	} +	else if (LLToolDragAndDrop::SOURCE_LIBRARY == source) +	{ +		// Accept folders that contain complete outfits. +		accept = move_is_into_current_outfit && LLAppearanceMgr::instance().getCanMakeFolderIntoOutfit(inv_cat->getUUID()); + +		if (accept && drop) +		{ +			LLAppearanceMgr::instance().wearInventoryCategory(inv_cat, true, false); +		} +	} +  	return accept;  }  | 
