isRendererForitem

Based on properties, determine whether this renderer is
valid to render Item.

Additional states in properties helps to make a decision,
including:

PreviewProperty.DIRECTED: If the graph is directed

PreviewProperty.MOVING: Specific to the Processing target, this
is true if the user is currently moving the canvas. Renderers
other than the node renderer usually render nothing while the user is moving
to speeds things up.

needsItemBuilder

Based on the itemBuilder class and the properties,
determine whether this renderer needs the given itemBuilder to be
executed before rendering.

This is used for avoiding building unnecessary items while refreshing preview.

You can simply return true if the builder builds items that this renderer renders,
but you can also check the current properties to see if your renderer is going to produce any graphic.

Additional states in properties helps to make a decision,
including:

PreviewProperty.DIRECTED: If the graph is directed

PreviewProperty.MOVING: Specific to the Processing target, this
is true if the user is currently moving the canvas. Renderers
other than the node renderer usually render nothing while the user is moving
to speeds things up.