Esempio n. 1
0
        //Mutex th = new Mutex();

        //List<MessageForm> messages = new List<MessageForm>();


        //private void startNew()
        //{
        //    main_timer.Stop();

        //    if (tlp_main.Controls.Count == 0) return;

        //    var arr = GetAlarmArray()
        //                    .Where(f => f.IsEdited == false);
        //    if (arr.Count() == 0) return;

        //    DateTime t = arr.Min(f => f.StartDate);
        //    int tmp = (int)(t - DateTime.Now).TotalMilliseconds;
        //    if (tmp <= 0) tmp = 100;
        //    main_timer.Interval = tmp;
        //    main_timer.Start();
        //}

        //private IEnumerable<AlarmRow> GetAlarmArray()
        //{
        //    List<AlarmRow> arr = new List<AlarmRow>();
        //    foreach (var element in tlp_main.Controls)
        //        arr.Add((AlarmRow)element);

        //    return arr;
        //}


        //private void Main_timer_Tick(object sender, EventArgs e)
        //{
        //    th.WaitOne();
        //    main_timer.Stop();
        //    List<AlarmRow> arr = new List<AlarmRow>();

        //    var tarr = GetAlarmArray()
        //                        .Where(f => f.IsEdited == false);
        //    if (tarr.Count() == 0) {
        //        th.ReleaseMutex();
        //        return;
        //    }

        //    foreach (var item in tarr)
        //    {
        //        var tmp = DateTime.Now;

        //        if (item.StartDate <= tmp)
        //        {
        //            arr.Add(item);
        //        }
        //    }

        //    foreach (var item in arr)
        //    {
        //        tlp_main.Controls.Remove(item);
        //    }

        //    foreach (var item in arr)
        //    {
        //        var box = new MessageForm(item.Message, closeDelegate);
        //        messages.Add(box);
        //        box.Show();

        //    }
        //    th.ReleaseMutex();

        //    startNew();
        //}

        //void closeDelegate(MessageForm sender)
        //{
        //    messages.Remove(sender);
        //}

        //protected override void OnClosing(CancelEventArgs e)
        //{
        //    base.OnClosing(e);

        //    main_timer.Stop();
        //    foreach (var element in messages.ToArray())
        //        element.Close();
        //}

        private void btn_add_Click(object sender, EventArgs e)
        {
            var element = new AlarmRow();

            element.OnDelete = OnItemDelete;
            element.OnEdit   = OnItemEdit;

            tlp_main.Controls.Add(element);
            timer.AddTask(element);
        }
Esempio n. 2
0
 /// <summary>
 /// Graphically remove an alarm row from the gui
 /// </summary>
 /// <param name="row">
 /// The row to remove from the GUI
 /// </param>
 public void RemoveAlarmRow(AlarmRow row, bool fadeBeforeRemoving)
 {
     if (fadeBeforeRemoving)
     {
         fadeTheseWithTimer.Add(row);
         fadeTimer.IsEnabled = true;
     }
     else
     {
         row.RemoveFromGUI();
     }
 }
Esempio n. 3
0
 public void RemoveTask(AlarmRow element)
 {
     events.Remove(element);
     DeleteDelegate(element);
 }
Esempio n. 4
0
 public void AddTask(AlarmRow element)
 {
     events.Add(element);
 }
Esempio n. 5
0
 private void Timer_DeleteDelegate(AlarmRow e)
 {
     tlp_main.Controls.Remove(e);
 }
Esempio n. 6
0
 void OnItemEdit(AlarmRow element)
 {
     timer.UpdateAll();
 }
Esempio n. 7
0
 void OnItemDelete(AlarmRow element)
 {
     tlp_main.Controls.Remove(element);
     timer.RemoveTask(element);
     timer.UpdateAll();
 }
Esempio n. 8
0
 public void RemoveAlarmRowImmediately(AlarmRow row)
 {
     row.RemoveFromGUI();
 }
Esempio n. 9
0
 /// <summary>
 /// Graphically add an alarm row to the gui
 /// </summary>
 /// <param name="row">
 /// The alarm row to add to the GUI
 /// </param>
 public void AddAlarmRow(AlarmRow row)
 {
     row.AddToGUI(this.AlarmPanel);
 }
Esempio n. 10
0
 /// <summary>
 /// Graphically remove an alarm row from the gui
 /// </summary>
 /// <param name="row">
 /// The row to remove from the GUI
 /// </param>
 public void RemoveAlarmRow(AlarmRow row)
 {
     row.RemoveFromGUI();
 }