diff options
-rwxr-xr-x | indra/llui/llfolderviewitem.cpp | 2 | ||||
-rwxr-xr-x | indra/newview/llconversationview.cpp | 23 | ||||
-rwxr-xr-x | indra/newview/llconversationview.h | 5 | ||||
-rwxr-xr-x | indra/newview/llimfloatercontainer.cpp | 3 | ||||
-rwxr-xr-x | indra/newview/skins/default/xui/en/widgets/conversation_view_participant.xml | 11 |
5 files changed, 31 insertions, 13 deletions
diff --git a/indra/llui/llfolderviewitem.cpp b/indra/llui/llfolderviewitem.cpp index c46af27a04..155a605c3b 100755 --- a/indra/llui/llfolderviewitem.cpp +++ b/indra/llui/llfolderviewitem.cpp @@ -771,7 +771,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, &right_x, TRUE); + S32_MAX, getRect().getWidth() - (S32) text_left - TEXT_PAD_RIGHT, &right_x, TRUE); //--------------------------------------------------------------------------------// // Draw label suffix diff --git a/indra/newview/llconversationview.cpp b/indra/newview/llconversationview.cpp index 9fb4b4f0dc..7b1c9ef912 100755 --- a/indra/newview/llconversationview.cpp +++ b/indra/newview/llconversationview.cpp @@ -138,10 +138,12 @@ LLConversationViewParticipant::LLConversationViewParticipant( const LLConversati void LLConversationViewParticipant::initFromParams(const LLConversationViewParticipant::Params& params) { LLButton::Params info_button_params(params.info_button()); + applyXUILayout(info_button_params, this); LLButton * button = LLUICtrlFactory::create<LLButton>(info_button_params); addChild(button); LLOutputMonitorCtrl::Params output_monitor_params(params.output_monitor()); + applyXUILayout(output_monitor_params, this); LLOutputMonitorCtrl * outputMonitor = LLUICtrlFactory::create<LLOutputMonitorCtrl>(output_monitor_params); addChild(outputMonitor); } @@ -150,9 +152,10 @@ BOOL LLConversationViewParticipant::postBuild() { mInfoBtn = getChild<LLButton>("info_btn"); mInfoBtn->setClickedCallback(boost::bind(&LLConversationViewParticipant::onInfoBtnClick, this)); - + mInfoBtn->setVisible(false); + mSpeakingIndicator = getChild<LLOutputMonitorCtrl>("speaking_indicator"); - + LLFolderViewItem::postBuild(); return TRUE; } @@ -179,8 +182,8 @@ void LLConversationViewParticipant::addToFolder(LLFolderViewFolder* folder) if(vmi) { mSpeakingIndicator->setSpeakerId(mUUID, - vmi->getUUID()); //set the session id -} + vmi->getUUID()); //set the session id + } } void LLConversationViewParticipant::onInfoBtnClick() @@ -188,5 +191,17 @@ void LLConversationViewParticipant::onInfoBtnClick() LLFloaterReg::showInstance("inspect_avatar", LLSD().with("avatar_id", mUUID)); } +void LLConversationViewParticipant::onMouseEnter(S32 x, S32 y, MASK mask) +{ + mInfoBtn->setVisible(true); + LLFolderViewItem::onMouseEnter(x, y, mask); +} + +void LLConversationViewParticipant::onMouseLeave(S32 x, S32 y, MASK mask) +{ + mInfoBtn->setVisible(false); + LLFolderViewItem::onMouseEnter(x, y, mask); +} + // EOF diff --git a/indra/newview/llconversationview.h b/indra/newview/llconversationview.h index 2ac6c999d6..0dcf6542a3 100755 --- a/indra/newview/llconversationview.h +++ b/indra/newview/llconversationview.h @@ -92,7 +92,10 @@ public: bool hasSameValue(const LLUUID& uuid) { return (uuid == mUUID); } virtual void refresh(); void addToFolder(LLFolderViewFolder* folder); - + + void onMouseEnter(S32 x, S32 y, MASK mask); + void onMouseLeave(S32 x, S32 y, MASK mask); + protected: friend class LLUICtrlFactory; LLConversationViewParticipant( const Params& p ); diff --git a/indra/newview/llimfloatercontainer.cpp b/indra/newview/llimfloatercontainer.cpp index faca92e662..3243fd48de 100755 --- a/indra/newview/llimfloatercontainer.cpp +++ b/indra/newview/llimfloatercontainer.cpp @@ -703,6 +703,7 @@ LLConversationViewSession* LLIMFloaterContainer::createConversationItemWidget(LL LLConversationViewParticipant* LLIMFloaterContainer::createConversationViewParticipant(LLConversationItem* item) { LLConversationViewParticipant::Params params; + LLRect panel_rect = mConversationsListPanel->getRect(); params.name = item->getDisplayName(); //params.icon = bridge->getIcon(); @@ -710,7 +711,7 @@ LLConversationViewParticipant* LLIMFloaterContainer::createConversationViewParti //params.creation_date = bridge->getCreationDate(); params.root = mConversationsRoot; params.listener = item; - params.rect = LLRect (0, 0, 0, 0); + params.rect = LLRect (0, 16, panel_rect.getWidth(), 0); params.tool_tip = params.name; params.participant_id = item->getUUID(); diff --git a/indra/newview/skins/default/xui/en/widgets/conversation_view_participant.xml b/indra/newview/skins/default/xui/en/widgets/conversation_view_participant.xml index 0b5c1b9511..60015576b5 100755 --- a/indra/newview/skins/default/xui/en/widgets/conversation_view_participant.xml +++ b/indra/newview/skins/default/xui/en/widgets/conversation_view_participant.xml @@ -9,23 +9,22 @@ follows="left|top|right" > <info_button + follows="right" + auto_update="true" height="16" image_pressed="Info_Press" image_unselected="Info_Over" layout="topleft" - left_pad="3" - right="200" + right="-28" name="info_btn" - tab_stop="false" - top_delta="0" width="16" /> <output_monitor + follows="right" auto_update="true" draw_border="false" height="16" layout="topleft" - left_pad="5" - right="225" + right="-3" mouse_opaque="true" name="speaking_indicator" visible="true" |