diff options
Diffstat (limited to 'indra/newview')
| -rwxr-xr-x | indra/newview/llfloaterpreference.cpp | 29 | ||||
| -rw-r--r-- | indra/newview/llfloaterpreference.h | 3 | ||||
| -rw-r--r-- | indra/newview/skins/default/xui/en/panel_preferences_graphics1.xml | 96 | 
3 files changed, 105 insertions, 23 deletions
diff --git a/indra/newview/llfloaterpreference.cpp b/indra/newview/llfloaterpreference.cpp index a28af2101b..cdfaab88eb 100755 --- a/indra/newview/llfloaterpreference.cpp +++ b/indra/newview/llfloaterpreference.cpp @@ -337,7 +337,7 @@ LLFloaterPreference::LLFloaterPreference(const LLSD& key)  	mCommitCallbackRegistrar.add("Pref.HardwareDefaults",		boost::bind(&LLFloaterPreference::setHardwareDefaults, this));  	mCommitCallbackRegistrar.add("Pref.VertexShaderEnable",		boost::bind(&LLFloaterPreference::onVertexShaderEnable, this));  	mCommitCallbackRegistrar.add("Pref.WindowedMod",			boost::bind(&LLFloaterPreference::onCommitWindowedMode, this)); -	mCommitCallbackRegistrar.add("Pref.UpdateSliderText",		boost::bind(&LLFloaterPreference::onUpdateSliderText,this, _1,_2)); +	mCommitCallbackRegistrar.add("Pref.UpdateSliderText",		boost::bind(&LLFloaterPreference::refreshUI,this));  	mCommitCallbackRegistrar.add("Pref.QualityPerformance",		boost::bind(&LLFloaterPreference::onChangeQuality, this, _2));  	mCommitCallbackRegistrar.add("Pref.applyUIColor",			boost::bind(&LLFloaterPreference::applyUIColor, this ,_1, _2));  	mCommitCallbackRegistrar.add("Pref.getUIColor",				boost::bind(&LLFloaterPreference::getUIColor, this ,_1, _2)); @@ -1147,6 +1147,8 @@ void LLFloaterPreference::refreshEnabledState()  	//Deferred/SSAO/Shadows  	LLCheckBoxCtrl* ctrl_deferred = getChild<LLCheckBoxCtrl>("UseLightShaders"); +	LLCheckBoxCtrl* ctrl_deferred2 = getChild<LLCheckBoxCtrl>("UseLightShaders2"); +  	BOOL enabled = LLFeatureManager::getInstance()->isFeatureAvailable("RenderDeferred") &&   						shaders &&  @@ -1155,11 +1157,13 @@ void LLFloaterPreference::refreshEnabledState()  						(ctrl_wind_light->get()) ? TRUE : FALSE;  	ctrl_deferred->setEnabled(enabled); -	 +	ctrl_deferred2->setEnabled(enabled); +  	LLCheckBoxCtrl* ctrl_ssao = getChild<LLCheckBoxCtrl>("UseSSAO");  	LLCheckBoxCtrl* ctrl_dof = getChild<LLCheckBoxCtrl>("UseDoF");  	LLComboBox* ctrl_shadow = getChild<LLComboBox>("ShadowDetail"); +	// note, okay here to get from ctrl_deferred as it's twin, ctrl_deferred2 will alway match it  	enabled = enabled && LLFeatureManager::getInstance()->isFeatureAvailable("RenderDeferredSSAO") && (ctrl_deferred->get() ? TRUE : FALSE);  	ctrl_ssao->setEnabled(enabled); @@ -1185,6 +1189,7 @@ void LLFloaterPreference::disableUnavailableSettings()  	LLCheckBoxCtrl* ctrl_wind_light    = getChild<LLCheckBoxCtrl>("WindLightUseAtmosShaders");  	LLCheckBoxCtrl* ctrl_avatar_impostors = getChild<LLCheckBoxCtrl>("AvatarImpostors");  	LLCheckBoxCtrl* ctrl_deferred = getChild<LLCheckBoxCtrl>("UseLightShaders"); +	LLCheckBoxCtrl* ctrl_deferred2 = getChild<LLCheckBoxCtrl>("UseLightShaders2");  	LLComboBox* ctrl_shadows = getChild<LLComboBox>("ShadowDetail");  	LLCheckBoxCtrl* ctrl_ssao = getChild<LLCheckBoxCtrl>("UseSSAO");  	LLCheckBoxCtrl* ctrl_dof = getChild<LLCheckBoxCtrl>("UseDoF"); @@ -1218,6 +1223,8 @@ void LLFloaterPreference::disableUnavailableSettings()  		ctrl_deferred->setEnabled(FALSE);  		ctrl_deferred->setValue(FALSE); +		ctrl_deferred2->setEnabled(FALSE); +		ctrl_deferred2->setValue(FALSE);  	}  	// disabled windlight @@ -1238,6 +1245,8 @@ void LLFloaterPreference::disableUnavailableSettings()  		ctrl_deferred->setEnabled(FALSE);  		ctrl_deferred->setValue(FALSE); +		ctrl_deferred2->setEnabled(FALSE); +		ctrl_deferred2->setValue(FALSE);  	}  	// disabled deferred @@ -1255,6 +1264,8 @@ void LLFloaterPreference::disableUnavailableSettings()  		ctrl_deferred->setEnabled(FALSE);  		ctrl_deferred->setValue(FALSE); +		ctrl_deferred2->setEnabled(FALSE); +		ctrl_deferred2->setValue(FALSE);  	}  	// disabled deferred SSAO @@ -1299,6 +1310,8 @@ void LLFloaterPreference::disableUnavailableSettings()  		ctrl_deferred->setEnabled(FALSE);  		ctrl_deferred->setValue(FALSE); +		ctrl_deferred2->setEnabled(FALSE); +		ctrl_deferred2->setValue(FALSE);  	}  	// disabled cloth @@ -1327,6 +1340,7 @@ void LLFloaterPreference::refresh()  	updateSliderText(getChild<LLSliderCtrl>("FlexibleMeshDetail",	true), getChild<LLTextBox>("FlexibleMeshDetailText",	true));  	updateSliderText(getChild<LLSliderCtrl>("TreeMeshDetail",		true), getChild<LLTextBox>("TreeMeshDetailText",		true));  	updateSliderText(getChild<LLSliderCtrl>("AvatarMeshDetail",		true), getChild<LLTextBox>("AvatarMeshDetailText",		true)); +	updateSliderText(getChild<LLSliderCtrl>("AvatarMeshDetail2",		true), getChild<LLTextBox>("AvatarMeshDetailText2",		true));  	updateSliderText(getChild<LLSliderCtrl>("AvatarPhysicsDetail",	true), getChild<LLTextBox>("AvatarPhysicsDetailText",		true));  	updateSliderText(getChild<LLSliderCtrl>("TerrainMeshDetail",	true), getChild<LLTextBox>("TerrainMeshDetailText",		true));  	updateSliderText(getChild<LLSliderCtrl>("RenderPostProcess",	true), getChild<LLTextBox>("PostProcessText",			true)); @@ -1578,16 +1592,9 @@ void LLFloaterPreference::setPersonalInfo(const std::string& visibility, bool im  	getChildView("chat_font_size")->setEnabled(TRUE);  } -void LLFloaterPreference::onUpdateSliderText(LLUICtrl* ctrl, const LLSD& name) +void LLFloaterPreference::refreshUI()  { -	std::string ctrl_name = name.asString(); -	 -	if ((ctrl_name =="" )|| !hasChild(ctrl_name, true)) -		return; -	 -	LLTextBox* text_box = getChild<LLTextBox>(name.asString()); -	LLSliderCtrl* slider = dynamic_cast<LLSliderCtrl*>(ctrl); -	updateSliderText(slider, text_box); +	refresh();  }  void LLFloaterPreference::updateSliderText(LLSliderCtrl* ctrl, LLTextBox* text_box) diff --git a/indra/newview/llfloaterpreference.h b/indra/newview/llfloaterpreference.h index 22e80a21cb..cb180f6f1e 100644 --- a/indra/newview/llfloaterpreference.h +++ b/indra/newview/llfloaterpreference.h @@ -154,8 +154,7 @@ public:  	void onChangeQuality(const LLSD& data);  	void updateSliderText(LLSliderCtrl* ctrl, LLTextBox* text_box); -	void onUpdateSliderText(LLUICtrl* ctrl, const LLSD& name); -//	void fractionFromDecimal(F32 decimal_val, S32& numerator, S32& denominator); +	void refreshUI();  	void onCommitParcelMediaAutoPlayEnable();  	void onCommitMediaEnabled(); diff --git a/indra/newview/skins/default/xui/en/panel_preferences_graphics1.xml b/indra/newview/skins/default/xui/en/panel_preferences_graphics1.xml index 4ed95f0758..7abc67494f 100644 --- a/indra/newview/skins/default/xui/en/panel_preferences_graphics1.xml +++ b/indra/newview/skins/default/xui/en/panel_preferences_graphics1.xml @@ -177,10 +177,86 @@       width="80">          Ultra      </text> +  <slider +   control_name="RenderAvatarLODFactor" +   invisiblity_control="ShowAdvancedGraphicsSettings" +   follows="left|top" +   height="16" +   increment="0.125" +   initial_value="160" +   label="Avatar detail:" +   label_width="90" +   layout="topleft" +   left="30" +   name="AvatarMeshDetail2" +   show_text="false" +   top="72" +   width="300"> +    <slider.commit_callback +     function="Pref.UpdateSliderText" +     parameter="AvatarMeshDetailText2" /> +  </slider> +  <text +   type="string" +   invisiblity_control="ShowAdvancedGraphicsSettings" +   length="1" +   follows="left|top" +   height="12" +   layout="topleft" +   name="AvatarMeshDetailText2" +   top_delta="0" +   left_delta="304" +   width="128"> +    Low +  </text> +  <slider +   control_name="RenderFarClip" +   invisiblity_control="ShowAdvancedGraphicsSettings" +   decimal_digits="0" +   follows="left|top" +   height="16" +   increment="8" +   initial_value="160" +   label="Draw distance:" +   label_width="90" +   layout="topleft" +   left="30" +   max_val="512" +   min_val="64" +   name="DrawDistance" +   top="110" +   width="330" /> +  <text +   type="string" +   invisiblity_control="ShowAdvancedGraphicsSettings" +   length="1" +   follows="left|top" +   height="12" +   layout="topleft" +   left_delta="330" +   name="DrawDistanceMeterText2" +   top_delta="0" +   width="128"> +    m +  </text> +  <check_box +		 control_name="RenderDeferred" +     invisiblity_control="ShowAdvancedGraphicsSettings" +		 height="16" +		 initial_value="true" +		 label="Lighting and Shadows" +		 layout="topleft" +		 left="30" +		 name="UseLightShaders2" +		 top="148" +		 width="256"> +    <check_box.commit_callback +      function="Pref.VertexShaderEnable" /> +  </check_box>      <panel -	 visiblity_control="ShowAdvancedGraphicsSettings" +	   visiblity_control="ShowAdvancedGraphicsSettings"       border="false" -	 follows="top|left" +	   follows="top|left"       height="300"       label="CustomGraphics"       layout="topleft" @@ -219,15 +295,15 @@  		 left_delta="0"  		 name="BumpShiny"  		 top_pad="1" -		width="256" /> +		 width="256" />      <check_box -		control_name="RenderLocalLights" -		height="16" -		initial_value="true" -		label="Local Lights" -		layout="topleft" -		left_delta="0" -		name="LocalLights" +		 control_name="RenderLocalLights" +		 height="16" +		 initial_value="true" +		 label="Local Lights" +		 layout="topleft" +		 left_delta="0" +		 name="LocalLights"  		 top_pad="1"  		 width="256" />  		  <check_box  | 
