Maps API for JavaScript Developer's Guide

H.map.Group

Class Summary

Extends: H.map.Object

A group is a container for other map objects. Its visibility, zIndex and object-order affect the contained map objects.

[ For full details, see the Class Details ]

Method Summary

Table 1. Methods
Methods

forEach (callback, opt_recursive, opt_context)

This method invokes a provided callback once per object in add order. The callback receives the following arguments:
  • the currently traversed object
  • the index of the object
  • the group itself

getObjects (opt_recursive) : {!Array<!H.map.Object>}

This method retrieves a list of all objects of this group. On groups with many children this method can cause a higher memory and CPU consumption. Alternatively you case use H.map.Group#forEach

getBounds () : {H.geo.Rect}

This method retrieves the bounding rectangle for the group. The rectangle is the smallest rectangle that covers all objects. If the group does not contain any objects, the method returns null.

addObject (object) : {!H.map.Object}

This method adds an object to the group.

addObjects (objects)

This method appends a list of objects to the given group.

removeObject (object) : {!H.map.Object}

This method removes an object from the group.

removeObjects (objects)

This method removes objects from the group.

removeAll ()

This method removes all objects from the group.

getId () : {*}

This method retrieves the ID of the given object.

setVisibility (opt_visibility) : {H.map.Object}

This method sets the visibility of the given object.

getVisibility (opt_effective) : {boolean}

This method retrieves a value indicating the visibility of the given object.

getZIndex () : {(number | undefined)}

This method retrieves the z-index of the given object.

setZIndex (zIndex) : {H.map.Object}

This method sets the z-index of the given object.

compareZOrder (other) : {number}

This method compares the rendering z-order of the given object with another object. (The 'given object' mean the object on which the method has been invoke.)

getParentGroup () : {?H.map.Group}

This method retrieves the parent group which contains the given object or null if the object is not contained in any group.

getRootGroup () : {!H.map.Object}

The root object to which the given object is attached or the object itself if it is not attached to another.

contains (object) : {boolean}

This method checks whether the received object is an inclusive descendant of the given object.

getProvider () : {?H.map.provider.ObjectProvider}

This method obtains the current provider of the given object.

getInvalidations () : {H.map.provider.Invalidations}

This method retrieves the invalidation states for the given object.

invalidate (flags) : {boolean}

This method invalidates the given map object.

getData () : {*}

This method retrieves previously stored arbitrary data from the given object.

setData (data) : {H.map.Object}

This method stores arbitrary data with the given map object.

addEventListener (type, handler, opt_capture, opt_scope)

This method adds a listener for a specific event.

removeEventListener (type, handler, opt_capture, opt_scope)

This method removes a previously added listener from the EventTarget instance.

dispatchEvent (evt)

This method dispatches an event on the EventTarget object.

dispose ()

This method removes listeners from the given object. Classes that extend EventTarget may need to override this method in order to remove references to DOM Elements and additional listeners.

addOnDisposeCallback (callback, opt_scope)

This method adds a callback which is triggered when the EventTarget object is being disposed.

Events Summary

Table 2. Events
Events

visibilitychange : {H.util.ChangeEvent}

Event fired when the visibility of the given object changes.

zindexchange : {H.util.ChangeEvent}

Event fired when the z-index of the given object changes.

Class Description

A group is a container for other map objects. Its visibility, zIndex and object-order affect the contained map objects.

Constructor Details

H.map.Group(opt_options)

Parameters:
 
opt_options:
{H.map.Group.Options=} [optional]
 
An optional object containing initialization values
Throws:
 
{H.lang.InvalidArgumentError}
 
if the option's "objects" property is specified but not an Array of H.map.Object instances
{H.lang.IllegalOperationError}
 
if the options "provider" and "objects" are specified, but the provider for one or more of the contained objects and the group's provider are different and neither null nor an instance of H.map.provider.LocalObjectProvider

Method Details

forEach (callback, opt_recursive, opt_context)

This method invokes a provided callback once per object in add order. The callback receives the following arguments:
  • the currently traversed object
  • the index of the object
  • the group itself
Parameters:
 
callback:
{function(!H.map.Object, number, !H.map.Group)}
 
opt_recursive:
{boolean=} [optional]
 
A Boolean value indicating whether sub-groups should be traversed recursively
opt_context:
{*=} [optional]
 
The context to use as "this" within the callback

getObjects (opt_recursive) : {!Array<!H.map.Object>}

This method retrieves a list of all objects of this group. On groups with many children this method can cause a higher memory and CPU consumption. Alternatively you case use H.map.Group#forEach

Parameters:
 
opt_recursive:
{boolean=} [optional]
 
Indicates whether objects in sub-groups are also collected .
Returns:
 
{!Array<!H.map.Object>}

getBounds () : {H.geo.Rect}

This method retrieves the bounding rectangle for the group. The rectangle is the smallest rectangle that covers all objects. If the group does not contain any objects, the method returns null.

Returns:
 
{H.geo.Rect}
A rectangle that covers all objects in the group or null if the group contains no objects

addObject (object) : {!H.map.Object}

This method adds an object to the group.

Parameters:
 
object:
{!H.map.Object}
 
Returns:
 
{!H.map.Object}
a reference to the appended object
Throws:
 
{H.lang.InvalidArgumentError}
 
if the argument is not an instance of H.map.Object
{H.lang.IllegalOperationError}
 
if the provider for the object to be added is different from the group's provider and is neither null nor an instance of H.map.provider.LocalObjectProvider

addObjects (objects)

This method appends a list of objects to the given group.

Parameters:
 
objects:
{Array<!H.map.Object>}
 
Throws:
 
{H.lang.InvalidArgumentError}
 
if the argument is not an Array of H.map.Object instances
{H.lang.IllegalOperationError}
 
if the options "provider" and "objects" are specified, but the provider for one or more of the objects to be added is different from the group's provider and neither null nor an instance of H.map.provider.LocalObjectProvider

removeObject (object) : {!H.map.Object}

This method removes an object from the group.

Parameters:
 
object:
{!H.map.Object}
 
The object to remove
Returns:
 
{!H.map.Object}
A reference to the removed object
Throws:
 
{H.lang.InvalidArgumentError}
 
if the object specified by the caller is not a object of this group

removeObjects (objects)

This method removes objects from the group.

Parameters:
 
objects:
{!Array<!H.map.Object>}
 
A list of objects to remove
Throws:
 
{H.lang.InvalidArgumentError}
 
if the list of objects to remove is not an array or it contains objects that are not part of the group

removeAll ()

This method removes all objects from the group.

getId () : {*}

This method retrieves the ID of the given object.

Returns:
 
{*}
The identifier of the given object.

setVisibility (opt_visibility) : {H.map.Object}

This method sets the visibility of the given object.

Parameters:
 
opt_visibility:
{boolean=} [optional]
 
Indicates whether the map object should be visible.
Returns:
 
{H.map.Object}
The given object

getVisibility (opt_effective) : {boolean}

This method retrieves a value indicating the visibility of the given object.

Parameters:
 
opt_effective:
{boolean=} [optional]
 
Indicates that the effective visibility is requested. In this case the visibility of all possible ancestor groups is also taken into account
Returns:
 
{boolean}
A value indicating if the object is visible (true) or not false

getZIndex () : {(number | undefined)}

This method retrieves the z-index of the given object.

Returns:
 
{(number | undefined)}
A value reflecting the z-index of the given object.

setZIndex (zIndex) : {H.map.Object}

This method sets the z-index of the given object.

Parameters:
 
zIndex:
{(number | undefined)}
 
A value indicating the new z-index
Returns:
 
{H.map.Object}
The given object

compareZOrder (other) : {number}

This method compares the rendering z-order of the given object with another object. (The 'given object' mean the object on which the method has been invoke.)

Parameters:
 
other:
{H.map.Object}
 
The map object with which to compare the given object.
Returns:
 
{number}
A value lower than 0 indicates that the given object has a lower z-order. 0 indicates that both objects have the same z-order. A value greater than 0, indicates that the given object has a higher z-order.

getParentGroup () : {?H.map.Group}

This method retrieves the parent group which contains the given object or null if the object is not contained in any group.

Returns:
 
{?H.map.Group}
An object representing the containing group object or null if the given object is not contained in any group.

getRootGroup () : {!H.map.Object}

The root object to which the given object is attached or the object itself if it is not attached to another.

Returns:
 
{!H.map.Object}
An object representing the root group for the given object or the given object if it is not part of a group.

contains (object) : {boolean}

This method checks whether the received object is an inclusive descendant of the given object.

Parameters:
 
object:
{*}
 
The object to check.
Returns:
 
{boolean}
true if the given object is contained in the given object, otherwise false

getProvider () : {?H.map.provider.ObjectProvider}

This method obtains the current provider of the given object.

Returns:
 
{?H.map.provider.ObjectProvider}
An object representing the provider

getInvalidations () : {H.map.provider.Invalidations}

This method retrieves the invalidation states for the given object.

Returns:
 
{H.map.provider.Invalidations}
An object containing the invalidation states

invalidate (flags) : {boolean}

This method invalidates the given map object.

Parameters:
 
flags:
{H.math.BitMask}
 
The flags indicating the types of changes to the given object
Returns:
 
{boolean}
Indicates whether a validation was executed (only if the object has a provider)

getData () : {*}

This method retrieves previously stored arbitrary data from the given object.

Returns:
 
{*}
The previously stored data or undefined if no data was stored.

setData (data) : {H.map.Object}

This method stores arbitrary data with the given map object.

Parameters:
 
data:
{*}
 
The data to be stored
Returns:
 
{H.map.Object}
The given map object

addEventListener (type, handler, opt_capture, opt_scope)

This method adds a listener for a specific event.

Note that to prevent potential memory leaks, you must either call removeEventListener or dispose on the given object when you no longer need it.

Parameters:
 
type:
{string}
 
The name of the event
handler:
{!Function}
 
An event handler function
opt_capture:
{boolean=} [optional]
 
true indicates that the method should listen in the capture phase (bubble otherwise)
opt_scope:
{Object=} [optional]
 
An object defining the scope for the handler function

removeEventListener (type, handler, opt_capture, opt_scope)

This method removes a previously added listener from the EventTarget instance.

Parameters:
 
type:
{string}
 
The name of the event
handler:
{!Function}
 
A previously added event handler
opt_capture:
{boolean=} [optional]
 
true indicates that the method should listen in the capture phase (bubble otherwise)
opt_scope:
{Object=} [optional]
 
An oject defining the scope for the handler function

dispatchEvent (evt)

This method dispatches an event on the EventTarget object.

Parameters:
 
evt:
{(H.util.Event | string)}
 
An object representing the event or a string with the event name

dispose ()

This method removes listeners from the given object. Classes that extend EventTarget may need to override this method in order to remove references to DOM Elements and additional listeners.

addOnDisposeCallback (callback, opt_scope)

This method adds a callback which is triggered when the EventTarget object is being disposed.

Parameters:
 
callback:
{!Function}
 
The callback function.
opt_scope:
{Object=} [optional]
 
An optional scope for the callback function

Event Details

visibilitychange: {H.util.ChangeEvent}

Event fired when the visibility of the given object changes.

Deprecated:
since 3.0.7.0

zindexchange: {H.util.ChangeEvent}

Event fired when the z-index of the given object changes.

Deprecated:
since 3.0.7.0