From 9d85f4ebe99ea511b032622de7499e81fd93fbd6 Mon Sep 17 00:00:00 2001 From: Paul Guslisty Date: Fri, 16 Apr 2010 17:24:50 +0300 Subject: Fixed normal EXT-6812 ([TRUNCATION] APARIENCIA window > Forma > Boca > Labios: prominec. \"Labios: prominenc\" should be \"Labios: prominencia\".) - There was two reasons: 1. Uninitialized variable in llsliderctrl.(h/cpp) that contains label size. This variable take part in calculation of TextBox size of label. 2. Font of 'label string' and text box was different. This causes wrong calculation of 'label string' length. Reviwed by Vadim Savchuk and Mike Antipov at https://codereview.productengine.com/secondlife/r/246/ --HG-- branch : product-engine --- indra/llui/llsliderctrl.cpp | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'indra/llui/llsliderctrl.cpp') diff --git a/indra/llui/llsliderctrl.cpp b/indra/llui/llsliderctrl.cpp index 80ee5d0984..04958075db 100644 --- a/indra/llui/llsliderctrl.cpp +++ b/indra/llui/llsliderctrl.cpp @@ -63,7 +63,8 @@ LLSliderCtrl::LLSliderCtrl(const LLSliderCtrl::Params& p) mCanEditText(p.can_edit_text), mPrecision(p.decimal_digits), mTextEnabledColor(p.text_color()), - mTextDisabledColor(p.text_disabled_color()) + mTextDisabledColor(p.text_disabled_color()), + mLabelWidth(p.label_width) { S32 top = getRect().getHeight(); S32 bottom = 0; @@ -86,6 +87,7 @@ LLSliderCtrl::LLSliderCtrl(const LLSliderCtrl::Params& p) params.initial_value(p.label()); mLabelBox = LLUICtrlFactory::create (params); addChild(mLabelBox); + mLabelFont = params.font(); } if (p.show_text && !p.text_width.isProvided()) @@ -186,9 +188,9 @@ BOOL LLSliderCtrl::setLabelArg( const std::string& key, const LLStringExplicit& if (mLabelBox) { res = mLabelBox->setTextArg(key, text); - if (res && mLabelWidth == 0) + if (res && mLabelFont && mLabelWidth == 0) { - S32 label_width = mFont->getWidth(mLabelBox->getText()); + S32 label_width = mLabelFont->getWidth(mLabelBox->getText()); LLRect rect = mLabelBox->getRect(); S32 prev_right = rect.mRight; rect.mRight = rect.mLeft + label_width; -- cgit v1.2.3