diff options
author | Xiaohong Bao <bao@lindenlab.com> | 2011-06-15 16:28:12 -0600 |
---|---|---|
committer | Xiaohong Bao <bao@lindenlab.com> | 2011-06-15 16:28:12 -0600 |
commit | 47b9f588df1f90126aa630ed050e41b2d145a085 (patch) | |
tree | 8aaba6284823715d93158912d7371105fee353b4 /indra/newview/llfloatermodelpreview.cpp | |
parent | 8e532652ebe02d479271d7ec6f2b7c293e020afe (diff) | |
parent | 0bb7bcc96cfea7b5d56f083d0afcbc1fce7e9f21 (diff) |
Automated merge with http://hg.secondlife.com/mesh-development
Diffstat (limited to 'indra/newview/llfloatermodelpreview.cpp')
-rw-r--r-- | indra/newview/llfloatermodelpreview.cpp | 21 |
1 files changed, 19 insertions, 2 deletions
diff --git a/indra/newview/llfloatermodelpreview.cpp b/indra/newview/llfloatermodelpreview.cpp index 4e35029ce6..ab6753b4be 100644 --- a/indra/newview/llfloatermodelpreview.cpp +++ b/indra/newview/llfloatermodelpreview.cpp @@ -1121,7 +1121,7 @@ LLModelLoader::LLModelLoader( std::string filename, S32 lod, LLModelPreview* pre std::deque<std::string>& jointsFromNodes ) : mJointList( jointMap ) , mJointsFromNode( jointsFromNodes ) -, LLThread("Model Loader"), mFilename(filename), mLod(lod), mPreview(preview), mFirstTransform(TRUE) +, LLThread("Model Loader"), mFilename(filename), mLod(lod), mPreview(preview), mFirstTransform(TRUE), mNumOfFetchingTextures(0) { mJointMap["mPelvis"] = "mPelvis"; mJointMap["mTorso"] = "mTorso"; @@ -2274,7 +2274,8 @@ void LLModelLoader::loadTextures() iter->second[i].mMaterial[j].mDiffuseMap = LLViewerTextureManager::getFetchedTextureFromUrl("file://" + iter->second[i].mMaterial[j].mDiffuseMapFilename, TRUE, LLViewerTexture::BOOST_PREVIEW); iter->second[i].mMaterial[j].mDiffuseMap->setLoadedCallback(LLModelPreview::textureLoadedCallback, 0, TRUE, FALSE, mPreview, NULL, FALSE); - iter->second[i].mMaterial[j].mDiffuseMap->forceToSaveRawImage(); + iter->second[i].mMaterial[j].mDiffuseMap->forceToSaveRawImage(0, F32_MAX); + mNumOfFetchingTextures++ ; } } } @@ -4154,6 +4155,14 @@ void LLModelPreview::updateStatusMessages() } } + if(upload_ok && mModelLoader) + { + if(!mModelLoader->areTexturesReady() && mFMP->childGetValue("upload_textures").asBoolean()) + { + upload_ok = false ; + } + } + const BOOL confirmed_checkbox = mFMP->getChild<LLCheckBoxCtrl>("confirm_checkbox")->getValue().asBoolean(); if ( upload_ok && !errorStateFromLoader && skinAndRigOk && !has_degenerate && confirmed_checkbox) { @@ -5292,6 +5301,14 @@ void LLModelPreview::textureLoadedCallback( BOOL success, LLViewerFetchedTexture { LLModelPreview* preview = (LLModelPreview*) userdata; preview->refresh(); + + if(final && preview->mModelLoader) + { + if(preview->mModelLoader->mNumOfFetchingTextures > 0) + { + preview->mModelLoader->mNumOfFetchingTextures-- ; + } + } } void LLModelPreview::onLODParamCommit(bool enforce_tri_limit) |