public abstract class ALcyLspDomainObjectSupplier extends Object
Lightspeed counterpart of ALcyDomainObjectSupplier
. It provides the ILspShapeDiscretizer
,
ILspStyler
and ILspEditor
for visualizing and editing the domain
objects of the associated ALcyDomainObjectSupplier
in a Lightspeed view.
If the associated ALcyDomainObjectSupplier
supports extruded shapes, the ILspShapeDiscretizer
, ILspStyler
and ILspEditor
created by this ALcyLspDomainObjectSupplier
must be able to handle those extruded shapes in a Lightspeed
view.
All the model related functionality is contained in the matching ALcyDomainObjectSupplier
.
ALcyDomainObjectSupplier
Modifier | Constructor and Description |
---|---|
protected |
ALcyLspDomainObjectSupplier(ALcyDomainObjectSupplier aDomainObjectSupplier)
Creates a new
ALcyLspDomainObjectSupplier . |
Modifier and Type | Method and Description |
---|---|
abstract ILspShapeDiscretizer |
createShapeDiscretizer(TLspPaintRepresentation aPaintRepresentation)
Creates the shape discretizer for the domain objects of the associated
ALcyDomainObjectSupplier . |
abstract ILspEditor |
createShapeEditor(TLspPaintRepresentation aPaintRepresentation)
Creates the editor for the domain objects of the associated
ALcyDomainObjectSupplier . |
abstract ILspStyler |
createShapeStyler(TLspPaintRepresentationState aPaintRepresentationState)
Creates the styler for the domain objects of the associated
ALcyDomainObjectSupplier . |
TLspPaintRepresentation[] |
getBodyPaintRepresentations()
Returns the body paint representations that can be visualized and/or edited by this supplier.
|
ALcyDomainObjectSupplier |
getDomainObjectSupplier()
Returns the GXY counterpart which was passed in the constructor
|
TLspPaintRepresentation[] |
getLabelPaintRepresentations()
Returns the label paint representations that can be visualized and/or edited by this supplier.
|
protected ALcyLspDomainObjectSupplier(ALcyDomainObjectSupplier aDomainObjectSupplier)
ALcyLspDomainObjectSupplier
. Since Lightspeed domain object suppliers
only provide methods to obtain the editor and discretizer, the GXY counterpart is passed in the
constructor. This allows to recuperate the rest of the functionality of a domain object
supplier from the GXY part.aDomainObjectSupplier
- the GXY counterpartpublic ALcyDomainObjectSupplier getDomainObjectSupplier()
public TLspPaintRepresentation[] getBodyPaintRepresentations()
styler
, discretizer
, and editor
are retrieved. The default implementation
supports the TLspPaintRepresentation.BODY
representation.public TLspPaintRepresentation[] getLabelPaintRepresentations()
styler
, discretizer
, and editor
are retrieved. The default implementation
supports the TLspPaintRepresentation.LABEL
representation.createShapeStyler(com.luciad.view.lightspeed.layer.TLspPaintRepresentationState)
public abstract ILspShapeDiscretizer createShapeDiscretizer(TLspPaintRepresentation aPaintRepresentation)
Creates the shape discretizer for the domain objects of the associated ALcyDomainObjectSupplier
. If that associated ALcyDomainObjectSupplier
supports
extruded shapes, the shape discretizer created by this method should also be able to discretize
these extruded shapes.
May return null
when a default discretizer should be used.
It is the responsibility of the layer factory created in the TLcyLspDrawingFormat
to
pass these shape discretizers to the painter of the layer. A typical implementation of the
ILspShapeDiscretizer
which is set to the painter of the layer is a composite
implementation of the ILspShapeDiscretizer
interface based on the ILspShapeDiscretizer
s created in the available ALcyLspDomainObjectSupplier
s. This
composite implementation could include a fallback ILspShapeDiscretizer
for the domain
objects where the corresponding ALcyLspDomainObjectSupplier
created a null
discretizer.
aPaintRepresentation
- the paint representation (e.g. body, label, ...) to create a
discretizer forILspShapeDiscretizer
to discretize the domain objects and extruded domain
objects of the associated ALcyDomainObjectSupplier
. May be null
.TLcyLspDrawingFormat.createLayerFactory()
public abstract ILspEditor createShapeEditor(TLspPaintRepresentation aPaintRepresentation)
Creates the editor for the domain objects of the associated ALcyDomainObjectSupplier
. If that associated ALcyDomainObjectSupplier
supports
extruded shapes, the editor created by this method should also be able to edit these extruded
shapes.
May return null
when no editing support is needed for the domain objects of this
supplier.
It is the responsibility of the layer factory created in the TLcyLspDrawingFormat
to
pass these editors to the layer. A typical implementation of the ILspEditor
which is
set to the layer is a composite implementation of the ILspEditor
interface based on the
ILspEditor
s created in the available ALcyLspDomainObjectSupplier
s.
aPaintRepresentation
- the paint representation (e.g. body, label, ...) to create an
editor forILspEditor
to edit the domain objects and extruded domain objects of the
associated ALcyDomainObjectSupplier
. May be null
.TLcyLspDrawingFormat.createLayerFactory()
public abstract ILspStyler createShapeStyler(TLspPaintRepresentationState aPaintRepresentationState)
Creates the styler for the domain objects of the associated ALcyDomainObjectSupplier
. If that associated ALcyDomainObjectSupplier
supports
extruded shapes, the styler created by this method should also be able to style these extruded
shapes.
It is the responsibility of the layer factory created in the TLcyLspDrawingFormat
to
pass these stylers to the painter of the layer. A typical implementation of the ILspStyler
which is set to the painter is a composite implementation of the ILspStyler
interface based on the ILspStyler
s created in the available ALcyLspDomainObjectSupplier
s.
If null
is returned for the TLspPaintState.EDITED
and TLspPaintState.SELECTED
states, the layer factory may derive
a styler based on the TLspPaintState.REGULAR
state.
aPaintRepresentationState
- the paint representation and state to create a styler forILspStyler
to style the domain objects and extruded domain objects of the
associated ALcyDomainObjectSupplier
, or null
if no visualization is
needed for the given paint representation,TLcyLspDrawingFormat.createLayerFactory()