Exemple #1
0
        /// <summary>
        /// Cancel native alarm
        /// and then remove AlarmRecord from ObservableAlarmList and AlarmRecordDictionary
        /// </summary>
        /// <param name="alarm">AlarmRecord</param>
        public static void DeleteAlarm(AlarmRecord alarm)
        {
            Console.WriteLine("DeleteAlarm:" + alarm.ToString());
            // Cancel the native alarm
            AlarmNativeHandler.DeleteAlarm(alarm);
            string UID = alarm.GetUniqueIdentifier();

            // Delete alarm from dictionary
            AlarmModel.AlarmRecordDictionary.Remove(UID);
            // Delete alarm from List
            for (int i = AlarmModel.ObservableAlarmList.Count - 1; i >= 0; i--)
            {
                if (AlarmModel.ObservableAlarmList[i].GetUniqueIdentifier() == UID)
                {
                    ObservableAlarmList.RemoveAt(i);
                    break;
                }
            }

            AlarmModel.SaveDictionary();
        }
Exemple #2
0
 /// <summary>
 /// AlarmModel constructor
 /// </summary>
 public AlarmModel()
 {
     ObservableAlarmList   = new ObservableCollection <AlarmRecord>();
     AlarmRecordDictionary = AlarmPersistentHandler.DeserializeAlarmRecord();
     BindableAlarmRecord   = new AlarmRecord();
     if (AlarmRecordDictionary == null)
     {
         AlarmRecordDictionary = new Dictionary <string, AlarmRecord>();
     }
     else
     {
         foreach (var alarmItem in AlarmRecordDictionary)
         {
             Console.WriteLine("alarmItem key:" + alarmItem.Key);
             // Key is DateCreated
             var keyString = alarmItem.Key;
             // Retrieve alarm record
             AlarmRecord retrieved = alarmItem.Value;
             Console.WriteLine("retrieved:" + retrieved.ToString());
             // Add the retrieved alarm to list for AlarmListUI
             ObservableAlarmList.Add(retrieved);
         }
     }
 }