diff options
| author | Brad Payne (Vir Linden) <vir@lindenlab.com> | 2009-12-16 11:34:46 -0500 | 
|---|---|---|
| committer | Brad Payne (Vir Linden) <vir@lindenlab.com> | 2009-12-16 11:34:46 -0500 | 
| commit | adec0ba983c6b01c3d6c08692f3d5c7979ba90bb (patch) | |
| tree | 0ad774429ed9933878652c2208a1fc4b376127a9 | |
| parent | 2dd09062d199ebfe7af8d67c59ec1bdc26e124a9 (diff) | |
For EXT-3114: [BSI] Can't right click > edit a no-mod attachment
--HG--
branch : avatar-pipeline
| -rw-r--r-- | indra/newview/llselectmgr.cpp | 20 | ||||
| -rw-r--r-- | indra/newview/llselectmgr.h | 1 | ||||
| -rw-r--r-- | indra/newview/llviewermenu.cpp | 2 | 
3 files changed, 22 insertions, 1 deletions
| diff --git a/indra/newview/llselectmgr.cpp b/indra/newview/llselectmgr.cpp index 44930f03c5..59ca54a147 100644 --- a/indra/newview/llselectmgr.cpp +++ b/indra/newview/llselectmgr.cpp @@ -2277,6 +2277,26 @@ BOOL LLSelectMgr::selectGetAllValid()  	return TRUE;  } +//----------------------------------------------------------------------------- +// selectGetAllValidAndObjectsFound() - return TRUE if selections are +// valid and objects are found. +// +// For EXT-3114 - same as selectGetModify() without the modify check. +//----------------------------------------------------------------------------- +BOOL LLSelectMgr::selectGetAllValidAndObjectsFound() +{ +	for (LLObjectSelection::iterator iter = getSelection()->begin(); +		 iter != getSelection()->end(); iter++ ) +	{ +		LLSelectNode* node = *iter; +		LLViewerObject* object = node->getObject(); +		if( !object || !node->mValid ) +		{ +			return FALSE; +		} +	} +	return TRUE; +}  //-----------------------------------------------------------------------------  // selectGetModify() - return TRUE if current agent can modify all diff --git a/indra/newview/llselectmgr.h b/indra/newview/llselectmgr.h index 6641be335a..f8ecfd0674 100644 --- a/indra/newview/llselectmgr.h +++ b/indra/newview/llselectmgr.h @@ -535,6 +535,7 @@ public:  	// Returns TRUE if the viewer has information on all selected objects  	BOOL selectGetAllRootsValid();  	BOOL selectGetAllValid(); +	BOOL selectGetAllValidAndObjectsFound();  	// returns TRUE if you can modify all selected objects.   	BOOL selectGetRootsModify(); diff --git a/indra/newview/llviewermenu.cpp b/indra/newview/llviewermenu.cpp index e38d03c60b..313b161ce5 100644 --- a/indra/newview/llviewermenu.cpp +++ b/indra/newview/llviewermenu.cpp @@ -2630,7 +2630,7 @@ bool enable_object_edit()  		enable = LLViewerParcelMgr::getInstance()->allowAgentBuild()  			|| LLSelectMgr::getInstance()->getSelection()->isAttachment();  	}  -	else if (LLSelectMgr::getInstance()->selectGetModify()) +	else if (LLSelectMgr::getInstance()->selectGetAllValidAndObjectsFound())  	{  		enable = true;  	} | 
