summaryrefslogtreecommitdiff
path: root/indra/newview/llfloatereditextdaycycle.h
diff options
context:
space:
mode:
authorRider Linden <rider@lindenlab.com>2018-05-22 13:08:35 -0700
committerRider Linden <rider@lindenlab.com>2018-05-22 13:08:35 -0700
commit656967b326c59a3966261cd75e256e3a7a27cc0a (patch)
tree1c2c4c8f2adae7f17930843913a286fc1fd784b4 /indra/newview/llfloatereditextdaycycle.h
parent044b80e4e1a7b55f46e6f3b52c9cae6d9c6df3eb (diff)
parentb6ba9dd565b59e516571445e56f9dafe3bdf4061 (diff)
Merge PR
Diffstat (limited to 'indra/newview/llfloatereditextdaycycle.h')
-rw-r--r--indra/newview/llfloatereditextdaycycle.h59
1 files changed, 30 insertions, 29 deletions
diff --git a/indra/newview/llfloatereditextdaycycle.h b/indra/newview/llfloatereditextdaycycle.h
index 80e5850558..287d2fe2dc 100644
--- a/indra/newview/llfloatereditextdaycycle.h
+++ b/indra/newview/llfloatereditextdaycycle.h
@@ -35,11 +35,11 @@
class LLCheckBoxCtrl;
class LLComboBox;
+class LLFlyoutComboBtnCtrl;
class LLLineEditor;
class LLMultiSliderCtrl;
class LLTextBox;
class LLTimeCtrl;
-//class LLFlyoutComboBtnCtrl;
class LLInventoryItem;
@@ -62,53 +62,44 @@ public:
typedef boost::signals2::signal<void(LLSettingsDay::ptr_t)> edit_commit_signal_t;
typedef boost::signals2::connection connection_t;
- LLFloaterEditExtDayCycle(const LLSD &key);
+ LLFloaterEditExtDayCycle(const LLSD &key);
~LLFloaterEditExtDayCycle();
//void openFloater(LLSettingsDay::ptr_t settings, S64Seconds daylength = S64Seconds(0), S64Seconds dayoffset = S64Seconds(0));
BOOL postBuild();
void onOpen(const LLSD& key);
- void onClose(bool app_quitting);
+ void onClose(bool app_quitting);
void onVisibilityChange(BOOL new_visibility);
-// /*virtual*/ void draw();
connection_t setEditCommitSignal(edit_commit_signal_t::slot_type cb);
private:
-// /// sync the time slider with day cycle structure
-// void syncTimeSlider();
-//
-// // makes sure key slider has what's in day cycle
-// void loadTrack();
-//
-// /// makes sure day cycle data structure has what's in menu
-// void applyTrack();
-//
-// /// refresh the sky presets combobox
-
-// void onButtonApply(LLUICtrl *ctrl, const LLSD &data);
- void onBtnSave();
+ // flyout response/click
+ void onButtonApply(LLUICtrl *ctrl, const LLSD &data);
void onBtnCancel();
- void onBtnUpload();
void onAddTrack();
void onRemoveTrack();
void onCommitName(class LLLineEditor* caller, void* user_data);
void onTrackSelectionCallback(const LLSD& user_data);
- void onTimeSliderMoved(); /// time slider moved
- void onFrameSliderCallback(); /// a frame moved or frame selection changed
+ // time slider moved
+ void onTimeSliderMoved();
+ // a frame moved or frame selection changed
+ void onFrameSliderCallback();
void selectTrack(U32 track_index);
void clearTabs();
void updateTabs();
void updateWaterTabs(const LLSettingsWaterPtr_t &p_water);
void updateSkyTabs(const LLSettingsSkyPtr_t &p_sky);
+ void setWaterTabsEnabled(BOOL enable);
+ void setSkyTabsEnabled(BOOL enable);
void updateButtons();
void updateSlider(); //track to slider
void updateTimeAndLabel();
- void addSliderFrame(const F32 frame, LLSettingsBase::ptr_t setting);
+ void addSliderFrame(const F32 frame, LLSettingsBase::ptr_t &setting, bool update_ui = true);
void removeCurrentSliderFrame();
// **RIDER**
@@ -120,15 +111,18 @@ private:
void syncronizeTabs();
void reblendSettings();
// **RIDER**
+
+ // data for restoring previous displayed environment
- LLSettingsDay::ptr_t mEditDay;
+ S32 mSavedEnvironment;
+
+ LLSettingsDay::ptr_t mEditDay; // edited copy
+ LLSettingsDay::ptr_t mOriginalDay; // the one we are editing
S64Seconds mDayLength;
U32 mCurrentTrack;
std::string mLastFrameSlider;
- LLButton* mSaveButton;
LLButton* mCancelButton;
- LLButton* mUploadButton;
LLButton* mAddFrameButton;
LLButton* mDeleteFrameButton;
@@ -148,14 +142,21 @@ private:
LLSettingsWater::ptr_t mScratchWater;
// **RIDER**
-// LLFlyoutComboBtnCtrl * mFlyoutControl; // not a View!
+ LLFlyoutComboBtnCtrl * mFlyoutControl;
edit_commit_signal_t mCommitSignal;
- // map of sliders to parameters
- typedef std::pair<F32, LLSettingsBase::ptr_t> framedata_t;
- typedef std::map<std::string, framedata_t> keymap_t;
- keymap_t mSliderKeyMap; //slider keys[old_frames], shadows mFramesSlider
+ // For map of sliders to parameters
+ class FrameData
+ {
+ public:
+ FrameData() : mFrame(0) {};
+ FrameData(F32 frame, LLSettingsBase::ptr_t settings) : mFrame(frame), pSettings(settings) {};
+ F32 mFrame;
+ LLSettingsBase::ptr_t pSettings;
+ };
+ typedef std::map<std::string, FrameData> keymap_t;
+ keymap_t mSliderKeyMap; //slider's keys vs old_frames&settings, shadows mFramesSlider
};
#endif // LL_LLFloaterEditExtDayCycle_H