Class: SyncManager

Mapspace.control. SyncManager

A control that creates a synchronization manager, that shows the list of syncing options for a viewer.


new SyncManager( [options])

Parameters:
Name Type Argument Description
options Mapspace.control.ControlOptions <optional>

Control options.

Source:
mapspace/controls/syncmanager.js
Fires:
  • Mapspace.control.event:SyncManagerEvent
  • ol.Object.Event#event:change:enabled

Extends

Members


classNames :string|undefined

The class names to add to the default ones that the control will create.

Inherited From:
Overrides:
Source:
mapspace/controls/control.js

controldefs :Array.<Mapspace.ControlDefinition>

Array of control definitions this control contains.

Inherited From:
Source:
mapspace/controls/control.js

<nullable> element :Element

This is the HTML element where the control is drawn. Do not modify this property directly. Use only in the constructor.

Inherited From:
Source:
mapspace/controls/control.js

globalizationKey :string|undefined

This is the string that identifies in Mapspace.strings this control for globalization purposes.

Inherited From:
Source:
mapspace/controls/control.js

<nullable> target :Element

This is the HTML element where the control is appended. Do not modify this property directly. Use constructor or setTarget to set this value.

Inherited From:
Source:
mapspace/controls/control.js

Methods


addControlDefinition(controldef)

Adds a control definition to the control. By default the control in the control definition is changed its target to the element of this control. Override this behaviour in inherited classes to change the target to another one.

Parameters:
Name Type Description
controldef *

Control definition.

Inherited From:
Source:
mapspace/controls/control.js

addControlDefinitions(controldefs)

Adds an array of control definitions to the control. Controls in the control definition array shouldn't have a target set.

Parameters:
Name Type Description
controldefs Array.<Mapspace.control.ControlDefinition>

Array of control definitions to add.

Inherited From:
Source:
mapspace/controls/control.js

addSyncOption(syncedViewIndex, syncType, status)

Adds a sync option to the list of sync options if it isn't added.

Parameters:
Name Type Description
syncedViewIndex number

The index of the synced viewer.

syncType Mapspace.SyncType

Type of syncing.

status boolean

If the sync option is activated or not.

Source:
mapspace/controls/syncmanager.js

clearControl()

Clears all the HTML elements under the control element and clear listeners.

Source:
mapspace/controls/syncmanager.js

clearSyncOptions()

Clear the list of sync options.

Source:
mapspace/controls/syncmanager.js

containsControlDefinition(controldef)

Checks if a control definition is already added.

Parameters:
Name Type Description
controldef Mapspace.ControlDefinition

Control definition to check.

Inherited From:
Source:
mapspace/controls/control.js
Returns:

True if it is added.

Type
boolean

existSyncOption(syncedViewIndex, syncType)

Checks if a sync option already exists.

Parameters:
Name Type Description
syncedViewIndex number

The index of the synced viewer.

syncType Mapspace.SyncType

Type of syncing.

Source:
mapspace/controls/syncmanager.js
Returns:
Type
boolean

fade(fadeIn)

Fades this control in or out. This method ignores the fadeOut property of the control. You must care to check if this control can be faded or not checking that value and also if this control lies inside an active viewer.

Parameters:
Name Type Description
fadeIn boolean

If the control must fade in, otherwise it will fade out.

Inherited From:
Source:
mapspace/controls/control.js

getControlDefinitions()

Return the array of control definitions this control has inside.

Inherited From:
Source:
mapspace/controls/control.js
Returns:
Type
Array.<Mapspace.ControlDefinition>

getCurrentWorkspace()

Returns the workspace the control uses.

Source:
mapspace/controls/syncmanager.js
Returns:
Type
Mapspace.Workspace | undefined

getEnabled()

Return whether the control is currently enabled. When a control is not enabled can be clicked, cannot be dragged, but none of those interactions produce any event.

Inherited From:
Source:
mapspace/controls/control.js
Returns:

true if the control is enabled, false otherwise.

Type
boolean

getFadeInEnabled()

Returns if the control can be faded in. By default is true.

Inherited From:
Source:
mapspace/controls/control.js
Returns:
Type
boolean

getFadeOutMode()

Returns the mode this control can be faded when it is in an active viewer. This value can be changed through the fadeOut option in the creation of the control. By default it is 'NEVER'. This default value can be overrided in derived classes.

Inherited From:
Source:
mapspace/controls/control.js
Returns:
Type
Mapspace.control.FadeOutMode

getTranslation(id)

Returns the translation for a given property ID. The Mapspace.strings object contains pairs of key and values. Each key follows the pattern: globalizationKey#propertyID.

Parameters:
Name Type Description
id string

The property ID.

Inherited From:
Source:
mapspace/controls/control.js
Returns:

The translation or undefined if not found.

Type
string | undefined

hasClassName(className)

Returns if the control has a class name

Parameters:
Name Type Description
className string

The class name.

Inherited From:
Source:
mapspace/controls/control.js

isInsideExternalControl()

Returns true if this control is inside an external control, that is one control that is not associated with a given viewer, like a panel in the Mapspace.control.SidePanel.

Source:
mapspace/controls/syncmanager.js
Returns:
Type
boolean

isTool()

Returns true if this control is a tool. A tool is a control that contains one or several options in a list (for example a Mapspace.control.ViewerTools) that are linked to a viewer and only one of them can be active at a time. Tools are usually related to interactions in a way that only one interaction can be active at a time in a viewer.

Inherited From:
Source:
mapspace/controls/control.js
Returns:
Type
boolean

removeSyncOption(index)

Removes the sync option at the index position if index is in range.

Parameters:
Name Type Description
index number

Index of the sync option to remove.

Source:
mapspace/controls/syncmanager.js

setCurrentWorkspace(workspace, viewer)

Sets the workspace and viewer to use by the control.

Parameters:
Name Type Description
workspace Mapspace.Workspace

The current workspace.

viewer Mapspace.Viewer

The current viewer.

Source:
mapspace/controls/syncmanager.js

setEnabled(enabled)

Sets the control to enabled or not. When a control is not enabled can be clicked, cannot be dragged, but none of those interactions produce any event.

Parameters:
Name Type Description
enabled boolean

Enabled.

Inherited From:
Source:
mapspace/controls/control.js

setFadeInEnabled(enabled)

Sets if the control can be faded in. By default is true.

Parameters:
Name Type Description
enabled boolean
Inherited From:
Source:
mapspace/controls/control.js

setInsideExternalControl(inside)

Sets if this control is inside an external control, that is one control that is not associated with a given viewer, like a panel in the Mapspace.control.SidePanel.

Parameters:
Name Type Description
inside boolean

True if it is inside.

Source:
mapspace/controls/syncmanager.js

setSyncOptionStatus(index, status)

Sets the status of the sync option at the index position if index is in range.

Parameters:
Name Type Description
index number

Index of the sync option to set.

status boolean

Status of the sync option.

Source:
mapspace/controls/syncmanager.js

setTarget(target)

This function is used to set a target element for the control.

Parameters:
Name Type Description
target Element | string | Mapspace.Viewer

Target.

Inherited From:
Overrides:
Source:
mapspace/controls/control.js

<abstract> unselectTool()

If this control is a tool the unselects the tool.

Inherited From:
Source:
mapspace/controls/control.js

updateControl(element)

Updates the control.

Parameters:
Name Type Description
element HTMLElement

The element of the control.

Source:
mapspace/controls/syncmanager.js

updateLanguage()

Updates the control for the current language in the Mapspace.Globalization singleton.

Inherited From:
Overrides:
Source:
mapspace/controls/control.js