summaryrefslogtreecommitdiff
path: root/indra/newview/llselectmgr.h
diff options
context:
space:
mode:
Diffstat (limited to 'indra/newview/llselectmgr.h')
-rw-r--r--indra/newview/llselectmgr.h12
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();