The list below describes recent changes and additions to MindFusion Pack for Xamarin.
New in 2020.R1
MindFusion.Diagramming for Xamarin
General
- The library has been updated to Xamarin.Forms version 4.4. The target runtime of libraries have been changed to .NETStandard 2.0.
- The core MindFusion.Diagramming.dll assembly has been refactored into 2 libraries - MindFusion.Common.dll and MindFusion.Diagramming.dll.
Universal Windows
- The MindFusion.Diagramming.Universal.dll has been refactored into 2 libraries - MindFusion.Common.Universal.dll and MindFusion.Diagramming.Universal.dll.
- Rendering is now done via the Win2D Windows Runtime API, greatly improving rendering speed.
- The referenced Microsoft.NETCore.UniversalWindowsPlatform library has been updated to v.6.2.9.
- The Universal assemblies target Windows 10, version 1903; Minimum target version is Windows 10 Fall Creators Update.
- MindFusion.Diagramming.Platform class has been moved to the MindFusion.Common.Universal namespace.
Android
- The MindFusion.Diagramming.Android.dll has been refactored into 2 libraries - MindFusion.Common.Android.dll and MindFusion.Diagramming.Android.dll.
- The referenced Android SDK has been updated to Android 9.0 Pie (API Level 28).
- MindFusion.Diagramming.Platform class has been moved to the MindFusion.Common.Android namespace.
iOS
- The MindFusion.Diagramming.iOS.dll has been refactored into 2 libraries - MindFusion.Common.iOS.dll and MindFusion.Diagramming.iOS.dll.
- The iOS assemblies target iOS version 13.
- MindFusion.Diagramming.Platform class has been moved to the MindFusion.Common.iOS namespace.
Flip shapes
The shape of a ShapeNode can be flipped horizontally or vertically. Enable the AllowFlip property and the shape flips when an edge is dragged over its opposite edge. You can get or set current flip state using FlipX and FlipY properties.
JSON Serialization
Diagrams can now be serialized in JSON format. This can be used for interoperability with MindFusion JavaScript diagramming library, or for general storage in JSON files or databases. To serialize a Diagram to a JSON string, call its SaveToJson method. To deserialize a diagram back from its JSON representation, call the LoadFromJson method. Custom item classes can implement JSON serialization for their additional properties by overriding the SaveToJson and LoadFromJson methods of DiagramItem. Such classes must be registered for serialization by calling the RegisterItemClass method and providing a string identifier for the clientClass parameter.
Miscellaneous
- DiagramView scroll bars can now be interacted with in UWP and Android.
- New LabelClicked event is raised when users click on a LinkLabel.
- Support for underlined font styles.
- ImagePadding property added to ShapeNode, TableNode and Cell classes.
- RadialMenu improvements.
- The PanAndModify behavior lets you select and modify when touch is over an item, or pan the view otherwise.
- ZoomToFit method added to DiagramView.
- ScrollToggle property allows customizing the scroll toggle control.
- Interactive pinch zoom in UWP.
- Various SaveTo* methods are now async.
- XML serialization improvements and fixes.
- LongPressed event added to Diagram.
- StringFormat.ClipText property and wrap fixes.
- Fix for images in diagram nodes and menus not loading.
- Fix for Clicked, NodeClicked, LinkClicked and CellClicked events not raising correctly.
- Fixed arc segments in UWP graphics paths.
- Fixed a bug which caused the diagram to not show on initial load in a UWP application.
MindFusion.Charting for Xamarin
General
- The library has been updated to Xamarin.Forms version 4.4. The target runtime of libraries have been changed to .NETStandard 2.0.
- The core MindFusion.Charting.dll assembly has been refactored into 2 libraries - MindFusion.Common.dll and MindFusion.Charting.dll.
Universal Windows
The controls can now be used in UWP Xamarin.Forms applications. Support for UWP is implemented by the MindFusion.Charting.Universal.dll assembly. Rendering is done via the Win2D Windows Runtime API.
Android
- The MindFusion.Charting.Android.dll has been refactored into 2 libraries - MindFusion.Common.Android.dll and MindFusion.Charting.Android.dll.
- The referenced Android SDK has been updated to Android 9.0 Pie (API Level 28).
- MindFusion.Charting.Platform class has been moved to the MindFusion.Common.Android namespace.
iOS
- The MindFusion.Charting.iOS.dll has been refactored into 2 libraries - MindFusion.Common.iOS.dll and MindFusion.Charting.iOS.dll.
- The iOS assemblies target iOS version 13.
- MindFusion.Charting.Platform class has been moved to the MindFusion.Common.iOS namespace.
Interactive range selection
Funnel Chart
Funnel charts are often used to represent the stages of a process and show relative values or measurements associated with each stage. In MindFusion.Charting API, funnel charts can be created using the FunnelChart stand-alone control or a FunnelRenderer instance placed inside a more complex dashboard. FunnelChart inherits from the base Chart class and offers additional customization through its SegmentSpacing and StemWidth properties.
Axis origin
The Origin method of Axis class lets you specify the origin of an axis. If set to a non-null value, the component renders an axis line inside the plot. Bars are drawn below that axis line if their values are smaller than the origin. For stacked bar charts, each bar length corresponds to the difference between bar's value and origin.
Miscellaneous
MindFusion.Scheduling for Xamarin
General
The library has been updated to Xamarin.Forms version 4.4. The target runtime of libraries have been changed to .NETStandard 2.0.
The core MindFusion.Scheduling.dll assembly has been refactored into 2 libraries - MindFusion.Common.dll and MindFusion.Scheduling.dll.
Universal Windows
- The underlying rendering implementation has been switched to the Win2D Windows Runtime API.
- The MindFusion.Scheduling.Universal.dll has been refactored into 2 libraries - MindFusion.Common.Universal.dll and MindFusion.Scheduling.Universal.dll.
- The referenced .NETCore UWP SDK has been updated to UWP 6.2.
- MindFusion.Scheduling.Platform class has been moved to the MindFusion.Common.Universal namespace.
Android
- The MindFusion.Scheduling.Android.dll has been refactored into 2 libraries - MindFusion.Common.Android.dll and MindFusion.Scheduling.Android.dll.
- The referenced Android SDK has been updated to Android 9.0 Pie (API Level 28).
- MindFusion.Scheduling.Platform class has been moved to the MindFusion.Common.Android namespace.
iOS
- The MindFusion.Scheduling.iOS.dll has been refactored into 2 libraries - MindFusion.Common.iOS.dll and MindFusion.Scheduling.iOS.dll.
- The iOS assemblies target iOS version 13.
- MindFusion.Scheduling.Platform class has been moved to the MindFusion.Common.iOS namespace.
Miscellaneous