public virtual bool IsDownEventClose(GuitarMessage m2) { if (DownTick.IsNull() || m2.DownTick.IsNull()) { return(false); } return(TickPair.IsCloseDownDown(m2.TickPair)); }
public virtual bool IsUpEventClose(GuitarMessage m2) { if (UpTick.IsNull() || m2.UpTick.IsNull()) { return(false); } return(TickPair.IsCloseUpUp(m2.TickPair)); }
public virtual void Remove(GuitarMessage mess) { if (mess != null) { var TMess = mess as T; if (TMess != null && messages.Contains(TMess)) { messages.Remove(TMess); TMess.IsDeleted = true; } } }
public void Remove(GuitarMessage message) { if (message == null) { return; } if (!message.IsDeleted) { message.RemoveEvents(); message.RemoveFromList(); } }
public void Add(GuitarMessage item) { if (item != null) { var TItem = (T)item; TItem.IsDeleted = false; if (!messages.Contains(item)) { var items = messages.Where(x => x.AbsoluteTicks == TItem.AbsoluteTicks); if (items.Any()) { if (TItem.Command == ChannelCommand.NoteOff) { messages.Insert(messages.IndexOf(items.First()), TItem); } else { messages.Insert(messages.IndexOf(items.Last()) + 1, TItem); } } else { var gt = messages.FirstOrDefault(x => x.AbsoluteTicks > TItem.AbsoluteTicks); if (gt == null) { messages.Add(TItem); } else { messages.Insert(messages.IndexOf(gt), TItem); } } } } }
public void Remove(GuitarMessage message) { if (message == null) return; if (!message.IsDeleted) { message.RemoveEvents(); message.RemoveFromList(); } }
private void DrawChords5(Graphics g, GuitarMessage c) { var chord = c as GuitarChord; if (chord != null) { for (int k = 0; k < 5; k++) { var note = chord.Notes[k]; if (note == null) continue; var nb = Utility.G5Brush(note.NoteString); if (chord.Selected) { nb = Utility.noteBGBrushSel; } var downTime = GetClientPointFromTime(note.StartTime); var upTime = GetClientPointFromTime(note.EndTime); var width = upTime - downTime; if (width < Utility.MinimumNoteWidth) { width = Utility.MinimumNoteWidth; } var noteBrush = nb; g.FillRectangle(noteBrush, downTime, GetNoteMinYOffset(note), width, NoteHeight); var boundPen = Utility.noteBoundPen; if (width >= 2) { g.DrawRectangle(boundPen, downTime, GetNoteMinYOffset(note), width, NoteHeight); } } } }
public Rectangle GetScreenRectFromMessage(GuitarMessage message) { var minMaxY = new Point(0, Height); if (message is GuitarChord) { minMaxY = GetChordYMinMax(message as GuitarChord); } var start = GetClientPointFromTick(message.DownTick); var end = GetClientPointFromTick(message.UpTick); return new Rectangle(start, minMaxY.X, end - start, minMaxY.Y - minMaxY.X); }
public virtual bool IsUpEventClose(GuitarMessage m2) { if (UpTick.IsNull() || m2.UpTick.IsNull()) return false; return TickPair.IsCloseUpUp(m2.TickPair); }
public virtual bool IsDownEventClose(GuitarMessage m2) { if (DownTick.IsNull() || m2.DownTick.IsNull()) return false; return TickPair.IsCloseDownDown(m2.TickPair); }
private void DrawChords5(Graphics g, GuitarMessage c) { var chord = c as GuitarChord; if (chord != null) { for (int k = 0; k < 5; k++) { var note = chord.Notes[k]; if (note == null) continue; var nb = Utility.G5Brush(note.NoteString); if (chord.Selected) { nb = Utility.noteBGBrushSel; } var downTime = GetScreenPointFromTick(note.DownTick); var upTime = GetScreenPointFromTick(note.UpTick); var width = upTime - downTime; if (width < Utility.MinimumNoteWidth) { width = Utility.MinimumNoteWidth; } var noteBrush = nb; g.FillRectangle(noteBrush, downTime, GetNoteMinYOffset(note), width, NoteHeight); var boundPen = Utility.noteBoundPen; if (ZoomedOutRealFar) { boundPen = new Pen(Color.FromArgb(40, Utility.noteBoundPen.Color)); } g.DrawRectangle(boundPen, downTime, GetNoteMinYOffset(note), width, NoteHeight); if (ZoomedOutRealFar) { boundPen.Dispose(); } } } }