AnimalCrossingQR.PaletteControl.Palette_Paint C# (CSharp) Method

Palette_Paint() private method

private Palette_Paint ( object sender, PaintEventArgs e ) : void
sender object
e PaintEventArgs
return void
        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);
                }
            }
        }