private void OnNewSpellButtonClick(object sender, EventArgs e) { if (DataChangeWarning() == false) { return; } AllowChangeEvents = false; Model = new SpellModel(); SpellListBox.SelectedIndex = -1; PopulateFields(""); SpellNameInputBox.Focus(); DataHasChanged = false; AllowChangeEvents = true; }
private void TextBoxChange(object sender, InputType type) { string newStringValue; switch (type) { case InputType.SpellName: { newStringValue = SpellNameInputBox.Text; if (newStringValue != Model.SpellName) { if (newStringValue == DatabaseName) { Model.SpellName = newStringValue; SpellNameInputBox.BackColor = Color.White; SaveFeedbackLabel.Text = ""; break; } if (CheckForUniqueness(newStringValue, InputType.SpellName) == true) { Model.SpellName = newStringValue; DataHasChanged = true; SpellNameInputBox.BackColor = Color.White; SaveFeedbackLabel.Text = ""; } else { //Let the user know he needs to choose a new name. AllowChangeEvents = false; SpellNameInputBox.Text = Model.SpellName; SpellNameInputBox.BackColor = Color.OrangeRed; SaveFeedbackLabel.Text = "Error: Name is already in use, please choose another"; AllowChangeEvents = true; SpellNameInputBox.Focus(); } } else { SpellNameInputBox.BackColor = Color.White; SaveFeedbackLabel.Text = ""; } break; } case InputType.IconName: { Model.IconFilename = SpellIconInputBox.Text; SpellIcon = new IconClass("Spells\\" + Model.IconFilename); SpellIcon.SetLocation(this.Width, this.Height, IconLocation); //redraw the icon Invalidate(); DataHasChanged = true; break; } case InputType.Duration: { Model.Duration = DurationInputTextBox.Text; DataHasChanged = true; break; } default: { Debug.WriteLine("Error: Unknown Type in Text Box Change"); break; } } }