public TextLogEntry CreateTextLogEntry(ChannelSettings channel, uint senderId, List <Payload> senderPayLoads, List <Payload> payloads) { ChatText text = new ChatText { Channel = channel, SenderId = senderId, Timestamp = DateTime.Now, IncludePrefix = true, Sender = null }; if (senderPayLoads != null) { var senderInfo = ProcessPayloads(senderPayLoads, channel); if (senderInfo.Count() > 0) { var sender = senderInfo[0]; switch (channel.Name) { case "StandardEmote": break; case "CustomEmote": text.Sender = sender; break; case "TellOutgoing": sender.Text = $">> {sender.Text}: "; text.Sender = sender; break; case "TellIncoming": sender.Text = $"{sender.Text} >> "; text.Sender = sender; break; case "Party": sender.Text = $"({sender.Text}) "; text.Sender = sender; break; default: sender.Text = $"{sender.Text}: "; text.Sender = sender; break; } } } else { text.IncludePrefix = false; } text.Text = ProcessPayloads(payloads, channel); TextLogEntry textLogEntry = new TextLogEntry(text); return(textLogEntry); }
public void AddLine(TextLogEntry line) { if (line.Text == null) { return; } if (CheckLineFilter(string.Join("", line.Text.Select(x => x.Text)))) { NeedsUpdateLogs.Add(line); ScrollOnce = AutoScroll; } }