diff options
| -rw-r--r-- | indra/newview/llpanelenvironment.cpp | 13 | ||||
| -rw-r--r-- | indra/newview/llpanelenvironment.h | 2 | 
2 files changed, 10 insertions, 5 deletions
diff --git a/indra/newview/llpanelenvironment.cpp b/indra/newview/llpanelenvironment.cpp index aa8c6cf724..20aaf258f8 100644 --- a/indra/newview/llpanelenvironment.cpp +++ b/indra/newview/llpanelenvironment.cpp @@ -232,6 +232,8 @@ void LLPanelEnvironmentInfo::refresh()      udpateApparentTimeOfDay(); +    updateEditFloater(mCurrentEnvironment, canEdit()); +  #if 1       // hiding the controls until Rider can get the simulator code to adjust altitudes done.      getChild<LLUICtrl>(PNL_ENVIRONMENT_ALTITUDES)->setVisible(FALSE); @@ -312,14 +314,14 @@ LLFloaterEditExtDayCycle * LLPanelEnvironmentInfo::getEditFloater(bool create)  } -void LLPanelEnvironmentInfo::updateEditFloater(const LLEnvironment::EnvironmentInfo::ptr_t &nextenv) +void LLPanelEnvironmentInfo::updateEditFloater(const LLEnvironment::EnvironmentInfo::ptr_t &nextenv, bool enable)  {      LLFloaterEditExtDayCycle *dayeditor(getEditFloater(false));      if (!dayeditor)          return; -    if (!nextenv || !nextenv->mDayCycle) +    if (!nextenv || !nextenv->mDayCycle || !enable)      {          if (mCommitConnection.connected())              mCommitConnection.disconnect(); @@ -331,7 +333,10 @@ void LLPanelEnvironmentInfo::updateEditFloater(const LLEnvironment::EnvironmentI      }      else      { -        /*TODO: Swap in new day to edit?*/ +        // Ignore dirty +        // If parcel selection changed whatever we do except saving to inventory with +        // old settings will be invalid. +        dayeditor->setEditDayCycle(nextenv->mDayCycle);      }  } @@ -363,7 +368,7 @@ bool LLPanelEnvironmentInfo::setControlsEnabled(bool enabled)          getChild<LLUICtrl>(PNL_DISABLED)->setVisible(true);          getChild<LLUICtrl>(PNL_ENVIRONMENT_ALTITUDES)->setVisible(FALSE); -        updateEditFloater(mCurrentEnvironment); +        updateEditFloater(mCurrentEnvironment, false);          return false;      } diff --git a/indra/newview/llpanelenvironment.h b/indra/newview/llpanelenvironment.h index 93fe186d6f..9bc0b9df9c 100644 --- a/indra/newview/llpanelenvironment.h +++ b/indra/newview/llpanelenvironment.h @@ -132,7 +132,7 @@ protected:      LLFloaterSettingsPicker *   getSettingsPicker(bool create = true);      LLFloaterEditExtDayCycle *  getEditFloater(bool create = true); -    void                        updateEditFloater(const LLEnvironment::EnvironmentInfo::ptr_t &nextenv); +    void                        updateEditFloater(const LLEnvironment::EnvironmentInfo::ptr_t &nextenv, bool enable);      void                        setCrossRegion(bool val) { mCrossRegion = val; }      void                        setNoSelection(bool val) { mNoSelection = val; }  | 
