public void toneAddButton_Click(object sender = null, EventArgs e = null) { var tone = CreateNewTone(); using (var form = new ToneForm()) { form.CurrentGameVersion = CurrentGameVersion; form.toneControl1.CurrentGameVersion = CurrentGameVersion; form.toneControl1.Init(); form.toneControl1.Tone = GeneralExtensions.Copy(tone); form.ShowDialog(); if (form.Saved) TonesLB.Items.Add(form.toneControl1.Tone); } }
private void toneEditButton_Click(object sender, EventArgs e) { if (TonesLB.SelectedItem != null) { dynamic tone = TonesLB.SelectedItem; var toneName = tone.Name; using (var form = new ToneForm()) { form.CurrentGameVersion = CurrentGameVersion; form.toneControl1.CurrentGameVersion = CurrentGameVersion; form.toneControl1.Init(); form.toneControl1.Tone = GeneralExtensions.Copy(tone); form.ShowDialog(); if (form.Saved) TonesLB.Items[TonesLB.SelectedIndex] = form.toneControl1.Tone; } if (toneName != tone.Name) { // Update tone slots if name are changed for(int i = 0; i <ArrangementLB.Items.Count; i++) { var arrangement = (Arrangement)ArrangementLB.Items[i]; var toneSlotsAffected = false; if (toneName.Equals(arrangement.ToneBase)) { arrangement.ToneBase = tone.Name; if (CurrentGameVersion == GameVersion.RS2014) arrangement.ToneA = tone.Name; } if (CurrentGameVersion == GameVersion.RS2014) { if (toneName.Equals(arrangement.ToneB)) arrangement.ToneB = tone.Name; if (toneName.Equals(arrangement.ToneC)) arrangement.ToneC = tone.Name; if (toneName.Equals(arrangement.ToneD)) arrangement.ToneD = tone.Name; } if (toneSlotsAffected) ArrangementLB.Items[i] = arrangement; } } } }