Esempio n. 1
0
        /// <summary>
        /// Snooze systray.
        /// </summary>
        /// <param name="menuItem"></param>
        /// <param name="timespan"></param>
        /// <returns>True if snoozed else False</returns>
        public bool SnoozeFor(IToolStripMenuItem menuItem)
        {
            if (ToolStripMenuItems == null)
            {
                throw new InvalidOperationException("ToolStripMenuItems should be initialized before calling this method");
            }

            IToolStripMenuItem exists = ToolStripMenuItems.FirstOrDefault(m => m == menuItem);

            if (exists == null)
            {
                throw new InvalidOperationException("Argument not found in ToolStripMenuItems");
            }

            if (menuItem.IsSnoozed)
            {
                AbortSnooze();
                menuItem.IsSnoozed = false;
                return(false);
            }
            else
            {
                IToolStripMenuItem oldSnoozed = ToolStripMenuItems.FirstOrDefault(m => m.IsSnoozed == true);

                if (oldSnoozed != null)
                {
                    AbortSnooze();
                    oldSnoozed.IsSnoozed = false;
                }

                menuItem.IsSnoozed = true;
                Snooze(menuItem.Duration);
                return(true);
            }
        }
Esempio n. 2
0
 void Snooze_OnSnoozeCompletion()
 {
     // This removes snoozed flag
     ToolStripMenuItems.FirstOrDefault(m => m.IsSnoozed == true).IsSnoozed = false;
 }