private void buttonAddOrUpdateMark_Click(object sender, EventArgs e)
{
TimeSpan time;
bool success = TimeSpan.TryParseExact(textBoxTime.Text, TimeFormats.PositiveFormats, null, out time);
if (success) {
if (buttonAddOrUpdateMark.Text == "Update") {
// updating an existing item, find it, remove it, and add the new one
if (listViewMarks.SelectedItems.Count != 1)
Vixen.Sys.VixenSystem.Logging.Error("MarkManager: updating a mark, but there are " + listViewMarks.SelectedItems.Count + " items selected!");
if (listViewMarks.SelectedItems.Count > 0)
_displayedCollection.Marks.Remove((TimeSpan)listViewMarks.SelectedItems[0].Tag);
}
if (_displayedCollection.Marks.Contains(time)) {
System.Media.SystemSounds.Asterisk.Play();
} else {
_displayedCollection.Marks.Add(time);
_displayedCollection.Marks.Sort();
PopulateMarkListFromMarkCollection(_displayedCollection);
UpdateMarkCollectionInList(_displayedCollection);
}
} else {
MessageBox.Show("Error parsing time: please use the format '<minutes>:<seconds>.<milliseconds>'", "Error parsing time");
}
}