From 3be8ae9d4274ca16ff2dbf8fa10a23f48c2e7022 Mon Sep 17 00:00:00 2001 From: Vadim ProductEngine Date: Thu, 30 Jun 2011 01:19:14 +0300 Subject: STORM-1305 WIP Edit Sky floater: removed the old sun position slider, added hour marks to the new one. --- indra/newview/llfloatereditsky.cpp | 24 +-- .../default/xui/en/floater_edit_sky_preset.xml | 167 ++++++++++++++++++--- 2 files changed, 145 insertions(+), 46 deletions(-) diff --git a/indra/newview/llfloatereditsky.cpp b/indra/newview/llfloatereditsky.cpp index 96289be31e..0163dfbf30 100644 --- a/indra/newview/llfloatereditsky.cpp +++ b/indra/newview/llfloatereditsky.cpp @@ -172,7 +172,6 @@ void LLFloaterEditSky::initCallbacks(void) getChild("WLAmbient")->setCommitCallback(boost::bind(&LLFloaterEditSky::onColorControlMoved, this, _1, ¶m_mgr.mAmbient)); // time of day - getChild("WLSunAngle")->setCommitCallback(boost::bind(&LLFloaterEditSky::onSunMoved, this, _1, ¶m_mgr.mLightnorm)); // old slider getChild("WLSunPos")->setCommitCallback(boost::bind(&LLFloaterEditSky::onSunMoved, this, _1, ¶m_mgr.mLightnorm)); // multi-slider getChild("WLDayTime")->setCommitCallback(boost::bind(&LLFloaterEditSky::onTimeChanged, this)); // time ctrl getChild("WLEastAngle")->setCommitCallback(boost::bind(&LLFloaterEditSky::onSunMoved, this, _1, ¶m_mgr.mLightnorm)); @@ -251,7 +250,6 @@ void LLFloaterEditSky::syncControls() setColorSwatch("WLAmbient", param_mgr->mAmbient, WL_SUN_AMBIENT_SLIDER_SCALE); F32 sun_pos = param_mgr->mCurParams.getFloat("sun_angle",err) / F_TWO_PI; - getChild("WLSunAngle")->setValue(sun_pos); getChild("WLSunPos")->setCurSliderValue(sun_pos_to_time24(sun_pos), TRUE); childSetValue("WLEastAngle", param_mgr->mCurParams.getFloat("east_angle",err) / F_TWO_PI); @@ -535,36 +533,18 @@ void LLFloaterEditSky::onSunMoved(LLUICtrl* ctrl, void* userdata) { LLWLParamManager::getInstance()->mAnimator.deactivate(); - LLSliderCtrl* sun_sldr = getChild("WLSunAngle"); LLMultiSliderCtrl* sun_msldr = getChild("WLSunPos"); LLSliderCtrl* east_sldr = getChild("WLEastAngle"); LLTimeCtrl* time_ctrl = getChild("WLDayTime"); - WLColorControl* color_ctrl = static_cast(userdata); - F32 sun_pos = 0.0f; // 0..1 - F32 time24 = 0.0f; // 0..24 - if (ctrl == sun_msldr) // new slider moved - { - time24 = sun_msldr->getCurSliderValue(); - sun_pos = time24_to_sun_pos(time24); - - sun_sldr->setValue(sun_pos); // update the old slider - } - else - { - sun_pos = sun_sldr->getValueF32(); - time24 = sun_pos_to_time24(sun_pos); - - sun_msldr->setCurSliderValue(time24, TRUE); // update the new slider - } - + F32 time24 = sun_msldr->getCurSliderValue(); time_ctrl->setTime24(time24); // sync the time ctrl with the new sun position // get the two angles LLWLParamManager * param_mgr = LLWLParamManager::getInstance(); - param_mgr->mCurParams.setSunAngle(F_TWO_PI * sun_pos); + param_mgr->mCurParams.setSunAngle(F_TWO_PI * time24_to_sun_pos(time24)); param_mgr->mCurParams.setEastAngle(F_TWO_PI * east_sldr->getValueF32()); // set the sun vector diff --git a/indra/newview/skins/default/xui/en/floater_edit_sky_preset.xml b/indra/newview/skins/default/xui/en/floater_edit_sky_preset.xml index a0a66ca1cd..56233d91ee 100644 --- a/indra/newview/skins/default/xui/en/floater_edit_sky_preset.xml +++ b/indra/newview/skins/default/xui/en/floater_edit_sky_preset.xml @@ -450,30 +450,10 @@ layout="topleft" left_pad="60" name="TODText" - top="10" + top="25" width="200"> Sun/Moon Position - - + + + | + + + | + + + | + + + | + + + | + + + + + 12am + + + 6am + + + 12pm + + + 6pm + + + 12am + +