From 1a3b463af3b3b0668505f406162a7e2d3b557ee7 Mon Sep 17 00:00:00 2001 From: Andrew Dyukov Date: Wed, 30 Jun 2010 20:02:51 +0300 Subject: EXT-7737 ADDITIONAL FIX Added changing of color to emphasis for selected outfit accordion header. - Added method to accordion which allows to set color of its header's title and used it when highliting selected outfit. - Set alias for emphasis color in colors.xml to let selected outfit color be easily changed via xml in case such decision is made(because leaving it green doesn't seem a very good idea). - Also added alias for accordion header text color to avoid breaking of this fix if in header_text_color from accordion_tab.xml. --HG-- branch : product-engine --- indra/llui/llaccordionctrltab.cpp | 19 +++++++++++++++++++ indra/llui/llaccordionctrltab.h | 3 +++ indra/newview/lloutfitslist.cpp | 2 ++ indra/newview/skins/default/colors.xml | 6 ++++++ .../skins/default/xui/en/widgets/accordion_tab.xml | 2 +- 5 files changed, 31 insertions(+), 1 deletion(-) diff --git a/indra/llui/llaccordionctrltab.cpp b/indra/llui/llaccordionctrltab.cpp index 09cb15d7a8..584d45612e 100644 --- a/indra/llui/llaccordionctrltab.cpp +++ b/indra/llui/llaccordionctrltab.cpp @@ -78,6 +78,8 @@ public: void setTitleFontStyle(std::string style); + void setTitleColor(LLUIColor); + void setSelected(bool is_selected) { mIsSelected = is_selected; } virtual void onMouseEnter(S32 x, S32 y, MASK mask); @@ -192,6 +194,14 @@ void LLAccordionCtrlTab::LLAccordionCtrlTabHeader::setTitleFontStyle(std::string } } +void LLAccordionCtrlTab::LLAccordionCtrlTabHeader::setTitleColor(LLUIColor color) +{ + if(mHeaderTextbox) + { + mHeaderTextbox->setColor(color); + } +} + void LLAccordionCtrlTab::LLAccordionCtrlTabHeader::draw() { S32 width = getRect().getWidth(); @@ -520,6 +530,15 @@ void LLAccordionCtrlTab::setTitleFontStyle(std::string style) } } +void LLAccordionCtrlTab::setTitleColor(LLUIColor color) +{ + LLAccordionCtrlTabHeader* header = findChild(DD_HEADER_NAME); + if (header) + { + header->setTitleColor(color); + } +} + boost::signals2::connection LLAccordionCtrlTab::setFocusReceivedCallback(const focus_signal_t::slot_type& cb) { LLAccordionCtrlTabHeader* header = findChild(DD_HEADER_NAME); diff --git a/indra/llui/llaccordionctrltab.h b/indra/llui/llaccordionctrltab.h index e17ecc5319..5646a355d0 100644 --- a/indra/llui/llaccordionctrltab.h +++ b/indra/llui/llaccordionctrltab.h @@ -124,6 +124,9 @@ public: // Set text font style in LLAccordionCtrlTabHeader void setTitleFontStyle(std::string style); + // Set text color in LLAccordionCtrlTabHeader + void setTitleColor(LLUIColor color); + boost::signals2::connection setFocusReceivedCallback(const focus_signal_t::slot_type& cb); boost::signals2::connection setFocusLostCallback(const focus_signal_t::slot_type& cb); diff --git a/indra/newview/lloutfitslist.cpp b/indra/newview/lloutfitslist.cpp index 075cfa0543..23c7e64cce 100644 --- a/indra/newview/lloutfitslist.cpp +++ b/indra/newview/lloutfitslist.cpp @@ -548,6 +548,7 @@ void LLOutfitsList::highlightBaseOutfit() if (mOutfitsMap[mHighlightedOutfitUUID]) { mOutfitsMap[mHighlightedOutfitUUID]->setTitleFontStyle("NORMAL"); + mOutfitsMap[mHighlightedOutfitUUID]->setTitleColor(LLUIColorTable::instance().getColor("AccordionHeaderTextColor")); } mHighlightedOutfitUUID = base_id; @@ -555,6 +556,7 @@ void LLOutfitsList::highlightBaseOutfit() if (mOutfitsMap[base_id]) { mOutfitsMap[base_id]->setTitleFontStyle("BOLD"); + mOutfitsMap[base_id]->setTitleColor(LLUIColorTable::instance().getColor("SelectedOutfitTextColor")); } } diff --git a/indra/newview/skins/default/colors.xml b/indra/newview/skins/default/colors.xml index e8a893e31b..2188c71ff9 100644 --- a/indra/newview/skins/default/colors.xml +++ b/indra/newview/skins/default/colors.xml @@ -96,6 +96,9 @@ + @@ -645,6 +648,9 @@ + diff --git a/indra/newview/skins/default/xui/en/widgets/accordion_tab.xml b/indra/newview/skins/default/xui/en/widgets/accordion_tab.xml index 102dc0c16d..6f68c99021 100644 --- a/indra/newview/skins/default/xui/en/widgets/accordion_tab.xml +++ b/indra/newview/skins/default/xui/en/widgets/accordion_tab.xml @@ -9,6 +9,6 @@ header_image_over="Accordion_Over" header_image_pressed="Accordion_Press" header_image_focused="Accordion_Selected" - header_text_color="LtGray" + header_text_color="AccordionHeaderTextColor" font="SansSerif" /> -- cgit v1.3