public class TLcyLspStyledLayerCustomizerPanelFactory
extends com.luciad.internal.lucy.gui.customizer.lightspeed.ALcyArrayCustomizerPanelFactory
ILcyCustomizerPanelFactory
implementation which can create
ILcyCustomizerPanel
s for TLcyLayerContext
instances containing an
ILspLayer
, or an array of such TLcyLayerContext
instances.
The created panel will contain UI to modify the general layer settings (e.g. visible,
selectable, ... ). To create this UI, this factory relies on another
ILcyCustomizerPanelFactory
instance which accepts the TLcyLayerContext
,
or the array of TLcyLayerContext
instances.
Currently, the created customizer panel will contain UI to modify the style of the layer as
well when the layer fulfills the requirements documented in the ALcyLspStyleFormat#createLayerFactoryImpl
method. In such case, the
creation of the actual UI to modify the layer style of those layers is delegated to other
ILcyCustomizerPanelFactory
instances.
Consult the section about Lightspeed styles in the developer guide for more information about this factory, on the customization possibilities.
Constructor and Description |
---|
TLcyLspStyledLayerCustomizerPanelFactory(ILcyLucyEnv aLucyEnv)
Create a new
TLcyLspStyledLayerCustomizerPanelFactory . |
TLcyLspStyledLayerCustomizerPanelFactory(ILcyLucyEnv aLucyEnv,
ILcyCustomizerPanelFactory aLayerContextCustomizerPanelFactory)
Create a new
TLcyLspStyledLayerCustomizerPanelFactory which uses
aLayerContextCustomizerPanelFactory to create the UI for the general layer
settings (e.g. |
TLcyLspStyledLayerCustomizerPanelFactory(ILcyLucyEnv aLucyEnv,
ILcyCustomizerPanelFactory aLayerContextCustomizerPanelFactory,
List<ILcyCustomizerPanelFactory> aCustomizableStyleContextCustomizerPanelFactories)
Create a new
TLcyLspStyledLayerCustomizerPanelFactory where the UI for both the
general layer settings (e.g. |
Modifier and Type | Method and Description |
---|---|
protected ILcyCompositeCustomizerPanel |
createCompositeCustomizerPanel(Map<ILcyCustomizerPanel,Object> aCustomizerPanelObjectMap)
Create a new
ILcyCompositeCustomizerPanel which will be used as container for
all the ILcyCustomizerPanel instances which are created. |
ILcyCustomizerPanel |
createCustomizerPanel(Object aObject)
Creates a new instance of
ILcyCustomizerPanel . |
public TLcyLspStyledLayerCustomizerPanelFactory(ILcyLucyEnv aLucyEnv)
Create a new TLcyLspStyledLayerCustomizerPanelFactory
. The UI for the general
layer settings (e.g. visible, selectable, ... ) will be created by a default
ILcyCustomizerPanelFactory
. The UI for the layer style is created by the
registered ILcyCustomizerPanelFactory
instances of the Lucy back-end.
Use the other available constructors if you want to specify which
ILcyCustomizerPanelFactory
instances should be used to create the UI.
aLucyEnv
- The Lucy back-endpublic TLcyLspStyledLayerCustomizerPanelFactory(ILcyLucyEnv aLucyEnv, ILcyCustomizerPanelFactory aLayerContextCustomizerPanelFactory)
Create a new TLcyLspStyledLayerCustomizerPanelFactory
which uses
aLayerContextCustomizerPanelFactory
to create the UI for the general layer
settings (e.g. visible, selectable). The UI for the layer style is created by the registered
ILcyCustomizerPanelFactory
instances of the Lucy back-end.
aLayerContextCustomizerPanelFactory
should accept TLcyLayerContext
instances containing an ILspLayer
, and arrays of those contexts. An example of
such a factory is the available TLcyLspLayerCustomizerPanelFactory
.
In case you want to specify which ILcyCustomizerPanelFactory
instances will be
used to create its UI, use the TLcyLspStyledLayerCustomizerPanelFactory(com.luciad.lucy.ILcyLucyEnv,
com.luciad.lucy.gui.customizer.ILcyCustomizerPanelFactory, java.util.List)
constructor.
aLucyEnv
- The Lucy back-endaLayerContextCustomizerPanelFactory
- The customizer panel factory which will be used to create the UI for the
general layer settings (e.g. visible, selectable, ... ). Should be able to
create customizer panels for TLcyLayerContext
instances containing
an ILspLayer
, or an array of such instances. Must not be
null
TLcyLspLayerCustomizerPanelFactory
public TLcyLspStyledLayerCustomizerPanelFactory(ILcyLucyEnv aLucyEnv, ILcyCustomizerPanelFactory aLayerContextCustomizerPanelFactory, List<ILcyCustomizerPanelFactory> aCustomizableStyleContextCustomizerPanelFactories)
Create a new TLcyLspStyledLayerCustomizerPanelFactory
where the UI for both the
general layer settings (e.g. visible, selectable, ... ) and the UI for the layer style is
created by the specified ILcyCustomizerPanelFactory
instances.
aLayerContextCustomizerPanelFactory
is responsible for the UI for the general
layer settings and should accept TLcyLayerContext
instances containing an
ILspLayer
, and arrays of those contexts. An example of such a factory is the
available TLcyLspLayerCustomizerPanelFactory
.
The factories contained in aCustomizableStyleContextCustomizerPanelFactories
are used for
the creation of the UI of the layer style. The objects passed to these factories are either a
TLcyLspCustomizableStyleContext
instance or an array of such instances.
See the other constructors in case you want to use the available
ILcyCustomizerPanelFactory
instances of the Lucy back-end.
aLucyEnv
- The Lucy back-endaLayerContextCustomizerPanelFactory
- The customizer panel factory which will be used to create the UI for the
general layer settings (e.g. visible, selectable, ... ). Should be able to
create customizer panels for TLcyLayerContext
instances containing
an ILspLayer
, or an array of such instances. Must not be
null
aCustomizableStyleContextCustomizerPanelFactories
- The customizer panel factories to use. When null
, all registered
factories of the back-end will be used.public ILcyCustomizerPanel createCustomizerPanel(Object aObject)
ILcyCustomizerPanelFactory
Creates a new instance of ILcyCustomizerPanel
. Users of this method will most
likely set an object to the returned ILcyCustomizerPanel
using ILcyCustomizerPanel.setObject(Object)
. Whether that is possible can be verified in advance
using ILcyCustomizerPanelFactory.canCreateCustomizerPanel(Object)
.
aObject
- The object to create an ILcyCustomizerPanel
for.ILcyCustomizerPanel
.ILcyCustomizerPanelFactory.canCreateCustomizerPanel(java.lang.Object)
protected ILcyCompositeCustomizerPanel createCompositeCustomizerPanel(Map<ILcyCustomizerPanel,Object> aCustomizerPanelObjectMap)
Create a new ILcyCompositeCustomizerPanel
which will be used as container for
all the ILcyCustomizerPanel
instances which are created.
Overriding this method allows to e.g. combine multiple ILcyCustomizerPanel
s in
one tab, ... .
The default implementation returns a TLcyCompositeCustomizerTabbedPane
where
certain panels are combined in one tab.
aCustomizerPanelObjectMap
- Map containing the ILcyCustomizerPanel
instances
which will be added to the composite panel, and the objects
for which those panels are created. For example when a
customizer panel was created for a TLcyLspCustomizableStyleContext
the object in the map will be that context.ILcyCompositeCustomizerPanel