Ejemplo n.º 1
0
        protected override void OnKeyDown(KeyEventArgs e)
        {
            if (e.KeyCode == Keys.Return)
            {
                this.ShowColorDialog();
                e.Handled = true;
            }
            else if (e.KeyCode == Keys.C && e.Control)
            {
                DataObject data = new DataObject();
                data.SetIColorData(new[] { this.value ?? (IColorData)ColorRgba.TransparentBlack });
                Clipboard.SetDataObject(data);
                e.Handled = true;
            }
            else if (e.KeyCode == Keys.V && e.Control)
            {
                DataObject data = Clipboard.GetDataObject() as DataObject;
                if (data.ContainsIColorData())
                {
                    this.value = data.GetIColorData <IColorData>().FirstOrDefault();
                    this.PerformSetValue();
                    this.PerformGetValue();
                    this.OnEditingFinished(FinishReason.LeapValue);
                }
                else
                {
                    System.Media.SystemSounds.Beep.Play();
                }

                e.Handled = true;
            }
            base.OnKeyDown(e);
        }
Ejemplo n.º 2
0
        [Test] public void GetIColorDataString()
        {
            DataObject dataIn = new DataObject();
            ColorRgba  color  = new ColorRgba(10, 10, 10, 10);

            dataIn.SetString("10,10,10,10");

            Assert.IsTrue(dataIn.ContainsIColorData());
            Assert.AreEqual(color, dataIn.GetIColorData <ColorRgba>()[0]);

            DataObject dataOut = this.SimulateClipboardSerialize(dataIn);

            Assert.IsTrue(dataOut.ContainsIColorData());
            Assert.AreEqual(color, dataOut.GetIColorData <ColorRgba>()[0]);

            DataObject dataTooLong = new DataObject();

            dataTooLong.SetString("10,10,10,10,10");
            Assert.IsFalse(dataTooLong.ContainsIColorData());
            Assert.IsNull(dataTooLong.GetIColorData <ColorRgba>());

            DataObject dataWrongForm = new DataObject();

            dataWrongForm.SetString("error,a,b");
            Assert.IsFalse(dataWrongForm.ContainsIColorData());
            Assert.IsNull(dataWrongForm.GetIColorData <ColorRgba>());
        }
Ejemplo n.º 3
0
        protected override void OnDragOver(DragEventArgs e)
        {
            base.OnDragOver(e);
            DataObject data = e.Data as DataObject;

            if (data.ContainsIColorData())
            {
                e.Effect = e.AllowedEffect;
            }
        }
Ejemplo n.º 4
0
        protected override void OnDragDrop(DragEventArgs e)
        {
            base.OnDragDrop(e);
            DataObject data = e.Data as DataObject;

            if (data.ContainsIColorData())
            {
                this.SetValue(data.GetIColorData <IColorData>().FirstOrDefault());
                this.PerformGetValue();
                this.OnEditingFinished(FinishReason.LeapValue);
                e.Effect = e.AllowedEffect;
            }
        }
Ejemplo n.º 5
0
        [Test] public void GetIColorData()
        {
            DataObject dataIn = new DataObject();
            ColorRgba  color  = new ColorRgba(10, 10, 10, 10);

            dataIn.SetIColorData(new[] { (IColorData)color });

            Assert.IsTrue(dataIn.ContainsIColorData());
            Assert.AreEqual(color, dataIn.GetIColorData <IColorData>()[0]);
            Assert.AreEqual(color, dataIn.GetIColorData <ColorRgba>()[0]);
            Assert.AreEqual(color.ConvertTo <ColorHsva>(), dataIn.GetIColorData <ColorHsva>()[0]);

            DataObject dataOut = this.SimulateClipboardSerialize(dataIn);

            Assert.IsTrue(dataOut.ContainsIColorData());
            Assert.AreEqual(color, dataOut.GetIColorData <IColorData>()[0]);
            Assert.AreEqual(color, dataOut.GetIColorData <ColorRgba>()[0]);
            Assert.AreEqual(color.ConvertTo <ColorHsva>(), dataOut.GetIColorData <ColorHsva>()[0]);
        }