示例#1
0
 public IdleData(IdleReason reason)
 {
     Reason       = reason;
     RestartAfter = reason == IdleReason.JustStarted
         ? TimeSpan.FromSeconds(1)
         : TimeSpan.FromSeconds(60);
 }
示例#2
0
        public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer)
        {
            var        enumString = (string)reader.Value;
            IdleReason idleReason = IdleReason.NONE;

            Enum.TryParse <IdleReason>(enumString, out idleReason);

            return(idleReason);
        }
示例#3
0
        internal void IdleStart(IdleReason reason)
        {
            if (idleReason == IdleReason.NoIdle)
            {
                System.Windows.Forms.Application.Idle += new EventHandler(application_Idle);
            }

            idleReason |= reason;
        }
示例#4
0
        internal void IdleStop(IdleReason reason)
        {
            idleReason &= (~reason);

            if (idleReason == IdleReason.NoIdle)
            {
                System.Windows.Forms.Application.Idle -= new EventHandler(application_Idle);
            }
        }
示例#5
0
        /// <summary>
        /// Обработчик события изменения текущего элемента в источнике данных причины простоя
        /// </summary>
        private void idleReasonBindingSource_CurrentChanged(object sender, EventArgs e)
        {
            var selectedItem = ((BindingSource)sender).Current as IdleReason;

            if (selectedItem != null)
            {
                SelectedIdleReason = selectedItem;
            }
        }
        public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer)
        {
            if (reader == null)
            {
                throw new ArgumentNullException(nameof(reader));
            }
            var        enumString = (string)reader.Value;
            IdleReason idleReason = IdleReason.NONE;

            if (Enum.TryParse <IdleReason>(enumString, out idleReason))
            {
                return(idleReason);
            }
            else
            {
                throw new ArgumentOutOfRangeException(nameof(reader));
            }
        }
示例#7
0
 public void IdleReset()
 {
     idleReason = IdleReason.NoIdle;
     System.Windows.Forms.Application.Idle -= new EventHandler(application_Idle);
 }
示例#8
0
 public static IdleData FromReason(IdleReason reason) => new(reason);
示例#9
0
        internal void IdleStop(IdleReason reason)
        {
            idleReason &= (~reason);

            if (idleReason == IdleReason.NoIdle)
                System.Windows.Forms.Application.Idle -= new EventHandler(application_Idle);
        }
示例#10
0
        internal void IdleStart(IdleReason reason)
        {
            if (idleReason == IdleReason.NoIdle)
                System.Windows.Forms.Application.Idle += new EventHandler(application_Idle);

            idleReason |= reason;
        }
示例#11
0
 public void IdleReset()
 {
     idleReason = IdleReason.NoIdle;
     System.Windows.Forms.Application.Idle -= new EventHandler(application_Idle);
 }