//============================================================== //Scale Add/Delete partial void RunSaveScaleDialog() { /*guardians*/ if (currentShowScale != null) { WarnUser(this.Localizer["Cannot save the new scale while other scale is in display"]); return; } if (currentSound == 0) { WarnUser(this.Localizer["Cannot save empty scale"]); return; } var selectedNotes = new List <Note>(); foreach (var note in Notes) { if (note.IsChecked) { selectedNotes.Add(note); } } var dialogWindow = new ScaleSaveDialogWindow(selectedNotes.ToArray()); dialogWindow.DataContext = this; var dialogResult = dialogWindow.ShowDialog(); if (dialogResult == true) { /*guardians*/ if (dialogWindow.ScaleName == null) { throw new ArgumentNullException("dialogWindow.ScaleName"); } if (dialogWindow.KeynoteOfChoice == null) { throw new ArgumentNullException("dialogWindow.KeynoteOfChoice"); } string scaleName = dialogWindow.ScaleName; Sound keynoteSound = dialogWindow.KeynoteOfChoice.Sound; Scale newScale = new Scale(scaleName, keynoteSound, currentSound); AdditionalScales.Add(newScale); ScalesAll.Add(newScale); ScalesAll.Sort(new ScalesSorter()); Request_SaveAdditionalScales?.Invoke(AdditionalScales.ToArray()); MessageBox.Show(this.Localizer["Scale successfully saved"]); ClearUI(); } }
private void Initialize() { TextStrings.Add(0, "Нуль"); TextStrings.Add(1, "Одна"); TextStrings.Add(2, "Дві"); TextStrings.Add(3, "Три"); TextStrings.Add(4, "Чотири"); TextStrings.Add(5, "П'ять"); TextStrings.Add(6, "Шість"); TextStrings.Add(7, "Сім"); TextStrings.Add(8, "Вісім"); TextStrings.Add(9, "Дев'ять"); TextStrings.Add(10, "Десять"); TextStrings.Add(11, "Одинадцять"); TextStrings.Add(12, "Дванадцять"); TextStrings.Add(13, "Тринадцять"); TextStrings.Add(14, "Чотирнадцять"); TextStrings.Add(15, "П'ятнадцять"); TextStrings.Add(16, "Шістнадцять"); TextStrings.Add(17, "Сімнадцять"); TextStrings.Add(18, "Вісімнадцять"); TextStrings.Add(19, "Дев'ятнадцять"); TextStrings.Add(20, "Двадцять"); TextStrings.Add(30, "Тридцять"); TextStrings.Add(40, "Сорок"); TextStrings.Add(50, "П'ятдесят"); TextStrings.Add(60, "Шістдесят"); TextStrings.Add(70, "Сімдесят"); TextStrings.Add(80, "Вісімдесят"); TextStrings.Add(90, "Дев'яносто"); TextStrings.Add(100, "Сто"); TextStrings.Add(200, "Двісті"); TextStrings.Add(300, "Триста"); TextStrings.Add(400, "Чотириста"); TextStrings.Add(500, "П'ятсот"); TextStrings.Add(600, "Шістсот"); TextStrings.Add(700, "Сімсот"); TextStrings.Add(800, "Вісімсот"); TextStrings.Add(900, "Дев'ятсот"); AdditionalStrings.Add(1, "Один"); AdditionalStrings.Add(2, "Два"); AdditionalStrings.Add(1000, "тисяча"); AdditionalStrings.Add(1000000, "мільйон"); AdditionalStrings.Add(1000000000, "мільярд"); Scales.Add(1000000000, "мільярдів"); Scales.Add(1000000, "мільйонів"); Scales.Add(1000, "тисяч"); AdditionalScales.Add(1000000000, "мільярди"); AdditionalScales.Add(1000000, "мільйони"); AdditionalScales.Add(1000, "тисячі"); }
partial void DeleteSelectedScale() { if (currentShowScale == null) { WarnUser(this.Localizer["To delete the scale one must first select it"]); return; } var scaleToDelete = currentShowScale; bool itIsBasicScale = default(bool); foreach (var scale in ScalesBasic) { if (Object.ReferenceEquals(scaleToDelete, scale)) { itIsBasicScale = true; break; } } if (itIsBasicScale) { WarnUser(this.Localizer["Cannot delete basic scale"]); return; } var confirmation = MessageBox.Show(this.Localizer["Delete this scale? Are you sure?"], "", MessageBoxButton.YesNo, MessageBoxImage.Question); if (confirmation != MessageBoxResult.Yes) { return; } //Point of no return AdditionalScales.Remove(scaleToDelete); ScalesAll.Remove(scaleToDelete); Request_SaveAdditionalScales?.Invoke(AdditionalScales.ToArray()); MessageBox.Show(this.Localizer["Scale deleted"]); ClearUI(); }