using System; using System.Text; using System.Drawing.Drawing2D; using System.Drawing; namespace DevComponents.DotNetBar { public interface IShapeDescriptor { /// /// Returns the shape that fits given bounds. /// /// Bounds to fit shape in. /// GraphicsPath representing shape or null if shape cannot be created. GraphicsPath GetShape(Rectangle bounds); /// /// Returns the inner shape based on the specified border size. /// /// Bounds to fit shape in. /// GraphicsPath representing shape or null if shape cannot be created. GraphicsPath GetInnerShape(Rectangle bounds, int borderSize); /// /// Returns whether shape can be drawn given the bounds. /// /// Bounds to test. /// true if shape can be drawn inside of bounds otherwise false. bool CanDrawShape(Rectangle bounds); } }