Exemple #1
0
        public ShadeTool(Canvas canvas, CropTool cropTool)
        {
            _canvas   = canvas;
            _cropTool = cropTool;

            ShadeOverlay = new Path
            {
                Fill    = Brushes.Black,
                Opacity = 0.5
            };

            _geometryGroup = new GeometryGroup();
            RectangleGeometry geometry1 = new RectangleGeometry(new Rect(new Size(_canvas.Width, _canvas.Height)));

            _rectangleGeo = new RectangleGeometry(
                new Rect(
                    _cropTool.TopLeftX,
                    _cropTool.TopLeftY,
                    _cropTool.Width,
                    _cropTool.Height
                    )
                );
            _geometryGroup.Children.Add(geometry1);
            _geometryGroup.Children.Add(_rectangleGeo);
            ShadeOverlay.Data = _geometryGroup;
        }
Exemple #2
0
        public CropService(FrameworkElement adornedElement)
        {
            _adornedElement = adornedElement;
            _canvas         = new Canvas
            {
                Height = adornedElement.ActualHeight,
                Width  = adornedElement.ActualWidth
            };
            _cropAdorner = new CropAdorner(adornedElement, _canvas);
            var adornerLayer = AdornerLayer.GetAdornerLayer(adornedElement);

            Debug.Assert(adornerLayer != null, nameof(adornerLayer) + " != null");
            adornerLayer.Add(_cropAdorner);

            _cropTool = new CropTool(_canvas);
            _cropTool.CroppedAreaChangedEvent += OnCroppedAreaChanged;
            _createState      = new CreateState(_cropTool, _canvas);
            _completeState    = new CompleteState();
            _dragState        = new DragState(_cropTool, _canvas);
            _currentToolState = _completeState;

            _cropAdorner.MouseLeftButtonDown += AdornerOnMouseLeftButtonDown;
            _cropAdorner.MouseMove           += AdornerOnMouseMove;
            _cropAdorner.MouseLeftButtonUp   += AdornerOnMouseLeftButtonUp;

            _cropTool.Redraw(0, 0, 0, 0);
        }
 public TextTool(CropTool cropTool)
 {
     _cropTool = cropTool;
     TextBlock = new TextBlock
     {
         Text       = "Size counter",
         FontSize   = 14,
         Foreground = Brushes.White,
         Background = Brushes.Black,
         Visibility = Visibility.Hidden
     };
 }
        public CropService(FrameworkElement adornedElement, bool squareSelection)
        {
            //Hack: added by thr
            _squareSelection = squareSelection;

            _canvas = new Canvas
            {
                Height = adornedElement.ActualHeight,
                Width  = adornedElement.ActualWidth
            };
            _cropAdorner = new CropAdorner(adornedElement, _canvas);
            var adornerLayer = AdornerLayer.GetAdornerLayer(adornedElement);

            Debug.Assert(adornerLayer != null, nameof(adornerLayer) + " != null");
            adornerLayer.Add(_cropAdorner);

            var cropShape = new CropShape(
                new Rectangle
            {
                Height          = 0,
                Width           = 0,
                Stroke          = Brushes.Black,
                StrokeThickness = 1.5
            },
                new Rectangle
            {
                Stroke          = Brushes.White,
                StrokeDashArray = new DoubleCollection(new double[] { 4, 4 })
            }
                );

            _cropTool         = new CropTool(_canvas, _squareSelection);
            _createState      = new CreateState(_cropTool, _canvas);
            _completeState    = new CompleteState();
            _dragState        = new DragState(_cropTool, _canvas);
            _currentToolState = _completeState;

            _cropAdorner.MouseLeftButtonDown += AdornerOnMouseLeftButtonDown;
            _cropAdorner.MouseMove           += AdornerOnMouseMove;
            _cropAdorner.MouseLeftButtonUp   += AdornerOnMouseLeftButtonUp;

            _cropTool.Redraw(0, 0, 0, 0);
        }
        public ThumbTool(Canvas canvas, CropTool cropTool)
        {
            _canvas      = canvas;
            _cropTool    = cropTool;
            BottomMiddle = new ThumbCrop(_thumbSize, Cursors.SizeNS);
            LeftMiddle   = new ThumbCrop(_thumbSize, Cursors.SizeWE);
            TopMiddle    = new ThumbCrop(_thumbSize, Cursors.SizeNS);
            RightMiddle  = new ThumbCrop(_thumbSize, Cursors.SizeWE);
            TopLeft      = new ThumbCrop(_thumbSize, Cursors.SizeNWSE);
            TopRight     = new ThumbCrop(_thumbSize, Cursors.SizeNESW);
            BottomLeft   = new ThumbCrop(_thumbSize, Cursors.SizeNESW);
            BottomRight  = new ThumbCrop(_thumbSize, Cursors.SizeNWSE);

            LeftMiddle.DragDelta   += LeftMiddle_DragDelta;
            BottomMiddle.DragDelta += BottomMiddle_DragDelta;
            TopMiddle.DragDelta    += TopMiddle_DragDelta;
            RightMiddle.DragDelta  += RightMiddle_DragDelta;
            TopLeft.DragDelta      += TopLeft_DragDelta;
            TopRight.DragDelta     += TopRight_DragDelta;
            BottomLeft.DragDelta   += BottomLeft_DragDelta;
            BottomRight.DragDelta  += BottomRight_DragDelta;
        }