Class TLspPaintingOrder

All Implemented Interfaces:
ILspPaintingOrder, Comparator<ILspPaintingOrder.PaintStep>

public class TLspPaintingOrder extends Object implements ILspPaintingOrder
Default implementation of ILspPaintingOrder. This implementation sorts according to the following criteria (in this order):
  • Paint state: regular before selected before editing;
  • Paint representation: bodies before labels before editing handles;
  • Layer order, bottom to top.
The paint representation and paint state are jointly handled by a delegate comparator, which can be overridden using setPaintRepresentationStateComparator(java.util.Comparator). This allows users to easily modify the order while still respecting the view's layer order. Note, however, that TLspPaintRepresentation and TLspPaintState have a sort order property, so that for instance the introduction of a custom paint representation will often not require implementing a custom ILspPaintingOrder.