示例#1
0
        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);
     }
 }
示例#3
0
        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);
            }
        }
示例#4
0
 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);
     }
 }
示例#5
0
 public OverlayEventArgs(BookmarkOverlay overlay)
 {
     this.BookmarkOverlay = overlay;
 }
示例#6
0
 public void AddOverlay(BookmarkOverlay overlay)
 {
     this.overlayList.Add(overlay.Position.Y, overlay);
 }
示例#7
0
		public OverlayEventArgs(BookmarkOverlay overlay)
		{
			this.BookmarkOverlay = overlay;
		}
		public void AddOverlay(BookmarkOverlay overlay)
		{
			this.overlayList.Add(overlay.Position.Y, overlay);
		}
		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);
			}
		}