public virtual void Paint(Pad pad, double minX, double maxX, double minY, double maxY)
{
float height = GetHeight(pad);
float width = GetWidth(pad);
float x = 0;
float y = 0;
switch (Position)
{
case ETextBoxPosition.TopRight:
x = pad.ClientX() + pad.ClientWidth() - X - width;
y = pad.ClientY() + Y;
break;
case ETextBoxPosition.TopLeft:
x = pad.ClientX() + X;
y = pad.ClientY() + Y;
break;
case ETextBoxPosition.BottomRight:
x = pad.ClientX() + pad.ClientWidth() - X - width;
y = pad.ClientY() + pad.ClientHeight() - Y - height;
break;
case ETextBoxPosition.BottomLeft:
x = pad.ClientX() + X;
y = pad.ClientY() + pad.ClientHeight() - Y - height;
break;
}
pad.Graphics.FillRectangle(new SolidBrush(BackColor), x, y, width, height);
if (BorderEnabled)
pad.Graphics.DrawRectangle(new Pen(BorderColor), x, y, width, height);
foreach (TTextBoxItem item in Items)
{
var h = pad.Graphics.MeasureString(item.Text, item.Font).Height;
pad.Graphics.DrawString(item.Text, item.Font, new SolidBrush(item.Color), x + 5, y);
y += 2 + h;
}
}