You should be able to prevent the horizontal/vertical overlapping of routed connections . This way the connections should be easier to differentiate. To better differentiate connections, users might: --- use labels on the connections --- use bezier connections --- use different colors for different connections --- use more custom connectors and attach the connections to not used connectors -- use AStartRouter instead of the default one (Grid Router)
Currently large diagrams are hard to export with good quality because of the memory limitation in WritableBitmap when the DPI is increased. -- One option is to use BitMapCacheBrush (discussed here http://www.telerik.com/forums/low-resolution-using-exporttoimage-on-big-diagram) -- Another option is to export multiple images of the diagram which cover it all. Then possibly combine these pictures into one. -- Also , you can try increasing the operating memory of your Visual Studio
Ability to export a diagram to PDF.
Implement support (or extensibility) for printing the whole diagram in a single page.
Research and improve the virtualization performance. Currently, the virtualization in the diagram creates containers for all shapes and sets the Visibility of the containers outside of the viewport to Collapsed. This saves from the layout and rendering performance, but it is not optimal. Consider implementing a standard virtualization mechanism which adds containers in the visual tree only for the shapes within the viewport.
User scenario:
When zooming out on more than 500-600 shapes and then panning, if telerik:DiagramSurface.IsVirtualizing="True", the performance is slower. When virtualization is off, the performance is a little better.
Currently the Bezier Connections Start,End Points and the two editing points are created in a common Canvas. There is no mechanism to hide the editing points but show the start and end point. Note: Currently there's a way to hide editing or intermediate points - you'll need a style and a converter. We've added a new SDK example (HideBezierHandles) demonstrating this.
ManipulationAdorner (including Rotation thumb, resizing thumbs) should not be zoomed along with the shape.
PathTool: Possibility to edit the shape path via edit points like the Pen Tool in Blend.
Diagram Shapes' property is bound to property from the ViewModel. Case 1) Using GraphSource =>Shapes DataContext is automatically apllied. GraphSource is set to null or changed. Or Case 2) Not using Graphsource. Shape's DataContext is set manually (in code behind). Diagram.Clear() is invoked. Result: Binding Expression erors in Output indicate missing properties - these are bound properties of the shapes.
Inherit RadDiagramConnector and add it to a Shapes' Connectors collection. Copy / Pasting (or other serialization / deserialization action) the shape creates RadDiagramConnector, not the custom type of connector.
Allow the user to customize the caps (SourceCapType and TargetCapType) of the connection. Exposed are two new virtual methods in the RadDiagramConnection - CreateSourceCapGeometry and CreateTargetCapGeometry Available in Q1 2015
Extend RadDiagram to support natively Venn Diagrams.
Extend the layout mechanism to allow control over the layouted elements in order to exclude all disconnected shapes from the layout and reorder connections by their target connectors.
Connect the Diagrams BackgroundGrid to the Ruler's Measurement Unit and ScaleDefinitions. Currently only in DPI measurement unit the scaledefinitions and diagram background grid look good and consistent.
There should be annotations (comments) system built into the framework: €¢something like Word where one can add to a word a note €¢something like Excel with its comments bag €¢something like Workflow Foundation where every shape has a popup bag
Should be able to override the AbsolutePosition and the Offset of the connector. Should be able to specify absolute position manually, not only relative. Should be able to provide template for its visual representation. Fixed in LIB version: 2014.2.0914
In data binding scenarios these propeties are not updated automatically. Currently if you want to bind the StartPoint and EndPoint properties of the RadDiagramConnection you will have to update new position of the connection manually. This can be done in the PropertyChanged event of the connection. In the Handler you can cast your connection to IConnection and call the Update() method, if the e.PropertyName holds the property that you change. Will be available in Q1 2015 Release.
Currently there is no straightforward way to notify that a point is added/removed from the ConnectionPoints collection of the RadDiagramConnection.
Expose a property to set the DiagramBehaviors.TextWrapping attached property on a diagram level