private void UpdateDialog()
        {
#if (DEBUG)
            //Stopwatch if in DEBUG mode
            Stopwatch w     = new Stopwatch();
            Stopwatch w_all = new Stopwatch();
            w.Start();
            w_all.Start();
#endif
            //Red gradient part
            EffectClasses.HDMATable red = new EffectClasses.HDMATable();
            red.AddRange(lsbDiaRed.Items.Cast <EffectClasses.HDMATableEntry>());
            if (chbDiaEnd.Checked)
            {
                red.Add(new EffectClasses.HDMATableEntry(EffectClasses.TableValueType.db, 1, (byte)EffectClasses.ColorHDMAValues.Red));
            }
            _diaColRed.FromTable(red);
#if (DEBUG)
            Console.WriteLine("Dialog Update-Red: " + w.ElapsedMilliseconds + "ms");
            w.Restart();
#endif

            //Green gradient part
            EffectClasses.HDMATable green = new EffectClasses.HDMATable();
            green.AddRange(lsbDiaGrn.Items.Cast <EffectClasses.HDMATableEntry>());
            if (chbDiaEnd.Checked)
            {
                green.Add(new EffectClasses.HDMATableEntry(EffectClasses.TableValueType.db, 1, (byte)EffectClasses.ColorHDMAValues.Green));
            }
            _diaColGrn.FromTable(green);
#if (DEBUG)
            Console.WriteLine("Dialog Update-Green: " + w.ElapsedMilliseconds + "ms");
            w.Restart();
#endif

            //Blue gradient part
            EffectClasses.HDMATable blue = new EffectClasses.HDMATable();
            blue.AddRange(lsbDiaBlu.Items.Cast <EffectClasses.HDMATableEntry>());
            if (chbDiaEnd.Checked)
            {
                blue.Add(new EffectClasses.HDMATableEntry(EffectClasses.TableValueType.db, 1, (byte)EffectClasses.ColorHDMAValues.Blue));
            }
            _diaColBlu.FromTable(blue);
#if (DEBUG)
            Console.WriteLine("Dialog Update-Blue: " + w.ElapsedMilliseconds + "ms");
            w.Restart();
#endif
            //get screens
            _diaMath.FixedColor = EffectClasses.BitmapEffects.MergeImages_(
                _diaColRed.EffectImage, _diaColGrn.EffectImage, _diaColBlu.EffectImage);
            pcbDiaMainPic.Image = _diaMath.GetScreen();

#if (DEBUG)
            //Write Stopwatch results if in DEBUG mode.
            Console.WriteLine("Dialog Update-Image: " + w.ElapsedMilliseconds + "ms");
            Console.WriteLine("Dialog Update-Total: " + w_all.ElapsedMilliseconds + "ms");
            w.Stop();
            w_all.Stop();
#endif
        }
示例#2
0
        public void UpdateIndividual()
        {
            EffectClasses.HDMATable table = new EffectClasses.HDMATable();
            for (int i = 0; i < lsbIndEnt.Items.Count; i++)
            {
                table.Add((EffectClasses.HDMATableEntry)lsbIndEnt.Items[i]);
            }

            if (chbIndEnd.Checked && table.TotalScanlines < EffectClasses.HDMA.Scanlines)
            {
                table.Add(new EffectClasses.HDMATableEntry(EffectClasses.TableValueType.db, 1, 0xF));
            }

            _indEffect.FromTable(table);

            pcbIndMainPic.Image = EffectClasses.BitmapEffects.OverlapImages(_indEffect.EffectImage, _indMath.GetScreen());
        }