summaryrefslogtreecommitdiff
path: root/indra/llui
diff options
context:
space:
mode:
authorGilbert Gonzales <gilbert@lindenlab.com>2012-09-13 19:10:28 -0700
committerGilbert Gonzales <gilbert@lindenlab.com>2012-09-13 19:10:28 -0700
commitc6863d18d7c981756c57bbcd52baa06af00d1551 (patch)
treed968114a72319e178fcab9687f16fbc8fe9d8a2e /indra/llui
parent6b597ad40dcec2f494988eddf76376ae439c1059 (diff)
CHUI-283: Now upon the information icon and speaker icon do not overlap the username text. Instead the username text will be truncated with an ellipse to prevent the overlap. Also did a code cleanup.
Diffstat (limited to 'indra/llui')
-rwxr-xr-xindra/llui/llfolderviewitem.cpp31
-rwxr-xr-xindra/llui/llfolderviewitem.h4
2 files changed, 19 insertions, 16 deletions
diff --git a/indra/llui/llfolderviewitem.cpp b/indra/llui/llfolderviewitem.cpp
index 155a605c3b..7ca02b726a 100755
--- a/indra/llui/llfolderviewitem.cpp
+++ b/indra/llui/llfolderviewitem.cpp
@@ -98,6 +98,7 @@ LLFolderViewItem::LLFolderViewItem(const LLFolderViewItem::Params& p)
: LLView(p),
mLabelWidth(0),
mLabelWidthDirty(false),
+ mLabelPaddingRight(DEFAULT_TEXT_PADDING_RIGHT),
mParentFolder( NULL ),
mIsSelected( FALSE ),
mIsCurSelection( FALSE ),
@@ -291,7 +292,7 @@ S32 LLFolderViewItem::arrange( S32* width, S32* height )
: 0;
if (mLabelWidthDirty)
{
- mLabelWidth = ARROW_SIZE + TEXT_PAD + ICON_WIDTH + ICON_PAD + getLabelFontForStyle(mLabelStyle)->getWidth(mLabel) + getLabelFontForStyle(mLabelStyle)->getWidth(mLabelSuffix) + TEXT_PAD_RIGHT;
+ mLabelWidth = ARROW_SIZE + TEXT_PAD + ICON_WIDTH + ICON_PAD + getLabelFontForStyle(mLabelStyle)->getWidth(mLabel) + getLabelFontForStyle(mLabelStyle)->getWidth(mLabelSuffix) + mLabelPaddingRight;
mLabelWidthDirty = false;
}
@@ -610,13 +611,13 @@ void LLFolderViewItem::draw()
static LLUIColor sMouseOverColor = LLUIColorTable::instance().getColor("InventoryMouseOverColor", DEFAULT_WHITE);
- getViewModelItem()->update();
-
const Params& default_params = LLUICtrlFactory::getDefaultParams<LLFolderViewItem>();
const S32 TOP_PAD = default_params.item_top_pad;
const S32 FOCUS_LEFT = 1;
const LLFontGL* font = getLabelFontForStyle(mLabelStyle);
+ getViewModelItem()->update();
+
//--------------------------------------------------------------------------------//
// Draw open folder arrow
//
@@ -771,7 +772,7 @@ void LLFolderViewItem::draw()
//
font->renderUTF8(mLabel, 0, text_left, y, color,
LLFontGL::LEFT, LLFontGL::BOTTOM, LLFontGL::NORMAL, LLFontGL::NO_SHADOW,
- S32_MAX, getRect().getWidth() - (S32) text_left - TEXT_PAD_RIGHT, &right_x, TRUE);
+ S32_MAX, getRect().getWidth() - (S32) text_left - mLabelPaddingRight, &right_x, TRUE);
//--------------------------------------------------------------------------------//
// Draw label suffix
@@ -786,18 +787,18 @@ void LLFolderViewItem::draw()
//--------------------------------------------------------------------------------//
// Highlight string match
//
- if (filter_string_length > 0)
- {
- F32 match_string_left = text_left + font->getWidthF32(combined_string, 0, mViewModelItem->getFilterStringOffset());
- F32 yy = (F32)getRect().getHeight() - font->getLineHeight() - (F32)TEXT_PAD - (F32)TOP_PAD;
- font->renderUTF8( combined_string, mViewModelItem->getFilterStringOffset(), match_string_left, yy,
- sFilterTextColor, LLFontGL::LEFT, LLFontGL::BOTTOM, LLFontGL::NORMAL, LLFontGL::NO_SHADOW,
- filter_string_length, S32_MAX, &right_x, FALSE );
- }
+ if (filter_string_length > 0)
+ {
+ F32 match_string_left = text_left + font->getWidthF32(combined_string, 0, mViewModelItem->getFilterStringOffset());
+ F32 yy = (F32)getRect().getHeight() - font->getLineHeight() - (F32)TEXT_PAD - (F32)TOP_PAD;
+ font->renderUTF8( combined_string, mViewModelItem->getFilterStringOffset(), match_string_left, yy,
+ sFilterTextColor, LLFontGL::LEFT, LLFontGL::BOTTOM, LLFontGL::NORMAL, LLFontGL::NO_SHADOW,
+ filter_string_length, S32_MAX, &right_x, FALSE );
+ }
-
- LLView::draw();
- }
+
+ LLView::draw();
+}
const LLFolderViewModelInterface* LLFolderViewItem::getFolderViewModel( void ) const
{
diff --git a/indra/llui/llfolderviewitem.h b/indra/llui/llfolderviewitem.h
index 766d9b3fe3..fab24e52d1 100755
--- a/indra/llui/llfolderviewitem.h
+++ b/indra/llui/llfolderviewitem.h
@@ -68,7 +68,7 @@ public:
ICON_PAD = 2,
ICON_WIDTH = 16,
TEXT_PAD = 1,
- TEXT_PAD_RIGHT = 4,
+ DEFAULT_TEXT_PADDING_RIGHT = 4,
ARROW_SIZE = 12,
MAX_FOLDER_ITEM_OVERLAP = 2;
@@ -85,6 +85,7 @@ protected:
std::string mLabel;
S32 mLabelWidth;
bool mLabelWidthDirty;
+ S32 mLabelPaddingRight;
LLFolderViewFolder* mParentFolder;
LLFolderViewModelItem* mViewModelItem;
LLFontGL::StyleFlags mLabelStyle;
@@ -243,6 +244,7 @@ public:
private:
static std::map<U8, LLFontGL*> sFonts; // map of styles to fonts
+
};
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~