/// <inheritdoc/> public override void Draw(object dc, ShapeRenderer renderer, double dx, double dy, ImmutableArray<XProperty> db, XRecord r) { var record = this.Data.Record ?? r; if (State.Flags.HasFlag(ShapeStateFlags.Visible)) { renderer.Draw(dc, this, dx, dy, db, record); } if (renderer.State.SelectedShape != null) { if (this == renderer.State.SelectedShape) { _start.Draw(dc, renderer, dx, dy, db, record); _end.Draw(dc, renderer, dx, dy, db, record); } else if (_start == renderer.State.SelectedShape) { _start.Draw(dc, renderer, dx, dy, db, record); } else if (_end == renderer.State.SelectedShape) { _end.Draw(dc, renderer, dx, dy, db, record); } } if (renderer.State.SelectedShapes != null) { if (renderer.State.SelectedShapes.Contains(this)) { _start.Draw(dc, renderer, dx, dy, db, record); _end.Draw(dc, renderer, dx, dy, db, record); } } }
/// <inheritdoc/> public override void Draw(object dc, ShapeRenderer renderer, double dx, double dy, ImmutableArray<XProperty> db, XRecord r) { var record = this.Data.Record ?? r; if (State.Flags.HasFlag(ShapeStateFlags.Visible)) { renderer.Draw(dc, this, dx, dy, db, record); base.Draw(dc, renderer, dx, dy, db, record); } }
/// <inheritdoc/> public override void Draw(object dc, ShapeRenderer renderer, double dx, double dy, ImmutableArray<XProperty> db, XRecord r) { var record = this.Data.Record ?? r; if (State.Flags.HasFlag(ShapeStateFlags.Visible)) { renderer.Draw(dc, this, dx, dy, db, record); } if (renderer.State.SelectedShape != null) { if (this == renderer.State.SelectedShape) { var points = this.GetPoints(); foreach (var point in points) { point.Draw(dc, renderer, dx, dy, db, record); } } else { var points = this.GetPoints(); foreach (var point in points) { if (point == renderer.State.SelectedShape) { point.Draw(dc, renderer, dx, dy, db, record); } } } } if (renderer.State.SelectedShapes != null) { if (renderer.State.SelectedShapes.Contains(this)) { var points = this.GetPoints(); foreach (var point in points) { point.Draw(dc, renderer, dx, dy, db, record); } } } }
/// <summary> /// Sets renderer options attached property. /// </summary> /// <param name="obj">The avalonia object.</param> /// <param name="value">The shape render value.</param> public static void SetRenderer(AvaloniaObject obj, ShapeRenderer value) { obj.SetValue(RendererProperty, value); }
public override void Draw(object dc, ShapeRenderer renderer, double dx, double dy, ImmutableArray<XProperty> db, XRecord r) { throw new NotImplementedException(); }
/// <summary> /// Renders a container using provided drawing context. /// </summary> /// <param name="dc">The drawing context.</param> /// <param name="renderer">The shape renderer.</param> /// <param name="container">The container to render.</param> /// <param name="dx">The X coordinate offset.</param> /// <param name="dy">The Y coordinate offset.</param> public abstract void Render(object dc, ShapeRenderer renderer, XContainer container, double dx, double dy);
/// <inheritdoc/> public override void Draw(object dc, ShapeRenderer renderer, double dx, double dy, ImmutableArray<XProperty> db, XRecord r) { var record = this.Data.Record ?? r; if (State.Flags.HasFlag(ShapeStateFlags.Visible)) { foreach (var shape in Shapes) { shape.Draw(dc, renderer, dx, dy, db, record); } } if (renderer.State.SelectedShape != null) { if (this == renderer.State.SelectedShape) { foreach (var connector in Connectors) { connector.Draw(dc, renderer, dx, dy, db, record); } } else { foreach (var connector in Connectors) { if (connector == renderer.State.SelectedShape) { connector.Draw(dc, renderer, dx, dy, db, record); } } } } if (renderer.State.SelectedShapes != null) { if (renderer.State.SelectedShapes.Contains(this)) { foreach (var connector in Connectors) { connector.Draw(dc, renderer, dx, dy, db, record); } } } }
/// <summary> /// Initializes a new instance of the <see cref="PdfExporter"/> class. /// </summary> /// <param name="renderer">The shape renderer.</param> /// <param name="presenter">The container presenter.</param> /// <param name="targetDpi">The target renderer dpi.</param> public PdfExporter(ShapeRenderer renderer, ContainerPresenter presenter, float targetDpi = 72.0f) { _renderer = renderer; _presenter = presenter; _targetDpi = targetDpi; }
public abstract void Draw(object dc, ShapeRenderer renderer, BaseShape shape, ISelection selection, double dx, double dy);
/// <summary> /// Sets the <see cref="DependencyProperty"/> object value as <see cref="ShapeRenderer"/>. /// </summary> /// <param name="obj">The <see cref="DependencyProperty"/> object.</param> /// <param name="value">The <see cref="ShapeRenderer"/> value.</param> public static void SetRenderer(DependencyObject obj, ShapeRenderer value) { obj.SetValue(RendererProperty, value); }
/// <summary> /// Renders a container using provided drawing context. /// </summary> /// <param name="dc">The drawing context.</param> /// <param name="renderer">The shape renderer.</param> /// <param name="container">The container to render.</param> /// <param name="dx">The X coordinate offset.</param> /// <param name="dy">The Y coordinate offset.</param> public abstract void Render(object dc, ShapeRenderer renderer, PageContainer container, double dx, double dy);
/// <summary> /// Draws shape using current <see cref="ShapeRenderer"/>. /// </summary> /// <param name="dc">The generic drawing context object.</param> /// <param name="renderer">The generic renderer object used to draw shape.</param> /// <param name="dx">The X axis draw position offset.</param> /// <param name="dy">The Y axis draw position offset.</param> /// <param name="db">The properties database used for binding.</param> /// <param name="r">The external data record used for binding.</param> public abstract void Draw(object dc, ShapeRenderer renderer, double dx, double dy, ImmutableArray<XProperty> db, XRecord r);