diff options
Diffstat (limited to 'indra/newview/llselectmgr.h')
-rw-r--r-- | indra/newview/llselectmgr.h | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/indra/newview/llselectmgr.h b/indra/newview/llselectmgr.h index 26b919ba28..071aa15236 100644 --- a/indra/newview/llselectmgr.h +++ b/indra/newview/llselectmgr.h @@ -254,6 +254,18 @@ public: valid_root_iterator valid_root_begin() { return valid_root_iterator(mList.begin(), mList.end()); } valid_root_iterator valid_root_end() { return valid_root_iterator(mList.end(), mList.end()); } + struct is_root_object + { + bool operator()(LLSelectNode* node) + { + LLViewerObject* object = node->getObject(); + return (object != NULL) && (object->isRootEdit() || object->isJointChild()); + } + }; + typedef boost::filter_iterator<is_root_object, list_t::iterator > root_object_iterator; + root_object_iterator root_object_begin() { return root_object_iterator(mList.begin(), mList.end()); } + root_object_iterator root_object_end() { return root_object_iterator(mList.end(), mList.end()); } + public: LLObjectSelection(); |