diff options
Diffstat (limited to 'indra/newview/llfloatermodelpreview.cpp')
-rwxr-xr-x | indra/newview/llfloatermodelpreview.cpp | 50 |
1 files changed, 26 insertions, 24 deletions
diff --git a/indra/newview/llfloatermodelpreview.cpp b/indra/newview/llfloatermodelpreview.cpp index 85d0ae02cf..0dc021c44b 100755 --- a/indra/newview/llfloatermodelpreview.cpp +++ b/indra/newview/llfloatermodelpreview.cpp @@ -3339,7 +3339,7 @@ void LLModelPreview::updateStatusMessages() } - else if (mFMP->childGetValue("lod_auto_generate").asBoolean()) + else if (mFMP->childGetValue("lod_none").asBoolean()) { for (U32 i = 0; i < num_file_controls; ++i) { @@ -3348,6 +3348,31 @@ void LLModelPreview::updateStatusMessages() for (U32 i = 0; i < num_lod_controls; ++i) { + mFMP->childDisable(lod_controls[i]); + } + + if (!mModel[mPreviewLOD].empty()) + { + mModel[mPreviewLOD].clear(); + mScene[mPreviewLOD].clear(); + mVertexBuffer[mPreviewLOD].clear(); + + //this can cause phasing issues with the UI, so reenter this function and return + updateStatusMessages(); + return; + } + + + } + else + { // auto generate, also the default case for wizard which has no radio selection + for (U32 i = 0; i < num_file_controls; ++i) + { + mFMP->childDisable(file_controls[i]); + } + + for (U32 i = 0; i < num_lod_controls; ++i) + { mFMP->childEnable(lod_controls[i]); } @@ -3380,29 +3405,6 @@ void LLModelPreview::updateStatusMessages() } } } - else - { // "None" is chosen - for (U32 i = 0; i < num_file_controls; ++i) - { - mFMP->childDisable(file_controls[i]); - } - - for (U32 i = 0; i < num_lod_controls; ++i) - { - mFMP->childDisable(lod_controls[i]); - } - - if (!mModel[mPreviewLOD].empty()) - { - mModel[mPreviewLOD].clear(); - mScene[mPreviewLOD].clear(); - mVertexBuffer[mPreviewLOD].clear(); - - //this can cause phasing issues with the UI, so reenter this function and return - updateStatusMessages(); - return; - } - } if (mFMP->childGetValue("physics_load_from_file").asBoolean()) { |