diff options
| -rw-r--r-- | indra/newview/llfolderview.cpp | 3 | ||||
| -rw-r--r-- | indra/newview/llfoldervieweventlistener.h | 2 | ||||
| -rw-r--r-- | indra/newview/llinventorybridge.cpp | 570 | ||||
| -rw-r--r-- | indra/newview/llinventorybridge.h | 155 | ||||
| -rw-r--r-- | indra/newview/llinventorypanel.cpp | 3 | ||||
| -rw-r--r-- | indra/newview/llpanellandmarks.cpp | 2 | ||||
| -rw-r--r-- | indra/newview/llpanelmaininventory.cpp | 2 | ||||
| -rw-r--r-- | indra/newview/llpanelobjectinventory.cpp | 10 | ||||
| -rw-r--r-- | indra/newview/llpaneloutfitsinventory.cpp | 6 | ||||
| -rw-r--r-- | indra/newview/llplacesinventorybridge.cpp | 11 | ||||
| -rw-r--r-- | indra/newview/llplacesinventorybridge.h | 38 | ||||
| -rw-r--r-- | indra/newview/llsidepanelinventory.cpp | 2 | 
12 files changed, 399 insertions, 405 deletions
| diff --git a/indra/newview/llfolderview.cpp b/indra/newview/llfolderview.cpp index 4fbd1efbef..c31b01200f 100644 --- a/indra/newview/llfolderview.cpp +++ b/indra/newview/llfolderview.cpp @@ -2104,8 +2104,7 @@ bool LLFolderView::doToSelected(LLInventoryModel* model, const LLSD& userdata)  		if(!folder_item) continue;  		LLInvFVBridge* bridge = (LLInvFVBridge*)folder_item->getListener();  		if(!bridge) continue; - -		bridge->performAction(this, model, action); +		bridge->performAction(model, action);  	}  	LLFloater::setFloaterHost(NULL); diff --git a/indra/newview/llfoldervieweventlistener.h b/indra/newview/llfoldervieweventlistener.h index 7fe53d4aad..a2ef8c1d12 100644 --- a/indra/newview/llfoldervieweventlistener.h +++ b/indra/newview/llfoldervieweventlistener.h @@ -88,7 +88,7 @@ public:  	virtual BOOL isUpToDate() const = 0;  	virtual BOOL hasChildren() const = 0;  	virtual LLInventoryType::EType getInventoryType() const = 0; -	virtual void performAction(LLFolderView* root, LLInventoryModel* model, std::string action) = 0; +	virtual void performAction(LLInventoryModel* model, std::string action) = 0;  	// This method should be called when a drag begins. returns TRUE  	// if the drag can begin, otherwise FALSE. diff --git a/indra/newview/llinventorybridge.cpp b/indra/newview/llinventorybridge.cpp index be0e5f8829..2a570ecebb 100644 --- a/indra/newview/llinventorybridge.cpp +++ b/indra/newview/llinventorybridge.cpp @@ -36,8 +36,6 @@  // external projects  #include "lltransfersourceasset.h" - -  #include "llagent.h"  #include "llagentcamera.h"  #include "llagentwearables.h" @@ -139,8 +137,12 @@ std::string ICON_NAME[ICON_NAME_COUNT] =  // |        LLInvFVBridge                            |  // +=================================================+ -LLInvFVBridge::LLInvFVBridge(LLInventoryPanel* inventory, const LLUUID& uuid) : -mUUID(uuid), mInvType(LLInventoryType::IT_NONE) +LLInvFVBridge::LLInvFVBridge(LLInventoryPanel* inventory,  +							 LLFolderView* root, +							 const LLUUID& uuid) : +	mUUID(uuid),  +	mRoot(root), +	mInvType(LLInventoryType::IT_NONE)  {  	mInventoryPanel = inventory->getHandle();  } @@ -239,7 +241,7 @@ void LLInvFVBridge::showProperties()  	// Disable old properties floater; this is replaced by the sidepanel.  	/* -	LLFloaterReg::showInstance("properties", mUUID); +	  LLFloaterReg::showInstance("properties", mUUID);  	*/  } @@ -487,8 +489,8 @@ BOOL LLInvFVBridge::isClipboardPasteableAsLink() const  }  void hide_context_entries(LLMenuGL& menu,  -						const menuentry_vec_t &entries_to_show, -						const menuentry_vec_t &disabled_entries) +						  const menuentry_vec_t &entries_to_show, +						  const menuentry_vec_t &disabled_entries)  {  	const LLView::child_list_t *list = menu.getChildList(); @@ -877,6 +879,7 @@ LLInvFVBridge* LLInvFVBridge::createBridge(LLAssetType::EType asset_type,  										   LLAssetType::EType actual_asset_type,  										   LLInventoryType::EType inv_type,  										   LLInventoryPanel* inventory, +										   LLFolderView* root,  										   const LLUUID& uuid,  										   U32 flags)  { @@ -888,7 +891,7 @@ LLInvFVBridge* LLInvFVBridge::createBridge(LLAssetType::EType asset_type,  			{  				llwarns << LLAssetType::lookup(asset_type) << " asset has inventory type " << safe_inv_type_lookup(inv_type) << " on uuid " << uuid << llendl;  			} -			new_listener = new LLTextureBridge(inventory, uuid, inv_type); +			new_listener = new LLTextureBridge(inventory, root, uuid, inv_type);  			break;  		case LLAssetType::AT_SOUND: @@ -896,7 +899,7 @@ LLInvFVBridge* LLInvFVBridge::createBridge(LLAssetType::EType asset_type,  			{  				llwarns << LLAssetType::lookup(asset_type) << " asset has inventory type " << safe_inv_type_lookup(inv_type) << " on uuid " << uuid << llendl;  			} -			new_listener = new LLSoundBridge(inventory, uuid); +			new_listener = new LLSoundBridge(inventory, root, uuid);  			break;  		case LLAssetType::AT_LANDMARK: @@ -904,7 +907,7 @@ LLInvFVBridge* LLInvFVBridge::createBridge(LLAssetType::EType asset_type,  			{  				llwarns << LLAssetType::lookup(asset_type) << " asset has inventory type " << safe_inv_type_lookup(inv_type) << " on uuid " << uuid << llendl;  			} -			new_listener = new LLLandmarkBridge(inventory, uuid, flags); +			new_listener = new LLLandmarkBridge(inventory, root, uuid, flags);  			break;  		case LLAssetType::AT_CALLINGCARD: @@ -912,7 +915,7 @@ LLInvFVBridge* LLInvFVBridge::createBridge(LLAssetType::EType asset_type,  			{  				llwarns << LLAssetType::lookup(asset_type) << " asset has inventory type " << safe_inv_type_lookup(inv_type) << " on uuid " << uuid << llendl;  			} -			new_listener = new LLCallingCardBridge(inventory, uuid); +			new_listener = new LLCallingCardBridge(inventory, root, uuid);  			break;  		case LLAssetType::AT_SCRIPT: @@ -920,7 +923,7 @@ LLInvFVBridge* LLInvFVBridge::createBridge(LLAssetType::EType asset_type,  			{  				llwarns << LLAssetType::lookup(asset_type) << " asset has inventory type " << safe_inv_type_lookup(inv_type) << " on uuid " << uuid << llendl;  			} -			new_listener = new LLScriptBridge(inventory, uuid); +			new_listener = new LLScriptBridge(inventory, root, uuid);  			break;  		case LLAssetType::AT_OBJECT: @@ -928,7 +931,7 @@ LLInvFVBridge* LLInvFVBridge::createBridge(LLAssetType::EType asset_type,  			{  				llwarns << LLAssetType::lookup(asset_type) << " asset has inventory type " << safe_inv_type_lookup(inv_type) << " on uuid " << uuid << llendl;  			} -			new_listener = new LLObjectBridge(inventory, uuid, inv_type, flags); +			new_listener = new LLObjectBridge(inventory, root, uuid, inv_type, flags);  			break;  		case LLAssetType::AT_NOTECARD: @@ -936,7 +939,7 @@ LLInvFVBridge* LLInvFVBridge::createBridge(LLAssetType::EType asset_type,  			{  				llwarns << LLAssetType::lookup(asset_type) << " asset has inventory type " << safe_inv_type_lookup(inv_type) << " on uuid " << uuid << llendl;  			} -			new_listener = new LLNotecardBridge(inventory, uuid); +			new_listener = new LLNotecardBridge(inventory, root, uuid);  			break;  		case LLAssetType::AT_ANIMATION: @@ -944,7 +947,7 @@ LLInvFVBridge* LLInvFVBridge::createBridge(LLAssetType::EType asset_type,  			{  				llwarns << LLAssetType::lookup(asset_type) << " asset has inventory type " << safe_inv_type_lookup(inv_type) << " on uuid " << uuid << llendl;  			} -			new_listener = new LLAnimationBridge(inventory, uuid); +			new_listener = new LLAnimationBridge(inventory, root, uuid);  			break;  		case LLAssetType::AT_GESTURE: @@ -952,7 +955,7 @@ LLInvFVBridge* LLInvFVBridge::createBridge(LLAssetType::EType asset_type,  			{  				llwarns << LLAssetType::lookup(asset_type) << " asset has inventory type " << safe_inv_type_lookup(inv_type) << " on uuid " << uuid << llendl;  			} -			new_listener = new LLGestureBridge(inventory, uuid); +			new_listener = new LLGestureBridge(inventory, root, uuid);  			break;  		case LLAssetType::AT_LSL_TEXT: @@ -960,7 +963,7 @@ LLInvFVBridge* LLInvFVBridge::createBridge(LLAssetType::EType asset_type,  			{  				llwarns << LLAssetType::lookup(asset_type) << " asset has inventory type " << safe_inv_type_lookup(inv_type) << " on uuid " << uuid << llendl;  			} -			new_listener = new LLLSLTextBridge(inventory, uuid); +			new_listener = new LLLSLTextBridge(inventory, root, uuid);  			break;  		case LLAssetType::AT_CLOTHING: @@ -969,21 +972,21 @@ LLInvFVBridge* LLInvFVBridge::createBridge(LLAssetType::EType asset_type,  			{  				llwarns << LLAssetType::lookup(asset_type) << " asset has inventory type " << safe_inv_type_lookup(inv_type) << " on uuid " << uuid << llendl;  			} -			new_listener = new LLWearableBridge(inventory, uuid, asset_type, inv_type, (EWearableType)flags); +			new_listener = new LLWearableBridge(inventory, root, uuid, asset_type, inv_type, (EWearableType)flags);  			break;  		case LLAssetType::AT_CATEGORY:  			if (actual_asset_type == LLAssetType::AT_LINK_FOLDER)  			{  				// Create a link folder handler instead. -				new_listener = new LLLinkFolderBridge(inventory, uuid); +				new_listener = new LLLinkFolderBridge(inventory, root, uuid);  				break;  			} -			new_listener = new LLFolderBridge(inventory, uuid); +			new_listener = new LLFolderBridge(inventory, root, uuid);  			break;  		case LLAssetType::AT_LINK:  		case LLAssetType::AT_LINK_FOLDER:  			// Only should happen for broken links. -			new_listener = new LLLinkItemBridge(inventory, uuid); +			new_listener = new LLLinkItemBridge(inventory, root, uuid);  			break;  		default:  			llinfos << "Unhandled asset type (llassetstorage.h): " @@ -1032,26 +1035,28 @@ LLInvFVBridge* LLInventoryFVBridgeBuilder::createBridge(LLAssetType::EType asset  														LLAssetType::EType actual_asset_type,  														LLInventoryType::EType inv_type,  														LLInventoryPanel* inventory, +														LLFolderView* root,  														const LLUUID& uuid,  														U32 flags /* = 0x00 */) const  {  	return LLInvFVBridge::createBridge(asset_type, -		actual_asset_type, -		inv_type, -		inventory, -		uuid, -		flags); +									   actual_asset_type, +									   inv_type, +									   inventory, +									   root, +									   uuid, +									   flags);  }  // +=================================================+  // |        LLItemBridge                             |  // +=================================================+ -void LLItemBridge::performAction(LLFolderView* root, LLInventoryModel* model, std::string action) +void LLItemBridge::performAction(LLInventoryModel* model, std::string action)  {  	if ("goto" == action)  	{ -		gotoItem(root); +		gotoItem();  	}  	if ("open" == action) @@ -1102,7 +1107,7 @@ void LLItemBridge::performAction(LLFolderView* root, LLInventoryModel* model, st  		LLInventoryItem* itemp = model->getItem(mUUID);  		if (!itemp) return; -		LLFolderViewItem* folder_view_itemp = root->getItemByID(itemp->getParentUUID()); +		LLFolderViewItem* folder_view_itemp = mRoot->getItemByID(itemp->getParentUUID());  		if (!folder_view_itemp) return;  		folder_view_itemp->getListener()->pasteFromClipboard(); @@ -1114,7 +1119,7 @@ void LLItemBridge::performAction(LLFolderView* root, LLInventoryModel* model, st  		LLInventoryItem* itemp = model->getItem(mUUID);  		if (!itemp) return; -		LLFolderViewItem* folder_view_itemp = root->getItemByID(itemp->getParentUUID()); +		LLFolderViewItem* folder_view_itemp = mRoot->getItemByID(itemp->getParentUUID());  		if (!folder_view_itemp) return;  		folder_view_itemp->getListener()->pasteLinkFromClipboard(); @@ -1183,7 +1188,7 @@ void LLItemBridge::restoreToWorld()  	}  } -void LLItemBridge::gotoItem(LLFolderView* root) +void LLItemBridge::gotoItem()  {  	LLInventoryObject *obj = getInventoryObject();  	if (obj && obj->getIsLinkType()) @@ -1684,7 +1689,7 @@ BOOL LLFolderBridge::dragCategoryIntoFolder(LLInventoryCategory* inv_cat,  		// Is the destination the trash?  		const LLUUID trash_id = model->findCategoryUUIDForType(LLFolderType::FT_TRASH);  		BOOL move_is_into_trash = (mUUID == trash_id) -				|| model->isObjectDescendentOf(mUUID, trash_id); +			|| model->isObjectDescendentOf(mUUID, trash_id);  		BOOL is_movable = (!LLFolderType::lookupIsProtectedType(inv_cat->getPreferredType()));  		const LLUUID current_outfit_id = model->findCategoryUUIDForType(LLFolderType::FT_CURRENT_OUTFIT);  		BOOL move_is_into_current_outfit = (mUUID == current_outfit_id); @@ -1732,12 +1737,11 @@ BOOL LLFolderBridge::dragCategoryIntoFolder(LLInventoryCategory* inv_cat,  			}  		} - -		accept =	is_movable -					&& (mUUID != cat_id)								// Can't move a folder into itself -					&& (mUUID != inv_cat->getParentUUID())				// Avoid moves that would change nothing -					&& !(model->isObjectDescendentOf(mUUID, cat_id));	// Avoid circularity -		if(accept && drop) +		accept = is_movable +			&& (mUUID != cat_id)								// Can't move a folder into itself +			&& (mUUID != inv_cat->getParentUUID())				// Avoid moves that would change nothing +			&& !(model->isObjectDescendentOf(mUUID, cat_id));	// Avoid circularity +		if (accept && drop)  		{  			// Look for any gestures and deactivate them  			if (move_is_into_trash) @@ -1775,22 +1779,22 @@ BOOL LLFolderBridge::dragCategoryIntoFolder(LLInventoryCategory* inv_cat,  				else  				{  #if SUPPORT_ENSEMBLES -				// BAP - should skip if dup. -				if (move_is_into_current_outfit) -				{ -					LLAppearanceMgr::instance().addEnsembleLink(inv_cat); -				} -				else -				{ -					LLPointer<LLInventoryCallback> cb = NULL; -					link_inventory_item( -						gAgent.getID(), -						inv_cat->getUUID(), -						mUUID, -						inv_cat->getName(), -						LLAssetType::AT_LINK_FOLDER, -						cb); -				} +					// BAP - should skip if dup. +					if (move_is_into_current_outfit) +					{ +						LLAppearanceMgr::instance().addEnsembleLink(inv_cat); +					} +					else +					{ +						LLPointer<LLInventoryCallback> cb = NULL; +						link_inventory_item( +							gAgent.getID(), +							inv_cat->getUUID(), +							mUUID, +							inv_cat->getName(), +							LLAssetType::AT_LINK_FOLDER, +							cb); +					}  #endif  				}  			} @@ -1807,7 +1811,7 @@ BOOL LLFolderBridge::dragCategoryIntoFolder(LLInventoryCategory* inv_cat,  			}  		}  	} -	else if(LLToolDragAndDrop::SOURCE_WORLD == source) +	else if (LLToolDragAndDrop::SOURCE_WORLD == source)  	{  		// content category has same ID as object itself  		LLUUID object_id = inv_cat->getUUID(); @@ -1935,7 +1939,7 @@ public:  	LLRightClickInventoryFetchObserver(const LLUUID& cat_id, bool copy_items) :  		mCatID(cat_id),  		mCopyItems(copy_items) -		{ }; +	{ };  	virtual void done()  	{  		// we've downloaded all the items, so repaint the dialog @@ -2024,14 +2028,14 @@ void LLRightClickInventoryFetchDescendentsObserver::done()  //Uncomment the following code for laggy Inventory UI.  /*	if(outfit->isEverythingComplete())  	{ -		// everything is already here - call done. -		outfit->done(); +	// everything is already here - call done. +	outfit->done();  	}  	else  	{ -		// it's all on it's way - add an observer, and the inventory -		// will call done for us when everything is here. -		gInventory.addObserver(outfit); +	// it's all on it's way - add an observer, and the inventory +	// will call done for us when everything is here. +	gInventory.addObserver(outfit);  	}*/  } @@ -2045,7 +2049,8 @@ void LLRightClickInventoryFetchDescendentsObserver::done()  class LLInventoryCopyAndWearObserver : public LLInventoryObserver  {  public: -	LLInventoryCopyAndWearObserver(const LLUUID& cat_id, int count) :mCatID(cat_id), mContentsCount(count), mFolderAdded(FALSE) {} +	LLInventoryCopyAndWearObserver(const LLUUID& cat_id, int count) : +		mCatID(cat_id), mContentsCount(count), mFolderAdded(FALSE) {}  	virtual ~LLInventoryCopyAndWearObserver() {}  	virtual void changed(U32 mask); @@ -2084,7 +2089,7 @@ void LLInventoryCopyAndWearObserver::changed(U32 mask)  			if (NULL == category)  			{  				llwarns << "gInventory.getCategory(" << mCatID -					<< ") was NULL" << llendl; +						<< ") was NULL" << llendl;  			}  			else  			{ @@ -2103,11 +2108,11 @@ void LLInventoryCopyAndWearObserver::changed(U32 mask) -void LLFolderBridge::performAction(LLFolderView* root, LLInventoryModel* model, std::string action) +void LLFolderBridge::performAction(LLInventoryModel* model, std::string action)  {  	if ("open" == action)  	{ -		LLFolderViewFolder *f = dynamic_cast<LLFolderViewFolder *>(root->getItemByID(mUUID)); +		LLFolderViewFolder *f = dynamic_cast<LLFolderViewFolder *>(mRoot->getItemByID(mUUID));  		if (f)  		{  			f->setOpen(TRUE); @@ -2460,16 +2465,16 @@ void LLFolderBridge::pasteLinkFromClipboard()  			}  			else  #endif -			if (LLInventoryItem *item = model->getItem(object_id)) -			{ -				link_inventory_item( -					gAgent.getID(), -					item->getLinkedUUID(), -					parent_id, -					item->getName(), -					LLAssetType::AT_LINK, -					LLPointer<LLInventoryCallback>(NULL)); -			} +				if (LLInventoryItem *item = model->getItem(object_id)) +				{ +					link_inventory_item( +						gAgent.getID(), +						item->getLinkedUUID(), +						parent_id, +						item->getName(), +						LLAssetType::AT_LINK, +						LLPointer<LLInventoryCallback>(NULL)); +				}  		}  	}  } @@ -2494,7 +2499,7 @@ void LLFolderBridge::folderOptionsMenu()  	const bool is_system_folder = LLFolderType::lookupIsProtectedType(type);  	// BAP change once we're no longer treating regular categories as ensembles.  	const bool is_ensemble = (type == LLFolderType::FT_NONE || -				  LLFolderType::lookupIsEnsembleType(type)); +							  LLFolderType::lookupIsEnsembleType(type));  	// calling card related functionality for folders. @@ -2624,10 +2629,10 @@ void LLFolderBridge::buildContextMenu(LLMenuGL& menu, U32 flags)  	const LLUUID lost_and_found_id = model->findCategoryUUIDForType(LLFolderType::FT_LOST_AND_FOUND);  	if (lost_and_found_id == mUUID) -	  { +	{  		// This is the lost+found folder. -		  mItems.push_back(std::string("Empty Lost And Found")); -	  } +		mItems.push_back(std::string("Empty Lost And Found")); +	}  	if(trash_id == mUUID)  	{ @@ -2912,10 +2917,10 @@ void LLFolderBridge::createWearable(const LLUUID &parent_id, EWearableType type)  	LLAssetType::EType asset_type = wearable->getAssetType();  	LLInventoryType::EType inv_type = LLInventoryType::IT_WEARABLE;  	create_inventory_item(gAgent.getID(), gAgent.getSessionID(), -		parent_id, wearable->getTransactionID(), wearable->getName(), -		wearable->getDescription(), asset_type, inv_type, wearable->getType(), -		wearable->getPermissions().getMaskNextOwner(), -		LLPointer<LLInventoryCallback>(NULL)); +						  parent_id, wearable->getTransactionID(), wearable->getName(), +						  wearable->getDescription(), asset_type, inv_type, wearable->getType(), +						  wearable->getPermissions().getMaskNextOwner(), +						  LLPointer<LLInventoryCallback>(NULL));  }  void LLFolderBridge::modifyOutfit(BOOL append) @@ -2949,8 +2954,8 @@ bool move_task_inventory_callback(const LLSD& notification, const LLSD& response  		two_uuids_list_t::iterator move_it;  		for (move_it = move_inv->mMoveList.begin(); -			move_it != move_inv->mMoveList.end(); -			++move_it) +			 move_it != move_inv->mMoveList.end(); +			 ++move_it)  		{  			object->moveInventory(move_it->first, move_it->second);  		} @@ -2990,11 +2995,11 @@ BOOL LLFolderBridge::dragItemIntoFolder(LLInventoryItem* inv_item,  		BOOL is_movable = TRUE;  		switch( inv_item->getActualType() )  		{ -		case LLAssetType::AT_CATEGORY: -			is_movable = !LLFolderType::lookupIsProtectedType(((LLInventoryCategory*)inv_item)->getPreferredType()); -			break; -		default: -			break; +			case LLAssetType::AT_CATEGORY: +				is_movable = !LLFolderType::lookupIsProtectedType(((LLInventoryCategory*)inv_item)->getPreferredType()); +				break; +			default: +				break;  		}  		const LLUUID trash_id = model->findCategoryUUIDForType(LLFolderType::FT_TRASH); @@ -3172,7 +3177,7 @@ BOOL LLFolderBridge::dragItemIntoFolder(LLInventoryItem* inv_item,  		if(drop)  		{  			copy_inventory_from_notecard(LLToolDragAndDrop::getInstance()->getObjectID(), -				LLToolDragAndDrop::getInstance()->getSourceID(), inv_item); +										 LLToolDragAndDrop::getInstance()->getSourceID(), inv_item);  		}  	}  	else if(LLToolDragAndDrop::SOURCE_LIBRARY == source) @@ -3271,7 +3276,7 @@ void LLTextureBridge::buildContextMenu(LLMenuGL& menu, U32 flags)  }  // virtual -void LLTextureBridge::performAction(LLFolderView* root, LLInventoryModel* model, std::string action) +void LLTextureBridge::performAction(LLInventoryModel* model, std::string action)  {  	if ("save_as" == action)  	{ @@ -3282,7 +3287,7 @@ void LLTextureBridge::performAction(LLFolderView* root, LLInventoryModel* model,  			preview_texture->openToSave();  		}  	} -	else LLItemBridge::performAction(root, model, action); +	else LLItemBridge::performAction(model, action);  }  // +=================================================+ @@ -3307,14 +3312,14 @@ void LLSoundBridge::openItem()  // only open the preview dialog through the contextual right-click menu  // double-click just plays the sound -	LLViewerInventoryItem* item = getItem(); -	if(item) -	{ -		openSoundPreview((void*)this); -		//send_uuid_sound_trigger(item->getAssetUUID(), 1.0); -	} -*/ +LLViewerInventoryItem* item = getItem(); +if(item) +{ +openSoundPreview((void*)this); +//send_uuid_sound_trigger(item->getAssetUUID(), 1.0);  } +*/ +		}  void LLSoundBridge::previewItem()  { @@ -3359,8 +3364,11 @@ void LLSoundBridge::buildContextMenu(LLMenuGL& menu, U32 flags)  // |        LLLandmarkBridge                         |  // +=================================================+ -LLLandmarkBridge::LLLandmarkBridge(LLInventoryPanel* inventory, const LLUUID& uuid, U32 flags/* = 0x00*/) : -LLItemBridge(inventory, uuid) +LLLandmarkBridge::LLLandmarkBridge(LLInventoryPanel* inventory,  +								   LLFolderView* root, +								   const LLUUID& uuid,  +								   U32 flags/* = 0x00*/) : +	LLItemBridge(inventory, root, uuid)  {  	mVisited = FALSE;  	if (flags & LLInventoryItem::II_FLAGS_LANDMARK_VISITED) @@ -3421,7 +3429,7 @@ void teleport_via_landmark(const LLUUID& asset_id)  }  // virtual -void LLLandmarkBridge::performAction(LLFolderView* root, LLInventoryModel* model, std::string action) +void LLLandmarkBridge::performAction(LLInventoryModel* model, std::string action)  {  	if ("teleport" == action)  	{ @@ -3445,7 +3453,7 @@ void LLLandmarkBridge::performAction(LLFolderView* root, LLInventoryModel* model  	}  	else  	{ -		LLItemBridge::performAction(root, model, action); +		LLItemBridge::performAction(model, action);  	}  } @@ -3472,35 +3480,33 @@ void LLLandmarkBridge::openItem()  	{  		LLInvFVBridgeAction::doAction(item->getType(),mUUID,getInventoryModel());  	} -/* -	LLViewerInventoryItem* item = getItem(); -	if( item ) -	{ -		// Opening (double-clicking) a landmark immediately teleports, -		// but warns you the first time. -		// open_landmark(item); -		LLSD payload; -		payload["asset_id"] = item->getAssetUUID(); -		LLNotificationsUtil::add("TeleportFromLandmark", LLSD(), payload); -	} -*/  }  // +=================================================+  // |        LLCallingCardObserver                    |  // +=================================================+ -void LLCallingCardObserver::changed(U32 mask) +class LLCallingCardObserver : public LLFriendObserver  { -	mBridgep->refreshFolderViewItem(); -} +public: +	LLCallingCardObserver(LLCallingCardBridge* bridge) : mBridgep(bridge) {} +	virtual ~LLCallingCardObserver() { mBridgep = NULL; } +	virtual void changed(U32 mask) +	{ +		mBridgep->refreshFolderViewItem(); +	} +protected: +	LLCallingCardBridge* mBridgep; +};  // +=================================================+  // |        LLCallingCardBridge                      |  // +=================================================+ -LLCallingCardBridge::LLCallingCardBridge( LLInventoryPanel* inventory, const LLUUID& uuid ) : -	LLItemBridge(inventory, uuid) +LLCallingCardBridge::LLCallingCardBridge(LLInventoryPanel* inventory,  +										 LLFolderView* root, +										 const LLUUID& uuid ) : +	LLItemBridge(inventory, root, uuid)  {  	mObserver = new LLCallingCardObserver(this);  	LLAvatarTracker::instance().addObserver(mObserver); @@ -3523,7 +3529,7 @@ void LLCallingCardBridge::refreshFolderViewItem()  }  // virtual -void LLCallingCardBridge::performAction(LLFolderView* root, LLInventoryModel* model, std::string action) +void LLCallingCardBridge::performAction(LLInventoryModel* model, std::string action)  {  	if ("begin_im" == action)  	{ @@ -3549,7 +3555,7 @@ void LLCallingCardBridge::performAction(LLFolderView* root, LLInventoryModel* mo  			LLAvatarActions::offerTeleport(item->getCreatorUUID());  		}  	} -	else LLItemBridge::performAction(root, model, action); +	else LLItemBridge::performAction(model, action);  }  LLUIImagePtr LLCallingCardBridge::getIcon() const @@ -3585,11 +3591,11 @@ void LLCallingCardBridge::openItem()  		LLInvFVBridgeAction::doAction(item->getType(),mUUID,getInventoryModel());  	}  /* -	LLViewerInventoryItem* item = getItem(); -	if(item && !item->getCreatorUUID().isNull()) -	{ -		LLAvatarActions::showProfile(item->getCreatorUUID()); -	} +  LLViewerInventoryItem* item = getItem(); +  if(item && !item->getCreatorUUID().isNull()) +  { +  LLAvatarActions::showProfile(item->getCreatorUUID()); +  }  */  } @@ -3612,8 +3618,8 @@ void LLCallingCardBridge::buildContextMenu(LLMenuGL& menu, U32 flags)  		LLInventoryItem* item = getItem();  		BOOL good_card = (item -				  && (LLUUID::null != item->getCreatorUUID()) -				  && (item->getCreatorUUID() != gAgent.getID())); +						  && (LLUUID::null != item->getCreatorUUID()) +						  && (item->getCreatorUUID() != gAgent.getID()));  		BOOL user_online = FALSE;  		if (item)  		{ @@ -3648,16 +3654,16 @@ BOOL LLCallingCardBridge::dragOrDrop(MASK mask, BOOL drop,  		// check the type  		switch(cargo_type)  		{ -		case DAD_TEXTURE: -		case DAD_SOUND: -		case DAD_LANDMARK: -		case DAD_SCRIPT: -		case DAD_CLOTHING: -		case DAD_OBJECT: -		case DAD_NOTECARD: -		case DAD_BODYPART: -		case DAD_ANIMATION: -		case DAD_GESTURE: +			case DAD_TEXTURE: +			case DAD_SOUND: +			case DAD_LANDMARK: +			case DAD_SCRIPT: +			case DAD_CLOTHING: +			case DAD_OBJECT: +			case DAD_NOTECARD: +			case DAD_BODYPART: +			case DAD_ANIMATION: +			case DAD_GESTURE:  			{  				LLInventoryItem* inv_item = (LLInventoryItem*)cargo_data;  				const LLPermissions& perm = inv_item->getPermissions(); @@ -3680,7 +3686,7 @@ BOOL LLCallingCardBridge::dragOrDrop(MASK mask, BOOL drop,  				}  				break;  			} -		case DAD_CATEGORY: +			case DAD_CATEGORY:  			{  				LLInventoryCategory* inv_cat = (LLInventoryCategory*)cargo_data;  				if( gInventory.getCategory( inv_cat->getUUID() ) ) @@ -3702,8 +3708,8 @@ BOOL LLCallingCardBridge::dragOrDrop(MASK mask, BOOL drop,  				}  				break;  			} -		default: -			break; +			default: +				break;  		}  	}  	return rv; @@ -3728,11 +3734,11 @@ void LLNotecardBridge::openItem()  	}  /* -	LLViewerInventoryItem* item = getItem(); -	if (item) -	{ -		LLFloaterReg::showInstance("preview_notecard", LLSD(item->getUUID()), TAKE_FOCUS_YES); -	} +  LLViewerInventoryItem* item = getItem(); +  if (item) +  { +  LLFloaterReg::showInstance("preview_notecard", LLSD(item->getUUID()), TAKE_FOCUS_YES); +  }  */  } @@ -3773,7 +3779,7 @@ std::string LLGestureBridge::getLabelSuffix() const  }  // virtual -void LLGestureBridge::performAction(LLFolderView* root, LLInventoryModel* model, std::string action) +void LLGestureBridge::performAction(LLInventoryModel* model, std::string action)  {  	if (isAddAction(action))  	{ @@ -3819,7 +3825,7 @@ void LLGestureBridge::performAction(LLFolderView* root, LLInventoryModel* model,  			playGesture(mUUID);  		}  	} -	else LLItemBridge::performAction(root, model, action); +	else LLItemBridge::performAction(model, action);  }  void LLGestureBridge::openItem() @@ -3831,12 +3837,12 @@ void LLGestureBridge::openItem()  		LLInvFVBridgeAction::doAction(item->getType(),mUUID,getInventoryModel());  	}  /* -	LLViewerInventoryItem* item = getItem(); -	if (item) -	{ -		LLPreviewGesture* preview = LLPreviewGesture::show(mUUID, LLUUID::null); -		preview->setFocus(TRUE); -	} +  LLViewerInventoryItem* item = getItem(); +  if (item) +  { +  LLPreviewGesture* preview = LLPreviewGesture::show(mUUID, LLUUID::null); +  preview->setFocus(TRUE); +  }  */  } @@ -3948,7 +3954,7 @@ void LLAnimationBridge::buildContextMenu(LLMenuGL& menu, U32 flags)  }  // virtual -void LLAnimationBridge::performAction(LLFolderView* root, LLInventoryModel* model, std::string action) +void LLAnimationBridge::performAction(LLInventoryModel* model, std::string action)  {  	if ((action == "playworld") || (action == "playlocal"))  	{ @@ -3967,7 +3973,7 @@ void LLAnimationBridge::performAction(LLFolderView* root, LLInventoryModel* mode  	}  	else  	{ -		LLItemBridge::performAction(root, model, action); +		LLItemBridge::performAction(model, action);  	}  } @@ -3980,11 +3986,11 @@ void LLAnimationBridge::openItem()  		LLInvFVBridgeAction::doAction(item->getType(),mUUID,getInventoryModel());  	}  /* -	LLViewerInventoryItem* item = getItem(); -	if (item) -	{ -		LLFloaterReg::showInstance("preview_anim", LLSD(mUUID), TAKE_FOCUS_YES); -	} +  LLViewerInventoryItem* item = getItem(); +  if (item) +  { +  LLFloaterReg::showInstance("preview_anim", LLSD(mUUID), TAKE_FOCUS_YES); +  }  */  } @@ -3995,8 +4001,13 @@ void LLAnimationBridge::openItem()  // static  LLUUID LLObjectBridge::sContextMenuItemID; -LLObjectBridge::LLObjectBridge(LLInventoryPanel* inventory, const LLUUID& uuid, LLInventoryType::EType type, U32 flags) : -LLItemBridge(inventory, uuid), mInvType(type) +LLObjectBridge::LLObjectBridge(LLInventoryPanel* inventory,  +							   LLFolderView* root, +							   const LLUUID& uuid,  +							   LLInventoryType::EType type,  +							   U32 flags) : +	LLItemBridge(inventory, root, uuid),  +	mInvType(type)  {  	mAttachPt = (flags & 0xff); // low bye of inventory flags @@ -4020,7 +4031,7 @@ LLInventoryObject* LLObjectBridge::getObject() const  }  // virtual -void LLObjectBridge::performAction(LLFolderView* root, LLInventoryModel* model, std::string action) +void LLObjectBridge::performAction(LLInventoryModel* model, std::string action)  {  	if (isAddAction(action))  	{ @@ -4064,7 +4075,7 @@ void LLObjectBridge::performAction(LLFolderView* root, LLInventoryModel* model,  			}  		}  	} -	else LLItemBridge::performAction(root, model, action); +	else LLItemBridge::performAction(model, action);  }  void LLObjectBridge::openItem() @@ -4082,7 +4093,7 @@ void LLObjectBridge::openItem()  	// Disable old properties floater; this is replaced by the sidepanel.  	/* -	LLFloaterReg::showInstance("properties", mUUID); +	  LLFloaterReg::showInstance("properties", mUUID);  	*/  } @@ -4333,19 +4344,25 @@ void LLLSLTextBridge::openItem()  	{  		LLInvFVBridgeAction::doAction(item->getType(),mUUID,getInventoryModel());  	} -	/* -	LLViewerInventoryItem* item = getItem(); -	if (item) -	{ -		LLFloaterReg::showInstance("preview_script", LLSD(mUUID), TAKE_FOCUS_YES); -	} -	*/  }  // +=================================================+  // |        LLWearableBridge                         |  // +=================================================+ +LLWearableBridge::LLWearableBridge(LLInventoryPanel* inventory,  +								   LLFolderView* root,  +								   const LLUUID& uuid,  +								   LLAssetType::EType asset_type,  +								   LLInventoryType::EType inv_type,  +								   EWearableType  wearable_type) : +	LLItemBridge(inventory, root, uuid), +	mAssetType( asset_type ), +	mInvType(inv_type), +	mWearableType(wearable_type) +{ +} +  // *NOTE: hack to get from avatar inventory to avatar  void wear_inventory_item_on_avatar( LLInventoryItem* item )  { @@ -4366,10 +4383,10 @@ void wear_add_inventory_item_on_avatar( LLInventoryItem* item )  				 << " )" << llendl;  		LLWearableList::instance().getAsset(item->getAssetUUID(), -							   item->getName(), -							   item->getType(), -							   LLWearableBridge::onWearAddOnAvatarArrived, -							   new LLUUID(item->getUUID())); +											item->getName(), +											item->getType(), +											LLWearableBridge::onWearAddOnAvatarArrived, +											new LLUUID(item->getUUID()));  	}  } @@ -4529,7 +4546,7 @@ LLUIImagePtr LLWearableBridge::getIcon() const  }  // virtual -void LLWearableBridge::performAction(LLFolderView* root, LLInventoryModel* model, std::string action) +void LLWearableBridge::performAction(LLInventoryModel* model, std::string action)  {  	if (isAddAction(action))  	{ @@ -4549,7 +4566,7 @@ void LLWearableBridge::performAction(LLFolderView* root, LLInventoryModel* model  		removeFromAvatar();  		return;  	} -	else LLItemBridge::performAction(root, model, action); +	else LLItemBridge::performAction(model, action);  }  void LLWearableBridge::openItem() @@ -4560,42 +4577,6 @@ void LLWearableBridge::openItem()  	{  		LLInvFVBridgeAction::doAction(item->getType(),mUUID,getInventoryModel());  	} -	/* -	if( isItemInTrash() ) -	{ -		LLNotificationsUtil::add("CannotWearTrash"); -	} -	else if(isAgentInventory()) -	{ -		if( !get_is_item_worn( mUUID ) ) -		{ -			wearOnAvatar(); -		} -	} -	else -	{ -		// must be in the inventory library. copy it to our inventory -		// and put it on right away. -		LLViewerInventoryItem* item = getItem(); -		if(item && item->isComplete()) -		{ -			LLPointer<LLInventoryCallback> cb = new WearOnAvatarCallback(); -			copy_inventory_item( -				gAgent.getID(), -				item->getPermissions().getOwner(), -				item->getUUID(), -				LLUUID::null, -				std::string(), -				cb); -		} -		else if(item) -		{ -			// *TODO: We should fetch the item details, and then do -			// the operation above. -			LLNotificationsUtil::add("CannotWearInfoNotComplete"); -		} -	} -	*/  }  void LLWearableBridge::buildContextMenu(LLMenuGL& menu, U32 flags) @@ -4919,7 +4900,7 @@ void LLWearableBridge::onRemoveFromAvatarArrived(LLWearable* wearable,  	delete on_remove_struct;  } -/* static */ +// static  void LLWearableBridge::removeAllClothesFromAvatar()  {  	// Remove COF links. @@ -4947,7 +4928,7 @@ void LLWearableBridge::removeAllClothesFromAvatar()  	LLAgentWearables::userRemoveAllClothes();  } -/* static */ +// static  void LLWearableBridge::removeItemFromAvatar(LLViewerInventoryItem *item)  {  	if (item) @@ -4970,60 +4951,50 @@ void LLWearableBridge::removeFromAvatar()  }  LLInvFVBridgeAction* LLInvFVBridgeAction::createAction(LLAssetType::EType asset_type, -													   const LLUUID& uuid,LLInventoryModel* model) +													   const LLUUID& uuid, +													   LLInventoryModel* model)  {  	LLInvFVBridgeAction* action = NULL;  	switch(asset_type)  	{ -	case LLAssetType::AT_TEXTURE: -		action = new LLTextureBridgeAction(uuid,model); -		break; - -	case LLAssetType::AT_SOUND: -		action = new LLSoundBridgeAction(uuid,model); -		break; - -	case LLAssetType::AT_LANDMARK: -		action = new LLLandmarkBridgeAction(uuid,model); -		break; - -	case LLAssetType::AT_CALLINGCARD: -		action = new LLCallingCardBridgeAction(uuid,model); -		break; - -	case LLAssetType::AT_OBJECT: -		action = new LLObjectBridgeAction(uuid,model); -		break; - -	case LLAssetType::AT_NOTECARD: -		action = new LLNotecardBridgeAction(uuid,model); -		break; - -	case LLAssetType::AT_ANIMATION: -		action = new LLAnimationBridgeAction(uuid,model); -		break; - -	case LLAssetType::AT_GESTURE: -		action = new LLGestureBridgeAction(uuid,model); -		break; - -	case LLAssetType::AT_LSL_TEXT: -		action = new LLLSLTextBridgeAction(uuid,model); -		break; - -	case LLAssetType::AT_CLOTHING: -	case LLAssetType::AT_BODYPART: -		action = new LLWearableBridgeAction(uuid,model); - -		break; - -	default: -		break; +		case LLAssetType::AT_TEXTURE: +			action = new LLTextureBridgeAction(uuid,model); +			break; +		case LLAssetType::AT_SOUND: +			action = new LLSoundBridgeAction(uuid,model); +			break; +		case LLAssetType::AT_LANDMARK: +			action = new LLLandmarkBridgeAction(uuid,model); +			break; +		case LLAssetType::AT_CALLINGCARD: +			action = new LLCallingCardBridgeAction(uuid,model); +			break; +		case LLAssetType::AT_OBJECT: +			action = new LLObjectBridgeAction(uuid,model); +			break; +		case LLAssetType::AT_NOTECARD: +			action = new LLNotecardBridgeAction(uuid,model); +			break; +		case LLAssetType::AT_ANIMATION: +			action = new LLAnimationBridgeAction(uuid,model); +			break; +		case LLAssetType::AT_GESTURE: +			action = new LLGestureBridgeAction(uuid,model); +			break; +		case LLAssetType::AT_LSL_TEXT: +			action = new LLLSLTextBridgeAction(uuid,model); +			break; +		case LLAssetType::AT_CLOTHING: +		case LLAssetType::AT_BODYPART: +			action = new LLWearableBridgeAction(uuid,model); +			break; +		default: +			break;  	}  	return action;  } -//static +// static  void LLInvFVBridgeAction::doAction(LLAssetType::EType asset_type,  								   const LLUUID& uuid,LLInventoryModel* model)  { @@ -5060,8 +5031,8 @@ LLViewerInventoryItem* LLInvFVBridgeAction::getItem() const  	return NULL;  } -//virtual -void	LLTextureBridgeAction::doIt() +// virtual +void LLTextureBridgeAction::doIt()  {  	if (getItem())  	{ @@ -5071,8 +5042,8 @@ void	LLTextureBridgeAction::doIt()  	LLInvFVBridgeAction::doIt();  } -//virtual -void	LLSoundBridgeAction::doIt() +// virtual +void LLSoundBridgeAction::doIt()  {  	LLViewerInventoryItem* item = getItem();  	if(item) @@ -5084,8 +5055,8 @@ void	LLSoundBridgeAction::doIt()  } -//virtual -void	LLLandmarkBridgeAction::doIt() +// virtual +void LLLandmarkBridgeAction::doIt()  {  	LLViewerInventoryItem* item = getItem();  	if( item ) @@ -5105,8 +5076,8 @@ void	LLLandmarkBridgeAction::doIt()  } -//virtual -void	LLCallingCardBridgeAction::doIt() +// virtual +void LLCallingCardBridgeAction::doIt()  {  	LLViewerInventoryItem* item = getItem();  	if(item && item->getCreatorUUID().notNull()) @@ -5117,9 +5088,8 @@ void	LLCallingCardBridgeAction::doIt()  	LLInvFVBridgeAction::doIt();  } -//virtual -void -LLNotecardBridgeAction::doIt() +// virtual +void LLNotecardBridgeAction::doIt()  {  	LLViewerInventoryItem* item = getItem();  	if (item) @@ -5130,8 +5100,8 @@ LLNotecardBridgeAction::doIt()  	LLInvFVBridgeAction::doIt();  } -//virtual -void	LLGestureBridgeAction::doIt() +// virtual +void LLGestureBridgeAction::doIt()  {  	LLViewerInventoryItem* item = getItem();  	if (item) @@ -5143,7 +5113,7 @@ void	LLGestureBridgeAction::doIt()  	LLInvFVBridgeAction::doIt();  } -//virtual +// virtual  void	LLAnimationBridgeAction::doIt()  {  	LLViewerInventoryItem* item = getItem(); @@ -5156,18 +5126,18 @@ void	LLAnimationBridgeAction::doIt()  } -//virtual -void	LLObjectBridgeAction::doIt() +// virtual +void LLObjectBridgeAction::doIt()  {  	/* -	LLFloaterReg::showInstance("properties", mUUID); +	  LLFloaterReg::showInstance("properties", mUUID);  	*/  	LLInvFVBridgeAction::doIt();  } -//virtual -void	LLLSLTextBridgeAction::doIt() +// virtual +void LLLSLTextBridgeAction::doIt()  {  	LLViewerInventoryItem* item = getItem();  	if (item) @@ -5224,7 +5194,7 @@ void LLWearableBridgeAction::wearOnAvatar()  	}  } -//virtual +// virtual  void LLWearableBridgeAction::doIt()  {  	if(isItemInTrash()) @@ -5268,11 +5238,8 @@ void LLWearableBridgeAction::doIt()  // +=================================================+  // |        LLLinkItemBridge                         |  // +=================================================+ -// For broken links - +// For broken item links  std::string LLLinkItemBridge::sPrefix("Link: "); - -  LLUIImagePtr LLLinkItemBridge::getIcon() const  {  	if (LLViewerInventoryItem *item = getItem()) @@ -5284,7 +5251,6 @@ LLUIImagePtr LLLinkItemBridge::getIcon() const  	}  	return get_item_icon(LLAssetType::AT_LINK, LLInventoryType::IT_NONE, 0, FALSE);  } -  void LLLinkItemBridge::buildContextMenu(LLMenuGL& menu, U32 flags)  {  	// *TODO: Translate @@ -5307,15 +5273,11 @@ void LLLinkItemBridge::buildContextMenu(LLMenuGL& menu, U32 flags)  	hide_context_entries(menu, items, disabled_items);  } -  // +=================================================+  // |        LLLinkBridge                             |  // +=================================================+ -// For broken links. - +// For broken folder links.  std::string LLLinkFolderBridge::sPrefix("Link: "); - -  LLUIImagePtr LLLinkFolderBridge::getIcon() const  {  	LLFolderType::EType preferred_type = LLFolderType::FT_NONE; @@ -5328,7 +5290,6 @@ LLUIImagePtr LLLinkFolderBridge::getIcon() const  	}  	return LLFolderBridge::getIcon(preferred_type);  } -  void LLLinkFolderBridge::buildContextMenu(LLMenuGL& menu, U32 flags)  {  	// *TODO: Translate @@ -5347,35 +5308,32 @@ void LLLinkFolderBridge::buildContextMenu(LLMenuGL& menu, U32 flags)  	}  	hide_context_entries(menu, items, disabled_items);  } - -void LLLinkFolderBridge::performAction(LLFolderView* root, LLInventoryModel* model, std::string action) +void LLLinkFolderBridge::performAction(LLInventoryModel* model, std::string action)  {  	if ("goto" == action)  	{ -		gotoItem(root); +		gotoItem();  		return;  	} -	LLItemBridge::performAction(root,model,action); +	LLItemBridge::performAction(model,action);  } - -void LLLinkFolderBridge::gotoItem(LLFolderView* root) +void LLLinkFolderBridge::gotoItem()  {  	const LLUUID &cat_uuid = getFolderID();  	if (!cat_uuid.isNull())  	{ -		if (LLFolderViewItem *base_folder = root->getItemByID(cat_uuid)) +		if (LLFolderViewItem *base_folder = mRoot->getItemByID(cat_uuid))  		{  			if (LLInventoryModel* model = getInventoryModel())  			{  				model->fetchDescendentsOf(cat_uuid);  			}  			base_folder->setOpen(TRUE); -			root->setSelectionFromRoot(base_folder,TRUE); -			root->scrollToShowSelection(); +			mRoot->setSelectionFromRoot(base_folder,TRUE); +			mRoot->scrollToShowSelection();  		}  	}  } -  const LLUUID &LLLinkFolderBridge::getFolderID() const  {  	if (LLViewerInventoryItem *link_item = getItem()) diff --git a/indra/newview/llinventorybridge.h b/indra/newview/llinventorybridge.h index 22e454d645..44165594ee 100644 --- a/indra/newview/llinventorybridge.h +++ b/indra/newview/llinventorybridge.h @@ -44,6 +44,7 @@  class LLInventoryPanel;  class LLInventoryModel;  class LLMenuGL; +class LLCallingCardObserver;  enum EInventoryIcon  { @@ -134,6 +135,7 @@ public:  									   LLAssetType::EType actual_asset_type,  									   LLInventoryType::EType inv_type,  									   LLInventoryPanel* inventory, +									   LLFolderView* root,  									   const LLUUID& uuid,  									   U32 flags = 0x00);  	virtual ~LLInvFVBridge() {} @@ -199,7 +201,7 @@ protected:  											 menuentry_vec_t &disabled_items);  protected: -	LLInvFVBridge(LLInventoryPanel* inventory, const LLUUID& uuid); +	LLInvFVBridge(LLInventoryPanel* inventory, LLFolderView* root, const LLUUID& uuid);  	LLInventoryObject* getInventoryObject() const;  	LLInventoryModel* getInventoryModel() const; @@ -221,9 +223,11 @@ protected:  	void removeBatchNoCheck(LLDynamicArray<LLFolderViewEventListener*>& batch);  protected:  	LLHandle<LLPanel> mInventoryPanel; +	LLFolderView* mRoot;  	const LLUUID mUUID;	// item id  	LLInventoryType::EType mInvType;  	void purgeItem(LLInventoryModel *model, const LLUUID &uuid); +  };  /** @@ -238,6 +242,7 @@ public:  										LLAssetType::EType actual_asset_type,  										LLInventoryType::EType inv_type,  										LLInventoryPanel* inventory, +										LLFolderView* root,  										const LLUUID& uuid,  										U32 flags = 0x00) const;  }; @@ -246,15 +251,17 @@ public:  class LLItemBridge : public LLInvFVBridge  {  public: -	LLItemBridge(LLInventoryPanel* inventory, const LLUUID& uuid) : -		LLInvFVBridge(inventory, uuid) {} +	LLItemBridge(LLInventoryPanel* inventory,  +				 LLFolderView* root, +				 const LLUUID& uuid) : +		LLInvFVBridge(inventory, root, uuid) {} -	virtual void performAction(LLFolderView* root, LLInventoryModel* model, std::string action); +	virtual void performAction(LLInventoryModel* model, std::string action);  	virtual void selectItem();  	virtual void restoreItem();  	virtual void restoreToWorld(); -	virtual void gotoItem(LLFolderView* root); +	virtual void gotoItem();  	virtual LLUIImagePtr getIcon() const;  	virtual const std::string& getDisplayName() const;  	virtual std::string getLabelSuffix() const; @@ -292,7 +299,7 @@ public:  							BOOL drop);  	BOOL dragCategoryIntoFolder(LLInventoryCategory* inv_category,  								BOOL drop); -	virtual void performAction(LLFolderView* root, LLInventoryModel* model, std::string action); +	virtual void performAction(LLInventoryModel* model, std::string action);  	virtual void openItem();  	virtual void closeItem();  	virtual BOOL isItemRenameable() const; @@ -332,9 +339,10 @@ public:  	LLViewerInventoryCategory* getCategory() const;  protected: -	LLFolderBridge(LLInventoryPanel* inventory, const LLUUID& uuid) -		: LLInvFVBridge(inventory, uuid), - +	LLFolderBridge(LLInventoryPanel* inventory,  +				   LLFolderView* root, +				   const LLUUID& uuid) : +		LLInvFVBridge(inventory, root, uuid),  		mCallingCards(FALSE),  		mWearables(FALSE),  		mMenu(NULL) {} @@ -383,8 +391,10 @@ public:  	LLUIImagePtr getIcon() const;  protected: -	LLScriptBridge( LLInventoryPanel* inventory, const LLUUID& uuid ) : -		LLItemBridge(inventory, uuid) {} +	LLScriptBridge(LLInventoryPanel* inventory,  +				   LLFolderView* root, +				   const LLUUID& uuid ) : +		LLItemBridge(inventory, root, uuid) {}  }; @@ -395,11 +405,16 @@ public:  	virtual LLUIImagePtr getIcon() const;  	virtual void openItem();  	virtual void buildContextMenu(LLMenuGL& menu, U32 flags); -	virtual void performAction(LLFolderView* root, LLInventoryModel* model, std::string action); +	virtual void performAction(LLInventoryModel* model, std::string action);  protected: -	LLTextureBridge(LLInventoryPanel* inventory, const LLUUID& uuid, LLInventoryType::EType type) : -		LLItemBridge(inventory, uuid), mInvType(type) {} +	LLTextureBridge(LLInventoryPanel* inventory,  +					LLFolderView* root, +					const LLUUID& uuid,  +					LLInventoryType::EType type) : +		LLItemBridge(inventory, root, uuid), +		mInvType(type)  +	{}  	bool canSaveTexture(void);  	LLInventoryType::EType mInvType;  }; @@ -415,39 +430,31 @@ public:  	static void openSoundPreview(void*);  protected: -	LLSoundBridge(LLInventoryPanel* inventory, const LLUUID& uuid) : -		LLItemBridge(inventory, uuid) {} +	LLSoundBridge(LLInventoryPanel* inventory,  +				  LLFolderView* root, +				  const LLUUID& uuid) : +		LLItemBridge(inventory, root, uuid) {}  };  class LLLandmarkBridge : public LLItemBridge  {  	friend class LLInvFVBridge;  public: -	virtual void performAction(LLFolderView* root, LLInventoryModel* model, std::string action); +	virtual void performAction(LLInventoryModel* model, std::string action);  	virtual void buildContextMenu(LLMenuGL& menu, U32 flags);  	virtual LLUIImagePtr getIcon() const;  	virtual void openItem();  protected: -	LLLandmarkBridge(LLInventoryPanel* inventory, const LLUUID& uuid, U32 flags = 0x00); +	LLLandmarkBridge(LLInventoryPanel* inventory,  +					 LLFolderView* root, +					 const LLUUID& uuid,  +					 U32 flags = 0x00);  protected:  	BOOL mVisited;  }; -class LLCallingCardBridge; - -class LLCallingCardObserver : public LLFriendObserver -{ -public: -	LLCallingCardObserver(LLCallingCardBridge* bridge) : mBridgep(bridge) {} -	virtual ~LLCallingCardObserver() { mBridgep = NULL; } -	virtual void changed(U32 mask); - -protected: -	LLCallingCardBridge* mBridgep; -}; -  class LLCallingCardBridge : public LLItemBridge  {  	friend class LLInvFVBridge; @@ -455,7 +462,7 @@ public:  	virtual std::string getLabelSuffix() const;  	//virtual const std::string& getDisplayName() const;  	virtual LLUIImagePtr getIcon() const; -	virtual void performAction(LLFolderView* root, LLInventoryModel* model, std::string action); +	virtual void performAction(LLInventoryModel* model, std::string action);  	virtual void openItem();  	virtual void buildContextMenu(LLMenuGL& menu, U32 flags);  	//virtual void renameItem(const std::string& new_name); @@ -466,7 +473,9 @@ public:  	void refreshFolderViewItem();  protected: -	LLCallingCardBridge( LLInventoryPanel* inventory, const LLUUID& uuid ); +	LLCallingCardBridge(LLInventoryPanel* inventory,  +						LLFolderView* folder, +						const LLUUID& uuid );  	~LLCallingCardBridge();  protected: @@ -482,8 +491,10 @@ public:  	virtual void openItem();  protected: -	LLNotecardBridge(LLInventoryPanel* inventory, const LLUUID& uuid) : -		LLItemBridge(inventory, uuid) {} +	LLNotecardBridge(LLInventoryPanel* inventory,  +					 LLFolderView* root, +					 const LLUUID& uuid) : +		LLItemBridge(inventory, root, uuid) {}  };  class LLGestureBridge : public LLItemBridge @@ -497,7 +508,7 @@ public:  	virtual LLFontGL::StyleFlags getLabelStyle() const;  	virtual std::string getLabelSuffix() const; -	virtual void performAction(LLFolderView* root, LLInventoryModel* model, std::string action); +	virtual void performAction(LLInventoryModel* model, std::string action);  	virtual void openItem();  	virtual BOOL removeItem(); @@ -506,8 +517,10 @@ public:  	static void playGesture(const LLUUID& item_id);  protected: -	LLGestureBridge(LLInventoryPanel* inventory, const LLUUID& uuid) -	:	LLItemBridge(inventory, uuid) {} +	LLGestureBridge(LLInventoryPanel* inventory,  +					LLFolderView* root, +					const LLUUID& uuid) +	:	LLItemBridge(inventory, root, uuid) {}  }; @@ -515,15 +528,17 @@ class LLAnimationBridge : public LLItemBridge  {  	friend class LLInvFVBridge;  public: -	virtual void performAction(LLFolderView* root, LLInventoryModel* model, std::string action); +	virtual void performAction(LLInventoryModel* model, std::string action);  	virtual void buildContextMenu(LLMenuGL& menu, U32 flags);  	virtual LLUIImagePtr getIcon() const;  	virtual void openItem();  protected: -	LLAnimationBridge(LLInventoryPanel* inventory, const LLUUID& uuid) : -		LLItemBridge(inventory, uuid) {} +	LLAnimationBridge(LLInventoryPanel* inventory,  +					  LLFolderView* root,  +					  const LLUUID& uuid) : +		LLItemBridge(inventory, root, uuid) {}  }; @@ -532,7 +547,7 @@ class LLObjectBridge : public LLItemBridge  	friend class LLInvFVBridge;  public:  	virtual LLUIImagePtr	getIcon() const; -	virtual void			performAction(LLFolderView* root, LLInventoryModel* model, std::string action); +	virtual void			performAction(LLInventoryModel* model, std::string action);  	virtual void			openItem();  	virtual LLFontGL::StyleFlags getLabelStyle() const;  	virtual std::string getLabelSuffix() const; @@ -540,10 +555,12 @@ public:  	virtual BOOL renameItem(const std::string& new_name);  	LLInventoryObject* getObject() const; -  protected: -	LLObjectBridge(LLInventoryPanel* inventory, const LLUUID& uuid, LLInventoryType::EType type, U32 flags); - +	LLObjectBridge(LLInventoryPanel* inventory,  +				   LLFolderView* root,  +				   const LLUUID& uuid,  +				   LLInventoryType::EType type,  +				   U32 flags);  protected:  	static LLUUID	sContextMenuItemID;  // Only valid while the context menu is open.  	LLInventoryType::EType mInvType; @@ -560,8 +577,10 @@ public:  	virtual void openItem();  protected: -	LLLSLTextBridge( LLInventoryPanel* inventory, const LLUUID& uuid ) : -		LLItemBridge(inventory, uuid) {} +	LLLSLTextBridge(LLInventoryPanel* inventory,  +					LLFolderView* root,  +					const LLUUID& uuid ) : +		LLItemBridge(inventory, root, uuid) {}  }; @@ -570,7 +589,7 @@ class LLWearableBridge : public LLItemBridge  	friend class LLInvFVBridge;  public:  	virtual LLUIImagePtr getIcon() const; -	virtual void	performAction(LLFolderView* root, LLInventoryModel* model, std::string action); +	virtual void	performAction(LLInventoryModel* model, std::string action);  	virtual void	openItem();  	virtual void	buildContextMenu(LLMenuGL& menu, U32 flags);  	virtual std::string getLabelSuffix() const; @@ -596,13 +615,12 @@ public:  	void			removeFromAvatar();  protected: -	LLWearableBridge(LLInventoryPanel* inventory, const LLUUID& uuid, LLAssetType::EType asset_type, LLInventoryType::EType inv_type, EWearableType  wearable_type) : -		LLItemBridge(inventory, uuid), -		mAssetType( asset_type ), -		mInvType(inv_type), -		mWearableType(wearable_type) -		{} - +	LLWearableBridge(LLInventoryPanel* inventory,  +					 LLFolderView* root,  +					 const LLUUID& uuid,  +					 LLAssetType::EType asset_type,  +					 LLInventoryType::EType inv_type,  +					 EWearableType wearable_type);  protected:  	LLAssetType::EType mAssetType;  	LLInventoryType::EType mInvType; @@ -619,8 +637,10 @@ public:  	virtual void buildContextMenu(LLMenuGL& menu, U32 flags);  protected: -	LLLinkItemBridge(LLInventoryPanel* inventory, const LLUUID& uuid) : -		LLItemBridge(inventory, uuid) {} +	LLLinkItemBridge(LLInventoryPanel* inventory,  +					 LLFolderView* root, +					 const LLUUID& uuid) : +		LLItemBridge(inventory, root, uuid) {}  protected:  	static std::string sPrefix; @@ -635,12 +655,14 @@ public:  	virtual LLUIImagePtr getIcon() const;  	virtual void buildContextMenu(LLMenuGL& menu, U32 flags); -	virtual void performAction(LLFolderView* root, LLInventoryModel* model, std::string action); -	virtual void gotoItem(LLFolderView* root); +	virtual void performAction(LLInventoryModel* model, std::string action); +	virtual void gotoItem();  protected: -	LLLinkFolderBridge(LLInventoryPanel* inventory, const LLUUID& uuid) : -		LLItemBridge(inventory, uuid) {} +	LLLinkFolderBridge(LLInventoryPanel* inventory,  +					   LLFolderView* root, +					   const LLUUID& uuid) : +		LLItemBridge(inventory, root, uuid) {}  	const LLUUID &getFolderID() const;  protected: @@ -660,22 +682,21 @@ public:  	// This method is a convenience function which creates the correct  	// type of bridge action based on some basic information  	static LLInvFVBridgeAction* createAction(LLAssetType::EType asset_type, -											 const LLUUID& uuid,LLInventoryModel* model); - +											 const LLUUID& uuid, +											 LLInventoryModel* model);  	static void doAction(LLAssetType::EType asset_type,  						 const LLUUID& uuid, LLInventoryModel* model);  	static void doAction(const LLUUID& uuid, LLInventoryModel* model); -	virtual void doIt() {  }; +	virtual void doIt() {};  	virtual ~LLInvFVBridgeAction(){}//need this because of warning on OSX  protected: -	LLInvFVBridgeAction(const LLUUID& id,LLInventoryModel* model):mUUID(id),mModel(model){} - +	LLInvFVBridgeAction(const LLUUID& id, LLInventoryModel* model) : +		mUUID(id), mModel(model) {}  	LLViewerInventoryItem* getItem() const;  protected:  	const LLUUID& mUUID;	// item id  	LLInventoryModel* mModel; -  }; diff --git a/indra/newview/llinventorypanel.cpp b/indra/newview/llinventorypanel.cpp index 4d490b0d24..c6c2d23a4b 100644 --- a/indra/newview/llinventorypanel.cpp +++ b/indra/newview/llinventorypanel.cpp @@ -506,8 +506,8 @@ void LLInventoryPanel::buildNewViews(const LLUUID& id)  																			objectp->getType(),  																			LLInventoryType::IT_CATEGORY,  																			this, +																			mFolderRoot,  																			objectp->getUUID()); -			  			if (new_listener)  			{  				LLFolderViewFolder::Params params; @@ -542,6 +542,7 @@ void LLInventoryPanel::buildNewViews(const LLUUID& id)  																			item->getActualType(),  																			item->getInventoryType(),  																			this, +																			mFolderRoot,  																			item->getUUID(),  																			item->getFlags()); diff --git a/indra/newview/llpanellandmarks.cpp b/indra/newview/llpanellandmarks.cpp index 9a22d9ccf0..9cc79d95b8 100644 --- a/indra/newview/llpanellandmarks.cpp +++ b/indra/newview/llpanellandmarks.cpp @@ -989,7 +989,7 @@ void LLLandmarksPanel::onCustomAction(const LLSD& userdata)  	std::string command_name = userdata.asString();  	if("more_info" == command_name)  	{ -		cur_item->getListener()->performAction(mCurrentSelectedList->getRootFolder(),mCurrentSelectedList->getModel(),"about"); +		cur_item->getListener()->performAction(mCurrentSelectedList->getModel(),"about");  	}  	else if ("teleport" == command_name)  	{ diff --git a/indra/newview/llpanelmaininventory.cpp b/indra/newview/llpanelmaininventory.cpp index e4f13cdeda..8be4c8402c 100644 --- a/indra/newview/llpanelmaininventory.cpp +++ b/indra/newview/llpanelmaininventory.cpp @@ -1044,7 +1044,7 @@ void LLPanelMainInventory::onCustomAction(const LLSD& userdata)  		{  			return;  		} -		current_item->getListener()->performAction(getActivePanel()->getRootFolder(), getActivePanel()->getModel(), "goto"); +		current_item->getListener()->performAction(getActivePanel()->getModel(), "goto");  	}  	if (command_name == "find_links") diff --git a/indra/newview/llpanelobjectinventory.cpp b/indra/newview/llpanelobjectinventory.cpp index 988b5576c2..f70a06cde9 100644 --- a/indra/newview/llpanelobjectinventory.cpp +++ b/indra/newview/llpanelobjectinventory.cpp @@ -128,7 +128,7 @@ public:  	virtual void pasteFromClipboard();  	virtual void pasteLinkFromClipboard();  	virtual void buildContextMenu(LLMenuGL& menu, U32 flags); -	virtual void performAction(LLFolderView* root, LLInventoryModel* model, std::string action); +	virtual void performAction(LLInventoryModel* model, std::string action);  	virtual BOOL isUpToDate() const { return TRUE; }  	virtual BOOL hasChildren() const { return FALSE; }  	virtual LLInventoryType::EType getInventoryType() const { return LLInventoryType::IT_NONE; } @@ -595,7 +595,7 @@ BOOL LLTaskInvFVBridge::dragOrDrop(MASK mask, BOOL drop,  }  // virtual -void LLTaskInvFVBridge::performAction(LLFolderView* root, LLInventoryModel* model, std::string action) +void LLTaskInvFVBridge::performAction(LLInventoryModel* model, std::string action)  {  	if (action == "task_buy")  	{ @@ -917,7 +917,7 @@ public:  	virtual LLUIImagePtr getIcon() const;  	virtual void openItem(); -	virtual void performAction(LLFolderView* root, LLInventoryModel* model, std::string action); +	virtual void performAction(LLInventoryModel* model, std::string action);  	virtual void buildContextMenu(LLMenuGL& menu, U32 flags);  	static void openSoundPreview(void* data);  }; @@ -954,7 +954,7 @@ void LLTaskSoundBridge::openSoundPreview(void* data)  }  // virtual -void LLTaskSoundBridge::performAction(LLFolderView* root, LLInventoryModel* model, std::string action) +void LLTaskSoundBridge::performAction(LLInventoryModel* model, std::string action)  {  	if (action == "task_play")  	{ @@ -964,7 +964,7 @@ void LLTaskSoundBridge::performAction(LLFolderView* root, LLInventoryModel* mode  			send_sound_trigger(item->getAssetUUID(), 1.0);  		}  	} -	LLTaskInvFVBridge::performAction(root, model, action); +	LLTaskInvFVBridge::performAction(model, action);  }  void LLTaskSoundBridge::buildContextMenu(LLMenuGL& menu, U32 flags) diff --git a/indra/newview/llpaneloutfitsinventory.cpp b/indra/newview/llpaneloutfitsinventory.cpp index 09a93e3714..eb13115677 100644 --- a/indra/newview/llpaneloutfitsinventory.cpp +++ b/indra/newview/llpaneloutfitsinventory.cpp @@ -242,7 +242,7 @@ void LLPanelOutfitsInventory::onWearButtonClick()  	LLFolderViewEventListener* listenerp = getCorrectListenerForAction();  	if (listenerp)  	{ -		listenerp->performAction(NULL, NULL,"replaceoutfit"); +		listenerp->performAction(NULL, "replaceoutfit");  	}  } @@ -251,7 +251,7 @@ void LLPanelOutfitsInventory::onAdd()  	LLFolderViewEventListener* listenerp = getCorrectListenerForAction();  	if (listenerp)  	{ -		listenerp->performAction(NULL, NULL,"addtooutfit"); +		listenerp->performAction(NULL, "addtooutfit");  	}  } @@ -260,7 +260,7 @@ void LLPanelOutfitsInventory::onRemove()  	LLFolderViewEventListener* listenerp = getCorrectListenerForAction();  	if (listenerp)  	{ -		listenerp->performAction(NULL, NULL,"removefromoutfit"); +		listenerp->performAction(NULL, "removefromoutfit");  	}  } diff --git a/indra/newview/llplacesinventorybridge.cpp b/indra/newview/llplacesinventorybridge.cpp index f003a9b9ec..b4f960f4ac 100644 --- a/indra/newview/llplacesinventorybridge.cpp +++ b/indra/newview/llplacesinventorybridge.cpp @@ -122,7 +122,7 @@ void LLPlacesFolderBridge::buildContextMenu(LLMenuGL& menu, U32 flags)  }  //virtual -void LLPlacesFolderBridge::performAction(LLFolderView* root, LLInventoryModel* model, std::string action) +void LLPlacesFolderBridge::performAction(LLInventoryModel* model, std::string action)  {  	if ("expand" == action)  	{ @@ -136,7 +136,7 @@ void LLPlacesFolderBridge::performAction(LLFolderView* root, LLInventoryModel* m  	}  	else  	{ -		LLFolderBridge::performAction(root, model, action); +		LLFolderBridge::performAction(model, action);  	}  } @@ -158,6 +158,7 @@ LLInvFVBridge* LLPlacesInventoryBridgeBuilder::createBridge(  	LLAssetType::EType actual_asset_type,  	LLInventoryType::EType inv_type,  	LLInventoryPanel* inventory, +	LLFolderView* root,  	const LLUUID& uuid,  	U32 flags/* = 0x00*/) const  { @@ -169,7 +170,7 @@ LLInvFVBridge* LLPlacesInventoryBridgeBuilder::createBridge(  		{  			llwarns << LLAssetType::lookup(asset_type) << " asset has inventory type " << safe_inv_type_lookup(inv_type) << " on uuid " << uuid << llendl;  		} -		new_listener = new LLPlacesLandmarkBridge(inv_type, inventory, uuid, flags); +		new_listener = new LLPlacesLandmarkBridge(inv_type, inventory, root, uuid, flags);  		break;  	case LLAssetType::AT_CATEGORY:  		if (actual_asset_type == LLAssetType::AT_LINK_FOLDER) @@ -180,11 +181,12 @@ LLInvFVBridge* LLPlacesInventoryBridgeBuilder::createBridge(  				actual_asset_type,  				inv_type,  				inventory, +				root,  				uuid,  				flags);  			break;  		} -		new_listener = new LLPlacesFolderBridge(inv_type, inventory, uuid); +		new_listener = new LLPlacesFolderBridge(inv_type, inventory, root, uuid);  		break;  	default:  		new_listener = LLInventoryFVBridgeBuilder::createBridge( @@ -192,6 +194,7 @@ LLInvFVBridge* LLPlacesInventoryBridgeBuilder::createBridge(  			actual_asset_type,  			inv_type,  			inventory, +			root,  			uuid,  			flags);  	} diff --git a/indra/newview/llplacesinventorybridge.h b/indra/newview/llplacesinventorybridge.h index e90cc45356..7e5170cc33 100644 --- a/indra/newview/llplacesinventorybridge.h +++ b/indra/newview/llplacesinventorybridge.h @@ -48,8 +48,15 @@ public:  	/*virtual*/ void buildContextMenu(LLMenuGL& menu, U32 flags);  protected: -	LLPlacesLandmarkBridge(LLInventoryType::EType type, LLInventoryPanel* inventory, const LLUUID& uuid, U32 flags = 0x00) -		: LLLandmarkBridge(inventory, uuid, flags) {mInvType = type;} +	LLPlacesLandmarkBridge(LLInventoryType::EType type,  +						   LLInventoryPanel* inventory, +						   LLFolderView* root, +						   const LLUUID& uuid,  +						   U32 flags = 0x00) : +		LLLandmarkBridge(inventory, root, uuid, flags) +	{ +		mInvType = type; +	}  };  /** @@ -61,12 +68,17 @@ class LLPlacesFolderBridge : public LLFolderBridge  public:  	/*virtual*/ void buildContextMenu(LLMenuGL& menu, U32 flags); -	/*virtual*/ void performAction(LLFolderView* root, LLInventoryModel* model, std::string action); +	/*virtual*/ void performAction(LLInventoryModel* model, std::string action);  protected: -	LLPlacesFolderBridge(LLInventoryType::EType type, LLInventoryPanel* inventory, const LLUUID& uuid) -		: LLFolderBridge(inventory, uuid) {mInvType = type;} - +	LLPlacesFolderBridge(LLInventoryType::EType type,  +						 LLInventoryPanel* inventory, +						 LLFolderView* root,						  +						 const LLUUID& uuid) : +		LLFolderBridge(inventory, root, uuid) +	{ +		mInvType = type; +	}  	LLFolderViewFolder* getFolder();  }; @@ -79,13 +91,13 @@ protected:  class LLPlacesInventoryBridgeBuilder : public LLInventoryFVBridgeBuilder  {  public: -	/*virtual*/ LLInvFVBridge* createBridge( -		LLAssetType::EType asset_type, -		LLAssetType::EType actual_asset_type, -		LLInventoryType::EType inv_type, -		LLInventoryPanel* inventory, -		const LLUUID& uuid, -		U32 flags = 0x00) const; +	/*virtual*/ LLInvFVBridge* createBridge(LLAssetType::EType asset_type, +											LLAssetType::EType actual_asset_type, +											LLInventoryType::EType inv_type, +											LLInventoryPanel* inventory, +											LLFolderView* root, +											const LLUUID& uuid, +											U32 flags = 0x00) const;  };  #endif // LL_LLPLACESINVENTORYBRIDGE_H diff --git a/indra/newview/llsidepanelinventory.cpp b/indra/newview/llsidepanelinventory.cpp index 73880563d7..18e56a9c01 100644 --- a/indra/newview/llsidepanelinventory.cpp +++ b/indra/newview/llsidepanelinventory.cpp @@ -161,7 +161,7 @@ void LLSidepanelInventory::performActionOnSelection(const std::string &action)  	{  		return;  	} -	current_item->getListener()->performAction(panel_main_inventory->getActivePanel()->getRootFolder(), panel_main_inventory->getActivePanel()->getModel(), action); +	current_item->getListener()->performAction(panel_main_inventory->getActivePanel()->getModel(), action);  }  void LLSidepanelInventory::onWearButtonClicked() | 
