Package com.luciad.view.lightspeed.editor
package com.luciad.view.lightspeed.editor
Provides support for interactive editing of domain objects in a model. The main interface
in this package is
ILspEditor. Editors
are used by TLspEditController to define different editing behavior for different types of domain objects.
The default TLspShapeEditor supports all available ILcdShape implementations by aggregating the
individual editors that are available for each type of shape. These individual editors are also available in the API
for customization purposes. When writing a custom editor for an entirely new type of shape, most users will want to
extend the abstract base class ALspEditor.
The working of an editor is as follows:
- The edit controller asks the editor to provide a set of
edit handlesfor a given domain object. - An
edit handleis a widget that is associated with some part or property of a domain object. A polygon, for instance, would typically have an edit handle on each of its vertices, each of which is visualized as a small dot and which can be dragged around by the user to move the corresponding vertex to another location. - While the object is in an editable state, the controller forwards input events (e.g. mouse events) to the
edit handles by invoking their
handleAWTEvent()method. The handle produces aTLspEditHandleResult, which describes at a higher level the action that the user performed. If the handle was able to meaningfully interpret the user's input, the edit handle result will contain one or moreTLspEditOperations. - The editor is asked to apply the given edit operations to the domain object being edited, via a call to
edit().
edit operation does not refer back to its
originating handle directly. Editors can, however,
assign properties to
their handles, which the handle
copies back into its edit
operations. These properties are key/value pairs that the editor is completely free to choose. This allows editors to
inject semantic information into handles without having to override handle implementations. The editors available in
the LuciadLightspeed API employ the following convention for these
properties:
- Each editor defines an internal enumeration type called
PropertyKeyswhich lists the values that the editor uses as keys for its handle properties; - The documentation of each element in this enumeration lists the type of the property value.
com.luciad.view.lightspeed.editor.operationdescribes edit handle results and edit operations;com.luciad.view.lightspeed.editor.handlecontains the various available edit handle implementations;com.luciad.view.lightspeed.editor.labelcontains specific support for label editing;com.luciad.view.lightspeed.editor.snappingdefines a snapping mechanism for use with editors.
- Since:
- 2012.0
-
ClassDescriptionALspCreateEditorModel<T extends ILcdShape>An abstract class that can be used by editors to create a new (sub-)shape.Abstract base class for implementations of
ILspEditor.Enumeration of the different creation behaviors of point lists.An editor is responsible for creating edit handles, and applying edit operations created by those handles on domain objects.Enables visual editing ofILcd2DEditableShapeobjects in anILspView.Enables visual editing ofILcd2DEditablePointListobjects in anILspView.Defines keys used by the enclosing editor implementation to store properties in its edit handles.Enables visual editing ofILcd3DEditableArcBandobjects in anILspView.Identifies a handle used by the enclosing editor implementation.Defines keys used by the enclosing editor implementation to store properties in its edit handles.Enables visual editing ofILcd3DEditablePointListobjects in anILspView.Defines keys used by the enclosing editor implementation to store properties in its edit handles.Enables visual editing ofILcd2DEditableArcBandobjects in anILspView.Describes a control point of an arc-by-3-points shape.Defines keys used by the enclosing editor implementation to store properties in its edit handles.Enables visual editing ofILcd2DEditableCircularArcBy3Pointsobjects in anILspView.Describes a control point of an arc-by-3-points shape.Defines keys used by the enclosing editor implementation to store properties in its edit handles.Enables visual editing ofILcd2DEditableCircularArcByBulgeobjects in anILspView.Describes a control point of an arc-by-bulge shape.Defines keys used by the enclosing editor implementation to store properties in its edit handles.Enables visual editing ofILcd2DEditableCircularArcByCenterPointobjects in anILspView.Describes a control point of an arc-by-center shape.Defines keys used by the enclosing editor implementation to store properties in its edit handles.Enables visual editing ofILcd2DEditableArcobjects in anILspView.Describes a control point of an arc.Defines keys used by the enclosing editor implementation to store properties in its edit handles.Describes a control point of a bounds.Defines keys used by the enclosing editor implementation to properties in its edit handles.Enables visual editing ofILcd2DEditableCircleBy3Pointsobjects in anILspView.Describes a control point of a circle-by-3-points shape.Defines keys used by the enclosing editor implementation to store user properties in its edit handles.Enables visual editing ofILcd2DEditableCircleobjects in anILspView.Describes a control point of a circle.Defines keys used by the enclosing editor implementation to store properties in its edit handles.Enables visual editing ofILcdEditableComplexPolygonobjects in anILspView.Defines keys used by the enclosing editor implementation to store properties in its edit handles.Enables visual editing ofILcdEditableCompositeCurveobjects in anILspView.Defines the various values used by theCURVE_CONNECTproperty key.Defines keys used by the enclosing editor implementation to store properties in its edit handles.Composite editor forILspEditorobjects.DefaultALspCreateEditorModelimplementation that has support for creating circular arcs by bulge, circular arc by 3 points, and polylines.Type that defines which curve is created next.Enables visual editing ofILcd3DEditableDomeobjects in anILspView.Describes the type of an edit handle created by the enclosing editor implementation.Defines keys used by the enclosing editor implementation to store properties in its edit handles.Provides context information to editors, such as the object being edited, its paint representation or its layer.Enables visual editing ofILcd2DEditableEllipseobjects in anILspView.Describes a control point of an ellipse.Defines keys used by the enclosing editor implementation to store properties in its edit handles.Adds editing capabilities for extruded versions of objects.Describes the type of an edit handle created by the enclosing editor implementation.Defines keys used by the enclosing editor implementation to store properties in its edit handles.Defines keys used by the enclosing editor implementation to store properties in its edit handles.Enumerates types of visual feedback that can be given during the editing process.Enables visual editing ofTLcdLonLatHeightBufferobjects in anILspView.Describes the type of an edit handle created by the enclosing editor implementation.Defines keys used by the enclosing editor implementation to store properties in its edit handles.Enumeration listing possible locations for the buffer's resize handles.Provides context information about multiple objects, such as the objects being edited, its paint representations and its layers.This editor is a composite editor that delegates to all other editors in this package.Editor wrapper for editing shapes that are contained in a shape list.Defines keys used by the enclosing editor implementation to store properties in its edit handles.Enables visual editing ofILcd3DEditableSphereobjects in anILspView.Describes the type of an edit handle created by the enclosing editor implementation.Defines keys used by the enclosing editor implementation to store properties in its edit handles.Enables visual editing ofILcdEditableSurfaceobjects in anILspView.Enables visual editing ofILcd2DEditableTextobjects in anILspView.Enables visual editing ofILcd3DEditableVariableGeoBufferobjects in anILspView.Defines keys used by the enclosing editor implementation to store properties in its edit handles.