Пример #1
0
 public void OnChatLineAdded(ChatLine line)
 {
     ChatLineAdded?.Invoke(this, line);
 }
Пример #2
0
        public void ProcessBufferItem(ChatBufferItem item, bool addToBuffer)
        {
            ChatLineAdded?.Invoke(this, new ChatLineAddedArgs(item));

            lock (SyncChat)
            {
                instance.LogClientMessage("chat.txt", item.From + item.Text);
                if (addToBuffer)
                {
                    textBuffer.Add(item);
                }

                if (showTimestamps)
                {
                    /*
                     * if(fontSettings.ContainsKey("Timestamp"))
                     * {
                     *  //var fontSetting = fontSettings["Timestamp"];
                     *  //TextPrinter.ForeColor = fontSetting.ForeColor;
                     *  //TextPrinter.BackColor = fontSetting.BackColor;
                     *  //TextPrinter.Font = fontSetting.Font;
                     *  TextPrinter.PrintText(item.Timestamp.ToString("[HH:mm] "));
                     * }
                     * else
                     * {
                     *  TextPrinter.ForeColor = SystemColors.GrayText;
                     *  TextPrinter.BackColor = Color.Transparent;
                     *  //TextPrinter.Font = Settings.FontSetting.DefaultFont;
                     *  TextPrinter.PrintText(item.Timestamp.ToString("[HH:mm] "));
                     * }
                     */
                }

                /*
                 * if(fontSettings.ContainsKey("Name"))
                 * {
                 *  var fontSetting = fontSettings["Name"];
                 *  TextPrinter.ForeColor = fontSetting.ForeColor;
                 *  TextPrinter.BackColor = fontSetting.BackColor;
                 *  TextPrinter.Font = fontSetting.Font;
                 * }
                 * else
                 * {
                 *  TextPrinter.ForeColor = SystemColors.WindowText;
                 *  TextPrinter.BackColor = Color.Transparent;
                 *  //TextPrinter.Font = Settings.FontSetting.DefaultFont;
                 * }
                 */

                if (item.Style == ChatBufferTextStyle.Normal && item.ID != UUID.Zero && instance.GlobalSettings["av_name_link"])
                {
                    TextPrinter.InsertLink(item.From, $"secondlife:///app/agent/{item.ID}/about");
                }
                else
                {
                    TextPrinter.PrintText(item.From);
                }

                /*
                 * if(fontSettings.ContainsKey(item.Style.ToString()))
                 * {
                 *  var fontSetting = fontSettings[item.Style.ToString()];
                 *  TextPrinter.ForeColor = fontSetting.ForeColor;
                 *  TextPrinter.BackColor = fontSetting.BackColor;
                 *  TextPrinter.Font = fontSetting.Font;
                 * }
                 * else
                 * {
                 *  TextPrinter.ForeColor = SystemColors.WindowText;
                 *  TextPrinter.BackColor = Color.Transparent;
                 *  //TextPrinter.Font = Settings.FontSetting.DefaultFont;
                 * }
                 */
                TextPrinter.PrintTextLine(item.Text);
            }
        }