Interface ILspEditor

All Known Implementing Classes:
ALspEditor, TLsp2DEditableShapeEditor, TLsp2DPointListEditor, TLsp3DArcBandEditor, TLsp3DPointListEditor, TLspArcBandEditor, TLspArcBy3PointsEditor, TLspArcByBulgeEditor, TLspArcByCenterEditor, TLspArcEditor, TLspBoundsEditor, TLspCircleBy3PointsEditor, TLspCircleEditor, TLspComplexPolygonEditor, TLspCompositeCurveEditor, TLspCompositeEditor, TLspDomeEditor, TLspEllipseEditor, TLspExtrudedShapeEditor, TLspGeoBufferEditor, TLspLabelEditor, TLspLonLatHeightBufferEditor, TLspPointEditor, TLspShapeEditor, TLspShapeListEditor, TLspSphereEditor, TLspSurfaceEditor, TLspTextEditor, TLspVariableGeoBufferEditor

public interface ILspEditor
An editor is responsible for creating edit handles, and applying edit operations created by those handles on domain objects.

Since:
2012.0
See Also:
  • Method Details

    • getCreateHandle

      ALspEditHandle getCreateHandle(TLspEditContext aContext)
      Returns a handle that is used to create the given object. The returned handle is used by the controller to initialize the other of the object.

      Typically the returned handle is an instance of ALspCreateHandle which is a specialized handle implementation used for creating an object.

      Parameters:
      aContext - provides context information such as the layer for which the object is being created
      Returns:
      an edit handle that is used to initialize the state of the object being created, or null if it should not be possible to create the object.
      See Also:
    • getEditHandles

      List<ALspEditHandle> getEditHandles(TLspEditContext aContext)
      Returns a set of handles for editing the given object.

      These handles will be able to generate edit operations, that are passed to the edit method. As a way to communicate with this method, handles will copy their properties to the edit operation properties.

      Parameters:
      aContext - provides context information such as the layer for which the object is being edited
      Returns:
      the edit handles to edit the given object, or an empty list if it should not be possible to edit the given object.
      See Also:
    • edit

      TLspEditOperationResult edit(TLspEditOperation aOperation, ELspInteractionStatus aInteractionStatus, TLspEditContext aContext)
      Applies an interaction obtained from a handle to the object being edited.
      Parameters:
      aOperation - describes the edit that should occur. This is usually generated by the handles. It is up to the concrete editor to determine how to handle this event.
      aInteractionStatus - the interaction status
      aContext - the edit context
      Returns:
      information about the result of the operation
    • canEdit

      boolean canEdit(TLspEditContext aContext)
      Determines whether or not the specified object can be edited by this editor.
      Parameters:
      aContext - provides context information to the editor
      Returns:
      true if the editor can modify the object.
    • canPerformOperation

      boolean canPerformOperation(TLspEditOperation aOperation, TLspEditContext aContext)
      Determines whether or not the editor knows how to apply the given edit operation to the supplied geometry.
      Parameters:
      aOperation - the operation to be applied
      aContext - the edit context
      Returns:
      whether or not the editor can apply the given operation