protected override void OnMouseDown(MouseEventArgs e) { BookmarkOverlay overlay = GetOverlayForPosition(e.Location); if (overlay != null) { if (e.Button == MouseButtons.Right) { if (this.isDrag) { this.isDrag = false; overlay.Bookmark.OverlayOffset = this.oldOverlayOffset; this.Refresh(); return; } } else { this.dragStartPoint = e.Location; this.isDrag = true; this.draggedOverlay = overlay; this.oldOverlayOffset = overlay.Bookmark.OverlayOffset; } } else { this.isDrag = false; base.OnMouseDown(e); } }
public void AddOverlay(BookmarkOverlay overlay) { lock (_overlayList) { _overlayList.Add(overlay.Position.Y, overlay); } }
protected override void OnMouseDoubleClick(MouseEventArgs e) { BookmarkOverlay overlay = GetOverlayForPosition(e.Location); if (overlay != null) { if (e.Button == MouseButtons.Left) { OnOverlayDoubleClicked(new OverlayEventArgs(overlay)); } } else { base.OnMouseDoubleClick(e); } }
protected override void OnMouseMove(MouseEventArgs e) { if (this.isDrag) { this.Cursor = Cursors.Hand; Size offset = new Size(e.X - this.dragStartPoint.X, e.Y - this.dragStartPoint.Y); this.draggedOverlay.Bookmark.OverlayOffset = this.oldOverlayOffset + offset; this.Refresh(); } else { BookmarkOverlay overlay = GetOverlayForPosition(e.Location); this.Cursor = overlay != null ? Cursors.Hand : Cursors.Default; base.OnMouseMove(e); } }
public OverlayEventArgs(BookmarkOverlay overlay) { this.BookmarkOverlay = overlay; }
public void AddOverlay(BookmarkOverlay overlay) { this.overlayList.Add(overlay.Position.Y, overlay); }