summaryrefslogtreecommitdiff
path: root/indra/newview/llviewercontrol.cpp
diff options
context:
space:
mode:
authorRoxie Linden <roxie@lindenlab.com>2024-05-20 12:59:59 -0700
committerRoxie Linden <roxie@lindenlab.com>2024-05-20 12:59:59 -0700
commit3a212d9608492ae64a3a32f80790371b90be9e9e (patch)
treefcb3901b838af753e40c2ddd1ce84b95a6c2f603 /indra/newview/llviewercontrol.cpp
parentc7461061b8113fa258611b1a31f16a119fad1a2c (diff)
parente1623bb276f83a43ce7a197e388720c05bdefe61 (diff)
Merge branch 'spaces-merge' into roxie/webrtc-voice
Diffstat (limited to 'indra/newview/llviewercontrol.cpp')
-rw-r--r--indra/newview/llviewercontrol.cpp492
1 files changed, 244 insertions, 248 deletions
diff --git a/indra/newview/llviewercontrol.cpp b/indra/newview/llviewercontrol.cpp
index 44173a8043..bd9ed2f958 100644
--- a/indra/newview/llviewercontrol.cpp
+++ b/indra/newview/llviewercontrol.cpp
@@ -1,4 +1,4 @@
-/**
+/**
* @file llviewercontrol.cpp
* @brief Viewer configuration
* @author Richard Nelson
@@ -6,21 +6,21 @@
* $LicenseInfo:firstyear=2001&license=viewerlgpl$
* Second Life Viewer Source Code
* Copyright (C) 2010, Linden Research, Inc.
- *
+ *
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation;
* version 2.1 of the License only.
- *
+ *
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
- *
+ *
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- *
+ *
* Linden Research, Inc., 945 Battery Street, San Francisco, CA 94111 USA
* $/LicenseInfo$
*/
@@ -30,7 +30,7 @@
#include "llviewercontrol.h"
// Library includes
-#include "llwindow.h" // getGamma()
+#include "llwindow.h" // getGamma()
// For Listeners
#include "llaudioengine.h"
@@ -80,15 +80,15 @@
#include <boost/algorithm/string.hpp>
#ifdef TOGGLE_HACKED_GODLIKE_VIEWER
-BOOL gHackGodmode = FALSE;
+BOOL gHackGodmode = FALSE;
#endif
// Should you contemplate changing the name "Global", please first grep for
// that string literal. There are at least a couple other places in the C++
// code that assume the LLControlGroup named "Global" is gSavedSettings.
-LLControlGroup gSavedSettings("Global"); // saved at end of session
+LLControlGroup gSavedSettings("Global"); // saved at end of session
LLControlGroup gSavedPerAccountSettings("PerAccount"); // saved at end of session
-LLControlGroup gCrashSettings("CrashSettings"); // saved at end of session
+LLControlGroup gCrashSettings("CrashSettings"); // saved at end of session
LLControlGroup gWarningSettings("Warnings"); // persists ignored dialogs/warnings
std::string gLastRunVersion;
@@ -101,8 +101,8 @@ extern BOOL gDebugGL;
static bool handleRenderAvatarMouselookChanged(const LLSD& newvalue)
{
- LLVOAvatar::sVisibleInFirstPerson = newvalue.asBoolean();
- return true;
+ LLVOAvatar::sVisibleInFirstPerson = newvalue.asBoolean();
+ return true;
}
static bool handleRenderFarClipChanged(const LLSD& newvalue)
@@ -110,17 +110,17 @@ static bool handleRenderFarClipChanged(const LLSD& newvalue)
if (LLStartUp::getStartupState() >= STATE_STARTED)
{
F32 draw_distance = (F32)newvalue.asReal();
- gAgentCamera.mDrawDistance = draw_distance;
- LLWorld::getInstance()->setLandFarClip(draw_distance);
- return true;
+ gAgentCamera.mDrawDistance = draw_distance;
+ LLWorld::getInstance()->setLandFarClip(draw_distance);
+ return true;
}
return false;
}
static bool handleTerrainDetailChanged(const LLSD& newvalue)
{
- LLDrawPoolTerrain::sDetailMode = newvalue.asInteger();
- return true;
+ LLDrawPoolTerrain::sDetailMode = newvalue.asInteger();
+ return true;
}
@@ -133,19 +133,19 @@ static bool handleDebugAvatarJointsChanged(const LLSD& newvalue)
static bool handleAvatarHoverOffsetChanged(const LLSD& newvalue)
{
- if (isAgentAvatarValid())
- {
- gAgentAvatarp->setHoverIfRegionEnabled();
- }
- return true;
+ if (isAgentAvatarValid())
+ {
+ gAgentAvatarp->setHoverIfRegionEnabled();
+ }
+ return true;
}
static bool handleSetShaderChanged(const LLSD& newvalue)
{
- // changing shader level may invalidate existing cached bump maps, as the shader type determines the format of the bump map it expects - clear and repopulate the bump cache
- gBumpImageList.destroyGL();
- gBumpImageList.restoreGL();
+ // changing shader level may invalidate existing cached bump maps, as the shader type determines the format of the bump map it expects - clear and repopulate the bump cache
+ gBumpImageList.destroyGL();
+ gBumpImageList.restoreGL();
if (gPipeline.isInit())
{
@@ -153,9 +153,9 @@ static bool handleSetShaderChanged(const LLSD& newvalue)
LLPipeline::refreshCachedSettings();
}
- // else, leave terrain detail as is
- LLViewerShaderMgr::instance()->setShaders();
- return true;
+ // else, leave terrain detail as is
+ LLViewerShaderMgr::instance()->setShaders();
+ return true;
}
static bool handleRenderPerfTestChanged(const LLSD& newvalue)
@@ -172,10 +172,10 @@ static bool handleRenderPerfTestChanged(const LLSD& newvalue)
LLPipeline::RENDER_TYPE_HUD,
LLPipeline::RENDER_TYPE_CLOUDS,
LLPipeline::RENDER_TYPE_HUD_PARTICLES,
- LLPipeline::END_RENDER_TYPES);
+ LLPipeline::END_RENDER_TYPES);
gPipeline.setRenderDebugFeatureControl(LLPipeline::RENDER_DEBUG_FEATURE_UI, false);
}
- else
+ else
{
gPipeline.setRenderTypeMask(LLPipeline::RENDER_TYPE_WL_SKY,
LLPipeline::RENDER_TYPE_TERRAIN,
@@ -195,55 +195,55 @@ static bool handleRenderPerfTestChanged(const LLSD& newvalue)
bool handleRenderTransparentWaterChanged(const LLSD& newvalue)
{
- if (gPipeline.isInit())
- {
- gPipeline.updateRenderTransparentWater();
- gPipeline.releaseGLBuffers();
- gPipeline.createGLBuffers();
- LLViewerShaderMgr::instance()->setShaders();
- }
- LLWorld::getInstance()->updateWaterObjects();
- return true;
+ if (gPipeline.isInit())
+ {
+ gPipeline.updateRenderTransparentWater();
+ gPipeline.releaseGLBuffers();
+ gPipeline.createGLBuffers();
+ LLViewerShaderMgr::instance()->setShaders();
+ }
+ LLWorld::getInstance()->updateWaterObjects();
+ return true;
}
static bool handleShadowsResized(const LLSD& newvalue)
{
- gPipeline.requestResizeShadowTexture();
- return true;
+ gPipeline.requestResizeShadowTexture();
+ return true;
}
static bool handleWindowResized(const LLSD& newvalue)
{
- gPipeline.requestResizeScreenTexture();
- return true;
+ gPipeline.requestResizeScreenTexture();
+ return true;
}
static bool handleReleaseGLBufferChanged(const LLSD& newvalue)
{
- if (gPipeline.isInit())
- {
- gPipeline.releaseGLBuffers();
- gPipeline.createGLBuffers();
- }
- return true;
+ if (gPipeline.isInit())
+ {
+ gPipeline.releaseGLBuffers();
+ gPipeline.createGLBuffers();
+ }
+ return true;
}
static bool handleLUTBufferChanged(const LLSD& newvalue)
{
- if (gPipeline.isInit())
- {
- gPipeline.releaseLUTBuffers();
- gPipeline.createLUTBuffers();
- }
- return true;
+ if (gPipeline.isInit())
+ {
+ gPipeline.releaseLUTBuffers();
+ gPipeline.createLUTBuffers();
+ }
+ return true;
}
static bool handleAnisotropicChanged(const LLSD& newvalue)
{
- LLImageGL::sGlobalUseAnisotropic = newvalue.asBoolean();
- LLImageGL::dirtyTexOptions();
- return true;
+ LLImageGL::sGlobalUseAnisotropic = newvalue.asBoolean();
+ LLImageGL::dirtyTexOptions();
+ return true;
}
static bool handleVSyncChanged(const LLSD& newvalue)
@@ -262,62 +262,62 @@ static bool handleVSyncChanged(const LLSD& newvalue)
static bool handleVolumeLODChanged(const LLSD& newvalue)
{
- LLVOVolume::sLODFactor = llclamp((F32) newvalue.asReal(), 0.01f, MAX_LOD_FACTOR);
- LLVOVolume::sDistanceFactor = 1.f-LLVOVolume::sLODFactor * 0.1f;
- return true;
+ LLVOVolume::sLODFactor = llclamp((F32) newvalue.asReal(), 0.01f, MAX_LOD_FACTOR);
+ LLVOVolume::sDistanceFactor = 1.f-LLVOVolume::sLODFactor * 0.1f;
+ return true;
}
static bool handleAvatarLODChanged(const LLSD& newvalue)
{
- LLVOAvatar::sLODFactor = llclamp((F32) newvalue.asReal(), 0.f, MAX_AVATAR_LOD_FACTOR);
- return true;
+ LLVOAvatar::sLODFactor = llclamp((F32) newvalue.asReal(), 0.f, MAX_AVATAR_LOD_FACTOR);
+ return true;
}
static bool handleAvatarPhysicsLODChanged(const LLSD& newvalue)
{
- LLVOAvatar::sPhysicsLODFactor = llclamp((F32) newvalue.asReal(), 0.f, MAX_AVATAR_LOD_FACTOR);
- return true;
+ LLVOAvatar::sPhysicsLODFactor = llclamp((F32) newvalue.asReal(), 0.f, MAX_AVATAR_LOD_FACTOR);
+ return true;
}
static bool handleTerrainLODChanged(const LLSD& newvalue)
{
- LLVOSurfacePatch::sLODFactor = (F32)newvalue.asReal();
- //sqaure lod factor to get exponential range of [0,4] and keep
- //a value of 1 in the middle of the detail slider for consistency
- //with other detail sliders (see panel_preferences_graphics1.xml)
- LLVOSurfacePatch::sLODFactor *= LLVOSurfacePatch::sLODFactor;
- return true;
+ LLVOSurfacePatch::sLODFactor = (F32)newvalue.asReal();
+ //sqaure lod factor to get exponential range of [0,4] and keep
+ //a value of 1 in the middle of the detail slider for consistency
+ //with other detail sliders (see panel_preferences_graphics1.xml)
+ LLVOSurfacePatch::sLODFactor *= LLVOSurfacePatch::sLODFactor;
+ return true;
}
static bool handleTreeLODChanged(const LLSD& newvalue)
{
- LLVOTree::sTreeFactor = (F32) newvalue.asReal();
- return true;
+ LLVOTree::sTreeFactor = (F32) newvalue.asReal();
+ return true;
}
static bool handleFlexLODChanged(const LLSD& newvalue)
{
- LLVolumeImplFlexible::sUpdateFactor = (F32) newvalue.asReal();
- return true;
+ LLVolumeImplFlexible::sUpdateFactor = (F32) newvalue.asReal();
+ return true;
}
static bool handleGammaChanged(const LLSD& newvalue)
{
- F32 gamma = (F32) newvalue.asReal();
- if (gamma == 0.0f)
- {
- gamma = 1.0f; // restore normal gamma
- }
- if (gViewerWindow && gViewerWindow->getWindow() && gamma != gViewerWindow->getWindow()->getGamma())
- {
- // Only save it if it's changed
- if (!gViewerWindow->getWindow()->setGamma(gamma))
- {
- LL_WARNS() << "setGamma failed!" << LL_ENDL;
- }
- }
+ F32 gamma = (F32) newvalue.asReal();
+ if (gamma == 0.0f)
+ {
+ gamma = 1.0f; // restore normal gamma
+ }
+ if (gViewerWindow && gViewerWindow->getWindow() && gamma != gViewerWindow->getWindow()->getGamma())
+ {
+ // Only save it if it's changed
+ if (!gViewerWindow->getWindow()->setGamma(gamma))
+ {
+ LL_WARNS() << "setGamma failed!" << LL_ENDL;
+ }
+ }
- return true;
+ return true;
}
const F32 MAX_USER_FOG_RATIO = 10.f;
@@ -325,93 +325,84 @@ const F32 MIN_USER_FOG_RATIO = 0.5f;
static bool handleFogRatioChanged(const LLSD& newvalue)
{
- F32 fog_ratio = llmax(MIN_USER_FOG_RATIO, llmin((F32) newvalue.asReal(), MAX_USER_FOG_RATIO));
- gSky.setFogRatio(fog_ratio);
- return true;
+ F32 fog_ratio = llmax(MIN_USER_FOG_RATIO, llmin((F32) newvalue.asReal(), MAX_USER_FOG_RATIO));
+ gSky.setFogRatio(fog_ratio);
+ return true;
}
static bool handleMaxPartCountChanged(const LLSD& newvalue)
{
- LLViewerPartSim::setMaxPartCount(newvalue.asInteger());
- return true;
+ LLViewerPartSim::setMaxPartCount(newvalue.asInteger());
+ return true;
}
static bool handleChatFontSizeChanged(const LLSD& newvalue)
{
- if(gConsole)
- {
- gConsole->setFontSize(newvalue.asInteger());
- }
- return true;
-}
-
-static bool handleChatPersistTimeChanged(const LLSD& newvalue)
-{
- if(gConsole)
- {
- gConsole->setLinePersistTime((F32) newvalue.asReal());
- }
- return true;
+ if(gConsole)
+ {
+ gConsole->setFontSize(newvalue.asInteger());
+ }
+ return true;
}
static bool handleConsoleMaxLinesChanged(const LLSD& newvalue)
{
- if(gConsole)
- {
- gConsole->setMaxLines(newvalue.asInteger());
- }
- return true;
+ if(gConsole)
+ {
+ gConsole->setMaxLines(newvalue.asInteger());
+ }
+ return true;
}
static void handleAudioVolumeChanged(const LLSD& newvalue)
{
- audio_update_volume(true);
+ audio_update_volume(true);
}
static bool handleJoystickChanged(const LLSD& newvalue)
{
- LLViewerJoystick::getInstance()->setCameraNeedsUpdate(TRUE);
- return true;
+ LLViewerJoystick::getInstance()->setCameraNeedsUpdate(TRUE);
+ return true;
}
static bool handleUseOcclusionChanged(const LLSD& newvalue)
{
- LLPipeline::sUseOcclusion = (newvalue.asBoolean()
- && LLFeatureManager::getInstance()->isFeatureAvailable("UseOcclusion") && !gUseWireframe) ? 2 : 0;
- return true;
+ LLPipeline::sUseOcclusion = (newvalue.asBoolean()
+ && LLFeatureManager::getInstance()->isFeatureAvailable("UseOcclusion") && !gUseWireframe) ? 2 : 0;
+ return true;
}
static bool handleUploadBakedTexOldChanged(const LLSD& newvalue)
{
- LLPipeline::sForceOldBakedUpload = newvalue.asBoolean();
- return true;
+ LLPipeline::sForceOldBakedUpload = newvalue.asBoolean();
+ return true;
}
static bool handleWLSkyDetailChanged(const LLSD&)
{
- if (gSky.mVOWLSkyp.notNull())
- {
- gSky.mVOWLSkyp->updateGeometry(gSky.mVOWLSkyp->mDrawable);
- }
- return true;
+ if (gSky.mVOWLSkyp.notNull())
+ {
+ gSky.mVOWLSkyp->updateGeometry(gSky.mVOWLSkyp->mDrawable);
+ }
+ return true;
}
static bool handleRepartition(const LLSD&)
{
- if (gPipeline.isInit())
- {
- gOctreeMaxCapacity = gSavedSettings.getU32("OctreeMaxNodeCapacity");
- gOctreeMinSize = gSavedSettings.getF32("OctreeMinimumNodeSize");
- gObjectList.repartitionObjects();
- }
- return true;
+ if (gPipeline.isInit())
+ {
+ gOctreeMaxCapacity = gSavedSettings.getU32("OctreeMaxNodeCapacity");
+ gOctreeMinSize = gSavedSettings.getF32("OctreeMinimumNodeSize");
+ gObjectList.repartitionObjects();
+ }
+ return true;
}
static bool handleRenderDynamicLODChanged(const LLSD& newvalue)
{
- LLPipeline::sDynamicLOD = newvalue.asBoolean();
- return true;
+ LLPipeline::sDynamicLOD = newvalue.asBoolean();
+ return true;
}
static bool handleReflectionProbeDetailChanged(const LLSD& newvalue)
@@ -429,161 +420,161 @@ static bool handleReflectionProbeDetailChanged(const LLSD& newvalue)
static bool handleRenderDebugPipelineChanged(const LLSD& newvalue)
{
- gDebugPipeline = newvalue.asBoolean();
- return true;
+ gDebugPipeline = newvalue.asBoolean();
+ return true;
}
static bool handleRenderResolutionDivisorChanged(const LLSD&)
{
- gResizeScreenTexture = TRUE;
- return true;
+ gResizeScreenTexture = TRUE;
+ return true;
}
static bool handleDebugViewsChanged(const LLSD& newvalue)
{
- LLView::sDebugRects = newvalue.asBoolean();
- return true;
+ LLView::sDebugRects = newvalue.asBoolean();
+ return true;
}
static bool handleLogFileChanged(const LLSD& newvalue)
{
- std::string log_filename = newvalue.asString();
- LLFile::remove(log_filename);
- LLError::logToFile(log_filename);
- return true;
+ std::string log_filename = newvalue.asString();
+ LLFile::remove(log_filename);
+ LLError::logToFile(log_filename);
+ return true;
}
bool handleHideGroupTitleChanged(const LLSD& newvalue)
{
- gAgent.setHideGroupTitle(newvalue);
- return true;
+ gAgent.setHideGroupTitle(newvalue);
+ return true;
}
bool handleEffectColorChanged(const LLSD& newvalue)
{
- gAgent.setEffectColor(LLColor4(newvalue));
- return true;
+ gAgent.setEffectColor(LLColor4(newvalue));
+ return true;
}
bool handleHighResSnapshotChanged(const LLSD& newvalue)
{
- // High Res Snapshot active, must uncheck RenderUIInSnapshot
- if (newvalue.asBoolean())
- {
- gSavedSettings.setBOOL( "RenderUIInSnapshot", FALSE );
- }
- return true;
+ // High Res Snapshot active, must uncheck RenderUIInSnapshot
+ if (newvalue.asBoolean())
+ {
+ gSavedSettings.setBOOL( "RenderUIInSnapshot", FALSE );
+ }
+ return true;
}
bool handleVoiceClientPrefsChanged(const LLSD& newvalue)
{
- if (LLVoiceClient::instanceExists())
- {
- LLVoiceClient::getInstance()->updateSettings();
- }
- return true;
+ if (LLVoiceClient::instanceExists())
+ {
+ LLVoiceClient::getInstance()->updateSettings();
+ }
+ return true;
}
bool handleVelocityInterpolate(const LLSD& newvalue)
{
- LLMessageSystem* msg = gMessageSystem;
- if ( newvalue.asBoolean() )
- {
- msg->newMessageFast(_PREHASH_VelocityInterpolateOn);
- msg->nextBlockFast(_PREHASH_AgentData);
- msg->addUUIDFast(_PREHASH_AgentID, gAgent.getID());
- msg->addUUIDFast(_PREHASH_SessionID, gAgent.getSessionID());
- gAgent.sendReliableMessage();
- LL_INFOS() << "Velocity Interpolation On" << LL_ENDL;
- }
- else
- {
- msg->newMessageFast(_PREHASH_VelocityInterpolateOff);
- msg->nextBlockFast(_PREHASH_AgentData);
- msg->addUUIDFast(_PREHASH_AgentID, gAgent.getID());
- msg->addUUIDFast(_PREHASH_SessionID, gAgent.getSessionID());
- gAgent.sendReliableMessage();
- LL_INFOS() << "Velocity Interpolation Off" << LL_ENDL;
- }
- return true;
+ LLMessageSystem* msg = gMessageSystem;
+ if ( newvalue.asBoolean() )
+ {
+ msg->newMessageFast(_PREHASH_VelocityInterpolateOn);
+ msg->nextBlockFast(_PREHASH_AgentData);
+ msg->addUUIDFast(_PREHASH_AgentID, gAgent.getID());
+ msg->addUUIDFast(_PREHASH_SessionID, gAgent.getSessionID());
+ gAgent.sendReliableMessage();
+ LL_INFOS() << "Velocity Interpolation On" << LL_ENDL;
+ }
+ else
+ {
+ msg->newMessageFast(_PREHASH_VelocityInterpolateOff);
+ msg->nextBlockFast(_PREHASH_AgentData);
+ msg->addUUIDFast(_PREHASH_AgentID, gAgent.getID());
+ msg->addUUIDFast(_PREHASH_SessionID, gAgent.getSessionID());
+ gAgent.sendReliableMessage();
+ LL_INFOS() << "Velocity Interpolation Off" << LL_ENDL;
+ }
+ return true;
}
bool handleForceShowGrid(const LLSD& newvalue)
{
- LLPanelLogin::updateLocationSelectorsVisibility();
- return true;
+ LLPanelLogin::updateLocationSelectorsVisibility();
+ return true;
}
bool handleLoginLocationChanged()
{
- /*
- * This connects the default preference setting to the state of the login
- * panel if it is displayed; if you open the preferences panel before
- * logging in, and change the default login location there, the login
- * panel immediately changes to match your new preference.
- */
- std::string new_login_location = gSavedSettings.getString("LoginLocation");
- LL_DEBUGS("AppInit")<<new_login_location<<LL_ENDL;
- LLStartUp::setStartSLURL(LLSLURL(new_login_location));
- return true;
+ /*
+ * This connects the default preference setting to the state of the login
+ * panel if it is displayed; if you open the preferences panel before
+ * logging in, and change the default login location there, the login
+ * panel immediately changes to match your new preference.
+ */
+ std::string new_login_location = gSavedSettings.getString("LoginLocation");
+ LL_DEBUGS("AppInit")<<new_login_location<<LL_ENDL;
+ LLStartUp::setStartSLURL(LLSLURL(new_login_location));
+ return true;
}
bool handleSpellCheckChanged()
{
- if (gSavedSettings.getBOOL("SpellCheck"))
- {
- std::list<std::string> dict_list;
- std::string dict_setting = gSavedSettings.getString("SpellCheckDictionary");
- boost::split(dict_list, dict_setting, boost::is_any_of(std::string(",")));
- if (!dict_list.empty())
- {
- LLSpellChecker::setUseSpellCheck(dict_list.front());
- dict_list.pop_front();
- LLSpellChecker::instance().setSecondaryDictionaries(dict_list);
- return true;
- }
- }
- LLSpellChecker::setUseSpellCheck(LLStringUtil::null);
- return true;
+ if (gSavedSettings.getBOOL("SpellCheck"))
+ {
+ std::list<std::string> dict_list;
+ std::string dict_setting = gSavedSettings.getString("SpellCheckDictionary");
+ boost::split(dict_list, dict_setting, boost::is_any_of(std::string(",")));
+ if (!dict_list.empty())
+ {
+ LLSpellChecker::setUseSpellCheck(dict_list.front());
+ dict_list.pop_front();
+ LLSpellChecker::instance().setSecondaryDictionaries(dict_list);
+ return true;
+ }
+ }
+ LLSpellChecker::setUseSpellCheck(LLStringUtil::null);
+ return true;
}
bool toggle_agent_pause(const LLSD& newvalue)
{
- if ( newvalue.asBoolean() )
- {
- send_agent_pause();
- }
- else
- {
- send_agent_resume();
- }
- return true;
+ if ( newvalue.asBoolean() )
+ {
+ send_agent_pause();
+ }
+ else
+ {
+ send_agent_resume();
+ }
+ return true;
}
bool toggle_show_navigation_panel(const LLSD& newvalue)
{
- bool value = newvalue.asBoolean();
+ bool value = newvalue.asBoolean();
- LLNavigationBar::getInstance()->setVisible(value);
- gSavedSettings.setBOOL("ShowMiniLocationPanel", !value);
+ LLNavigationBar::getInstance()->setVisible(value);
+ gSavedSettings.setBOOL("ShowMiniLocationPanel", !value);
gViewerWindow->reshapeStatusBarContainer();
- return true;
+ return true;
}
bool toggle_show_mini_location_panel(const LLSD& newvalue)
{
- bool value = newvalue.asBoolean();
+ bool value = newvalue.asBoolean();
- LLPanelTopInfoBar::getInstance()->setVisible(value);
- gSavedSettings.setBOOL("ShowNavbarNavigationPanel", !value);
+ LLPanelTopInfoBar::getInstance()->setVisible(value);
+ gSavedSettings.setBOOL("ShowNavbarNavigationPanel", !value);
- return true;
+ return true;
}
bool toggle_show_object_render_cost(const LLSD& newvalue)
{
- LLFloaterTools::sShowObjectCost = newvalue.asBoolean();
- return true;
+ LLFloaterTools::sShowObjectCost = newvalue.asBoolean();
+ return true;
}
void handleTargetFPSChanged(const LLSD& newValue)
@@ -630,6 +621,18 @@ void handleUserTargetDrawDistanceChanged(const LLSD& newValue)
LLPerfStats::tunables.userTargetDrawDistance = newval;
}
+void handleUserMinDrawDistanceChanged(const LLSD &newValue)
+{
+ const auto newval = gSavedSettings.getF32("AutoTuneRenderFarClipMin");
+ LLPerfStats::tunables.userMinDrawDistance = newval;
+}
+
+void handleUserTargetReflectionsChanged(const LLSD& newValue)
+{
+ const auto newval = gSavedSettings.getS32("UserTargetReflections");
+ LLPerfStats::tunables.userTargetReflections = newval;
+}
+
void handlePerformanceStatsEnabledChanged(const LLSD& newValue)
{
const auto newval = gSavedSettings.getBOOL("PerfStatsCaptureEnabled");
@@ -716,7 +719,7 @@ void settings_setup_listeners()
setting_setup_signal_listener(gSavedSettings, "RenderFogRatio", handleFogRatioChanged);
setting_setup_signal_listener(gSavedSettings, "RenderMaxPartCount", handleMaxPartCountChanged);
setting_setup_signal_listener(gSavedSettings, "RenderDynamicLOD", handleRenderDynamicLODChanged);
- setting_setup_signal_listener(gSavedSettings, "RenderVSyncEnable", handleVSyncChanged);
+ setting_setup_signal_listener(gSavedSettings, "RenderVSyncEnable", handleVSyncChanged);
setting_setup_signal_listener(gSavedSettings, "RenderDeferredNoise", handleReleaseGLBufferChanged);
setting_setup_signal_listener(gSavedSettings, "RenderDebugPipeline", handleRenderDebugPipelineChanged);
setting_setup_signal_listener(gSavedSettings, "RenderResolutionDivisor", handleRenderResolutionDivisorChanged);
@@ -728,7 +731,6 @@ void settings_setup_listeners()
setting_setup_signal_listener(gSavedSettings, "RenderDeferredSSAO", handleSetShaderChanged);
setting_setup_signal_listener(gSavedSettings, "RenderPerformanceTest", handleRenderPerfTestChanged);
setting_setup_signal_listener(gSavedSettings, "ChatFontSize", handleChatFontSizeChanged);
- setting_setup_signal_listener(gSavedSettings, "ChatPersistTime", handleChatPersistTimeChanged);
setting_setup_signal_listener(gSavedSettings, "ConsoleMaxLines", handleConsoleMaxLinesChanged);
setting_setup_signal_listener(gSavedSettings, "UploadBakedTexOld", handleUploadBakedTexOldChanged);
setting_setup_signal_listener(gSavedSettings, "UseOcclusion", handleUseOcclusionChanged);
@@ -739,9 +741,6 @@ void settings_setup_listeners()
setting_setup_signal_listener(gSavedSettings, "AudioLevelMusic", handleAudioVolumeChanged);
setting_setup_signal_listener(gSavedSettings, "AudioLevelMedia", handleAudioVolumeChanged);
setting_setup_signal_listener(gSavedSettings, "AudioLevelVoice", handleAudioVolumeChanged);
- setting_setup_signal_listener(gSavedSettings, "AudioLevelDoppler", handleAudioVolumeChanged);
- setting_setup_signal_listener(gSavedSettings, "AudioLevelRolloff", handleAudioVolumeChanged);
- setting_setup_signal_listener(gSavedSettings, "AudioLevelUnderwaterRolloff", handleAudioVolumeChanged);
setting_setup_signal_listener(gSavedSettings, "MuteAudio", handleAudioVolumeChanged);
setting_setup_signal_listener(gSavedSettings, "MuteMusic", handleAudioVolumeChanged);
setting_setup_signal_listener(gSavedSettings, "MuteMedia", handleAudioVolumeChanged);
@@ -809,7 +808,7 @@ void settings_setup_listeners()
setting_setup_signal_listener(gSavedSettings, "VoiceInputAudioDevice", handleVoiceClientPrefsChanged);
setting_setup_signal_listener(gSavedSettings, "VoiceOutputAudioDevice", handleVoiceClientPrefsChanged);
setting_setup_signal_listener(gSavedSettings, "AudioLevelMic", handleVoiceClientPrefsChanged);
- setting_setup_signal_listener(gSavedSettings, "LipSyncEnabled", handleVoiceClientPrefsChanged);
+ setting_setup_signal_listener(gSavedSettings, "LipSyncEnabled", handleVoiceClientPrefsChanged);
setting_setup_signal_listener(gSavedSettings, "VelocityInterpolate", handleVelocityInterpolate);
setting_setup_signal_listener(gSavedSettings, "QAMode", show_debug_menus);
setting_setup_signal_listener(gSavedSettings, "UseDebugMenus", show_debug_menus);
@@ -830,6 +829,7 @@ void settings_setup_listeners()
setting_setup_signal_listener(gSavedSettings, "RenderAvatarMaxART", handleRenderAvatarMaxARTChanged);
setting_setup_signal_listener(gSavedSettings, "PerfStatsCaptureEnabled", handlePerformanceStatsEnabledChanged);
setting_setup_signal_listener(gSavedSettings, "AutoTuneRenderFarClipTarget", handleUserTargetDrawDistanceChanged);
+ setting_setup_signal_listener(gSavedSettings, "AutoTuneRenderFarClipMin", handleUserMinDrawDistanceChanged);
setting_setup_signal_listener(gSavedSettings, "AutoTuneImpostorFarAwayDistance", handleUserImpostorDistanceChanged);
setting_setup_signal_listener(gSavedSettings, "AutoTuneImpostorByDistEnabled", handleUserImpostorByDistEnabledChanged);
setting_setup_signal_listener(gSavedSettings, "TuningFPSStrategy", handleFPSTuningStrategyChanged);
@@ -856,26 +856,22 @@ DECL_LLCC(LLColor4U, LLColor4U(255, 200, 100, 255));
LLSD test_llsd = LLSD()["testing1"] = LLSD()["testing2"];
DECL_LLCC(LLSD, test_llsd);
-static LLCachedControl<std::string> test_BrowserHomePage("BrowserHomePage", "hahahahahha", "Not the real comment");
-
void test_cached_control()
{
#define do { TEST_LLCC(T, V) if((T)mySetting_##T != V) LL_ERRS() << "Fail "#T << LL_ENDL; } while(0)
- TEST_LLCC(U32, 666);
- TEST_LLCC(S32, (S32)-666);
- TEST_LLCC(F32, (F32)-666.666);
- TEST_LLCC(bool, true);
- TEST_LLCC(BOOL, FALSE);
- if((std::string)mySetting_string != "Default String Value") LL_ERRS() << "Fail string" << LL_ENDL;
- TEST_LLCC(LLVector3, LLVector3(1.0f, 2.0f, 3.0f));
- TEST_LLCC(LLVector3d, LLVector3d(6.0f, 5.0f, 4.0f));
- TEST_LLCC(LLRect, LLRect(0, 0, 100, 500));
- TEST_LLCC(LLColor4, LLColor4(0.0f, 0.5f, 1.0f));
- TEST_LLCC(LLColor3, LLColor3(1.0f, 0.f, 0.5f));
- TEST_LLCC(LLColor4U, LLColor4U(255, 200, 100, 255));
-//There's no LLSD comparsion for LLCC yet. TEST_LLCC(LLSD, test_llsd);
-
- if((std::string)test_BrowserHomePage != "http://www.secondlife.com") LL_ERRS() << "Fail BrowserHomePage" << LL_ENDL;
+ TEST_LLCC(U32, 666);
+ TEST_LLCC(S32, (S32)-666);
+ TEST_LLCC(F32, (F32)-666.666);
+ TEST_LLCC(bool, true);
+ TEST_LLCC(BOOL, FALSE);
+ if((std::string)mySetting_string != "Default String Value") LL_ERRS() << "Fail string" << LL_ENDL;
+ TEST_LLCC(LLVector3, LLVector3(1.0f, 2.0f, 3.0f));
+ TEST_LLCC(LLVector3d, LLVector3d(6.0f, 5.0f, 4.0f));
+ TEST_LLCC(LLRect, LLRect(0, 0, 100, 500));
+ TEST_LLCC(LLColor4, LLColor4(0.0f, 0.5f, 1.0f));
+ TEST_LLCC(LLColor3, LLColor3(1.0f, 0.f, 0.5f));
+ TEST_LLCC(LLColor4U, LLColor4U(255, 200, 100, 255));
+//There's no LLSD comparsion for LLCC yet. TEST_LLCC(LLSD, test_llsd);
}
#endif // TEST_CACHED_CONTROL