protected override void OnMouseMove(MouseEventArgs e) { ToolboxItemBase item = HitTest(e.Location); if (e.Button == MouseButtons.Left && item is ToolboxItem) { ToolboxItem toolboxItem = item as ToolboxItem; if (toolboxItem.TypeInfo != null) { this.DoDragDrop(toolboxItem.TypeInfo, DragDropEffects.Copy); } } else { if (item != null && item.MouseOver == false) { if (_currentMouseOverItem != null) { _currentMouseOverItem.MouseOver = false; Invalidate(GetItemRect(_currentMouseOverItem)); } item.MouseOver = true; Invalidate(GetItemRect(item)); _currentMouseOverItem = item; } } base.OnMouseMove(e); }
protected override void OnMouseLeave(EventArgs e) { base.OnMouseLeave(e); if (_currentMouseOverItem != null) { _currentMouseOverItem.MouseOver = false; Invalidate(GetItemRect(_currentMouseOverItem)); _currentMouseOverItem = null; } }
private bool PointOverToolboxItem(Point point, ToolboxItemBase item) { if (item.Top == -1) { return(false); } if (point.Y >= item.Top && point.Y <= item.Top + 18) { return(true); } return(false); }
protected override void OnMouseDown(MouseEventArgs e) { ToolboxItemBase item = HitTest(e.Location); if (item is ToolboxItem) { ItemMouseDown(item as ToolboxItem); } else if (item is ToolboxGroup) { GroupMouseDown(item as ToolboxGroup); } base.OnMouseDown(e); }
protected override void OnMouseLeave(EventArgs e) { base.OnMouseLeave(e); if(_currentMouseOverItem!=null) { _currentMouseOverItem.MouseOver=false; Invalidate(GetItemRect(_currentMouseOverItem)); _currentMouseOverItem=null; } }
private bool PointOverToolboxItem(Point point, ToolboxItemBase item) { if(item.Top==-1) { return false; } if(point.Y>=item.Top&&point.Y<=item.Top+18) { return true; } return false; }
private Rectangle GetItemRect(ToolboxItemBase item) { return new Rectangle(0, item.Top, this.Width, 19); }
protected override void OnMouseMove(MouseEventArgs e) { ToolboxItemBase item=HitTest(e.Location); if(e.Button==MouseButtons.Left&&item is ToolboxItem) { ToolboxItem toolboxItem=item as ToolboxItem; if(toolboxItem.TypeInfo!=null) { this.DoDragDrop(toolboxItem.TypeInfo, DragDropEffects.Copy); } } else { if(item!=null&&item.MouseOver==false) { if(_currentMouseOverItem!=null) { _currentMouseOverItem.MouseOver=false; Invalidate(GetItemRect(_currentMouseOverItem)); } item.MouseOver=true; Invalidate(GetItemRect(item)); _currentMouseOverItem=item; } } base.OnMouseMove(e); }
private Rectangle GetItemRect(ToolboxItemBase item) { return(new Rectangle(0, item.Top, this.Width, 19)); }