LuciadCPillar 2024.0.08
All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Modules Pages
edit

Supports interactive editing of Features on the Map. More...

Modules

 features
 Editing features.
 
 geometries
 Editing geometries.
 
 handles
 Edit handles.
 

Classes

class  luciad::Editor
 This class allows you to interactively edit Features on the Map. More...
 
class  luciad::EditSettings
 This class contains settings that can be used as defaults for IFeatureHandlesProvider and IGeometryHandlesProvider implementations. More...
 

Enumerations

enum class  luciad::ChangeStatus { luciad::ChangeStatus::InProgress , luciad::ChangeStatus::InProgressKeyPoint , luciad::ChangeStatus::Finished }
 Indicates a change status. More...
 
enum class  luciad::ModelUpdateMode { luciad::ModelUpdateMode::OnAnyChange , luciad::ModelUpdateMode::OnMajorChanges , luciad::ModelUpdateMode::OnEditFinished }
 Enumeration that indicates when changes need to be committed to the model. More...
 

Detailed Description

Supports interactive editing of Features on the Map.

The main entry point for editing is the Editor class. See the related guide for an overview of the editing API.

Enumeration Type Documentation

◆ ChangeStatus

enum class luciad::ChangeStatus
strong

Indicates a change status.

luciad/edit/ChangeStatus.h

It provides more information about the type of a change.

This enum is for example used to indicate what kind of editing or creation changes are performed.

Since
2020.1
See also
IGeometryEditCallback
IGeometryCreateCallback
Enumerator
InProgress 

Indicates that a change is transitional.

This means that more changes are coming. This is for example useful when a mouse button is being dragged. All operations resulting from mouse-dragged events are marked as InProgress, except the last one.

InProgressKeyPoint 

Indicates that the change represents an important key point.

This could for example be the case when a new point is added to a polyline, or the change when you stop dragging a point of a polyline. It for example indicates on which temporary change states undo and redo operations could be performed.

Finished 

Indicates that the change is finished.

No more changes will follow. This change also represents an important key point, like luciad::ChangeStatus::InProgressKeyPoint.

◆ ModelUpdateMode

enum class luciad::ModelUpdateMode
strong

Enumeration that indicates when changes need to be committed to the model.

luciad/edit/ModelUpdateMode.h

This mode is a configuration option for FeatureEditConfigurationBuilder.

This mode can have an influence on editing performance. It is not always a good idea to commit all intermediate editing changes to the model. This can lead to a large number of model updates, and for many model implementations, this can lead to a sub-optimal performance. For example: models that are backed by a database.

This enumeration allows you to specify the granularity of updates that are performed on a model.

Since
2020.1
Enumerator
OnAnyChange 

Indicates that the model will be updated for any change, including luciad::ChangeStatus::InProgress changes to a Feature.

OnMajorChanges 

Indicates that the model will be updated for major changes, meaning only changes that are marked as luciad::ChangeStatus::InProgressKeyPoint or luciad::ChangeStatus::Finished.

OnEditFinished 

Indicates that the model will be updated only after editing a Feature is completely finished, after all changes to the Feature are done.