STORM-1126 WIP Windlight Estate Settings port from 1.23: baseline: read only windlight works
(resubmitted by Vadim ProductEngine)master
parent
6bb02e0e26
commit
758fdbfe12
|
|
@ -80,7 +80,7 @@ void LLEnvManager::changedRegion(bool interp)
|
|||
mInterpNextChangeMessage = interp;
|
||||
mPendingOutgoingMessage = false;
|
||||
|
||||
LLFloaterEnvSettings::instance()->closeFloater();
|
||||
// TIGGGS LLFloaterEnvSettings::instance()->closeFloater();
|
||||
|
||||
resetInternalsToDefault(LLEnvKey::SCOPE_REGION);
|
||||
|
||||
|
|
@ -179,8 +179,8 @@ void LLEnvManager::updateUIFromEditability()
|
|||
// *TODO When the checkbox from LLFloaterEnvSettings is moved elsewhere, opening the local environment settings window should auto-display local settings
|
||||
// Currently, disable all editing to ensure region settings are hidden from those that can't edit them (to preserve possibility of future tradable assets)
|
||||
// Remove "!gSavedSettings.getBOOL(...)" when the desired behavior is implemented
|
||||
LLFloaterEnvSettings::instance()->setControlsEnabled(canEdit(LLEnvKey::SCOPE_LOCAL) && !gSavedSettings.getBOOL("UseEnvironmentFromRegion"));
|
||||
LLPanelRegionTerrainInfo::instance()->setEnvControls(canEdit(LLEnvKey::SCOPE_REGION));
|
||||
// LLFloaterEnvSettings::instance()->setControlsEnabled(canEdit(LLEnvKey::SCOPE_LOCAL) && !gSavedSettings.getBOOL("UseEnvironmentFromRegion"));
|
||||
// LLPanelRegionTerrainInfo::instance()->setEnvControls(canEdit(LLEnvKey::SCOPE_REGION));
|
||||
// enable estate UI iff canEdit(LLEnvKey::SCOPE_ESTATE), etc.
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -338,10 +338,12 @@ void LLFloaterDayCycle::onStopAnimSky(void* userData)
|
|||
|
||||
void LLFloaterDayCycle::onUseLindenTime(void* userData)
|
||||
{
|
||||
LLFloaterWindLight* wl = LLFloaterWindLight::instance();
|
||||
LLComboBox* box = wl->getChild<LLComboBox>("WLPresetsCombo");
|
||||
box->selectByValue("");
|
||||
|
||||
LLFloaterWindLight* wlfloater = LLFloaterReg::findTypedInstance<LLFloaterWindLight>("env_windlight");
|
||||
if (wlfloater)
|
||||
{
|
||||
LLComboBox* box = wlfloater->getChild<LLComboBox>("WLPresetsCombo");
|
||||
box->selectByValue("");
|
||||
}
|
||||
LLWLParamManager::getInstance()->mAnimator.deactivate();
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -34,6 +34,7 @@
|
|||
|
||||
#include "llfloaterenvsettings.h"
|
||||
|
||||
#include "llfloaterreg.h"
|
||||
#include "llfloaterwindlight.h"
|
||||
#include "llfloaterwater.h"
|
||||
#include "llfloaterdaycycle.h"
|
||||
|
|
@ -58,27 +59,29 @@
|
|||
|
||||
#include <sstream>
|
||||
|
||||
LLFloaterEnvSettings* LLFloaterEnvSettings::sEnvSettings = NULL;
|
||||
// LLFloaterEnvSettings* LLFloaterEnvSettings::sEnvSettings = NULL;
|
||||
|
||||
LLFloaterEnvSettings::LLFloaterEnvSettings(const LLSD &key) : LLFloater(key)
|
||||
{
|
||||
// load it up
|
||||
initCallbacks();
|
||||
}
|
||||
|
||||
LLFloaterEnvSettings::~LLFloaterEnvSettings()
|
||||
{
|
||||
}
|
||||
|
||||
void LLFloaterEnvSettings::onClickHelp(void* data)
|
||||
{
|
||||
LLNotifications::instance().add("EnvSettingsHelpButton", LLSD(), LLSD());
|
||||
// virtual
|
||||
BOOL LLFloaterEnvSettings::postBuild()
|
||||
{
|
||||
// load it up
|
||||
initCallbacks();
|
||||
syncMenu();
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
void LLFloaterEnvSettings::onUseRegionEnvironment(LLUICtrl* ctrl, void* data)
|
||||
{
|
||||
LLFloaterEnvSettings* self = (LLFloaterEnvSettings*)data;
|
||||
LLCheckBoxCtrl* checkbox = (LLCheckBoxCtrl*)self->getChildView("RegionWLOptIn");
|
||||
//LLFloaterEnvSettings* self = (LLFloaterEnvSettings*)data;
|
||||
LLCheckBoxCtrl* checkbox = static_cast<LLCheckBoxCtrl*>(ctrl); //self->getChildView("RegionWLOptIn");
|
||||
setOptIn(checkbox->getValue().asBoolean());
|
||||
}
|
||||
|
||||
|
|
@ -97,23 +100,19 @@ void LLFloaterEnvSettings::setOptIn(bool opt_in)
|
|||
void LLFloaterEnvSettings::initCallbacks(void)
|
||||
{
|
||||
// our three sliders
|
||||
childSetCommitCallback("EnvTimeSlider", onChangeDayTime, NULL);
|
||||
childSetCommitCallback("EnvCloudSlider", onChangeCloudCoverage, NULL);
|
||||
childSetCommitCallback("EnvWaterFogSlider", onChangeWaterFogDensity,
|
||||
&LLWaterParamManager::getInstance()->mFogDensity);
|
||||
childSetCommitCallback("EnvTimeSlider", &LLFloaterEnvSettings::onChangeDayTime, NULL);
|
||||
childSetCommitCallback("EnvCloudSlider", &LLFloaterEnvSettings::onChangeCloudCoverage, NULL);
|
||||
childSetCommitCallback("EnvWaterFogSlider", &LLFloaterEnvSettings::onChangeWaterFogDensity, &LLWaterParamManager::instance().mFogDensity);
|
||||
|
||||
// color picker
|
||||
childSetCommitCallback("EnvWaterColor", onChangeWaterColor,
|
||||
&LLWaterParamManager::getInstance()->mFogColor);
|
||||
childSetCommitCallback("EnvWaterColor", &LLFloaterEnvSettings::onChangeWaterColor, &LLWaterParamManager::instance().mFogColor);
|
||||
|
||||
// WL Top
|
||||
childSetAction("EnvAdvancedSkyButton", onOpenAdvancedSky, NULL);
|
||||
childSetAction("EnvAdvancedWaterButton", onOpenAdvancedWater, NULL);
|
||||
childSetAction("EnvUseEstateTimeButton", onUseEstateTime, NULL);
|
||||
childSetAction("EnvUseLocalTimeButton", onUseLocalTime, NULL);
|
||||
childSetAction("EnvSettingsHelpButton", onClickHelp, this);
|
||||
childSetCommitCallback("EnvAdvancedSkyButton", &LLFloaterEnvSettings::onOpenAdvancedSky, NULL);
|
||||
childSetCommitCallback("EnvAdvancedWaterButton", &LLFloaterEnvSettings::onOpenAdvancedWater, NULL);
|
||||
childSetCommitCallback("EnvUseEstateTimeButton", &LLFloaterEnvSettings::onUseEstateTime, NULL);
|
||||
|
||||
childSetCommitCallback("RegionWLOptIn", onUseRegionEnvironment, this);
|
||||
childSetCommitCallback("RegionWLOptIn", &LLFloaterEnvSettings::onUseRegionEnvironment, NULL);
|
||||
}
|
||||
|
||||
|
||||
|
|
@ -122,14 +121,14 @@ void LLFloaterEnvSettings::initCallbacks(void)
|
|||
void LLFloaterEnvSettings::syncMenu()
|
||||
{
|
||||
LLSliderCtrl* sldr;
|
||||
sldr = sEnvSettings->getChild<LLSliderCtrl>("EnvTimeSlider");
|
||||
sldr = getChild<LLSliderCtrl>("EnvTimeSlider");
|
||||
|
||||
// sync the clock
|
||||
F32 val = (F32)LLWLParamManager::getInstance()->mAnimator.getDayTime();
|
||||
std::string timeStr = LLWLAnimator::timeToString(val);
|
||||
|
||||
LLTextBox* textBox;
|
||||
textBox = sEnvSettings->getChild<LLTextBox>("EnvTimeText");
|
||||
textBox = getChild<LLTextBox>("EnvTimeText");
|
||||
|
||||
textBox->setValue(timeStr);
|
||||
|
||||
|
|
@ -148,7 +147,7 @@ void LLFloaterEnvSettings::syncMenu()
|
|||
LLWaterParamManager * param_mgr = LLWaterParamManager::getInstance();
|
||||
// sync water params
|
||||
LLColor4 col = param_mgr->getFogColor();
|
||||
LLColorSwatchCtrl* colCtrl = sEnvSettings->getChild<LLColorSwatchCtrl>("EnvWaterColor");
|
||||
LLColorSwatchCtrl* colCtrl = getChild<LLColorSwatchCtrl>("EnvWaterColor");
|
||||
col.mV[3] = 1.0f;
|
||||
colCtrl->set(col);
|
||||
|
||||
|
|
@ -204,99 +203,12 @@ void LLFloaterEnvSettings::syncMenu()
|
|||
}
|
||||
}
|
||||
|
||||
|
||||
// static instance of it
|
||||
LLFloaterEnvSettings* LLFloaterEnvSettings::instance()
|
||||
{
|
||||
if (!sEnvSettings)
|
||||
{
|
||||
sEnvSettings = new LLFloaterEnvSettings("Environment Editor Floater");
|
||||
// sEnvSettings->open();
|
||||
// sEnvSettings->setFocus(TRUE);
|
||||
}
|
||||
return sEnvSettings;
|
||||
}
|
||||
|
||||
void LLFloaterEnvSettings::setControlsEnabled(bool enable)
|
||||
{
|
||||
if(enable)
|
||||
{
|
||||
// reenable UI elements, resync sliders, and reload saved settings
|
||||
childEnable("EnvAdvancedSkyButton");
|
||||
childEnable("EnvAdvancedWaterButton");
|
||||
childEnable("EnvUseEstateTimeButton");
|
||||
childShow("EnvTimeText");
|
||||
childShow("EnvWaterColor");
|
||||
childShow("EnvTimeSlider");
|
||||
childShow("EnvCloudSlider");
|
||||
childShow("EnvWaterFogSlider");
|
||||
syncMenu();
|
||||
}
|
||||
else
|
||||
{
|
||||
// disable UI elements the user shouldn't be able to see to protect potentially proprietary WL region settings from being visible
|
||||
LLFloaterWindLight::instance()->closeFloater();
|
||||
LLFloaterWater::instance()->closeFloater();
|
||||
LLFloaterDayCycle::instance()->closeFloater();
|
||||
childDisable("EnvAdvancedSkyButton");
|
||||
childDisable("EnvAdvancedWaterButton");
|
||||
childDisable("EnvUseEstateTimeButton");
|
||||
childHide("EnvTimeText");
|
||||
childHide("EnvWaterColor");
|
||||
childHide("EnvTimeSlider");
|
||||
childHide("EnvCloudSlider");
|
||||
childHide("EnvWaterFogSlider");
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void LLFloaterEnvSettings::show()
|
||||
{
|
||||
LLFloaterEnvSettings* envSettings = instance();
|
||||
envSettings->syncMenu();
|
||||
|
||||
// comment in if you want the menu to rebuild each time
|
||||
//LLUICtrlFactory::getInstance()->buildFloater(envSettings, "floater_env_settings.xml");
|
||||
//envSettings->initCallbacks();
|
||||
|
||||
// Set environment opt-in checkbox based on saved value -- only need to do once, not every time syncMenu is called
|
||||
|
||||
bool opt_in = gSavedSettings.getBOOL("UseEnvironmentFromRegion");
|
||||
|
||||
sEnvSettings->childSetVisible("RegionWLOptIn", LLEnvManager::getInstance()->regionCapable());
|
||||
sEnvSettings->setOptIn(opt_in);
|
||||
LLCheckBoxCtrl* checkbox = (LLCheckBoxCtrl*)envSettings->getChildView("RegionWLOptIn");
|
||||
checkbox->setValue(LLSD::Boolean(opt_in));
|
||||
sEnvSettings->getChildView("RegionWLOptIn")->setToolTip(sEnvSettings->getString("region_environment_tooltip"));
|
||||
envSettings->openFloater();
|
||||
}
|
||||
|
||||
bool LLFloaterEnvSettings::isOpen()
|
||||
{
|
||||
if (sEnvSettings != NULL)
|
||||
{
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
// virtual
|
||||
void LLFloaterEnvSettings::onClose(bool app_quitting)
|
||||
{
|
||||
if (sEnvSettings)
|
||||
{
|
||||
sEnvSettings->setVisible(FALSE);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void LLFloaterEnvSettings::onChangeDayTime(LLUICtrl* ctrl, void* userData)
|
||||
{
|
||||
LLSliderCtrl* sldr;
|
||||
sldr = sEnvSettings->getChild<LLSliderCtrl>("EnvTimeSlider");
|
||||
LLSliderCtrl* sldr = static_cast<LLSliderCtrl*>(ctrl);
|
||||
|
||||
// deactivate animator
|
||||
LLWLParamManager::getInstance()->mAnimator.deactivate();
|
||||
LLWLParamManager::instance().mAnimator.deactivate();
|
||||
|
||||
F32 val = sldr->getValueF32() + 0.25f;
|
||||
if(val > 1.0)
|
||||
|
|
@ -304,81 +216,65 @@ void LLFloaterEnvSettings::onChangeDayTime(LLUICtrl* ctrl, void* userData)
|
|||
val--;
|
||||
}
|
||||
|
||||
LLWLParamManager::getInstance()->mAnimator.setDayTime((F64)val);
|
||||
LLWLParamManager::getInstance()->mAnimator.update(
|
||||
LLWLParamManager::getInstance()->mCurParams);
|
||||
LLWLParamManager::instance().mAnimator.setDayTime((F64)val);
|
||||
LLWLParamManager::instance().mAnimator.update(
|
||||
LLWLParamManager::instance().mCurParams);
|
||||
}
|
||||
|
||||
void LLFloaterEnvSettings::onChangeCloudCoverage(LLUICtrl* ctrl, void* userData)
|
||||
{
|
||||
LLSliderCtrl* sldr;
|
||||
sldr = sEnvSettings->getChild<LLSliderCtrl>("EnvCloudSlider");
|
||||
LLSliderCtrl* sldr = static_cast<LLSliderCtrl*>(ctrl);
|
||||
|
||||
// deactivate animator
|
||||
//LLWLParamManager::getInstance()->mAnimator.mIsRunning = false;
|
||||
//LLWLParamManager::getInstance()->mAnimator.mUseLindenTime = false;
|
||||
//LLWLParamManager::instance()->mAnimator.mIsRunning = false;
|
||||
//LLWLParamManager::instance()->mAnimator.mUseLindenTime = false;
|
||||
|
||||
F32 val = sldr->getValueF32();
|
||||
LLWLParamManager::getInstance()->mCurParams.set("cloud_shadow", val);
|
||||
LLWLParamManager::instance().mCurParams.set("cloud_shadow", val);
|
||||
}
|
||||
|
||||
void LLFloaterEnvSettings::onChangeWaterFogDensity(LLUICtrl* ctrl, void* userData)
|
||||
{
|
||||
LLSliderCtrl* sldr;
|
||||
sldr = sEnvSettings->getChild<LLSliderCtrl>("EnvWaterFogSlider");
|
||||
|
||||
if(NULL == userData)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
WaterExpFloatControl * expFloatControl = static_cast<WaterExpFloatControl *>(userData);
|
||||
|
||||
LLSliderCtrl* sldr = static_cast<LLSliderCtrl*>(ctrl);
|
||||
F32 val = sldr->getValueF32();
|
||||
expFloatControl->mExp = val;
|
||||
LLWaterParamManager::getInstance()->setDensitySliderValue(val);
|
||||
|
||||
expFloatControl->update(LLWaterParamManager::getInstance()->mCurParams);
|
||||
LLWaterParamManager::getInstance()->propagateParameters();
|
||||
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);
|
||||
WaterColorControl* colorControl = static_cast<WaterColorControl*>(userData);
|
||||
*colorControl = swatch->get();
|
||||
|
||||
colorControl->update(LLWaterParamManager::getInstance()->mCurParams);
|
||||
LLWaterParamManager::getInstance()->propagateParameters();
|
||||
colorControl->update(LLWaterParamManager::instance().mCurParams);
|
||||
LLWaterParamManager::instance().propagateParameters();
|
||||
}
|
||||
|
||||
void LLFloaterEnvSettings::onOpenAdvancedSky(void* userData1, void* userData2)
|
||||
{
|
||||
LLFloaterReg::showInstance("env_windlight");
|
||||
}
|
||||
|
||||
void LLFloaterEnvSettings::onOpenAdvancedWater(void* userData1, void* userData2)
|
||||
{
|
||||
LLFloaterReg::showInstance("env_water");
|
||||
}
|
||||
|
||||
|
||||
void LLFloaterEnvSettings::onOpenAdvancedSky(void* userData)
|
||||
void LLFloaterEnvSettings::onUseEstateTime(void* userData1, void* userData2)
|
||||
{
|
||||
LLFloaterWindLight::show();
|
||||
}
|
||||
|
||||
void LLFloaterEnvSettings::onOpenAdvancedWater(void* userData)
|
||||
{
|
||||
LLFloaterWater::instance()->openFloater();
|
||||
}
|
||||
|
||||
|
||||
void LLFloaterEnvSettings::onUseEstateTime(void* userData)
|
||||
{
|
||||
if(LLFloaterWindLight::isOpen())
|
||||
LLFloaterWindLight* wl = LLFloaterReg::findTypedInstance<LLFloaterWindLight>("env_windlight");
|
||||
if(wl)
|
||||
{
|
||||
// select the blank value in
|
||||
LLFloaterWindLight* wl = LLFloaterWindLight::instance();
|
||||
LLComboBox* box = wl->getChild<LLComboBox>("WLPresetsCombo");
|
||||
box->selectByValue("");
|
||||
}
|
||||
|
||||
LLWLParamManager::getInstance()->mAnimator.activate(LLWLAnimator::TIME_LINDEN);
|
||||
}
|
||||
|
||||
void LLFloaterEnvSettings::onUseLocalTime(void* userData)
|
||||
{
|
||||
LLWLParamManager::getInstance()->mAnimator.setDayTime(LLWLAnimator::getLocalTime());
|
||||
LLWLParamManager::getInstance()->mAnimator.activate(LLWLAnimator::TIME_LOCAL);
|
||||
LLWLParamManager::instance().mAnimator.activate(LLWLAnimator::TIME_LINDEN);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -46,17 +46,15 @@ class LLFloaterEnvSettings : public LLFloater
|
|||
public:
|
||||
|
||||
LLFloaterEnvSettings(const LLSD &key);
|
||||
virtual ~LLFloaterEnvSettings();
|
||||
|
||||
/*virtual*/ ~LLFloaterEnvSettings();
|
||||
/*virtual*/ BOOL postBuild();
|
||||
|
||||
/// initialize all the callbacks for the menu
|
||||
void initCallbacks(void);
|
||||
|
||||
/// one and one instance only
|
||||
static LLFloaterEnvSettings* instance();
|
||||
|
||||
/// callback for the menus help button
|
||||
static void onClickHelp(void* data);
|
||||
|
||||
LLFloaterEnvSettings* instance();
|
||||
|
||||
/// handle if time of day is changed
|
||||
static void onChangeDayTime(LLUICtrl* ctrl, void* userData);
|
||||
|
||||
|
|
@ -64,25 +62,19 @@ public:
|
|||
static void onChangeCloudCoverage(LLUICtrl* ctrl, void* userData);
|
||||
|
||||
/// handle change in water fog density
|
||||
static void onChangeWaterFogDensity(LLUICtrl* ctrl, void* userData);
|
||||
|
||||
/// handle change in under water fog density
|
||||
static void onChangeUnderWaterFogMod(LLUICtrl* ctrl, void* userData);
|
||||
static void onChangeWaterFogDensity(LLUICtrl* ctrl, void* expFloatControl);
|
||||
|
||||
/// handle change in water fog color
|
||||
static void onChangeWaterColor(LLUICtrl* ctrl, void* userData);
|
||||
static void onChangeWaterColor(LLUICtrl* ctrl, void* colorControl);
|
||||
|
||||
/// open the advanced sky settings menu
|
||||
static void onOpenAdvancedSky(void* userData);
|
||||
static void onOpenAdvancedSky(void* userData1, void* userData2);
|
||||
|
||||
/// open the advanced water settings menu
|
||||
static void onOpenAdvancedWater(void* userData);
|
||||
static void onOpenAdvancedWater(void* userData1, void* userData2);
|
||||
|
||||
/// sync time with the server
|
||||
static void onUseEstateTime(void* userData);
|
||||
|
||||
/// sync time with local clock
|
||||
static void onUseLocalTime(void* userData);
|
||||
static void onUseEstateTime(void* userData1, void* userData2);
|
||||
|
||||
// opt-in for region Windlight settings
|
||||
//static void onUseRegionEnvironment(LLUICtrl* ctrl, void* userData);
|
||||
|
|
@ -90,24 +82,11 @@ public:
|
|||
|
||||
//// menu management
|
||||
|
||||
/// enables or disable all controls
|
||||
void setControlsEnabled(bool enable);
|
||||
|
||||
/// show off our menu
|
||||
static void show();
|
||||
|
||||
/// return if the menu exists or not
|
||||
static bool isOpen();
|
||||
|
||||
/// stuff to do on exit
|
||||
virtual void onClose(bool app_quitting);
|
||||
|
||||
/// sync up sliders with parameters
|
||||
void syncMenu();
|
||||
|
||||
private:
|
||||
// one instance on the inside
|
||||
static LLFloaterEnvSettings* sEnvSettings;
|
||||
|
||||
static void setOptIn(bool opt_in);
|
||||
};
|
||||
|
|
|
|||
|
|
@ -1403,17 +1403,18 @@ bool LLPanelRegionTerrainInfo::callbackBakeTerrain(const LLSD& notification, con
|
|||
|
||||
void LLPanelRegionTerrainInfo::onOpenAdvancedSky(void* userData)
|
||||
{
|
||||
LLFloaterWindLight::show(LLEnvKey::SCOPE_REGION);
|
||||
// LLFloaterWindLight::show(LLEnvKey::SCOPE_REGION);
|
||||
}
|
||||
|
||||
void LLPanelRegionTerrainInfo::onOpenAdvancedWater(void* userData)
|
||||
{
|
||||
LLFloaterWater::instance()->show(LLEnvKey::SCOPE_REGION);
|
||||
// LLFloaterWater::instance()->show(LLEnvKey::SCOPE_REGION);
|
||||
}
|
||||
|
||||
|
||||
void LLPanelRegionTerrainInfo::onUseEstateTime(void* userData)
|
||||
{
|
||||
#if 0
|
||||
if(LLFloaterWindLight::isOpen())
|
||||
{
|
||||
// select the blank value in
|
||||
|
|
@ -1423,6 +1424,7 @@ void LLPanelRegionTerrainInfo::onUseEstateTime(void* userData)
|
|||
}
|
||||
|
||||
LLWLParamManager::getInstance()->mAnimator.activate(LLWLAnimator::TIME_LINDEN);
|
||||
#endif
|
||||
}
|
||||
|
||||
///////////////////////////////////////////////////////
|
||||
|
|
@ -1431,29 +1433,36 @@ void LLPanelRegionTerrainInfo::onUseEstateTime(void* userData)
|
|||
// Handle commit of WL settings to region
|
||||
void LLPanelRegionTerrainInfo::onCommitRegionWL(void* userData)
|
||||
{
|
||||
#if 0
|
||||
LLEnvManager::getInstance()->commitSettings(LLEnvKey::SCOPE_REGION);
|
||||
LLEnvManager::getInstance()->maybeClearEditingScope(LLEnvKey::SCOPE_REGION, true, false);
|
||||
#endif
|
||||
}
|
||||
|
||||
// Handle cancel of WL settings for region
|
||||
void LLPanelRegionTerrainInfo::onCancelRegionWL(void* userData)
|
||||
{
|
||||
#if 0
|
||||
LLEnvManager::getInstance()->maybeClearEditingScope(LLEnvKey::SCOPE_REGION, true, false);
|
||||
#endif
|
||||
}
|
||||
|
||||
// Handle reversion of region WL settings to default
|
||||
void LLPanelRegionTerrainInfo::onSetRegionToDefaultWL(void* userData)
|
||||
{
|
||||
#if 0
|
||||
LLEnvManager::instance().resetInternalsToDefault(LLEnvKey::SCOPE_REGION);
|
||||
LLEnvManager::instance().startEditingScope(LLEnvKey::SCOPE_REGION);
|
||||
#endif
|
||||
}
|
||||
|
||||
void LLPanelRegionTerrainInfo::cancelChanges()
|
||||
{
|
||||
LLFloaterWindLight::instance()->closeFloater();
|
||||
LLFloaterWater::instance()->closeFloater();
|
||||
LLFloaterDayCycle::instance()->closeFloater();
|
||||
|
||||
#if 0
|
||||
LLFloaterWindLight::instance().closeFloater();
|
||||
LLFloaterWater::instance().closeFloater();
|
||||
LLFloaterDayCycle::instance().closeFloater();
|
||||
#endif
|
||||
// disable commmit and cancel
|
||||
LLPanelRegionTerrainInfo::instance()->setCommitControls(false);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -70,6 +70,10 @@ std::string LLFloaterWindLight::sOriginalTitle;
|
|||
static const F32 WL_SUN_AMBIENT_SLIDER_SCALE = 3.0f;
|
||||
|
||||
LLFloaterWindLight::LLFloaterWindLight(const LLSD &key) : LLFloater(key)
|
||||
{
|
||||
}
|
||||
|
||||
BOOL LLFloaterWindLight::postBuild()
|
||||
{
|
||||
sOriginalTitle = getTitle();
|
||||
|
||||
|
|
@ -108,44 +112,16 @@ LLFloaterWindLight::LLFloaterWindLight(const LLSD &key) : LLFloater(key)
|
|||
|
||||
// load it up
|
||||
initCallbacks();
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
LLFloaterWindLight::~LLFloaterWindLight()
|
||||
{
|
||||
}
|
||||
|
||||
void LLFloaterWindLight::initCallbacks(void) {
|
||||
|
||||
// help buttons
|
||||
initHelpBtn("WLBlueHorizonHelp", "HelpBlueHorizon");
|
||||
initHelpBtn("WLHazeHorizonHelp", "HelpHazeHorizon");
|
||||
initHelpBtn("WLBlueDensityHelp", "HelpBlueDensity");
|
||||
initHelpBtn("WLHazeDensityHelp", "HelpHazeDensity");
|
||||
|
||||
initHelpBtn("WLDensityMultHelp", "HelpDensityMult");
|
||||
initHelpBtn("WLDistanceMultHelp", "HelpDistanceMult");
|
||||
initHelpBtn("WLMaxAltitudeHelp", "HelpMaxAltitude");
|
||||
|
||||
initHelpBtn("WLSunlightColorHelp", "HelpSunlightColor");
|
||||
initHelpBtn("WLAmbientHelp", "HelpSunAmbient");
|
||||
initHelpBtn("WLSunGlowHelp", "HelpSunGlow");
|
||||
initHelpBtn("WLTimeOfDayHelp", "HelpTimeOfDay");
|
||||
initHelpBtn("WLEastAngleHelp", "HelpEastAngle");
|
||||
|
||||
initHelpBtn("WLSceneGammaHelp", "HelpSceneGamma");
|
||||
initHelpBtn("WLStarBrightnessHelp", "HelpStarBrightness");
|
||||
|
||||
initHelpBtn("WLCloudColorHelp", "HelpCloudColor");
|
||||
initHelpBtn("WLCloudDetailHelp", "HelpCloudDetail");
|
||||
initHelpBtn("WLCloudDensityHelp", "HelpCloudDensity");
|
||||
initHelpBtn("WLCloudCoverageHelp", "HelpCloudCoverage");
|
||||
|
||||
initHelpBtn("WLCloudScaleHelp", "HelpCloudScale");
|
||||
initHelpBtn("WLCloudScrollXHelp", "HelpCloudScrollX");
|
||||
initHelpBtn("WLCloudScrollYHelp", "HelpCloudScrollY");
|
||||
|
||||
initHelpBtn("WLClassicCloudsHelp", "HelpClassicClouds");
|
||||
|
||||
void LLFloaterWindLight::initCallbacks(void)
|
||||
{
|
||||
LLWLParamManager * param_mgr = LLWLParamManager::getInstance();
|
||||
|
||||
// blue horizon
|
||||
|
|
@ -235,6 +211,7 @@ void LLFloaterWindLight::initCallbacks(void) {
|
|||
childSetCommitCallback("WLStarAlpha", onStarAlphaMoved, NULL);
|
||||
}
|
||||
|
||||
#if 0
|
||||
void LLFloaterWindLight::onClickHelp(void* data)
|
||||
{
|
||||
const std::string xml_alert = *(std::string*)data;
|
||||
|
|
@ -245,6 +222,7 @@ void LLFloaterWindLight::initHelpBtn(const std::string& name, const std::string&
|
|||
{
|
||||
childSetAction(name, onClickHelp, new std::string(xml_alert));
|
||||
}
|
||||
#endif
|
||||
|
||||
bool LLFloaterWindLight::newPromptCallback(const LLSD& notification, const LLSD& response)
|
||||
{
|
||||
|
|
@ -442,6 +420,7 @@ void LLFloaterWindLight::syncMenu()
|
|||
}
|
||||
|
||||
|
||||
#if 0
|
||||
// static
|
||||
LLFloaterWindLight* LLFloaterWindLight::instance()
|
||||
{
|
||||
|
|
@ -500,6 +479,7 @@ void LLFloaterWindLight::onClose(bool app_quitting)
|
|||
sWindLight->setVisible(FALSE);
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
// color control callbacks
|
||||
void LLFloaterWindLight::onColorControlRMoved(LLUICtrl* ctrl, void* userData)
|
||||
|
|
|
|||
|
|
@ -52,17 +52,19 @@ class LLFloaterWindLight : public LLFloater
|
|||
public:
|
||||
LLFloaterWindLight(const LLSD &key);
|
||||
virtual ~LLFloaterWindLight();
|
||||
|
||||
BOOL postBuild();
|
||||
|
||||
/// initialize all
|
||||
void initCallbacks(void);
|
||||
|
||||
#if 0
|
||||
/// one and one instance only
|
||||
static LLFloaterWindLight* instance();
|
||||
|
||||
// help button stuff
|
||||
static void onClickHelp(void* data);
|
||||
void initHelpBtn(const std::string& name, const std::string& xml_alert);
|
||||
|
||||
#endif
|
||||
static bool newPromptCallback(const LLSD& notification, const LLSD& response);
|
||||
|
||||
/// general purpose callbacks for dealing with color controllers
|
||||
|
|
@ -116,6 +118,7 @@ public:
|
|||
|
||||
//// menu management
|
||||
|
||||
#if 0
|
||||
/// show off our menu
|
||||
static void show(LLEnvKey::EScope scope = LLEnvKey::SCOPE_LOCAL);
|
||||
|
||||
|
|
@ -124,7 +127,7 @@ public:
|
|||
|
||||
/// stuff to do on exit
|
||||
virtual void onClose(bool app_quitting);
|
||||
|
||||
#endif
|
||||
/// sync up sliders with parameters
|
||||
void syncMenu();
|
||||
|
||||
|
|
|
|||
|
|
@ -37,6 +37,7 @@
|
|||
#include "pipeline.h"
|
||||
#include "llsky.h"
|
||||
|
||||
#include "llfloaterreg.h"
|
||||
#include "llsliderctrl.h"
|
||||
#include "llspinctrl.h"
|
||||
#include "llcheckboxctrl.h"
|
||||
|
|
@ -57,6 +58,7 @@
|
|||
#include "llenvmanager.h"
|
||||
#include "llwlparamset.h"
|
||||
#include "llpostprocess.h"
|
||||
|
||||
#include "llfloaterwindlight.h"
|
||||
#include "llfloaterdaycycle.h"
|
||||
#include "llfloaterenvsettings.h"
|
||||
|
|
@ -523,17 +525,20 @@ void LLWLParamManager::update(LLViewerCamera * cam)
|
|||
propagateParameters();
|
||||
|
||||
// sync menus if they exist
|
||||
if(LLFloaterWindLight::isOpen())
|
||||
LLFloaterWindLight* wlfloater = LLFloaterReg::findTypedInstance<LLFloaterWindLight>("env_windlight");
|
||||
if (wlfloater)
|
||||
{
|
||||
LLFloaterWindLight::instance()->syncMenu();
|
||||
wlfloater->syncMenu();
|
||||
}
|
||||
if(LLFloaterDayCycle::isOpen())
|
||||
LLFloaterDayCycle* dlfloater = LLFloaterReg::findTypedInstance<LLFloaterDayCycle>("env_day_cycle");
|
||||
if (dlfloater)
|
||||
{
|
||||
LLFloaterDayCycle::instance()->syncMenu();
|
||||
dlfloater->syncMenu();
|
||||
}
|
||||
if(LLFloaterEnvSettings::isOpen())
|
||||
LLFloaterEnvSettings* envfloater = LLFloaterReg::findTypedInstance<LLFloaterEnvSettings>("env_settings");
|
||||
if (envfloater)
|
||||
{
|
||||
LLFloaterEnvSettings::instance()->syncMenu();
|
||||
envfloater->syncMenu();
|
||||
}
|
||||
|
||||
F32 camYaw = cam->getYaw();
|
||||
|
|
|
|||
Loading…
Reference in New Issue