### Hierarchy

- Controller

## Index

### Properties

- $timeout_
- dataLayerGroup_
- dimensions
- gmfDataSourceBeingFiltered
- gmfExternalDataSourcesManager
- gmfLayerBeingSwipe
- gmfPermalink_
- gmfSyncLayertreeMap_
- gmfThemes_
- gmfTreeManager_
- groupNodeStates_
- layerHelper_
- layers
- map
- ngeoWMSTime_
- options
- root
- scope_

### Methods

- $onInit
- afterReorder
- displayMetadata
- getFirstParentWithLayerFunctions
- getLayer
- getLegendIconURL
- getLegendsObject
- getNodeState
- getNumberOfLegendsObject
- getResolutionStyle
- getScale_
- isFiltrable
- isNodeLegendVisible
- isSnappingActivated
- listeners
- nodesCount
- removeAllNodes
- removeNode
- supportsCustomization
- supportsLegend
- supportsOpacityChange
- tagPopup
- toggleActive
- toggleFiltrableDataSource
- toggleNodeLegend
- toggleNodeMenu
- toggleSnapping
- toggleSwipeLayer
- updateDimensions_
- updateLayerDimensions_
- updateTimeData
- updateWMSTimeLayerState
- zoomToResolution

## Properties

### $timeout_

$timeout_: ITimeoutService

- Defined in src/layertree/component.js:338

### dataLayerGroup_

dataLayerGroup_: LayerGroup

- Defined in src/layertree/component.js:323

### dimensions

dimensions: Object

- Defined in src/layertree/component.js:258

### gmfDataSourceBeingFiltered

gmfDataSourceBeingFiltered: any

- Defined in src/layertree/component.js:278

### gmfExternalDataSourcesManager

gmfExternalDataSourcesManager: any

- Defined in src/layertree/component.js:283

### gmfLayerBeingSwipe

gmfLayerBeingSwipe: any

- Defined in src/layertree/component.js:273

### gmfPermalink_

gmfPermalink_: any

- Defined in src/layertree/component.js:288

### gmfSyncLayertreeMap_

gmfSyncLayertreeMap_: any

- Defined in src/layertree/component.js:308

### gmfThemes_

gmfThemes_: any

- Defined in src/layertree/component.js:333

### gmfTreeManager_

gmfTreeManager_: any

- Defined in src/layertree/component.js:293

### groupNodeStates_

groupNodeStates_: Object

- Defined in src/layertree/component.js:318

### layerHelper_

layerHelper_: LayerHelper

- Defined in src/layertree/component.js:268

### layers

layers: BaseLayer[]

- Defined in src/layertree/component.js:328

### map

map: Map

### ngeoWMSTime_

ngeoWMSTime_: WMSTime

- Defined in src/layertree/component.js:313

### options

options: any

- Defined in src/layertree/component.js:248

### root

root: any

- Defined in src/layertree/component.js:303

### scope_

scope_: IScope

- Defined in src/layertree/component.js:263

## Methods

### $onInit

- $onInit(): void

- - Defined in src/layertree/component.js:349

  Init the controller,

  #### Returns void

### afterReorder

- afterReorder(): void

- - Defined in src/layertree/component.js:750

  Update the layers order in the map and the treeCtrl in the treeManager after a reorder of the first-level groups. Then update the permalink.

  #### Returns void

### displayMetadata

- displayMetadata(treeCtrl: LayertreeController): void

- - Defined in src/layertree/component.js:733

  Opens a openIframePopup with the content of the metadata url of a node.

  #### Parameters

  - ##### treeCtrl: LayertreeController

    ngeo layertree controller, from the current node.

  #### Returns void

### getFirstParentWithLayerFunctions

- getFirstParentWithLayerFunctions(treeCtrl: LayertreeController): LayertreeController

- - Defined in src/layertree/component.js:1008

  #### Parameters

  - ##### treeCtrl: LayertreeController

    Ngeo tree controller.

  #### Returns LayertreeController

  first parent that supports opacity change or is filtrable. Or null if there is any parent with layer functions.

### getLayer

- getLayer(treeCtrl: LayertreeController): BaseLayer | LayerGroup

- - Defined in src/layertree/component.js:452

  Use the gmfSyncLayertreeMap_ to create and get layer corresponding to this treeCtrl. The layer will be inserted into the map. The layer can be null if the treeCtrl is based on a node inside a mixed node. It this case, the layer will be in the first parent declared as a mixed node.

  #### Parameters

  - ##### treeCtrl: LayertreeController

    tree controller of the node.

  #### Returns BaseLayer | LayerGroup

  The OpenLayers layer or group for the node.

### getLegendIconURL

- getLegendIconURL(treeCtrl: LayertreeController): string

- - Defined in src/layertree/component.js:580

  Get the icon image URL for the given treeCtrl's layer. It can only return a string for internal WMS layers without multiple childlayers in the node.

  #### Parameters

  - ##### treeCtrl: LayertreeController

    ngeo layertree controller, from the current node.

  #### Returns string

  The icon legend URL or undefined.

### getLegendsObject

- getLegendsObject(treeCtrl: LayertreeController): Object

- - Defined in src/layertree/component.js:620

  Get the legends object (<LayerName: url> for each layer) for the given treeCtrl.

  #### Parameters

  - ##### treeCtrl: LayertreeController

    ngeo layertree controller, from the current node.

  #### Returns Object

  A <layerName: url> object that provides a layer for each layer.

### getNodeState

- getNodeState(treeCtrl: LayertreeController): string

- - Defined in src/layertree/component.js:521

  Return the current state of the given treeCtrl's node. Return a class name that match with the current node activation state.

  #### Parameters

  - ##### treeCtrl: LayertreeController

    ngeo layertree controller, from the current node.

  #### Returns string

  'on' or 'off' or 'indeterminate'.

### getNumberOfLegendsObject

- getNumberOfLegendsObject(treeCtrl: LayertreeController): number

- - Defined in src/layertree/component.js:675

  Get the number of legends object for this layertree controller.

  #### Parameters

  - ##### treeCtrl: LayertreeController

    ngeo layertree controller, from the current node.

  #### Returns number

  The number of Legends object.

### getResolutionStyle

- getResolutionStyle(gmfLayer: any): string

- - Defined in src/layertree/component.js:836

  Return 'out-of-resolution' if the current resolution of the map is out of the min/max resolution in the node.

  #### Parameters

  - ##### gmfLayer: any

    the GeoMapFish Layer. WMTS layer is also allowed (the type is defined as GmfLayerWMS only to avoid some useless tests to know if a minResolutionHint property can exist on the node).

  #### Returns string

  'out-of-resolution' or undefined.

### getScale_

- getScale_(): number

- - Defined in src/layertree/component.js:685

  Return the current scale of the map.

  #### Returns number

  Scale.

### isFiltrable

- isFiltrable(treeCtrl: LayertreeController): boolean

- - Defined in src/layertree/component.js:998

  #### Parameters

  - ##### treeCtrl: LayertreeController

    Ngeo tree controller.

  #### Returns boolean

  Whether the layer tree controller has a filtrable datasource or not.

### isNodeLegendVisible

- isNodeLegendVisible(legendNodeId: string): boolean

- - Defined in src/layertree/component.js:942

  #### Parameters

  - ##### legendNodeId: string

    The DOM node legend id

  #### Returns boolean

  Whenever the legend is currently displayed.

### isSnappingActivated

- isSnappingActivated(treeCtrl: LayertreeController): boolean

- - Defined in src/layertree/component.js:705

  Is snapping activated for this LayertreeController

  #### Parameters

  - ##### treeCtrl: LayertreeController

    ngeo layertree controller.

  #### Returns boolean

  True if snapping is activated for that layer.

### listeners

- listeners(scope: IScope, treeCtrl: LayertreeController): void

- - Defined in src/layertree/component.js:483

  Remove layer from this component's layergroup (and then, from the map) on a ngeo layertree destroy event.

  #### Parameters

  - ##### scope: IScope

    treeCtrl scope.

  - ##### treeCtrl: LayertreeController

    ngeo layertree controller, from the current node.

  #### Returns void

### nodesCount

- nodesCount(): number

- - Defined in src/layertree/component.js:822

  #### Returns number

  first level node count.

### removeAllNodes

- removeAllNodes(): void

- - Defined in src/layertree/component.js:813

  #### Returns void

### removeNode

- removeNode(node: any): void

- - Defined in src/layertree/component.js:808

  #### Parameters

  - ##### node: any

    Layer tree node to remove.

  #### Returns void

### supportsCustomization

- supportsCustomization(treeCtrl: LayertreeController): boolean

- - Defined in src/layertree/component.js:963

  Determines whether the layer tree controller supports being customized. For example, having its layer opacity changed, displaying its legend, etc.

  If any requirement is met, then the treeCtrl is considered supporting "customization", regardless of what it actually is.

  The requirements are:

  - must not be the root controller, any of the following:
    - it supports legend
    - it supports having the layer opacity being changed

  #### Parameters

  - ##### treeCtrl: LayertreeController

    Ngeo tree controller.

  #### Returns boolean

  Whether the layer tree controller supports being "customized" or not.

### supportsLegend

- supportsLegend(treeCtrl: LayertreeController): boolean

- - Defined in src/layertree/component.js:972

  #### Parameters

  - ##### treeCtrl: LayertreeController

    Ngeo tree controller.

  #### Returns boolean

  Whether the layer tree controller supports having a legend being shown.

### supportsOpacityChange

- supportsOpacityChange(treeCtrl: LayertreeController): boolean

- - Defined in src/layertree/component.js:982

  #### Parameters

  - ##### treeCtrl: LayertreeController

    Ngeo tree controller.

  #### Returns boolean

  Whether the layer tree controller supports having its layer opacity being changed or not.

### tagPopup

- tagPopup(node: any): void

- - Defined in src/layertree/component.js:793

  #### Parameters

  - ##### node: any

    Layer tree node to tag popup identifier.

  #### Returns void

### toggleActive

- toggleActive(treeCtrl: LayertreeController): void

- - Defined in src/layertree/component.js:502

  Toggle the state of treeCtrl's node.

  #### Parameters

  - ##### treeCtrl: LayertreeController

    ngeo layertree controller, from the current node.

  #### Returns void

### toggleFiltrableDataSource

- toggleFiltrableDataSource(ds: any): void

- - Defined in src/layertree/component.js:930

  #### Parameters

  - ##### ds: any

    Data source to filter.

  #### Returns void

### toggleNodeLegend

- toggleNodeLegend(legendNodeId: string): void

- - Defined in src/layertree/component.js:908

  Toggle the legend for a node

  #### Parameters

  - ##### legendNodeId: string

    The DOM node legend id to toggle

  #### Returns void

### toggleNodeMenu

- toggleNodeMenu(menuNodeId: string): void

- - Defined in src/layertree/component.js:920

  Toggle the menu for a node

  #### Parameters

  - ##### menuNodeId: string

    The DOM node menu id to toggle

  #### Returns void

### toggleSnapping

- toggleSnapping(treeCtrl: LayertreeController): void

- - Defined in src/layertree/component.js:723

  Toggle snapping for this LayertreeController.

  #### Parameters

  - ##### treeCtrl: LayertreeController

    ngeo layertree controller.

  #### Returns void

### toggleSwipeLayer

### updateDimensions_

- updateDimensions_(treeCtrl: LayertreeController): void

- - Defined in src/layertree/component.js:388

  #### Parameters

  - ##### treeCtrl: LayertreeController

    Layer tree controller.

  #### Returns void

### updateLayerDimensions_

- updateLayerDimensions_(layer: Layer<Source, any>, node: any): void

- - Defined in src/layertree/component.js:408

  #### Parameters

  - ##### layer: Layer<Source, any>

    Layer to update.

  - ##### node: any

    Layer tree node.

  #### Returns void

### updateTimeData

- updateTimeData(layertreeCtrl: LayertreeController, time: TimeRange): void

- - Defined in src/layertree/component.js:535

  Update the `timeRangeValue` property of the data source bound to the given tree controller and the state of the permalink using the given time.

  LayertreeController.prototype.updateTimeData - description

  #### Parameters

  - ##### layertreeCtrl: LayertreeController

    ngeo layertree controller

  - ##### time: TimeRange

    The start and optionally the end datetime (for time range selection) selected by user

  #### Returns void

### updateWMSTimeLayerState

- updateWMSTimeLayerState(layertreeCtrl: LayertreeController, time: TimeRange): void

- - Defined in src/layertree/component.js:555

  Update the `timeRangeValue` property of the data source bound to the given tree controller using the given time. If the tree controller has no data source, it means that it has children and they might have data sources.

  The setting of the TIME parameter on the layer occurs in the `gmf.datasource.Manager` service

  LayertreeController.prototype.updateWMSTimeLayerState - description

  #### Parameters

  - ##### layertreeCtrl: LayertreeController

    ngeo layertree controller

  - ##### time: TimeRange

    The start and optionally the end datetime (for time range selection) selected by user

  #### Returns void

### zoomToResolution

- zoomToResolution(treeCtrl: LayertreeController): void

- - Defined in src/layertree/component.js:858

  Set the resolution of the map with the max or min resolution of the node.

  #### Parameters

  - ##### treeCtrl: LayertreeController

    ngeo layertree controller, from the current node.

  #### Returns void

Generated using TypeDoc