summaryrefslogtreecommitdiff
path: root/indra/newview/llpanelobject.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'indra/newview/llpanelobject.cpp')
-rw-r--r--indra/newview/llpanelobject.cpp43
1 files changed, 40 insertions, 3 deletions
diff --git a/indra/newview/llpanelobject.cpp b/indra/newview/llpanelobject.cpp
index 6a61e0f02f..669ff3ffd6 100644
--- a/indra/newview/llpanelobject.cpp
+++ b/indra/newview/llpanelobject.cpp
@@ -73,7 +73,7 @@
#include "pipeline.h"
#include "llviewercontrol.h"
#include "lluictrlfactory.h"
-#include "llfirstuse.h"
+//#include "llfirstuse.h"
#include "lldrawpool.h"
@@ -137,6 +137,10 @@ BOOL LLPanelObject::postBuild()
// Phantom checkbox
mCheckPhantom = getChild<LLCheckBoxCtrl>("Phantom Checkbox Ctrl");
childSetCommitCallback("Phantom Checkbox Ctrl",onCommitPhantom,this);
+
+ // PhysicsShapeType combobox
+ mComboPhysicsShapeType = getChild<LLComboBox>("Physics Shape Type Combo Ctrl");
+ childSetCommitCallback("Physics Shape Type Combo Ctrl", onCommitPhysicsShapeType,this);
// Position
mLabelPosition = getChild<LLTextBox>("label position");
@@ -316,11 +320,15 @@ BOOL LLPanelObject::postBuild()
LLPanelObject::LLPanelObject()
: LLPanel(),
+ mComboMaterialItemCount(0),
mIsPhysical(FALSE),
mIsTemporary(FALSE),
mIsPhantom(FALSE),
+ mPhysicsShapeType(0),
mCastShadows(TRUE),
- mSelectedType(MI_BOX)
+ mSelectedType(MI_BOX),
+ mSculptTextureRevert(LLUUID::null),
+ mSculptTypeRevert(0)
{
}
@@ -524,6 +532,10 @@ void LLPanelObject::getState( )
mCheckPhantom->set( mIsPhantom );
mCheckPhantom->setEnabled( roots_selected>0 && editable && !is_flexible );
+ mPhysicsShapeType = objectp->getPhysicsShapeType();
+ mComboPhysicsShapeType->setCurrentByIndex(mPhysicsShapeType);
+ mComboPhysicsShapeType->setEnabled(editable);
+
#if 0 // 1.9.2
mCastShadows = root_objectp->flagCastShadows();
mCheckCastShadows->set( mCastShadows );
@@ -682,7 +694,7 @@ void LLPanelObject::getState( )
if (objectp->getParameterEntryInUse(LLNetworkData::PARAMS_SCULPT))
{
selected_item = MI_SCULPT;
- LLFirstUse::useSculptedPrim();
+ //LLFirstUse::useSculptedPrim();
}
@@ -1229,6 +1241,22 @@ void LLPanelObject::sendIsPhantom()
}
}
+void LLPanelObject::sendPhysicsShapeType()
+{
+ U8 value = (U8)mComboPhysicsShapeType->getCurrentIndex();
+ if (mPhysicsShapeType != value)
+ {
+ LLSelectMgr::getInstance()->selectionUpdatePhysicsShapeType(value);
+ mPhysicsShapeType = value;
+
+ llinfos << "update physics shape type sent" << llendl;
+ }
+ else
+ {
+ llinfos << "update physics shape type not changed" << llendl;
+ }
+}
+
void LLPanelObject::sendCastShadows()
{
BOOL value = mCheckCastShadows->get();
@@ -1902,6 +1930,8 @@ void LLPanelObject::clearCtrls()
mCheckTemporary ->setEnabled( FALSE );
mCheckPhantom ->set(FALSE);
mCheckPhantom ->setEnabled( FALSE );
+ mComboPhysicsShapeType->setCurrentByIndex(0);
+ mComboPhysicsShapeType->setEnabled(FALSE);
#if 0 // 1.9.2
mCheckCastShadows->set(FALSE);
mCheckCastShadows->setEnabled( FALSE );
@@ -1997,6 +2027,13 @@ void LLPanelObject::onCommitPhantom( LLUICtrl* ctrl, void* userdata )
}
// static
+void LLPanelObject::onCommitPhysicsShapeType(LLUICtrl* ctrl, void* userdata )
+{
+ LLPanelObject* self = (LLPanelObject*) userdata;
+ self->sendPhysicsShapeType();
+}
+
+// static
void LLPanelObject::onCommitCastShadows( LLUICtrl* ctrl, void* userdata )
{
LLPanelObject* self = (LLPanelObject*) userdata;