public Ellipse(PointF location, SizeF sz, IPrimitiveProvider primitiveProvider) { if (primitiveProvider == null) { throw new ArgumentNullException(nameof(primitiveProvider)); } __location = location; var ellipse = primitiveProvider.GetPrimitive <AbstractEllipse>(location, sz); var bound = primitiveProvider.GetPrimitive <AbstractRectangle>(location, sz); ellipse.Visible = true; bound.Visible = false; Styles.CircleStyles.ApplyDefaultPatternTo(ellipse); Styles.RectStyles.ApplySelectedPatternTo(bound); InitializePrimaryPrimitiveAndBound(ellipse, bound); var b = bound.GetBounds(); InitializeDefaultAnchor(b, primitiveProvider); InitializeResizeHandle(primitiveProvider); CanSelect = true; }
public Text(PointF location, SizeF size, IPrimitiveProvider primitiveProvider) { if (primitiveProvider == null) { throw new ArgumentNullException(nameof(primitiveProvider)); } var c = primitiveProvider.GetPrimitive <AbstractText>(); __location = location; c.Location = Point.Ceiling(location); c.StringSize = size; var bound = primitiveProvider.GetPrimitive <AbstractRectangle>(location, size); c.Visible = true; bound.Visible = false; Styles.TextStyles.ApplyDefaultPatternTo(c); Styles.RectStyles.ApplySelectedPatternTo(bound); InitializePrimaryPrimitiveAndBound(c, bound); var b = c.GetBounds(); InitializeDefaultAnchor(b, primitiveProvider); InitializeResizeHandle(primitiveProvider); CanSelect = true; }
public Line(IPrimitiveProvider primitiveProvider) { this.provider = primitiveProvider ?? throw new ArgumentNullException(nameof(primitiveProvider)); var line = primitiveProvider.GetPrimitive <AbstractLine>(); line.Visible = true; Styles.LineStyles.ApplyDefaultPatternTo(line); InitializePrimaryPrimitiveAndBound(line, null); PointChanged += Line_PointChanged; CanSelect = true; }
protected Rect(PointF location, SizeF size, IPrimitiveProvider primitiveProvider) { if (primitiveProvider == null) { throw new ArgumentNullException(nameof(primitiveProvider)); } __location = location; var rect = primitiveProvider.GetPrimitive <AbstractRectangle>(location, size); var bound = primitiveProvider.GetPrimitive <AbstractRectangle>(location, size); rect.Visible = true; bound.Visible = false; Styles.RectStyles.ApplyDefaultPatternTo(rect); Styles.RectStyles.ApplySelectedPatternTo(bound); InitializePrimaryPrimitiveAndBound(rect, bound); var b = rect.GetBounds(); InitializeDefaultAnchor(b, primitiveProvider); InitializeResizeHandle(primitiveProvider); CanSelect = true; }
protected AbstractHandle(PointF location, AbstractShape parent, IPrimitiveProvider primitiveProvider) { if (primitiveProvider == null) { throw new ArgumentNullException(nameof(primitiveProvider)); } __location = location; __parentShape = parent; var rect = primitiveProvider.GetPrimitive <AbstractRectangle>( new PointF(location.X - HANDLE_SIZE, location.Y - HANDLE_SIZE), new SizeF(HANDLE_SIZE * 2 + 1, HANDLE_SIZE * 2 + 1)); rect.DrawModel = DrawModel.Center; InitializePrimaryPrimitiveAndBound(rect, null); CanSelect = false; Visible = false; Styles.HandleStyles.ApplyDefaultPatternTo(rect); }