diff --git a/indra/newview/alfloaterlightbox.cpp b/indra/newview/alfloaterlightbox.cpp index e4621971cf3c67e55b17d8d281ee88b1f7f14d5d..dbd9daebed7d4bba648f45e9235106b60bf6433f 100644 --- a/indra/newview/alfloaterlightbox.cpp +++ b/indra/newview/alfloaterlightbox.cpp @@ -31,12 +31,63 @@ #include "llviewerprecompiledheaders.h" #include "alfloaterlightbox.h" +#include "llviewercontrol.h" + ALFloaterLightBox::ALFloaterLightBox(const LLSD& key) : LLFloater(key) { + mCommitCallbackRegistrar.add("LightBox.ResetControlDefault", std::bind(&ALFloaterLightBox::onClickResetControlDefault, this, std::placeholders::_2)); + mCommitCallbackRegistrar.add("LightBox.ResetGroupDefault", std::bind(&ALFloaterLightBox::onClickResetGroupDefault, this, std::placeholders::_2)); } BOOL ALFloaterLightBox::postBuild() { return TRUE; +} + +void ALFloaterLightBox::onClickResetControlDefault(const LLSD& userdata) +{ + const std::string& control_name = userdata.asString(); + LLControlVariable* controlp = gSavedSettings.getControl(control_name); + if (controlp) + { + controlp->resetToDefault(true); + } +} + +void ALFloaterLightBox::onClickResetGroupDefault(const LLSD& userdata) +{ + const std::string& setting_group = userdata.asString(); + LLControlVariable* controlp = nullptr; + if (setting_group == "sharpen") + { + controlp = gSavedSettings.getControl("RenderSharpenMethod"); + if (controlp) + { + controlp->resetToDefault(true); + } + controlp = gSavedSettings.getControl("RenderSharpenCASParams"); + if (controlp) + { + controlp->resetToDefault(true); + } + controlp = gSavedSettings.getControl("RenderSharpenDLSParams"); + if (controlp) + { + controlp->resetToDefault(true); + } + } + else if (setting_group == "tonemap") + { + controlp = gSavedSettings.getControl("RenderToneMapType"); + if (controlp) + { + controlp->resetToDefault(true); + } + controlp = gSavedSettings.getControl("RenderToneMapExposure"); + if (controlp) + { + controlp->resetToDefault(true); + } + } } \ No newline at end of file diff --git a/indra/newview/alfloaterlightbox.h b/indra/newview/alfloaterlightbox.h index 5f417a23ca8e946b0e62d3e5665050b92175cd69..171501f2e2d861b59a02d829348425aaa83fafdd 100644 --- a/indra/newview/alfloaterlightbox.h +++ b/indra/newview/alfloaterlightbox.h @@ -41,6 +41,8 @@ class ALFloaterLightBox final : public LLFloater ALFloaterLightBox(const LLSD& key); BOOL postBuild() override; private: + void onClickResetControlDefault(const LLSD& userdata); + void onClickResetGroupDefault(const LLSD& userdata); }; diff --git a/indra/newview/skins/default/xui/en/panel_lightbox_image.xml b/indra/newview/skins/default/xui/en/panel_lightbox_image.xml index a6ad96801caf5b690241498f4d83a766bf8a9eb8..efebeaa2654b6bf8cd7386c5a12103e1f9e2ac2c 100644 --- a/indra/newview/skins/default/xui/en/panel_lightbox_image.xml +++ b/indra/newview/skins/default/xui/en/panel_lightbox_image.xml @@ -85,8 +85,9 @@ scale_image="true" image_overlay="Refresh_Off" image_overlay_alignment="center"> - <button.commit_callback - function="ClickDefault" /> + <button.commit_callback + function="LightBox.ResetGroupDefault" + parameter="sharpen" /> </button> <text follows="left|top" @@ -185,8 +186,9 @@ scale_image="true" image_overlay="Refresh_Off" image_overlay_alignment="center"> - <button.commit_callback - function="ClickDefault" /> + <button.commit_callback + function="LightBox.ResetGroupDefault" + parameter="tonemap" /> </button> <text diff --git a/indra/newview/skins/default/xui/en/panel_lightbox_shadow.xml b/indra/newview/skins/default/xui/en/panel_lightbox_shadow.xml index 3c350dce585df0751f52d044bd526a3098f01989..d37f28d2ba8611546ce6e4084e8c3512ec182dbe 100644 --- a/indra/newview/skins/default/xui/en/panel_lightbox_shadow.xml +++ b/indra/newview/skins/default/xui/en/panel_lightbox_shadow.xml @@ -87,8 +87,9 @@ scale_image="true" image_overlay="Refresh_Off" image_overlay_alignment="center"> - <button.commit_callback - function="ClickDefault" /> + <button.commit_callback + function="LightBox.ResetControlDefault" + parameter="RenderShadowResolutionScale" /> </button> <text follows="left|top" @@ -138,8 +139,9 @@ scale_image="true" image_overlay="Refresh_Off" image_overlay_alignment="center"> - <button.commit_callback - function="ClickDefault" /> + <button.commit_callback + function="LightBox.ResetControlDefault" + parameter="RenderShadowBias" /> </button> <text follows="left|top" @@ -189,8 +191,9 @@ scale_image="true" image_overlay="Refresh_Off" image_overlay_alignment="center"> - <button.commit_callback - function="ClickDefault" /> + <button.commit_callback + function="LightBox.ResetControlDefault" + parameter="RenderShadowOffset" /> </button> <text follows="left|top" @@ -240,8 +243,9 @@ scale_image="true" image_overlay="Refresh_Off" image_overlay_alignment="center"> - <button.commit_callback - function="ClickDefault" /> + <button.commit_callback + function="LightBox.ResetControlDefault" + parameter="RenderSpotShadowBias" /> </button> <text follows="left|top" @@ -291,8 +295,9 @@ scale_image="true" image_overlay="Refresh_Off" image_overlay_alignment="center"> - <button.commit_callback - function="ClickDefault" /> + <button.commit_callback + function="LightBox.ResetControlDefault" + parameter="RenderSpotShadowOffset" /> </button> <text follows="left|top" @@ -342,8 +347,9 @@ scale_image="true" image_overlay="Refresh_Off" image_overlay_alignment="center"> - <button.commit_callback - function="ClickDefault" /> + <button.commit_callback + function="LightBox.ResetControlDefault" + parameter="RenderShadowBlurSize" /> </button> <text follows="left|top" @@ -393,8 +399,9 @@ scale_image="true" image_overlay="Refresh_Off" image_overlay_alignment="center"> - <button.commit_callback - function="ClickDefault" /> + <button.commit_callback + function="LightBox.ResetControlDefault" + parameter="RenderShadowBlurDistFactor" /> </button> <panel label="SSAO" diff --git a/indra/newview/skins/default/xui/en/panel_lightbox_ssao.xml b/indra/newview/skins/default/xui/en/panel_lightbox_ssao.xml index d00a9456aeb6d2bdab8750febee99dc13077e9be..9d3fe3bc5f478d106c765e3155843efff4ccb4e5 100644 --- a/indra/newview/skins/default/xui/en/panel_lightbox_ssao.xml +++ b/indra/newview/skins/default/xui/en/panel_lightbox_ssao.xml @@ -66,8 +66,9 @@ scale_image="true" image_overlay="Refresh_Off" image_overlay_alignment="center"> - <button.commit_callback - function="ClickDefault" /> + <button.commit_callback + function="LightBox.ResetControlDefault" + parameter="RenderShadowBlurDistFactor" /> </button> <text follows="left|top" @@ -117,8 +118,9 @@ scale_image="true" image_overlay="Refresh_Off" image_overlay_alignment="center"> - <button.commit_callback - function="ClickDefault" /> + <button.commit_callback + function="LightBox.ResetControlDefault" + parameter="RenderSSAOFactor" /> </button> <text follows="left|top" @@ -168,8 +170,9 @@ scale_image="true" image_overlay="Refresh_Off" image_overlay_alignment="center"> - <button.commit_callback - function="ClickDefault" /> + <button.commit_callback + function="LightBox.ResetControlDefault" + parameter="RenderSSAOScale" /> </button> <text follows="left|top" @@ -219,7 +222,8 @@ scale_image="true" image_overlay="Refresh_Off" image_overlay_alignment="center"> - <button.commit_callback - function="ClickDefault" /> + <button.commit_callback + function="LightBox.ResetControlDefault" + parameter="RenderSSAOMaxScale" /> </button> </panel>