private void LogMessage(string Prefix, string Message, LogMessageType MessageType) { var Config = MessageConfig.Single(c => c.MessageType == MessageType); Color StandardColor = Color.FromArgb(239, 239, 239); Font MessageFont = null; if ((IdleManager.IsUserIdle || !IsPoeActive()) && new[] { LogMessageType.Whisper, LogMessageType.Party, LogMessageType.Disconnect }.Contains(MessageType)) { MessageFont = new Font(rtbHistory.Font.FontFamily, rtbHistory.Font.Size + 2, FontStyle.Bold); } if (!String.IsNullOrWhiteSpace(Prefix)) { LogMessagePart(Prefix, Config.ForegroundColor, MessageFont); } if (!String.IsNullOrWhiteSpace(Message)) { LogMessagePart(": " + Message, StandardColor, MessageFont); } LogMessagePart("\r\n", StandardColor, null); }
private void HandleMessage(MessageData Message, bool AssumeInactive) { var Config = MessageConfig.Single(c => c.MessageType == Message.MessageType); if (Config.ExcludeFilter != null && Config.ExcludeFilter.Any(c => Message.Message.Contains(c))) { return; } if (Config.IncludeFilter != null && Config.IncludeFilter.Any() && !Config.IncludeFilter.Any(c => Message.Message.Contains(c))) { return; } if (Config.LogMessage) { LogMessage(Message.Prefix, Message.Message, Message.MessageType); } if (!Config.PlayNotification) { return; } PlayNotificationsForMessage(Message, AssumeInactive); }