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);
}
}