diff options
Diffstat (limited to 'indra/newview/llfloaterimagepreview.cpp')
-rw-r--r-- | indra/newview/llfloaterimagepreview.cpp | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/indra/newview/llfloaterimagepreview.cpp b/indra/newview/llfloaterimagepreview.cpp index 3606f7ccbe..c8a76cbe55 100644 --- a/indra/newview/llfloaterimagepreview.cpp +++ b/indra/newview/llfloaterimagepreview.cpp @@ -138,6 +138,8 @@ BOOL LLFloaterImagePreview::postBuild() //----------------------------------------------------------------------------- LLFloaterImagePreview::~LLFloaterImagePreview() { + clearAllPreviewTextures(); + mRawImagep = NULL; delete mAvatarPreview; delete mSculptedPreview; @@ -205,6 +207,21 @@ void LLFloaterImagePreview::onPreviewTypeCommit(LLUICtrl* ctrl, void* userdata) fp->mSculptedPreview->refresh(); } + +//----------------------------------------------------------------------------- +// clearAllPreviewTextures() +//----------------------------------------------------------------------------- +void LLFloaterImagePreview::clearAllPreviewTextures() +{ + mAvatarPreview->clearPreviewTexture("mHairMesh0"); + mAvatarPreview->clearPreviewTexture("mUpperBodyMesh0"); + mAvatarPreview->clearPreviewTexture("mLowerBodyMesh0"); + mAvatarPreview->clearPreviewTexture("mHeadMesh0"); + mAvatarPreview->clearPreviewTexture("mUpperBodyMesh0"); + mAvatarPreview->clearPreviewTexture("mLowerBodyMesh0"); + mAvatarPreview->clearPreviewTexture("mSkirtMesh0"); +} + //----------------------------------------------------------------------------- // draw() //----------------------------------------------------------------------------- @@ -649,6 +666,19 @@ void LLImagePreviewAvatar::setPreviewTarget(const std::string& joint_name, const } //----------------------------------------------------------------------------- +// clearPreviewTexture() +//----------------------------------------------------------------------------- +void LLImagePreviewAvatar::clearPreviewTexture(const std::string& mesh_name) +{ + LLViewerJointMesh *mesh = (LLViewerJointMesh*)mDummyAvatar->mRoot.findJoint(mesh_name); + // clear out existing test mesh + if (mesh) + { + mesh->setTestTexture(0); + } +} + +//----------------------------------------------------------------------------- // update() //----------------------------------------------------------------------------- BOOL LLImagePreviewAvatar::render() |