# Class Controller

#### Hierarchy

- Controller

- Defined in src/objectediting/toolsComponent.js:157

#####
Index

### Properties

active
copyFromActive
deleteFromActive
drawActive
drawTriangleActive
eraseActive
feature
geomType
geomTypePolygon
map
ngeoToolActivateMgr_
process
queryableLayerInfo
requiresLayer
scope_
sketchFeatures
toolActiveNames_
triangleAngle
triangleRadius

### Methods

$onInit
handleDestroy_
handleToolActiveChange_
registerTool_

## Properties

### active

active: boolean

- Defined in src/objectediting/toolsComponent.js:163
- Defined in src/objectediting/toolsComponent.js:350

### copyFromActive

copyFromActive: boolean

- Defined in src/objectediting/toolsComponent.js:168

### deleteFromActive

deleteFromActive: boolean

- Defined in src/objectediting/toolsComponent.js:173

### drawActive

drawActive: boolean

- Defined in src/objectediting/toolsComponent.js:237

### drawTriangleActive

drawTriangleActive: boolean

- Defined in src/objectediting/toolsComponent.js:251

### eraseActive

eraseActive: boolean

- Defined in src/objectediting/toolsComponent.js:244

### feature

feature: Feature<Geometry>

- Defined in src/objectediting/toolsComponent.js:178

### geomType

geomType: string

- Defined in src/objectediting/toolsComponent.js:183

### geomTypePolygon

geomTypePolygon: string

- Defined in src/objectediting/toolsComponent.js:227

### map

map: Map

- Defined in src/objectediting/toolsComponent.js:188

### ngeoToolActivateMgr_

ngeoToolActivateMgr_: ToolActivateMgr

- Defined in src/objectediting/toolsComponent.js:220

### process

process: string

- Defined in src/objectediting/toolsComponent.js:198
- Defined in src/objectediting/toolsComponent.js:337

### queryableLayerInfo

queryableLayerInfo: ObjectEditingQueryableLayerInfo

- Defined in src/objectediting/toolsComponent.js:193

### requiresLayer

requiresLayer: boolean

- Defined in src/objectediting/toolsComponent.js:203
- Defined in src/objectediting/toolsComponent.js:282
- Defined in src/objectediting/toolsComponent.js:338

### scope_

scope_: IScope

- Defined in src/objectediting/toolsComponent.js:215

### sketchFeatures

sketchFeatures: Collection<Feature<Geometry>>

- Defined in src/objectediting/toolsComponent.js:208

### toolActiveNames_

toolActiveNames_: string[]

- Defined in src/objectediting/toolsComponent.js:232

### triangleAngle

triangleAngle: number

- Defined in src/objectediting/toolsComponent.js:256

### triangleRadius

triangleRadius: number

- Defined in src/objectediting/toolsComponent.js:263

## Methods

### $onInit

- $onInit(): void

- Init the controller

  #### Returns void

  - Defined in src/objectediting/toolsComponent.js:276

### handleDestroy_

- handleDestroy_(): void

- #### Returns void

  - Defined in src/objectediting/toolsComponent.js:353

### handleToolActiveChange_

- handleToolActiveChange_(process: string, requiresLayer: boolean, newVal: boolean): void

- Called when any of the tool 'active' property changes.

  #### Parameters

  - ##### process: string

    The behavior the tool should use when active.

  - ##### requiresLayer: boolean

    Whether the tool requires the queryable layer or not.

  - ##### newVal: boolean

    New value.

  #### Returns void

  - Defined in src/objectediting/toolsComponent.js:334

### registerTool_

- registerTool_(toolActiveName: string, process: string, opt_requiresLayer?: boolean): void

- Register a tool using its `active` property name and what behavior it should have when it is active and a sketch feature is added

  This method:

  - registers a watcher on the tool active property to manage this directive main active property, i.e the directive is considered active when one of the tools is active, otherwise it's not active.

  - creates a `ngeo.misc.ToolActivate` object and registers it in a group so that only one tool can be active at a time

  #### Parameters

  - ##### toolActiveName: string

    The name of the active property for the tool.

  - ##### process: string

    The behavior the tool should use when active and when sketch features are added.

  - ##### `Optional` opt_requiresLayer: boolean

    Whether the tool requires the queryable layer or not. Defaults to `false`.

  #### Returns void

  - Defined in src/objectediting/toolsComponent.js:310

Generated using TypeDoc