summaryrefslogtreecommitdiff
path: root/indra/newview/llfloaterenvsettings.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'indra/newview/llfloaterenvsettings.cpp')
-rw-r--r--indra/newview/llfloaterenvsettings.cpp254
1 files changed, 0 insertions, 254 deletions
diff --git a/indra/newview/llfloaterenvsettings.cpp b/indra/newview/llfloaterenvsettings.cpp
deleted file mode 100644
index bb476e5d00..0000000000
--- a/indra/newview/llfloaterenvsettings.cpp
+++ /dev/null
@@ -1,254 +0,0 @@
-/**
- * @file llfloaterenvsettings.cpp
- * @brief LLFloaterEnvSettings class definition
- *
- * $LicenseInfo:firstyear=2007&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$
- */
-
-#include "llviewerprecompiledheaders.h"
-
-#include "llfloaterenvsettings.h"
-
-#include "llfloaterreg.h"
-#include "llfloaterwindlight.h"
-#include "llfloaterwater.h"
-#include "llfloaterdaycycle.h"
-#include "llfloaterregioninfo.h"
-#include "lluictrlfactory.h"
-#include "llsliderctrl.h"
-#include "llcombobox.h"
-#include "llcolorswatch.h"
-#include "llwlanimator.h"
-#include "llnotifications.h"
-
-#include "llwlparamset.h"
-#include "llwlparammanager.h"
-#include "llwaterparammanager.h"
-#include "llmath.h"
-#include "llviewerwindow.h"
-#include "llviewercontrol.h"
-
-#include "llcheckboxctrl.h"
-
-#include "pipeline.h"
-
-#include <sstream>
-
-// LLFloaterEnvSettings* LLFloaterEnvSettings::sEnvSettings = NULL;
-
-LLFloaterEnvSettings::LLFloaterEnvSettings(const LLSD &key) : LLFloater(key)
-{
- lldebugs << "Creating env settings floater" << llendl;
-}
-
-LLFloaterEnvSettings::~LLFloaterEnvSettings()
-{
-}
-
-// virtual
-BOOL LLFloaterEnvSettings::postBuild()
-{
- // load it up
- initCallbacks();
- syncMenu();
-
- return TRUE;
-}
-
-void LLFloaterEnvSettings::initCallbacks(void)
-{
- // our three sliders
- childSetCommitCallback("EnvTimeSlider", &LLFloaterEnvSettings::onChangeDayTime, NULL);
- childSetCommitCallback("EnvCloudSlider", &LLFloaterEnvSettings::onChangeCloudCoverage, NULL);
- childSetCommitCallback("EnvWaterFogSlider", &LLFloaterEnvSettings::onChangeWaterFogDensity, &LLWaterParamManager::instance().mFogDensity);
-
- // color picker
- childSetCommitCallback("EnvWaterColor", &LLFloaterEnvSettings::onChangeWaterColor, &LLWaterParamManager::instance().mFogColor);
-
- // WL Top
- childSetCommitCallback("EnvAdvancedSkyButton", &LLFloaterEnvSettings::onOpenAdvancedSky, NULL);
- childSetCommitCallback("EnvAdvancedWaterButton", &LLFloaterEnvSettings::onOpenAdvancedWater, NULL);
- childSetCommitCallback("EnvUseEstateTimeButton", &LLFloaterEnvSettings::onUseEstateTime, NULL);
- getChild<LLUICtrl>("EnvUseLocalTimeButton")->setCommitCallback(boost::bind(&LLFloaterEnvSettings::onUseLocalTime));
-
- getChild<LLUICtrl>("EnvUseLocalTimeButton")->setRightMouseDownCallback(boost::bind(&LLEnvManagerNew::dumpUserPrefs, &LLEnvManagerNew::instance()));
- getChild<LLUICtrl>("EnvUseEstateTimeButton")->setRightMouseDownCallback(boost::bind(&LLEnvManagerNew::dumpUserPrefs, &LLEnvManagerNew::instance()));
-}
-
-
-// menu maintenance functions
-
-void LLFloaterEnvSettings::syncMenu()
-{
- LLSliderCtrl* sldr;
- sldr = getChild<LLSliderCtrl>("EnvTimeSlider");
-
- // sync the clock
- F32 val = (F32)LLWLParamManager::getInstance()->mAnimator.getDayTime();
- std::string timeStr = LLWLAnimator::timeToString(val);
-
- LLTextBox* textBox;
- textBox = getChild<LLTextBox>("EnvTimeText");
-
- textBox->setValue(timeStr);
-
- // sync time slider which starts at 6 AM
- val -= 0.25;
- if(val < 0)
- {
- val++;
- }
- sldr->setValue(val);
-
- // sync cloud coverage
- bool err;
- childSetValue("EnvCloudSlider", LLWLParamManager::getInstance()->mCurParams.getFloat("cloud_shadow", err));
-
- LLWaterParamManager * param_mgr = LLWaterParamManager::getInstance();
- // sync water params
- LLColor4 col = param_mgr->getFogColor();
- LLColorSwatchCtrl* colCtrl = getChild<LLColorSwatchCtrl>("EnvWaterColor");
- col.mV[3] = 1.0f;
- colCtrl->set(col);
-
- childSetValue("EnvWaterFogSlider", param_mgr->mFogDensity.mExp);
- param_mgr->setDensitySliderValue(param_mgr->mFogDensity.mExp);
-
- // turn off Use Estate/Local Time buttons if already being used
-
- LLWLAnimator& anim = LLWLParamManager::getInstance()->mAnimator;
- childSetEnabled("EnvUseEstateTimeButton", !anim.getIsRunning() || !anim.getUseLindenTime());
- childSetEnabled("EnvUseLocalTimeButton", !anim.getIsRunning() || !anim.getUseLocalTime());
-
- if(!gPipeline.canUseVertexShaders())
- {
- childDisable("EnvWaterColor");
- childDisable("EnvWaterColorText");
- //childDisable("EnvAdvancedWaterButton");
- }
- else
- {
- childEnable("EnvWaterColor");
- childEnable("EnvWaterColorText");
- //childEnable("EnvAdvancedWaterButton");
- }
-
- // only allow access to these if they are using windlight
- if(!gPipeline.canUseWindLightShaders())
- {
-
- childDisable("EnvCloudSlider");
- childDisable("EnvCloudText");
- //childDisable("EnvAdvancedSkyButton");
- }
- else
- {
- childEnable("EnvCloudSlider");
- childEnable("EnvCloudText");
- //childEnable("EnvAdvancedSkyButton");
- }
-}
-
-void LLFloaterEnvSettings::onChangeDayTime(LLUICtrl* ctrl, void* userData)
-{
- LLSliderCtrl* sldr = static_cast<LLSliderCtrl*>(ctrl);
-
- // deactivate animator
- LLWLParamManager::instance().mAnimator.deactivate();
-
- F32 val = sldr->getValueF32() + 0.25f;
- if(val > 1.0)
- {
- val--;
- }
-
- LLWLParamManager::instance().mAnimator.setDayTime((F64)val);
- LLWLParamManager::instance().mAnimator.update(
- LLWLParamManager::instance().mCurParams);
-}
-
-void LLFloaterEnvSettings::onChangeCloudCoverage(LLUICtrl* ctrl, void* userData)
-{
- LLSliderCtrl* sldr = static_cast<LLSliderCtrl*>(ctrl);
-
- // deactivate animator
- //LLWLParamManager::instance()->mAnimator.mIsRunning = false;
- //LLWLParamManager::instance()->mAnimator.mUseLindenTime = false;
-
- F32 val = sldr->getValueF32();
- LLWLParamManager::instance().mCurParams.set("cloud_shadow", val);
-}
-
-void LLFloaterEnvSettings::onChangeWaterFogDensity(LLUICtrl* ctrl, void* userData)
-{
- LLSliderCtrl* sldr = static_cast<LLSliderCtrl*>(ctrl);
- F32 val = sldr->getValueF32();
-
- WaterExpFloatControl* expFloatControl = static_cast<WaterExpFloatControl*>(userData);
- expFloatControl->mExp = val;
- LLWaterParamManager::instance().setDensitySliderValue(val);
-
- expFloatControl->update(LLWaterParamManager::instance().mCurParams);
- LLWaterParamManager::instance().propagateParameters();
-}
-
-void LLFloaterEnvSettings::onChangeWaterColor(LLUICtrl* ctrl, void* userData)
-{
- LLColorSwatchCtrl* swatch = static_cast<LLColorSwatchCtrl*>(ctrl);
- WaterColorControl* colorControl = static_cast<WaterColorControl*>(userData);
- *colorControl = swatch->get();
-
- colorControl->update(LLWaterParamManager::instance().mCurParams);
- LLWaterParamManager::instance().propagateParameters();
-}
-
-void LLFloaterEnvSettings::onOpenAdvancedSky(void* userData1, void* userData2)
-{
- // *TODO: make sure title is displayed correctly.
- LLFloaterReg::showInstance("env_windlight");
-}
-
-void LLFloaterEnvSettings::onOpenAdvancedWater(void* userData1, void* userData2)
-{
- // *TODO: make sure title is displayed correctly.
- LLFloaterReg::showInstance("env_water");
-}
-
-
-void LLFloaterEnvSettings::onUseEstateTime(void* userData1, void* userData2)
-{
- LLFloaterWindLight* wl = LLFloaterReg::findTypedInstance<LLFloaterWindLight>("env_windlight");
- if(wl)
- {
- LLComboBox* box = wl->getChild<LLComboBox>("WLPresetsCombo");
- box->selectByValue("");
- }
-
- LLWLParamManager::instance().mAnimator.activate(LLWLAnimator::TIME_LINDEN);
-}
-
-// static
-void LLFloaterEnvSettings::onUseLocalTime()
-{
- LLWLParamManager::getInstance()->mAnimator.setDayTime(LLWLAnimator::getLocalTime());
- LLWLParamManager::getInstance()->mAnimator.activate(LLWLAnimator::TIME_LOCAL);
-}