private void Palette_Paint(object sender, PaintEventArgs e)
{
for (int i = 0; i < Items.Length; i++)
{
Rectangle colorRectangle = new Rectangle(LeftBorder, TopBorder + ColorDistance * i, ColorWidth, ColorHeight);
Rectangle selectionRectangle = Rectangle.Inflate(colorRectangle, SelectionBorderWidth, SelectionBorderWidth);
e.Graphics.FillRectangle((Selection == SelectionType.SingleSelect) && (i == SelectedIndex) ? Brushes.Gold : Brushes.Black, selectionRectangle);
e.Graphics.FillRectangle(paletteBrushes[Items[i]], colorRectangle);
if (Selection == SelectionType.DoubleSelect)
{
if (i == SelectedIndex)
DrawTriangle(e.Graphics, Brushes.Black, LeftBorder / 2, TopBorder + ColorDistance * i + ColorHeight / 2, false);
if (i == SecondarySelectedIndex)
DrawTriangle(e.Graphics, Brushes.Black, LeftBorder / 2 + LeftBorder + ColorWidth, TopBorder + ColorDistance * i + ColorHeight / 2, true);
}
}
}