diff --git a/examples/side-by-side.js b/examples/side-by-side.js index 8f9e322664..983c8e1528 100644 --- a/examples/side-by-side.js +++ b/examples/side-by-side.js @@ -34,7 +34,7 @@ var domMousePosition = new ol.control.MousePosition({ undefinedHTML: ' ' }); var domMap = new ol.Map({ - controls: ol.control.defaults({}, domMousePosition), + controls: ol.control.defaults({}, [domMousePosition]), layers: new ol.Collection([layer]), renderer: ol.RendererHint.DOM, target: 'domMap', @@ -48,7 +48,7 @@ var webglMousePosition = new ol.control.MousePosition({ undefinedHTML: ' ' }); var webglMap = new ol.Map({ - controls: ol.control.defaults({}, webglMousePosition), + controls: ol.control.defaults({}, [webglMousePosition]), renderer: ol.RendererHint.WEBGL, target: 'webglMap' }); @@ -65,7 +65,7 @@ var canvasMousePosition = new ol.control.MousePosition({ undefinedHtml: ' ' }); var canvasMap = new ol.Map({ - controls: ol.control.defaults({}, canvasMousePosition), + controls: ol.control.defaults({}, [canvasMousePosition]), renderer: ol.RendererHint.CANVAS, target: 'canvasMap' }); diff --git a/src/ol/control/defaults.js b/src/ol/control/defaults.js index 983e279be1..6217c59a7a 100644 --- a/src/ol/control/defaults.js +++ b/src/ol/control/defaults.js @@ -1,5 +1,6 @@ goog.provide('ol.control.defaults'); +goog.require('goog.array'); goog.require('ol.control.Attribution'); goog.require('ol.control.ScaleLine'); goog.require('ol.control.Zoom'); @@ -7,10 +8,10 @@ goog.require('ol.control.Zoom'); /** * @param {ol.control.DefaultsOptions=} opt_options Options. - * @param {...ol.control.Control} var_args Further controls. + * @param {Array.=} opt_controls Additional controls. * @return {Array.} Controls. */ -ol.control.defaults = function(opt_options, var_args) { +ol.control.defaults = function(opt_options, opt_controls) { var options = goog.isDef(opt_options) ? opt_options : {}; @@ -41,9 +42,8 @@ ol.control.defaults = function(opt_options, var_args) { controls.push(new ol.control.Zoom(zoomControlOptions)); } - var i; - for (i = 1; i < arguments.length; ++i) { - controls.push(arguments[i]); + if (goog.isDef(opt_controls)) { + goog.array.extend(controls, opt_controls); } return controls;