NetIde.Core.Services.NotificationManager.NiNotificationManager.UpdateButton C# (CSharp) Method

UpdateButton() private method

private UpdateButton ( ) : void
return void
        private void UpdateButton()
        {
            if (_items.Count == 0)
            {
                _button.BackColor = null;
                _button.Image = Resources.NotificationsInactive;
                _button.ForeColor = SystemColors.ControlDark;
            }
            else
            {
                var priority = NiNotificationItemPriority.Normal;

                foreach (var item in _items)
                {
                    priority = (NiNotificationItemPriority)Math.Max((int)priority, (int)item.Priority);
                }

                _button.ForeColor = null;

                switch (priority)
                {
                    case NiNotificationItemPriority.Informational:
                        _button.BackColor = NotificationsControl.WarningColor;
                        break;

                    case NiNotificationItemPriority.Critical:
                        _button.BackColor = NotificationsControl.ErrorColor;
                        _button.ForeColor = Color.White;
                        break;

                    default:
                        _button.BackColor = null;
                        break;
                }

                _button.Image = Resources.NotificationsActive;
            }

            ErrorUtil.ThrowOnFailure(_titleBarButtonManager.UpdateButton(_buttonCookie, _button));
        }