MAINT-4700 FIXED Viewer cursor defaults to 'grab' mode when clicking on child prim of linkset that was recently physical and sat-upon
parent
1be14992c6
commit
1cea21dcb9
|
|
@ -69,6 +69,7 @@ const U32 FLAGS_TEMPORARY_ON_REZ = (1U << 29);
|
|||
//const U32 FLAGS_UNUSED_007 = (1U << 31); // was FLAGS_ZLIB_COMPRESSED
|
||||
|
||||
const U32 FLAGS_LOCAL = FLAGS_ANIM_SOURCE | FLAGS_CAMERA_SOURCE;
|
||||
const U32 FLAGS_WORLD = FLAGS_USE_PHYSICS | FLAGS_PHANTOM | FLAGS_TEMPORARY_ON_REZ;
|
||||
|
||||
typedef enum e_havok_joint_type
|
||||
{
|
||||
|
|
|
|||
|
|
@ -4643,11 +4643,18 @@ struct LLSelectMgrApplyFlags : public LLSelectedObjectFunctor
|
|||
BOOL mState;
|
||||
virtual bool apply(LLViewerObject* object)
|
||||
{
|
||||
if ( object->permModify() && // preemptive permissions check
|
||||
object->isRoot()) // don't send for child objects
|
||||
if ( object->permModify())
|
||||
{
|
||||
object->setFlags( mFlags, mState);
|
||||
}
|
||||
if (object->isRoot()) // don't send for child objects
|
||||
{
|
||||
object->setFlags( mFlags, mState);
|
||||
}
|
||||
else if (FLAGS_WORLD & mFlags && ((LLViewerObject*)object->getRoot())->isSelected())
|
||||
{
|
||||
// FLAGS_WORLD are shared by all items in linkset
|
||||
object->setFlagsWithoutUpdate(FLAGS_WORLD & mFlags, mState);
|
||||
}
|
||||
};
|
||||
return true;
|
||||
}
|
||||
};
|
||||
|
|
|
|||
Loading…
Reference in New Issue