static void Main(string[] args) { List <Reminder> reminders = new List <Reminder>(); int reminderItem = 0; NumberOfReminders numberOfReminders = new NumberOfReminders(); bool proceed = true; do { while (proceed) { Dialogue dialogue = new Dialogue(reminderItem); Reminder reminder = dialogue.StartDialogue(numberOfReminders); proceed = dialogue.CheckForMore(); reminders.Add(reminder); Thread reminderThread = new Thread(new ThreadStart(reminders[reminderItem].SetReminder)); reminderThread.Start(); reminderItem++; numberOfReminders.number++; } } while (numberOfReminders.number > 0); }
public Reminder StartDialogue(NumberOfReminders numberOfReminders) { ReminderInfo reminderInfo = new ReminderInfo(); Console.WriteLine(introduction); reminderInfo.Reminder = Console.ReadLine(); Console.WriteLine($"How long should I wait to remind you about it?"); Console.WriteLine("Hours?"); reminderInfo.Hours = Int32.Parse(Console.ReadLine()); Console.WriteLine("Minutes?"); reminderInfo.Minutes = Int32.Parse(Console.ReadLine()); Console.WriteLine("Seconds?"); reminderInfo.Seconds = Int32.Parse(Console.ReadLine()); Console.WriteLine($"Excellent! I'll remind you in {reminderInfo.Hours} hours, {reminderInfo.Minutes} minutes, and {reminderInfo.Seconds} seconds!"); reminder = new Reminder(reminderInfo, numberOfReminders); return(reminder); }
public Reminder(ReminderInfo reminderInfo, NumberOfReminders numberOfReminders) { this.text = reminderInfo.Reminder; this.interval = new TimeSpan(reminderInfo.Hours, reminderInfo.Minutes, reminderInfo.Seconds); this.numberOfReminders = numberOfReminders; }