Releases: Blazor-Diagrams/Blazor.Diagrams
Releases · Blazor-Diagrams/Blazor.Diagrams
3.0.3
Added
- Support for .NET 9 (thanks to @PanayiotisTheodosiou)
registerDefaultBehaviorsargument toBlazorDiagramconstructor, it'strueby default and can be disabled if you want to control what behaviors are added and their order.
Changed
- Make
DiagramCanvasawait un-subscription to resizes subscription (thanks to @toluwtglobal)
Fixed
- Exception thrown when
node.Visiblewasfalsefrom the creation and the library was trying to observe its resizes when the element won't exist (fixes #476).
Removed
- gzip versions of assets, it was causing an issue with .NET 9 (fixes #471, thanks a lot @robertmclaws)
3.0.2
What's Changed
- Update ReflectionUtils.cs by @robertmclaws in #401
- upgrade to net8.0 by @SebastianWachsmuth in #395
- Version 3.0.2 by @zHaytam in #418
New Contributors
- @robertmclaws made their first contribution in #401
- @SebastianWachsmuth made their first contribution in #395
Full Changelog: 3.0.1...3.0.2
3.0.1
Added
Routeproperty toBaseLinkModelto hold the result of the executed router
Fixed
- Constraints not checked when using
RemoveControl(thanks to @K0369) - NRE Exception on the landing page demo when dragging a new link and not linking it to something (thanks to @K0369)
LinkVertexWidgetTestsfailing on cultures that are not using a dot as decimal separator (thanks to @K0369)- NRE exception in the Diagram Demo project (thanks to @Suraj0500)
3.0.0
Finally, the new documentation website is here!
Please don't hesitate to create issues for any problems or improvements.
PS: I suck at design.
Added
AddLabelmethod to links to easily createLinkLabelModelAddVertexmethod to links to easily createLinkVertexModelControlledSizeproperty to nodes. Iftrue, the node will not be registered in theResizeObserver(saves a JS call).autoSizeargument toSvgGroupModelconstructor
Changed
- Renamed
Point.SubstracttoSubtract(duh) - Avoid rendering link selection helper on dragged link
Fixed
SmoothPathGeneratornot working withLinkAnchor- Mouse overlapping dragged link
- Useless Console Logs from
GroupModelare now removed - JS exception in
(un)obervemethods when the element doesn't exist anymore
Check out the other beta version for a complete CHANGELOG !
3.0.0 beta 7
Fix a dumb issue by me regarding ordering
3.0.0 beta 6
All NuGet packages have been updated.
Added
Styleparameter toPortRendererTargetAttachedto links, which triggers when a dragged link attaches to a target- If port snapping is enabled, it will trigger only once when you let go of the mouse
SuspendSortingtoDiagramin order to suspend sorting models in eachOrderChanged- If you know what you're doing, you could save some processing and avoid sorting everytime
RefreshOrdersto be called after unsuspending sorting in order to sort the models again and refresh the diagram
Changed
BaseLayer.Addnow returns the specific type given to it in argument- [BREAKING] CSS classes are now prefixed with
diagram-to avoid clashes with other librariesdiagram-group,diagram-node,diagram-link,diagram-port,diagram-link-label,diagram-link-vertex,diagram-control
Fixed
- Portless links in children not refreshing when moving the parent group
- Link's
GetBoundsnot returning a valid box - Port snapping choosing the first port in radius rather than the closest one
- Remove
Console.WriteLinefromKeyboardShortcutsBehavior - Diagram overwriting
Orderwhen it's not zero (zero being the default int value, which we now consider as not set)
3.0.0 beta 5
Added
AdditionalSvgoption toDiagramCanvasin order to render any extra SVG content you wantAdditionalHtmloption toDiagramCanvasin order to render any extra HTML content you wantDistanceTooverload method toPointthat takes x and yMoveAlongLinemethod toPointFullPathtoPathGeneratorResultto represent the full path without cuts- Fallback router to Orthogonal router
- Margin options to
OrthogonalRouter radiusoption toStraightPathGeneratorin order to generate rounded bends- Support for custom vertices
AutoSizeoption to groups to control whether moving children resizes the group
Changed
- All routers are now classes instead of functions, they inherit from the new abstract class
Router - All path generators are now classes instead of functions, they inherit from the new abstract class
PathGenerator - Optimize Orthogonal router by using custom A* (x5 improvement)
Removed
RouterdelegatePathGeneratordelegate
3.0.0 beta 4
Added
- Initial version of Ordering!
- Nodes, groups and links can now be ordered using the new
Orderproperty orSendToFront/Backmethods Diagram.OrderedSelectablesreturns the ordered selectables/modelsDiagramCanvasnow uses this new property to render everything
- Nodes, groups and links can now be ordered using the new
GridSnapToCenteroption in order to snap nodes from their center instead of their top/left position (thanks to @Jeremy Vance)- More unit tests
Changed
Groupsis not a list of groups anymore, but a layer instead (just likeNodesandLinks)
Fixed
- Deleting a group doesn't delete links attached to it
- Deleting a group inside of a group doesn't refresh the parent group
- Links not refreshing when a group's dimensions are updated directly (e.g. deleting a child)
- Layers causing more refreshes than intended
Removed
- All group-related methods and events from
Diagram, please use the new layer from now on
3.0.0-beta.3
Added
- Support for
LinkFactoryto return null in order to not create an ongoing link - Support for free links (no source/target required)
PositionAnchorwhich reprensents a simple plain position (mutable)ArrowHeadControlto control a link's Source/Target on the flyattachedcss class to attached links
Changed
- Replace
OngoingPositionwith the newPositionAnchorBaseLinkModel.Targetwill never be null anymore. An ongoing link will have a position anchor as the target
Links.Factorysignature now takes the diagram, source (model) and the target anchor- Move
DynamicAnchorback toAnchorsnamespace and seal allAnchorclasses
Fixed
- Links attached to links not refreshing when the others are
LinkPathPositionProvidernot working with maxlength ratios- Deleting a link not deleting the links attached to it
Removed
PositionProviderargument fromExecutableControlfor more freedomIdandRefreshfromILinkable- Unused
OffsetfromAnchorand makeModelnullable
3.0.0 beta 2
Added
Movedevent to MovablesVisibleproperty andVisbilityChangedevent to modelsOptions.Virtualization(of type[Diagram]VirtualizationOptions) for virtualization optionsPointerEnter/Leaveevents for groups as well- Experimental Link to Link (using
LinkAnchor)
Changed
- Rename
RegisterModelComponenttoRegisterComponent - Rename
GetComponentForModeltoGetComponent - Virtualization is now handled by a behavior instead of NodeRender
- This means that it works for almost all models (nodes, groups and links)
- Render link labels without foreignObject in widget nor MarkupString (Thank you .NET 6)
- Custom link labels only need to contain relevant content, they don't need to handle positioning anymore
Removed
EnableVirtualizationoption (see added alternative)