--HG--
branch : product-engine
master
Alexei Arabadji 2010-03-17 16:31:05 +02:00
commit 00b8bdfe60
3 changed files with 26 additions and 0 deletions

View File

@ -447,6 +447,7 @@ LLChatHistory::LLChatHistory(const LLChatHistory::Params& p)
: LLUICtrl(p),
mMessageHeaderFilename(p.message_header),
mMessageSeparatorFilename(p.message_separator),
mMessagePlaintextSeparatorFilename(p.message_plaintext_separator),
mLeftTextPad(p.left_text_pad),
mRightTextPad(p.right_text_pad),
mLeftWidgetPad(p.left_widget_pad),
@ -534,6 +535,12 @@ LLView* LLChatHistory::getSeparator()
return separator;
}
LLView* LLChatHistory::getPlaintextSeparator()
{
LLPanel* separator = LLUICtrlFactory::getInstance()->createFromFile<LLPanel>(mMessagePlaintextSeparatorFilename, NULL, LLPanel::child_registry_t::instance());
return separator;
}
LLView* LLChatHistory::getHeader(const LLChat& chat,const LLStyle::Params& style_params)
{
LLChatHistoryHeader* header = LLChatHistoryHeader::createInstance(mMessageHeaderFilename);
@ -632,6 +639,15 @@ void LLChatHistory::appendMessage(const LLChat& chat, const LLSD &args, const LL
if (use_plain_text_chat_history)
{
// append plaintext separator
LLView* separator = getPlaintextSeparator();
LLInlineViewSegment::Params p;
p.force_newline = true;
p.left_pad = mLeftWidgetPad;
p.right_pad = mRightWidgetPad;
p.view = separator;
mEditor->appendWidget(p, "\n", false);
mEditor->appendText("[" + chat.mTimeStr + "] ", mEditor->getText().size() != 0, style_params);
if (utf8str_trim(chat.mFromName).size() != 0)

View File

@ -47,6 +47,8 @@ class LLChatHistory : public LLUICtrl
Optional<std::string> message_header;
//Message separator filename
Optional<std::string> message_separator;
//Message plaintext separator filename
Optional<std::string> message_plaintext_separator;
//Text left padding from the scroll rect
Optional<S32> left_text_pad;
//Text right padding from the scroll rect
@ -69,6 +71,7 @@ class LLChatHistory : public LLUICtrl
Params()
: message_header("message_header"),
message_separator("message_separator"),
message_plaintext_separator("message_plaintext_separator"),
left_text_pad("left_text_pad"),
right_text_pad("right_text_pad"),
left_widget_pad("left_widget_pad"),
@ -96,6 +99,11 @@ class LLChatHistory : public LLUICtrl
* @return pointer to LLView separator object.
*/
LLView* getSeparator();
/**
* Builds a message plaintext separator.
* @return pointer to LLView separator object.
*/
LLView* getPlaintextSeparator();
/**
* Builds a message header.
* @return pointer to LLView header object.
@ -133,6 +141,7 @@ class LLChatHistory : public LLUICtrl
std::string mMessageHeaderFilename;
std::string mMessageSeparatorFilename;
std::string mMessagePlaintextSeparatorFilename;
S32 mLeftTextPad;
S32 mRightTextPad;

View File

@ -2,6 +2,7 @@
<chat_history
message_header="panel_chat_header.xml"
message_separator="panel_chat_separator.xml"
message_plaintext_separator="panel_chat_plaintext_separator.xml"
left_text_pad="10"
right_text_pad="15"
left_widget_pad="0"