Ejemplo n.º 1
0
        private void KernelEdit_Click(object sender, RoutedEventArgs e)
        {
            try
            {
                Tuple <Border, int> kernel = GetSelectedKernel(_kernelContextMenu.PlacementTarget);
                if (kernel == null)
                {
                    MessageBox.Show("Couldn't identify filter", this.Title, MessageBoxButton.OK, MessageBoxImage.Warning);
                    return;
                }

                ConvolutionBase2D selected = _kernels[kernel.Item2];

                if (selected is Convolution2D)
                {
                    #region Single

                    ImageFilterPainter editor = new ImageFilterPainter();

                    editor.SaveRequested += Painter_SaveRequested;
                    editor.Closed        += Child_Closed;

                    _childWindows.Add(editor);

                    editor.EditKernel((Convolution2D)selected);

                    editor.Show();

                    #endregion
                }
                else if (selected is ConvolutionSet2D)
                {
                    #region Set

                    CompositeFilter composite = new CompositeFilter((ConvolutionSet2D)selected)
                    {
                        // I don't want this one on top
                        //Owner = this,       // setting this so it stays on top of this window
                    };

                    composite.SaveRequested += Composite_SaveRequested;
                    composite.Closed        += Child_Closed;

                    _childWindows.Add(composite);

                    composite.Show();

                    #endregion
                }
                else
                {
                    MessageBox.Show("Unknown type of kernel: " + _kernels[kernel.Item2].GetType().ToString(), this.Title, MessageBoxButton.OK, MessageBoxImage.Error);
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.ToString(), this.Title, MessageBoxButton.OK, MessageBoxImage.Error);
            }
        }
Ejemplo n.º 2
0
        private void CompositeFilter_Click(object sender, RoutedEventArgs e)
        {
            try
            {
                CompositeFilter composite = new CompositeFilter()
                {
                    Owner = this,       // setting this so it stays on top of this window
                };

                composite.SaveRequested += Composite_SaveRequested;
                composite.Closed        += Child_Closed;

                _childWindows.Add(composite);

                composite.Show();
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.ToString(), this.Title, MessageBoxButton.OK, MessageBoxImage.Error);
            }
        }
Ejemplo n.º 3
0
        private void KernelEdit_Click(object sender, RoutedEventArgs e)
        {
            try
            {
                Tuple<Border, int> kernel = GetSelectedKernel(_kernelContextMenu.PlacementTarget);
                if (kernel == null)
                {
                    MessageBox.Show("Couldn't identify filter", this.Title, MessageBoxButton.OK, MessageBoxImage.Warning);
                    return;
                }

                ConvolutionBase2D selected = _kernels[kernel.Item2];

                if (selected is Convolution2D)
                {
                    #region Single

                    ImageFilterPainter editor = new ImageFilterPainter();

                    editor.SaveRequested += Painter_SaveRequested;
                    editor.Closed += Child_Closed;

                    _childWindows.Add(editor);

                    editor.EditKernel((Convolution2D)selected);

                    editor.Show();

                    #endregion
                }
                else if (selected is ConvolutionSet2D)
                {
                    #region Set

                    CompositeFilter composite = new CompositeFilter((ConvolutionSet2D)selected)
                    {
                        // I don't want this one on top
                        //Owner = this,       // setting this so it stays on top of this window
                    };

                    composite.SaveRequested += Composite_SaveRequested;
                    composite.Closed += Child_Closed;

                    _childWindows.Add(composite);

                    composite.Show();

                    #endregion
                }
                else
                {
                    MessageBox.Show("Unknown type of kernel: " + _kernels[kernel.Item2].GetType().ToString(), this.Title, MessageBoxButton.OK, MessageBoxImage.Error);
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.ToString(), this.Title, MessageBoxButton.OK, MessageBoxImage.Error);
            }
        }
Ejemplo n.º 4
0
        private void CompositeFilter_Click(object sender, RoutedEventArgs e)
        {
            try
            {
                CompositeFilter composite = new CompositeFilter()
                {
                    Owner = this,       // setting this so it stays on top of this window
                };

                composite.SaveRequested += Composite_SaveRequested;
                composite.Closed += Child_Closed;

                _childWindows.Add(composite);

                composite.Show();
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.ToString(), this.Title, MessageBoxButton.OK, MessageBoxImage.Error);
            }
        }