public void DrawTonaltyAt(Tonalty tonalty, int graphicPosition, int restrictedLength) { TL.G.DrawString(tonalty.ToString(), tonaltyFont, tonaltyBrush, new Rectangle(graphicPosition, 0, restrictedLength, ChromaTextHeight)); if (tonalty == null) { return; } for (int j = 0; j < 12; ++j) { if (ChromaMode != TimelineChromaMode.FrameScale || tonalty.IsOnNaturalScale(j)) { TL.G.DrawString(tonalty.NoteNameUnderTonalty(j), noteFont, noteBackBrush, new Rectangle(graphicPosition + fontShadowDX, chromaTextStart + (11 - j) * ChromaHeight + fontShadowDY, restrictedLength, ChromaTextHeight)); TL.G.DrawString(tonalty.NoteNameUnderTonalty(j), noteFont, noteFrontBrush, new Rectangle(graphicPosition, chromaTextStart + (11 - j) * ChromaHeight, restrictedLength, ChromaTextHeight)); } } }
private void timer1_Tick(object sender, EventArgs e) { if (Program.TL != null) { Program.TL.Draw(); //if (Triggers.ChordLabelChangeTrigger) //{ Tonalty currentTonalty = Program.TL.ChromaVisualizer.GetCurrentTonalty(); if (Triggers.ChordLabelChangeTrigger || RelativeLabelTonalty.ToString() != currentTonalty.ToString()) { Triggers.ChordLabelChangeTrigger = false; RelativeLabelTonalty = currentTonalty; for (int i = 0; i < 15; ++i) { ChordLabels[i].Text = Program.TL.ChordEditor.GetChordLabelTextUnderTonalty(i, RelativeLabelTonalty); } } //} } }