summaryrefslogtreecommitdiff
path: root/indra/newview/lloutfitgallery.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'indra/newview/lloutfitgallery.cpp')
-rw-r--r--indra/newview/lloutfitgallery.cpp43
1 files changed, 27 insertions, 16 deletions
diff --git a/indra/newview/lloutfitgallery.cpp b/indra/newview/lloutfitgallery.cpp
index 96be917019..7482890d1e 100644
--- a/indra/newview/lloutfitgallery.cpp
+++ b/indra/newview/lloutfitgallery.cpp
@@ -416,7 +416,8 @@ void LLOutfitGallery::updateRowsIfNeeded()
bool compareGalleryItem(LLOutfitGalleryItem* item1, LLOutfitGalleryItem* item2)
{
- if(gSavedSettings.getBOOL("OutfitGallerySortByName") ||
+ static LLCachedControl<bool> outfit_gallery_sort_by_name(gSavedSettings, "OutfitGallerySortByName");
+ if(outfit_gallery_sort_by_name ||
((item1->isDefaultImage() && item2->isDefaultImage()) || (!item1->isDefaultImage() && !item2->isDefaultImage())))
{
std::string name1 = item1->getItemName();
@@ -738,13 +739,16 @@ void LLOutfitGallery::onFilterSubStringChanged(const std::string& new_string, co
void LLOutfitGallery::onHighlightBaseOutfit(LLUUID base_id, LLUUID prev_id)
{
- if (mOutfitMap[base_id])
+ auto base_it = mOutfitMap.find(base_id);
+ if (base_it != mOutfitMap.end())
{
- mOutfitMap[base_id]->setOutfitWorn(true);
+ base_it->second->setOutfitWorn(true);
}
- if (mOutfitMap[prev_id])
+
+ auto prev_it = mOutfitMap.find(prev_id);
+ if (prev_it != mOutfitMap.end())
{
- mOutfitMap[prev_id]->setOutfitWorn(false);
+ prev_it->second->setOutfitWorn(false);
}
}
@@ -858,13 +862,16 @@ void LLOutfitGallery::onChangeOutfitSelection(LLWearableItemsList* list, const L
{
if (mSelectedOutfitUUID == category_id)
return;
- if (mOutfitMap[mSelectedOutfitUUID])
+
+ auto selected_it = mOutfitMap.find(mSelectedOutfitUUID);
+ if (selected_it != mOutfitMap.end())
{
- mOutfitMap[mSelectedOutfitUUID]->setSelected(false);
+ selected_it->second->setSelected(false);
}
- if (mOutfitMap[category_id])
+ auto category_it = mOutfitMap.find(category_id);
+ if (category_it != mOutfitMap.end())
{
- mOutfitMap[category_id]->setSelected(true);
+ category_it->second->setSelected(true);
}
// mSelectedOutfitUUID will be set in LLOutfitListBase::ChangeOutfitSelection
}
@@ -886,9 +893,10 @@ bool LLOutfitGallery::canWearSelected()
bool LLOutfitGallery::hasDefaultImage(const LLUUID& outfit_cat_id)
{
- if (mOutfitMap[outfit_cat_id])
+ auto outfit_it = mOutfitMap.find(outfit_cat_id);
+ if (outfit_it != mOutfitMap.end())
{
- return mOutfitMap[outfit_cat_id]->isDefaultImage();
+ return outfit_it->second->isDefaultImage();
}
return false;
}
@@ -936,6 +944,7 @@ LLOutfitGalleryItem::~LLOutfitGalleryItem()
bool LLOutfitGalleryItem::postBuild()
{
+ mPreviewIcon = getChild<LLIconCtrl>("preview_outfit");
setDefaultImage();
mOutfitNameText = getChild<LLTextBox>("outfit_name");
@@ -951,10 +960,12 @@ void LLOutfitGalleryItem::draw()
LLPanel::draw();
// Draw border
- LLUIColor border_color = LLUIColorTable::instance().getColor(mSelected ? "OutfitGalleryItemSelected" : "OutfitGalleryItemUnselected", LLColor4::white);
- LLRect border = getChildView("preview_outfit")->getRect();
+ static LLUIColor selected_color = LLUIColorTable::instance().getColor("OutfitGalleryItemSelected", LLColor4::white);
+ static LLUIColor unselected_color = LLUIColorTable::instance().getColor("OutfitGalleryItemUnselected", LLColor4::white);
+ const LLColor4& border_color = mSelected ? selected_color : unselected_color;
+ LLRect border = mPreviewIcon->getRect();
border.mRight = border.mRight + 1;
- gl_rect_2d(border, border_color.get(), false);
+ gl_rect_2d(border, border_color, false);
// If the floater is focused, don't apply its alpha to the texture (STORM-677).
const F32 alpha = getTransparencyType() == TT_ACTIVE ? 1.0f : getCurrentTransparency();
@@ -1110,7 +1121,7 @@ bool LLOutfitGalleryItem::setImageAssetId(LLUUID image_asset_id)
{
mImageAssetId = image_asset_id;
mTexturep = texture;
- getChildView("preview_outfit")->setVisible(false);
+ mPreviewIcon->setVisible(false);
mDefaultImage = false;
mImageUpdatePending = (texture->getDiscardLevel() == -1);
return true;
@@ -1127,7 +1138,7 @@ void LLOutfitGalleryItem::setDefaultImage()
{
mTexturep = NULL;
mImageAssetId.setNull();
- getChildView("preview_outfit")->setVisible(true);
+ mPreviewIcon->setVisible(true);
mDefaultImage = true;
mImageUpdatePending = false;
}