Added Terrain Scale ComboBox to graphics preferences panel.

Fixed up feature tables to use correct names, and to use the 7 for high TerrainScale.
This commit is contained in:
Lirusaito
2012-07-14 20:45:59 -04:00
parent 3acaf773b8
commit 92dc20850d
6 changed files with 36 additions and 9 deletions

View File

@@ -250,6 +250,10 @@ BOOL LLPanelDisplay::postBuild()
mCtrlShadowDetail->setCommitCallback(&LLPanelDisplay::onVertexShaderEnable);
mCtrlShadowDetail->setCallbackUserData(this);
//----------------------------------------------------------------------------
// Terrain Scale
mCtrlTerrainScale = getChild<LLComboBox>("TerrainScaleCombo");
//----------------------------------------------------------------------------
// Enable Avatar Shaders
mCtrlAvatarVP = getChild<LLCheckBoxCtrl>("AvatarVertexProgram");
@@ -350,6 +354,7 @@ BOOL LLPanelDisplay::postBuild()
mLightingText = getChild<LLTextBox>("LightingDetailText");
mMeshDetailText = getChild<LLTextBox>("MeshDetailText");
mShadowDetailText = getChild<LLTextBox>("ShadowDetailText");
mTerrainScaleText = getChild<LLTextBox>("TerrainScaleText");
refresh();
@@ -417,10 +422,10 @@ void LLPanelDisplay::refresh()
mDeferred = gSavedSettings.getBOOL("RenderDeferred");
mDeferredDoF = gSavedSettings.getBOOL("RenderDepthOfField");
// reflection radio
// combo boxes
mReflectionDetail = gSavedSettings.getS32("RenderReflectionDetail");
mShadowDetail = gSavedSettings.getS32("RenderShadowDetail");
mTerrainScale = gSavedSettings.getF32("RenderTerrainScale");
// avatar settings
mAvatarImpostors = gSavedSettings.getBOOL("RenderUseImpostors");
@@ -606,6 +611,13 @@ void LLPanelDisplay::disableUnavailableSettings()
mCtrlReflectionDetail->setValue(FALSE);
}
// disabled terrain scale
if(!LLFeatureManager::getInstance()->isFeatureAvailable("RenderTerrainScale"))
{
mCtrlTerrainScale->setEnabled(false);
mCtrlTerrainScale->setValue(false);
}
// disabled av
if(!LLFeatureManager::getInstance()->isFeatureAvailable("RenderAvatarVP"))
{
@@ -678,10 +690,12 @@ void LLPanelDisplay::setHiddenGraphicsState(bool isHidden)
llassert(mRadioTerrainDetail != NULL);
llassert(mCtrlReflectionDetail != NULL);
llassert(mCtrlTerrainScale != NULL);
llassert(mMeshDetailText != NULL);
llassert(mShaderText != NULL);
llassert(mReflectionText != NULL);
llassert(mTerrainScaleText != NULL);
llassert(mAvatarText != NULL);
llassert(mLightingText != NULL);
llassert(mTerrainText != NULL);
@@ -728,6 +742,7 @@ void LLPanelDisplay::setHiddenGraphicsState(bool isHidden)
mRadioTerrainDetail->setVisible(!isHidden);
mCtrlReflectionDetail->setVisible(!isHidden);
mCtrlTerrainScale->setVisible(!isHidden);
mCtrlDeferred->setVisible(!isHidden);
mCtrlDeferredDoF->setVisible(!isHidden);
@@ -742,6 +757,7 @@ void LLPanelDisplay::setHiddenGraphicsState(bool isHidden)
mDrawDistanceMeterText1->setVisible(!isHidden);
mDrawDistanceMeterText2->setVisible(!isHidden);
mShadowDetailText->setVisible(!isHidden);
mTerrainScaleText->setVisible(!isHidden);
// hide one meter text if we're making things visible
if(!isHidden)
@@ -771,6 +787,7 @@ void LLPanelDisplay::cancel()
gSavedSettings.setS32("RenderReflectionDetail", mReflectionDetail);
gSavedSettings.setS32("RenderShadowDetail", mShadowDetail);
gSavedSettings.setF32("RenderTerrainScale", mTerrainScale);
gSavedSettings.setBOOL("RenderUseImpostors", mAvatarImpostors);
gSavedSettings.setS32("RenderAvatarMaxVisible", mNonImpostors);