コード例 #1
0
ファイル: Notifications.cs プロジェクト: Hahahamemes/Ports
        /// <summary>
        ///     Adds the specified notification. If the displayer is null it will use the default displayer.
        /// </summary>
        /// <param name="notification">The notification.</param>
        /// <param name="priority"></param>
        /// <param name="displayer">The displayer.</param>
        public void Add(Notification notification, int priority = 0, Displayer <Notification> displayer = null)
        {
            if (displayer == null)
            {
                var defaultDisplayer = Displayers.FirstOrDefault();
                defaultDisplayer?.Add(notification);
                return;
            }

            if (!Displayers.Any(x => x.Equals(displayer)))
            {
                Displayers.Add(displayer);
                displayer.Add(notification);
                return;
            }

            var newDisplayer = Displayers.FirstOrDefault(x => x.Equals(displayer));

            newDisplayer?.Add(notification);
        }