diff options
author | Dave Parks <davep@lindenlab.com> | 2010-09-22 17:33:17 -0500 |
---|---|---|
committer | Dave Parks <davep@lindenlab.com> | 2010-09-22 17:33:17 -0500 |
commit | bc4dcef7af8f905df81ca6b7ba21cc9e34a506e9 (patch) | |
tree | fa94bfa8560bc86501049f8fa825aeb86816ddb8 /indra/newview | |
parent | a5fc11ea21ad8ac9bf6a4be97c16fe977db40175 (diff) |
SH-93 Disable mirror/invert check boxes when sculpt type is set to mesh. Also fixed a crash when switching sculpt type from mesh to sphere.
Diffstat (limited to 'indra/newview')
-rwxr-xr-x | indra/newview/llpanelobject.cpp | 15 | ||||
-rwxr-xr-x | indra/newview/llvovolume.cpp | 3 |
2 files changed, 16 insertions, 2 deletions
diff --git a/indra/newview/llpanelobject.cpp b/indra/newview/llpanelobject.cpp index 6b687846ae..943637ea3e 100755 --- a/indra/newview/llpanelobject.cpp +++ b/indra/newview/llpanelobject.cpp @@ -1179,13 +1179,13 @@ void LLPanelObject::getState( ) if (mCtrlSculptMirror) { mCtrlSculptMirror->set(sculpt_mirror); - mCtrlSculptMirror->setEnabled(editable); + mCtrlSculptMirror->setEnabled(editable && (sculpt_stitching != LL_SCULPT_TYPE_MESH)); } if (mCtrlSculptInvert) { mCtrlSculptInvert->set(sculpt_invert); - mCtrlSculptInvert->setEnabled(editable); + mCtrlSculptInvert->setEnabled(editable && (sculpt_stitching != LL_SCULPT_TYPE_MESH)); } if (mLabelSculptType) @@ -1856,6 +1856,17 @@ void LLPanelObject::sendSculpt() if (mCtrlSculptType) sculpt_type |= mCtrlSculptType->getCurrentIndex(); + bool enabled = sculpt_type != LL_SCULPT_TYPE_MESH; + + if (mCtrlSculptMirror) + { + mCtrlSculptMirror->setEnabled(enabled ? TRUE : FALSE); + } + if (mCtrlSculptInvert) + { + mCtrlSculptInvert->setEnabled(enabled ? TRUE : FALSE); + } + if ((mCtrlSculptMirror) && (mCtrlSculptMirror->get())) sculpt_type |= LL_SCULPT_FLAG_MIRROR; diff --git a/indra/newview/llvovolume.cpp b/indra/newview/llvovolume.cpp index 4ef050e71f..d96b6eccb1 100755 --- a/indra/newview/llvovolume.cpp +++ b/indra/newview/llvovolume.cpp @@ -1354,6 +1354,9 @@ BOOL LLVOVolume::genBBoxes(BOOL force_global) LLVector4a min,max; + min.clear(); + max.clear(); + BOOL rebuild = mDrawable->isState(LLDrawable::REBUILD_VOLUME | LLDrawable::REBUILD_POSITION | LLDrawable::REBUILD_RIGGED); // bool rigged = false; |