diff options
Diffstat (limited to '')
-rw-r--r-- | linden/indra/newview/rlvhandler.h | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/linden/indra/newview/rlvhandler.h b/linden/indra/newview/rlvhandler.h index df3ff9b..505bfd5 100644 --- a/linden/indra/newview/rlvhandler.h +++ b/linden/indra/newview/rlvhandler.h | |||
@@ -73,6 +73,7 @@ public: | |||
73 | // Returns TRUE if the specified attachment point is detachable | 73 | // Returns TRUE if the specified attachment point is detachable |
74 | bool isDetachable(S32 idxAttachPt) const { return (idxAttachPt) && (m_Attachments.find(idxAttachPt) == m_Attachments.end()); } | 74 | bool isDetachable(S32 idxAttachPt) const { return (idxAttachPt) && (m_Attachments.find(idxAttachPt) == m_Attachments.end()); } |
75 | bool isDetachable(const LLInventoryItem* pItem) const; | 75 | bool isDetachable(const LLInventoryItem* pItem) const; |
76 | bool isDetachable(LLViewerJointAttachment* pAttachPt) const; | ||
76 | bool isDetachable(LLViewerObject* pObj) const; | 77 | bool isDetachable(LLViewerObject* pObj) const; |
77 | // Returns TRUE if the specified attachment point is set undetachable by anything other than pObj (or one of its children) | 78 | // Returns TRUE if the specified attachment point is set undetachable by anything other than pObj (or one of its children) |
78 | bool isDetachableExcept(S32 idxAttachPt, LLViewerObject* pObj) const; | 79 | bool isDetachableExcept(S32 idxAttachPt, LLViewerObject* pObj) const; |
@@ -370,6 +371,14 @@ inline bool RlvHandler::hasBehaviourExcept(ERlvBehaviour eBehaviour, const LLUUI | |||
370 | } | 371 | } |
371 | #endif // RLV_EXPERIMENTAL_COMPOSITES | 372 | #endif // RLV_EXPERIMENTAL_COMPOSITES |
372 | 373 | ||
374 | // Checked: 2009-09-08 (RLVa-1.0.2c) | Added: RLVa-1.0.2c | ||
375 | inline bool RlvHandler::isDetachable(LLViewerJointAttachment *pAttachPt) const | ||
376 | { | ||
377 | // If there's an attached object it's faster to just use that; otherwise look up the attachment index because it might be locked empty | ||
378 | return (pAttachPt == NULL) || | ||
379 | ( (pAttachPt->getObject() != NULL) && isDetachable(pAttachPt->getObject()) ) || (isDetachable(getAttachPointIndex(pAttachPt))); | ||
380 | } | ||
381 | |||
373 | // Checked: 2009-05-23 (RLVa-0.2.0d) | Modified: RLVa-0.2.0d | 382 | // Checked: 2009-05-23 (RLVa-0.2.0d) | Modified: RLVa-0.2.0d |
374 | inline bool RlvHandler::isDetachable(LLViewerObject* pObj) const | 383 | inline bool RlvHandler::isDetachable(LLViewerObject* pObj) const |
375 | { | 384 | { |