# Class Controller

#### Hierarchy

- Controller

- Defined in src/editing/editFeatureComponent.js:234

#####
Index

### Properties

active
attributes
closeAfterSave
confirmDeferred_
createActive
createToolActivate
dirty
editableNode_
editableTreeCtrl
editableWMSLayer_
element_
feature
featureId
features
geomListenerKeys_
geomType
gettextCatalog_
gmfEditFeature_
gmfSnapping_
gmfXSDAttributes_
highlightVectorLayer_
highlightedFeatures_
hightlightedFeatures_
interactions_
listenerKeys_
map
mapListenerKeys_
mapSelectActive
mapSelectToolActivate
menuMultipleListenerKeys_
menuMultiple_
menuVertex_
menu_
modifyToolActivate
modify_
ngeoEventHelper_
ngeoFeatureHelper_
ngeoLayerHelper_
ngeoToolActivateMgr_
options_
pending
q_
rotateToolActivate
rotate_
scope_
serverErrorMessage
serverErrorType
showServerError
state
timeout_
tolerance
translateToolActivate
translate_
unsavedModificationsModalShown
vectorLayer
vertexInfo_

### Methods

$onInit
cancel
checkForModifications_
confirmCancel
continueWithoutSaving
delete
handleDestroy_
handleEditFeature_
handleFeatureAdd_
handleFeatureChange_
handleFeatureGeometryChange_
handleFeaturePropertyChange_
handleGetFeatures_
handleMapClick_
handleMapContextMenu_
handleMapSelectActiveChange_
handleMenuActionClick_
handleMenuMultipleActionClick_
handleMenuVertexActionClick_
handleMultiMenuActionMouseEnter_
handleMultiMenuActionMouseOut_
handleRotateEnd_
handleTranslateEnd_
initializeInteractions_
openFeatureMenu_
registerInteractions_
save
setAttributes_
setFeature_
submit
toggle_
unregisterInteractions_

## Properties

### active

active: boolean

- Defined in src/editing/editFeatureComponent.js:392

### attributes

attributes: Attribute[]

- Defined in src/editing/editFeatureComponent.js:535
- Defined in src/editing/editFeatureComponent.js:927

### closeAfterSave

closeAfterSave: boolean

### Export

- Defined in src/editing/editFeatureComponent.js:291

### confirmDeferred_

confirmDeferred_: IDeferred<never>

A deferred object resolved after the confirm modal "continue w/o saving" or "save" buttons are clicked.

- Defined in src/editing/editFeatureComponent.js:373
- Defined in src/editing/editFeatureComponent.js:827

### createActive

createActive: boolean

- Defined in src/editing/editFeatureComponent.js:397
- Defined in src/editing/editFeatureComponent.js:992
- Defined in src/editing/editFeatureComponent.js:1066

### createToolActivate

createToolActivate: default

- Defined in src/editing/editFeatureComponent.js:402

### dirty

dirty: boolean

Flag that is toggled as soon as the feature changes, i.e. if any of its properties change, which includes the geometry.

- Defined in src/editing/editFeatureComponent.js:257
- Defined in src/editing/editFeatureComponent.js:598
- Defined in src/editing/editFeatureComponent.js:774
- Defined in src/editing/editFeatureComponent.js:797
- Defined in src/editing/editFeatureComponent.js:870
- Defined in src/editing/editFeatureComponent.js:994
- Defined in src/editing/editFeatureComponent.js:1400
- Defined in src/editing/editFeatureComponent.js:1410
- Defined in src/editing/editFeatureComponent.js:1414

### editableNode_

editableNode_: any

- Defined in src/editing/editFeatureComponent.js:360
- Defined in src/editing/editFeatureComponent.js:602

### editableTreeCtrl

editableTreeCtrl: LayertreeController

- Defined in src/editing/editFeatureComponent.js:262

### editableWMSLayer_

editableWMSLayer_: any

- Defined in src/editing/editFeatureComponent.js:365
- Defined in src/editing/editFeatureComponent.js:616

### element_

element_: JQuery<HTMLElement>

- Defined in src/editing/editFeatureComponent.js:298

### feature

feature: Feature<Geometry>

- Defined in src/editing/editFeatureComponent.js:417
- Defined in src/editing/editFeatureComponent.js:798
- Defined in src/editing/editFeatureComponent.js:953
- Defined in src/editing/editFeatureComponent.js:991
- Defined in src/editing/editFeatureComponent.js:1254
- Defined in src/editing/editFeatureComponent.js:1496

### featureId

featureId: string | number

- Defined in src/editing/editFeatureComponent.js:424
- Defined in src/editing/editFeatureComponent.js:1384
- Defined in src/editing/editFeatureComponent.js:1405

### features

features: Collection<Feature<Geometry>>

- Defined in src/editing/editFeatureComponent.js:429
- Defined in src/editing/editFeatureComponent.js:610

### geomListenerKeys_

geomListenerKeys_: EventsKey[]

- Defined in src/editing/editFeatureComponent.js:520

### geomType

geomType: string

- Defined in src/editing/editFeatureComponent.js:540
- Defined in src/editing/editFeatureComponent.js:944

### gettextCatalog_

gettextCatalog_: gettextCatalog

- Defined in src/editing/editFeatureComponent.js:318

### gmfEditFeature_

gmfEditFeature_: any

- Defined in src/editing/editFeatureComponent.js:323

### gmfSnapping_

gmfSnapping_: any

- Defined in src/editing/editFeatureComponent.js:328

### gmfXSDAttributes_

gmfXSDAttributes_: any

- Defined in src/editing/editFeatureComponent.js:333

### highlightVectorLayer_

highlightVectorLayer_: VectorLayer<VectorSource<Geometry>>

- Defined in src/editing/editFeatureComponent.js:434
- Defined in src/editing/editFeatureComponent.js:579

### highlightedFeatures_

highlightedFeatures_: Collection<Feature<Geometry>>

- Defined in src/editing/editFeatureComponent.js:439

### hightlightedFeatures_

hightlightedFeatures_: Collection<Feature<Geometry>>

- Defined in src/editing/editFeatureComponent.js:588

### interactions_

interactions_: Collection<Interaction>

- Defined in src/editing/editFeatureComponent.js:444

### listenerKeys_

listenerKeys_: EventsKey[]

- Defined in src/editing/editFeatureComponent.js:515

### map

map: Map

- Defined in src/editing/editFeatureComponent.js:267

### mapListenerKeys_

mapListenerKeys_: EventsKey[]

- Defined in src/editing/editFeatureComponent.js:525

### mapSelectActive

mapSelectActive: boolean

- Defined in src/editing/editFeatureComponent.js:407
- Defined in src/editing/editFeatureComponent.js:1071

### mapSelectToolActivate

mapSelectToolActivate: default

- Defined in src/editing/editFeatureComponent.js:412

### menuMultipleListenerKeys_

menuMultipleListenerKeys_: EventsKey[]

- Defined in src/editing/editFeatureComponent.js:530

### menuMultiple_

menuMultiple_: any

- Defined in src/editing/editFeatureComponent.js:490
- Defined in src/editing/editFeatureComponent.js:1302

### menuVertex_

menuVertex_: default

- Defined in src/editing/editFeatureComponent.js:477

### menu_

menu_: default

- Defined in src/editing/editFeatureComponent.js:459

### modifyToolActivate

modifyToolActivate: default

- Defined in src/editing/editFeatureComponent.js:454
- Defined in src/editing/editFeatureComponent.js:657

### modify_

modify_: Modify

- Defined in src/editing/editFeatureComponent.js:449
- Defined in src/editing/editFeatureComponent.js:620

### ngeoEventHelper_

ngeoEventHelper_: EventHelper

- Defined in src/editing/editFeatureComponent.js:338

### ngeoFeatureHelper_

ngeoFeatureHelper_: FeatureHelper

- Defined in src/editing/editFeatureComponent.js:343

### ngeoLayerHelper_

ngeoLayerHelper_: LayerHelper

- Defined in src/editing/editFeatureComponent.js:348

### ngeoToolActivateMgr_

ngeoToolActivateMgr_: ToolActivateMgr

- Defined in src/editing/editFeatureComponent.js:353

### options_

options_: any

- Defined in src/editing/editFeatureComponent.js:565

### pending

pending: boolean

Flag that is toggled while a request is pending, either one to get features when a map is clicked or when saving

- Defined in src/editing/editFeatureComponent.js:387
- Defined in src/editing/editFeatureComponent.js:747
- Defined in src/editing/editFeatureComponent.js:787
- Defined in src/editing/editFeatureComponent.js:862
- Defined in src/editing/editFeatureComponent.js:871
- Defined in src/editing/editFeatureComponent.js:879
- Defined in src/editing/editFeatureComponent.js:1179
- Defined in src/editing/editFeatureComponent.js:1263

### q_

q_: IQService

- Defined in src/editing/editFeatureComponent.js:303

### rotateToolActivate

rotateToolActivate: default

- Defined in src/editing/editFeatureComponent.js:505
- Defined in src/editing/editFeatureComponent.js:658

### rotate_

rotate_: default

- Defined in src/editing/editFeatureComponent.js:500
- Defined in src/editing/editFeatureComponent.js:627

### scope_

scope_: IScope

- Defined in src/editing/editFeatureComponent.js:308

### serverErrorMessage

serverErrorMessage: string

- Defined in src/editing/editFeatureComponent.js:550
- Defined in src/editing/editFeatureComponent.js:784
- Defined in src/editing/editFeatureComponent.js:881

### serverErrorType

serverErrorType: string

- Defined in src/editing/editFeatureComponent.js:555
- Defined in src/editing/editFeatureComponent.js:783
- Defined in src/editing/editFeatureComponent.js:880

### showServerError

showServerError: boolean

- Defined in src/editing/editFeatureComponent.js:545
- Defined in src/editing/editFeatureComponent.js:782
- Defined in src/editing/editFeatureComponent.js:878

### state

state: string

The state property shared with the `gmf-editfeatureselector` directive. For more info, see in that directive.

- Defined in src/editing/editFeatureComponent.js:275
- Defined in src/editing/editFeatureComponent.js:690
- Defined in src/editing/editFeatureComponent.js:695
- Defined in src/editing/editFeatureComponent.js:701
- Defined in src/editing/editFeatureComponent.js:706
- Defined in src/editing/editFeatureComponent.js:717

### timeout_

timeout_: ITimeoutService

- Defined in src/editing/editFeatureComponent.js:313

### tolerance

tolerance: number

- Defined in src/editing/editFeatureComponent.js:280
- Defined in src/editing/editFeatureComponent.js:611

### translateToolActivate

translateToolActivate: default

- Defined in src/editing/editFeatureComponent.js:510
- Defined in src/editing/editFeatureComponent.js:659

### translate_

translate_: default

- Defined in src/editing/editFeatureComponent.js:495
- Defined in src/editing/editFeatureComponent.js:641

### unsavedModificationsModalShown

unsavedModificationsModalShown: boolean

Flag that controls the visibility of the modal that manages unsaved modifications.

- Defined in src/editing/editFeatureComponent.js:381
- Defined in src/editing/editFeatureComponent.js:802
- Defined in src/editing/editFeatureComponent.js:829

### vectorLayer

vectorLayer: VectorLayer<VectorSource<Geometry>>

- Defined in src/editing/editFeatureComponent.js:285

### vertexInfo_

vertexInfo_: number[]

- Defined in src/editing/editFeatureComponent.js:560
- Defined in src/editing/editFeatureComponent.js:1220
- Defined in src/editing/editFeatureComponent.js:1230

## Methods

### $onInit

- $onInit(): void

- Called on initialization of the controller.

  #### Returns void

  - Defined in src/editing/editFeatureComponent.js:571

### cancel

- cancel(): void

- #### Returns void

  - Defined in src/editing/editFeatureComponent.js:793

### checkForModifications_

- checkForModifications_(scopeApply?: boolean): IPromise<void>

- Check if there's a feature selected and if it contains modifications (a.k.a. is dirty), then the confirmation modal is shown.

  ### Returns

  The promise attached to the confirm deferred object.

  #### Parameters

  - ##### `Optional` scopeApply: boolean

    Whether to force scope to refresh or not. when the confirm modal is not dismissed.

  #### Returns IPromise<void>

  - Defined in src/editing/editFeatureComponent.js:826

### confirmCancel

- confirmCancel(): IPromise<void>

- Check if there are unsaved modifications. If there aren't, then cancel. Used by the 'cancel' button in the template.

  ### Returns

  The promise attached to the confirm deferred object.

  #### Returns IPromise<void>

  - Defined in src/editing/editFeatureComponent.js:811

### continueWithoutSaving

- continueWithoutSaving(): void

- #### Returns void

  - Defined in src/editing/editFeatureComponent.js:842

### delete

- delete(): void

- #### Returns void

  - Defined in src/editing/editFeatureComponent.js:852

### handleDestroy_

- handleDestroy_(): void

- #### Returns void

  - Defined in src/editing/editFeatureComponent.js:1490

### handleEditFeature_

- handleEditFeature_(resp: IHttpResponse<string | Node | Document | ArrayBuffer>): void

- Called after an insert, update or delete request.

  #### Parameters

  - ##### resp: IHttpResponse<string | Node | Document | ArrayBuffer>

    Ajax response.

  #### Returns void

  - Defined in src/editing/editFeatureComponent.js:905

### handleFeatureAdd_

- handleFeatureAdd_(evt: Event | BaseEvent): void

- #### Parameters

  - ##### evt: Event | BaseEvent

    Event.

  #### Returns void

  - Defined in src/editing/editFeatureComponent.js:951

### handleFeatureChange_

- handleFeatureChange_(newFeature: Feature<Geometry>, oldFeature: Feature<Geometry>): void

- #### Parameters

  - ##### newFeature: Feature<Geometry>

    The new feature.

  - ##### oldFeature: Feature<Geometry>

    The old feature.

  #### Returns void

  - Defined in src/editing/editFeatureComponent.js:1376

### handleFeatureGeometryChange_

- handleFeatureGeometryChange_(): void

- #### Returns void

  - Defined in src/editing/editFeatureComponent.js:1413

### handleFeaturePropertyChange_

- handleFeaturePropertyChange_(): void

- #### Returns void

  - Defined in src/editing/editFeatureComponent.js:1409

### handleGetFeatures_

- handleGetFeatures_(coordinate: number[], features: Feature<Geometry>[]): void

- #### Parameters

  - ##### coordinate: number[]

    The click coordinates.

  - ##### features: Feature<Geometry>[]

    Features.

  #### Returns void

  - Defined in src/editing/editFeatureComponent.js:1262

### handleMapClick_

- handleMapClick_(evt: Event | BaseEvent): void

- Called when the map is clicked.

  (1) If a vector feature was clicked, don't do anything (i.e. allow the interactions to do their bindings without selecting a new feature).

  (2) Otherwise, if there is a feature being edited and has unsaved modifications, show the confirmation modal asking the user what to do about it.

  (3) If there's no feature selected or we have one without unsaved modifications or with modifications that were canceled, launch a query to fetch the features at the clicked location.

  #### Parameters

  - ##### evt: Event | BaseEvent

    Event.

  #### Returns void

  - Defined in src/editing/editFeatureComponent.js:1116

### handleMapContextMenu_

- handleMapContextMenu_(evt: Event | BaseEvent): void

- #### Parameters

  - ##### evt: Event | BaseEvent

    Event.

  #### Returns void

  - Defined in src/editing/editFeatureComponent.js:1187

### handleMapSelectActiveChange_

- handleMapSelectActiveChange_(active: boolean): void

- Called when the mapSelectActive property changes.

  #### Parameters

  - ##### active: boolean

    Whether the map select is active or not.

  #### Returns void

  - Defined in src/editing/editFeatureComponent.js:1080

### handleMenuActionClick_

- handleMenuActionClick_(evt: Event | BaseEvent): void

- #### Parameters

  - ##### evt: Event | BaseEvent

    Event.

  #### Returns void

  - Defined in src/editing/editFeatureComponent.js:1421

### handleMenuMultipleActionClick_

- handleMenuMultipleActionClick_(features: Feature<Geometry>[], evt: Event | BaseEvent): void

- Handles the click on element in the feature menu In the call the parameters are in inverse order!

  #### Parameters

  - ##### features: Feature<Geometry>[]

    Features.

  - ##### evt: Event | BaseEvent

    Event.

  #### Returns void

  - Defined in src/editing/editFeatureComponent.js:1511

### handleMenuVertexActionClick_

- handleMenuVertexActionClick_(evt: Event | BaseEvent): void

- #### Parameters

  - ##### evt: Event | BaseEvent

    Event.

  #### Returns void

  - Defined in src/editing/editFeatureComponent.js:1447

### handleMultiMenuActionMouseEnter_

- handleMultiMenuActionMouseEnter_(features: Feature<Geometry>[], evt: Event | BaseEvent): void

- Handles mouse entering a menu item of the multiple feature menu

  #### Parameters

  - ##### features: Feature<Geometry>[]

    Features.

  - ##### evt: Event | BaseEvent

    Event.

  #### Returns void

  - Defined in src/editing/editFeatureComponent.js:1524

### handleMultiMenuActionMouseOut_

- handleMultiMenuActionMouseOut_(): void

- Handles mouse leaving a menu item of the multiple feature menu

  #### Returns void

  - Defined in src/editing/editFeatureComponent.js:1533

### handleRotateEnd_

- handleRotateEnd_(evt: Event | BaseEvent): void

- #### Parameters

  - ##### evt: Event | BaseEvent

    Event.

  #### Returns void

  - Defined in src/editing/editFeatureComponent.js:1482

### handleTranslateEnd_

- handleTranslateEnd_(evt: Event | BaseEvent): void

- #### Parameters

  - ##### evt: Event | BaseEvent

    Event.

  #### Returns void

  - Defined in src/editing/editFeatureComponent.js:1471

### initializeInteractions_

- initializeInteractions_(): void

- Initialize interactions by setting them inactive and decorating them

  #### Returns void

  - Defined in src/editing/editFeatureComponent.js:1341

### openFeatureMenu_

- openFeatureMenu_(coordinate: number[], features: Feature<Geometry>[]): void

- #### Parameters

  - ##### coordinate: number[]

    The click coordinates.

  - ##### features: Feature<Geometry>[]

    Features.

  #### Returns void

  - Defined in src/editing/editFeatureComponent.js:1282

### registerInteractions_

- registerInteractions_(): void

- Register interactions by adding them to the map

  #### Returns void

  - Defined in src/editing/editFeatureComponent.js:1351

### save

- save(): void

- Save the currently selected feature modifications.

  #### Returns void

  - Defined in src/editing/editFeatureComponent.js:732

### setAttributes_

- setAttributes_(attributes: Attribute[]): void

- #### Parameters

  - ##### attributes: Attribute[]

    Attributes.

  #### Returns void

  - Defined in src/editing/editFeatureComponent.js:925

### setFeature_

- setFeature_(feature: Feature<Geometry>): void

- #### Parameters

  - ##### feature: Feature<Geometry>

    The feature to edit.

  #### Returns void

  - Defined in src/editing/editFeatureComponent.js:1253

### submit

- submit(): void

- Called when the modal 'save' button is clicked. Do as if the user had clicked on the 'save' input button in the form, which allows the form to be validated.

  #### Returns void

  - Defined in src/editing/editFeatureComponent.js:892

### toggle_

- toggle_(active: boolean): void

- Activate or deactivate this directive.

  #### Parameters

  - ##### active: boolean

    Whether to activate this directive or not.

  #### Returns void

  - Defined in src/editing/editFeatureComponent.js:1006

### unregisterInteractions_

- unregisterInteractions_(): void

- Unregister interactions, i.e. set them inactive and remove them from the map

  #### Returns void

  - Defined in src/editing/editFeatureComponent.js:1363

Generated using TypeDoc