예제 #1
0
 private void goodColorControl1_ColorChanged(object sender, EventArgs e)
 {
     _newColor = goodColorControl1.Color;
     pnlNew.Invalidate();
     if (OnColorChanged != null)
     {
         OnColorChanged(_newColor);
     }
 }
예제 #2
0
        protected void OnBoxChanged(object sender, EventArgs e)
        {
            if (_updating)
            {
                return;
            }

            NumericUpDown box   = sender as NumericUpDown;
            int           value = (int)box.Value;
            int           index = (int)box.Tag;

            switch (index)
            {
            case 0: { _hsv.H = (ushort)value; break; }

            case 1: { _hsv.S = (byte)value; break; }

            case 2: { _hsv.V = (byte)value; break; }

            case 3: { _rgb.R = (byte)value; break; }

            case 4: { _rgb.G = (byte)value; break; }

            case 5: { _rgb.B = (byte)value; break; }

            case 6: { pnlAlpha.Invalidate(); break; }
            }

            if ((index > 2) && (index < 6))
            {
                _hsv = (HSVPixel)_rgb;
            }

            OnColorChanged();
        }
예제 #3
0
        protected virtual void OnColorChanged(bool hsvToRgb)
        {
            _updating = true;

            if (hsvToRgb)
            {
                _rgba   = (ARGBPixel)_hsv;
                _rgba.A = (byte)numA.Value;
            }
            else
            {
                _hsv = (HSVPixel)_rgba;
            }

            numH.Value = _hsv.H;
            numS.Value = _hsv.S;
            numV.Value = _hsv.V;
            numR.Value = _rgba.R;
            numG.Value = _rgba.G;
            numB.Value = _rgba.B;
            numA.Value = _rgba.A;

            txtColorCode.Text = _rgba.ToRGBAColorCode();

            _updating = false;

            pnlColorBox.Invalidate();
            pnlColorBar.Invalidate();

            if (ColorChanged != null)
            {
                ColorChanged(this, null);
            }
        }
예제 #4
0
        protected virtual void OnColorChanged()
        {
            pnlColorBox.Invalidate();
            pnlColorBar.Invalidate();
            UpdateBoxes();

            if (ColorChanged != null)
            {
                ColorChanged(this, null);
            }
        }
예제 #5
0
        protected void OnBoxChanged(object sender, EventArgs e)
        {
            if (_updating)
            {
                return;
            }

            NumericUpDown box   = sender as NumericUpDown;
            int           value = (int)box.Value;
            int           index = (int)box.Tag;

            switch (index)
            {
            case 0: { _hsv.H = (ushort)value; break; }

            case 1: { _hsv.S = (byte)value; break; }

            case 2: { _hsv.V = (byte)value; break; }

            case 3: { _rgba.R = (byte)value; break; }

            case 4: { _rgba.G = (byte)value; break; }

            case 5: { _rgba.B = (byte)value; break; }

            case 6: { pnlAlpha.Invalidate(); break; }

            default: return;
            }

            if (index == 6)
            {
                _rgba.A           = (byte)value;
                txtColorCode.Text = _rgba.ToRGBAColorCode();
                if (ColorChanged != null)
                {
                    ColorChanged(this, null);
                }
            }
            else
            {
                OnColorChanged(index >= 0 && index < 3);
            }
        }
예제 #6
0
 private void chkAlpha_CheckedChanged(object sender, EventArgs e)
 {
     pnlNew.Invalidate();
     pnlOld.Invalidate();
 }
예제 #7
0
 private void UpdateBrush()
 {
     _gradBrush.LinearColors = new Color[] { _startColor, _endColor };
     pnlPreview.Invalidate();
 }