public MainWindow() : base(Gtk.WindowType.Toplevel) { Build(); _conv = new EqualTemperedConverter(); foreach (var letter in Enum.GetValues(typeof(NoteLetter))) { cmbNote.AppendText(letter.ToString()); cmbAnchorNote.AppendText(letter.ToString()); } for (int i = 0; i < 9; ++i) { cmbOctave.AppendText(i.ToString()); cmbAnchorOctave.AppendText(i.ToString()); } SetCurrentFrequency(440.0); SetCurrentNote(CalculateNote(440.0)); cmbAnchorNote.Active = (int)NoteLetter.A; cmbAnchorOctave.Active = 4; entAnchorFrequency.Text = "440"; _conv.Anchor = ReadAnchorNote(); _anchorJustChanged = false; hscFrequency.ChangeValue += OnHscFrequencyValueChanged; entFrequency.Changed += OnEntFrequencyChanged; cmbOctave.Changed += OnNoteChanged; cmbNote.Changed += OnNoteChanged; cmbAnchorNote.Changed += OnAnchorNoteChanged; cmbAnchorOctave.Changed += OnAnchorNoteChanged; entAnchorFrequency.Changed += OnAnchorNoteChanged; MotionNotifyEvent += delegate { _anchorJustChanged = false; }; }
public void Init() { conv = new EqualTemperedConverter(); notesToCheck = Support.CreateNotesCheckListForA440(); }