private void DrawSelectionBodyFrame(MapItem item) { if (item.Selected) { Rectangle rectangle = new Rectangle( item.ClientRectangle.X, item.ClientRectangle.Y, item.ClientRectangle.Width - ShadowDistance, item.ClientRectangle.Height - ShadowDistance); ItemPainterHelper.DrawRoundedRectangle(item.Buffer, rectangle, CornerRadius, _outerFrameSelectedPen, null); } }
public override void Paint(MapItem item, ItemControls.ItemScrollBar scrollBar, ItemLinkPoint[] linkPoints) { Rectangle rectangle = item.ClientRectangle; ItemPainterHelper.DrawRoundedRectangleShadow(item.Buffer, ref rectangle, CornerRadius, ShadowDistance, ShadowColor); Pen pen = new Pen(Color.FromArgb(255, Color.Green), 5); rectangle.Inflate(-(int)pen.Width, -(int)pen.Width); item.ItemRegion = ItemPainterHelper.CalculateRoundedRectangleGraphicsPath( rectangle, CornerRadius); pen.EndCap = pen.StartCap = LineCap.Flat; item.Buffer.DrawPath(pen, item.ItemRegion); }
private void DrawBody(MapItem item) { //Calculate body rectangle Rectangle rectangle = item.ClientRectangle; ItemPainterHelper.DrawRoundedRectangleShadow(item.Buffer, ref rectangle, CornerRadius, ShadowDistance, ShadowColor); //Calculate body graphics path item.ItemRegion = ItemPainterHelper.CalculateRoundedRectangleGraphicsPath( rectangle, CornerRadius); //Draw body gradient fill using (Brush gradientBrush = new LinearGradientBrush(rectangle, TopColor, BottomColor, 90, false)) { Rectangle bodyRectangle = new Rectangle( rectangle.Left, rectangle.Top, rectangle.Width - 1, rectangle.Height - 1); ItemPainterHelper.DrawRoundedRectangle(item.Buffer, bodyRectangle, CornerRadius, null, gradientBrush); } //Draw unselected body frame if (!item.Selected) { ItemPainterHelper.DrawRoundedRectangle(item.Buffer, rectangle, CornerRadius, _outerFramePen, null); } //Draw internal frame ItemPainterHelper.DrawRoundedRectangle(item.Buffer, rectangle, CornerRadius, _innerFramePen, null); }