ILcdSelection allows you to select domain objects from a model that is contained in a layer. If the layer is shared by multiple view objects,
the selection is visible in all views. It is often not possible to share a layer between different view objects, however.
For example, you cannot share a a layer between views if one view is graphical and another is tabular, or when a model is
shared between different layers, each with a distinct representation of the objects within the model.
Consider the case in which multiple views share the same
ILcdModel, but do not share the layer that contains the model. If a change in selection occurs in one of the layers, all layers containing
the same model should be notified of the change and the method
selectObject must be called on these layers to synchronize the selection.
The utility class
TLcdSelectionMediator provides a convenient way to handle selection among distinct
ILcdLayered (or view) objects. You need to initialize the class with two arrays of
ILcdLayered objects. One array acts as a master or source and contains all the
ILcdLayered objects that listen to selection changes in the
ILcdLayer objects it contains. The other array acts as a slave and contains all the
ILcdLayered objects that should be synchronized upon a selection change in one of the master objects. The selection of a layer that belongs
to a slave
ILcdLayered is updated if that layer refers to the same