summaryrefslogtreecommitdiff
path: root/indra
diff options
context:
space:
mode:
authorAlexei Arabadji <aarabadji@productengine.com>2010-03-17 16:27:35 +0200
committerAlexei Arabadji <aarabadji@productengine.com>2010-03-17 16:27:35 +0200
commit31370e1aaea10543be81d1707c28dc4c2559baac (patch)
treeb50ef12cc0bd2a8b6b47a670102a857be4aac84e /indra
parenta85497f598d599c6de0cc0d79170aca0728c85b1 (diff)
fixed EXT-6373 “Consecutive offer messages are unreadable in the IM log”,
added spacer panel for IM chat plaintext mode; --HG-- branch : product-engine
Diffstat (limited to 'indra')
-rw-r--r--indra/newview/llchathistory.cpp16
-rw-r--r--indra/newview/llchathistory.h9
-rw-r--r--indra/newview/skins/default/xui/en/widgets/chat_history.xml1
3 files changed, 26 insertions, 0 deletions
diff --git a/indra/newview/llchathistory.cpp b/indra/newview/llchathistory.cpp
index 911ac9c485..b497dde9dd 100644
--- a/indra/newview/llchathistory.cpp
+++ b/indra/newview/llchathistory.cpp
@@ -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)
diff --git a/indra/newview/llchathistory.h b/indra/newview/llchathistory.h
index 950b32861b..dfe5ea98e6 100644
--- a/indra/newview/llchathistory.h
+++ b/indra/newview/llchathistory.h
@@ -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"),
@@ -97,6 +100,11 @@ class LLChatHistory : public LLUICtrl
*/
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;
diff --git a/indra/newview/skins/default/xui/en/widgets/chat_history.xml b/indra/newview/skins/default/xui/en/widgets/chat_history.xml
index ef885e8045..aa3ea736b8 100644
--- a/indra/newview/skins/default/xui/en/widgets/chat_history.xml
+++ b/indra/newview/skins/default/xui/en/widgets/chat_history.xml
@@ -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"