public static void Unregister(string msg, Action <MessageData> act) { if (_messages.ContainsKey(msg)) { if (ContainsAction(msg, act)) { MessagingItem msgItem = GetMessageItem(msg, act); _messages[msg].Remove(msgItem); } } }
public static void Register(string msg, Action <MessageData> act, int order = -1) { if (!_messages.ContainsKey(msg)) { _messages.Add(msg, new List <MessagingItem>()); } if (!ContainsAction(msg, act)) { MessagingItem item = new MessagingItem(act, order); _messages[msg].Add(item); _messages[msg] = _messages[msg].OrderBy(o => o.GetOrder()).ToList(); } }