diff options
| author | Rider Linden <rider@lindenlab.com> | 2015-04-03 14:43:49 -0700 |
|---|---|---|
| committer | Rider Linden <rider@lindenlab.com> | 2015-04-03 14:43:49 -0700 |
| commit | 2de894bdc785c8d68dc4197b68aa9305450999f7 (patch) | |
| tree | ddeae08bcfd7f848c6d81e5058146e64108afbcd /indra/llui/llsliderctrl.cpp | |
| parent | 17641c8427d05c4cde1fadd2ca059264d89bc818 (diff) | |
| parent | ab30a44d9de332466841bfb40aa494ff0db1089a (diff) | |
Merged lindenlab/viewer-tools-update into default
Diffstat (limited to 'indra/llui/llsliderctrl.cpp')
| -rwxr-xr-x | indra/llui/llsliderctrl.cpp | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/indra/llui/llsliderctrl.cpp b/indra/llui/llsliderctrl.cpp index 127c97ecde..0056cb6dc4 100755 --- a/indra/llui/llsliderctrl.cpp +++ b/indra/llui/llsliderctrl.cpp @@ -56,7 +56,8 @@ LLSliderCtrl::LLSliderCtrl(const LLSliderCtrl::Params& p) mPrecision(p.decimal_digits), mTextEnabledColor(p.text_color()), mTextDisabledColor(p.text_disabled_color()), - mLabelWidth(p.label_width) + mLabelWidth(p.label_width), + mEditorCommitSignal(NULL) { S32 top = getRect().getHeight(); S32 bottom = 0; @@ -194,6 +195,11 @@ LLSliderCtrl::LLSliderCtrl(const LLSliderCtrl::Params& p) updateText(); } +LLSliderCtrl::~LLSliderCtrl() +{ + delete mEditorCommitSignal; +} + // static void LLSliderCtrl::onEditorGainFocus( LLFocusableElement* caller, void *userdata ) { @@ -306,6 +312,8 @@ void LLSliderCtrl::onEditorCommit( LLUICtrl* ctrl, const LLSD& userdata ) if( success ) { self->onCommit(); + if (self->mEditorCommitSignal) + (*(self->mEditorCommitSignal))(self, self->getValueF32()); } else { @@ -419,6 +427,11 @@ boost::signals2::connection LLSliderCtrl::setSliderMouseUpCallback( const commit return mSlider->setMouseUpCallback( cb ); } +boost::signals2::connection LLSliderCtrl::setSliderEditorCommitCallback( const commit_signal_t::slot_type& cb ) +{ + if (!mEditorCommitSignal) mEditorCommitSignal = new commit_signal_t(); + return mEditorCommitSignal->connect(cb); +} void LLSliderCtrl::onTabInto() { if( mEditor ) |
