/// <summary>
/// Initializes a new instance of the <see cref="HSVColorPicker"/> class.
/// </summary>
/// <param name="parent">Parent control.</param>
public HSVColorPicker(Control parent)
: base(parent)
{
MouseInputEnabled = true;
SetSize(256, 128);
//ShouldCacheToTexture = true;
m_LerpBox = new ColorLerpBox(this);
m_LerpBox.ColorChanged += ColorBoxChanged;
m_LerpBox.Dock = Pos.Left;
m_ColorSlider = new ColorSlider(this);
m_ColorSlider.SetPosition(m_LerpBox.Width + 15, 5);
m_ColorSlider.ColorChanged += ColorSliderChanged;
m_ColorSlider.Dock = Pos.Left;
m_After = new ColorDisplay(this);
m_After.SetSize(48, 24);
m_After.SetPosition(m_ColorSlider.X + m_ColorSlider.Width + 15, 5);
m_Before = new ColorDisplay(this);
m_Before.SetSize(48, 24);
m_Before.SetPosition(m_After.X, 28);
int x = m_Before.X;
int y = m_Before.Y + 30;
{
Label label = new Label(this);
label.SetText("R:");
label.SizeToContents();
label.SetPosition(x, y);
TextBoxNumeric numeric = new TextBoxNumeric(this);
numeric.Name = "RedBox";
numeric.SetPosition(x + 15, y - 1);
numeric.SetSize(26, 16);
numeric.SelectAllOnFocus = true;
numeric.TextChanged += NumericTyped;
}
y += 20;
{
Label label = new Label(this);
label.SetText("G:");
label.SizeToContents();
label.SetPosition(x, y);
TextBoxNumeric numeric = new TextBoxNumeric(this);
numeric.Name = "GreenBox";
numeric.SetPosition(x + 15, y - 1);
numeric.SetSize(26, 16);
numeric.SelectAllOnFocus = true;
numeric.TextChanged += NumericTyped;
}
y += 20;
{
Label label = new Label(this);
label.SetText("B:");
label.SizeToContents();
label.SetPosition(x, y);
TextBoxNumeric numeric = new TextBoxNumeric(this);
numeric.Name = "BlueBox";
numeric.SetPosition(x + 15, y - 1);
numeric.SetSize(26, 16);
numeric.SelectAllOnFocus = true;
numeric.TextChanged += NumericTyped;
}
SetColor(DefaultColor);
}