diff --git a/contribs/gmf/apps/oeedit/js/controller.js b/contribs/gmf/apps/oeedit/js/controller.js index 1ef50539fc6e..4c175347f387 100644 --- a/contribs/gmf/apps/oeedit/js/controller.js +++ b/contribs/gmf/apps/oeedit/js/controller.js @@ -17,9 +17,9 @@ goog.require('ngeo.proj.EPSG21781'); goog.require('gmf.objecteditingComponent'); goog.require('gmf.ObjectEditingManager'); goog.require('gmf.Themes'); -goog.require('ngeo.ToolActivate'); +goog.require('ngeo.misc.ToolActivate'); /** @suppress {extraRequire} */ -goog.require('ngeo.ToolActivateMgr'); +goog.require('ngeo.misc.ToolActivateMgr'); goog.require('ol'); goog.require('ol.Collection'); goog.require('ol.layer.Vector'); @@ -53,16 +53,16 @@ app.oeedit.Controller = function($scope, $injector, $timeout) { /** * The ngeo ToolActivate manager service. - * @type {ngeo.ToolActivateMgr} + * @type {ngeo.misc.ToolActivateMgr} */ const ngeoToolActivateMgr = $injector.get('ngeoToolActivateMgr'); ngeoToolActivateMgr.unregisterGroup('mapTools'); - const oeEditToolActivate = new ngeo.ToolActivate(this, 'oeEditActive'); + const oeEditToolActivate = new ngeo.misc.ToolActivate(this, 'oeEditActive'); ngeoToolActivateMgr.registerTool('mapTools', oeEditToolActivate, true); - const queryToolActivate = new ngeo.ToolActivate(this, 'queryActive'); + const queryToolActivate = new ngeo.misc.ToolActivate(this, 'queryActive'); ngeoToolActivateMgr.registerTool('mapTools', queryToolActivate, false); // Set edit tool as default active one diff --git a/contribs/gmf/examples/drawfeature.js b/contribs/gmf/examples/drawfeature.js index a2a5b40096b5..55b751134dde 100644 --- a/contribs/gmf/examples/drawfeature.js +++ b/contribs/gmf/examples/drawfeature.js @@ -6,8 +6,8 @@ goog.require('gmf.mapDirective'); goog.require('ngeo.draw.module'); goog.require('ngeo.map.module'); goog.require('ngeo.misc.FeatureHelper'); -goog.require('ngeo.ToolActivate'); -goog.require('ngeo.ToolActivateMgr'); +goog.require('ngeo.misc.ToolActivate'); +goog.require('ngeo.misc.ToolActivateMgr'); goog.require('ol.Map'); goog.require('ol.View'); goog.require('ol.layer.Tile'); @@ -20,7 +20,7 @@ gmfapp.module = angular.module('gmfapp', [ ngeo.draw.module.name, ngeo.map.module.name, // for ngeo.map.FeatureOverlay, perhaps remove me ngeo.misc.FeatureHelper.module.name, - ngeo.ToolActivateMgr.module.name, + ngeo.misc.ToolActivateMgr.module.name, ]); @@ -34,7 +34,7 @@ gmfapp.module.value('ngeoExportFeatureFormats', [ * @param {!angular.Scope} $scope Angular scope. * @param {ngeo.misc.FeatureHelper} ngeoFeatureHelper Gmf feature helper service. * @param {ol.Collection.} ngeoFeatures Collection of features. - * @param {ngeo.ToolActivateMgr} ngeoToolActivateMgr Ngeo ToolActivate manager + * @param {ngeo.misc.ToolActivateMgr} ngeoToolActivateMgr Ngeo ToolActivate manager * service. * @param {ngeo.map.FeatureOverlayMgr} ngeoFeatureOverlayMgr Ngeo FeatureOverlay * manager @@ -79,7 +79,7 @@ gmfapp.MainController = function($scope, ngeoFeatureHelper, ngeoFeatures, */ this.drawFeatureActive = true; - const drawFeatureToolActivate = new ngeo.ToolActivate( + const drawFeatureToolActivate = new ngeo.misc.ToolActivate( this, 'drawFeatureActive'); ngeoToolActivateMgr.registerTool( 'mapTools', drawFeatureToolActivate, true); @@ -90,7 +90,7 @@ gmfapp.MainController = function($scope, ngeoFeatureHelper, ngeoFeatures, */ this.pointerMoveActive = false; - const pointerMoveToolActivate = new ngeo.ToolActivate( + const pointerMoveToolActivate = new ngeo.misc.ToolActivate( this, 'pointerMoveActive'); ngeoToolActivateMgr.registerTool( 'mapTools', pointerMoveToolActivate, false); diff --git a/contribs/gmf/examples/editfeatureselector.js b/contribs/gmf/examples/editfeatureselector.js index 79fb71eca304..12c4cddc69ce 100644 --- a/contribs/gmf/examples/editfeatureselector.js +++ b/contribs/gmf/examples/editfeatureselector.js @@ -1,5 +1,6 @@ goog.provide('gmfapp.editfeatureselector'); +goog.require('gmf'); goog.require('gmf.Themes'); goog.require('gmf.TreeManager'); /** @suppress {extraRequire} */ @@ -11,8 +12,8 @@ goog.require('gmf.layertreeComponent'); /** @suppress {extraRequire} */ goog.require('gmf.mapDirective'); goog.require('ngeo.misc.FeatureHelper'); -goog.require('ngeo.ToolActivate'); -goog.require('ngeo.ToolActivateMgr'); +goog.require('ngeo.misc.ToolActivate'); +goog.require('ngeo.misc.ToolActivateMgr'); /** @suppress {extraRequire} */ goog.require('ngeo.proj.EPSG21781'); goog.require('ol.Collection'); @@ -26,8 +27,8 @@ goog.require('ol.source.Vector'); /** @type {!angular.Module} **/ gmfapp.module = angular.module('gmfapp', [ - 'gmf', - ngeo.ToolActivateMgr.module.name, + gmf.module.name, + ngeo.misc.ToolActivateMgr.module.name, gmf.authentication.module.name, ]); @@ -55,7 +56,7 @@ gmfapp.module.value('gmfLayersUrl', * @param {gmf.TreeManager} gmfTreeManager gmf Tree Manager service. * @param {gmfx.User} gmfUser User. * @param {ngeo.misc.FeatureHelper} ngeoFeatureHelper Ngeo feature helper service. - * @param {ngeo.ToolActivateMgr} ngeoToolActivateMgr Ngeo ToolActivate manager + * @param {ngeo.misc.ToolActivateMgr} ngeoToolActivateMgr Ngeo ToolActivate manager * service. * @ngInject * @constructor @@ -141,7 +142,7 @@ gmfapp.MainController = function($scope, gmfThemes, gmfTreeManager, gmfUser, */ this.editFeatureSelectorActive = true; - const editFeatureSelectorToolActivate = new ngeo.ToolActivate( + const editFeatureSelectorToolActivate = new ngeo.misc.ToolActivate( this, 'editFeatureSelectorActive'); ngeoToolActivateMgr.registerTool( 'mapTools', editFeatureSelectorToolActivate, true); @@ -152,7 +153,7 @@ gmfapp.MainController = function($scope, gmfThemes, gmfTreeManager, gmfUser, */ this.dummyActive = false; - const dummyToolActivate = new ngeo.ToolActivate( + const dummyToolActivate = new ngeo.misc.ToolActivate( this, 'dummyActive'); ngeoToolActivateMgr.registerTool( 'mapTools', dummyToolActivate, false); diff --git a/contribs/gmf/examples/filterselector.js b/contribs/gmf/examples/filterselector.js index b2bd37c80bc8..bde4d267f5d7 100644 --- a/contribs/gmf/examples/filterselector.js +++ b/contribs/gmf/examples/filterselector.js @@ -2,6 +2,7 @@ goog.provide('gmfapp.filterselector'); +goog.require('gmf'); /** @suppress {extraRequire} */ goog.require('gmf.authentication.module'); goog.require('gmf.Themes'); @@ -18,8 +19,8 @@ goog.require('gmf.mapDirective'); goog.require('ngeo.query.bboxQueryComponent'); /** @suppress {extraRequire} */ goog.require('ngeo.query.mapQueryComponent'); -goog.require('ngeo.ToolActivate'); -goog.require('ngeo.ToolActivateMgr'); +goog.require('ngeo.misc.ToolActivate'); +goog.require('ngeo.misc.ToolActivateMgr'); /** @suppress {extraRequire} */ goog.require('ngeo.proj.EPSG21781'); goog.require('ol.Map'); @@ -30,8 +31,8 @@ goog.require('ol.source.OSM'); /** @type {!angular.Module} **/ gmfapp.module = angular.module('gmfapp', [ - 'gmf', - ngeo.ToolActivateMgr.module.name, + gmf.module.name, + ngeo.misc.ToolActivateMgr.module.name, gmf.authentication.module.name, ]); @@ -63,7 +64,7 @@ gmfapp.MainController = class { * @param {gmf.TreeManager} gmfTreeManager gmf Tree Manager service. * @param {ngeo.datasource.DataSources} ngeoDataSources Ngeo collection of * data sources objects. - * @param {ngeo.ToolActivateMgr} ngeoToolActivateMgr Ngeo ToolActivate manager + * @param {ngeo.misc.ToolActivateMgr} ngeoToolActivateMgr Ngeo ToolActivate manager * service. * @ngInject */ @@ -127,7 +128,7 @@ gmfapp.MainController = class { */ this.filterSelectorActive = true; - const filterSelectorToolActivate = new ngeo.ToolActivate( + const filterSelectorToolActivate = new ngeo.misc.ToolActivate( this, 'filterSelectorActive'); ngeoToolActivateMgr.registerTool( 'dummyTools', filterSelectorToolActivate, true); @@ -138,7 +139,7 @@ gmfapp.MainController = class { */ this.dummyActive = false; - const dummyToolActivate = new ngeo.ToolActivate( + const dummyToolActivate = new ngeo.misc.ToolActivate( this, 'dummyActive'); ngeoToolActivateMgr.registerTool( 'dummyTools', dummyToolActivate, false); @@ -149,7 +150,7 @@ gmfapp.MainController = class { */ this.queryActive = true; - const queryToolActivate = new ngeo.ToolActivate( + const queryToolActivate = new ngeo.misc.ToolActivate( this, 'queryActive'); ngeoToolActivateMgr.registerTool( this.toolGroup, queryToolActivate, true); diff --git a/contribs/gmf/examples/objectediting.js b/contribs/gmf/examples/objectediting.js index b8a6805b3202..c0499676fb5b 100644 --- a/contribs/gmf/examples/objectediting.js +++ b/contribs/gmf/examples/objectediting.js @@ -1,5 +1,6 @@ goog.provide('gmfapp.objectediting'); +goog.require('gmf'); goog.require('gmf.Themes'); goog.require('gmf.TreeManager'); /** @suppress {extraRequire} */ @@ -9,8 +10,8 @@ goog.require('gmf.mapDirective'); /** @suppress {extraRequire} */ goog.require('gmf.objecteditingComponent'); goog.require('gmf.ObjectEditingManager'); -goog.require('ngeo.ToolActivate'); -goog.require('ngeo.ToolActivateMgr'); +goog.require('ngeo.misc.ToolActivate'); +goog.require('ngeo.misc.ToolActivateMgr'); /** @suppress {extraRequire} */ goog.require('ngeo.proj.EPSG21781'); goog.require('ol.Collection'); @@ -24,8 +25,8 @@ goog.require('ol.source.Vector'); /** @type {!angular.Module} **/ gmfapp.module = angular.module('gmfapp', [ - 'gmf', - ngeo.ToolActivateMgr.module.name, + gmf.module.name, + ngeo.misc.ToolActivateMgr.module.name, ]); @@ -34,7 +35,7 @@ gmfapp.module = angular.module('gmfapp', [ * ObjectEditing manager service. * @param {gmf.Themes} gmfThemes The gmf themes service. * @param {gmf.TreeManager} gmfTreeManager gmf Tree Manager service. - * @param {ngeo.ToolActivateMgr} ngeoToolActivateMgr Ngeo ToolActivate manager + * @param {ngeo.misc.ToolActivateMgr} ngeoToolActivateMgr Ngeo ToolActivate manager * service. * @constructor * @ngInject @@ -130,7 +131,7 @@ gmfapp.MainController = function(gmfObjectEditingManager, gmfThemes, */ this.objectEditingActive = true; - const objectEditingToolActivate = new ngeo.ToolActivate( + const objectEditingToolActivate = new ngeo.misc.ToolActivate( this, 'objectEditingActive'); ngeoToolActivateMgr.registerTool( 'mapTools', objectEditingToolActivate, true); @@ -141,7 +142,7 @@ gmfapp.MainController = function(gmfObjectEditingManager, gmfThemes, */ this.dummyActive = false; - const dummyToolActivate = new ngeo.ToolActivate( + const dummyToolActivate = new ngeo.misc.ToolActivate( this, 'dummyActive'); ngeoToolActivateMgr.registerTool( 'mapTools', dummyToolActivate, false); diff --git a/contribs/gmf/src/controllers/AbstractAppController.js b/contribs/gmf/src/controllers/AbstractAppController.js index 4869ace346cd..51a9952cc336 100644 --- a/contribs/gmf/src/controllers/AbstractAppController.js +++ b/contribs/gmf/src/controllers/AbstractAppController.js @@ -31,9 +31,9 @@ goog.require('ngeo.query.mapQueryComponent'); goog.require('ngeo.misc.FeatureHelper'); /** @suppress {extraRequire} */ goog.require('ngeo.misc.getBrowserLanguage'); -goog.require('ngeo.ToolActivate'); +goog.require('ngeo.misc.ToolActivate'); /** @suppress {extraRequire} */ -goog.require('ngeo.ToolActivateMgr'); +goog.require('ngeo.misc.ToolActivateMgr'); goog.require('ol.events'); goog.require('ol.style.Circle'); goog.require('ol.style.Fill'); @@ -401,26 +401,26 @@ gmf.AbstractAppController = function(config, $scope, $injector) { /** * The ngeo ToolActivate manager service. - * @type {ngeo.ToolActivateMgr} + * @type {ngeo.misc.ToolActivateMgr} */ const ngeoToolActivateMgr = $injector.get('ngeoToolActivateMgr'); - const queryToolActivate = new ngeo.ToolActivate(this, 'queryActive'); + const queryToolActivate = new ngeo.misc.ToolActivate(this, 'queryActive'); ngeoToolActivateMgr.registerTool(mapTools, queryToolActivate, true); - const measurePointActivate = new ngeo.ToolActivate(this, 'measurePointActive'); + const measurePointActivate = new ngeo.misc.ToolActivate(this, 'measurePointActive'); ngeoToolActivateMgr.registerTool(mapTools, measurePointActivate, false); - const measureLengthActivate = new ngeo.ToolActivate(this, 'measureLengthActive'); + const measureLengthActivate = new ngeo.misc.ToolActivate(this, 'measureLengthActive'); ngeoToolActivateMgr.registerTool(mapTools, measureLengthActivate, false); - const drawFeatureActivate = new ngeo.ToolActivate(this, 'drawFeatureActive'); + const drawFeatureActivate = new ngeo.misc.ToolActivate(this, 'drawFeatureActive'); ngeoToolActivateMgr.registerTool(mapTools, drawFeatureActivate, false); - const drawProfilePanelActivate = new ngeo.ToolActivate(this, 'drawProfilePanelActive'); + const drawProfilePanelActivate = new ngeo.misc.ToolActivate(this, 'drawProfilePanelActive'); ngeoToolActivateMgr.registerTool(mapTools, drawProfilePanelActivate, false); - const printPanelActivate = new ngeo.ToolActivate(this, 'printPanelActive'); + const printPanelActivate = new ngeo.misc.ToolActivate(this, 'printPanelActive'); ngeoToolActivateMgr.registerTool(mapTools, printPanelActivate, false); $scope.$root.$on(gmf.ThemeManager.EventType.THEME_NAME_SET, (event, name) => { diff --git a/contribs/gmf/src/controllers/AbstractDesktopController.js b/contribs/gmf/src/controllers/AbstractDesktopController.js index 66424fa4a39a..a5e08fa3dc1e 100644 --- a/contribs/gmf/src/controllers/AbstractDesktopController.js +++ b/contribs/gmf/src/controllers/AbstractDesktopController.js @@ -35,7 +35,9 @@ goog.require('ngeo.btnDirective'); /** @suppress {extraRequire} */ goog.require('ngeo.draw.features'); /** @suppress {extraRequire} */ -goog.require('ngeo.ToolActivate'); +goog.require('ngeo.misc.ToolActivate'); +/** @suppress {extraRequire} */ +goog.require('ngeo.misc.ToolActivateMgr'); goog.require('ol.Collection'); goog.require('ol.Map'); goog.require('ol.View'); @@ -212,14 +214,14 @@ gmf.AbstractDesktopController = function(config, $scope, $injector) { /** * The ngeo ToolActivate manager service. - * @type {ngeo.ToolActivateMgr} + * @type {ngeo.misc.ToolActivateMgr} */ const ngeoToolActivateMgr = $injector.get('ngeoToolActivateMgr'); - const editFeatureActivate = new ngeo.ToolActivate(this, 'editFeatureActive'); + const editFeatureActivate = new ngeo.misc.ToolActivate(this, 'editFeatureActive'); ngeoToolActivateMgr.registerTool('mapTools', editFeatureActivate, false); - const googleStreetViewActivate = new ngeo.ToolActivate( + const googleStreetViewActivate = new ngeo.misc.ToolActivate( this, 'googleStreetViewActive' ); diff --git a/contribs/gmf/src/directives/drawfeature.js b/contribs/gmf/src/directives/drawfeature.js index 773ad0d296f2..74d7b8005e33 100644 --- a/contribs/gmf/src/directives/drawfeature.js +++ b/contribs/gmf/src/directives/drawfeature.js @@ -4,9 +4,6 @@ goog.require('gmf'); /** @suppress {extraRequire} */ goog.require('gmf.featurestyleDirective'); goog.require('ngeo.Menu'); -goog.require('ngeo.ToolActivate'); -/** @suppress {extraRequire} */ -goog.require('ngeo.ToolActivateMgr'); /** @suppress {extraRequire} */ goog.require('ngeo.btnDirective'); /** @suppress {extraRequire} */ @@ -18,6 +15,8 @@ goog.require('ngeo.interaction.Rotate'); goog.require('ngeo.interaction.Translate'); goog.require('ngeo.misc.decorate'); goog.require('ngeo.misc.FeatureHelper'); +goog.require('ngeo.misc.ToolActivate'); +goog.require('ngeo.misc.ToolActivateMgr'); goog.require('ol.events'); goog.require('ol.Collection'); goog.require('ol.style.Fill'); @@ -73,7 +72,7 @@ gmf.module.directive('gmfDrawfeature', gmf.drawfeatureDirective); * @param {!angularGettext.Catalog} gettextCatalog Gettext catalog. * @param {!ngeo.misc.FeatureHelper} ngeoFeatureHelper Ngeo feature helper service. * @param {!ol.Collection.} ngeoFeatures Collection of features. - * @param {!ngeo.ToolActivateMgr} ngeoToolActivateMgr Ngeo ToolActivate manager + * @param {!ngeo.misc.ToolActivateMgr} ngeoToolActivateMgr Ngeo ToolActivate manager * service. * @constructor * @private @@ -107,10 +106,10 @@ gmf.DrawfeatureController = function($scope, $timeout, gettextCatalog, this.drawActive = false; /** - * @type {!ngeo.ToolActivate} + * @type {!ngeo.misc.ToolActivate} * @export */ - this.drawToolActivate = new ngeo.ToolActivate(this, 'drawActive'); + this.drawToolActivate = new ngeo.misc.ToolActivate(this, 'drawActive'); /** * @type {boolean} @@ -125,10 +124,10 @@ gmf.DrawfeatureController = function($scope, $timeout, gettextCatalog, this.longPressTimeout_ = null; /** - * @type {!ngeo.ToolActivate} + * @type {!ngeo.misc.ToolActivate} * @export */ - this.mapSelectToolActivate = new ngeo.ToolActivate(this, 'mapSelectActive'); + this.mapSelectToolActivate = new ngeo.misc.ToolActivate(this, 'mapSelectActive'); /** * @type {!angular.Scope} @@ -155,7 +154,7 @@ gmf.DrawfeatureController = function($scope, $timeout, gettextCatalog, this.features = ngeoFeatures; /** - * @type {!ngeo.ToolActivateMgr} + * @type {!ngeo.misc.ToolActivateMgr} * @private */ this.ngeoToolActivateMgr_ = ngeoToolActivateMgr; @@ -196,10 +195,10 @@ gmf.DrawfeatureController = function($scope, $timeout, gettextCatalog, this.menu_ = null; /** - * @type {!ngeo.ToolActivate} + * @type {!ngeo.misc.ToolActivate} * @export */ - this.modifyToolActivate = new ngeo.ToolActivate(this.modify_, 'active'); + this.modifyToolActivate = new ngeo.misc.ToolActivate(this.modify_, 'active'); /** * @type {!ngeo.interaction.Translate} @@ -240,16 +239,16 @@ gmf.DrawfeatureController = function($scope, $timeout, gettextCatalog, this.initializeInteractions_(); /** - * @type {!ngeo.ToolActivate} + * @type {!ngeo.misc.ToolActivate} * @export */ - this.rotateToolActivate = new ngeo.ToolActivate(this.rotate_, 'active'); + this.rotateToolActivate = new ngeo.misc.ToolActivate(this.rotate_, 'active'); /** - * @type {!ngeo.ToolActivate} + * @type {!ngeo.misc.ToolActivate} * @export */ - this.translateToolActivate = new ngeo.ToolActivate(this.translate_, 'active'); + this.translateToolActivate = new ngeo.misc.ToolActivate(this.translate_, 'active'); /** * @type {!Array.} diff --git a/contribs/gmf/src/directives/editfeature.js b/contribs/gmf/src/directives/editfeature.js index 3082f2b4cacf..197b573a2143 100644 --- a/contribs/gmf/src/directives/editfeature.js +++ b/contribs/gmf/src/directives/editfeature.js @@ -13,16 +13,16 @@ goog.require('ngeo.attributesComponent'); goog.require('ngeo.btnDirective'); /** @suppress {extraRequire} */ goog.require('ngeo.createfeatureDirective'); +goog.require('ngeo.interaction.Rotate'); +goog.require('ngeo.interaction.Translate'); goog.require('ngeo.map.LayerHelper'); +goog.require('ngeo.Menu'); goog.require('ngeo.misc.decorate'); goog.require('ngeo.misc.EventHelper'); goog.require('ngeo.misc.FeatureHelper'); -goog.require('ngeo.Menu'); -goog.require('ngeo.ToolActivate'); +goog.require('ngeo.misc.ToolActivate'); /** @suppress {extraRequire} */ -goog.require('ngeo.ToolActivateMgr'); -goog.require('ngeo.interaction.Rotate'); -goog.require('ngeo.interaction.Translate'); +goog.require('ngeo.misc.ToolActivateMgr'); /** @suppress {extraRequire} */ goog.require('ngeo.modalDirective'); goog.require('ol.Collection'); @@ -107,7 +107,7 @@ gmf.module.directive( * @param {ngeo.misc.EventHelper} ngeoEventHelper Ngeo Event Helper. * @param {ngeo.misc.FeatureHelper} ngeoFeatureHelper Ngeo feature helper service. * @param {ngeo.map.LayerHelper} ngeoLayerHelper Ngeo Layer Helper. - * @param {ngeo.ToolActivateMgr} ngeoToolActivateMgr Ngeo ToolActivate manager + * @param {ngeo.misc.ToolActivateMgr} ngeoToolActivateMgr Ngeo ToolActivate manager * service. * @constructor * @private @@ -232,7 +232,7 @@ gmf.EditfeatureController = function($element, $q, $scope, $timeout, this.ngeoLayerHelper_ = ngeoLayerHelper; /** - * @type {ngeo.ToolActivateMgr} + * @type {ngeo.misc.ToolActivateMgr} * @private */ this.ngeoToolActivateMgr_ = ngeoToolActivateMgr; @@ -288,10 +288,10 @@ gmf.EditfeatureController = function($element, $q, $scope, $timeout, this.createActive = false; /** - * @type {ngeo.ToolActivate} + * @type {ngeo.misc.ToolActivate} * @export */ - this.createToolActivate = new ngeo.ToolActivate(this, 'createActive'); + this.createToolActivate = new ngeo.misc.ToolActivate(this, 'createActive'); /** * @type {boolean} @@ -300,10 +300,10 @@ gmf.EditfeatureController = function($element, $q, $scope, $timeout, this.mapSelectActive = true; /** - * @type {ngeo.ToolActivate} + * @type {ngeo.misc.ToolActivate} * @export */ - this.mapSelectToolActivate = new ngeo.ToolActivate(this, 'mapSelectActive'); + this.mapSelectToolActivate = new ngeo.misc.ToolActivate(this, 'mapSelectActive'); /** * @type {?ol.Feature} @@ -341,7 +341,7 @@ gmf.EditfeatureController = function($element, $q, $scope, $timeout, this.modify_; /** - * @type {ngeo.ToolActivate} + * @type {ngeo.misc.ToolActivate} * @export */ this.modifyToolActivate; @@ -375,13 +375,13 @@ gmf.EditfeatureController = function($element, $q, $scope, $timeout, this.rotate_; /** - * @type {!ngeo.ToolActivate} + * @type {!ngeo.misc.ToolActivate} * @export */ this.rotateToolActivate; /** - * @type {!ngeo.ToolActivate} + * @type {!ngeo.misc.ToolActivate} * @export */ this.translateToolActivate; @@ -479,9 +479,9 @@ gmf.EditfeatureController.prototype.$onInit = function() { this.initializeInteractions_(); - this.modifyToolActivate = new ngeo.ToolActivate(this.modify_, 'active'); - this.rotateToolActivate = new ngeo.ToolActivate(this.rotate_, 'active'); - this.translateToolActivate = new ngeo.ToolActivate(this.translate_, 'active'); + this.modifyToolActivate = new ngeo.misc.ToolActivate(this.modify_, 'active'); + this.rotateToolActivate = new ngeo.misc.ToolActivate(this.rotate_, 'active'); + this.translateToolActivate = new ngeo.misc.ToolActivate(this.translate_, 'active'); // (1.3) Add menu to map this.map.addOverlay(this.menu_); diff --git a/contribs/gmf/src/directives/objectediting.js b/contribs/gmf/src/directives/objectediting.js index 38ddd1bb654f..9c3ab716f5c8 100644 --- a/contribs/gmf/src/directives/objectediting.js +++ b/contribs/gmf/src/directives/objectediting.js @@ -11,9 +11,9 @@ goog.require('ngeo.jstsExports'); goog.require('ngeo.map.LayerHelper'); goog.require('ngeo.misc.decorate'); goog.require('ngeo.misc.FeatureHelper'); -goog.require('ngeo.ToolActivate'); +goog.require('ngeo.misc.ToolActivate'); /** @suppress {extraRequire} */ -goog.require('ngeo.ToolActivateMgr'); +goog.require('ngeo.misc.ToolActivateMgr'); goog.require('ngeo.utils'); goog.require('ol.Collection'); goog.require('ol.events'); @@ -107,7 +107,7 @@ gmf.module.component('gmfObjectediting', gmf.objecteditingComponent); * @param {!ngeo.misc.FeatureHelper} ngeoFeatureHelper Ngeo feature helper service. goog.require('ngeo.map.LayerHelper'); * @param {!ngeo.map.LayerHelper} ngeoLayerHelper Ngeo Layer Helper. - * @param {!ngeo.ToolActivateMgr} ngeoToolActivateMgr Ngeo ToolActivate manager + * @param {!ngeo.misc.ToolActivateMgr} ngeoToolActivateMgr Ngeo ToolActivate manager * service. * @constructor * @private @@ -248,7 +248,7 @@ gmf.ObjecteditingController = function($scope, $timeout, gettextCatalog, this.ngeoFeatureHelper_ = ngeoFeatureHelper; /** - * @type {!ngeo.ToolActivateMgr} + * @type {!ngeo.misc.ToolActivateMgr} * @private */ this.ngeoToolActivateMgr_ = ngeoToolActivateMgr; @@ -360,10 +360,10 @@ gmf.ObjecteditingController = function($scope, $timeout, gettextCatalog, this.interactions_.push(this.modify_); /** - * @type {!ngeo.ToolActivate} + * @type {!ngeo.misc.ToolActivate} * @private */ - this.modifyToolActivate_ = new ngeo.ToolActivate(this.modify_, 'active'); + this.modifyToolActivate_ = new ngeo.misc.ToolActivate(this.modify_, 'active'); /** * @type {boolean} @@ -372,10 +372,10 @@ gmf.ObjecteditingController = function($scope, $timeout, gettextCatalog, this.toolsActive = false; /** - * @type {!ngeo.ToolActivate} + * @type {!ngeo.misc.ToolActivate} * @private */ - this.toolsToolActivate_ = new ngeo.ToolActivate(this, 'toolsActive'); + this.toolsToolActivate_ = new ngeo.misc.ToolActivate(this, 'toolsActive'); }; /** diff --git a/contribs/gmf/src/directives/objecteditingtools.js b/contribs/gmf/src/directives/objecteditingtools.js index 59aa4b88a5bc..c9251d929d1d 100644 --- a/contribs/gmf/src/directives/objecteditingtools.js +++ b/contribs/gmf/src/directives/objecteditingtools.js @@ -8,10 +8,10 @@ goog.require('ngeo.btnDirective'); goog.require('ngeo.createfeatureDirective'); /** @suppress {extraRequire} */ goog.require('ngeo.createregularpolygonfromclickDirective'); -goog.require('ngeo.misc.decorate'); -goog.require('ngeo.ToolActivate'); /** @suppress {extraRequire} */ -goog.require('ngeo.ToolActivateMgr'); +goog.require('ngeo.misc.decorate'); +goog.require('ngeo.misc.ToolActivate'); +goog.require('ngeo.misc.ToolActivateMgr'); /** @@ -91,7 +91,7 @@ gmf.module.directive('gmfObjecteditingtools', gmf.objecteditingtoolsDirective); /** * @param {angular.$injector} $injector Main injector. * @param {!angular.Scope} $scope Scope. - * @param {ngeo.ToolActivateMgr} ngeoToolActivateMgr Ngeo ToolActivate manager + * @param {ngeo.misc.ToolActivateMgr} ngeoToolActivateMgr Ngeo ToolActivate manager * service. * @constructor * @private @@ -173,7 +173,7 @@ gmf.ObjecteditingtoolsController = function($injector, $scope, ngeoToolActivateM this.scope_ = $scope; /** - * @type {ngeo.ToolActivateMgr} + * @type {ngeo.misc.ToolActivateMgr} * @private */ this.ngeoToolActivateMgr_ = ngeoToolActivateMgr; @@ -254,7 +254,7 @@ gmf.ObjecteditingtoolsController = function($injector, $scope, ngeoToolActivateM * 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.ToolActivate` object and registers it in a group so + * - creates a `ngeo.misc.ToolActivate` object and registers it in a group so * that only one tool can be active at a time * * @param {string} toolActiveName The name of the active property for the tool. @@ -276,7 +276,7 @@ gmf.ObjecteditingtoolsController.prototype.registerTool_ = function( ); const group = `${gmf.ObjecteditingtoolsController.NAMESPACE_}-${ol.getUid(this)}`; - const toolActivate = new ngeo.ToolActivate(this, toolActiveName); + const toolActivate = new ngeo.misc.ToolActivate(this, toolActiveName); this.ngeoToolActivateMgr_.registerTool(group, toolActivate, false); this.toolActiveNames_.push(toolActiveName); diff --git a/examples/createfeature.js b/examples/createfeature.js index 159c81eca4ef..1f84a580ddbb 100644 --- a/examples/createfeature.js +++ b/examples/createfeature.js @@ -1,11 +1,11 @@ goog.provide('app.createfeature'); -goog.require('ngeo.ToolActivate'); -goog.require('ngeo.ToolActivateMgr'); /** @suppress {extraRequire} */ goog.require('ngeo.btnDirective'); /** @suppress {extraRequire} */ goog.require('ngeo.createfeatureDirective'); +goog.require('ngeo.misc.ToolActivate'); +goog.require('ngeo.misc.ToolActivateMgr'); goog.require('ol.Collection'); goog.require('ol.Map'); goog.require('ol.View'); @@ -21,12 +21,12 @@ goog.require('ngeo.map.module'); app.module = angular.module('app', [ ngeo.module.name, ngeo.map.module.name, - ngeo.ToolActivateMgr.module.name, + ngeo.misc.ToolActivateMgr.module.name, ]); /** - * @param {ngeo.ToolActivateMgr} ngeoToolActivateMgr Ngeo ToolActivate manager + * @param {ngeo.misc.ToolActivateMgr} ngeoToolActivateMgr Ngeo ToolActivate manager * service. * @constructor * @ngInject @@ -87,7 +87,7 @@ app.MainController = function(ngeoToolActivateMgr) { */ this.createPointActive = false; - const createPointToolActivate = new ngeo.ToolActivate( + const createPointToolActivate = new ngeo.misc.ToolActivate( this, 'createPointActive' ); @@ -103,7 +103,7 @@ app.MainController = function(ngeoToolActivateMgr) { */ this.createLineStringActive = false; - const createLineStringToolActivate = new ngeo.ToolActivate( + const createLineStringToolActivate = new ngeo.misc.ToolActivate( this, 'createLineStringActive' ); @@ -119,7 +119,7 @@ app.MainController = function(ngeoToolActivateMgr) { */ this.createPolygonActive = false; - const createPolygonToolActivate = new ngeo.ToolActivate( + const createPolygonToolActivate = new ngeo.misc.ToolActivate( this, 'createPolygonActive' ); @@ -135,7 +135,7 @@ app.MainController = function(ngeoToolActivateMgr) { */ this.dummyActive = true; - const dummyToolActivate = new ngeo.ToolActivate( + const dummyToolActivate = new ngeo.misc.ToolActivate( this, 'dummyActive' ); diff --git a/examples/drawfeature.js b/examples/drawfeature.js index ef6449db0d77..d0243788543c 100644 --- a/examples/drawfeature.js +++ b/examples/drawfeature.js @@ -1,7 +1,9 @@ goog.provide('app.drawfeature'); -goog.require('ngeo.ToolActivate'); -goog.require('ngeo.ToolActivateMgr'); +goog.require('ngeo.draw.module'); +goog.require('ngeo.map.module'); +goog.require('ngeo.misc.ToolActivate'); +goog.require('ngeo.misc.ToolActivateMgr'); goog.require('ol.Map'); goog.require('ol.View'); goog.require('ol.layer.Tile'); @@ -9,23 +11,20 @@ goog.require('ol.layer.Vector'); goog.require('ol.source.OSM'); goog.require('ol.source.Vector'); -goog.require('ngeo.draw.module'); -goog.require('ngeo.map.module'); - /** @type {!angular.Module} **/ app.module = angular.module('app', [ ngeo.module.name, ngeo.draw.module.name, ngeo.map.module.name, - ngeo.ToolActivateMgr.module.name, + ngeo.misc.ToolActivateMgr.module.name, ]); /** * @param {!angular.Scope} $scope Angular scope. * @param {ol.Collection.} ngeoFeatures Collection of features. - * @param {ngeo.ToolActivateMgr} ngeoToolActivateMgr Ngeo ToolActivate manager + * @param {ngeo.misc.ToolActivateMgr} ngeoToolActivateMgr Ngeo ToolActivate manager * service. * @ngInject * @constructor @@ -68,7 +67,7 @@ app.MainController = function($scope, ngeoFeatures, ngeoToolActivateMgr) { */ this.drawActive = false; - const drawToolActivate = new ngeo.ToolActivate(this, 'drawActive'); + const drawToolActivate = new ngeo.misc.ToolActivate(this, 'drawActive'); ngeoToolActivateMgr.registerTool('mapTools', drawToolActivate, false); /** @@ -77,7 +76,7 @@ app.MainController = function($scope, ngeoFeatures, ngeoToolActivateMgr) { */ this.dummyActive = true; - const dummyToolActivate = new ngeo.ToolActivate(this, 'dummyActive'); + const dummyToolActivate = new ngeo.misc.ToolActivate(this, 'dummyActive'); ngeoToolActivateMgr.registerTool('mapTools', dummyToolActivate, true); }; diff --git a/examples/googlestreetview.js b/examples/googlestreetview.js index 41653343b358..7909ac6bdd32 100644 --- a/examples/googlestreetview.js +++ b/examples/googlestreetview.js @@ -9,10 +9,10 @@ goog.require('ol.style.Stroke'); goog.require('ol.style.Style'); goog.require('ol.style.Text'); -goog.require('ngeo.map.module'); goog.require('ngeo.googlestreetview.module'); -goog.require('ngeo.ToolActivate'); -goog.require('ngeo.ToolActivateMgr'); +goog.require('ngeo.map.module'); +goog.require('ngeo.misc.ToolActivate'); +goog.require('ngeo.misc.ToolActivateMgr'); /** @type {!angular.Module} **/ @@ -20,14 +20,14 @@ app.module = angular.module('app', [ ngeo.module.name, ngeo.map.module.name, ngeo.googlestreetview.module.name, - ngeo.ToolActivateMgr.module.name + ngeo.misc.ToolActivateMgr.module.name ]); /** * @param {!ngeo.map.FeatureOverlayMgr} ngeoFeatureOverlayMgr Ngeo FeatureOverlay * manager. - * @param {ngeo.ToolActivateMgr} ngeoToolActivateMgr Ngeo ToolActivate manager + * @param {ngeo.misc.ToolActivateMgr} ngeoToolActivateMgr Ngeo ToolActivate manager * service. * @constructor * @ngInject @@ -78,7 +78,7 @@ app.MainController = function(ngeoFeatureOverlayMgr, ngeoToolActivateMgr) { */ this.googleStreetViewActive = true; - const googleStreetViewToolActivate = new ngeo.ToolActivate( + const googleStreetViewToolActivate = new ngeo.misc.ToolActivate( this, 'googleStreetViewActive' ); @@ -94,7 +94,7 @@ app.MainController = function(ngeoFeatureOverlayMgr, ngeoToolActivateMgr) { */ this.dummyActive = false; - const dummyToolActivate = new ngeo.ToolActivate( + const dummyToolActivate = new ngeo.misc.ToolActivate( this, 'dummyActive' ); diff --git a/examples/mapquery.html b/examples/mapquery.html index 65f947edafd5..614090cf48ac 100644 --- a/examples/mapquery.html +++ b/examples/mapquery.html @@ -27,7 +27,7 @@

This example shows how to use the ngeo-map-query - directive. It also shows how the ngeo.ToolActivate can be + directive. It also shows how the ngeo.misc.ToolActivate can be used to make the directive inactive when an other tool becomes active. The "Dummy" button here does nothing, but when toggled the query directive becomes inactive. diff --git a/examples/mapquery.js b/examples/mapquery.js index d505d1a5cbb8..7d2d4668f34c 100644 --- a/examples/mapquery.js +++ b/examples/mapquery.js @@ -4,8 +4,9 @@ goog.provide('app.mapquery'); goog.require('ngeo.proj.EPSG21781'); goog.require('ngeo.datasource.DataSources'); goog.require('ngeo.datasource.OGC'); -goog.require('ngeo.ToolActivate'); -goog.require('ngeo.ToolActivateMgr'); +goog.require('ngeo.map.module'); +goog.require('ngeo.misc.ToolActivate'); +goog.require('ngeo.misc.ToolActivateMgr'); /** @suppress {extraRequire} */ goog.require('ngeo.btnDirective'); /** @suppress {extraRequire} */ @@ -17,14 +18,12 @@ goog.require('ol.layer.Tile'); goog.require('ol.source.ImageWMS'); goog.require('ol.source.OSM'); -goog.require('ngeo.map.module'); - /** @type {!angular.Module} **/ app.module = angular.module('app', [ ngeo.module.name, ngeo.map.module.name, - ngeo.ToolActivateMgr.module.name, + ngeo.misc.ToolActivateMgr.module.name, ]); @@ -70,7 +69,7 @@ app.module.controller('AppQueryresultController', app.QueryresultController); * @param {angular.Scope} $scope Scope. * @param {ngeo.datasource.DataSources} ngeoDataSources Ngeo collection of * data sources objects. - * @param {ngeo.ToolActivateMgr} ngeoToolActivateMgr The ngeo ToolActivate + * @param {ngeo.misc.ToolActivateMgr} ngeoToolActivateMgr The ngeo ToolActivate * manager. * @constructor * @ngInject @@ -143,10 +142,10 @@ app.MainController = function($scope, ngeoDataSources, ngeoToolActivateMgr) { }) }); - const queryToolActivate = new ngeo.ToolActivate(this, 'queryActive'); + const queryToolActivate = new ngeo.misc.ToolActivate(this, 'queryActive'); ngeoToolActivateMgr.registerTool('mapTools', queryToolActivate, true); - const dummyToolActivate = new ngeo.ToolActivate(this, 'dummyActive'); + const dummyToolActivate = new ngeo.misc.ToolActivate(this, 'dummyActive'); ngeoToolActivateMgr.registerTool('mapTools', dummyToolActivate); }; diff --git a/examples/toolActivate.html b/examples/toolActivate.html index 260cce533057..736a0abeade7 100644 --- a/examples/toolActivate.html +++ b/examples/toolActivate.html @@ -23,7 +23,7 @@

-

This example shows how to use ngeo.ToolActivate objects with the ngeo.ToolActivateMgrto active only one map control at once. If none draw control is choose, the click on the map is enabled.

+

This example shows how to use ngeo.misc.ToolActivate objects with the ngeo.misc.ToolActivateMgrto active only one map control at once. If none draw control is choose, the click on the map is enabled.

diff --git a/examples/toolActivate.js b/examples/toolActivate.js index 0f285e977884..d75fbd62f9dd 100644 --- a/examples/toolActivate.js +++ b/examples/toolActivate.js @@ -1,11 +1,11 @@ goog.provide('app.toolActivate'); -goog.require('ngeo.ToolActivate'); -goog.require('ngeo.ToolActivateMgr'); /** @suppress {extraRequire} */ goog.require('ngeo.btnDirective'); goog.require('ngeo.map.module'); goog.require('ngeo.misc.decorate'); +goog.require('ngeo.misc.ToolActivate'); +goog.require('ngeo.misc.ToolActivateMgr'); goog.require('ol.Collection'); goog.require('ol.Map'); goog.require('ol.View'); @@ -23,14 +23,14 @@ goog.require('ol.style.Style'); app.module = angular.module('app', [ ngeo.module.name, ngeo.map.module.name, - ngeo.ToolActivateMgr.module.name, + ngeo.misc.ToolActivateMgr.module.name, ]); /** * @param {ngeo.map.FeatureOverlayMgr} ngeoFeatureOverlayMgr Feature overlay * manager. - * @param {ngeo.ToolActivateMgr} ngeoToolActivateMgr ToolActivate manager. + * @param {ngeo.misc.ToolActivateMgr} ngeoToolActivateMgr ToolActivate manager. * @constructor * @ngInject */ @@ -93,7 +93,7 @@ app.MainController = function(ngeoFeatureOverlayMgr, ngeoToolActivateMgr) { } }); - const mapClickTool = new ngeo.ToolActivate(this, 'mapClickIsEnabled'); + const mapClickTool = new ngeo.misc.ToolActivate(this, 'mapClickIsEnabled'); ngeoToolActivateMgr.registerTool('mapTools', mapClickTool, true); @@ -111,7 +111,7 @@ app.MainController = function(ngeoFeatureOverlayMgr, ngeoToolActivateMgr) { ngeo.misc.decorate.interaction(this.drawPoint); map.addInteraction(this.drawPoint); - const drawPointTool = new ngeo.ToolActivate(this.drawPoint, 'active'); + const drawPointTool = new ngeo.misc.ToolActivate(this.drawPoint, 'active'); ngeoToolActivateMgr.registerTool('mapTools', drawPointTool); // draw line interaction @@ -128,7 +128,7 @@ app.MainController = function(ngeoFeatureOverlayMgr, ngeoToolActivateMgr) { ngeo.misc.decorate.interaction(this.drawLine); map.addInteraction(this.drawLine); - const drawLineTool = new ngeo.ToolActivate(this.drawLine, 'active'); + const drawLineTool = new ngeo.misc.ToolActivate(this.drawLine, 'active'); ngeoToolActivateMgr.registerTool('mapTools', drawLineTool); // draw polygon interaction @@ -145,7 +145,7 @@ app.MainController = function(ngeoFeatureOverlayMgr, ngeoToolActivateMgr) { ngeo.misc.decorate.interaction(this.drawPolygon); map.addInteraction(this.drawPolygon); - const drawPolygonTool = new ngeo.ToolActivate(this.drawPolygon, 'active'); + const drawPolygonTool = new ngeo.misc.ToolActivate(this.drawPolygon, 'active'); ngeoToolActivateMgr.registerTool('mapTools', drawPolygonTool); }; diff --git a/options/ngeox.js b/options/ngeox.js index 19223ff45efb..e5994b30f62d 100644 --- a/options/ngeox.js +++ b/options/ngeox.js @@ -290,6 +290,16 @@ ngeox.miscDebounce; ngeox.miscGetBrowserLanguage; +/** + * An entry for a tool in a `ngeo.misc.ToolActivateMgr` group. + * @typedef {{ + * tool: (ngeo.misc.ToolActivate), + * defaultTool: boolean, + * unlisten: (function(): void)}} + */ +ngeox.miscToolActivateMgrEntry; + + /** * A hash that contains 2 lists of queryable data sources: `wfs` and `wms`. * The same data source can only be in one of the two lists. The `wfs` list diff --git a/src/filter/rulecomponent.js b/src/filter/rulecomponent.js index 815a51e26501..7d6e7a759881 100644 --- a/src/filter/rulecomponent.js +++ b/src/filter/rulecomponent.js @@ -4,9 +4,6 @@ goog.require('ngeo'); /** @suppress {extraRequire} */ goog.require('ngeo.DatePickerDirective'); goog.require('ngeo.Menu'); -goog.require('ngeo.ToolActivate'); -/** @suppress {extraRequire} */ -goog.require('ngeo.ToolActivateMgr'); goog.require('ngeo.draw.component'); /** @suppress {extraRequire} */ goog.require('ngeo.filter.RuleHelper'); @@ -14,8 +11,10 @@ goog.require('ngeo.interaction.Modify'); goog.require('ngeo.interaction.Rotate'); goog.require('ngeo.interaction.Translate'); goog.require('ngeo.map.FeatureOverlay'); -goog.require('ngeo.misc.FeatureHelper'); goog.require('ngeo.misc.decorate'); +goog.require('ngeo.misc.FeatureHelper'); +goog.require('ngeo.misc.ToolActivate'); +goog.require('ngeo.misc.ToolActivateMgr'); goog.require('ngeo.rule.Rule'); goog.require('ngeo.rule.Geometry'); goog.require('ngeo.rule.Select'); @@ -55,7 +54,7 @@ ngeo.filter.ruleComponent.RuleController_ = class { * @param {!angular.$timeout} $timeout Angular timeout service. * @param {!ngeo.misc.FeatureHelper} ngeoFeatureHelper Ngeo feature helper service. * @param {!ngeo.filter.RuleHelper} ngeoRuleHelper Ngeo rule helper service. - * @param {!ngeo.ToolActivateMgr} ngeoToolActivateMgr Ngeo ToolActivate + * @param {!ngeo.misc.ToolActivateMgr} ngeoToolActivateMgr Ngeo ToolActivate * manager service. * @private * @struct @@ -127,7 +126,7 @@ ngeo.filter.ruleComponent.RuleController_ = class { this.ngeoRuleHelper_ = ngeoRuleHelper; /** - * @type {!ngeo.ToolActivateMgr} + * @type {!ngeo.misc.ToolActivateMgr} * @private */ this.ngeoToolActivateMgr_ = ngeoToolActivateMgr; @@ -204,10 +203,10 @@ ngeo.filter.ruleComponent.RuleController_ = class { }; /** - * @type {!ngeo.ToolActivate} + * @type {!ngeo.misc.ToolActivate} * @private */ - this.toolActivate_;// = new ngeo.ToolActivate(this.rule, 'active'); + this.toolActivate_;// = new ngeo.misc.ToolActivate(this.rule, 'active'); /** * @type {!Array.} @@ -225,10 +224,10 @@ ngeo.filter.ruleComponent.RuleController_ = class { this.drawActive = false; /** - * @type {!ngeo.ToolActivate} + * @type {!ngeo.misc.ToolActivate} * @export */ - this.drawToolActivate = new ngeo.ToolActivate(this, 'drawActive'); + this.drawToolActivate = new ngeo.misc.ToolActivate(this, 'drawActive'); /** * @type {!ol.Collection.} @@ -309,28 +308,28 @@ ngeo.filter.ruleComponent.RuleController_ = class { this.initializeInteractions_(); /** - * @type {!ngeo.ToolActivate} + * @type {!ngeo.misc.ToolActivate} * @export */ - this.modifyToolActivate = new ngeo.ToolActivate( + this.modifyToolActivate = new ngeo.misc.ToolActivate( this.modify_, 'active' ); /** - * @type {ngeo.ToolActivate} + * @type {ngeo.misc.ToolActivate} * @export */ - this.rotateToolActivate = new ngeo.ToolActivate( + this.rotateToolActivate = new ngeo.misc.ToolActivate( this.rotate_, 'active' ); /** - * @type {ngeo.ToolActivate} + * @type {ngeo.misc.ToolActivate} * @export */ - this.translateToolActivate = new ngeo.ToolActivate( + this.translateToolActivate = new ngeo.misc.ToolActivate( this.translate_, 'active' ); @@ -351,7 +350,7 @@ ngeo.filter.ruleComponent.RuleController_ = class { $onInit() { this.clone = this.ngeoRuleHelper_.cloneRule(this.rule); - this.toolActivate_ = new ngeo.ToolActivate(this.rule, 'active'); + this.toolActivate_ = new ngeo.misc.ToolActivate(this.rule, 'active'); this.ngeoToolActivateMgr_.registerTool( this.toolGroup, this.toolActivate_); diff --git a/src/services/toolActivate.js b/src/misc/ToolActivate.js similarity index 78% rename from src/services/toolActivate.js rename to src/misc/ToolActivate.js index b56309786ee5..b9d8b8651cc9 100644 --- a/src/services/toolActivate.js +++ b/src/misc/ToolActivate.js @@ -1,10 +1,10 @@ -goog.provide('ngeo.ToolActivate'); +goog.provide('ngeo.misc.ToolActivate'); goog.require('ngeo'); /** - * A simple object that can be managed by `ngeo.ToolActivateMgr`. + * A simple object that can be managed by `ngeo.misc.ToolActivateMgr`. * * See our live examples: * [../examples/mapquery.html](../examples/mapquery.html) @@ -15,11 +15,10 @@ goog.require('ngeo'); * `toolContext` which represents the active state of the tool. * @constructor * @struct - * @ngdoc value * @ngname ngeoToolActivate * @export */ -ngeo.ToolActivate = function(toolContext, activePropertyName) { +ngeo.misc.ToolActivate = function(toolContext, activePropertyName) { /** * A getter function to get the active state of the tool. @@ -39,6 +38,3 @@ ngeo.ToolActivate = function(toolContext, activePropertyName) { toolContext[activePropertyName] = newVal; }; }; - - -ngeo.module.value('ngeoToolActivate', ngeo.ToolActivate); diff --git a/src/services/toolActivateMgr.js b/src/misc/ToolActivateMgr.js similarity index 71% rename from src/services/toolActivateMgr.js rename to src/misc/ToolActivateMgr.js index 0316ee556b4d..1a1d8a8f27a2 100644 --- a/src/services/toolActivateMgr.js +++ b/src/misc/ToolActivateMgr.js @@ -1,17 +1,18 @@ -goog.provide('ngeo.ToolActivateMgr'); +goog.provide('ngeo.misc.ToolActivateMgr'); goog.require('ngeo'); goog.require('goog.asserts'); +goog.require('ngeo.misc.ToolActivate'); /** - * Provides a service to manage the activation of `ngeo.toolActivate` objects. + * Provides a service to manage the activation of `ngeo.misc.ToolActivate` objects. * * Example: * * Each tool must be registered before using it. * - * let tool = new ngeo.ToolActivate(interaction, 'active'); + * let tool = new ngeo.misc.ToolActivate(interaction, 'active'); * ngeoToolActivateMgr.registerTool('mapTools', tool); * * A tool will be registered in a group identified by a group name. @@ -32,10 +33,10 @@ goog.require('goog.asserts'); * @ngname ngeoToolActivateMgr * @ngInject */ -ngeo.ToolActivateMgr = function($rootScope) { +ngeo.misc.ToolActivateMgr = function($rootScope) { /** - * @type {!Object.>} + * @type {!Object.>} * @private */ this.groups_ = {}; @@ -52,12 +53,12 @@ ngeo.ToolActivateMgr = function($rootScope) { /** * Register a tool. * @param {string} groupName Name of the group of this tool. - * @param {ngeo.ToolActivate} tool Tool to register. + * @param {ngeo.misc.ToolActivate} tool Tool to register. * @param {boolean=} opt_defaultActivate If true, this tool will be activated * when all other tools in the group are deactivated. * @export */ -ngeo.ToolActivateMgr.prototype.registerTool = function(groupName, tool, +ngeo.misc.ToolActivateMgr.prototype.registerTool = function(groupName, tool, opt_defaultActivate) { let entries = this.groups_[groupName]; if (!entries) { @@ -100,10 +101,10 @@ ngeo.ToolActivateMgr.prototype.registerTool = function(groupName, tool, /** * Unregister a tool from a group. * @param {string} groupName Name of the group of this tool. - * @param {ngeo.ToolActivate} tool Tool to unregister. + * @param {ngeo.misc.ToolActivate} tool Tool to unregister. * @export */ -ngeo.ToolActivateMgr.prototype.unregisterTool = function(groupName, tool) { +ngeo.misc.ToolActivateMgr.prototype.unregisterTool = function(groupName, tool) { const entries = this.groups_[groupName]; if (entries) { for (let i = 0; i < entries.length; i++) { @@ -122,7 +123,7 @@ ngeo.ToolActivateMgr.prototype.unregisterTool = function(groupName, tool) { * @param {string} groupName Name of the group of tools to unregister. * @export */ -ngeo.ToolActivateMgr.prototype.unregisterGroup = function(groupName) { +ngeo.misc.ToolActivateMgr.prototype.unregisterGroup = function(groupName) { const entries = this.groups_[groupName]; if (entries) { for (let i = 0; i < entries.length; i++) { @@ -135,20 +136,20 @@ ngeo.ToolActivateMgr.prototype.unregisterGroup = function(groupName) { /** * Activate a tool. - * @param {ngeo.ToolActivate} tool Tool to activate. + * @param {ngeo.misc.ToolActivate} tool Tool to activate. * @export */ -ngeo.ToolActivateMgr.prototype.activateTool = function(tool) { +ngeo.misc.ToolActivateMgr.prototype.activateTool = function(tool) { tool.setActive(true); }; /** * Deactivate a tool. - * @param {ngeo.ToolActivate} tool Tool to deactivate. + * @param {ngeo.misc.ToolActivate} tool Tool to deactivate. * @export */ -ngeo.ToolActivateMgr.prototype.deactivateTool = function(tool) { +ngeo.misc.ToolActivateMgr.prototype.deactivateTool = function(tool) { tool.setActive(false); }; @@ -157,10 +158,10 @@ ngeo.ToolActivateMgr.prototype.deactivateTool = function(tool) { * Deactivate all tools except the given one. * * @param {string} groupName Name of the group. - * @param {ngeo.ToolActivate} tool Tool to activate. + * @param {ngeo.misc.ToolActivate} tool Tool to activate. * @private */ -ngeo.ToolActivateMgr.prototype.deactivateTools_ = function(groupName, tool) { +ngeo.misc.ToolActivateMgr.prototype.deactivateTools_ = function(groupName, tool) { const entries = this.groups_[groupName]; for (let i = 0; i < entries.length; i++) { if (tool != entries[i].tool) { @@ -176,7 +177,7 @@ ngeo.ToolActivateMgr.prototype.deactivateTools_ = function(groupName, tool) { * @param {string} groupName Name of the group. * @private */ -ngeo.ToolActivateMgr.prototype.activateDefault_ = function(groupName) { +ngeo.misc.ToolActivateMgr.prototype.activateDefault_ = function(groupName) { const entries = this.groups_[groupName]; let defaultTool = null; let hasActiveTool = false; @@ -195,16 +196,6 @@ ngeo.ToolActivateMgr.prototype.activateDefault_ = function(groupName) { }; -/** - * An entry for a tool in a `ngeo.ToolActivateMgr` group. - * @typedef {{ - * tool: (ngeo.ToolActivate), - * defaultTool: boolean, - * unlisten: (function(): void)}} - */ -ngeo.ToolActivateMgr.ToolMgrEntry; - - -ngeo.ToolActivateMgr.module = angular.module('ngeoToolActivateMgr', []) - .service('ngeoToolActivateMgr', ngeo.ToolActivateMgr); -ngeo.module.requires.push(ngeo.ToolActivateMgr.module.name); +ngeo.misc.ToolActivateMgr.module = angular.module('ngeoToolActivateMgr', []); +ngeo.misc.ToolActivateMgr.module.service('ngeoToolActivateMgr', ngeo.misc.ToolActivateMgr); +ngeo.module.requires.push(ngeo.misc.ToolActivateMgr.module.name); diff --git a/test/spec/services/toolActivateMgr.spec.js b/test/spec/services/toolActivateMgr.spec.js index 154e353b6dc0..47baff0fedf9 100644 --- a/test/spec/services/toolActivateMgr.spec.js +++ b/test/spec/services/toolActivateMgr.spec.js @@ -1,18 +1,18 @@ -goog.require('ngeo.ToolActivate'); -goog.require('ngeo.ToolActivateMgr'); +goog.require('ngeo.misc.ToolActivate'); +goog.require('ngeo.misc.ToolActivateMgr'); -describe('ngeo.ToolActivateMgr', () => { +describe('ngeo.misc.ToolActivateMgr', () => { let interaction1, interaction2, interaction3, tool1, tool2, tool3; let ngeoToolActivateMgr; let $rootScope; beforeEach(() => { interaction1 = {active: true}; - tool1 = new ngeo.ToolActivate(interaction1, 'active'); + tool1 = new ngeo.misc.ToolActivate(interaction1, 'active'); interaction2 = {active: false}; - tool2 = new ngeo.ToolActivate(interaction2, 'active'); + tool2 = new ngeo.misc.ToolActivate(interaction2, 'active'); interaction3 = {active: false}; - tool3 = new ngeo.ToolActivate(interaction3, 'active'); + tool3 = new ngeo.misc.ToolActivate(interaction3, 'active'); inject(($injector) => { ngeoToolActivateMgr = $injector.get('ngeoToolActivateMgr');