private void editColorsButton_Click(object sender, EventArgs e)
{
using (ColorDialog colorDialog = new ColorDialog(paletteControl.Items))
{
patternEditor.BeginPreview();
colorDialog.ColorPaletteChanged +=
(o, s) => patternEditor.SetColorPalette(colorDialog.GetAsPalette());
if (colorDialog.ShowDialog() == DialogResult.OK)
{
for (int i = 0; i < paletteControl.Items.Length; i++)
paletteControl.Items[i] = colorDialog.Items[i];
patternEditor.SetColorPalette(colorDialog.GetAsPalette());
}
else
{
patternEditor.EndPreview();
}
}
}