public OverlayRectangle(RectangleProperty property, Canvas parent) { _rectangle = new Rectangle(); _rectangle.Stroke = _borderBrush; _rectangle.Fill = new SolidColorBrush(Color.FromArgb(40, 175, 238, 238)); _rectangle.StrokeThickness = 2.0; _property = property; Canvas.SetTop(_rectangle, property.Y); Canvas.SetLeft(_rectangle, property.X); _rectangle.Width = _property.Width; _rectangle.Height = _property.Height; property.PropertyChanged += Property_PropertyChanged; _rectangle.MouseLeftButtonDown += Rectangle_MouseLeftButtonDown; _rectangle.MouseLeftButtonUp += Rectangle_MouseLeftButtonUp; _rectangle.MouseMove += Rectangle_MouseMove; _rectangle.MouseEnter += Rectangle_MouseEnter; _rectangle.MouseLeave += Rectangle_MouseLeave; if(!property.IsOutput) { _topLeftSizeChanger = CreateSizeChanger(_property.X, _property.Y); _topRightSizeChanger = CreateSizeChanger(_property.X + _rectangle.Width, _property.Y); _topRightSizeChanger.Visibility = Visibility.Collapsed; _bottomLeftSizeChanger = CreateSizeChanger(_property.X, _property.Y + _rectangle.Height); _bottomLeftSizeChanger.Visibility = Visibility.Collapsed; _bottomRightSizeChanger = CreateSizeChanger(_property.X + _rectangle.Width, _property.Y + _rectangle.Height); _bottomRightSizeChanger.Visibility = Visibility.Collapsed; parent.Children.Add(_topLeftSizeChanger); parent.Children.Add(_topRightSizeChanger); parent.Children.Add(_bottomLeftSizeChanger); parent.Children.Add(_bottomRightSizeChanger); UpdateSizeChanger(); } }
public override bool Initialize() { base.Initialize(); _aoiProperty = GetProperty("AOI") as RectangleProperty; _inputImage = GetProperty("InputImage") as ImageProperty; _outputImage = GetProperty("OuputImage") as ImageProperty; _intensityProperty = GetProperty("Intensity") as DoubleProperty; return true; }