protected override void OnPaint(System.Windows.Forms.PaintEventArgs e) { base.OnPaint(e); // paint the color scale Color color = ColorManager.SetBrightness(m_BaseColor, 0.0); for (int step = 0; step < 69; step++) { color = ColorManager.SetBrightness(m_BaseColor, 1.0 - m_Factor * (double)step); Pen pen = new Pen(color, 2); e.Graphics.DrawLine(pen, 0, step * 2, 10, step * 2); pen.Dispose(); } // now find the position and draw the current placeholder ColorManager.HLS hls = ColorManager.RGB_to_HLS(m_BaseColor); int pos = this.Height - (int)(hls.L * 2.0 / m_Factor); e.Graphics.DrawLine(Pens.Black, 12, pos - 2, 17, pos - 2); e.Graphics.DrawLine(Pens.Black, 12, pos - 1, 17, pos - 1); e.Graphics.DrawLine(Pens.Black, 12, pos, 16, pos); e.Graphics.DrawLine(Pens.Black, 12, pos + 1, 17, pos + 1); }
private void lstColors_SelectedIndexChanged(object sender, EventArgs e) { if (m_InternalValueChange == true) { return; } m_InternalValueChange = true; // get the selected item and its color ColourAndNameListItem item = lstColors.SelectedItem as ColourAndNameListItem; // create the HLS and set the data ColorManager.HLS hls = ColorManager.RGB_to_HLS(item.Colour); // txtH.Value = (int)(hls.H * 100.0); // txtL.Value = (int)(hls.L * 100.0); // txtS.Value = (int)(hls.S * 100.0); // set the preview as well previewColorPanel.BackColor = item.Colour; // txtRed.Value = previewColorPanel.BackColor.R; // txtGreen.Value = previewColorPanel.BackColor.G; // txtBlue.Value = previewColorPanel.BackColor.B; txtValue.Text = "#" + previewColorPanel.BackColor.R.ToString("X2") + previewColorPanel.BackColor.G.ToString("X2") + previewColorPanel.BackColor.B.ToString("X2"); m_InternalValueChange = false; }
private void txtHSL_ValueChanged(object sender, EventArgs e) { if (m_InternalValueChange == true) { return; } m_InternalValueChange = true; // get the hls value and set it to the preview ColorManager.HLS hls = new ColorManager.HLS(); // hls.H = (double)txtH.Value / 100.0; // hls.L = (double)txtL.Value / 100.0; // hls.S = (double)txtS.Value / 100.0; Color color = ColorManager.HLS_to_RGB(hls); previewColorPanel.BackColor = color; // txtRed.Value = previewColorPanel.BackColor.R; // txtGreen.Value = previewColorPanel.BackColor.G; // txtBlue.Value = previewColorPanel.BackColor.B; txtValue.Text = "#" + previewColorPanel.BackColor.R.ToString("X2") + previewColorPanel.BackColor.G.ToString("X2") + previewColorPanel.BackColor.B.ToString("X2"); m_InternalValueChange = false; }
private void txtHSL_ValueChanged(object sender, EventArgs e) { if (m_InternalValueChange == true) return; m_InternalValueChange = true; // get the hls value and set it to the preview ColorManager.HLS hls = new ColorManager.HLS(); // hls.H = (double)txtH.Value / 100.0; // hls.L = (double)txtL.Value / 100.0; // hls.S = (double)txtS.Value / 100.0; Color color = ColorManager.HLS_to_RGB(hls); previewColorPanel.BackColor = color; // txtRed.Value = previewColorPanel.BackColor.R; // txtGreen.Value = previewColorPanel.BackColor.G; // txtBlue.Value = previewColorPanel.BackColor.B; txtValue.Text = "#" + previewColorPanel.BackColor.R.ToString("X2") + previewColorPanel.BackColor.G.ToString("X2") + previewColorPanel.BackColor.B.ToString("X2"); m_InternalValueChange = false; }