protected override void OnPaint(Microsoft.Xna.Framework.GameTime time, Plex.Engine.GraphicsSubsystem.GraphicsContext gfx)
        {
            base.OnPaint(time, gfx);
            switch (frame)
            {
            case Frame.TestA:
                resulta = "False Negative";
                fw.Alert(TimeSpan.FromMilliseconds(350), () => resulta = "OK");
                Thread.Sleep(500);
                frame = Frame.TestB;
                break;

            case Frame.TestB:
                resultb = "OK";
                fw.Alert(TimeSpan.FromMilliseconds(350), () => resultb = "False Positive");
                frame = Frame.Apply;
                break;

            case Frame.Apply:
                if (resulta != null)
                {
                    testa.Text = resulta;
                }
                if (resultb != null)
                {
                    testb.Text = resultb;
                }
                resulta = resultb = null;
                frame   = Frame.Dormant;
                break;
            }
        }
        protected override void OnPaint(Microsoft.Xna.Framework.GameTime time, Plex.Engine.GraphicsSubsystem.GraphicsContext gfx)
        {
            base.OnPaint(time, gfx);
            var drawy = open.Y + open.Height + 3;

            if (img != null)
            {
                gfx.DrawRectangle(0, drawy, Width, Height - drawy, img, System.Windows.Forms.ImageLayout.Zoom);
            }
        }