summaryrefslogtreecommitdiff
path: root/indra/newview
diff options
context:
space:
mode:
authorLeyla Farazha <leyla@lindenlab.com>2011-03-24 12:31:24 -0700
committerLeyla Farazha <leyla@lindenlab.com>2011-03-24 12:31:24 -0700
commit673801e6448baefb2328fc50596f6156abb0b1e6 (patch)
tree98ef20e9398d7abd67b471344254f34bd8ca516c /indra/newview
parent3ad81bb4a642d25018b773d2ef005380664d8170 (diff)
SH-1205 Lock out ability to change sculpt stitching type or sculpt map when sculpt stitching type is set to mesh
Diffstat (limited to 'indra/newview')
-rw-r--r--indra/newview/llfloatertools.cpp4
-rw-r--r--indra/newview/llpanelobject.cpp14
2 files changed, 12 insertions, 6 deletions
diff --git a/indra/newview/llfloatertools.cpp b/indra/newview/llfloatertools.cpp
index 257970aaaf..73c1f99fa0 100644
--- a/indra/newview/llfloatertools.cpp
+++ b/indra/newview/llfloatertools.cpp
@@ -787,7 +787,9 @@ void LLFloaterTools::updatePopup(LLCoordGL center, MASK mask)
getChildView("Strength:")->setVisible( land_visible);
}
- bool show_mesh_cost = !gAgent.getRegion()->getCapability("GetMesh").empty() && gSavedSettings.getBOOL("MeshEnabled");
+ bool show_mesh_cost = gAgent.getRegion() &&
+ !gAgent.getRegion()->getCapability("GetMesh").empty() &&
+ gSavedSettings.getBOOL("MeshEnabled");
getChildView("obj_count")->setVisible( !land_visible && !show_mesh_cost);
getChildView("prim_count")->setVisible( !land_visible && !show_mesh_cost);
diff --git a/indra/newview/llpanelobject.cpp b/indra/newview/llpanelobject.cpp
index 0300ea0c92..05e185dcfd 100644
--- a/indra/newview/llpanelobject.cpp
+++ b/indra/newview/llpanelobject.cpp
@@ -1140,6 +1140,8 @@ void LLPanelObject::getState( )
if (selected_item == MI_SCULPT)
{
+
+
LLUUID id;
LLSculptParams *sculpt_params = (LLSculptParams *)objectp->getParameterEntry(LLNetworkData::PARAMS_SCULPT);
@@ -1169,10 +1171,12 @@ void LLPanelObject::getState( )
BOOL sculpt_mirror = sculpt_type & LL_SCULPT_FLAG_MIRROR;
isMesh = (sculpt_stitching == LL_SCULPT_TYPE_MESH);
+ mComboBaseType->setEnabled(!isMesh);
+
if (mCtrlSculptType)
{
mCtrlSculptType->setCurrentByIndex(sculpt_stitching);
- mCtrlSculptType->setEnabled(editable);
+ mCtrlSculptType->setEnabled(editable && !isMesh);
}
if (mCtrlSculptMirror)
@@ -1924,6 +1928,7 @@ void LLPanelObject::refresh()
}
bool enable_mesh = gSavedSettings.getBOOL("MeshEnabled") &&
+ gAgent.getRegion() &&
!gAgent.getRegion()->getCapability("GetMesh").empty();
getChildView("label physicsshapetype")->setVisible(enable_mesh);
@@ -1940,15 +1945,14 @@ void LLPanelObject::refresh()
getChild<LLSpinCtrl>("Scale Y")->setMaxValue(max_scale);
getChild<LLSpinCtrl>("Scale Z")->setMaxValue(max_scale);
- LLComboBox* sculpt_combo = getChild<LLComboBox>("sculpt type control");
- BOOL found = sculpt_combo->itemExists("Mesh");
+ BOOL found = mCtrlSculptType->itemExists("Mesh");
if (enable_mesh && !found)
{
- sculpt_combo->add("Mesh");
+ mCtrlSculptType->add("Mesh");
}
else if (!enable_mesh && found)
{
- sculpt_combo->remove("Mesh");
+ mCtrlSculptType->remove("Mesh");
}
}