public void OnElementExpose(IRgbFormExposer source)
        {
            source.ApplyFilterButton.Click += (sender, args)
                                              => _aggregator.PublishFrom(source, new ApplyRgbFilterEventArgs());

            source.ColorMatrixMenuButton.Click += (sender, args)
                                                  => _aggregator.PublishFrom(source, new ShowColorMatrixMenuEventArgs());

            source.RedButton.CheckedChanged += (sender, args)
                                               => _aggregator.PublishFrom(source, new ApplyRgbChannelFilterEventArgs(Red));

            source.GreenButton.CheckedChanged += (sender, args)
                                                 => _aggregator.PublishFrom(source, new ApplyRgbChannelFilterEventArgs(Green));

            source.BlueButton.CheckedChanged += (sender, args)
                                                => _aggregator.PublishFrom(source, new ApplyRgbChannelFilterEventArgs(Blue));
        }
        public bool ProcessCmdKey(IRgbFormExposer view, Keys keyData)
        {
            switch (keyData)
            {
            case Keys.R:

                view.RedButton.Checked = !view.RedButton.Checked;
                return(true);

            case Keys.G:

                view.GreenButton.Checked = !view.GreenButton.Checked;
                return(true);

            case Keys.B:

                view.BlueButton.Checked = !view.BlueButton.Checked;
                return(true);
            }

            return(false);
        }