public static TuningEditorViewModel EditExistingTuning(ObservableTuning tuning) { if (null == tuning) { throw new ArgumentNullException(nameof(tuning)); } TuningEditorViewModel tuningEditorVM = new TuningEditorViewModel(false, tuning.ReadOnly, (name, notes) => { FullNote[] rootNotes = new FullNote[notes.Count]; for (int i = 0; i < notes.Count; i++) { rootNotes[i] = notes[i].FullNote; } tuning.Tuning.Update(name, rootNotes); }) { Name = tuning.Name }; foreach (ObservableNote note in tuning.Notes) { tuningEditorVM.RootNotes.Add(new ObservableNote(note.FullNote.Clone())); } return(tuningEditorVM); }
public static TuningEditorViewModel CopyExistingTuning(ObservableTuning tuning, ObservableInstrument targetInstrument) { if (null == tuning) { throw new ArgumentNullException(nameof(tuning)); } if (null == targetInstrument) { throw new ArgumentNullException(nameof(targetInstrument)); } return(CopyExistingTuning(tuning.Tuning, targetInstrument.Instrument)); }
public ShowTuningEditorMessage(ObservableTuning tuning, ObservableInstrument targetInstrument, Action <bool> callback = null) : base() { TuningEditorVM = TuningEditorViewModel.CopyExistingTuning(tuning, targetInstrument); Callback = callback; }
public ShowTuningEditorMessage(ObservableTuning tuning, Action <bool> callback = null) : base() { TuningEditorVM = TuningEditorViewModel.EditExistingTuning(tuning); Callback = callback; }