diff options
author | angela <angela@lindenlab.com> | 2009-11-17 16:34:06 +0800 |
---|---|---|
committer | angela <angela@lindenlab.com> | 2009-11-17 16:34:06 +0800 |
commit | 2217a677104ffadab8815a0886d66ac264e74792 (patch) | |
tree | 4f4f45bc490756a1a41fb09f39e1cdb50822dc4d /indra/newview/llnearbychat.cpp | |
parent | ccc72757ef23fa7ffba066e5bdaf05e3f8a95cca (diff) | |
parent | 0098bf40ea73078e2164ae55a8fa2f9049d0d4e9 (diff) |
Automated merge with ssh://angela@hg.lindenlab.com/viewer/viewer-2-0/
Diffstat (limited to 'indra/newview/llnearbychat.cpp')
-rw-r--r-- | indra/newview/llnearbychat.cpp | 32 |
1 files changed, 31 insertions, 1 deletions
diff --git a/indra/newview/llnearbychat.cpp b/indra/newview/llnearbychat.cpp index 029019a8dc..cae5c52378 100644 --- a/indra/newview/llnearbychat.cpp +++ b/indra/newview/llnearbychat.cpp @@ -155,7 +155,37 @@ void LLNearbyChat::addMessage(const LLChat& chat) if (!chat.mMuted) { - mChatHistory->appendWidgetMessage(chat); + std::string message = chat.mText; + std::string prefix = message.substr(0, 4); + + if (chat.mChatStyle == CHAT_STYLE_IRC) + { + LLColor4 txt_color = LLUIColorTable::instance().getColor("White"); + LLViewerChat::getChatColor(chat,txt_color); + LLFontGL* fontp = LLViewerChat::getChatFont(); + std::string font_name = LLFontGL::nameFromFont(fontp); + std::string font_size = LLFontGL::sizeFromFont(fontp); + LLStyle::Params append_style_params; + append_style_params.color(txt_color); + append_style_params.readonly_color(txt_color); + append_style_params.font.name(font_name); + append_style_params.font.size(font_size); + if (chat.mFromName.size() > 0) + { + append_style_params.font.style = "ITALIC"; + LLChat add_chat=chat; + add_chat.mText = chat.mFromName + " "; + mChatHistory->appendWidgetMessage(add_chat, append_style_params); + } + + message = message.substr(3); + append_style_params.font.style = "UNDERLINE"; + mChatHistory->appendText(message, FALSE, append_style_params); + } + else + { + mChatHistory->appendWidgetMessage(chat); + } } } |