Default handles provider for features.
More...
#include <luciad/edit/features/FeatureHandlesProvider.h>
|
class | IHandleFactory |
| Allows you to specify the translate handle that is used by this handles provider. More...
|
|
Default handles provider for features.
It can create a handles for features by:
creating
a handle to translate the entire feature
delegating
to a geometry handles provider.
The delegate geometry handles are created using an IGeometryHandlesProvider
. The geometry is extracted from the feature using the IFeatureGeometryProvider
that is provided
by the feature layer. This IFeatureGeometryProvider
can be configured
in the feature layer.
- Since
- 2020.1
◆ FeatureHandlesProvider()
luciad::FeatureHandlesProvider::FeatureHandlesProvider |
( |
| ) |
|
◆ ~FeatureHandlesProvider()
luciad::FeatureHandlesProvider::~FeatureHandlesProvider |
( |
| ) |
|
|
override |
◆ canProvide()
Indicates if this handles provider can create handles for the given Feature.
- Parameters
-
feature | an observable Feature. |
context | the context. Contains additional information about the edited feature. |
- Returns
- if this handles provider can create handles for the given Feature.
Implements luciad::IFeatureHandlesProvider.
◆ getGeometryHandlesProvider()
◆ getHandleFactory()
std::shared_ptr< IHandleFactory > luciad::FeatureHandlesProvider::getHandleFactory |
( |
| ) |
const |
- Returns
- the handle factory used by the handles provider
◆ provide()
Returns handles for the given feature.
If this provider doesn't support the given feature, it can return nullptr
.
- Parameters
-
feature | the observable feature for which to create handles. |
context | the context. Contains additional information about the edited feature. |
featureEditCallback | a callback that notifies the caller when the Feature has changed. |
- Returns
- handles for the given feature. If this provider doesn't support the given feature, it can return
nullptr
.
Implements luciad::IFeatureHandlesProvider.
◆ setGeometryHandlesProvider()
void luciad::FeatureHandlesProvider::setGeometryHandlesProvider |
( |
std::shared_ptr< IGeometryHandlesProvider > |
handlesProvider | ) |
|
◆ setHandleFactory()
void luciad::FeatureHandlesProvider::setHandleFactory |
( |
std::shared_ptr< IHandleFactory > |
handleFactory | ) |
|
Sets the IHandleFactory that is used by this handles provider to create a new translate handle.
If this method is not called, a default handle factory is used. You can change the behavior of this default handle factory by:
retrieving it
- wrapping it with your own
IHandleFactory
implementation, by delegating to the default factory
- omitting/replacing the handle that is returned
- Parameters
-
handleFactory | a handle factory |