protected override void OnPaint(System.Windows.Forms.PaintEventArgs e)
{
if( this.Image != null )
{
base.OnPaint(e);
return;
}
OnPaintBackground(e);
LinearGradientMode mode;
//
// set SmoothingMode
//
getSmoothingQuality(e);
//
// set LinearGradientMode
//
mode = getGradientMode();
SizeF textSize = e.Graphics.MeasureString(this.Text, base.Font);
int textX = (int)(base.Size.Width / 2) - (int)(textSize.Width / 2);
int textY = (int)(( base.Size.Height/2 - _shadowOffSet/2 ) - (int)(textSize.Height / 2));
if (_Active)
{
switch (_State)
{
case _States.Normal:
drawButtonText(e, base.ForeColor, textX, textY);
break;
case _States.MouseOver:
drawButtonText(e, _HoverTextColor, textX, textY);
break;
case _States.Clicked:
textX += 3;
textY += 3;
drawButtonText(e, _HoverTextColor, textX, textY);
break;
}
}
else
{
drawButtonText(e, Color.LightGray, textX, textY);
}
}