Class TLcyModelCustomizerAddOn
This add-on brings up a UI panel to inspect and edit the properties of a selected model. Typically, this is a tabular representation of the properties of the domain objects in the model. It can be activated by clicking the "File | New | Table View" menu-item. A model is selected if its layer is selected.
This add-on provides an ILcyApplicationPane
(the UI panel) and the logic to decide for which
ILcdModel
a user interface should be shown. The actual content that is shown for a certain model is an
ILcyCustomizerPanel
, created by its respective factory.
Those factories are not provided by this add-on. They might be provided by the various data format add-ons, but
usually they don't do it either. Instead, most data formats rely on
the TLcyToteAddOn
which provides a generic UI that can deal with many models with vector data.
It tries to create such an ILcyCustomizerPanel
by iterating over all registered
ILcyCustomizerPanelFactory
objects with a TLcyModelContext
that
contains the model, layer and view in which the model is contained. In case of multiple
selection, an array of TLcyModelContext
instances is used. When no customizer can be
found for the TLcyModelContext[]
, the add-on will try to create customizer panels
for every TLcyModelContext
instance. This add-on caches the created
ILcyCustomizerPanel
instances so they can be reused when the layer selection
changes. This cache uses SoftReference
to prevent memory issues.
The menu-items and the location of the ILcyApplicationPane
can be configured in
the configuration file of this add-on.
Next to that, this add-on allows to drag a layer from the layer control to an (empty) area in order to show the table. It does so by registering a DropTargetListener. Finally, this ad-don also adds workspace support for the application panes it creates.
Note: The deprecated ILcyModelCustomizerFactory
instances are still
supported.
- Since:
- 11.0
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
plugInto
(ILcyLucyEnv aLucyEnv) Creates and plugs in the add-on's preferences tool.void
unplugFrom
(ILcyLucyEnv aLucyEnv) Unplugs the add-on's preferences tool.Methods inherited from class com.luciad.lucy.addons.ALcyPreferencesAddOn
createPreferencesTool, getLongPrefix, getLucyEnv, getPreferences, getPreferencesTool, getShortPrefix
Methods inherited from class com.luciad.lucy.addons.ALcyAddOn
getConfigSourceName, getDisplayName, setConfigSourceName, setDisplayName
-
Constructor Details
-
TLcyModelCustomizerAddOn
public TLcyModelCustomizerAddOn()Default constructor
-
-
Method Details
-
plugInto
Description copied from class:ALcyPreferencesAddOn
Creates and plugs in the add-on's preferences tool.- Overrides:
plugInto
in classALcyPreferencesAddOn
- Parameters:
aLucyEnv
- the Lucy environment to plug into- See Also:
-
unplugFrom
Description copied from class:ALcyPreferencesAddOn
Unplugs the add-on's preferences tool.- Overrides:
unplugFrom
in classALcyPreferencesAddOn
- Parameters:
aLucyEnv
- the Lucy environment- See Also:
-