This class can be used to wrap IDrawer implementations.

Namespace: yWorks.yFiles.Layout.Hierarchic
Assembly: yWorks.yFilesSilverlight.Algorithms (in yWorks.yFilesSilverlight.Algorithms.dll) Version:


public class NodeLabelSpaceDrawer : IDrawer
Visual Basic
Public Class NodeLabelSpaceDrawer _ Implements IDrawer


This class can be used to wrap IDrawer implementations. It modifies the NodeBorderLeft and NodeBorderRight DataProvider instances and delegates the actual drawing to the inner drawer. Actual space requirements are calculated in GetHaloSpace(Node, Boolean) . This implementation uses the maximum left and right label overlaps as the halo values. Note that this will only work with Drawer implementations that respect the values provided through the DataProviders, e.g. MedianLinearSegmentsDrawer and SimplexDrawer.
Here is some example set up code.
// create the Layouter
HierarchicLayouter hl = new HierarchicLayouter();
// set a suitable Drawer
hl.Drawer = new SimplexDrawer();
// wrap the Drawer
hl.Drawer = new NodeLabelSpaceDrawer(hl.Drawer);

This implementation uses INodeLabelLayout s and can therefor not be used with layout orientations other than top to bottom.

Inheritance Hierarchy


See Also