public void Attach(IVFVideoEffect effect)
        {
            _intf = effect as IVFVideoEffectImageLogo;
            if (_intf == null)
            {
                return;
            }

            edImageLogoFilename.Text       = _intf.Filename;
            edImageLogoLeft.Text           = _intf.Left.ToString();
            edImageLogoTop.Text            = _intf.Top.ToString();
            tbImageLogoTransp.Value        = _intf.TransparencyLevel;
            pnImageLogoColorKey.ForeColor  = _intf.ColorKey;
            cbImageLogoUseColorKey.Checked = _intf.UseColorKey;
            cbImageLogoShowAlways.Checked  = _intf.StartTime == TimeSpan.Zero && _intf.StopTime == TimeSpan.Zero;
        }
        private void EffectUpdate(IVFVideoEffectImageLogo imageLogo)
        {
            if (imageLogo == null)
            {
                MessageBox.Show("Unable to configure image logo effect.");
                return;
            }

            if (!File.Exists(edImageLogoFilename.Text))
            {
                imageLogo.Enabled = false;
                return;
            }

            imageLogo.Enabled           = true;
            imageLogo.Filename          = edImageLogoFilename.Text;
            imageLogo.Left              = Convert.ToUInt32(edImageLogoLeft.Text);
            imageLogo.Top               = Convert.ToUInt32(edImageLogoTop.Text);
            imageLogo.TransparencyLevel = tbImageLogoTransp.Value;
            imageLogo.ColorKey          = pnImageLogoColorKey.ForeColor;
            imageLogo.UseColorKey       = cbImageLogoUseColorKey.Checked;
            imageLogo.AnimationEnabled  = true;

            if (cbImageLogoShowAlways.Checked)
            {
                imageLogo.StartTime = TimeSpan.Zero;
                imageLogo.StopTime  = TimeSpan.Zero;
            }
            else
            {
                imageLogo.StartTime = TimeSpan.FromMilliseconds(Convert.ToInt32(edImageLogoStartTime.Text));
                imageLogo.StopTime  = TimeSpan.FromMilliseconds(Convert.ToInt32(edImageLogoStopTime.Text));
            }

            imageLogo.Update();
        }
 public void Fill(IVFVideoEffect effect)
 {
     _intf = effect as IVFVideoEffectImageLogo;
     EffectUpdate(_intf);
 }